UNPKG

state-synchronizers

Version:

Deterministically update state based on other state

19 lines (18 loc) 583 B
"use strict"; exports.__esModule = true; exports.createSynchronizedStateUpdater = void 0; /** * @returns A state updater that runs the state synchronizer when the state changed. Caches the * previous state internally. */ exports.createSynchronizedStateUpdater = function (stateSynchronizer, initialState) { var previousState = initialState; return function (state) { if (state === previousState) { return state; } stateSynchronizer(state, previousState); previousState = state; return state; }; };