UNPKG

xstate

Version:

Finite State Machines and Statecharts for the Modern Web.

46 lines (44 loc) 1.11 kB
// From https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/globalThis function getGlobal() { if (typeof globalThis !== 'undefined') { return globalThis; } if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } { console.warn('XState could not find a global object in this environment. Please let the maintainers know and raise an issue here: https://github.com/statelyai/xstate/issues'); } } function getDevTools() { const w = getGlobal(); if (!!w.__xstate__) { return w.__xstate__; } return undefined; } function registerService(service) { if (typeof window === 'undefined') { return; } const devTools = getDevTools(); if (devTools) { devTools.register(service); } } const devToolsAdapter = service => { if (typeof window === 'undefined') { return; } const devTools = getDevTools(); if (devTools) { devTools.register(service); } }; export { devToolsAdapter, getGlobal, registerService };