You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
7 lines
216 B
7 lines
216 B
export type MutateStateFunc<S> = (state: S) => S;
|
|
|
|
export const applyStateChanges = <S>(state: S, ...args: Array<MutateStateFunc<S>>): S => {
|
|
return args.reduce((all, cur) => {
|
|
return cur(all);
|
|
}, state);
|
|
};
|
|
|