xstate
Version:
Finite State Machines and Statecharts for the Modern Web.
52 lines (48 loc) • 1.25 kB
JavaScript
Object.defineProperty(exports, '__esModule', { value: true });
// 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);
}
};
exports.devToolsAdapter = devToolsAdapter;
exports.getGlobal = getGlobal;
exports.registerService = registerService;
;