UNPKG

undux

Version:

Dead simple state management for React

48 lines 1.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.withReduxDevtools = void 0; function withReduxDevtools(store) { var devtools = window.__REDUX_DEVTOOLS_EXTENSION__; if (!devtools) { console.error('Undux withReduxDevtools plugin: Cannot find Redux Devtools browser extension. Is it installed?'); return store; } var devTools = devtools.connect(); var wasTriggeredByDevtools = false; var jumpToState = function (newState) { var oldState = store.getState(); for (var key in newState) { if (key in oldState) { wasTriggeredByDevtools = true; store.set(key)(newState[key]); wasTriggeredByDevtools = false; } } }; devTools.subscribe(function (message) { switch (message.type) { case 'START': devTools.send(null, store.getState()); return; case 'DISPATCH': if (!message.state) { return; } switch (message.payload.type) { case 'JUMP_TO_ACTION': case 'JUMP_TO_STATE': jumpToState(JSON.parse(message.state)); } } }); store.onAll().subscribe(function (_a) { var key = _a.key; if (wasTriggeredByDevtools) { return; } devTools.send(key, store.getState()); }); return store; } exports.withReduxDevtools = withReduxDevtools; //# sourceMappingURL=withReduxDevtools.js.map