xstate
Version:
Finite State Machines and Statecharts for the Modern Web.
48 lines (35 loc) • 899 B
JavaScript
import { IS_PRODUCTION } from './environment.js';
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;
}
if (!IS_PRODUCTION) {
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() {
var global = getGlobal();
if (global && '__xstate__' in global) {
return global.__xstate__;
}
return undefined;
}
function registerService(service) {
if (!getGlobal()) {
return;
}
var devTools = getDevTools();
if (devTools) {
devTools.register(service);
}
}
export { getGlobal, registerService };