beta-parity-react
Version:
Beta Parity React Components
1 lines • 2.89 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:true});exports.deepCloneObject=deepCloneObject;exports.deepMerge=deepMerge;function ownKeys(e,r){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);r&&(o=o.filter(function(r){return Object.getOwnPropertyDescriptor(e,r).enumerable})),t.push.apply(t,o)}return t}function _objectSpread(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{};r%2?ownKeys(Object(t),!0).forEach(function(r){_defineProperty(e,r,t[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):ownKeys(Object(t)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(t,r))})}return e}function _defineProperty(obj,key,value){key=_toPropertyKey(key);if(key in obj){Object.defineProperty(obj,key,{value:value,enumerable:true,configurable:true,writable:true})}else{obj[key]=value}return obj}function _toPropertyKey(t){var i=_toPrimitive(t,"string");return"symbol"==_typeof(i)?i:i+""}function _toPrimitive(t,r){if("object"!=_typeof(t)||!t)return t;var e=t[Symbol.toPrimitive];if(void 0!==e){var i=e.call(t,r||"default");if("object"!=_typeof(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===r?String:Number)(t)}function _typeof(o){"@babel/helpers - typeof";return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(o){return typeof o}:function(o){return o&&"function"==typeof Symbol&&o.constructor===Symbol&&o!==Symbol.prototype?"symbol":typeof o},_typeof(o)}function deepMerge(target,source){if(!source)return target;return Object.keys(source).reduce(function(acc,key){var targetValue=target[key];var sourceValue=source[key];if(_typeof(targetValue)==="object"&&targetValue!==null&&_typeof(sourceValue)==="object"&&sourceValue!==null){acc[key]=deepMerge(targetValue,sourceValue)}else{acc[key]=sourceValue}return acc},_objectSpread({},target))}function deepCloneObject(obj){var seen=arguments.length>1&&arguments[1]!==undefined?arguments[1]:new WeakMap;if(obj===null||_typeof(obj)!=="object"){return obj}if(seen.has(obj)){return seen.get(obj)}if(obj instanceof Date){return new Date(obj)}if(obj instanceof Map){var mapCopy=new Map;seen.set(obj,mapCopy);obj.forEach(function(value,key){mapCopy.set(deepCloneObject(key,seen),deepCloneObject(value,seen))});return mapCopy}if(obj instanceof Set){var setCopy=new Set;seen.set(obj,setCopy);obj.forEach(function(value){setCopy.add(deepCloneObject(value,seen))});return setCopy}if(Array.isArray(obj)){var arrayCopy=[];seen.set(obj,arrayCopy);obj.forEach(function(item,index){arrayCopy[index]=deepCloneObject(item,seen)});return arrayCopy}var objCopy=Object.create(Object.getPrototypeOf(obj));seen.set(obj,objCopy);Object.keys(obj).forEach(function(key){objCopy[key]=deepCloneObject(obj[key],seen)});return objCopy}