@nejs/basic-extensions 2.9.0 → 2.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/@nejs/basic-extensions.bundle.2.10.0.js +19 -0
- package/dist/@nejs/basic-extensions.bundle.2.10.0.js.map +7 -0
- package/dist/cjs/array.extensions.js +174 -0
- package/dist/cjs/array.extensions.js.map +1 -1
- package/dist/cjs/big.int.extension.js +1 -0
- package/dist/cjs/big.int.extension.js.map +1 -1
- package/dist/cjs/classes/descriptor.js +1 -1
- package/dist/cjs/classes/descriptor.js.map +1 -1
- package/dist/cjs/classes/index.d.ts +1 -0
- package/dist/cjs/classes/index.js +3 -0
- package/dist/cjs/classes/index.js.map +1 -1
- package/dist/cjs/classes/iterable.d.ts +44 -0
- package/dist/cjs/classes/iterable.js +64 -0
- package/dist/cjs/classes/iterable.js.map +1 -1
- package/dist/cjs/classes/param.parser.d.ts +10 -10
- package/dist/cjs/classes/property.d.ts +86 -0
- package/dist/cjs/classes/property.js +284 -0
- package/dist/cjs/classes/property.js.map +1 -0
- package/dist/cjs/classes/symkeys.d.ts +68 -11
- package/dist/cjs/classes/symkeys.js +103 -17
- package/dist/cjs/classes/symkeys.js.map +1 -1
- package/dist/cjs/classes/type.d.ts +4 -4
- package/dist/cjs/function.extensions.js +1 -0
- package/dist/cjs/function.extensions.js.map +1 -1
- package/dist/cjs/global.this.js +29 -0
- package/dist/cjs/global.this.js.map +1 -1
- package/dist/cjs/index.d.ts +2 -0
- package/dist/cjs/index.js +18 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/json.extensions.js +19 -18
- package/dist/cjs/json.extensions.js.map +1 -1
- package/dist/cjs/map.extensions.js +1 -0
- package/dist/cjs/map.extensions.js.map +1 -1
- package/dist/cjs/number.extension.js +1 -0
- package/dist/cjs/number.extension.js.map +1 -1
- package/dist/cjs/object.extensions.d.ts +0 -29
- package/dist/cjs/object.extensions.js +218 -255
- package/dist/cjs/object.extensions.js.map +1 -1
- package/dist/cjs/set.extensions.js +1 -0
- package/dist/cjs/set.extensions.js.map +1 -1
- package/dist/cjs/string.extensions.js +474 -469
- package/dist/cjs/string.extensions.js.map +1 -1
- package/dist/cjs/symbol.extensions.js +386 -31
- package/dist/cjs/symbol.extensions.js.map +1 -1
- package/dist/cjs/utils/copy.object.d.ts +408 -0
- package/dist/cjs/utils/copy.object.js +720 -0
- package/dist/cjs/utils/copy.object.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +1 -0
- package/dist/cjs/utils/index.js +19 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/toolkit.d.ts +1897 -0
- package/dist/cjs/utils/toolkit.js +1377 -0
- package/dist/cjs/utils/toolkit.js.map +1 -0
- package/dist/mjs/array.extensions.js +174 -0
- package/dist/mjs/array.extensions.js.map +1 -1
- package/dist/mjs/big.int.extension.js +1 -0
- package/dist/mjs/big.int.extension.js.map +1 -1
- package/dist/mjs/classes/descriptor.js +1 -1
- package/dist/mjs/classes/descriptor.js.map +1 -1
- package/dist/mjs/classes/index.d.ts +1 -0
- package/dist/mjs/classes/index.js +3 -0
- package/dist/mjs/classes/index.js.map +1 -1
- package/dist/mjs/classes/iterable.d.ts +44 -0
- package/dist/mjs/classes/iterable.js +64 -0
- package/dist/mjs/classes/iterable.js.map +1 -1
- package/dist/mjs/classes/param.parser.d.ts +10 -10
- package/dist/mjs/classes/property.d.ts +86 -0
- package/dist/mjs/classes/property.js +280 -0
- package/dist/mjs/classes/property.js.map +1 -0
- package/dist/mjs/classes/symkeys.d.ts +68 -11
- package/dist/mjs/classes/symkeys.js +103 -17
- package/dist/mjs/classes/symkeys.js.map +1 -1
- package/dist/mjs/classes/type.d.ts +4 -4
- package/dist/mjs/function.extensions.js +1 -0
- package/dist/mjs/function.extensions.js.map +1 -1
- package/dist/mjs/global.this.js +6 -0
- package/dist/mjs/global.this.js.map +1 -1
- package/dist/mjs/index.d.ts +2 -0
- package/dist/mjs/index.js +4 -0
- package/dist/mjs/index.js.map +1 -1
- package/dist/mjs/json.extensions.js +19 -18
- package/dist/mjs/json.extensions.js.map +1 -1
- package/dist/mjs/map.extensions.js +1 -0
- package/dist/mjs/map.extensions.js.map +1 -1
- package/dist/mjs/number.extension.js +1 -0
- package/dist/mjs/number.extension.js.map +1 -1
- package/dist/mjs/object.extensions.d.ts +0 -29
- package/dist/mjs/object.extensions.js +215 -251
- package/dist/mjs/object.extensions.js.map +1 -1
- package/dist/mjs/set.extensions.js +1 -0
- package/dist/mjs/set.extensions.js.map +1 -1
- package/dist/mjs/string.extensions.js +474 -469
- package/dist/mjs/string.extensions.js.map +1 -1
- package/dist/mjs/symbol.extensions.js +386 -31
- package/dist/mjs/symbol.extensions.js.map +1 -1
- package/dist/mjs/utils/copy.object.d.ts +408 -0
- package/dist/mjs/utils/copy.object.js +702 -0
- package/dist/mjs/utils/copy.object.js.map +1 -0
- package/dist/mjs/utils/index.d.ts +1 -0
- package/dist/mjs/utils/index.js +3 -0
- package/dist/mjs/utils/index.js.map +1 -0
- package/dist/mjs/utils/toolkit.d.ts +1897 -0
- package/dist/mjs/utils/toolkit.js +1372 -0
- package/dist/mjs/utils/toolkit.js.map +1 -0
- package/package.json +29 -37
- package/repl.bootstrap.js +12 -1
- package/src/array.extensions.js +191 -1
- package/src/big.int.extension.js +3 -1
- package/src/classes/descriptor.js +1 -1
- package/src/classes/index.js +4 -0
- package/src/classes/iterable.js +74 -0
- package/src/classes/property.js +333 -0
- package/src/classes/symkeys.js +120 -19
- package/src/function.extensions.js +2 -0
- package/src/global.this.js +8 -0
- package/src/index.js +5 -0
- package/src/json.extensions.js +18 -19
- package/src/map.extensions.js +3 -1
- package/src/number.extension.js +3 -1
- package/src/object.extensions.js +240 -277
- package/src/set.extensions.js +3 -1
- package/src/string.extensions.js +512 -506
- package/src/symbol.extensions.js +412 -29
- package/src/utils/copy.object.js +780 -0
- package/src/utils/index.js +2 -0
- package/src/utils/toolkit.js +1471 -0
- package/tests/arrayextensions.test.js +2 -0
- package/tests/index.test.js +1 -0
- package/tests/newClasses/asyncIterable.test.js +2 -0
- package/tests/newClasses/deferred.test.js +5 -3
- package/tests/newClasses/descriptor.test.js +2 -0
- package/tests/newClasses/iterable.test.js +2 -0
- package/tests/newClasses/refmap.test.js +2 -1
- package/tests/newClasses/refset.test.js +2 -0
- package/tests/objectextensions.test.js +2 -0
- package/tests/setextensions.test.js +2 -0
- package/tests/stringextensions.test.js +1 -0
- package/tests/utils/toolkit.test.js +223 -0
- package/tsconfig.base.json +1 -1
- package/vitest.config.js +7 -0
- package/dist/@nejs/basic-extensions.bundle.2.8.0.js +0 -19
- package/dist/@nejs/basic-extensions.bundle.2.8.0.js.map +0 -7
- package/docs/assets/anchor.js +0 -350
- package/docs/assets/bass-addons.css +0 -12
- package/docs/assets/bass.css +0 -544
- package/docs/assets/fonts/EOT/SourceCodePro-Bold.eot +0 -0
- package/docs/assets/fonts/EOT/SourceCodePro-Regular.eot +0 -0
- package/docs/assets/fonts/LICENSE.txt +0 -93
- package/docs/assets/fonts/OTF/SourceCodePro-Bold.otf +0 -0
- package/docs/assets/fonts/OTF/SourceCodePro-Regular.otf +0 -0
- package/docs/assets/fonts/TTF/SourceCodePro-Bold.ttf +0 -0
- package/docs/assets/fonts/TTF/SourceCodePro-Regular.ttf +0 -0
- package/docs/assets/fonts/WOFF/OTF/SourceCodePro-Bold.otf.woff +0 -0
- package/docs/assets/fonts/WOFF/OTF/SourceCodePro-Regular.otf.woff +0 -0
- package/docs/assets/fonts/WOFF/TTF/SourceCodePro-Bold.ttf.woff +0 -0
- package/docs/assets/fonts/WOFF/TTF/SourceCodePro-Regular.ttf.woff +0 -0
- package/docs/assets/fonts/WOFF2/OTF/SourceCodePro-Bold.otf.woff2 +0 -0
- package/docs/assets/fonts/WOFF2/OTF/SourceCodePro-Regular.otf.woff2 +0 -0
- package/docs/assets/fonts/WOFF2/TTF/SourceCodePro-Bold.ttf.woff2 +0 -0
- package/docs/assets/fonts/WOFF2/TTF/SourceCodePro-Regular.ttf.woff2 +0 -0
- package/docs/assets/fonts/source-code-pro.css +0 -23
- package/docs/assets/github.css +0 -123
- package/docs/assets/site.js +0 -168
- package/docs/assets/split.css +0 -15
- package/docs/assets/split.js +0 -782
- package/docs/assets/style.css +0 -147
- package/docs/index.html +0 -35485
|
@@ -1,15 +1,10 @@
|
|
|
1
1
|
import { Patch } from '@nejs/extension';
|
|
2
2
|
import { SymbolExtensions } from './symbol.extensions.js';
|
|
3
3
|
import { Descriptor } from './classes/descriptor.js';
|
|
4
|
+
import { Property } from './classes/property.js';
|
|
5
|
+
import { as, has, is, si } from './utils/toolkit.js';
|
|
6
|
+
import { copyObject } from './utils/copy.object.js';
|
|
4
7
|
const { keys: symkeys } = SymbolExtensions.patches;
|
|
5
|
-
// Avoid circular dependencies; rewrite here for brevity
|
|
6
|
-
const isFn = o => typeof o === 'function' || o instanceof Function;
|
|
7
|
-
const isStr = o => typeof o === 'string' || o instanceof String;
|
|
8
|
-
const isBool = o => typeof o === 'boolean';
|
|
9
|
-
const isTrue = o => isBool(o) && o === true;
|
|
10
|
-
const isTruthy = o => isTrue(!!o);
|
|
11
|
-
const isFalse = o => isBool(o) && o === false;
|
|
12
|
-
const isFalsy = o => isFalse(!!o);
|
|
13
8
|
/**
|
|
14
9
|
* `ObjectExtensions` is a constant that applies a patch to the global
|
|
15
10
|
* `Object` constructor. This patch extends the `Object` with additional
|
|
@@ -24,6 +19,112 @@ const isFalsy = o => isFalse(!!o);
|
|
|
24
19
|
*/
|
|
25
20
|
export const ObjectExtensions = new Patch(Object, {
|
|
26
21
|
[Patch.kMutablyHidden]: {
|
|
22
|
+
add(...args) {
|
|
23
|
+
const { isDescriptor } = Descriptor;
|
|
24
|
+
const { isObject: isObj } = this;
|
|
25
|
+
const { kDescriptorStore } = this;
|
|
26
|
+
let obj, key, value, _get, _set, storage, storageKey;
|
|
27
|
+
let _type, _flag, _desc;
|
|
28
|
+
// Check to see if we received multiple arguments or an object
|
|
29
|
+
if (args.length && isObj(args[0])) {
|
|
30
|
+
({
|
|
31
|
+
to: obj,
|
|
32
|
+
key,
|
|
33
|
+
value,
|
|
34
|
+
get: _get,
|
|
35
|
+
set: _set,
|
|
36
|
+
storage,
|
|
37
|
+
storageKey,
|
|
38
|
+
type: _type = ['accessor', 'data'][1],
|
|
39
|
+
flag: _flag = undefined,
|
|
40
|
+
descriptorBase: _desc = undefined,
|
|
41
|
+
} = args[0]);
|
|
42
|
+
}
|
|
43
|
+
else if (args.length > 1) {
|
|
44
|
+
([
|
|
45
|
+
to,
|
|
46
|
+
_type,
|
|
47
|
+
key,
|
|
48
|
+
getOrValue,
|
|
49
|
+
_set,
|
|
50
|
+
storage,
|
|
51
|
+
storageKey,
|
|
52
|
+
_flag,
|
|
53
|
+
_desc,
|
|
54
|
+
] = args);
|
|
55
|
+
obj = to;
|
|
56
|
+
_type = (['accessor', 'data'].includes(_type.toLowerCase())
|
|
57
|
+
? _type.toLowerCase() : 'data');
|
|
58
|
+
_get = _type === 'accessor' ? getOrValue : undefined;
|
|
59
|
+
_value = _type === 'data' ? getOrValue : undefined;
|
|
60
|
+
}
|
|
61
|
+
if (!this.isObject(obj)) {
|
|
62
|
+
console.warn('Object.add() must receive an object for `toObject`');
|
|
63
|
+
return obj;
|
|
64
|
+
}
|
|
65
|
+
const more = isDescriptor(_desc) ? _desc : {};
|
|
66
|
+
const flag = _flag || Object.definitionType.mutablyVisible;
|
|
67
|
+
const props = { ...Patch.getDescriptorOverridesFromSymbol(flag), ...more };
|
|
68
|
+
const type = (['accessor', 'data'].includes(_type)
|
|
69
|
+
? String(_type).toLowerCase() : 'data');
|
|
70
|
+
switch (type) {
|
|
71
|
+
case 'accessor':
|
|
72
|
+
let store = storage;
|
|
73
|
+
let storeKey = storageKey || key;
|
|
74
|
+
let makeStore = false;
|
|
75
|
+
let get = _get;
|
|
76
|
+
let set = _set;
|
|
77
|
+
if (!is.truthy(get) && !is.function(get)) {
|
|
78
|
+
get = undefined;
|
|
79
|
+
}
|
|
80
|
+
if (!is.truthy(set) && !is.function(set)) {
|
|
81
|
+
set = undefined;
|
|
82
|
+
}
|
|
83
|
+
if (isObj(store) || is.true(store) || is.function(store)) {
|
|
84
|
+
makeStore = is.true(store);
|
|
85
|
+
store = is.fn(store) ? store() : store;
|
|
86
|
+
store = is.object(store) ? store : (makeStore && {} || undefined);
|
|
87
|
+
}
|
|
88
|
+
// store should be defined by here: object or undefined
|
|
89
|
+
if ((!get && !set) && makeStore) {
|
|
90
|
+
// being lazy here, someone has defined we make an accessor but
|
|
91
|
+
// wants the default accessor behaviors with an associated store
|
|
92
|
+
// made by us.
|
|
93
|
+
Object.defineProperty(obj, kDescriptorStore, {
|
|
94
|
+
value: symkeys.add('descriptor.store', store),
|
|
95
|
+
configurable: true,
|
|
96
|
+
enumerable: false,
|
|
97
|
+
writable: true,
|
|
98
|
+
});
|
|
99
|
+
get = () => this[kDescriptorStore]?.data?.[storeKey];
|
|
100
|
+
set = (value) => { this[kDescriptorStore].data[storeKey] = value; };
|
|
101
|
+
}
|
|
102
|
+
else if (get?.length && set?.length > 1 && store) {
|
|
103
|
+
// if we received a get or set that takes more arguments than
|
|
104
|
+
// expected, assume the last argument should be the store variable
|
|
105
|
+
// so we execute the supplied function with the storage and its
|
|
106
|
+
// results or byproducts are the result to the get/set we define
|
|
107
|
+
const innerGet = get;
|
|
108
|
+
const innerSet = set;
|
|
109
|
+
get = () => innerGet(store);
|
|
110
|
+
set = (value) => innerSet(value, store);
|
|
111
|
+
}
|
|
112
|
+
// get and set should be in their final state by here
|
|
113
|
+
Object.defineProperty(obj, key, { ...props, get, set });
|
|
114
|
+
break;
|
|
115
|
+
case 'data':
|
|
116
|
+
Object.defineProperty(obj, key, { ...props, value });
|
|
117
|
+
break;
|
|
118
|
+
}
|
|
119
|
+
return obj;
|
|
120
|
+
},
|
|
121
|
+
addAccessor(to, key, getter, setter, storage) {
|
|
122
|
+
const store = storage ?? (!getter && !setter) ? true : undefined;
|
|
123
|
+
return this.add({ to, key, get: getter, set: setter, storage: store });
|
|
124
|
+
},
|
|
125
|
+
addData(to, key, value) {
|
|
126
|
+
return this.add({ to, key, value });
|
|
127
|
+
},
|
|
27
128
|
/**
|
|
28
129
|
* Creates a shallow copy of the provided object(s).
|
|
29
130
|
*
|
|
@@ -79,6 +180,33 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
79
180
|
deepCopy(destination, ...sources) {
|
|
80
181
|
return copyObject(true, destination, ...sources);
|
|
81
182
|
},
|
|
183
|
+
/**
|
|
184
|
+
* Defines a new property on an object with a specified value and
|
|
185
|
+
* visibility/mutability flag. The flag determines the visibility and
|
|
186
|
+
* mutability of the property. By default, the property is defined as
|
|
187
|
+
* mutably hidden.
|
|
188
|
+
*
|
|
189
|
+
* @param {object} object - The object on which to define the property.
|
|
190
|
+
* @param {string} key - The name of the property to be defined.
|
|
191
|
+
* @param {any} value - The value of the property to be defined.
|
|
192
|
+
* @param {symbol} [flag=Object.definitionType.mutablyHidden] - The
|
|
193
|
+
* visibility/mutability flag for the property. This should be one of the
|
|
194
|
+
* symbols available in `ObjectExtensions.definitionType`.
|
|
195
|
+
* @returns {object} The object with the newly defined property.
|
|
196
|
+
*
|
|
197
|
+
* @example
|
|
198
|
+
* // Define a new mutably hidden property on an object
|
|
199
|
+
* const myObject = {};
|
|
200
|
+
* const myValue = 'Hello, world!';
|
|
201
|
+
* const hiddenSymbol = Object.definitionType.mutablyHidden;
|
|
202
|
+
* Object.define(myObject, 'myProperty', myValue, hiddenSymbol);
|
|
203
|
+
* // myObject now has a mutably hidden property 'myProperty' with value
|
|
204
|
+
* // 'Hello, world!'
|
|
205
|
+
*/
|
|
206
|
+
define(object, key, value, flag = Object.definitionType.mutablyHidden) {
|
|
207
|
+
const properties = Patch.getDescriptorOverridesFromSymbol(flag);
|
|
208
|
+
return Object.defineProperty(object, key, { ...properties, value });
|
|
209
|
+
},
|
|
82
210
|
/**
|
|
83
211
|
* A getter property that provides access to the definition types used
|
|
84
212
|
* for object property definitions. These types are used to control the
|
|
@@ -110,33 +238,6 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
110
238
|
get immutablyVisible() { return Patch.kImmutablyVisible; },
|
|
111
239
|
};
|
|
112
240
|
},
|
|
113
|
-
/**
|
|
114
|
-
* Defines a new property on an object with a specified value and
|
|
115
|
-
* visibility/mutability flag. The flag determines the visibility and
|
|
116
|
-
* mutability of the property. By default, the property is defined as
|
|
117
|
-
* mutably hidden.
|
|
118
|
-
*
|
|
119
|
-
* @param {object} object - The object on which to define the property.
|
|
120
|
-
* @param {string} key - The name of the property to be defined.
|
|
121
|
-
* @param {any} value - The value of the property to be defined.
|
|
122
|
-
* @param {symbol} [flag=Object.definitionType.mutablyHidden] - The
|
|
123
|
-
* visibility/mutability flag for the property. This should be one of the
|
|
124
|
-
* symbols available in `ObjectExtensions.definitionType`.
|
|
125
|
-
* @returns {object} The object with the newly defined property.
|
|
126
|
-
*
|
|
127
|
-
* @example
|
|
128
|
-
* // Define a new mutably hidden property on an object
|
|
129
|
-
* const myObject = {};
|
|
130
|
-
* const myValue = 'Hello, world!';
|
|
131
|
-
* const hiddenSymbol = Object.definitionType.mutablyHidden;
|
|
132
|
-
* Object.define(myObject, 'myProperty', myValue, hiddenSymbol);
|
|
133
|
-
* // myObject now has a mutably hidden property 'myProperty' with value
|
|
134
|
-
* // 'Hello, world!'
|
|
135
|
-
*/
|
|
136
|
-
define(object, key, value, flag = Object.definitionType.mutablyHidden) {
|
|
137
|
-
const properties = Patch.getDescriptorOverridesFromSymbol(flag);
|
|
138
|
-
return Object.defineProperty(object, key, { ...properties, value });
|
|
139
|
-
},
|
|
140
241
|
/**
|
|
141
242
|
* Defines a new accessor property on an object with specified getter and
|
|
142
243
|
* setter functions and a visibility/mutability flag. The flag determines
|
|
@@ -170,112 +271,6 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
170
271
|
const properties = Patch.getDescriptorOverridesFromSymbol(flag);
|
|
171
272
|
return Object.defineProperty(object, key, { ...properties, get, set });
|
|
172
273
|
},
|
|
173
|
-
addAccessor(to, key, getter, setter, storage) {
|
|
174
|
-
const store = storage ?? (!getter && !setter) ? true : undefined;
|
|
175
|
-
return this.add({ to, key, get: getter, set: setter, storage: store });
|
|
176
|
-
},
|
|
177
|
-
addData(to, key, value) {
|
|
178
|
-
return this.add({ to, key, value });
|
|
179
|
-
},
|
|
180
|
-
add(...args) {
|
|
181
|
-
const { isDescriptor } = Descriptor;
|
|
182
|
-
const { isObject: isObj } = this;
|
|
183
|
-
const { kDescriptorStore } = this;
|
|
184
|
-
let obj, key, value, _get, _set, storage, storageKey;
|
|
185
|
-
let _type, _flag, _desc;
|
|
186
|
-
// Check to see if we received multiple arguments or an object
|
|
187
|
-
if (args.length && isObj(args[0])) {
|
|
188
|
-
({
|
|
189
|
-
to: obj,
|
|
190
|
-
key,
|
|
191
|
-
value,
|
|
192
|
-
get: _get,
|
|
193
|
-
set: _set,
|
|
194
|
-
storage,
|
|
195
|
-
storageKey,
|
|
196
|
-
type: _type = ['accessor', 'data'][1],
|
|
197
|
-
flag: _flag = undefined,
|
|
198
|
-
descriptorBase: _desc = undefined,
|
|
199
|
-
} = args[0]);
|
|
200
|
-
}
|
|
201
|
-
else if (args.length > 1) {
|
|
202
|
-
([
|
|
203
|
-
to,
|
|
204
|
-
_type,
|
|
205
|
-
key,
|
|
206
|
-
getOrValue,
|
|
207
|
-
_set,
|
|
208
|
-
storage,
|
|
209
|
-
storageKey,
|
|
210
|
-
_flag,
|
|
211
|
-
_desc,
|
|
212
|
-
] = args);
|
|
213
|
-
obj = to;
|
|
214
|
-
_type = (['accessor', 'data'].includes(_type.toLowerCase())
|
|
215
|
-
? _type.toLowerCase() : 'data');
|
|
216
|
-
_get = _type === 'accessor' ? getOrValue : undefined;
|
|
217
|
-
_value = _type === 'data' ? getOrValue : undefined;
|
|
218
|
-
}
|
|
219
|
-
if (!this.isObject(obj)) {
|
|
220
|
-
console.warn('Object.add() must receive an object for `toObject`');
|
|
221
|
-
return obj;
|
|
222
|
-
}
|
|
223
|
-
const more = isDescriptor(_desc) ? _desc : {};
|
|
224
|
-
const flag = _flag || Object.definitionType.mutablyVisible;
|
|
225
|
-
const props = { ...Patch.getDescriptorOverridesFromSymbol(flag), ...more };
|
|
226
|
-
const type = (['accessor', 'data'].includes(_type)
|
|
227
|
-
? String(_type).toLowerCase() : 'data');
|
|
228
|
-
switch (type) {
|
|
229
|
-
case 'accessor':
|
|
230
|
-
let store = storage;
|
|
231
|
-
let storeKey = storageKey || key;
|
|
232
|
-
let makeStore = false;
|
|
233
|
-
let get = _get;
|
|
234
|
-
let set = _set;
|
|
235
|
-
if (!isTruthy(get) && !isFn(get)) {
|
|
236
|
-
get = undefined;
|
|
237
|
-
}
|
|
238
|
-
if (!isTruthy(set) && !isFn(set)) {
|
|
239
|
-
set = undefined;
|
|
240
|
-
}
|
|
241
|
-
if (isObj(store) || isTrue(store) || isFn(store)) {
|
|
242
|
-
makeStore = isTrue(store);
|
|
243
|
-
store = isFn(store) ? store() : store;
|
|
244
|
-
store = isObj(store) ? store : (makeStore && {} || undefined);
|
|
245
|
-
}
|
|
246
|
-
// store should be defined by here: object or undefined
|
|
247
|
-
if ((!get && !set) && makeStore) {
|
|
248
|
-
// being lazy here, someone has defined we make an accessor but
|
|
249
|
-
// wants the default accessor behaviors with an associated store
|
|
250
|
-
// made by us.
|
|
251
|
-
Object.defineProperty(obj, kDescriptorStore, {
|
|
252
|
-
value: symkeys.add('descriptor.store', store),
|
|
253
|
-
configurable: true,
|
|
254
|
-
enumerable: false,
|
|
255
|
-
writable: true,
|
|
256
|
-
});
|
|
257
|
-
get = () => this[kDescriptorStore]?.data?.[storeKey];
|
|
258
|
-
set = (value) => { this[kDescriptorStore].data[storeKey] = value; };
|
|
259
|
-
}
|
|
260
|
-
else if (get?.length && set?.length > 1 && store) {
|
|
261
|
-
// if we received a get or set that takes more arguments than
|
|
262
|
-
// expected, assume the last argument should be the store variable
|
|
263
|
-
// so we execute the supplied function with the storage and its
|
|
264
|
-
// results or byproducts are the result to the get/set we define
|
|
265
|
-
const innerGet = get;
|
|
266
|
-
const innerSet = set;
|
|
267
|
-
get = () => innerGet(store);
|
|
268
|
-
set = (value) => innerSet(value, store);
|
|
269
|
-
}
|
|
270
|
-
// get and set should be in their final state by here
|
|
271
|
-
Object.defineProperty(obj, key, { ...props, get, set });
|
|
272
|
-
break;
|
|
273
|
-
case 'data':
|
|
274
|
-
Object.defineProperty(obj, key, { ...props, value });
|
|
275
|
-
break;
|
|
276
|
-
}
|
|
277
|
-
return obj;
|
|
278
|
-
},
|
|
279
274
|
/**
|
|
280
275
|
* Creates a new object from an array of key-value pairs (entries), with an
|
|
281
276
|
* optional prototype and reducer function. If no prototype is provided,
|
|
@@ -310,10 +305,10 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
310
305
|
* // with prototype { foo: 'bar' }
|
|
311
306
|
*/
|
|
312
307
|
fromEntriesUsing(entries, prototype = Object.prototype, reducer = undefined) {
|
|
313
|
-
if (!
|
|
308
|
+
if (!is.array(entries)) {
|
|
314
309
|
return undefined;
|
|
315
310
|
}
|
|
316
|
-
const entriesToUse = entries.filter(entry =>
|
|
311
|
+
const entriesToUse = entries.filter(entry => is.array(entry) && entry.length >= 2);
|
|
317
312
|
if (!entriesToUse.length) {
|
|
318
313
|
return undefined;
|
|
319
314
|
}
|
|
@@ -373,7 +368,7 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
373
368
|
* @returns {string} - The string tag of the object, indicating its type.
|
|
374
369
|
*/
|
|
375
370
|
getStringTag(value, strict = false) {
|
|
376
|
-
if (
|
|
371
|
+
if (has.stringTag(value)) {
|
|
377
372
|
return value[Symbol.toStringTag];
|
|
378
373
|
}
|
|
379
374
|
if (strict) {
|
|
@@ -422,7 +417,7 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
422
417
|
* @returns true if the symbol is defined, false otherwise
|
|
423
418
|
*/
|
|
424
419
|
hasStringTag(value) {
|
|
425
|
-
return
|
|
420
|
+
return has.stringTag(value);
|
|
426
421
|
},
|
|
427
422
|
/**
|
|
428
423
|
* The function checks if a value is either `undefined` or `null`.
|
|
@@ -433,7 +428,7 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
433
428
|
* and `false` otherwise.
|
|
434
429
|
*/
|
|
435
430
|
isNullDefined(value) {
|
|
436
|
-
return value
|
|
431
|
+
return is.nullish(value);
|
|
437
432
|
},
|
|
438
433
|
/**
|
|
439
434
|
* The `ifNullDefined` function checks if a given value is either `null` or
|
|
@@ -468,7 +463,7 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
468
463
|
* );
|
|
469
464
|
*/
|
|
470
465
|
ifNullDefined(value, thenValue, elseValue) {
|
|
471
|
-
return isThenElse(
|
|
466
|
+
return isThenElse(is.nullish(value), thenValue, elseValue);
|
|
472
467
|
},
|
|
473
468
|
/**
|
|
474
469
|
* Checks if the provided value is an object.
|
|
@@ -492,22 +487,31 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
492
487
|
* console.log(isObject(null)); // Output: false
|
|
493
488
|
*/
|
|
494
489
|
isObject(value) {
|
|
495
|
-
return value
|
|
490
|
+
return is.object(value);
|
|
496
491
|
},
|
|
497
492
|
/**
|
|
498
|
-
*
|
|
499
|
-
*
|
|
500
|
-
*
|
|
501
|
-
*
|
|
493
|
+
* Executes a conditional function based on whether the provided value
|
|
494
|
+
* is an object or not. This method first checks if the value is an
|
|
495
|
+
* object using the `is.object` method from the toolkit. If it is, it
|
|
496
|
+
* returns the `thenValue`, otherwise it returns the `elseValue`.
|
|
502
497
|
*
|
|
503
|
-
* @param {
|
|
504
|
-
* @
|
|
505
|
-
*
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
498
|
+
* @param {any} value - The value to be checked.
|
|
499
|
+
* @param {function | any} thenValue - The value to return if `value`
|
|
500
|
+
* is an object.
|
|
501
|
+
* @param {function | any} elseValue - The value to return if `value`
|
|
502
|
+
* is not an object.
|
|
503
|
+
* @returns {*} - Returns `thenValue` if the value is an object,
|
|
504
|
+
* otherwise `elseValue`.
|
|
505
|
+
*
|
|
506
|
+
* @example
|
|
507
|
+
* // returns 'Is Object'
|
|
508
|
+
* ifObject({}, 'Is Object', 'Not Object')
|
|
509
|
+
* // returns 'Not Object'
|
|
510
|
+
* ifObject(42, 'Is Object', 'Not Object')
|
|
511
|
+
*/
|
|
512
|
+
ifObject(value, thenValue, elseValue) {
|
|
513
|
+
return isThenElse(is.object(value), thenValue, elseValue);
|
|
509
514
|
},
|
|
510
|
-
|
|
511
515
|
/**
|
|
512
516
|
* Checks to see if the supplied value is a primitive value.
|
|
513
517
|
*
|
|
@@ -516,23 +520,7 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
516
520
|
* false otherwise.
|
|
517
521
|
*/
|
|
518
522
|
isPrimitive(value) {
|
|
519
|
-
|
|
520
|
-
// is 'object'
|
|
521
|
-
if (value === null) {
|
|
522
|
-
return true;
|
|
523
|
-
}
|
|
524
|
-
// Check for other primitives
|
|
525
|
-
switch (typeof value) {
|
|
526
|
-
case 'string':
|
|
527
|
-
case 'number':
|
|
528
|
-
case 'bigint':
|
|
529
|
-
case 'boolean':
|
|
530
|
-
case 'undefined':
|
|
531
|
-
case 'symbol':
|
|
532
|
-
return true;
|
|
533
|
-
default:
|
|
534
|
-
return false;
|
|
535
|
-
}
|
|
523
|
+
return is.primitive(value);
|
|
536
524
|
},
|
|
537
525
|
/**
|
|
538
526
|
* Executes a conditional function based on whether the provided value is
|
|
@@ -555,7 +543,7 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
555
543
|
* ifPrimitive({a: 'hello'}, 1, 2)
|
|
556
544
|
*/
|
|
557
545
|
ifPrimitive(value, thenValue, elseValue) {
|
|
558
|
-
return isThenElse(
|
|
546
|
+
return isThenElse(is.primitive(value), thenValue, elseValue);
|
|
559
547
|
},
|
|
560
548
|
/**
|
|
561
549
|
* Checks if the given value is a valid key for an object. In JavaScript, a
|
|
@@ -727,6 +715,54 @@ export const ObjectExtensions = new Patch(Object, {
|
|
|
727
715
|
}
|
|
728
716
|
return result;
|
|
729
717
|
},
|
|
718
|
+
withProperties(prototype, ...properties) {
|
|
719
|
+
const props = properties.filter(p => p instanceof Property);
|
|
720
|
+
const possible = properties.filter(p => Array.isArray(p));
|
|
721
|
+
if (possible.length) {
|
|
722
|
+
for (const [key, descriptorOrDataOrAccessorArgs, ...rest] of possible) {
|
|
723
|
+
// if arg[1] is a descriptor
|
|
724
|
+
if (Property.is.descriptor(descriptorOrDataOrAccessorArgs)) {
|
|
725
|
+
props.push(new Property(key, descriptorOrDataOrAccessorArgs));
|
|
726
|
+
}
|
|
727
|
+
else {
|
|
728
|
+
const { get, set } = descriptorOrDataOrAccessorArgs;
|
|
729
|
+
const args = [key, descriptorOrDataOrAccessorArgs, ...rest];
|
|
730
|
+
if (get || set) {
|
|
731
|
+
props.push(Property.accessor(...args));
|
|
732
|
+
}
|
|
733
|
+
else {
|
|
734
|
+
props.push(Property.data(...args));
|
|
735
|
+
}
|
|
736
|
+
}
|
|
737
|
+
}
|
|
738
|
+
}
|
|
739
|
+
const object = Object.create(prototype ?? Object.prototype);
|
|
740
|
+
const sorted = props.toSorted((a, b) => a.key < b.key ? -1 : (a.key > b.key ? 1 : 0));
|
|
741
|
+
for (const property of sorted) {
|
|
742
|
+
property.apply(object);
|
|
743
|
+
}
|
|
744
|
+
Property.data(Symbol.for('properties'), sorted).apply(object);
|
|
745
|
+
return object;
|
|
746
|
+
},
|
|
747
|
+
/**
|
|
748
|
+
* Retrieves a toolkit object containing various utility functions
|
|
749
|
+
* for type checking and introspection.
|
|
750
|
+
*
|
|
751
|
+
* The toolkit includes many functions. It was designed to read as
|
|
752
|
+
* though the toolkit were assigned to the variable `it`.
|
|
753
|
+
*
|
|
754
|
+
* @example
|
|
755
|
+
* const is = ObjectExtensions.patches.toolkit
|
|
756
|
+
* console.log(is.object({})) // Output: true
|
|
757
|
+
* console.log(is.string('hello')) // Output: true
|
|
758
|
+
* console.log(is.number(42)) // Output: true
|
|
759
|
+
*
|
|
760
|
+
* @returns {object} The toolkit object containing various utility
|
|
761
|
+
* functions for type checking and introspection.
|
|
762
|
+
*/
|
|
763
|
+
get toolkit() {
|
|
764
|
+
return { as, has, is, si };
|
|
765
|
+
},
|
|
730
766
|
},
|
|
731
767
|
});
|
|
732
768
|
const { isObject: pIsObject, ifObject: pIfObject, isNullDefined: pIsNullDefined, ifNullDefined: pIfNullDefined, isPrimitive: pIsPrimitive, ifPrimitive: pIfPrimitive, isValidKey: pIsValidKey, ifValidKey: pIfValidKey, hasStringTag: pHasStringTag, getStringTag: pGetStringTag, stripTo: pStripTo, } = ObjectExtensions.patches;
|
|
@@ -1040,85 +1076,13 @@ export const ObjectPrototypeExtensions = new Patch(Object.prototype, {
|
|
|
1040
1076
|
// {@see globalThis.isThenElse}
|
|
1041
1077
|
function isThenElse(bv, tv, ev) {
|
|
1042
1078
|
if (arguments.length > 1) {
|
|
1043
|
-
var _then =
|
|
1079
|
+
var _then = is.function(tv) ? tv(bv) : tv;
|
|
1044
1080
|
if (arguments.length > 2) {
|
|
1045
|
-
var _else =
|
|
1081
|
+
var _else = is.function(ev) ? tv(bv) : ev;
|
|
1046
1082
|
return bv ? _then : _else;
|
|
1047
1083
|
}
|
|
1048
1084
|
return bv || _then;
|
|
1049
1085
|
}
|
|
1050
1086
|
return bv;
|
|
1051
1087
|
}
|
|
1052
|
-
/**
|
|
1053
|
-
* Creates a deep or shallow copy of the provided source objects and merges
|
|
1054
|
-
* them into the destination object. The function uses a Set to keep track
|
|
1055
|
-
* of visited objects to avoid circular references.
|
|
1056
|
-
*
|
|
1057
|
-
* @function
|
|
1058
|
-
* @name copyObject
|
|
1059
|
-
* @param {boolean} deep - If true, performs a deep copy, otherwise performs
|
|
1060
|
-
* a shallow copy.
|
|
1061
|
-
* @param {object} destination - The object to which properties will be copied.
|
|
1062
|
-
* @param {...object} sources - The source object(s) from which properties
|
|
1063
|
-
* will be copied.
|
|
1064
|
-
* @returns {object} The destination object with the copied properties.
|
|
1065
|
-
*
|
|
1066
|
-
* @example
|
|
1067
|
-
* // Shallow copy
|
|
1068
|
-
* const obj1 = { a: 1, b: { c: 2 } };
|
|
1069
|
-
* const obj2 = { b: { d: 3 }, e: 4 };
|
|
1070
|
-
* const result = copyObject(false, obj1, obj2);
|
|
1071
|
-
* console.log(result); // Output: { a: 1, b: { d: 3 }, e: 4 }
|
|
1072
|
-
*
|
|
1073
|
-
* @example
|
|
1074
|
-
* // Deep copy
|
|
1075
|
-
* const obj1 = { a: 1, b: { c: 2 } };
|
|
1076
|
-
* const obj2 = { b: { d: 3 }, e: 4 };
|
|
1077
|
-
* const result = copyObject(true, obj1, obj2);
|
|
1078
|
-
* console.log(result); // Output: { a: 1, b: { c: 2, d: 3 }, e: 4 }
|
|
1079
|
-
*/
|
|
1080
|
-
export function copyObject(deep, destination, ...sources) {
|
|
1081
|
-
const visited = new Set();
|
|
1082
|
-
for (const source of sources) {
|
|
1083
|
-
if (source === null || typeof source !== 'object' || visited.has(source)) {
|
|
1084
|
-
continue;
|
|
1085
|
-
}
|
|
1086
|
-
visited.add(source);
|
|
1087
|
-
const keys = Reflect.ownKeys(source);
|
|
1088
|
-
for (const key of keys) {
|
|
1089
|
-
let descriptor;
|
|
1090
|
-
try {
|
|
1091
|
-
descriptor = Object.getOwnPropertyDescriptor(source, key);
|
|
1092
|
-
}
|
|
1093
|
-
catch (err) {
|
|
1094
|
-
console.warn(`Failed to get descriptor for key "${key}": ${err}`);
|
|
1095
|
-
continue;
|
|
1096
|
-
}
|
|
1097
|
-
const isDataDesc = Reflect.has(descriptor, 'value');
|
|
1098
|
-
const keyedValue = descriptor?.value;
|
|
1099
|
-
const conditionsMet = [
|
|
1100
|
-
isDataDesc,
|
|
1101
|
-
keyedValue,
|
|
1102
|
-
typeof keyedValue === 'object',
|
|
1103
|
-
!visited.has(keyedValue)
|
|
1104
|
-
].every(condition => condition);
|
|
1105
|
-
if (conditionsMet) {
|
|
1106
|
-
visited.add(keyedValue);
|
|
1107
|
-
const prototype = Object.getPrototypeOf(keyedValue);
|
|
1108
|
-
const descriptors = Object.getOwnPropertyDescriptors(keyedValue);
|
|
1109
|
-
const replacement = Object.create(prototype, descriptors);
|
|
1110
|
-
descriptor.value = deep
|
|
1111
|
-
? copyObject(deep, replacement, keyedValue)
|
|
1112
|
-
: replacement;
|
|
1113
|
-
}
|
|
1114
|
-
try {
|
|
1115
|
-
Object.defineProperty(destination, key, descriptor);
|
|
1116
|
-
}
|
|
1117
|
-
catch (err) {
|
|
1118
|
-
console.error(`Failed to define property "${key}": ${err}`);
|
|
1119
|
-
}
|
|
1120
|
-
}
|
|
1121
|
-
}
|
|
1122
|
-
return destination;
|
|
1123
|
-
}
|
|
1124
1088
|
//# sourceMappingURL=object.extensions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.extensions.js","sourceRoot":"","sources":["../../src/object.extensions.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAEvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAA;AAElD,wDAAwD;AACxD,MAAM,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,UAAU,IAAI,CAAC,YAAY,QAAQ,CAAA;AAClE,MAAM,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,YAAY,MAAM,CAAA;AAC/D,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS,CAAA;AAC1C,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,IAAI,CAAA;AAC3C,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AACjC,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,KAAK,CAAA;AAC7C,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAEjC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE;IAChD,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;QACtB;;;;;;;;;;;;;;;;;;;;;;;;WAwBG;QACH,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO;YAC1B,OAAO,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,CAAA;QACnD,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;WAuBG;QACH,QAAQ,CAAC,WAAW,EAAE,GAAG,OAAO;YAC9B,OAAO,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC,CAAA;QAClD,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,IAAI,cAAc;YAChB,OAAO;gBACL,IAAI,aAAa,KAAK,OAAO,KAAK,CAAC,cAAc,CAAA,CAAC,CAAC;gBACnD,IAAI,cAAc,KAAK,OAAO,KAAK,CAAC,eAAe,CAAA,CAAC,CAAC;gBACrD,IAAI,eAAe,KAAK,OAAO,KAAK,CAAC,gBAAgB,CAAA,CAAC,CAAC;gBACvD,IAAI,gBAAgB,KAAK,OAAO,KAAK,CAAC,iBAAiB,CAAA,CAAC,CAAC;aAC1D,CAAA;QACH,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa;YACnE,MAAM,UAAU,GAAG,KAAK,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAA;YAC/D,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,UAAU,EAAE,KAAK,EAAE,CAAC,CAAA;QACrE,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA4BG;QACH,cAAc,CACZ,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,GAAG,MAAM,CAAC,cAAc,CAAC,aAAa;YAEjE,MAAM,UAAU,GAAG,KAAK,CAAC,gCAAgC,CAAC,IAAI,CAAC,CAAA;YAC/D,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QACxE,CAAC;QAED,WAAW,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;YAC1C,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACjE,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAA;QACxE,CAAC;QAED,OAAO,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK;YACpB,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACrC,CAAC;QAED,GAAG,CAAC,GAAG,IAAI;YACT,MAAM,EAAE,YAAY,EAAE,GAAG,UAAU,CAAA;YACnC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;YAChC,MAAM,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAA;YAEjC,IAAI,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,CAAA;YACpD,IAAI,KAAK,EAAE,KAAK,EAAE,KAAK,CAAA;YAEvB,8DAA8D;YAC9D,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClC,CAAC;oBACC,EAAE,EAAE,GAAG;oBACP,GAAG;oBACH,KAAK;oBACL,GAAG,EAAE,IAAI;oBACT,GAAG,EAAE,IAAI;oBACT,OAAO;oBACP,UAAU;oBACV,IAAI,EAAE,KAAK,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,EAAE,KAAK,GAAG,SAAS;oBACvB,cAAc,EAAE,KAAK,GAAG,SAAS;iBAClC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;YACd,CAAC;iBACI,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,CAAC;oBACC,EAAE;oBACF,KAAK;oBACL,GAAG;oBACH,UAAU;oBACV,IAAI;oBACJ,OAAO;oBACP,UAAU;oBACV,KAAK;oBACL,KAAK;iBACN,GAAG,IAAI,CAAC,CAAA;gBAET,GAAG,GAAG,EAAE,CAAA;gBACR,KAAK,GAAG,CACN,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;oBAClD,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CAC/B,CAAA;gBACD,IAAI,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;gBACpD,MAAM,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;YACpD,CAAC;YAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,OAAO,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAA;gBAClE,OAAO,GAAG,CAAC;YACb,CAAC;YAED,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;YAC7C,MAAM,IAAI,GAAG,KAAK,IAAI,MAAM,CAAC,cAAc,CAAC,cAAc,CAAA;YAC1D,MAAM,KAAK,GAAG,EAAE,GAAG,KAAK,CAAC,gCAAgC,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,CAAA;YAC1E,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;gBAChD,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,MAAM,CACvC,CAAA;YAED,QAAQ,IAAI,EAAE,CAAC;gBACb,KAAK,UAAU;oBACb,IAAI,KAAK,GAAG,OAAO,CAAC;oBACpB,IAAI,QAAQ,GAAG,UAAU,IAAI,GAAG,CAAA;oBAChC,IAAI,SAAS,GAAG,KAAK,CAAA;oBACrB,IAAI,GAAG,GAAG,IAAI,CAAC;oBACf,IAAI,GAAG,GAAG,IAAI,CAAC;oBAEf,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAC,GAAG,GAAG,SAAS,CAAA;oBAAC,CAAC;oBACrD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;wBAAC,GAAG,GAAG,SAAS,CAAA;oBAAC,CAAC;oBAErD,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;wBACjD,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;wBACzB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAA;wBACrC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,IAAI,SAAS,CAAC,CAAA;oBAC/D,CAAC;oBACD,uDAAuD;oBAEvD,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,EAAE,CAAC;wBAChC,+DAA+D;wBAC/D,gEAAgE;wBAChE,cAAc;wBACd,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,gBAAgB,EAAE;4BAC3C,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,KAAK,CAAC;4BAC7C,YAAY,EAAE,IAAI;4BAClB,UAAU,EAAE,KAAK;4BACjB,QAAQ,EAAE,IAAI;yBACf,CAAC,CAAA;wBAEF,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAA;wBACpD,GAAG,GAAG,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAA,CAAC,CAAC,CAAA;oBACpE,CAAC;yBAEI,IAAI,GAAG,EAAE,MAAM,IAAI,GAAG,EAAE,MAAM,GAAG,CAAC,IAAI,KAAK,EAAE,CAAC;wBACjD,6DAA6D;wBAC7D,kEAAkE;wBAClE,+DAA+D;wBAC/D,gEAAgE;wBAChE,MAAM,QAAQ,GAAG,GAAG,CAAA;wBACpB,MAAM,QAAQ,GAAG,GAAG,CAAA;wBACpB,GAAG,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;wBAC3B,GAAG,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;oBACzC,CAAC;oBACD,qDAAqD;oBAErD,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;oBACvD,MAAK;gBAEP,KAAK,MAAM;oBACT,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;oBACpD,MAAK;YACT,CAAC;YAED,OAAO,GAAG,CAAA;QACZ,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAgCG;QACH,gBAAgB,CAAC,OAAO,EAAE,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,OAAO,GAAG,SAAS;YACzE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5B,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,CACjC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,CACnD,CAAC;YAEF,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC;gBACzB,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,YAAY,QAAQ;gBAC5C,CAAC,CAAC,OAAO;gBACT,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC9B,WAAW,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;oBACzB,OAAO,WAAW,CAAC;gBACrB,CAAC,CAAC;YAEJ,OAAO,YAAY,CAAC,MAAM,CACxB,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,CACzD,CAAC;QACJ,CAAC;QAED;;;;;;;;;;;;;;;;;;;;WAoBG;QACH,wBAAwB,CAAC,MAAM;YAC7B,MAAM,OAAO,GAAG,EAAE,CAAA;YAElB,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAA;YAC7C,OAAO,SAAS,EAAE,CAAC;gBACjB,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACjE,GAAG,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,wBAAwB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAA;oBAC1D,OAAO,GAAG,CAAA;gBACZ,CAAC,EAAE,EAAE,CAAC,CAAA;gBAEN,OAAO,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAA;gBAEtC,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,SAAS,CAAC,CAAA;YAC9C,CAAC;YAED,OAAO,OAAO,CAAA;QAChB,CAAC;QAED;;;;;;;;;;;;WAYG;QACH,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;YAChC,IAAI,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC/B,OAAO,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;YAClC,CAAC;YAED,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,SAAS,CAAA;YAClB,CAAC;YAED,IAAI,KAAK,IAAI,CAAC,OAAO,KAAK,KAAK,UAAU,CAAC,EAAE,CAAC;gBAC3C,OAAO,KAAK,CAAC,IAAI,CAAA;YACnB,CAAC;YAED,OAAO,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;QAED;;;;;;;;;;;;;;;;;;;WAmBG;QACH,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;YAC/B,MAAM,SAAS,GAAG,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;YAE5C,QAAQ,SAAS,EAAE,CAAC;gBAClB,KAAK,MAAM,CAAC,CAAC,OAAO,IAAI,CAAA;gBACxB,KAAK,WAAW,CAAC,CAAC,OAAO,SAAS,CAAA;gBAClC;oBACE,OAAO,KAAK,CAAC,SAAS,CAAC,CAAA;YAC3B,CAAC;QACH,CAAC;QAED;;;;;;;WAOG;QACH,YAAY,CAAC,KAAK;YAChB,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAA;QACzE,CAAC;QAED;;;;;;;WAOG;QACH,aAAa,CAAC,KAAK;YACjB,OAAO,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,CAAA;QAC9C,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA+BG;QACH,aAAa,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS;YACvC,OAAO,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QACrE,CAAC;QAED;;;;;;;;;;;;;;;;;;;;WAoBG;QACH,QAAQ,CAAC,KAAK;YACZ,OAAO,KAAK,YAAY,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAA;QACtE,CAAC;QAED;;;;;;;;;;;;;;;;;;;;WAoBG;QACH,WAAW,CAAC,KAAK;YACf,uDAAuD;YACvD,cAAc;YACd,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,6BAA6B;YAC7B,QAAQ,OAAO,KAAK,EAAE,CAAC;gBACrB,KAAK,QAAQ,CAAC;gBACd,KAAK,QAAQ,CAAC;gBACd,KAAK,QAAQ,CAAC;gBACd,KAAK,SAAS,CAAC;gBACf,KAAK,WAAW,CAAC;gBACjB,KAAK,QAAQ;oBACX,OAAO,IAAI,CAAC;gBACd;oBACE,OAAO,KAAK,CAAC;YACjB,CAAC;QACH,CAAC;QAED;;;;;;;;;;;;;;;;;;;WAmBG;QACH,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS;YACrC,OAAO,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;QAClE,CAAC;QAED;;;;;;;;;WASG;QACH,UAAU,CAAC,KAAK;YACd,OAAO,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC;QAClE,CAAC;QAED;;;;;;;;;;;;;;;;;;;WAmBG;QACH,UAAU,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS;YACpC,OAAO,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;QACjE,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;WAyBG;QACH,IAAI,gBAAgB;YAClB,OAAO,MAAM,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAA;QACtD,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WA8BG;QACH,QAAQ,CACN,IAAI,EACJ,YAAY,GAAG,SAAS,EACxB,SAAS,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,EACnC,YAAY,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EACrE,cAAc,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,EACzD,gBAAgB,GAAG,SAAS,EAC5B,SAAS,GAAG,MAAM,CAAC,SAAS;YAE5B,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAA;YACzD,IAAI,MAAM,GAAG,EAAE,CAAA;YAEf,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC,CAAA;YACnE,CAAC;iBACI,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAC7B,CAAC;iBACI,CAAC;gBACJ,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;gBACxB,OAAO,MAAM,CAAA;YACf,CAAC;YAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClD,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;gBACxE,IAAI,aAAa,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,YAAY,CAAA;gBAC/C,IAAI,SAAS,KAAK,UAAU,IAAI,YAAY,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;oBAC/D,MAAM,CAAC,cAAc,CACnB,MAAM,EAAE,MAAM,EAAE;wBACd,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI;qBAC5D,CACF,CAAA;oBACD,YAAY,CAAC,OAAO,GAAG,MAAM,CAAA;gBAC/B,CAAC;gBAED,IAAI,cAAc,GAAG,SAAS,KAAK,MAAM;oBACvC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,IAAI,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAE;oBAClD,CAAC,CAAC;wBACE,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,cAAc,OAAO,IAAI,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC;wBAC5D,GAAG,EAAE,YAAY,CAAC,GAAG,IAAI,UAAS,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC;qBAC1D,CAAA;gBAEL,IAAI,YAAY,CAAC,OAAO,EAAE,CAAC;oBACzB,cAAc,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;oBAClE,cAAc,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;gBACpE,CAAC;gBAED,MAAM,CAAC,cAAc,CACnB,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,EAAE,CACtD,CAAA;YACH,CAAC;YAED,OAAO,MAAM,CAAA;QACf,CAAC;QAED;;;;;;;;;;;;;WAaG;QACH,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;YACxC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;gBAC1C,MAAM,IAAI,SAAS,CACjB,sDAAsD,EACtD,MAAM,CACP,CAAC;YACJ,CAAC;YAED,MAAM,MAAM,GAAG,EAAE,CAAC;YAElB,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,KAAK,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;gBACrB,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC7B,MAAM,kBAAkB,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;oBACxE,MAAM,UAAU,GAAG,EAAE,GAAG,kBAAkB,EAAE,CAAC;oBAE7C,IACE,OAAO,UAAU,CAAC,GAAG,KAAK,UAAU;wBACpC,OAAO,UAAU,CAAC,GAAG,KAAK,UAAU,EACpC,CAAC;wBACD,IAAI,aAAa,EAAE,CAAC;4BAClB,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;4BAC9C,UAAU,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;wBAChD,CAAC;oBACH,CAAC;oBAED,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;KACF;CACF,CAAC,CAAC;AAEH,MAAM,EACJ,QAAQ,EAAE,SAAS,EAAa,QAAQ,EAAE,SAAS,EACnD,aAAa,EAAE,cAAc,EAAG,aAAa,EAAE,cAAc,EAC7D,WAAW,EAAE,YAAY,EAAO,WAAW,EAAE,YAAY,EACzD,UAAU,EAAE,WAAW,EAAS,UAAU,EAAE,WAAW,EACvD,YAAY,EAAE,aAAa,EAAK,YAAY,EAAE,aAAa,EAC3D,OAAO,EAAE,QAAQ,GAElB,GAAG,gBAAgB,CAAC,OAAO,CAAC;AAE7B;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,EAAE;IACnE,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE;QACtB;;;;;;;;;;;;;;;;;WAiBG;QACH,wBAAwB;YACtB,OAAO,gBAAgB,CAAC,OAAO,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAA;QAChE,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;WAwBG;QACH,IAAI,QAAQ;YACV,OAAO,SAAS,CAAC,IAAI,CAAC,CAAA;QACxB,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;;WA2BG;QACH,QAAQ,CAAC,SAAS,EAAE,SAAS;YAC3B,OAAO,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;QAC9C,CAAC;QAED;;;;;;;;;;;;;;;;;WAiBG;QACH,IAAI,aAAa;YACf,OAAO,cAAc,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;WAsBG;QACH,aAAa,CAAC,SAAS,EAAE,SAAS;YAChC,OAAO,cAAc,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;QACnD,CAAC;QAED;;;;;;;;;;;;;;;;;;;;WAoBG;QACH,IAAI,WAAW;YACb,OAAO,YAAY,CAAC,IAAI,CAAC,CAAA;QAC3B,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;WAyBG;QACH,WAAW,CAAC,SAAS,EAAE,SAAS;YAC9B,OAAO,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;QACjD,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;WAyBG;QACH,IAAI,UAAU;YACZ,OAAO,WAAW,CAAC,IAAI,CAAC,CAAA;QAC1B,CAAC;QAED;;;;;;;;;;;;;;;;;;;;;;;;;;WA0BG;QACH,UAAU,CAAC,SAAS,EAAE,SAAS;YAC7B,OAAO,WAAW,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;QAChD,CAAC;QAED;;;;;;;WAOG;QACH,IAAI,YAAY;YACd,OAAO,aAAa,CAAC,IAAI,CAAC,CAAA;QAC5B,CAAC;QAED;;;;;;;;;;;;WAYG;QACH,YAAY,CAAC,MAAM,GAAG,KAAK;YACzB,OAAO,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;QACpC,CAAC;QAED;;;;;;;;;;;;;WAaG;QACH,OAAO,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI;YAChC,OAAO,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,aAAa,CAAC,CAAA;QAC5C,CAAC;KACF;CACF,CAAC,CAAA;AAEF,0EAA0E;AAC1E,2EAA2E;AAC3E,+BAA+B;AAC/B,SAAS,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IAC5B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,IAAI,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnE,IAAI,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAAC,OAAO,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAA;QACrE,CAAC;QAAC,OAAO,EAAE,IAAI,KAAK,CAAC;IACvB,CAAC;IAAC,OAAO,EAAE,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,UAAU,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,OAAO;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAE,CAAA;IAEzB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACzE,SAAQ;QACV,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEnB,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;QACpC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,UAAU,CAAA;YACd,IAAI,CAAC;gBACH,UAAU,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YAC3D,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,qCAAqC,GAAG,MAAM,GAAG,EAAE,CAAC,CAAA;gBACjE,SAAQ;YACV,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YACnD,MAAM,UAAU,GAAG,UAAU,EAAE,KAAK,CAAA;YAEpC,MAAM,aAAa,GAAG;gBACpB,UAAU;gBACV,UAAU;gBACV,OAAO,UAAU,KAAK,QAAQ;gBAC9B,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;aACzB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,CAAA;YAE/B,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;gBAEvB,MAAM,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,CAAA;gBACnD,MAAM,WAAW,GAAG,MAAM,CAAC,yBAAyB,CAAC,UAAU,CAAC,CAAA;gBAChE,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,WAAW,CAAC,CAAA;gBAEzD,UAAU,CAAC,KAAK,GAAG,IAAI;oBACrB,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,WAAW,EAAE,UAAU,CAAC;oBAC3C,CAAC,CAAC,WAAW,CAAA;YACjB,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,GAAG,EAAE,UAAU,CAAC,CAAA;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,8BAA8B,GAAG,MAAM,GAAG,EAAE,CAAC,CAAA;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC"}
|
|
1
|
+
{"version":3,"file":"object.extensions.js","sourceRoot":"","sources":["../../src/object.extensions.js"],"names":[],"mappings":"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"}
|
|
@@ -338,6 +338,7 @@ export const SetPrototypeExtensions = new Patch(Set.prototype, {
|
|
|
338
338
|
// Object<->Function<->Global occurs. See original source in global.this.js
|
|
339
339
|
// {@see globalThis.isThenElse}
|
|
340
340
|
function isThenElse(bv, tv, ev) {
|
|
341
|
+
function isFunction(value) { typeof value === 'function'; }
|
|
341
342
|
if (arguments.length > 1) {
|
|
342
343
|
var _then = isFunction(tv) ? tv(bv) : tv;
|
|
343
344
|
if (arguments.length > 2) {
|