UNPKG

vue-app-sdk

Version:
46 lines (45 loc) 2.33 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const _Stack = require("./_Stack.cjs"); const _equalArrays = require("./_equalArrays.cjs"); const _equalByTag = require("./_equalByTag.cjs"); const _equalObjects = require("./_equalObjects.cjs"); const _getTag = require("./_getTag.cjs"); const isArray = require("./isArray.cjs"); const isBuffer = require("./isBuffer.cjs"); const isTypedArray = require("./isTypedArray.cjs"); var COMPARE_PARTIAL_FLAG = 1; var argsTag = "[object Arguments]", arrayTag = "[object Array]", objectTag = "[object Object]"; var objectProto = Object.prototype; var hasOwnProperty = objectProto.hasOwnProperty; function baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) { var objIsArr = isArray.default(object), othIsArr = isArray.default(other), objTag = objIsArr ? arrayTag : _getTag.default(object), othTag = othIsArr ? arrayTag : _getTag.default(other); objTag = objTag == argsTag ? objectTag : objTag; othTag = othTag == argsTag ? objectTag : othTag; var objIsObj = objTag == objectTag, othIsObj = othTag == objectTag, isSameTag = objTag == othTag; if (isSameTag && isBuffer.default(object)) { if (!isBuffer.default(other)) { return false; } objIsArr = true; objIsObj = false; } if (isSameTag && !objIsObj) { stack || (stack = new _Stack.default()); return objIsArr || isTypedArray.default(object) ? _equalArrays.default(object, other, bitmask, customizer, equalFunc, stack) : _equalByTag.default(object, other, objTag, bitmask, customizer, equalFunc, stack); } if (!(bitmask & COMPARE_PARTIAL_FLAG)) { var objIsWrapped = objIsObj && hasOwnProperty.call(object, "__wrapped__"), othIsWrapped = othIsObj && hasOwnProperty.call(other, "__wrapped__"); if (objIsWrapped || othIsWrapped) { var objUnwrapped = objIsWrapped ? object.value() : object, othUnwrapped = othIsWrapped ? other.value() : other; stack || (stack = new _Stack.default()); return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack); } } if (!isSameTag) { return false; } stack || (stack = new _Stack.default()); return _equalObjects.default(object, other, bitmask, customizer, equalFunc, stack); } exports.default = baseIsEqualDeep;