mirror of
https://github.com/murashit/codex-panel.git
synced 2026-07-22 17:30:31 +00:00
8 lines
444 B
TypeScript
8 lines
444 B
TypeScript
export function patchObject<T extends object>(current: T, patch: Partial<T>): T {
|
|
if (Object.entries(patch).every(([key, value]) => Object.is(current[key as keyof T], value))) return current;
|
|
return { ...current, ...patch };
|
|
}
|
|
|
|
export function definedPatch<Key extends string, Value>(key: Key, value: Value | undefined): Partial<Record<Key, Value>> {
|
|
return value === undefined ? {} : ({ [key]: value } as Partial<Record<Key, Value>>);
|
|
}
|