devTools.js 899 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { IS_PRODUCTION } from './environment.js';
  2. function getGlobal() {
  3. if (typeof globalThis !== 'undefined') {
  4. return globalThis;
  5. }
  6. if (typeof self !== 'undefined') {
  7. return self;
  8. }
  9. if (typeof window !== 'undefined') {
  10. return window;
  11. }
  12. if (typeof global !== 'undefined') {
  13. return global;
  14. }
  15. if (!IS_PRODUCTION) {
  16. 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');
  17. }
  18. }
  19. function getDevTools() {
  20. var global = getGlobal();
  21. if (global && '__xstate__' in global) {
  22. return global.__xstate__;
  23. }
  24. return undefined;
  25. }
  26. function registerService(service) {
  27. if (!getGlobal()) {
  28. return;
  29. }
  30. var devTools = getDevTools();
  31. if (devTools) {
  32. devTools.register(service);
  33. }
  34. }
  35. export { getGlobal, registerService };