@dword-design/defu
Version:
15 lines • 448 B
JavaScript
import { createDefu as createDefuFromDefu } from "defu";
const arrayMerger = (obj, key, value) => {
if (Array.isArray(obj[key]) && Array.isArray(value)) {
obj[key].push(...value);
return true;
}
return false;
};
export default createDefuFromDefu(arrayMerger);
export const createDefu = merger => createDefuFromDefu((obj, key, value) => {
if (merger(obj, key, value)) {
return true;
}
return arrayMerger(obj, key, value);
});