UNPKG

@rxx/core

Version:

React MVI micro framework.

56 lines (55 loc) 1.99 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var ReduxDevToolsStub = (function () { function ReduxDevToolsStub() { } ReduxDevToolsStub.prototype.init = function (s) { }; ReduxDevToolsStub.prototype.send = function (value, state) { }; ReduxDevToolsStub.prototype.subscribe = function (monitor) { return function () { }; }; return ReduxDevToolsStub; }()); function isDevToolsInstalled() { return (!!window['__REDUX_DEVTOOLS_EXTENSION__'] && process.env.NODE_ENV !== 'production'); } exports.isDevToolsInstalled = isDevToolsInstalled; var instances = {}; function connectDevTools(_a) { var name = _a.name, instanceId = _a.instanceId; if (isDevToolsInstalled()) { if (!instances[instanceId]) { return (instances[instanceId] = window['devToolsExtension'].connect({ maxAge: 20, name: name, instanceId: instanceId, features: { skip: false }, serialize: { options: { undefined: true, }, replacer: function (key, value) { if (value === window) { return '[object Window]'; } if (value && value.type && value.target && value.preventDefault) { return { type: value.type }; } return value; }, }, })); } return instances[instanceId]; } return new ReduxDevToolsStub(); } exports.connectDevTools = connectDevTools; function disconnectDevTools(instanceId) { if (instances[instanceId] && isDevToolsInstalled()) { window['devToolsExtension'].disconnect({ instanceId: instanceId }); instances[instanceId] = null; } } exports.disconnectDevTools = disconnectDevTools;