19
|
1 |
/******/ (function() { // webpackBootstrap |
|
2 |
/******/ "use strict"; |
|
3 |
/******/ // The require scope |
|
4 |
/******/ var __webpack_require__ = {}; |
|
5 |
/******/ |
|
6 |
/************************************************************************/ |
|
7 |
/******/ /* webpack/runtime/define property getters */ |
|
8 |
/******/ !function() { |
|
9 |
/******/ // define getter functions for harmony exports |
|
10 |
/******/ __webpack_require__.d = function(exports, definition) { |
|
11 |
/******/ for(var key in definition) { |
|
12 |
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { |
|
13 |
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); |
|
14 |
/******/ } |
|
15 |
/******/ } |
9
|
16 |
/******/ }; |
19
|
17 |
/******/ }(); |
|
18 |
/******/ |
|
19 |
/******/ /* webpack/runtime/hasOwnProperty shorthand */ |
|
20 |
/******/ !function() { |
|
21 |
/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } |
|
22 |
/******/ }(); |
|
23 |
/******/ |
|
24 |
/******/ /* webpack/runtime/make namespace object */ |
|
25 |
/******/ !function() { |
|
26 |
/******/ // define __esModule on exports |
|
27 |
/******/ __webpack_require__.r = function(exports) { |
|
28 |
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { |
|
29 |
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); |
|
30 |
/******/ } |
|
31 |
/******/ Object.defineProperty(exports, '__esModule', { value: true }); |
|
32 |
/******/ }; |
|
33 |
/******/ }(); |
|
34 |
/******/ |
9
|
35 |
/************************************************************************/ |
19
|
36 |
var __webpack_exports__ = {}; |
18
|
37 |
// ESM COMPAT FLAG |
|
38 |
__webpack_require__.r(__webpack_exports__); |
|
39 |
|
|
40 |
// EXPORTS |
19
|
41 |
__webpack_require__.d(__webpack_exports__, { |
|
42 |
"default": function() { return /* binding */ isShallowEqual; }, |
|
43 |
"isShallowEqualArrays": function() { return /* reexport */ isShallowEqualArrays; }, |
|
44 |
"isShallowEqualObjects": function() { return /* reexport */ isShallowEqualObjects; } |
|
45 |
}); |
18
|
46 |
|
19
|
47 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/is-shallow-equal/build-module/objects.js |
18
|
48 |
/** |
|
49 |
* Returns true if the two objects are shallow equal, or false otherwise. |
|
50 |
* |
|
51 |
* @param {import('.').ComparableObject} a First object to compare. |
|
52 |
* @param {import('.').ComparableObject} b Second object to compare. |
|
53 |
* |
|
54 |
* @return {boolean} Whether the two objects are shallow equal. |
|
55 |
*/ |
|
56 |
function isShallowEqualObjects(a, b) { |
|
57 |
if (a === b) { |
|
58 |
return true; |
|
59 |
} |
|
60 |
|
|
61 |
const aKeys = Object.keys(a); |
|
62 |
const bKeys = Object.keys(b); |
|
63 |
|
|
64 |
if (aKeys.length !== bKeys.length) { |
|
65 |
return false; |
|
66 |
} |
|
67 |
|
|
68 |
let i = 0; |
|
69 |
|
|
70 |
while (i < aKeys.length) { |
|
71 |
const key = aKeys[i]; |
|
72 |
const aValue = a[key]; |
|
73 |
|
|
74 |
if ( // In iterating only the keys of the first object after verifying |
|
75 |
// equal lengths, account for the case that an explicit `undefined` |
|
76 |
// value in the first is implicitly undefined in the second. |
|
77 |
// |
|
78 |
// Example: isShallowEqualObjects( { a: undefined }, { b: 5 } ) |
|
79 |
aValue === undefined && !b.hasOwnProperty(key) || aValue !== b[key]) { |
|
80 |
return false; |
|
81 |
} |
|
82 |
|
|
83 |
i++; |
|
84 |
} |
|
85 |
|
|
86 |
return true; |
|
87 |
} |
|
88 |
|
19
|
89 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/is-shallow-equal/build-module/arrays.js |
18
|
90 |
/** |
|
91 |
* Returns true if the two arrays are shallow equal, or false otherwise. |
|
92 |
* |
|
93 |
* @param {any[]} a First array to compare. |
|
94 |
* @param {any[]} b Second array to compare. |
|
95 |
* |
|
96 |
* @return {boolean} Whether the two arrays are shallow equal. |
|
97 |
*/ |
|
98 |
function isShallowEqualArrays(a, b) { |
|
99 |
if (a === b) { |
|
100 |
return true; |
|
101 |
} |
|
102 |
|
|
103 |
if (a.length !== b.length) { |
|
104 |
return false; |
|
105 |
} |
|
106 |
|
|
107 |
for (let i = 0, len = a.length; i < len; i++) { |
|
108 |
if (a[i] !== b[i]) { |
|
109 |
return false; |
|
110 |
} |
|
111 |
} |
|
112 |
|
|
113 |
return true; |
|
114 |
} |
|
115 |
|
19
|
116 |
;// CONCATENATED MODULE: ./node_modules/@wordpress/is-shallow-equal/build-module/index.js |
18
|
117 |
/** |
|
118 |
* Internal dependencies |
|
119 |
*/ |
9
|
120 |
|
|
121 |
|
|
122 |
|
|
123 |
|
|
124 |
/** |
16
|
125 |
* @typedef {Record<string, any>} ComparableObject |
|
126 |
*/ |
|
127 |
|
|
128 |
/** |
9
|
129 |
* Returns true if the two arrays or objects are shallow equal, or false |
|
130 |
* otherwise. |
|
131 |
* |
16
|
132 |
* @param {any[]|ComparableObject} a First object or array to compare. |
|
133 |
* @param {any[]|ComparableObject} b Second object or array to compare. |
9
|
134 |
* |
|
135 |
* @return {boolean} Whether the two values are shallow equal. |
|
136 |
*/ |
16
|
137 |
|
18
|
138 |
function isShallowEqual(a, b) { |
|
139 |
if (a && b) { |
|
140 |
if (a.constructor === Object && b.constructor === Object) { |
|
141 |
return isShallowEqualObjects(a, b); |
|
142 |
} else if (Array.isArray(a) && Array.isArray(b)) { |
|
143 |
return isShallowEqualArrays(a, b); |
|
144 |
} |
|
145 |
} |
9
|
146 |
|
18
|
147 |
return a === b; |
9
|
148 |
} |
|
149 |
|
19
|
150 |
(window.wp = window.wp || {}).isShallowEqual = __webpack_exports__; |
|
151 |
/******/ })() |
|
152 |
; |