@lad-tech/mobydick-calendar
Version:
React Native components library focused on usability, accessibility and developer experience
17 lines (13 loc) • 393 B
text/typescript
import typedKeys from './typedKeys';
export default function mergeObjects<T extends {[key: string]: unknown}>(
first: T,
second: T,
merger: <U extends keyof T>(key: U, first: T, second: T) => T[U],
) {
const ret = {} as T;
const keys = new Set(typedKeys(first).concat(typedKeys(second)));
for (const key of keys) {
ret[key] = merger(key, first, second);
}
return ret;
}