UNPKG

@junte/ui

Version:

Quality Angular UI components kit

37 lines 4.79 kB
// thanks for https://github.com/voodoocreation/ts-deepmerge // istanbul ignore next var isObject = function (obj) { if (typeof obj === 'object' && obj !== null) { if (typeof Object.getPrototypeOf === 'function') { var prototype = Object.getPrototypeOf(obj); return prototype === Object.prototype || prototype === null; } return Object.prototype.toString.call(obj) === '[object Object]'; } return false; }; var ɵ0 = isObject; var deepMerge = function () { var objects = []; for (var _i = 0; _i < arguments.length; _i++) { objects[_i] = arguments[_i]; } return objects.reduce(function (result, current) { Object.keys(current).forEach(function (key) { if (Array.isArray(result[key]) && Array.isArray(current[key])) { result[key] = Array.from(new Set(result[key].concat(current[key]))); } else if (isObject(result[key]) && isObject(current[key])) { result[key] = deepMerge(result[key], current[key]); } else { result[key] = current[key]; } }); return result; }, {}); }; var ɵ1 = deepMerge; export default deepMerge; export { ɵ0, ɵ1 }; //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVyZ2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AanVudGUvdWkvIiwic291cmNlcyI6WyJsaWIvY29yZS91dGlscy9tZXJnZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSw0REFBNEQ7QUFZNUQsdUJBQXVCO0FBQ3ZCLElBQU0sUUFBUSxHQUFHLFVBQUMsR0FBUTtJQUN4QixJQUFJLE9BQU8sR0FBRyxLQUFLLFFBQVEsSUFBSSxHQUFHLEtBQUssSUFBSSxFQUFFO1FBQzNDLElBQUksT0FBTyxNQUFNLENBQUMsY0FBYyxLQUFLLFVBQVUsRUFBRTtZQUMvQyxJQUFNLFNBQVMsR0FBRyxNQUFNLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzdDLE9BQU8sU0FBUyxLQUFLLE1BQU0sQ0FBQyxTQUFTLElBQUksU0FBUyxLQUFLLElBQUksQ0FBQztTQUM3RDtRQUVELE9BQU8sTUFBTSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLGlCQUFpQixDQUFDO0tBQ2xFO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDLENBQUM7O0FBRUYsSUFBTSxTQUFTLEdBQUc7SUFDaEIsaUJBQWE7U0FBYixVQUFhLEVBQWIscUJBQWEsRUFBYixJQUFhO1FBQWIsNEJBQWE7O0lBRWIsT0FBQSxPQUFPLENBQUMsTUFBTSxDQUFDLFVBQUMsTUFBTSxFQUFFLE9BQU87UUFDN0IsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQyxHQUFHO1lBQy9CLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO2dCQUM3RCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNyRTtpQkFBTSxJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUU7Z0JBQzFELE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2FBQ3BEO2lCQUFNO2dCQUNMLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDNUI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUMsRUFBRSxFQUFFLENBQVE7QUFaYixDQVlhLENBQUM7O0FBRWhCLGVBQWUsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLy8gdGhhbmtzIGZvciBodHRwczovL2dpdGh1Yi5jb20vdm9vZG9vY3JlYXRpb24vdHMtZGVlcG1lcmdlXG5cbmludGVyZmFjZSBJT2JqZWN0IHtcbiAgW2tleTogc3RyaW5nXTogYW55O1xufVxuXG50eXBlIFRVbmlvblRvSW50ZXJzZWN0aW9uPFU+ID0gKFxuICBVIGV4dGVuZHMgYW55ID8gKGs6IFUpID0+IHZvaWQgOiBuZXZlclxuICApIGV4dGVuZHMgKGs6IGluZmVyIEkpID0+IHZvaWRcbiAgPyBJXG4gIDogbmV2ZXI7XG5cbi8vIGlzdGFuYnVsIGlnbm9yZSBuZXh0XG5jb25zdCBpc09iamVjdCA9IChvYmo6IGFueSkgPT4ge1xuICBpZiAodHlwZW9mIG9iaiA9PT0gJ29iamVjdCcgJiYgb2JqICE9PSBudWxsKSB7XG4gICAgaWYgKHR5cGVvZiBPYmplY3QuZ2V0UHJvdG90eXBlT2YgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgIGNvbnN0IHByb3RvdHlwZSA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihvYmopO1xuICAgICAgcmV0dXJuIHByb3RvdHlwZSA9PT0gT2JqZWN0LnByb3RvdHlwZSB8fCBwcm90b3R5cGUgPT09IG51bGw7XG4gICAgfVxuXG4gICAgcmV0dXJuIE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbChvYmopID09PSAnW29iamVjdCBPYmplY3RdJztcbiAgfVxuXG4gIHJldHVybiBmYWxzZTtcbn07XG5cbmNvbnN0IGRlZXBNZXJnZSA9IDxUIGV4dGVuZHMgSU9iamVjdFtdPihcbiAgLi4ub2JqZWN0czogVFxuKTogVFVuaW9uVG9JbnRlcnNlY3Rpb248VFtudW1iZXJdPiA9PlxuICBvYmplY3RzLnJlZHVjZSgocmVzdWx0LCBjdXJyZW50KSA9PiB7XG4gICAgT2JqZWN0LmtleXMoY3VycmVudCkuZm9yRWFjaCgoa2V5KSA9PiB7XG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1bHRba2V5XSkgJiYgQXJyYXkuaXNBcnJheShjdXJyZW50W2tleV0pKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gQXJyYXkuZnJvbShuZXcgU2V0KHJlc3VsdFtrZXldLmNvbmNhdChjdXJyZW50W2tleV0pKSk7XG4gICAgICB9IGVsc2UgaWYgKGlzT2JqZWN0KHJlc3VsdFtrZXldKSAmJiBpc09iamVjdChjdXJyZW50W2tleV0pKSB7XG4gICAgICAgIHJlc3VsdFtrZXldID0gZGVlcE1lcmdlKHJlc3VsdFtrZXldLCBjdXJyZW50W2tleV0pO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVzdWx0W2tleV0gPSBjdXJyZW50W2tleV07XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICByZXR1cm4gcmVzdWx0O1xuICB9LCB7fSkgYXMgYW55O1xuXG5leHBvcnQgZGVmYXVsdCBkZWVwTWVyZ2U7XG4iXX0=