@store-sync/redux-middleware
Version:
Redux middleware that syncs state
22 lines • 696 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const StoreSync = ({ transport, differ, }) => store => {
transport.addMessageListener(({ diff, datetime }) => {
store.dispatch({
type: 'STORE_SYNC_UPDATE',
payload: diff,
meta: {
datetime,
},
});
});
return next => action => {
const currentState = store.getState();
const nextState = next(action);
const diff = differ.diff(currentState, nextState);
transport.send({ datetime: Date.now(), diff });
return nextState;
};
};
exports.default = StoreSync;
//# sourceMappingURL=index.js.map
;