@legendapp/state 0.21.5 → 0.21.7
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/CHANGELOG.md +34 -0
- package/helpers/fetch.d.ts +6 -0
- package/helpers/fetch.js +22 -0
- package/helpers/fetch.js.map +1 -0
- package/helpers/fetch.mjs +18 -0
- package/helpers/fetch.mjs.map +1 -0
- package/helpers/time.d.ts +3 -0
- package/helpers/time.js +32 -0
- package/helpers/time.js.map +1 -0
- package/helpers/time.mjs +27 -0
- package/helpers/time.mjs.map +1 -0
- package/index.d.ts +1 -1
- package/index.js +56 -31
- package/index.js.map +1 -1
- package/index.mjs +56 -32
- package/index.mjs.map +1 -1
- package/package.json +11 -1
- package/react-hooks/useFetch.d.ts +6 -0
- package/react-hooks/useFetch.js +13 -0
- package/react-hooks/useFetch.js.map +1 -0
- package/react-hooks/useFetch.mjs +9 -0
- package/react-hooks/useFetch.mjs.map +1 -0
- package/react-hooks/useHash.d.ts +2 -0
- package/react-hooks/useHash.js +24 -0
- package/react-hooks/useHash.js.map +1 -0
- package/react-hooks/useHash.mjs +20 -0
- package/react-hooks/useHash.mjs.map +1 -0
- package/react-hooks/useHover.d.ts +3 -0
- package/react-hooks/useHover.js +41 -0
- package/react-hooks/useHover.js.map +1 -0
- package/react-hooks/useHover.mjs +37 -0
- package/react-hooks/useHover.mjs.map +1 -0
- package/react-hooks/useIsMounted.d.ts +2 -0
- package/react-hooks/useIsMounted.js +20 -0
- package/react-hooks/useIsMounted.js.map +1 -0
- package/react-hooks/useIsMounted.mjs +16 -0
- package/react-hooks/useIsMounted.mjs.map +1 -0
- package/react-hooks/useMeasure.d.ts +6 -0
- package/react-hooks/useMeasure.js +41 -0
- package/react-hooks/useMeasure.js.map +1 -0
- package/react-hooks/useMeasure.mjs +37 -0
- package/react-hooks/useMeasure.mjs.map +1 -0
- package/react.js +17 -3
- package/react.js.map +1 -1
- package/react.mjs +18 -4
- package/react.mjs.map +1 -1
- package/src/globals.d.ts +4 -0
- package/src/helpers/fetch.d.ts +6 -0
- package/src/helpers/time.d.ts +3 -0
- package/src/helpers.d.ts +2 -1
- package/src/observableInterfaces.d.ts +7 -1
- package/src/react/flow.d.ts +7 -2
- package/src/react-hooks/useFetch.d.ts +6 -0
- package/src/react-hooks/useHash.d.ts +2 -0
- package/src/react-hooks/useHover.d.ts +3 -0
- package/src/react-hooks/useIsMounted.d.ts +2 -0
- package/src/react-hooks/useMeasure.d.ts +6 -0
package/index.mjs
CHANGED
|
@@ -8,7 +8,7 @@ function isString(obj) {
|
|
|
8
8
|
}
|
|
9
9
|
/** @internal */
|
|
10
10
|
function isObject(obj) {
|
|
11
|
-
return obj && typeof obj === 'object' && !isArray(obj);
|
|
11
|
+
return !!obj && typeof obj === 'object' && !isArray(obj);
|
|
12
12
|
}
|
|
13
13
|
/** @internal */
|
|
14
14
|
function isFunction(obj) {
|
|
@@ -16,8 +16,8 @@ function isFunction(obj) {
|
|
|
16
16
|
}
|
|
17
17
|
/** @internal */
|
|
18
18
|
function isPrimitive(arg) {
|
|
19
|
-
|
|
20
|
-
return arg !== undefined &&
|
|
19
|
+
const type = typeof arg;
|
|
20
|
+
return arg !== undefined && type !== 'object' && type !== 'function';
|
|
21
21
|
}
|
|
22
22
|
/** @internal */
|
|
23
23
|
function isObjectEmpty(obj) {
|
|
@@ -25,23 +25,27 @@ function isObjectEmpty(obj) {
|
|
|
25
25
|
}
|
|
26
26
|
/** @internal */
|
|
27
27
|
function isBoolean(obj) {
|
|
28
|
-
return
|
|
28
|
+
return typeof obj === 'boolean';
|
|
29
29
|
}
|
|
30
30
|
/** @internal */
|
|
31
31
|
function isPromise(obj) {
|
|
32
|
-
return
|
|
32
|
+
return obj instanceof Promise;
|
|
33
33
|
}
|
|
34
34
|
function isEmpty(obj) {
|
|
35
35
|
return obj && Object.keys(obj).length === 0;
|
|
36
36
|
}
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
const setPrimitives = new Set([
|
|
38
|
+
'boolean',
|
|
39
|
+
'string',
|
|
40
|
+
'number',
|
|
41
41
|
]);
|
|
42
42
|
/** @internal */
|
|
43
43
|
function isActualPrimitive(arg) {
|
|
44
|
-
return
|
|
44
|
+
return setPrimitives.has(typeof arg);
|
|
45
|
+
}
|
|
46
|
+
/** @internal */
|
|
47
|
+
function isNodeValueWithParent(node) {
|
|
48
|
+
return !!node.parent;
|
|
45
49
|
}
|
|
46
50
|
|
|
47
51
|
let trackCount = 0;
|
|
@@ -92,6 +96,7 @@ const symbolIsEvent = Symbol('isEvent');
|
|
|
92
96
|
const symbolGetNode = Symbol('getNode');
|
|
93
97
|
const symbolUndef = Symbol('undef');
|
|
94
98
|
const symbolDelete = Symbol('delete');
|
|
99
|
+
const symbolOpaque = Symbol('opaque');
|
|
95
100
|
const extraPrimitiveActivators = new Map([
|
|
96
101
|
['$$typeof', true],
|
|
97
102
|
[Symbol.toPrimitive, true],
|
|
@@ -114,7 +119,7 @@ function peek(node) {
|
|
|
114
119
|
function getNodeValue(node) {
|
|
115
120
|
const arr = [];
|
|
116
121
|
let n = node;
|
|
117
|
-
while ((n
|
|
122
|
+
while (isNodeValueWithParent(n)) {
|
|
118
123
|
arr.push(n.key);
|
|
119
124
|
n = n.parent;
|
|
120
125
|
}
|
|
@@ -155,7 +160,7 @@ function getChildNode(node, key) {
|
|
|
155
160
|
function ensureNodeValue(node) {
|
|
156
161
|
let value = getNodeValue(node);
|
|
157
162
|
if (!value) {
|
|
158
|
-
if (node
|
|
163
|
+
if (isNodeValueWithParent(node)) {
|
|
159
164
|
const parent = ensureNodeValue(node.parent);
|
|
160
165
|
value = parent[node.key] = {};
|
|
161
166
|
}
|
|
@@ -170,6 +175,9 @@ if (process.env.NODE_ENV === 'development') {
|
|
|
170
175
|
}
|
|
171
176
|
function shouldTreatAsOpaque(value) {
|
|
172
177
|
if (isObject(value)) {
|
|
178
|
+
// It's been manually marked as opaque
|
|
179
|
+
if (value[symbolOpaque])
|
|
180
|
+
return true;
|
|
173
181
|
// It's a DOM element
|
|
174
182
|
if (typeof value.nodeType === 'number' && typeof value.nodeName === 'string') {
|
|
175
183
|
if (process.env.NODE_ENV === 'development' && !hasLogged.dom) {
|
|
@@ -188,6 +196,17 @@ function shouldTreatAsOpaque(value) {
|
|
|
188
196
|
}
|
|
189
197
|
}
|
|
190
198
|
}
|
|
199
|
+
function findIDKey(obj) {
|
|
200
|
+
return isObject(obj)
|
|
201
|
+
? 'id' in obj
|
|
202
|
+
? 'id'
|
|
203
|
+
: '_id' in obj
|
|
204
|
+
? '_id'
|
|
205
|
+
: '__id' in obj
|
|
206
|
+
? '__id'
|
|
207
|
+
: undefined
|
|
208
|
+
: undefined;
|
|
209
|
+
}
|
|
191
210
|
|
|
192
211
|
function isObservable(obs) {
|
|
193
212
|
return obs && !!obs[symbolIsObservable];
|
|
@@ -206,6 +225,10 @@ function getObservableIndex(obs) {
|
|
|
206
225
|
const node = getNode(obs);
|
|
207
226
|
return +(node === null || node === void 0 ? void 0 : node.key);
|
|
208
227
|
}
|
|
228
|
+
function opaqueObject(value) {
|
|
229
|
+
value[symbolOpaque] = true;
|
|
230
|
+
return value;
|
|
231
|
+
}
|
|
209
232
|
function lockObservable(obs, value) {
|
|
210
233
|
var _a;
|
|
211
234
|
const root = (_a = getNode(obs)) === null || _a === void 0 ? void 0 : _a.root;
|
|
@@ -486,16 +509,17 @@ const objectFns = new Map([
|
|
|
486
509
|
['toggle', toggle],
|
|
487
510
|
]);
|
|
488
511
|
function collectionSetter(node, target, prop, ...args) {
|
|
512
|
+
var _a;
|
|
489
513
|
const prevValue = (isArray(target) && target.slice()) || target;
|
|
490
514
|
const ret = target[prop].apply(target, args);
|
|
491
515
|
if (node) {
|
|
492
|
-
const
|
|
493
|
-
const key =
|
|
494
|
-
const parentValue =
|
|
516
|
+
const hasParent = isNodeValueWithParent(node);
|
|
517
|
+
const key = hasParent ? node.key : '_';
|
|
518
|
+
const parentValue = hasParent ? getNodeValue(node.parent) : node.root;
|
|
495
519
|
// Set the object to the previous value first
|
|
496
520
|
parentValue[key] = prevValue;
|
|
497
521
|
// Then set with the new value so it notifies with the correct prevValue
|
|
498
|
-
setKey(parent
|
|
522
|
+
setKey((_a = node.parent) !== null && _a !== void 0 ? _a : node, hasParent ? key : symbolUndef, target);
|
|
499
523
|
}
|
|
500
524
|
// Return the original value
|
|
501
525
|
return ret;
|
|
@@ -518,11 +542,10 @@ function updateNodes(parent, obj, prevValue) {
|
|
|
518
542
|
let idField;
|
|
519
543
|
if (isArr && isArray(prevValue)) {
|
|
520
544
|
// Construct a map of previous indices for computing move
|
|
521
|
-
if (
|
|
522
|
-
const
|
|
523
|
-
if (
|
|
524
|
-
idField =
|
|
525
|
-
p.id !== undefined ? 'id' : p._id !== undefined ? '_id' : p.__id !== undefined ? '__id' : undefined;
|
|
545
|
+
if (prevValue.length > 0) {
|
|
546
|
+
const firstPrevValue = prevValue[0];
|
|
547
|
+
if (firstPrevValue) {
|
|
548
|
+
idField = findIDKey(firstPrevValue);
|
|
526
549
|
if (idField) {
|
|
527
550
|
prevChildrenById = new Map();
|
|
528
551
|
moved = [];
|
|
@@ -584,7 +607,7 @@ function updateNodes(parent, obj, prevValue) {
|
|
|
584
607
|
// it's in a new position.
|
|
585
608
|
if (isArrDiff) {
|
|
586
609
|
child = prevChild;
|
|
587
|
-
if (!child)
|
|
610
|
+
if (!child || !moved)
|
|
588
611
|
debugger;
|
|
589
612
|
parent.children.delete(child.key);
|
|
590
613
|
child.key = key;
|
|
@@ -629,6 +652,7 @@ function updateNodes(parent, obj, prevValue) {
|
|
|
629
652
|
// If value got set to undefined, it has a diff
|
|
630
653
|
return true;
|
|
631
654
|
}
|
|
655
|
+
return false;
|
|
632
656
|
}
|
|
633
657
|
function getProxy(node, p) {
|
|
634
658
|
// Get the child node if p prop
|
|
@@ -673,6 +697,9 @@ const proxyHandler = {
|
|
|
673
697
|
}
|
|
674
698
|
}
|
|
675
699
|
const vProp = value === null || value === void 0 ? void 0 : value[p];
|
|
700
|
+
if (shouldTreatAsOpaque(value)) {
|
|
701
|
+
return vProp;
|
|
702
|
+
}
|
|
676
703
|
// Handle function calls
|
|
677
704
|
if (isFunction(vProp)) {
|
|
678
705
|
if (isArray(value)) {
|
|
@@ -853,7 +880,7 @@ function assign(node, value) {
|
|
|
853
880
|
}
|
|
854
881
|
function deleteFn(node, key) {
|
|
855
882
|
// If called without a key, delete by key from the parent node
|
|
856
|
-
if (key === undefined && node
|
|
883
|
+
if (key === undefined && isNodeValueWithParent(node)) {
|
|
857
884
|
key = node.key;
|
|
858
885
|
node = node.parent;
|
|
859
886
|
}
|
|
@@ -861,12 +888,9 @@ function deleteFn(node, key) {
|
|
|
861
888
|
setKey(node, key, symbolUndef, /*level*/ -1);
|
|
862
889
|
}
|
|
863
890
|
function createObservable(value, makePrimitive) {
|
|
864
|
-
const
|
|
865
|
-
if (promise) {
|
|
866
|
-
value = undefined;
|
|
867
|
-
}
|
|
891
|
+
const valueIsPromise = isPromise(value);
|
|
868
892
|
const root = {
|
|
869
|
-
_:
|
|
893
|
+
_: valueIsPromise ? undefined : value,
|
|
870
894
|
};
|
|
871
895
|
const node = {
|
|
872
896
|
id: nextNodeID.current++,
|
|
@@ -875,11 +899,11 @@ function createObservable(value, makePrimitive) {
|
|
|
875
899
|
const obs = makePrimitive || isActualPrimitive(value)
|
|
876
900
|
? new ObservablePrimitiveClass(node)
|
|
877
901
|
: getProxy(node);
|
|
878
|
-
if (
|
|
879
|
-
|
|
902
|
+
if (valueIsPromise) {
|
|
903
|
+
value.catch((error) => {
|
|
880
904
|
obs.set({ error });
|
|
881
905
|
});
|
|
882
|
-
|
|
906
|
+
value.then((value) => {
|
|
883
907
|
obs.set(value);
|
|
884
908
|
});
|
|
885
909
|
}
|
|
@@ -1022,5 +1046,5 @@ function when(predicate, effect) {
|
|
|
1022
1046
|
return promise || dispose;
|
|
1023
1047
|
}
|
|
1024
1048
|
|
|
1025
|
-
export { ObservablePrimitiveClass, batch, beginBatch, beginTracking, computeSelector, computed, endBatch, endTracking, event, extraPrimitiveProps, getNode, getNodeValue, getObservableIndex, isArray, isEmpty, isFunction, isObject, isObservable, isPrimitive, isString, lockObservable, mergeIntoObservable, observable, observablePrimitive, observe, onChange, symbolDateModified, symbolDelete, symbolIsEvent, symbolIsObservable, symbolUndef, tracking, updateTracking, when };
|
|
1049
|
+
export { ObservablePrimitiveClass, batch, beginBatch, beginTracking, computeSelector, computed, endBatch, endTracking, event, extraPrimitiveProps, getNode, getNodeValue, getObservableIndex, isArray, isEmpty, isFunction, isObject, isObservable, isPrimitive, isString, lockObservable, mergeIntoObservable, observable, observablePrimitive, observe, onChange, opaqueObject, symbolDateModified, symbolDelete, symbolIsEvent, symbolIsObservable, symbolUndef, tracking, updateTracking, when };
|
|
1026
1050
|
//# sourceMappingURL=index.mjs.map
|
package/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":["../../src/is.ts","../../src/tracking.ts","../../src/globals.ts","../../src/helpers.ts","../../src/batching.ts","../../src/notify.ts","../../src/onChange.ts","../../src/ObservablePrimitive.ts","../../src/observable.ts","../../src/observe.ts","../../src/computed.ts","../../src/event.ts","../../src/when.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":["../../src/is.ts","../../src/tracking.ts","../../src/globals.ts","../../src/helpers.ts","../../src/batching.ts","../../src/notify.ts","../../src/onChange.ts","../../src/ObservablePrimitive.ts","../../src/observable.ts","../../src/observe.ts","../../src/computed.ts","../../src/event.ts","../../src/when.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null],"names":[],"mappings":"AAEA;AACM,SAAU,OAAO,CAAC,GAAY,EAAA;AAChC,IAAA,OAAO,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC9B,CAAC;AACD;AACM,SAAU,QAAQ,CAAC,GAAY,EAAA;AACjC,IAAA,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC;AACnC,CAAC;AACD;AACM,SAAU,QAAQ,CAAC,GAAY,EAAA;AACjC,IAAA,OAAO,CAAC,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AAC7D,CAAC;AACD;AACM,SAAU,UAAU,CAAC,GAAY,EAAA;AACnC,IAAA,OAAO,OAAO,GAAG,KAAK,UAAU,CAAC;AACrC,CAAC;AACD;AACM,SAAU,WAAW,CAAC,GAAY,EAAA;AACpC,IAAA,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC;IACxB,OAAO,GAAG,KAAK,SAAS,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,UAAU,CAAC;AACzE,CAAC;AACD;AACM,SAAU,aAAa,CAAC,GAAW,EAAA;AACrC,IAAA,OAAO,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AAC3E,CAAC;AAKD;AACM,SAAU,SAAS,CAAC,GAAY,EAAA;AAClC,IAAA,OAAO,OAAO,GAAG,KAAK,SAAS,CAAC;AACpC,CAAC;AACD;AACM,SAAU,SAAS,CAAI,GAAY,EAAA;IACrC,OAAO,GAAG,YAAY,OAAO,CAAC;AAClC,CAAC;AACK,SAAU,OAAO,CAAC,GAAW,EAAA;AAC/B,IAAA,OAAO,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;AAChD,CAAC;AACD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC;IAC1B,SAAS;IACT,QAAQ;IACR,QAAQ;AACX,CAAA,CAAC,CAAC;AACH;AACM,SAAU,iBAAiB,CAAC,GAAY,EAAA;AAC1C,IAAA,OAAO,aAAa,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC;AACzC,CAAC;AACD;AACM,SAAU,qBAAqB,CAAC,IAAkD,EAAA;AACpF,IAAA,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;AACzB;;AC7CA,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB,MAAM,aAAa,GAAoB,EAAE,CAAC;AAE7B,MAAA,QAAQ,GAAG;AACpB,IAAA,OAAO,EAAE,SAA0B;AACnC,IAAA,cAAc,EAAE,KAAK;EACvB;SAEc,aAAa,GAAA;;;AAGzB,IAAA,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;AACrC,IAAA,UAAU,EAAE,CAAC;AACb,IAAA,QAAQ,CAAC,OAAO,GAAG,EAAE,CAAC;AAC1B,CAAC;SACe,WAAW,GAAA;;AAEvB,IAAA,UAAU,EAAE,CAAC;IACb,IAAI,UAAU,GAAG,CAAC,EAAE;QAChB,UAAU,GAAG,CAAC,CAAC;AACf,QAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE;;AAE3E,YAAA,SAAS;AACZ,SAAA;AACJ,KAAA;AACD,IAAA,QAAQ,CAAC,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,CAAC;AAC3C,CAAC;AAEe,SAAA,cAAc,CAAC,IAAe,EAAE,KAAoB,EAAA;AAChE,IAAA,IAAI,UAAU,EAAE;AACZ,QAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;AACjC,QAAA,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;AAChB,YAAA,OAAO,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;AAC7B,SAAA;AAGD,QAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5C,QAAA,IAAI,QAAQ,EAAE;YACV,QAAQ,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,KAAK,CAAC;YACzC,QAAQ,CAAC,GAAG,EAAE,CAAC;AAClB,SAAA;AAAM,aAAA;AACH,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AACvD,SAAA;AACJ,KAAA;AACL;;MCjDa,kBAAkB,GAAG,MAAM,CAAC,cAAc,EAAE;MAC5C,kBAAkB,GAAG,MAAM,CAAC,cAAc,EAAE;MAC5C,aAAa,GAAG,MAAM,CAAC,SAAS,EAAE;AACxC,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;MAClC,WAAW,GAAG,MAAM,CAAC,OAAO,EAAE;MAC9B,YAAY,GAAG,MAAM,CAAC,QAAQ,EAAE;AACtC,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAEtC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAA2B;IACtE,CAAC,UAAU,EAAE,IAAI,CAAC;AAClB,IAAA,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC;AAC7B,CAAA,CAAC,CAAC;AACU,MAAA,mBAAmB,GAAG,IAAI,GAAG,GAAyB;AAE5D,MAAM,UAAU,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;AAEzB,SAAA,GAAG,CAAC,IAAe,EAAE,KAAoB,EAAA;;AAErD,IAAA,cAAc,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAE5B,IAAA,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAEK,SAAU,IAAI,CAAC,IAAe,EAAA;AAChC,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;IACvB,IAAI,IAAI,CAAC,QAAQ,EAAE;QACf,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChB,QAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;AAC7B,KAAA;AACD,IAAA,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAEK,SAAU,YAAY,CAAC,IAAe,EAAA;IACxC,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,IAAI,CAAC,GAAc,IAAI,CAAC;AACxB,IAAA,OAAO,qBAAqB,CAAC,CAAC,CAAC,EAAE;AAC7B,QAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;AAChB,QAAA,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;AAChB,KAAA;AACD,IAAA,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACxB,IAAA,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QACtC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,KAAK,EAAE;YAC/B,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACzB,SAAA;AACJ,KAAA;AACD,IAAA,OAAO,KAAK,CAAC;AACjB,CAAC;AAEe,SAAA,YAAY,CAAC,IAAe,EAAE,GAAoB,EAAA;;AAC9D,IAAA,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE;AACf,QAAA,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;;AAEf,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,GAAG,GAAG,CAAC,CAAC;AAC1B,KAAA;;IAGD,IAAI,KAAK,GAAG,CAAA,EAAA,GAAA,IAAI,CAAC,QAAQ,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,CAAC,GAAG,CAAC,CAAC;;IAGpC,IAAI,CAAC,KAAK,EAAE;AACR,QAAA,KAAK,GAAG;AACJ,YAAA,EAAE,EAAE,UAAU,CAAC,OAAO,EAAE;YACxB,IAAI,EAAE,IAAI,CAAC,IAAI;AACf,YAAA,MAAM,EAAE,IAAI;YACZ,GAAG;;SAEN,CAAC;AACF,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;AAChB,YAAA,IAAI,CAAC,QAAQ,GAAG,IAAI,GAAG,EAAE,CAAC;AAC7B,SAAA;QACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACjC,KAAA;AAED,IAAA,OAAO,KAAK,CAAC;AACjB,CAAC;AAEK,SAAU,eAAe,CAAC,IAAe,EAAA;AAC3C,IAAA,IAAI,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,KAAK,EAAE;AACR,QAAA,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC5C,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AACjC,SAAA;AAAM,aAAA;YACH,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;AAC5B,SAAA;AACJ,KAAA;AACD,IAAA,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;IACxC,IAAI,SAAS,GAAyB,EAAE,CAAC;AAC5C,CAAA;AACK,SAAU,mBAAmB,CAAC,KAAU,EAAA;AAC1C,IAAA,IAAI,QAAQ,CAAC,KAAK,CAAC,EAAE;;QAEjB,IAAI,KAAK,CAAC,YAAmB,CAAC;AAAE,YAAA,OAAO,IAAI,CAAC;;AAG5C,QAAA,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE;AAC1E,YAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;AAC1D,gBAAA,OAAO,CAAC,IAAI,CAAC,+EAA+E,CAAC,CAAC;AAC9F,gBAAA,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC;AACxB,aAAA;AACD,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;;QAGD,IAAI,KAAK,CAAC,QAAQ,EAAE;AAChB,YAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE;AAC1D,gBAAA,OAAO,CAAC,IAAI,CACR,CAAA,mLAAA,CAAqL,CACxL,CAAC;AACF,gBAAA,SAAS,CAAC,GAAG,GAAG,IAAI,CAAC;AACxB,aAAA;AACD,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;AACJ,KAAA;AACL,CAAC;AAKK,SAAU,SAAS,CAAC,GAAwB,EAAA;IAC9C,OAAO,QAAQ,CAAC,GAAG,CAAC;UACd,IAAI,IAAI,GAAG;AACT,cAAE,IAAI;cACJ,KAAK,IAAI,GAAG;AACV,kBAAE,KAAK;kBACL,MAAM,IAAI,GAAG;AACX,sBAAE,MAAM;AACR,sBAAE,SAAS;UACrB,SAAS,CAAC;AACpB;;AC7HM,SAAU,YAAY,CAAC,GAAQ,EAAA;IACjC,OAAO,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,kBAAyB,CAAC,CAAC;AACnD,CAAC;AAEe,SAAA,eAAe,CAAI,QAAqB,EAAE,CAAmB,EAAA;IACzE,IAAI,CAAC,GAAG,QAAe,CAAC;AACxB,IAAA,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;AACf,QAAA,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;AACtB,KAAA;AAED,IAAA,OAAO,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACzC,CAAC;AAEK,SAAU,OAAO,CAAC,GAAuB,EAAA;AAC3C,IAAA,OAAO,GAAG,CAAC,aAAa,CAAC,CAAC;AAC9B,CAAC;AAEK,SAAU,kBAAkB,CAAC,GAAuB,EAAA;AACtD,IAAA,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAC1B,OAAO,EAAC,IAAI,KAAJ,IAAA,IAAA,IAAI,uBAAJ,IAAI,CAAE,GAAG,CAAA,CAAC;AACtB,CAAC;AAEK,SAAU,YAAY,CAAmB,KAAQ,EAAA;AACnD,IAAA,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;AAC3B,IAAA,OAAO,KAAwB,CAAC;AACpC,CAAC;AAEe,SAAA,cAAc,CAAC,GAAuB,EAAE,KAAc,EAAA;;IAClE,MAAM,IAAI,GAAG,CAAA,EAAA,GAAA,OAAO,CAAC,GAAG,CAAC,MAAE,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAI,CAAC;AAChC,IAAA,IAAI,IAAI,EAAE;AACN,QAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;AACvB,KAAA;AACL,CAAC;SACe,mBAAmB,CAAC,MAAiC,EAAE,GAAG,OAAc,EAAA;;IACpF,IAAI,CAAC,OAAO,CAAC,MAAM;AAAE,QAAA,OAAO,MAAM,CAAC;AAEnC,IAAA,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;AAE/B,IAAA,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AACtC,IAAA,MAAM,WAAW,GAAG,QAAQ,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,MAAM,CAAC;AAEtD,IAAA,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAE1C,IAAA,IAAI,WAAW,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE;QACjC,MAAM,IAAI,GAAwB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACtD,QAAA,IAAI,MAAM,CAAC,kBAAyB,CAAC,EAAE;AACnC,YAAA,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AACjC,SAAA;AACD,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AAClC,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAW,CAAC;AAC9B,YAAA,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE;AACtD,gBAAA,IAAI,CAAC,QAAQ,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;AACjE,oBAAA,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AACpB,iBAAA;gBACD,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;AACjD,aAAA;iBAAM,IAAI,WAAW,KAAK,YAAY,EAAE;gBACrC,QAAQ,KAAI,CAAA,EAAA,GAAA,MAAM,CAAC,GAAG,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,MAAM,CAAA,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AAC/E,aAAA;AAAM,iBAAA;AACH,gBAAA,QAAQ,KAAI,CAAA,EAAA,GAAA,MAAM,CAAC,GAAG,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAE,GAAG,CAAA,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,CAAC;AAC7F,aAAA;AACJ,SAAA;AACJ,KAAA;SAAM,IAAI,QAAQ,IAAI,EAAE,WAAW,IAAI,MAAM,KAAK,SAAS,CAAC,EAAE;AAC3D,QAAA,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AACtB,KAAA;AACD,IAAA,OAAO,mBAAmB,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;AACnD;;AC/DA,IAAI,OAAO,CAAC;AACZ,IAAI,UAAU,GAAG,CAAC,CAAC;AACnB,IAAI,MAAM,GAAiC,EAAE,CAAC;AAC9C;AACA,IAAI,SAAS,GAAG,IAAI,GAAG,EAAgC,CAAC;AAExD,SAAS,eAAe,GAAA;AACpB,IAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;AACnB,QAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;AACxC,YAAA,OAAO,CAAC,KAAK,CACT,uIAAuI,CAC1I,CAAC;AACL,SAAA;AACD,QAAA,QAAQ,WAAW,IAAI,CAAC,CAAC;AAC5B,KAAA;AACL,CAAC;AAEK,SAAU,WAAW,CAAC,CAA2B,EAAA;AACnD,IAAA,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;AAC7B,IAAA,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;IAC7B,IAAI,UAAU,GAAG,CAAC,EAAE;QAChB,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC;;AAE7B,QAAA,IAAI,QAAQ,EAAE;YACV,IAAI,CAAC,MAAM,EAAE;AACR,gBAAA,QAAsB,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;gBACvC,QAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;AACtD,aAAA;AACJ,SAAA;AAAM,aAAA;AACH,YAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACf,YAAA,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;AACzB,SAAA;AACJ,KAAA;AAAM,SAAA;AACH,QAAA,MAAM,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;AAClE,KAAA;AACL,CAAC;AAEK,SAAU,KAAK,CAAC,EAAc,EAAA;AAChC,IAAA,UAAU,EAAE,CAAC;AACb,IAAA,EAAE,EAAE,CAAC;AACL,IAAA,QAAQ,EAAE,CAAC;AACf,CAAC;SACe,UAAU,GAAA;AACtB,IAAA,UAAU,EAAE,CAAC;;AAEb,IAAA,OAAO,GAAG,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC;AACK,SAAU,QAAQ,CAAC,KAAe,EAAA;AACpC,IAAA,UAAU,EAAE,CAAC;AACb,IAAA,IAAI,UAAU,IAAI,CAAC,IAAI,KAAK,EAAE;QAC1B,YAAY,CAAC,OAAO,CAAC,CAAC;QACtB,UAAU,GAAG,CAAC,CAAC;;;QAGf,MAAM,KAAK,GAAG,MAAM,CAAC;QACrB,MAAM,GAAG,EAAE,CAAC;AACZ,QAAA,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;AACtB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACnC,YAAA,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;AACnB,YAAA,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE;AACf,gBAAA,CAAC,EAAE,CAAC;AACP,aAAA;AAAM,iBAAA;AACH,gBAAA,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;gBAC1D,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;AAClC,aAAA;AACJ,SAAA;AACJ,KAAA;AACL;;AC9EA,SAAS,qBAAqB,CAAC,KAAU,EAAE,IAAyB,EAAE,UAAe,EAAA;;IAEjF,OAAO,YAAA;AACH,QAAA,IAAI,KAAK,GAAG,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;QACrF,IAAI,CAAC,GAAG,KAAK,CAAC;AACd,QAAA,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;AACjB,YAAA,IAAI,CAAS,CAAC;AACd,YAAA,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAClC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAClB,aAAA;YACD,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;AAC3B,SAAA;AAAM,aAAA;YACH,KAAK,GAAG,UAAU,CAAC;AACtB,SAAA;AACD,QAAA,OAAO,KAAK,CAAC;AACjB,KAAC,CAAC;AACN,CAAC;AAEe,SAAA,QAAQ,CACpB,IAAe,EACf,KAAU,EACV,IAAyB,EACzB,WAAgB,EAChB,UAAe,EACf,KAAa,EACb,mBAA6B,EAAA;AAE7B,IAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;AACjC,IAAA,IAAI,SAAS,EAAE;AACX,QAAA,IAAI,WAAW,CAAC;QAChB,IAAI,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AAChC,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACjC,YAAA,MAAM,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;AAC1B,YAAA,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,CAAC;AAErC,YAAA,MAAM,EAAE,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,IAAI,CAAC,GAAG,KAAK,KAAK,UAAU,GAAG,mBAAmB,IAAI,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;;AAGzG,YAAA,IAAI,EAAE,EAAE;;;AAGJ,gBAAA,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE;oBACzB,WAAW,GAAG,qBAAqB,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;AAChE,iBAAA;AACD,gBAAA,WAAW,CACP,MAAM;sBACC,UAAU,CAAC,QAAuB;AACrC,sBAAE;wBACI,EAAE,EAAE,UAAU,CAAC,QAAQ;wBACvB,KAAK;wBACL,WAAW;AACX,wBAAA,OAAO,EAAE;AACL,4BAAA;gCACI,IAAI;gCACJ,WAAW;gCACX,UAAU;AACb,6BAAA;AACJ,yBAAA;wBACD,IAAI;AACP,qBAAA,CACV,CAAC;AACL,aAAA;AACJ,SAAA;AACJ,KAAA;AACL,CAAC;AAED,SAAS,cAAc,CACnB,IAAe,EACf,KAAU,EACV,IAAyB,EACzB,WAAgB,EAChB,UAAe,EACf,KAAa,EACb,mBAA6B,EAAA;;AAG7B,IAAA,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC;;IAEjF,IAAI,IAAI,CAAC,MAAM,EAAE;AACb,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;AAC3B,QAAA,IAAI,MAAM,EAAE;AACR,YAAA,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;YACzC,cAAc,CACV,MAAM,EACN,WAAW,EACX,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EACvB,WAAW,EACX,UAAU,EACV,KAAK,GAAG,CAAC,EACT,mBAAmB,CACtB,CAAC;AACL,SAAA;AACJ,KAAA;AACL,CAAC;AACK,SAAU,MAAM,CAAC,IAAe,EAAE,KAAU,EAAE,IAAS,EAAE,KAAa,EAAE,mBAA6B,EAAA;;AAEvG,IAAA,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,mBAAmB,CAAC,CAAC;AAC7E;;ACnGM,SAAU,QAAQ,CACpB,IAAe,EACf,QAAyB,EACzB,KAAoB,EACpB,MAAgB,EAAA;AAEhB,IAAA,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAC/B,IAAI,CAAC,SAAS,EAAE;QACZ,IAAI,CAAC,SAAS,GAAG,SAAS,GAAG,IAAI,GAAG,EAAE,CAAC;AAC1C,KAAA;AAED,IAAA,MAAM,QAAQ,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AAE9D,IAAA,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAExB,OAAO,MAAM,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC5C;;ACLM,SAAU,wBAAwB,CAAC,IAAe,EAAA;AACpD,IAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AACD;AACA,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE;AACrE,IAAA,YAAY,EAAE,IAAI;IAClB,GAAG,GAAA;QACC,OAAO,IAAI,CAAC,KAAK,CAAC;KACrB;AACJ,CAAA,CAAC,CAAC;AACH,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,SAAS,EAAE,kBAAkB,EAAE;AAC1E,IAAA,YAAY,EAAE,IAAI;AAClB,IAAA,KAAK,EAAE,IAAI;AACd,CAAA,CAAC,CAAC;AACH,MAAM,CAAC,cAAc,CAAC,wBAAwB,CAAC,SAAS,EAAE,aAAa,EAAE;AACrE,IAAA,YAAY,EAAE,IAAI;AAClB,IAAA,KAAK,EAAE,KAAK;AACf,CAAA,CAAC,CAAC;AACH,wBAAwB,CAAC,SAAS,CAAC,IAAI,GAAG,YAAA;AACtC,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IAC7B,IAAI,IAAI,CAAC,QAAQ,EAAE;QACf,IAAI,CAAC,QAAQ,EAAE,CAAC;AAChB,QAAA,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;AAC7B,KAAA;IACD,OAAO,IAAI,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;AACF,wBAAwB,CAAC,SAAS,CAAC,GAAG,GAAG,YAAA;AACrC,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;IACxB,cAAc,CAAC,IAAI,CAAC,CAAC;AAErB,IAAA,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC,CAAC;AACF;AACA,wBAAwB,CAAC,SAAS,CAAC,GAAG,GAAG,UAAa,KAA2B,EAAA;AAC7E,IAAA,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;QACnB,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpC,KAAA;AACD,IAAA,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE;QACxB,MAAM,IAAI,KAAK,CACX,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;AAClC,cAAE,uIAAuI;cACvI,2CAA2C,CACpD,CAAC;AACL,KAAA;AACD,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;AAC7B,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;AACpB,IAAA,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;AACf,IAAA,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAChD,IAAA,OAAO,IAAqC,CAAC;AACjD,CAAC,CAAC;AACF,wBAAwB,CAAC,SAAS,CAAC,MAAM,GAAG,YAAA;AACxC,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;AAC1B,IAAA,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;AAClB,QAAA,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AACpB,KAAA;AAAM,SAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE;AAClF,QAAA,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACvE,KAAA;IAED,OAAO,CAAC,KAAK,CAAC;AAClB,CAAC,CAAC;AACF;AACA,wBAAwB,CAAC,SAAS,CAAC,QAAQ,GAAG,UAC1C,EAAiB,EACjB,KAAoB,EACpB,MAAgB,EAAA;AAEhB,IAAA,OAAO,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;AACnD,CAAC;;ACnDD,IAAI,KAAK,GAAG,KAAK,CAAC;AAClB,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC;IAC3B,YAAY;IACZ,MAAM;IACN,MAAM;IACN,KAAK;IACL,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;IACN,QAAQ;IACR,SAAS;AACZ,CAAA,CAAC,CAAC;AACH,MAAM,YAAY,GAAG,IAAI,GAAG,CAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;AAEtG,MAAM,SAAS,GAAG,IAAI,GAAG,CAAmB;IACxC,CAAC,KAAK,EAAE,GAAG,CAAC;IACZ,CAAC,KAAK,EAAE,GAAG,CAAC;IACZ,CAAC,MAAM,EAAE,IAAI,CAAC;IACd,CAAC,UAAU,EAAE,QAAQ,CAAC;IACtB,CAAC,QAAQ,EAAE,MAAM,CAAC;IAClB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,MAAM,CAAC;AACrB,CAAA,CAAC,CAAC;AAEH,SAAS,gBAAgB,CAAC,IAAe,EAAE,MAAW,EAAE,IAAY,EAAE,GAAG,IAAW,EAAA;;AAChF,IAAA,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,KAAK,MAAM,CAAC;AAEhE,IAAA,MAAM,GAAG,GAAI,MAAM,CAAC,IAAI,CAAc,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAE3D,IAAA,IAAI,IAAI,EAAE;AACN,QAAA,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;AAC9C,QAAA,MAAM,GAAG,GAAoB,SAAS,GAAG,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;AACxD,QAAA,MAAM,WAAW,GAAG,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;;AAGtE,QAAA,WAAW,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;;QAG7B,MAAM,CAAC,MAAA,IAAI,CAAC,MAAM,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,IAAI,EAAE,SAAS,GAAG,GAAG,GAAI,WAAmB,EAAE,MAAM,CAAC,CAAC;AAC/E,KAAA;;AAGD,IAAA,OAAO,GAAG,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,MAAiB,EAAE,GAA8C,EAAE,SAAe,EAAA;AACnG,IAAA,IAAI,mBAAmB,CAAC,GAAG,CAAC,EAAE;AAC1B,QAAA,MAAM,MAAM,GAAG,GAAG,KAAK,SAAS,CAAC;AACjC,QAAA,IAAI,MAAM,EAAE;YACR,IAAI,MAAM,CAAC,SAAS,EAAE;AAClB,gBAAA,QAAQ,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;AAChD,aAAA;AACJ,SAAA;AACD,QAAA,OAAO,MAAM,CAAC;AACjB,KAAA;AACD,IAAA,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;AAE3B,IAAA,IAAI,gBAA6D,CAAC;AAClE,IAAA,IAAI,KAAwC,CAAC;;IAG7C,MAAM,IAAI,GAAG,KAAK,GAAG,GAAG,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;AAEvD,IAAA,IAAI,OAA0B,CAAC;AAE/B,IAAA,IAAI,KAAK,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;;AAE7B,QAAA,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;AACtB,YAAA,MAAM,cAAc,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACpC,YAAA,IAAI,cAAc,EAAE;AAChB,gBAAA,OAAO,GAAG,SAAS,CAAC,cAAc,CAAC,CAAC;AAEpC,gBAAA,IAAI,OAAO,EAAE;AACT,oBAAA,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;oBAC7B,KAAK,GAAG,EAAE,CAAC;oBACX,IAAI,MAAM,CAAC,QAAQ,EAAE;AACjB,wBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACvC,4BAAA,MAAM,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;AACvB,4BAAA,IAAI,CAAC,EAAE;AACH,gCAAA,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5D,6BAAA;AACJ,yBAAA;AACJ,qBAAA;AACJ,iBAAA;AACJ,aAAA;AACJ,SAAA;AACJ,KAAA;SAAM,IAAI,SAAS,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,EAAE;;QAElD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACxC,QAAA,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE;AACjC,YAAA,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;AACxB,YAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gBACrB,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAEtC,gBAAA,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;AAC5B,gBAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;AACpB,oBAAA,WAAW,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;AACvC,iBAAA;gBAED,IAAI,KAAK,CAAC,SAAS,EAAE;AACjB,oBAAA,QAAQ,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACtD,iBAAA;AACJ,aAAA;AACJ,SAAA;AACJ,KAAA;AAED,IAAA,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE;AAC1B,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAE3B,IAAI,QAAQ,GAAG,CAAC,KAAK,IAAI,CAAA,GAAG,KAAH,IAAA,IAAA,GAAG,KAAH,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,GAAG,CAAE,MAAM,OAAK,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAE,MAAM,CAAA,CAAC;QAC3D,MAAM,SAAS,GAAG,QAAQ,CAAC;QAC3B,IAAI,OAAO,GAAG,KAAK,CAAC;QAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;AAC7B,YAAA,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;AAChC,YAAA,MAAM,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,MAAM,IAAI,GAAG,SAAS,KAAT,IAAA,IAAA,SAAS,uBAAT,SAAS,CAAG,GAAG,CAAC,CAAC;AAE9B,YAAA,IAAI,MAAM,GAAG,KAAK,KAAK,IAAI,CAAC;AAC5B,YAAA,IAAI,MAAM,EAAE;gBACR,MAAM,EAAE,GAAG,KAAK,KAAL,IAAA,IAAA,KAAK,uBAAL,KAAK,CAAG,OAAO,CAAC,CAAC;gBAE5B,IAAI,KAAK,GAAG,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;;;AAItC,gBAAA,IAAI,KAAK,IAAI,EAAE,KAAK,SAAS,EAAE;;oBAE3B,MAAM,SAAS,GAAG,EAAE,KAAK,SAAS,GAAG,gBAAgB,KAAhB,IAAA,IAAA,gBAAgB,uBAAhB,gBAAgB,CAAE,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC;oBAC3E,IAAI,CAAC,SAAS,EAAE;;wBAEZ,MAAM,GAAG,KAAK,CAAC;AAClB,qBAAA;yBAAM,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,GAAG,KAAK,GAAG,EAAE;;;;AAIzD,wBAAA,IAAI,SAAS,EAAE;4BACX,KAAK,GAAG,SAAS,CAAC;AAClB,4BAAA,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK;AAAE,gCAAA,SAAS;4BAC/B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAClC,4BAAA,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC;4BAChB,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5B,yBAAA;wBAED,OAAO,GAAG,IAAI,CAAC;;wBAGf,MAAM,UAAU,GAAG,SAAS,CAAC;AAC7B,wBAAA,MAAM,GAAG,UAAU,KAAK,KAAK,CAAC;AACjC,qBAAA;AACJ,iBAAA;AAED,gBAAA,IAAI,MAAM,EAAE;;oBAER,QAAQ,GAAG,IAAI,CAAC;;AAEhB,oBAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE;AACrB,wBAAA,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;AACnC,qBAAA;AACJ,iBAAA;AACD,gBAAA,IAAI,MAAM,IAAI,CAAC,SAAS,EAAE;;;;;oBAKtB,IAAI,KAAK,CAAC,SAAS,EAAE;AACjB,wBAAA,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAC1D,qBAAA;AACJ,iBAAA;AACJ,aAAA;AACJ,SAAA;AAED,QAAA,IAAI,KAAK,EAAE;AACP,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACnC,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACnC,aAAA;AACJ,SAAA;;;QAID,OAAO,QAAQ,IAAI,OAAO,CAAC;AAC9B,KAAA;AAAM,SAAA,IAAI,SAAS,EAAE;;AAElB,QAAA,OAAO,IAAI,CAAC;AACf,KAAA;AACD,IAAA,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAe,EAAE,CAAmB,EAAA;;IAElD,IAAI,CAAC,KAAK,SAAS;AAAE,QAAA,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;;AAGlD,IAAA,OAAO,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAY,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;AACjF,CAAC;AAED,MAAM,YAAY,GAAsB;IACpC,GAAG,CAAC,IAAe,EAAE,CAAM,EAAA;;;QAEvB,IAAI,CAAC,KAAK,kBAAkB,EAAE;AAC1B,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QACD,IAAI,CAAC,KAAK,aAAa,EAAE;AACrB,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;QACD,IAAI,CAAC,KAAK,aAAa,EAAE;AACrB,YAAA,OAAO,IAAI,CAAC;AACf,SAAA;QAED,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;;AAE5B,QAAA,IAAI,EAAE,EAAE;AACJ,YAAA,OAAO,UAAU,CAAU,EAAE,CAAU,EAAE,CAAU,EAAA;AAC/C,gBAAA,MAAM,CAAC,GAAG,SAAS,CAAC,MAAM,CAAC;;;;AAI3B,gBAAA,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;AAC5E,aAAC,CAAC;AACL,SAAA;AAED,QAAA,IAAI,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AAE/B,QAAA,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QAE5C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,gBAAgB,EAAE;AAC3D,YAAA,IAAI,mBAAmB,CAAC,IAAI,KAAK,IAAI,CAAC,oBAAoB,IAAI,wBAAwB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;AAC5F,gBAAA,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;gBACjC,MAAM,KAAK,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACzC,IAAI,KAAK,KAAK,SAAS,EAAE;AACrB,oBAAA,OAAO,MAAA,CAAA,EAAA,GAAA,KAAK,KAAL,IAAA,IAAA,KAAK,uBAAL,KAAK,CAAE,IAAI,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,KAAA,EAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAI,KAAK,CAAC;AACjD,iBAAA;AACJ,aAAA;AACJ,SAAA;QAED,MAAM,KAAK,GAAG,KAAK,KAAL,IAAA,IAAA,KAAK,uBAAL,KAAK,CAAG,CAAC,CAAC,CAAC;AAEzB,QAAA,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE;AAC5B,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;;AAGD,QAAA,IAAI,UAAU,CAAC,KAAK,CAAC,EAAE;AACnB,YAAA,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE;AAChB,gBAAA,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;;AAEvB,oBAAA,OAAO,CAAC,GAAG,IAAI,KAAK,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;AACjE,iBAAA;AAAM,qBAAA,IAAI,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;;;AAG5B,oBAAA,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBAC3B,OAAO,UAAU,MAAM,EAAE,OAAO,EAAA;AAC5B,wBAAA,SAAS,EAAE,CAAC,CAAC,EAAE,KAAa,EAAE,KAAY,EAAA;AACtC,4BAAA,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;yBACtD;wBACD,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;AACjC,qBAAC,CAAC;AACL,iBAAA;AACJ,aAAA;;AAED,YAAA,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC5B,SAAA;;AAGD,QAAA,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;;YAEpB,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE;AAClC,gBAAA,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;;AAG3B,gBAAA,OAAO,KAAK,CAAC;AAChB,aAAA;AACJ,SAAA;;AAGD,QAAA,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;KAC5B;;AAED,IAAA,cAAc,CAAC,IAAI,EAAA;AACf,QAAA,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACjC,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;KAC7F;AACD,IAAA,OAAO,CAAC,IAAe,EAAA;AACnB,QAAA,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,WAAW,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE,CAAC;AAElC,QAAA,MAAM,IAAI,GAAG,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;;AAGjD,QAAA,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;;;;AAK3B,QAAA,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,QAAQ,EAAE;YACtD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;AACnC,SAAA;AACD,QAAA,OAAO,IAAI,CAAC;KACf;IACD,wBAAwB,CAAC,IAAI,EAAE,CAAC,EAAA;AAC5B,QAAA,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;QACjC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,wBAAwB,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC;KACvF;AACD,IAAA,GAAG,CAAC,IAAe,EAAE,IAAY,EAAE,KAAK,EAAA;;AAEpC,QAAA,IAAI,KAAK,EAAE;YACP,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AACzC,SAAA;QAED,IAAI,CAAC,QAAQ,EAAE;AACX,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;AAED,QAAA,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC1B,QAAA,OAAO,IAAI,CAAC;KACf;IACD,cAAc,CAAC,MAAiB,EAAE,IAAI,EAAA;;AAElC,QAAA,IAAI,KAAK,EAAE;YACP,OAAO,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC/C,SAAA;AAAM,aAAA;AACH,YAAA,OAAO,KAAK,CAAC;AAChB,SAAA;KACJ;IACD,GAAG,CAAC,MAAM,EAAE,IAAI,EAAA;AACZ,QAAA,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QACnC,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;KACnC;CACJ,CAAC;AAEF,SAAS,GAAG,CAAC,IAAe,EAAE,QAAc,EAAA;AACxC,IAAA,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QACd,OAAO,MAAM,CAAC,IAAI,EAAE,WAAkB,EAAE,QAAQ,CAAC,CAAC;AACrD,KAAA;AAAM,SAAA;AACH,QAAA,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAClD,KAAA;AACL,CAAC;AACD,SAAS,MAAM,CAAC,IAAe,EAAA;AAC3B,IAAA,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;AACjC,IAAA,IAAI,SAAS,CAAC,KAAK,CAAC,EAAE;AAClB,QAAA,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC;AACjB,KAAA;AAAM,SAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,EAAE;AAClF,QAAA,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAC;AACvE,KAAA;AACL,CAAC;AAED,SAAS,MAAM,CAAC,IAAe,EAAE,GAAoB,EAAE,QAAc,EAAE,KAAc,EAAA;AACjF,IAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;QACxC,IAAI,OAAO,WAAW,KAAK,WAAW,IAAI,QAAQ,YAAY,WAAW,EAAE;AACvE,YAAA,OAAO,CAAC,IAAI,CAAC,CAAA,iFAAA,CAAmF,CAAC,CAAC;AACrG,SAAA;AACJ,KAAA;AAED,IAAA,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QAClB,MAAM,IAAI,KAAK,CACX,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa;AAClC,cAAE,uIAAuI;cACvI,2CAA2C,CACpD,CAAC;AACL,KAAA;AAED,IAAA,MAAM,QAAQ,GAAG,QAAQ,KAAK,WAAW,CAAC;AAC1C,IAAA,IAAI,QAAQ;QAAE,QAAQ,GAAG,SAAS,CAAC;AAEnC,IAAA,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;AAErC,IAAA,MAAM,MAAM,GAAI,GAAW,KAAK,WAAW,CAAC;;AAG5C,IAAA,IAAI,SAAS,GAAc,MAAM,GAAG,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;;AAGnE,IAAA,IAAI,WAAW,GAAG,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;AAE7D,IAAA,IAAI,MAAM,EAAE;QACR,GAAG,GAAG,GAAG,CAAC;AACb,KAAA;;AAGD,IAAA,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;;IAGnC,QAAQ;AACJ,QAAA,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC;AAC7B,cAAE,QAAQ,CAAC,SAAS,CAAC;AACrB,cAAE,QAAQ,CAAC,QAAQ,CAAC,KAAI,QAAQ,KAAR,IAAA,IAAA,QAAQ,KAAR,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,QAAQ,CAAG,kBAAyB,CAAC,CAAA;AACzD,kBAAE,QAAQ,CAAC,GAAG,EAAE;kBACd,QAAQ,CAAC;IAEvB,KAAK,GAAG,IAAI,CAAC;;AAEb,IAAA,IAAI,QAAQ,EAAE;AACV,QAAA,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC;AAC3B,KAAA;AAAM,SAAA;AACH,QAAA,WAAW,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;AAC/B,KAAA;IACD,KAAK,GAAG,KAAK,CAAC;;AAGd,IAAA,UAAU,EAAE,CAAC;IAEb,IAAI,QAAQ,GAAG,MAAM,CAAC;IACtB,IAAI,mBAAmB,GAAG,KAAK,CAAC;;AAEhC,IAAA,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE;QACnD,QAAQ,GAAG,WAAW,CAAC,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AACvD,QAAA,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;AACnB,YAAA,mBAAmB,GAAG,CAAA,QAAQ,aAAR,QAAQ,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAR,QAAQ,CAAE,MAAM,OAAK,SAAS,aAAT,SAAS,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAT,SAAS,CAAE,MAAM,CAAA,CAAC;AAChE,SAAA;AACJ,KAAA;;AAGD,IAAA,IAAI,CAAC,MAAM,IAAI,QAAQ,KAAK,SAAS,EAAE;QACnC,MAAM,CACF,MAAM,IAAI,MAAM,GAAG,IAAI,GAAG,SAAS,EACnC,QAAQ,EACR,SAAS,EACT,CAAA,KAAK,KAAL,IAAA,IAAA,KAAK,KAAL,KAAA,CAAA,GAAA,KAAK,GAAI,SAAS,KAAK,SAAS,IAAG,CAAC,CAAC,GAAG,QAAQ,GAAG,CAAC,GAAG,CAAC,EACxD,mBAAmB,CACtB,CAAC;AACL,KAAA;AAED,IAAA,QAAQ,EAAE,CAAC;AAEX,IAAA,OAAO,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;AACzD,CAAC;AAED,SAAS,MAAM,CAAC,IAAe,EAAE,KAAU,EAAA;AACvC,IAAA,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;AAE7B,IAAA,UAAU,EAAE,CAAC;IAEb,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;AAC1B,QAAA,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;AACpB,KAAA;;IAGD,QAAQ,GAAG,IAAI,CAAC;IAChB,IAAI;AACA,QAAA,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/B,KAAA;AAAS,YAAA;QACN,QAAQ,GAAG,KAAK,CAAC;AACpB,KAAA;AAED,IAAA,QAAQ,EAAE,CAAC;AAEX,IAAA,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,QAAQ,CAAC,IAAe,EAAE,GAAqB,EAAA;;IAEpD,IAAI,GAAG,KAAK,SAAS,IAAI,qBAAqB,CAAC,IAAI,CAAC,EAAE;AAClD,QAAA,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;AACf,QAAA,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;AACtB,KAAA;;AAED,IAAA,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,WAAW,YAAY,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAGD,SAAS,gBAAgB,CAAI,KAAqB,EAAE,aAAuB,EAAA;AACvE,IAAA,MAAM,cAAc,GAAG,SAAS,CAAI,KAAK,CAAC,CAAC;AAC3C,IAAA,MAAM,IAAI,GAAmB;QACzB,CAAC,EAAE,cAAc,GAAG,SAAS,GAAG,KAAK;KACxC,CAAC;AAEF,IAAA,MAAM,IAAI,GAAc;AACpB,QAAA,EAAE,EAAE,UAAU,CAAC,OAAO,EAAE;QACxB,IAAI;KACP,CAAC;AAEF,IAAA,MAAM,GAAG,GACL,aAAa,IAAI,iBAAiB,CAAC,KAAK,CAAC;AACrC,UAAG,IAAI,wBAAwB,CAAC,IAAI,CAAuC;AAC3E,UAAG,QAAQ,CAAC,IAAI,CAAgC,CAAC;AAEzD,IAAA,IAAI,cAAc,EAAE;AAChB,QAAA,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,KAAI;AAClB,YAAA,GAAG,CAAC,GAAG,CAAC,EAAE,KAAK,EAAS,CAAC,CAAC;AAC9B,SAAC,CAAC,CAAC;AACH,QAAA,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,KAAI;AACjB,YAAA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACnB,SAAC,CAAC,CAAC;AACN,KAAA;AAED,IAAA,OAAO,GAAG,CAAC;AACf,CAAC;AAEK,SAAU,UAAU,CAAI,KAAsB,EAAA;AAChD,IAAA,OAAO,gBAAgB,CAAC,KAAK,CAAkB,CAAC;AACpD,CAAC;AAEK,SAAU,mBAAmB,CAAI,KAAsB,EAAA;IACzD,OAAO,gBAAgB,CAAC,KAAK,oBAAoB,IAAI,CAAC,CAAC;AAC3D;;AC9gBA,SAAS,aAAa,CAAC,KAAgC,EAAE,MAAkB,EAAE,MAAgB,EAAA;IACzF,IAAI,SAAS,GAAG,EAAE,CAAC;;AAEnB,IAAA,IAAI,KAAK,EAAE;AACP,QAAA,KAAK,IAAI,OAAO,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE;AAChC,YAAA,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;AAChC,YAAA,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;AACzD,SAAA;AACJ,KAAA;AAED,IAAA,OAAO,MAAK;AACR,QAAA,IAAI,SAAS,EAAE;AACX,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACvC,gBAAA,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;AAClB,aAAA;YACD,SAAS,GAAG,SAAS,CAAC;AACzB,SAAA;AACL,KAAC,CAAC;AACN,CAAC;AAEK,SAAU,OAAO,CAAI,GAAqC,EAAA;AAC5D,IAAA,IAAI,OAAmB,CAAC;AACxB,IAAA,MAAM,CAAC,GAAoB,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;;AAEtC,IAAA,IAAI,MAAM,GAAG,YAAA;;;QAET,IAAI,CAAC,CAAC,SAAS,EAAE;YACb,CAAC,CAAC,SAAS,EAAE,CAAC;AACd,YAAA,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;AAC3B,SAAA;;AAGD,QAAA,OAAO,KAAP,IAAA,IAAA,OAAO,KAAP,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,OAAO,EAAI,CAAC;;AAGZ,QAAA,UAAU,EAAE,CAAC;;AAGb,QAAA,aAAa,EAAE,CAAC;;AAGhB,QAAA,CAAC,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;;QAGpB,CAAC,CAAC,GAAG,EAAE,CAAC;AAER,QAAA,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE;AACX,YAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;;YAEjC,IAAI,MAAM,GAAG,IAAI,CAAC;AAClB,YAAA,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;gBACxC,CAAA,EAAA,GAAA,OAAO,CAAC,cAAc,MAAA,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,CAAA,OAAA,EAAG,OAAO,CAAC,KAAK,CAAC,CAAC;gBACxC,IAAI,OAAO,CAAC,YAAY,EAAE;oBACtB,MAAM,GAAG,KAAK,CAAC;AACf,oBAAA,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;AACzC,iBAAA;;AAED,gBAAA,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;AACnC,gBAAA,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;AACpC,aAAA;;YAGD,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAC1D,SAAA;AAED,QAAA,WAAW,EAAE,CAAC;AAEd,QAAA,QAAQ,EAAE,CAAC;AACf,KAAC,CAAC;AAEF,IAAA,MAAM,EAAE,CAAC;;AAGT,IAAA,OAAO,MAAM,OAAO,EAAE,CAAC;AAC3B;;ACzEM,SAAU,QAAQ,CAAI,OAA6B,EAAA;;AAErD,IAAA,IAAI,GAAG,GAAG,UAAU,EAAK,CAAC;AAC1B,IAAA,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;;IAG1B,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,MAAK;QAC9B,MAAM,GAAG,GAAG,UAAU,GAAG,EAAA;;AAErB,YAAA,cAAc,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AAC3B,YAAA,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACb,YAAA,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC9B,SAAC,CAAC;AACF,QAAA,MAAM,EAAE,GAAG,YAAA;AACP,YAAA,IAAI,GAAG,GAAG,OAAO,EAAE,CAAC;AACpB,YAAA,IAAI,SAAS,CAAI,GAAG,CAAC,EAAE;AACnB,gBAAA,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3B,aAAA;AAAM,iBAAA;gBACH,GAAG,CAAC,GAAG,CAAC,CAAC;AACZ,aAAA;AACL,SAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,CAAC;AAChB,KAAC,CAAC;AAEF,IAAA,OAAO,GAAuC,CAAC;AACnD;;SC5BgB,KAAK,GAAA;;;AAGjB,IAAA,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;IAC1B,OAAO;AACH,QAAA,IAAI,EAAE,YAAA;;AAEF,YAAA,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;SACzB;QACD,EAAE,EAAE,UAAU,EAAE,EAAA;AACZ,YAAA,OAAO,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;SAC3B;AACD,QAAA,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,EAAE;;QAEpB,CAAC,kBAAkB,GAAG,IAAI;QAC1B,CAAC,aAAa,GAAG,IAAI;KACxB,CAAC;AACN;;ACfgB,SAAA,IAAI,CAAI,SAAsB,EAAE,MAAwC,EAAA;;IAEpF,SAAS,GAAG,CAAC,CAAkB,EAAA;AAC3B,QAAA,MAAM,GAAG,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;AAEvC,QAAA,IAAI,GAAG,EAAE;;YAEL,MAAM,CAAC,GAAG,CAAC,CAAC;;AAGZ,YAAA,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;AACnB,SAAA;KACJ;;IAGD,MAAM,OAAO,GACT,CAAC,MAAM;AACP,QAAA,IAAI,OAAO,CAAI,CAAC,OAAO,KAAI;YACvB,MAAM,GAAG,OAAO,CAAC;AACrB,SAAC,CAAC,CAAC;;AAGP,IAAA,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;IAE7B,OAAO,OAAO,IAAI,OAAO,CAAC;AAC9B;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@legendapp/state",
|
|
3
|
-
"version": "0.21.
|
|
3
|
+
"version": "0.21.7",
|
|
4
4
|
"description": "legend-state",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"private": false,
|
|
@@ -62,6 +62,16 @@
|
|
|
62
62
|
"require": "./history.js",
|
|
63
63
|
"types": "./history.d.ts"
|
|
64
64
|
},
|
|
65
|
+
"./helpers/*": {
|
|
66
|
+
"import": "./helpers/*.mjs",
|
|
67
|
+
"require": "./helpers/*.js",
|
|
68
|
+
"types": "./helpers/*.d.ts"
|
|
69
|
+
},
|
|
70
|
+
"./react-hooks/*": {
|
|
71
|
+
"import": "./react-hooks/*.mjs",
|
|
72
|
+
"require": "./react-hooks/*.js",
|
|
73
|
+
"types": "./react-hooks/*.d.ts"
|
|
74
|
+
},
|
|
65
75
|
"./types": {
|
|
66
76
|
"types": "./types.d.ts"
|
|
67
77
|
},
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare function useFetch<T extends unknown>(input: RequestInfo | URL, init?: RequestInit, valueType?: 'arrayBuffer' | 'blob' | 'formData' | 'json' | 'text'): import("@legendapp/state").ObservableObject<{
|
|
2
|
+
data?: T;
|
|
3
|
+
error?: any;
|
|
4
|
+
errorStr?: string;
|
|
5
|
+
loading: boolean;
|
|
6
|
+
}>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var fetch = require('@legendapp/state/helpers/fetch');
|
|
6
|
+
var react = require('react');
|
|
7
|
+
|
|
8
|
+
function useFetch(input, init, valueType) {
|
|
9
|
+
return react.useMemo(() => fetch.observableFetch(input, init, valueType), []);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
exports.useFetch = useFetch;
|
|
13
|
+
//# sourceMappingURL=useFetch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFetch.js","sources":["../../../../src/react-hooks/useFetch.ts"],"sourcesContent":[null],"names":["useMemo","observableFetch"],"mappings":";;;;;;;SAGgB,QAAQ,CACpB,KAAwB,EACxB,IAAkB,EAClB,SAAiE,EAAA;AAEjE,IAAA,OAAOA,aAAO,CAAC,MAAMC,qBAAe,CAAI,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE;;;;"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { observableFetch } from '@legendapp/state/helpers/fetch';
|
|
2
|
+
import { useMemo } from 'react';
|
|
3
|
+
|
|
4
|
+
function useFetch(input, init, valueType) {
|
|
5
|
+
return useMemo(() => observableFetch(input, init, valueType), []);
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export { useFetch };
|
|
9
|
+
//# sourceMappingURL=useFetch.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useFetch.mjs","sources":["../../../../src/react-hooks/useFetch.ts"],"sourcesContent":[null],"names":[],"mappings":";;;SAGgB,QAAQ,CACpB,KAAwB,EACxB,IAAkB,EAClB,SAAiE,EAAA;AAEjE,IAAA,OAAO,OAAO,CAAC,MAAM,eAAe,CAAI,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC,CAAC;AACzE;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var react = require('@legendapp/state/react');
|
|
6
|
+
var react$1 = require('react');
|
|
7
|
+
|
|
8
|
+
function useHash() {
|
|
9
|
+
const hasWindow = typeof window !== 'undefined';
|
|
10
|
+
const obs = react.useObservable(hasWindow ? window.location.hash : '');
|
|
11
|
+
react$1.useEffect(() => {
|
|
12
|
+
if (hasWindow) {
|
|
13
|
+
const cb = () => obs.set(window.location.hash);
|
|
14
|
+
window.addEventListener('hashchange', cb);
|
|
15
|
+
return () => {
|
|
16
|
+
window.removeEventListener('hashchange', cb);
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
}, []);
|
|
20
|
+
return obs;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
exports.useHash = useHash;
|
|
24
|
+
//# sourceMappingURL=useHash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHash.js","sources":["../../../../src/react-hooks/useHash.ts"],"sourcesContent":[null],"names":["useObservable","useEffect"],"mappings":";;;;;;;SAIgB,OAAO,GAAA;AACnB,IAAA,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC;AAChD,IAAA,MAAM,GAAG,GAAGA,mBAAa,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAEjEC,iBAAS,CAAC,MAAK;AACX,QAAA,IAAI,SAAS,EAAE;AACX,YAAA,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC/C,YAAA,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAC1C,YAAA,OAAO,MAAK;AACR,gBAAA,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACjD,aAAC,CAAC;AACL,SAAA;KACJ,EAAE,EAAE,CAAC,CAAC;AAEP,IAAA,OAAO,GAAG,CAAC;AACf;;;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { useObservable } from '@legendapp/state/react';
|
|
2
|
+
import { useEffect } from 'react';
|
|
3
|
+
|
|
4
|
+
function useHash() {
|
|
5
|
+
const hasWindow = typeof window !== 'undefined';
|
|
6
|
+
const obs = useObservable(hasWindow ? window.location.hash : '');
|
|
7
|
+
useEffect(() => {
|
|
8
|
+
if (hasWindow) {
|
|
9
|
+
const cb = () => obs.set(window.location.hash);
|
|
10
|
+
window.addEventListener('hashchange', cb);
|
|
11
|
+
return () => {
|
|
12
|
+
window.removeEventListener('hashchange', cb);
|
|
13
|
+
};
|
|
14
|
+
}
|
|
15
|
+
}, []);
|
|
16
|
+
return obs;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export { useHash };
|
|
20
|
+
//# sourceMappingURL=useHash.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHash.mjs","sources":["../../../../src/react-hooks/useHash.ts"],"sourcesContent":[null],"names":[],"mappings":";;;SAIgB,OAAO,GAAA;AACnB,IAAA,MAAM,SAAS,GAAG,OAAO,MAAM,KAAK,WAAW,CAAC;AAChD,IAAA,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC;IAEjE,SAAS,CAAC,MAAK;AACX,QAAA,IAAI,SAAS,EAAE;AACX,YAAA,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;AAC/C,YAAA,MAAM,CAAC,gBAAgB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AAC1C,YAAA,OAAO,MAAK;AACR,gBAAA,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;AACjD,aAAC,CAAC;AACL,SAAA;KACJ,EAAE,EAAE,CAAC,CAAC;AAEP,IAAA,OAAO,GAAG,CAAC;AACf;;;;"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var react = require('@legendapp/state/react');
|
|
6
|
+
var react$1 = require('react');
|
|
7
|
+
|
|
8
|
+
function useHover(ref) {
|
|
9
|
+
const obs = react.useObservable(false);
|
|
10
|
+
react$1.useEffect(() => {
|
|
11
|
+
const handleMouseOver = () => obs.set(true);
|
|
12
|
+
const handleMouseOut = (e) => {
|
|
13
|
+
if (obs.peek() === true) {
|
|
14
|
+
let parent = e.toElement;
|
|
15
|
+
let foundRef = false;
|
|
16
|
+
while (parent && !foundRef) {
|
|
17
|
+
if (parent === ref.current) {
|
|
18
|
+
foundRef = true;
|
|
19
|
+
}
|
|
20
|
+
parent = parent.parentElement;
|
|
21
|
+
}
|
|
22
|
+
if (!foundRef) {
|
|
23
|
+
obs.set(false);
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
const node = ref.current;
|
|
28
|
+
if (node) {
|
|
29
|
+
node.addEventListener('mouseover', handleMouseOver);
|
|
30
|
+
node.addEventListener('mouseout', handleMouseOut);
|
|
31
|
+
return () => {
|
|
32
|
+
node.removeEventListener('mouseover', handleMouseOver);
|
|
33
|
+
node.removeEventListener('mouseout', handleMouseOut);
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
}, [ref.current]);
|
|
37
|
+
return obs;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
exports.useHover = useHover;
|
|
41
|
+
//# sourceMappingURL=useHover.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHover.js","sources":["../../../../src/react-hooks/useHover.ts"],"sourcesContent":[null],"names":["useObservable","useEffect"],"mappings":";;;;;;;AAIM,SAAU,QAAQ,CAAwB,GAA+B,EAAA;AAC3E,IAAA,MAAM,GAAG,GAAGA,mBAAa,CAAC,KAAK,CAAC,CAAC;IAEjCC,iBAAS,CAAC,MAAK;QACX,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5C,QAAA,MAAM,cAAc,GAAG,CAAC,CAAa,KAAI;AACrC,YAAA,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;AACrB,gBAAA,IAAI,MAAM,GAAI,CAAS,CAAC,SAAwB,CAAC;gBACjD,IAAI,QAAQ,GAAG,KAAK,CAAC;AACrB,gBAAA,OAAO,MAAM,IAAI,CAAC,QAAQ,EAAE;AACxB,oBAAA,IAAI,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE;wBACxB,QAAQ,GAAG,IAAI,CAAC;AACnB,qBAAA;AACD,oBAAA,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;AACjC,iBAAA;gBAED,IAAI,CAAC,QAAQ,EAAE;AACX,oBAAA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAClB,iBAAA;AACJ,aAAA;AACL,SAAC,CAAC;AAEF,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;AACzB,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAElD,YAAA,OAAO,MAAK;AACR,gBAAA,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AACvD,gBAAA,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AACzD,aAAC,CAAC;AACL,SAAA;AACL,KAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAElB,IAAA,OAAO,GAAG,CAAC;AACf;;;;"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { useObservable } from '@legendapp/state/react';
|
|
2
|
+
import { useEffect } from 'react';
|
|
3
|
+
|
|
4
|
+
function useHover(ref) {
|
|
5
|
+
const obs = useObservable(false);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
const handleMouseOver = () => obs.set(true);
|
|
8
|
+
const handleMouseOut = (e) => {
|
|
9
|
+
if (obs.peek() === true) {
|
|
10
|
+
let parent = e.toElement;
|
|
11
|
+
let foundRef = false;
|
|
12
|
+
while (parent && !foundRef) {
|
|
13
|
+
if (parent === ref.current) {
|
|
14
|
+
foundRef = true;
|
|
15
|
+
}
|
|
16
|
+
parent = parent.parentElement;
|
|
17
|
+
}
|
|
18
|
+
if (!foundRef) {
|
|
19
|
+
obs.set(false);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
};
|
|
23
|
+
const node = ref.current;
|
|
24
|
+
if (node) {
|
|
25
|
+
node.addEventListener('mouseover', handleMouseOver);
|
|
26
|
+
node.addEventListener('mouseout', handleMouseOut);
|
|
27
|
+
return () => {
|
|
28
|
+
node.removeEventListener('mouseover', handleMouseOver);
|
|
29
|
+
node.removeEventListener('mouseout', handleMouseOut);
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
}, [ref.current]);
|
|
33
|
+
return obs;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
export { useHover };
|
|
37
|
+
//# sourceMappingURL=useHover.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useHover.mjs","sources":["../../../../src/react-hooks/useHover.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIM,SAAU,QAAQ,CAAwB,GAA+B,EAAA;AAC3E,IAAA,MAAM,GAAG,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAEjC,SAAS,CAAC,MAAK;QACX,MAAM,eAAe,GAAG,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5C,QAAA,MAAM,cAAc,GAAG,CAAC,CAAa,KAAI;AACrC,YAAA,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE;AACrB,gBAAA,IAAI,MAAM,GAAI,CAAS,CAAC,SAAwB,CAAC;gBACjD,IAAI,QAAQ,GAAG,KAAK,CAAC;AACrB,gBAAA,OAAO,MAAM,IAAI,CAAC,QAAQ,EAAE;AACxB,oBAAA,IAAI,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE;wBACxB,QAAQ,GAAG,IAAI,CAAC;AACnB,qBAAA;AACD,oBAAA,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC;AACjC,iBAAA;gBAED,IAAI,CAAC,QAAQ,EAAE;AACX,oBAAA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAClB,iBAAA;AACJ,aAAA;AACL,SAAC,CAAC;AAEF,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;AACzB,QAAA,IAAI,IAAI,EAAE;AACN,YAAA,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AACpD,YAAA,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AAElD,YAAA,OAAO,MAAK;AACR,gBAAA,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;AACvD,gBAAA,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;AACzD,aAAC,CAAC;AACL,SAAA;AACL,KAAC,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AAElB,IAAA,OAAO,GAAG,CAAC;AACf;;;;"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var react = require('@legendapp/state/react');
|
|
6
|
+
var react$1 = require('react');
|
|
7
|
+
|
|
8
|
+
function useIsMounted() {
|
|
9
|
+
const obs = react.useObservable(false);
|
|
10
|
+
react$1.useEffect(() => {
|
|
11
|
+
obs.set(true);
|
|
12
|
+
return () => {
|
|
13
|
+
obs.set(false);
|
|
14
|
+
};
|
|
15
|
+
}, []);
|
|
16
|
+
return obs;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
exports.useIsMounted = useIsMounted;
|
|
20
|
+
//# sourceMappingURL=useIsMounted.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useIsMounted.js","sources":["../../../../src/react-hooks/useIsMounted.ts"],"sourcesContent":[null],"names":["useObservable","useEffect"],"mappings":";;;;;;;SAIgB,YAAY,GAAA;AACxB,IAAA,MAAM,GAAG,GAAGA,mBAAa,CAAC,KAAK,CAAC,CAAC;IAEjCC,iBAAS,CAAC,MAAK;AACX,QAAA,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAEd,QAAA,OAAO,MAAK;AACR,YAAA,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AACnB,SAAC,CAAC;KACL,EAAE,EAAE,CAAC,CAAC;AAEP,IAAA,OAAO,GAAG,CAAC;AACf;;;;"}
|