Local modifications to ClusterLabs/Anvil by Alteeve
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.

14 lines
350 B

const buildObjectStateSetterCallback =
<S extends Record<string, unknown>>(key: keyof S, value?: S[keyof S]) =>
({ [key]: toReplace, ...restPrevious }: S): S => {
const result = { ...restPrevious } as S;
if (value !== undefined) {
result[key] = value;
}
return result;
};
export default buildObjectStateSetterCallback;