@nymphjs/nymph 1.0.0-beta.124 → 1.0.0-beta.126
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 +12 -0
- package/dist/Entity.d.ts +1 -1
- package/dist/Entity.js +23 -23
- package/dist/Entity.js.map +1 -1
- package/dist/Entity.test.js +4 -4
- package/dist/Entity.test.js.map +1 -1
- package/dist/Entity.types.d.ts +12 -2
- package/dist/driver/NymphDriver.js +18 -7
- package/dist/driver/NymphDriver.js.map +1 -1
- package/dist/driver/testArtifacts.js +2 -1
- package/dist/driver/testArtifacts.js.map +1 -1
- package/dist/testMocks.js +4 -4
- package/dist/testMocks.js.map +1 -1
- package/dist/utils.d.ts +1 -1
- package/dist/utils.js +40 -33
- package/dist/utils.js.map +1 -1
- package/package.json +3 -3
- package/src/Entity.test.ts +4 -4
- package/src/Entity.ts +47 -34
- package/src/Entity.types.ts +12 -2
- package/src/driver/NymphDriver.ts +73 -7
- package/src/driver/testArtifacts.ts +7 -1
- package/src/testMocks.ts +28 -5
- package/src/utils.ts +47 -47
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,18 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [1.0.0-beta.126](https://forge.sciactive.com/sciactive/nymphjs/compare/v1.0.0-beta.125...v1.0.0-beta.126) (2026-09-24)
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
- move reference and dereference logic from entity to driver, save with guaranteed guids ([6a297b9](https://forge.sciactive.com/sciactive/nymphjs/commits/6a297b98eeb528dabaacecbb270ec17286deb9e2))
|
|
11
|
+
|
|
12
|
+
# [1.0.0-beta.125](https://forge.sciactive.com/sciactive/nymphjs/compare/v1.0.0-beta.124...v1.0.0-beta.125) (2026-09-24)
|
|
13
|
+
|
|
14
|
+
### Bug Fixes
|
|
15
|
+
|
|
16
|
+
- client translation errors, pubsub qref translation, entities can contain classes in db now ([2902fe3](https://forge.sciactive.com/sciactive/nymphjs/commits/2902fe3166b456cd0d8012c10991f9a16a4a99bb))
|
|
17
|
+
|
|
6
18
|
# [1.0.0-beta.124](https://forge.sciactive.com/sciactive/nymphjs/compare/v1.0.0-beta.123...v1.0.0-beta.124) (2026-09-24)
|
|
7
19
|
|
|
8
20
|
### Bug Fixes
|
package/dist/Entity.d.ts
CHANGED
|
@@ -297,7 +297,7 @@ export default class Entity<T extends EntityData = EntityData> implements Entity
|
|
|
297
297
|
$getClientEnabledMethods(): string[];
|
|
298
298
|
$delete(): Promise<void>;
|
|
299
299
|
$equals(object: any): boolean;
|
|
300
|
-
$getData(includeSData?: boolean
|
|
300
|
+
$getData(includeSData?: boolean): T;
|
|
301
301
|
$getSData(): SerializedEntityData;
|
|
302
302
|
$getUniques(): Promise<string[]>;
|
|
303
303
|
$getOriginalAcValues(): ACProperties;
|
package/dist/Entity.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { difference, intersection, isEqual } from 'lodash-es';
|
|
2
2
|
import { guid } from '@nymphjs/guid';
|
|
3
3
|
import { EntityConflictError, EntityIsSleepingReferenceError, InvalidParametersError, InvalidStateError, MethodFailedError, } from './errors/index.js';
|
|
4
|
-
import { entitiesToReferences, referencesToEntities, uniqueStrings, } from './utils.js';
|
|
4
|
+
import { classNamesToEntityConstructors, entitiesToReferences, entityConstructorsToClassNames, referencesToEntities, uniqueStrings, } from './utils.js';
|
|
5
5
|
/**
|
|
6
6
|
* Database abstraction object.
|
|
7
7
|
*
|
|
@@ -222,7 +222,7 @@ export default class Entity {
|
|
|
222
222
|
get: (data, name) => {
|
|
223
223
|
this.$check();
|
|
224
224
|
if (this.$sdata.hasOwnProperty(name)) {
|
|
225
|
-
data[name] = referencesToEntities(JSON.parse(this.$sdata[name]), this.$nymph, this.$skipAc);
|
|
225
|
+
data[name] = referencesToEntities(classNamesToEntityConstructors(this.$nymph, JSON.parse(this.$sdata[name]), false), this.$nymph, this.$skipAc);
|
|
226
226
|
delete this.$sdata[name];
|
|
227
227
|
}
|
|
228
228
|
if (data.hasOwnProperty(name)) {
|
|
@@ -259,7 +259,7 @@ export default class Entity {
|
|
|
259
259
|
getOwnPropertyDescriptor: (data, name) => {
|
|
260
260
|
this.$check();
|
|
261
261
|
if (this.$sdata.hasOwnProperty(name)) {
|
|
262
|
-
data[name] = referencesToEntities(JSON.parse(this.$sdata[name]), this.$nymph, this.$skipAc);
|
|
262
|
+
data[name] = referencesToEntities(classNamesToEntityConstructors(this.$nymph, JSON.parse(this.$sdata[name]), false), this.$nymph, this.$skipAc);
|
|
263
263
|
delete this.$sdata[name];
|
|
264
264
|
}
|
|
265
265
|
return Object.getOwnPropertyDescriptor(data, name);
|
|
@@ -454,7 +454,7 @@ export default class Entity {
|
|
|
454
454
|
return this.$sleepingReference;
|
|
455
455
|
}
|
|
456
456
|
const obj = {
|
|
457
|
-
class: this.constructor
|
|
457
|
+
class: entityConstructorsToClassNames(this.constructor),
|
|
458
458
|
guid: this.guid,
|
|
459
459
|
cdate: this.cdate,
|
|
460
460
|
mdate: this.mdate,
|
|
@@ -466,7 +466,7 @@ export default class Entity {
|
|
|
466
466
|
...Object.keys(this.$sdata),
|
|
467
467
|
]) {
|
|
468
468
|
if (this.$privateData.indexOf(key) === -1) {
|
|
469
|
-
obj.data[key] = entitiesToReferences(this.$data[key], true);
|
|
469
|
+
obj.data[key] = entityConstructorsToClassNames(entitiesToReferences(this.$data[key], true));
|
|
470
470
|
}
|
|
471
471
|
}
|
|
472
472
|
return obj;
|
|
@@ -485,6 +485,10 @@ export default class Entity {
|
|
|
485
485
|
data.$setNymph(nymph);
|
|
486
486
|
}
|
|
487
487
|
}
|
|
488
|
+
else if (typeof data === 'function' &&
|
|
489
|
+
data.prototype instanceof Entity) {
|
|
490
|
+
data.nymph = nymph;
|
|
491
|
+
}
|
|
488
492
|
else if (typeof data === 'object') {
|
|
489
493
|
for (let name in data) {
|
|
490
494
|
recurseData(data[name]);
|
|
@@ -525,7 +529,7 @@ export default class Entity {
|
|
|
525
529
|
}
|
|
526
530
|
$clearCache() {
|
|
527
531
|
this.$check();
|
|
528
|
-
this.$putData(this.$getData(false
|
|
532
|
+
this.$putData(this.$getData(false), this.$getSData());
|
|
529
533
|
}
|
|
530
534
|
$getClientEnabledMethods() {
|
|
531
535
|
return this.$clientEnabledMethods;
|
|
@@ -557,11 +561,11 @@ export default class Entity {
|
|
|
557
561
|
if (!isEqual(obTags, myTags)) {
|
|
558
562
|
return false;
|
|
559
563
|
}
|
|
560
|
-
const obData = object.$getData(true, true);
|
|
561
|
-
const myData = this.$getData(true, true);
|
|
564
|
+
const obData = entityConstructorsToClassNames(entitiesToReferences(object.$getData(true), true));
|
|
565
|
+
const myData = entityConstructorsToClassNames(entitiesToReferences(this.$getData(true), true));
|
|
562
566
|
return isEqual(obData, myData);
|
|
563
567
|
}
|
|
564
|
-
$getData(includeSData = false
|
|
568
|
+
$getData(includeSData = false) {
|
|
565
569
|
this.$check();
|
|
566
570
|
if (includeSData) {
|
|
567
571
|
// Access all the serialized properties to initialize them.
|
|
@@ -569,7 +573,7 @@ export default class Entity {
|
|
|
569
573
|
const _unused = this[key];
|
|
570
574
|
}
|
|
571
575
|
}
|
|
572
|
-
return
|
|
576
|
+
return { ...this.$dataStore };
|
|
573
577
|
}
|
|
574
578
|
$getSData() {
|
|
575
579
|
this.$check();
|
|
@@ -635,7 +639,7 @@ export default class Entity {
|
|
|
635
639
|
cdate: this.cdate,
|
|
636
640
|
mdate: this.mdate,
|
|
637
641
|
tags: this.tags,
|
|
638
|
-
...referencesToEntities(this.$dataStore, this.$nymph, this.$skipAc),
|
|
642
|
+
...referencesToEntities(classNamesToEntityConstructors(this.$nymph, this.$dataStore, false), this.$nymph, this.$skipAc),
|
|
639
643
|
};
|
|
640
644
|
}
|
|
641
645
|
$getTags() {
|
|
@@ -677,8 +681,8 @@ export default class Entity {
|
|
|
677
681
|
if (!isEqual(obTags, myTags)) {
|
|
678
682
|
return false;
|
|
679
683
|
}
|
|
680
|
-
const obData = object.$getData(true, true);
|
|
681
|
-
const myData = this.$getData(true, true);
|
|
684
|
+
const obData = entityConstructorsToClassNames(entitiesToReferences(object.$getData(true), true));
|
|
685
|
+
const myData = entityConstructorsToClassNames(entitiesToReferences(this.$getData(true), true));
|
|
682
686
|
return isEqual(obData, myData);
|
|
683
687
|
}
|
|
684
688
|
}
|
|
@@ -742,7 +746,7 @@ export default class Entity {
|
|
|
742
746
|
}
|
|
743
747
|
let nonAllowlistData = {};
|
|
744
748
|
if (this.$allowlistData != null) {
|
|
745
|
-
nonAllowlistData = { ...this.$getData(true
|
|
749
|
+
nonAllowlistData = { ...this.$getData(true) };
|
|
746
750
|
for (const name of this.$allowlistData) {
|
|
747
751
|
delete nonAllowlistData[name];
|
|
748
752
|
}
|
|
@@ -795,7 +799,7 @@ export default class Entity {
|
|
|
795
799
|
this.$privateData.indexOf(name) !== -1) {
|
|
796
800
|
continue;
|
|
797
801
|
}
|
|
798
|
-
this.$data[name] =
|
|
802
|
+
this.$data[name] = patch.set[name];
|
|
799
803
|
}
|
|
800
804
|
for (const name of patch.unset) {
|
|
801
805
|
if ((this.$allowlistData != null &&
|
|
@@ -825,17 +829,13 @@ export default class Entity {
|
|
|
825
829
|
}
|
|
826
830
|
$putData(data, sdata, _source) {
|
|
827
831
|
this.$check();
|
|
828
|
-
const mySdata = sdata ?? this.$getSData();
|
|
829
|
-
for (const name in data) {
|
|
830
|
-
delete mySdata[name];
|
|
831
|
-
}
|
|
832
832
|
for (const name in this.$dataStore) {
|
|
833
833
|
delete this.$dataStore[name];
|
|
834
834
|
}
|
|
835
835
|
for (const name in data) {
|
|
836
|
-
this.$dataStore[name] =
|
|
836
|
+
this.$dataStore[name] = data[name];
|
|
837
837
|
}
|
|
838
|
-
this.$sdata =
|
|
838
|
+
this.$sdata = sdata ?? {};
|
|
839
839
|
// Set original AC values if not set..
|
|
840
840
|
if (this.$originalAcValues == null) {
|
|
841
841
|
this.$originalAcValues = this.$getCurrentAcValues();
|
|
@@ -904,7 +904,7 @@ export default class Entity {
|
|
|
904
904
|
this.tags = entity.tags;
|
|
905
905
|
this.cdate = entity.cdate;
|
|
906
906
|
this.mdate = entity.mdate;
|
|
907
|
-
this.$putData(entity.$getData(false
|
|
907
|
+
this.$putData(entity.$getData(false), entity.$getSData(), 'server');
|
|
908
908
|
return this;
|
|
909
909
|
})
|
|
910
910
|
.finally(() => {
|
|
@@ -973,7 +973,7 @@ export default class Entity {
|
|
|
973
973
|
this.tags = refresh.tags;
|
|
974
974
|
this.cdate = refresh.cdate;
|
|
975
975
|
this.mdate = refresh.mdate;
|
|
976
|
-
this.$putData(refresh.$getData(false
|
|
976
|
+
this.$putData(refresh.$getData(false), refresh.$getSData(), 'server');
|
|
977
977
|
return true;
|
|
978
978
|
}
|
|
979
979
|
$removeTag(...tags) {
|
package/dist/Entity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.js","sourceRoot":"","sources":["../src/Entity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Entity.js","sourceRoot":"","sources":["../src/Entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAerC,OAAO,EACL,mBAAmB,EACnB,8BAA8B,EAC9B,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,8BAA8B,EAC9B,oBAAoB,EACpB,8BAA8B,EAC9B,oBAAoB,EACpB,aAAa,GACd,MAAM,YAAY,CAAC;AAWpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoEG;AACH,MAAM,CAAC,OAAO,OAAO,MAAM;IAGzB;;OAEG;IACI,MAAM,CAAC,KAAK,GAAG,EAAW,CAAC;IAClC;;;OAGG;IACI,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;IAC/B;;;;;OAKG;IACI,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;IAExB,MAAM,CAAQ;IACd,IAAI,GAAkB,IAAI,CAAC;IAC3B,KAAK,GAAkB,IAAI,CAAC;IAC5B,KAAK,GAAkB,IAAI,CAAC;IAC5B,IAAI,GAAa,EAAE,CAAC;IAC3B;;OAEG;IACO,YAAY,CAAS;IAC/B;;OAEG;IACO,UAAU,CAAI;IACxB;;OAEG;IACO,MAAM,CAAuB;IACvC;;OAEG;IACO,KAAK,CAAI;IACnB;;OAEG;IACO,qBAAqB,GAAG,KAAK,CAAC;IACxC;;OAEG;IACO,kBAAkB,GAA2B,IAAI,CAAC;IAC5D;;OAEG;IACO,YAAY,GAA8B,IAAI,CAAC;IACzD;;;;;;;OAOG;IACO,YAAY,GAAa,EAAE,CAAC;IACtC;;OAEG;IACI,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC;IACnC;;;;;;OAMG;IACI,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;IACjC;;;;OAIG;IACI,MAAM,CAAC,oBAAoB,GAAa,EAAE,CAAC;IAClD;;;;;;;;;;;;;;;;;;;OAmBG;IACO,cAAc,GAAa,EAAE,CAAC;IACxC;;;;;;OAMG;IACO,cAAc,CAAY;IACpC;;;;OAIG;IACO,cAAc,GAAa,EAAE,CAAC;IACxC;;;OAGG;IACO,cAAc,CAAY;IACpC;;OAEG;IACO,qBAAqB,GAAa,EAAE,CAAC;IAC/C;;;OAGG;IACI,MAAM,CAAC,0BAA0B,GAAa,EAAE,CAAC;IACxD;;OAEG;IACK,OAAO,GAAY,KAAK,CAAC;IACjC;;OAEG;IACK,iBAAiB,GAAwB,IAAI,CAAC;IACtD;;OAEG;IACK,eAAe,GAAkB,IAAI,CAAC;IAU9C;;OAEG;IACH,YAAmB,GAAG,KAAY;QAChC,IAAI,CAAC,MAAM,GAAI,IAAI,CAAC,WAAiC,CAAC,KAAK,CAAC;QAC5D,IAAI,CAAC,YAAY,GAAG;YAClB,GAAG,EAAE,CAAC,IAAgB,EAAE,IAAY,EAAE,EAAE;gBACtC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,OAAO,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC;YAC7C,CAAC;YAED,GAAG,EAAE,CAAC,IAAgB,EAAE,IAAY,EAAE,EAAE;gBACtC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAC/B,8BAA8B,CAC5B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAC7B,KAAK,CACN,EACD,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACb,CAAC;oBACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,GAAG,EAAE,CAAC,IAAgB,EAAE,IAAY,EAAE,KAAU,EAAE,EAAE;gBAClD,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBACnB,OAAO,IAAI,CAAC;YACd,CAAC;YAED,cAAc,EAAE,CAAC,IAAgB,EAAE,IAAY,EAAE,EAAE;gBACjD,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,OAAO,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAClC,CAAC;gBACD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC9B,OAAO,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,cAAc,EAAE,CACd,IAAgB,EAChB,IAAY,EACZ,UAA8B,EAC9B,EAAE;gBACF,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC9C,OAAO,IAAI,CAAC;YACd,CAAC;YAED,wBAAwB,EAAE,CAAC,IAAgB,EAAE,IAAY,EAAE,EAAE;gBAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAC/B,8BAA8B,CAC5B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAC7B,KAAK,CACN,EACD,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACb,CAAC;oBACF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBAC3B,CAAC;gBACD,OAAO,MAAM,CAAC,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrD,CAAC;YAED,OAAO,EAAE,CAAC,IAAgB,EAAE,EAAE;gBAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;gBAEd,OAAO,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,MAAM,CAC5C,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CACxC,CAAC;YACJ,CAAC;SACF,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,EAAO,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QAEjB,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;QAE3D,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE;YACrB,GAAG,EAAE,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;gBACpC,IACE,OAAO,IAAI,KAAK,QAAQ;oBACxB,IAAI,IAAI,MAAM;oBACd,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,EAC5B,CAAC;oBACD,OAAO,IAAI,IAAI,MAAM,CAAC;gBACxB,CAAC;gBAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,OAAO,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC;YAC9B,CAAC;YAED,GAAG,EAAE,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;gBACpC,IACE,OAAO,IAAI,KAAK,QAAQ;oBACxB,IAAI,IAAI,MAAM;oBACd,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,EAC5B,CAAC;oBACD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,CAAC;oBACD,OAAQ,MAAc,CAAC,IAAI,CAAC,CAAC;gBAC/B,CAAC;gBAED,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACzB,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5B,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,GAAG,EAAE,CAAC,MAAc,EAAE,IAAY,EAAE,KAAU,EAAE,EAAE;gBAChD,IACE,OAAO,IAAI,KAAK,QAAQ;oBACxB,IAAI,IAAI,MAAM;oBACd,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,EAC5B,CAAC;oBACD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,CAAC;oBACA,MAAc,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,EAAE,CAAC;oBACb,MAAM,CAAC,KAAa,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;gBACtC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,cAAc,EAAE,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;gBAC/C,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;oBACnB,OAAO,OAAQ,MAAc,CAAC,IAAI,CAAC,CAAC;gBACtC,CAAC;qBAAM,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBAChC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,OAAO,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACnC,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,cAAc,EAAE,CAAC,MAAc,EAAE,EAAE;gBACjC,OAAO,MAAM,CAAC,WAAW,CAAC,SAAS,CAAC;YACtC,CAAC;YAED,cAAc,EAAE,CACd,MAAc,EACd,IAAY,EACZ,UAA8B,EAC9B,EAAE;gBACF,IACE,OAAO,IAAI,KAAK,QAAQ;oBACxB,IAAI,IAAI,MAAM;oBACd,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,EAC5B,CAAC;oBACD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,CAAC;oBACD,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;gBAClD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;gBACxD,CAAC;gBACD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,wBAAwB,EAAE,CAAC,MAAc,EAAE,IAAY,EAAE,EAAE;gBACzD,IACE,OAAO,IAAI,KAAK,QAAQ;oBACxB,IAAI,IAAI,MAAM;oBACd,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,EAC5B,CAAC;oBACD,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,OAAO,EAAE,CAAC;wBAC5D,IAAI,CAAC,MAAM,EAAE,CAAC;oBAChB,CAAC;oBACD,OAAO,MAAM,CAAC,wBAAwB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACvD,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,OAAO,MAAM,CAAC,wBAAwB,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;gBAC7D,CAAC;YACH,CAAC;YAED,OAAO,EAAE,CAAC,MAAc,EAAE,EAAE;gBAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,OAAO,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,MAAM,CAC9C,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CACzC,CAAC;YACJ,CAAC;SACF,CAAc,CAAC;IAClB,CAAC;IAED;;;;;;OAMG;IACI,MAAM,CAAC,KAAK,CAAC,OAAO,CAIzB,IAAa;QAEb,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,MACb,IACD,CAAC,KAAK,CAAC,SAAS,CACf;gBACE,KAAK,EAAE,IAAoC;aAC5C,EACD,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CACpB,CAAC;YACF,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;gBACnB,OAAO,MAA+B,CAAC;YACzC,CAAC;QACH,CAAC;QACD,OAAO,MAA+B,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,WAAW;QAGvB,OAAO,IAAI,IAAI,EAA2B,CAAC;IAC7C,CAAC;IAED;;;;;;;;OAQG;IACI,MAAM,CAAC,gBAAgB,CAI5B,SAA0B;QAE1B,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAClC,OAAO,MAA+B,CAAC;IACzC,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,EAC7B,IAAI,EACJ,KAAK,EACL,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,KAAK,GAQN;QACC,MAAM,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;YACjB,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACrB,CAAC;QACD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACvB,CAAC;QACD,IAAI,KAAK,IAAI,IAAI,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACvB,CAAC;QACD,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACnB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC7B,OAAO,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;IACpC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACI,MAAM,CAAC,UAAU,CAAC,KAAa,EAAE,KAAU;QAChD,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,MAAM;QACX,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACjC,CAAC;QACD,MAAM,GAAG,GAAe;YACtB,KAAK,EAAE,8BAA8B,CAAC,IAAI,CAAC,WAAW,CAAC;YACvD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;YACpB,IAAI,EAAE,EAAE;SACT,CAAC;QACF,KAAK,MAAM,GAAG,IAAI;YAChB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;YAC/B,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;SAC5B,EAAE,CAAC;YACF,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBAC1C,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,8BAA8B,CAC5C,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC,CAC5C,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEM,SAAS,CAAC,KAAY;QAC3B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACpB,MAAM,WAAW,GAAG,CAAC,IAAS,EAAE,EAAE;gBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,KAAK,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;wBACtB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;qBAAM,IAAI,IAAI,YAAY,MAAM,EAAE,CAAC;oBAClC,IAAI,IAAI,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;wBAC1B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBACxB,CAAC;gBACH,CAAC;qBAAM,IACL,OAAO,IAAI,KAAK,UAAU;oBAC1B,IAAI,CAAC,SAAS,YAAY,MAAM,EAChC,CAAC;oBACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACrB,CAAC;qBAAM,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACpC,KAAK,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;wBACtB,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YACF,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAEM,kBAAkB;QACvB,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;QACD,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,EAAE,CAAC;YACjC,IAAI,CAAC,eAAe,GAAG,IAAI,EAAE,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAEM,OAAO,CAAC,GAAG,IAAc;QAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC;IAEM,YAAY,CAAC,KAAY,EAAE,MAAM,GAAG,KAAK;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,CAAC,CAAC;QACZ,CAAC;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC3D,OAAO,CAAC,CAAC;YACX,CAAC;QACH,CAAC;QACD,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;IAEM,WAAW;QAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;IAEM,wBAAwB;QAC7B,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,OAAO;QAClB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAEnB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC5C,MAAM,IAAI,iBAAiB,CAAC,0BAA0B,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAEM,OAAO,CAAC,MAAW;QACxB,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,CAAC,MAAM,YAAY,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;YAC7B,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,MAAM,GAAG,8BAA8B,CAC3C,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAClD,CAAC;QACF,MAAM,MAAM,GAAG,8BAA8B,CAC3C,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAChD,CAAC;QACF,OAAO,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC;IAEM,QAAQ,CAAC,YAAY,GAAG,KAAK;QAClC,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,YAAY,EAAE,CAAC;YACjB,2DAA2D;YAC3D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC9B,MAAM,OAAO,GAAS,IAAY,CAAC,GAAG,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,OAAO,EAAE,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;IAChC,CAAC;IAEM,SAAS;QACd,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEM,KAAK,CAAC,WAAW;QACtB,OAAO,EAAE,CAAC;IACZ,CAAC;IAEM,oBAAoB;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,OAAO,IAAI,CAAC,iBAAiB,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC9D,CAAC;IAEM,mBAAmB;QACxB,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,SAAS,EAAE;YACtB,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE;YACvB,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,IAAI;YACjC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI;YACnC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,IAAI;YACnC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE;YAC5B,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE;YAC9B,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE;SAC7B,CAAC;IACJ,CAAC;IAEM,SAAS;QACd,IAAI,MAAM,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC/C,IACE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC;gBACxB,SAAS,CAAC,CAAC,CAAC,KAAK,wBAAwB,EACzC,CAAC;gBACD,OAAO,SAAS,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAkB,CAAC;IAC1D,CAAC;IACM,SAAS;QACd,IAAI,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACjD,IACE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC;gBACzB,UAAU,CAAC,CAAC,CAAC,KAAK,wBAAwB,EAC1C,CAAC;gBACD,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,CAAkB,CAAC;IAC3D,CAAC;IACM,aAAa;QAClB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAgC,EAAE,EAAE,CAClE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAClD,IAAI,IAAI,CAA6B,CAAC;IACzC,CAAC;IACM,cAAc;QACnB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,MAAgC,EAAE,EAAE,CACnE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAClD,IAAI,IAAI,CAA6B,CAAC;IACzC,CAAC;IACM,aAAa;QAClB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,MAAgC,EAAE,EAAE,CAClE,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAClD,IAAI,IAAI,CAA6B,CAAC;IACzC,CAAC;IAEM,eAAe;QACpB,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,2DAA2D;QAC3D,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,OAAO,GAAS,IAAY,CAAC,GAAG,CAAC,CAAC;QAC1C,CAAC;QACD,OAAO;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,oBAAoB,CACrB,8BAA8B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,EACnE,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,CACb;SACF,CAAC;IACJ,CAAC;IAEM,QAAQ;QACb,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEM,OAAO,CAAC,GAAG,IAAc;QAC9B,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;gBAClC,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,QAAQ,CAAC,KAAY,EAAE,MAAM,GAAG,KAAK;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACjD,CAAC;IAEM,GAAG,CAAC,MAAW;QACpB,IAAI,CAAC,CAAC,MAAM,YAAY,MAAM,CAAC,EAAE,CAAC;YAChC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC;QACnC,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;gBAC7B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,MAAM,MAAM,GAAG,8BAA8B,CAC3C,oBAAoB,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAClD,CAAC;YACF,MAAM,MAAM,GAAG,8BAA8B,CAC3C,oBAAoB,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,CAChD,CAAC;YACF,OAAO,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAEM,eAAe,CAAC,KAAiB,EAAE,aAAa,GAAG,KAAK;QAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,mBAAmB,CAC3B,kDAAkD,CACnD,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;YACxC,MAAM,IAAI,mBAAmB,CAAC,uCAAuC,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAEzB,mBAAmB;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QACpC,MAAM,aAAa,GAAG,YAAY,CAAC,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;QACrE,IAAI,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAEvD,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAChC,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC,CAAC;QAChC,IAAI,CAAC,OAAO,CAAC,GAAG,aAAa,EAAE,GAAG,IAAI,CAAC,CAAC;QAExC,mBAAmB;QACnB,MAAM,IAAI,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,WAAW,GAAe,EAAE,CAAC;QACnC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACrC,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACvB,WAAW,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACvC,CAAC;YACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAe,EAAE,CAAC;QACrC,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,IACE,CAAE,IAAI,CAAC,WAAiC,CAAC,KAAK,KAAK,MAAM;gBACtD,IAAI,CAAC,WAAiC,CAAC,KAAK,KAAK,OAAO,CAAC;gBAC5D,CAAE,IAAI,CAAC,MAAM,CAAC,OAAe,CAAC,WAAW;gBACzC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,OAAe,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAC5D,eAAe,CAChB;oBACC,CAAE,IAAI,CAAC,MAAM,CAAC,OAAe,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAC3D,cAAc,CACf,CAAC,EACJ,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACvB,aAAa,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC;YACD,IAAI,IAAI,IAAI,IAAI,EAAE,CAAC;gBACjB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;QAED,IAAI,gBAAgB,GAAe,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC;YAChC,gBAAgB,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;gBACvC,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAChC,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;gBACxB,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;oBAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC;YACZ,GAAG,gBAAgB;YACnB,GAAG,IAAI;YACP,GAAG,aAAa;YAChB,GAAG,WAAW;SACf,CAAC,CAAC;IACL,CAAC;IAEM,gBAAgB,CAAC,KAAkB,EAAE,aAAa,GAAG,KAAK;QAC/D,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,mBAAmB,CAC3B,kDAAkD,CACnD,CAAC;QACJ,CAAC;QAED,4BAA4B;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAClC,IAAI,KAAK,GAAG,SAAS,IAAI,CAAC,aAAa,EAAE,CAAC;YACxC,MAAM,IAAI,mBAAmB,CAAC,uCAAuC,CAAC,CAAC;QACzE,CAAC;QACD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAEzB,MAAM,cAAc,GAAG,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACxB,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC/B,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9B,IACE,CAAE,IAAI,CAAC,WAAiC,CAAC,KAAK,KAAK,MAAM;gBACtD,IAAI,CAAC,WAAiC,CAAC,KAAK,KAAK,OAAO,CAAC;gBAC5D,CAAE,IAAI,CAAC,MAAM,CAAC,OAAe,CAAC,WAAW;gBACzC,CAAC,CAAE,IAAI,CAAC,MAAM,CAAC,OAAe,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAC5D,eAAe,CAChB;oBACC,CAAE,IAAI,CAAC,MAAM,CAAC,OAAe,CAAC,WAAW,CAAC,SAAS,EAAE,QAAQ,CAC3D,cAAc,CACf,CAAC,EACJ,CAAC;gBACD,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC5B,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YAC7B,IACE,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI;gBAC1B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3C,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACtC,CAAC;gBACD,SAAS;YACX,CAAC;YACA,IAAI,CAAC,KAAa,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IACE,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI;gBAC1B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC3C,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACnC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EACtC,CAAC;gBACD,SAAS;YACX,CAAC;YACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAChC,IACE,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI;gBAC1B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EACvC,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACpB,CAAC;QAED,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;YACnC,IACE,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI;gBAC1B,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC1C,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EACvC,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAEM,QAAQ,CACb,IAAgB,EAChB,KAA4B,EAC5B,OAAkB;QAElB,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACvB,IAAI,CAAC,UAAkB,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,KAAK,IAAI,EAAE,CAAC;QAC1B,sCAAsC;QACtC,IAAI,IAAI,CAAC,iBAAiB,IAAI,IAAI,EAAE,CAAC;YACnC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACtD,CAAC;IACH,CAAC;IAED;;;OAGG;IACO,eAAe,CAAC,SAA0B;QAClD,IACE,SAAS,CAAC,MAAM,KAAK,CAAC;YACtB,SAAS,CAAC,CAAC,CAAC,KAAK,wBAAwB;YACzC,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ;YAChC,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,QAAQ,EAChC,CAAC;YACD,MAAM,IAAI,sBAAsB,CAC9B,gEAAgE;gBAC9D,YAAY,CACf,CAAC;QACJ,CAAC;QACD,MAAM,SAAS,GAAY,IAAI,CAAC,WAAmB,CAAC,KAAK,CAAC;QAC1D,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,IAAI,sBAAsB,CAC9B,oEAAoE;gBAClE,4BAA4B,SAAS,CAAC,CAAC,CAAC,iBAAiB,SAAS,GAAG,CACxE,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;IACtC,CAAC;IAED;;OAEG;IACO,MAAM;QACd,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC;YAClE,MAAM,IAAI,8BAA8B,CACtC,iFAAiF,CAClF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACI,OAAO;QACZ,OAAO,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC;IACvE,CAAC;IAED;;OAEG;IACI,KAAK;QACV,IAAI,CAAC,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC;YACnE,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YACzB,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QACD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;YACzC,MAAM,IAAI,iBAAiB,CACzB,kDAAkD,CACnD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAC5C,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAC3B,CAAC;YACF,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,MAAM;iBAC5B,SAAS,CACR;gBACE,KAAK,EAAE,WAAW;gBAClB,MAAM,EAAE,IAAI,CAAC,OAAO;aACrB,EACD,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAChD;iBACA,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE;gBACf,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;oBAC1C,OAAO,OAAO,CAAC,MAAM,CACnB,IAAI,iBAAiB,CACnB,gDAAgD,CACjD,CACF,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,qBAAqB,GAAG,KAAK,CAAC;gBACnC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;gBAC/B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;gBACxB,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;gBACxB,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC1B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;gBAC1B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAEpE,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;iBACD,OAAO,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,CAAC,CAAC,CAAC;QACP,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAEM,QAAQ,CAAC,KAAc;QAC5B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,qCAAqC;YACrC,MAAM,SAAS,GAAG,GAAG,EAAE;gBACrB,IAAI,QAAQ,CAAC;gBACb,wEAAwE;gBACxE,oBAAoB;gBACpB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,QAAQ,GAAG,KAAK,GAAG,CAAC,CAAC;gBACvB,CAAC;gBACD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;oBAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;oBACd,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,EAAE,CAAC;gBACpB,gDAAgD;gBAChD,KAAK,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;oBACpD,IAAI,KAAK,YAAY,MAAM,IAAI,KAAK,CAAC,qBAAqB,EAAE,CAAC;wBAC3D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC1C,CAAC;yBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;wBAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;4BACtC,IACE,KAAK,CAAC,CAAC,CAAC,YAAY,MAAM;gCAC1B,KAAK,CAAC,CAAC,CAAC,CAAC,qBAAqB,EAC9B,CAAC;gCACD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;4BAC7C,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,CACxB,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EACnB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAC3B,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC;YACH,CAAC,CAAC;YAEF,IAAI,IAAI,CAAC,qBAAqB,EAAE,CAAC;gBAC/B,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3D,CAAC;iBAAM,CAAC;gBACN,SAAS,EAAE,CAAC;YACd,CAAC;QACH,CAAC,CAAuB,CAAC;IAC3B,CAAC;IAEM,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAEnB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YACtB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,SAAS,CACzC;YACE,KAAK,EAAE,IAAI,CAAC,WAAgC;YAC5C,SAAS,EAAE,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,OAAO;SACrB,EACD,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAC/B,CAAC;QACF,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;YACpB,MAAM,IAAI,iBAAiB,CAAC,2CAA2C,CAAC,CAAC;QAC3E,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC;QACtE,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,UAAU,CAAC,GAAG,IAAc;QACjC,IAAI,CAAC,MAAM,EAAE,CAAC;QAEd,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QAEnB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,iBAAiB,CAAC,wBAAwB,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAEM,YAAY,CAAC,YAAsB;QACxC,IAAI,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC,kBAAkB,IAAI,IAAI,EAAE,CAAC;YAClE,OAAO,IAAI,CAAC,kBAAkB,CAAC;QACjC,CAAC;QACD,IAAI,YAAY,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,wBAAwB;YACxB,IAAI,CAAC,kBAAkB,EAAE;YACxB,IAAI,CAAC,WAAmB,CAAC,KAAe;SACvB,CAAC;IACvB,CAAC;IAEM,UAAU,CAAC,MAAe;QAC/B,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,CAAC;CACF"}
|
package/dist/Entity.test.js
CHANGED
|
@@ -218,7 +218,7 @@ describe('Entity', () => {
|
|
|
218
218
|
null: null,
|
|
219
219
|
uniques: [],
|
|
220
220
|
},
|
|
221
|
-
class: 'TestModel',
|
|
221
|
+
class: ['nymph_class_reference', 'TestModel'],
|
|
222
222
|
});
|
|
223
223
|
});
|
|
224
224
|
it('incoming JSON works', async () => {
|
|
@@ -267,7 +267,7 @@ describe('Entity', () => {
|
|
|
267
267
|
testEntity.cdate = 13;
|
|
268
268
|
testEntity.mdate = 14;
|
|
269
269
|
testEntity.$jsonAcceptPatch({
|
|
270
|
-
class: TestModel
|
|
270
|
+
class: TestModel,
|
|
271
271
|
guid: testEntity.guid,
|
|
272
272
|
mdate: 15,
|
|
273
273
|
set: {
|
|
@@ -306,7 +306,7 @@ describe('Entity', () => {
|
|
|
306
306
|
testEntity.cdate = 13;
|
|
307
307
|
testEntity.mdate = 14;
|
|
308
308
|
testEntity.$jsonAcceptPatch({
|
|
309
|
-
class: TestModel
|
|
309
|
+
class: TestModel,
|
|
310
310
|
guid: testEntity.guid,
|
|
311
311
|
mdate: 15,
|
|
312
312
|
set: {
|
|
@@ -343,7 +343,7 @@ describe('Entity', () => {
|
|
|
343
343
|
thrownName = '';
|
|
344
344
|
try {
|
|
345
345
|
testEntity.$jsonAcceptPatch({
|
|
346
|
-
class: TestModel
|
|
346
|
+
class: TestModel,
|
|
347
347
|
guid: data.guid,
|
|
348
348
|
mdate: data.mdate,
|
|
349
349
|
set: {
|
package/dist/Entity.test.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Entity.test.js","sourceRoot":"","sources":["../src/Entity.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Entity.test.js","sourceRoot":"","sources":["../src/Entity.test.ts"],"names":[],"mappings":"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"}
|
package/dist/Entity.types.d.ts
CHANGED
|
@@ -11,6 +11,7 @@ export type ACProperties = {
|
|
|
11
11
|
acFull: (string | null)[] | null;
|
|
12
12
|
};
|
|
13
13
|
export type EntityReference = ['nymph_entity_reference', string, string];
|
|
14
|
+
export type ClassReference = ['nymph_class_reference', string];
|
|
14
15
|
export type EntityData = {
|
|
15
16
|
[k: string]: any;
|
|
16
17
|
};
|
|
@@ -25,7 +26,7 @@ export type EntityObject = {
|
|
|
25
26
|
[k: string]: any;
|
|
26
27
|
};
|
|
27
28
|
export type EntityJson = {
|
|
28
|
-
class:
|
|
29
|
+
class: EntityConstructor;
|
|
29
30
|
guid: string | null;
|
|
30
31
|
cdate: number | null;
|
|
31
32
|
mdate: number | null;
|
|
@@ -33,7 +34,7 @@ export type EntityJson = {
|
|
|
33
34
|
data: EntityData;
|
|
34
35
|
};
|
|
35
36
|
export type EntityPatch = {
|
|
36
|
-
class:
|
|
37
|
+
class: EntityConstructor;
|
|
37
38
|
guid: string;
|
|
38
39
|
mdate: number | null;
|
|
39
40
|
set: EntityData;
|
|
@@ -240,6 +241,9 @@ export interface EntityInterface extends DataObjectInterface {
|
|
|
240
241
|
/**
|
|
241
242
|
* Accept JSON data from the client.
|
|
242
243
|
*
|
|
244
|
+
* The given data must already be dereferenced (class references turned into
|
|
245
|
+
* classes and entity references turned into entities).
|
|
246
|
+
*
|
|
243
247
|
* This function uses the security protection lists:
|
|
244
248
|
*
|
|
245
249
|
* - $protectedTags
|
|
@@ -256,6 +260,9 @@ export interface EntityInterface extends DataObjectInterface {
|
|
|
256
260
|
/**
|
|
257
261
|
* Accept JSON patch from the client.
|
|
258
262
|
*
|
|
263
|
+
* The given data must already be dereferenced (class references turned into
|
|
264
|
+
* classes and entity references turned into entities).
|
|
265
|
+
*
|
|
259
266
|
* This function uses the security protection lists:
|
|
260
267
|
*
|
|
261
268
|
* - $protectedTags
|
|
@@ -275,6 +282,9 @@ export interface EntityInterface extends DataObjectInterface {
|
|
|
275
282
|
* This should only be used by Nymph to push the data from storage or the
|
|
276
283
|
* client.
|
|
277
284
|
*
|
|
285
|
+
* The given data must already be dereferenced (class references turned into
|
|
286
|
+
* classes and entity references turned into entities).
|
|
287
|
+
*
|
|
278
288
|
* `sdata` is used by Nymph to avoid unserializing data that hasn't been
|
|
279
289
|
* requested yet.
|
|
280
290
|
*
|
|
@@ -3,8 +3,9 @@ import { difference } from 'lodash-es';
|
|
|
3
3
|
import ReadLines from 'n-readlines';
|
|
4
4
|
import { strtotime } from 'locutus/php/datetime/index';
|
|
5
5
|
import { Tokenizer } from '@sciactive/tokenizer';
|
|
6
|
+
import Entity from '../Entity.js';
|
|
6
7
|
import { ClassNotAvailableError, InvalidParametersError, UnableToConnectError, } from '../errors/index.js';
|
|
7
|
-
import { xor } from '../utils.js';
|
|
8
|
+
import { classNamesToEntityConstructors, entitiesToReferences, entityConstructorsToClassNames, referencesToEntities, xor, } from '../utils.js';
|
|
8
9
|
// from: https://stackoverflow.com/a/6969486/664915
|
|
9
10
|
function escapeRegExp(string) {
|
|
10
11
|
return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); // $& means the whole matched string
|
|
@@ -448,8 +449,15 @@ export default class NymphDriver {
|
|
|
448
449
|
guids.indexOf(value[1]) !== -1) {
|
|
449
450
|
return true;
|
|
450
451
|
}
|
|
452
|
+
if (value instanceof Entity &&
|
|
453
|
+
value.guid != null &&
|
|
454
|
+
guids.indexOf(value.guid) !== -1) {
|
|
455
|
+
return true;
|
|
456
|
+
}
|
|
451
457
|
// Search through arrays and objects looking for the reference.
|
|
452
|
-
if (value != null &&
|
|
458
|
+
if (value != null &&
|
|
459
|
+
(Array.isArray(value) ||
|
|
460
|
+
(typeof value === 'object' && !(value instanceof Entity)))) {
|
|
453
461
|
for (const key in value) {
|
|
454
462
|
if (this.entityReferenceSearch(value[key], guids)) {
|
|
455
463
|
return true;
|
|
@@ -812,7 +820,7 @@ export default class NymphDriver {
|
|
|
812
820
|
entity.cdate = cdate;
|
|
813
821
|
entity.mdate = mdate;
|
|
814
822
|
entity.tags = tags;
|
|
815
|
-
entity.$putData(data, sdata, 'server');
|
|
823
|
+
entity.$putData(classNamesToEntityConstructors(this.nymph, referencesToEntities(data, this.nymph, !!options.skipAc, false), false), sdata, 'server');
|
|
816
824
|
return {
|
|
817
825
|
result: Promise.resolve(null),
|
|
818
826
|
process: () => [entity],
|
|
@@ -928,10 +936,10 @@ export default class NymphDriver {
|
|
|
928
936
|
cdate,
|
|
929
937
|
mdate,
|
|
930
938
|
tags,
|
|
931
|
-
...data,
|
|
939
|
+
...classNamesToEntityConstructors(this.nymph, referencesToEntities(data, this.nymph, !!options.skipAc, false), false),
|
|
932
940
|
...Object.fromEntries(Object.entries(sdata).map(([name, value]) => [
|
|
933
941
|
name,
|
|
934
|
-
JSON.parse(value),
|
|
942
|
+
classNamesToEntityConstructors(this.nymph, referencesToEntities(JSON.parse(value), this.nymph, !!options.skipAc, false), false),
|
|
935
943
|
])),
|
|
936
944
|
});
|
|
937
945
|
}
|
|
@@ -949,7 +957,7 @@ export default class NymphDriver {
|
|
|
949
957
|
if (this.putDataCounter == 100) {
|
|
950
958
|
throw new Error('Infinite loop detected in Entity loading.');
|
|
951
959
|
}
|
|
952
|
-
entity.$putData(data, sdata, 'server');
|
|
960
|
+
entity.$putData(classNamesToEntityConstructors(this.nymph, referencesToEntities(data, this.nymph, !!options.skipAc, false), false), sdata, 'server');
|
|
953
961
|
this.putDataCounter--;
|
|
954
962
|
entities.push(entity);
|
|
955
963
|
}
|
|
@@ -992,7 +1000,10 @@ export default class NymphDriver {
|
|
|
992
1000
|
}
|
|
993
1001
|
}
|
|
994
1002
|
const tags = difference(entity.tags, ['']);
|
|
995
|
-
const data =
|
|
1003
|
+
const data = entityConstructorsToClassNames(
|
|
1004
|
+
// Explicitly save references to entities that aren't saved yet to help
|
|
1005
|
+
// save circular references by saving with a guaranteed GUID.
|
|
1006
|
+
entitiesToReferences(entity.$getData(), false));
|
|
996
1007
|
const sdata = entity.$getSData();
|
|
997
1008
|
const uniques = await entity.$getUniques();
|
|
998
1009
|
const EntityClass = entity.constructor;
|