@nejs/basic-extensions 1.10.0 → 2.0.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/README.md +91 -60
- package/dist/@nejs/basic-extensions.bundle.1.10.0.js +8 -0
- package/dist/@nejs/basic-extensions.bundle.1.10.0.js.map +7 -0
- package/dist/cjs/index.d.ts +10 -6
- package/dist/cjs/index.js +48 -26
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/newClasses/asyncIterable.d.ts +16 -13
- package/dist/cjs/newClasses/asyncIterable.js +34 -19
- package/dist/cjs/newClasses/asyncIterable.js.map +1 -1
- package/dist/cjs/newClasses/descriptor.d.ts +31 -10
- package/dist/cjs/newClasses/descriptor.js +70 -19
- package/dist/cjs/newClasses/descriptor.js.map +1 -1
- package/dist/mjs/index.d.ts +10 -6
- package/dist/mjs/index.js +47 -26
- package/dist/mjs/index.js.map +1 -1
- package/dist/mjs/newClasses/asyncIterable.d.ts +16 -13
- package/dist/mjs/newClasses/asyncIterable.js +34 -19
- package/dist/mjs/newClasses/asyncIterable.js.map +1 -1
- package/dist/mjs/newClasses/descriptor.d.ts +31 -10
- package/dist/mjs/newClasses/descriptor.js +57 -13
- package/dist/mjs/newClasses/descriptor.js.map +1 -1
- package/docs/index.html +324 -192
- package/package.json +3 -3
- package/src/index.js +55 -27
- package/src/newClasses/asyncIterable.js +35 -20
- package/src/newClasses/descriptor.js +62 -15
- package/dist/@nejs/basic-extensions.bundle.1.9.0.js +0 -4
- package/dist/@nejs/basic-extensions.bundle.1.9.0.js.map +0 -7
package/dist/mjs/index.js
CHANGED
|
@@ -14,25 +14,24 @@ import { DeferredExtension } from './newClasses/deferred.js';
|
|
|
14
14
|
import { AsyncIteratorExtensions, AsyncIterableExtensions } from './newClasses/asyncIterable.js';
|
|
15
15
|
import { IteratorExtensions, IterableExtensions } from './newClasses/iterable.js';
|
|
16
16
|
const StaticPatches = [
|
|
17
|
-
[Object, ObjectExtensions],
|
|
18
|
-
[Function, FunctionExtensions],
|
|
19
|
-
[Reflect, ReflectExtensions],
|
|
20
|
-
[String, StringExtensions],
|
|
21
|
-
[Symbol, SymbolExtensions],
|
|
17
|
+
[Object, ObjectExtensions, Object.name],
|
|
18
|
+
[Function, FunctionExtensions, Function.name],
|
|
19
|
+
[Reflect, ReflectExtensions, 'Reflect'], // Missing a .name property
|
|
20
|
+
[String, StringExtensions, String.name],
|
|
21
|
+
[Symbol, SymbolExtensions, 'Symbol'], // Missing a .name property
|
|
22
22
|
];
|
|
23
23
|
const InstancePatches = [
|
|
24
|
-
[Object.prototype, ObjectPrototypeExtensions],
|
|
25
|
-
[Function.prototype, FunctionPrototypeExtensions],
|
|
26
|
-
[Array.prototype, ArrayPrototypeExtensions],
|
|
27
|
-
[Map.prototype, MapPrototypeExtensions],
|
|
28
|
-
[Set.prototype, SetPrototypeExtensions],
|
|
24
|
+
[Object.prototype, ObjectPrototypeExtensions, Object.name],
|
|
25
|
+
[Function.prototype, FunctionPrototypeExtensions, Function.name],
|
|
26
|
+
[Array.prototype, ArrayPrototypeExtensions, Array.name],
|
|
27
|
+
[Map.prototype, MapPrototypeExtensions, Map.name],
|
|
28
|
+
[Set.prototype, SetPrototypeExtensions, Set.name],
|
|
29
29
|
];
|
|
30
30
|
const Patches = new Map([
|
|
31
31
|
...StaticPatches,
|
|
32
32
|
...InstancePatches,
|
|
33
33
|
]);
|
|
34
34
|
const Extensions = {
|
|
35
|
-
global: GlobalFunctionsAndProps,
|
|
36
35
|
[AsyncIterableExtensions.key]: AsyncIterableExtensions,
|
|
37
36
|
[AsyncIteratorExtensions.key]: AsyncIteratorExtensions,
|
|
38
37
|
[DeferredExtension.key]: DeferredExtension,
|
|
@@ -63,6 +62,7 @@ Object.assign(Controls, {
|
|
|
63
62
|
},
|
|
64
63
|
enableExtensions() {
|
|
65
64
|
Object.values(Extensions).forEach((extension) => { extension.apply(); });
|
|
65
|
+
GlobalFunctionsAndProps.apply();
|
|
66
66
|
},
|
|
67
67
|
disableAll() {
|
|
68
68
|
Controls.disablePatches();
|
|
@@ -83,30 +83,51 @@ Object.assign(Controls, {
|
|
|
83
83
|
},
|
|
84
84
|
disableExtensions() {
|
|
85
85
|
Object.values(Extensions).forEach((extension) => { extension.revert(); });
|
|
86
|
+
GlobalFunctionsAndProps.revert();
|
|
86
87
|
},
|
|
87
88
|
});
|
|
88
89
|
export const all = (() => {
|
|
89
|
-
const
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
accumulator[key] = new Descriptor(entry.descriptor);
|
|
98
|
-
else
|
|
99
|
-
accumulator[key] = entry.computed;
|
|
100
|
-
return accumulator;
|
|
101
|
-
}, accumulator);
|
|
90
|
+
const dest = {
|
|
91
|
+
patches: {},
|
|
92
|
+
classes: {},
|
|
93
|
+
global: {},
|
|
94
|
+
};
|
|
95
|
+
const entriesReducer = (accumulator, [key, entry]) => {
|
|
96
|
+
const descriptor = new Descriptor(entry.descriptor, entry.owner);
|
|
97
|
+
descriptor.applyTo(accumulator, key, true);
|
|
102
98
|
return accumulator;
|
|
103
|
-
}
|
|
99
|
+
};
|
|
100
|
+
const staticPatchReducer = (accumulator, [_, patch, ownerName]) => {
|
|
101
|
+
if (!accumulator?.[ownerName]) {
|
|
102
|
+
accumulator[ownerName] = {};
|
|
103
|
+
}
|
|
104
|
+
[...patch].reduce(entriesReducer, accumulator[ownerName]);
|
|
105
|
+
return accumulator;
|
|
106
|
+
};
|
|
107
|
+
const instancePatchReducer = (accumulator, [_, patch, ownerName]) => {
|
|
108
|
+
if (!accumulator?.[ownerName])
|
|
109
|
+
accumulator[ownerName] = {};
|
|
110
|
+
if (!accumulator[ownerName]?.prototype)
|
|
111
|
+
accumulator[ownerName].prototype = {};
|
|
112
|
+
[...patch].reduce(entriesReducer, accumulator[ownerName].prototype);
|
|
113
|
+
return accumulator;
|
|
114
|
+
};
|
|
115
|
+
StaticPatches.reduce(staticPatchReducer, dest.patches);
|
|
116
|
+
InstancePatches.reduce(instancePatchReducer, dest.patches);
|
|
117
|
+
(Object.entries(Extensions)
|
|
118
|
+
.map(([k, v]) => [k, v, k])
|
|
119
|
+
.reduce(staticPatchReducer, dest.classes));
|
|
120
|
+
for (const [key, entry] of GlobalFunctionsAndProps) {
|
|
121
|
+
const descriptor = new Descriptor(entry.descriptor, entry.owner);
|
|
122
|
+
Object.defineProperty(dest.global, key, descriptor.toObject(true));
|
|
123
|
+
}
|
|
104
124
|
return dest;
|
|
105
125
|
})();
|
|
106
126
|
const results = {
|
|
107
127
|
...Controls,
|
|
108
128
|
Extensions,
|
|
109
129
|
Patches,
|
|
130
|
+
GlobalFunctionsAndProps,
|
|
110
131
|
StaticPatches,
|
|
111
132
|
InstancePatches,
|
|
112
133
|
Controls,
|
|
@@ -115,7 +136,7 @@ const results = {
|
|
|
115
136
|
all,
|
|
116
137
|
};
|
|
117
138
|
export default results;
|
|
118
|
-
export { Extensions, Patches, StaticPatches, InstancePatches, Controls, };
|
|
139
|
+
export { Extensions, Patches, StaticPatches, InstancePatches, Controls, GlobalFunctionsAndProps, };
|
|
119
140
|
function toFilterFn(filter = ([owner, extension]) => true) {
|
|
120
141
|
let filterFn = filter;
|
|
121
142
|
if (typeof filterFn !== 'function') {
|
package/dist/mjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAA;AACzF,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAA;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAA;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAA;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAA;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAA;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAE5D,OAAO,EACL,uBAAuB,EACvB,uBAAuB,EACxB,MAAM,+BAA+B,CAAA;AAEtC,OAAO,EACL,kBAAkB,EAClB,kBAAkB,EACnB,MAAM,0BAA0B,CAAA;AAEjC,MAAM,aAAa,GAAG;IACpB,CAAC,MAAM,EAAE,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.js"],"names":[],"mappings":"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"}
|
|
@@ -24,19 +24,21 @@ export class AsyncIterable {
|
|
|
24
24
|
static isAsyncIterable(value: any): boolean;
|
|
25
25
|
/**
|
|
26
26
|
* Constructs an instance of AsyncIterable. Similar to Iterable, it can be
|
|
27
|
-
* initialized with either an iterable object
|
|
28
|
-
* elements can be promises, direct values, or a
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
*
|
|
27
|
+
* initialized with either an iterable object, an async generator function,
|
|
28
|
+
* or individual elements. The elements can be promises, direct values, or a
|
|
29
|
+
* mix of both. If the first argument is an iterable or an async generator
|
|
30
|
+
* function, the instance is initialized with the elements from the iterable
|
|
31
|
+
* or the generated elements from the async generator function, followed by
|
|
32
|
+
* any additional arguments. If the first argument is not an iterable or an
|
|
33
|
+
* async generator function, all arguments are treated as individual elements.
|
|
33
34
|
*
|
|
34
|
-
* @param {Iterable|Promise|*} elementsOrFirstElement -
|
|
35
|
-
* a Promise, or the first
|
|
35
|
+
* @param {Iterable|AsyncGeneratorFunction|Promise|*} elementsOrFirstElement -
|
|
36
|
+
* An iterable object, an async generator function, a Promise, or the first
|
|
37
|
+
* element.
|
|
36
38
|
* @param {...Promise|*} moreElements - Additional elements if the first
|
|
37
|
-
* argument is not an iterable.
|
|
39
|
+
* argument is not an iterable or an async generator function.
|
|
38
40
|
*/
|
|
39
|
-
constructor(elementsOrFirstElement: Iterable<any> | Promise<any> | any, ...moreElements: (Promise<any> | any)[]);
|
|
41
|
+
constructor(elementsOrFirstElement: Iterable<any> | AsyncGeneratorFunction | Promise<any> | any, ...moreElements: (Promise<any> | any)[]);
|
|
40
42
|
/**
|
|
41
43
|
* Implements the async iterable protocol. When an instance of AsyncIterable
|
|
42
44
|
* is used in a `for await...of` loop, this async generator function is
|
|
@@ -67,10 +69,11 @@ export class AsyncIterator {
|
|
|
67
69
|
/**
|
|
68
70
|
* Creates a new `AsyncIterator` object instance.
|
|
69
71
|
*
|
|
70
|
-
* @param {object} asyncIterable any object that has a
|
|
71
|
-
* `[Symbol.asyncIterable]` property assigned to a generator function
|
|
72
|
+
* @param {object|AsyncGeneratorFunction} asyncIterable any object that has a
|
|
73
|
+
* `[Symbol.asyncIterable]` property assigned to a generator function or an
|
|
74
|
+
* async generator function itself.
|
|
72
75
|
*/
|
|
73
|
-
constructor(asyncIterable: object);
|
|
76
|
+
constructor(asyncIterable: object | AsyncGeneratorFunction);
|
|
74
77
|
/**
|
|
75
78
|
* Returns a new `Array` derived from the iterable this object
|
|
76
79
|
* wraps.
|
|
@@ -15,23 +15,30 @@ export class AsyncIterable {
|
|
|
15
15
|
#elements = [];
|
|
16
16
|
/**
|
|
17
17
|
* Constructs an instance of AsyncIterable. Similar to Iterable, it can be
|
|
18
|
-
* initialized with either an iterable object
|
|
19
|
-
* elements can be promises, direct values, or a
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
18
|
+
* initialized with either an iterable object, an async generator function,
|
|
19
|
+
* or individual elements. The elements can be promises, direct values, or a
|
|
20
|
+
* mix of both. If the first argument is an iterable or an async generator
|
|
21
|
+
* function, the instance is initialized with the elements from the iterable
|
|
22
|
+
* or the generated elements from the async generator function, followed by
|
|
23
|
+
* any additional arguments. If the first argument is not an iterable or an
|
|
24
|
+
* async generator function, all arguments are treated as individual elements.
|
|
24
25
|
*
|
|
25
|
-
* @param {Iterable|Promise|*} elementsOrFirstElement -
|
|
26
|
-
* a Promise, or the first
|
|
26
|
+
* @param {Iterable|AsyncGeneratorFunction|Promise|*} elementsOrFirstElement -
|
|
27
|
+
* An iterable object, an async generator function, a Promise, or the first
|
|
28
|
+
* element.
|
|
27
29
|
* @param {...Promise|*} moreElements - Additional elements if the first
|
|
28
|
-
* argument is not an iterable.
|
|
30
|
+
* argument is not an iterable or an async generator function.
|
|
29
31
|
*/
|
|
30
32
|
constructor(elementsOrFirstElement, ...moreElements) {
|
|
31
33
|
if (elementsOrFirstElement != null &&
|
|
32
|
-
typeof elementsOrFirstElement[Symbol.iterator] === 'function'
|
|
34
|
+
(typeof elementsOrFirstElement[Symbol.iterator] === 'function' ||
|
|
35
|
+
typeof elementsOrFirstElement[Symbol.asyncIterator] === 'function')) {
|
|
33
36
|
this.#elements = [...elementsOrFirstElement, ...moreElements];
|
|
34
37
|
}
|
|
38
|
+
else if (typeof elementsOrFirstElement === 'function' &&
|
|
39
|
+
elementsOrFirstElement.constructor.name === 'AsyncGeneratorFunction') {
|
|
40
|
+
this.#elements = elementsOrFirstElement();
|
|
41
|
+
}
|
|
35
42
|
else {
|
|
36
43
|
this.#elements = [elementsOrFirstElement, ...moreElements];
|
|
37
44
|
}
|
|
@@ -47,10 +54,10 @@ export class AsyncIterable {
|
|
|
47
54
|
* a Promise.
|
|
48
55
|
*/
|
|
49
56
|
async *[Symbol.asyncIterator]() {
|
|
50
|
-
for (const element of this.#elements) {
|
|
51
|
-
//
|
|
52
|
-
//
|
|
53
|
-
yield
|
|
57
|
+
for await (const element of this.#elements) {
|
|
58
|
+
// No need to wrap as a promise here since `for await...of` can handle
|
|
59
|
+
// both Promises and non-Promise values.
|
|
60
|
+
yield element;
|
|
54
61
|
}
|
|
55
62
|
}
|
|
56
63
|
/**
|
|
@@ -91,15 +98,23 @@ export class AsyncIterator {
|
|
|
91
98
|
/**
|
|
92
99
|
* Creates a new `AsyncIterator` object instance.
|
|
93
100
|
*
|
|
94
|
-
* @param {object} asyncIterable any object that has a
|
|
95
|
-
* `[Symbol.asyncIterable]` property assigned to a generator function
|
|
101
|
+
* @param {object|AsyncGeneratorFunction} asyncIterable any object that has a
|
|
102
|
+
* `[Symbol.asyncIterable]` property assigned to a generator function or an
|
|
103
|
+
* async generator function itself.
|
|
96
104
|
*/
|
|
97
105
|
constructor(asyncIterable) {
|
|
98
|
-
if (
|
|
106
|
+
if (typeof asyncIterable === 'function' &&
|
|
107
|
+
asyncIterable.constructor.name === 'AsyncGeneratorFunction') {
|
|
108
|
+
this.#asyncIterable = asyncIterable();
|
|
109
|
+
}
|
|
110
|
+
else if (!asyncIterable ||
|
|
111
|
+
!Reflect.has(asyncIterable, Symbol.asyncIterator)) {
|
|
99
112
|
throw new TypeError('Value used to instantiate AsyncIterator is not an async iterable');
|
|
100
113
|
}
|
|
101
|
-
|
|
102
|
-
|
|
114
|
+
else {
|
|
115
|
+
this.#asyncIterable = asyncIterable;
|
|
116
|
+
}
|
|
117
|
+
this.#asyncIterator = this.#asyncIterable[Symbol.asyncIterator]();
|
|
103
118
|
}
|
|
104
119
|
/**
|
|
105
120
|
* Returns a new `Array` derived from the iterable this object
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"asyncIterable.js","sourceRoot":"","sources":["../../../src/newClasses/asyncIterable.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C;;;;;;;GAOG;AACH,MAAM,OAAO,aAAa;IACxB;;;OAGG;IACH,SAAS,GAAG,EAAE,CAAC;IAEf
|
|
1
|
+
{"version":3,"file":"asyncIterable.js","sourceRoot":"","sources":["../../../src/newClasses/asyncIterable.js"],"names":[],"mappings":"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"}
|
|
@@ -204,15 +204,22 @@ export class Descriptor {
|
|
|
204
204
|
*/
|
|
205
205
|
static get DATA_KEYS(): string[];
|
|
206
206
|
/**
|
|
207
|
-
*
|
|
208
|
-
*
|
|
209
|
-
*
|
|
210
|
-
*
|
|
211
|
-
*
|
|
212
|
-
*
|
|
213
|
-
*
|
|
214
|
-
|
|
215
|
-
|
|
207
|
+
* Constructs a Descriptor instance which wraps and manages an object
|
|
208
|
+
* property descriptor. The constructor can handle an existing descriptor
|
|
209
|
+
* object or create a new one based on an object and a property key.
|
|
210
|
+
*
|
|
211
|
+
* @param {object|Descriptor} object - The target object or an existing
|
|
212
|
+
* Descriptor instance. If it's an object, it is used in conjunction with
|
|
213
|
+
* `key` to create a descriptor. If it's a Descriptor instance, it is used
|
|
214
|
+
* directly as the descriptor.
|
|
215
|
+
* @param {string|symbol} [key] - The property key for which the descriptor
|
|
216
|
+
* is to be created. This parameter is ignored if `object` is a Descriptor
|
|
217
|
+
* instance. If `key` is an object and `object` is a valid descriptor, `key`
|
|
218
|
+
* is treated as the associated object.
|
|
219
|
+
* @throws {Error} Throws an error if the constructed descriptor is not
|
|
220
|
+
* valid.
|
|
221
|
+
*/
|
|
222
|
+
constructor(object: object | Descriptor, key?: string | symbol | undefined);
|
|
216
223
|
/**
|
|
217
224
|
* Detects whether or not this instance is an accessor object descriptor
|
|
218
225
|
*
|
|
@@ -379,7 +386,21 @@ export class Descriptor {
|
|
|
379
386
|
* @param {string|symbol} forKey the string or symbol for which this
|
|
380
387
|
* descriptor will abe applied
|
|
381
388
|
*/
|
|
382
|
-
applyTo(object: object, forKey: string | symbol): object;
|
|
389
|
+
applyTo(object: object, forKey: string | symbol, bindAccessors?: boolean): object;
|
|
390
|
+
/**
|
|
391
|
+
* Converts this Descriptor class instance into a basic object descriptor
|
|
392
|
+
* that is accepted by all the standard JavaScript runtime methods that
|
|
393
|
+
* deal with object descriptors.
|
|
394
|
+
*
|
|
395
|
+
* @param {boolean|object} bindAccessors if `true`, a non-fatal attempt to
|
|
396
|
+
* bind accessor getter and setter methods is made before returning the
|
|
397
|
+
* object. If `bindAccessors` is truthy and is also an object, this is the
|
|
398
|
+
* object the accessors will be bound to. If the value is falsy or if the
|
|
399
|
+
* descriptor instance represents a data descriptor, nothing happens.
|
|
400
|
+
* @returns {object} the object instance's basic object representation as
|
|
401
|
+
* a descriptor.
|
|
402
|
+
*/
|
|
403
|
+
toObject(bindAccessors?: boolean | object): object;
|
|
383
404
|
/**
|
|
384
405
|
* Converts this descriptor object into a base representation
|
|
385
406
|
*
|
|
@@ -20,28 +20,39 @@ export class Descriptor {
|
|
|
20
20
|
*/
|
|
21
21
|
#object = undefined;
|
|
22
22
|
/**
|
|
23
|
-
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
*
|
|
23
|
+
* Constructs a Descriptor instance which wraps and manages an object
|
|
24
|
+
* property descriptor. The constructor can handle an existing descriptor
|
|
25
|
+
* object or create a new one based on an object and a property key.
|
|
26
|
+
*
|
|
27
|
+
* @param {object|Descriptor} object - The target object or an existing
|
|
28
|
+
* Descriptor instance. If it's an object, it is used in conjunction with
|
|
29
|
+
* `key` to create a descriptor. If it's a Descriptor instance, it is used
|
|
30
|
+
* directly as the descriptor.
|
|
31
|
+
* @param {string|symbol} [key] - The property key for which the descriptor
|
|
32
|
+
* is to be created. This parameter is ignored if `object` is a Descriptor
|
|
33
|
+
* instance. If `key` is an object and `object` is a valid descriptor, `key`
|
|
34
|
+
* is treated as the associated object.
|
|
35
|
+
* @throws {Error} Throws an error if the constructed descriptor is not
|
|
36
|
+
* valid.
|
|
30
37
|
*/
|
|
31
38
|
constructor(object, key) {
|
|
32
39
|
if ((object ?? key) === undefined) {
|
|
33
40
|
this.#desc = Descriptor.enigmatic;
|
|
34
41
|
}
|
|
35
|
-
if (Descriptor.isDescriptor(object)) {
|
|
42
|
+
else if (Descriptor.isDescriptor(object)) {
|
|
36
43
|
this.#desc = object;
|
|
37
|
-
this.#object = undefined;
|
|
44
|
+
this.#object = isObject(key) ? key : undefined;
|
|
38
45
|
}
|
|
39
46
|
else if (isObject(object) && isValidKey(key)) {
|
|
40
47
|
this.#desc = Object.getOwnPropertyDescriptor(object, key);
|
|
41
48
|
this.#object = object;
|
|
42
49
|
}
|
|
43
50
|
if (!this.isDescriptor) {
|
|
44
|
-
console.error(
|
|
51
|
+
console.error(`
|
|
52
|
+
Descriptor(object,key) FAILED:
|
|
53
|
+
object: ${object === globalThis ? '[GLOBAL]' : (typeof key === 'object' ? JSON.stringify(object) : String(object))}
|
|
54
|
+
key: ${key === globalThis ? '[GLOBAL]' : (typeof key === 'object' ? JSON.stringify(key) : String(key))}
|
|
55
|
+
descriptor: `, this.#desc);
|
|
45
56
|
throw new Error(`Not a valid descriptor:`, this.#desc);
|
|
46
57
|
}
|
|
47
58
|
}
|
|
@@ -283,11 +294,44 @@ export class Descriptor {
|
|
|
283
294
|
* @param {string|symbol} forKey the string or symbol for which this
|
|
284
295
|
* descriptor will abe applied
|
|
285
296
|
*/
|
|
286
|
-
applyTo(object, forKey) {
|
|
297
|
+
applyTo(object, forKey, bindAccessors = false) {
|
|
287
298
|
if (!isObject(object) || !isValidKey(forKey)) {
|
|
288
299
|
throw new Error(`Cannot apply descriptor to non-object or invalid key`);
|
|
289
300
|
}
|
|
290
|
-
return Object.defineProperty(object, forKey, this
|
|
301
|
+
return Object.defineProperty(object, forKey, this.toObject(bindAccessors));
|
|
302
|
+
}
|
|
303
|
+
/**
|
|
304
|
+
* Converts this Descriptor class instance into a basic object descriptor
|
|
305
|
+
* that is accepted by all the standard JavaScript runtime methods that
|
|
306
|
+
* deal with object descriptors.
|
|
307
|
+
*
|
|
308
|
+
* @param {boolean|object} bindAccessors if `true`, a non-fatal attempt to
|
|
309
|
+
* bind accessor getter and setter methods is made before returning the
|
|
310
|
+
* object. If `bindAccessors` is truthy and is also an object, this is the
|
|
311
|
+
* object the accessors will be bound to. If the value is falsy or if the
|
|
312
|
+
* descriptor instance represents a data descriptor, nothing happens.
|
|
313
|
+
* @returns {object} the object instance's basic object representation as
|
|
314
|
+
* a descriptor.
|
|
315
|
+
*/
|
|
316
|
+
toObject(bindAccessors = false) {
|
|
317
|
+
let descriptor = { ...this.#desc };
|
|
318
|
+
if (bindAccessors && this.isAccessor) {
|
|
319
|
+
if (this.hasObject) {
|
|
320
|
+
descriptor = {
|
|
321
|
+
...descriptor,
|
|
322
|
+
get: this.boundGet,
|
|
323
|
+
set: this.boundSet
|
|
324
|
+
};
|
|
325
|
+
}
|
|
326
|
+
else if (isObject(bindAccessors)) {
|
|
327
|
+
descriptor = {
|
|
328
|
+
...descriptor,
|
|
329
|
+
get: this.get?.bind(bindAccessors),
|
|
330
|
+
set: this.set?.bind(bindAccessors)
|
|
331
|
+
};
|
|
332
|
+
}
|
|
333
|
+
}
|
|
334
|
+
return descriptor;
|
|
291
335
|
}
|
|
292
336
|
/**
|
|
293
337
|
* Converts this descriptor object into a base representation
|
|
@@ -315,7 +359,7 @@ export class Descriptor {
|
|
|
315
359
|
case 'number':
|
|
316
360
|
return NaN;
|
|
317
361
|
default:
|
|
318
|
-
return this
|
|
362
|
+
return this.toObject();
|
|
319
363
|
}
|
|
320
364
|
}
|
|
321
365
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"descriptor.js","sourceRoot":"","sources":["../../../src/newClasses/descriptor.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAA;AACzD,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAA;AAE7C,MAAM,OAAO,UAAU;IACrB;;;;;OAKG;IACH,KAAK,GAAG,SAAS,CAAA;IAEjB;;;;;;OAMG;IACH,OAAO,GAAG,SAAS,CAAA;IAEnB
|
|
1
|
+
{"version":3,"file":"descriptor.js","sourceRoot":"","sources":["../../../src/newClasses/descriptor.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAA;AACzD,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,CAAC,OAAO,CAAA;AAE7C,MAAM,OAAO,UAAU;IACrB;;;;;OAKG;IACH,KAAK,GAAG,SAAS,CAAA;IAEjB;;;;;;OAMG;IACH,OAAO,GAAG,SAAS,CAAA;IAEnB;;;;;;;;;;;;;;;OAeG;IACH,YAAY,MAAM,EAAE,GAAG;QACrB,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,SAAS,CAAA;QACnC,CAAC;aACI,IAAI,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,IAAI,CAAC,KAAK,GAAG,MAAM,CAAA;YACnB,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAA;QAChD,CAAC;aACI,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;YACzD,IAAI,CAAC,OAAO,GAAG,MAAM,CAAA;QACvB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC;;uBAEG,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;uBACxG,GAAG,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;sBAChG,EAAE,IAAI,CAAC,KAAK,CAC3B,CAAA;YACD,MAAM,IAAI,KAAK,CAAC,yBAAyB,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;QACxD,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,IAAI,UAAU;QACZ,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED;;;;;OAKG;IACH,IAAI,MAAM;QACR,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACtC,CAAC;IAED;;;;OAIG;IACH,IAAI,YAAY;QACd,OAAO,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IAC5C,CAAC;IAED;;;;;;OAMG;IACH,IAAI,YAAY;QACd,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAA;IACnC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,YAAY,CAAC,KAAK;QACpB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,KAAK,CAAA;IAC3C,CAAC;IAED;;;;;;OAMG;IACH,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,KAAK,EAAE,UAAU,CAAA;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,IAAI,UAAU,CAAC,KAAK;QAClB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,UAAU,GAAG,KAAK,CAAA;IACvC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAA;IAC7B,CAAC;IAED;;;;;;OAMG;IACH,IAAI,QAAQ,CAAC,KAAK;QAChB,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAA;IACrC,CAAC;IAED;;;;;OAKG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,KAAK,EAAE,KAAK,CAAA;IAC1B,CAAC;IAED;;;;;;OAMG;IACH,IAAI,KAAK,CAAC,KAAK;QACb,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,GAAG,KAAK,CAAA;IAClC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,KAAK,EAAE,GAAG,CAAA;IACxB,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3E,CAAC;IAED;;;;;OAKG;IACH,IAAI,GAAG,CAAC,KAAK;QACX,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,KAAK,CAAA;IAChC,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,GAAG;QACL,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CAAA;IAC/B,CAAC;IAED;;;;;;;OAOG;IACH,IAAI,QAAQ;QACV,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3E,CAAC;IAED;;;;;OAKG;IACH,IAAI,GAAG,CAAC,KAAK;QACX,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,GAAG,KAAK,CAAA;IAChC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,SAAS,KAAK,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA,CAAC,CAAC;IAEjD;;;;;;;OAOG;IACH,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,OAAO,CAAA,CAAC,CAAC;IAEpC;;;;;;OAMG;IACH,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC;IAElD;;;;;;;;;;;;;;;;;OAiBG;IACH,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;QAC3E,OAAO,aAAa,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,EAAC,GAAG,OAAO,EAAE,KAAK,EAAC,CAAC,EAAE,CAAA;IACxE,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,GAAG,KAAK;QAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;YACvE,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,CAAC,IAAI;YACV,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC9D,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC,CAC/C,CAAA;IACH,CAAC;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,KAAK;QAC3C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAA;QACzE,CAAC;QAED,OAAO,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAA;IAC5E,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,QAAQ,CAAC,aAAa,GAAG,KAAK;QAC5B,IAAI,UAAU,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,CAAA;QAElC,IAAI,aAAa,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnB,UAAU,GAAG;oBACX,GAAG,UAAU;oBACb,GAAG,EAAE,IAAI,CAAC,QAAQ;oBAClB,GAAG,EAAE,IAAI,CAAC,QAAQ;iBACnB,CAAA;YACH,CAAC;iBACI,IAAI,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjC,UAAU,GAAG;oBACX,GAAG,UAAU;oBACb,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;oBAClC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC;iBACnC,CAAA;YACH,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAA;IACnB,CAAC;IAED;;;;;;OAMG;IACH,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI;QACvB,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ;gBACX,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;oBAChE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;oBAChE,MAAM,SAAS,GAAG,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;oBAEpD,OAAO,aAAa,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,CAAA;gBAC1D,CAAC;qBACI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACrB,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;oBACjE,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAA;oBACvE,MAAM,SAAS,GAAG,SAAS,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAA;oBAEpD,OAAO,SAAS,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,CAAA;gBACtD,CAAC;gBACD,MAAK;YAEP,KAAK,QAAQ;gBACX,OAAO,GAAG,CAAA;YAEZ;gBACE,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAA;QAC1B,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;QACtB,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;IAC9B,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ;QAC7B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QACzD,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;YACvB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,UAAU,CAAC,KAAK,CAAA;IACzB,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE,QAAQ;QACjC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;YACxD,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QACzD,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;IACtC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,EAAE,YAAY,GAAG,KAAK;QAClD,OAAO;YACL,UAAU;YACV,YAAY;SACb,CAAA;IACH,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACH,MAAM,CAAC,QAAQ,CACb,MAAM,EACN,MAAM,EACN,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE;QAEhD,OAAO;YACL,GAAG,EAAE,MAAM;YACX,GAAG,EAAE,MAAM;YACX,UAAU;YACV,YAAY;SACb,CAAA;IACH,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,IAAI,CACT,KAAK,EACL,QAAQ,GAAG,IAAI,EACf,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,UAAU,CAAC,IAAI,EAAE;QAEhD,OAAO;YACL,KAAK;YACL,UAAU;YACV,QAAQ;YACR,YAAY;SACb,CAAA;IACH,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM;QACxB,MAAM,SAAS,GAAG;YAChB,GAAG,UAAU,CAAC,WAAW;YACzB,GAAG,UAAU,CAAC,aAAa;YAC3B,GAAG,UAAU,CAAC,SAAS;SACxB,CAAA;QAED,OAAO,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;IACnC,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,QAAQ;QACnC,MAAM,eAAe,GAAG,CACtB,CAAC,CAAC,OAAO,aAAa,KAAK,QAAQ,CAAC,IAAI,aAAa,YAAY,MAAM,CAAC;YACxE,QAAQ,YAAY,MAAM,CAC3B,CAAA;QAED,MAAM,UAAU,GAAG,CAAC,eAAe;YACjC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC;YACzC,CAAC,CAAC,aAAa,CAChB,CAAA;QAED,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;QAC1B,IAAI,SAAS,GAAG,KAAK,CAAA;QAErB,IAAI,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,CAAC;YACnC,SAAS,GAAG,IAAI,CAAA;QAClB,CAAC;QAED,OAAO,SAAS,CAAA;IAClB,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,QAAQ;QACvC,MAAM,eAAe,GAAG,CACtB,CAAC,aAAa,IAAI,QAAQ,CAAC;YAC3B,CAAC,CAAC,OAAO,aAAa,KAAK,QAAQ,CAAC,IAAI,aAAa,YAAY,MAAM,CAAC;YACxE,CAAC,QAAQ,YAAY,MAAM,IAAI,CAAC,OAAO,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAC/D,CAAA;QAED,MAAM,UAAU,GAAG,CAAC,eAAe;YACjC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,aAAa,EAAE,QAAQ,CAAC;YACzC,CAAC,CAAC,aAAa,CAAC,CAAA;QAElB,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAA;QAC9B,IAAI,aAAa,GAAG,KAAK,CAAA;QAEzB,IAAI,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE,CAAC;YACvC,aAAa,GAAG,IAAI,CAAA;QACtB,CAAC;QAED,OAAO,aAAa,CAAA;IACtB,CAAC;IAED;;;;;;OAMG;IACH,MAAM,KAAK,QAAQ;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC9B,CAAC;IAED;;;;;;OAMG;IACH,MAAM,KAAK,SAAS;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED;;;;;;OAMG;IACH,MAAM,KAAK,SAAS;QAClB,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IAChC,CAAC;IAED;;;;;OAKG;IACH,MAAM,KAAK,WAAW;QACpB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC/B,CAAC;IAED;;;;OAIG;IACH,MAAM,KAAK,WAAW;QACpB,OAAO,CAAC,cAAc,EAAE,YAAY,CAAC,CAAA;IACvC,CAAC;IAED;;;;OAIG;IACH,MAAM,KAAK,aAAa;QACtB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;IACvB,CAAC;IAED;;;;;OAKG;IACH,MAAM,KAAK,SAAS;QAClB,OAAO,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAC9B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,IAAI,SAAS,CAAC,UAAU,CAAC,CAAA"}
|