@modern-js-reduck/plugin-immutable
Version:
The meta-framework suite designed from scratch for frontend-focused modern web development.
11 lines (10 loc) • 364 B
JavaScript
import { createPlugin } from "@modern-js-reduck/store";
import { produce, enableES5, enableMapSet, setAutoFreeze } from "immer";
enableES5();
enableMapSet();
setAutoFreeze(false);
export default createPlugin(() => ({
beforeReducer(reducer) {
return (state, payload, ...extraArgs) => produce(state, (draft) => reducer(draft, payload, ...extraArgs));
}
}));