ngrx-immer
Version:
Immer wrappers around NgRx methods createReducer, on, and ComponentStore
29 lines (25 loc) • 740 B
JavaScript
import { patchState } from '@ngrx/signals';
import { immerReducer } from 'ngrx-immer';
function toFullStateUpdater(updater) {
return (state) => {
const patchedState = updater(state);
if (patchedState) {
return ({ ...state, ...patchedState });
}
return;
};
}
function immerPatchState(stateSource, ...updaters) {
const immerUpdaters = updaters.map(updater => {
if (typeof updater === 'function') {
return immerReducer(toFullStateUpdater(updater));
}
return updater;
});
patchState(stateSource, ...immerUpdaters);
}
/**
* Generated bundle index. Do not edit.
*/
export { immerPatchState };
//# sourceMappingURL=ngrx-immer-signals.mjs.map