@spearwolf/shadow-objects 0.30.2 → 0.32.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +23 -1
- package/bundle.js +13 -13
- package/package.json +3 -3
- package/src/bundle.js +4 -4
- package/src/bundle.js.map +7 -1
- package/src/constants.js +53 -40
- package/src/constants.js.map +7 -1
- package/src/create-worker.bundle.js +6 -8
- package/src/create-worker.bundle.js.map +7 -1
- package/src/create-worker.js +5 -2
- package/src/create-worker.js.map +7 -1
- package/src/elements/ShaeElement.js +57 -54
- package/src/elements/ShaeElement.js.map +7 -1
- package/src/elements/ShaeEntElement.d.ts.map +1 -1
- package/src/elements/ShaeEntElement.js +320 -341
- package/src/elements/ShaeEntElement.js.map +7 -1
- package/src/elements/ShaePropElement.js +312 -320
- package/src/elements/ShaePropElement.js.map +7 -1
- package/src/elements/ShaeWorkerElement.js +234 -229
- package/src/elements/ShaeWorkerElement.js.map +7 -1
- package/src/elements/constants.js +37 -22
- package/src/elements/constants.js.map +7 -1
- package/src/elements/events.d.ts +1 -1
- package/src/elements/events.d.ts.map +1 -1
- package/src/elements/events.js +1 -2
- package/src/elements/events.js.map +7 -1
- package/src/elements.js +4 -4
- package/src/elements.js.map +7 -1
- package/src/in-the-dark/Entity.d.ts +1 -1
- package/src/in-the-dark/Entity.d.ts.map +1 -1
- package/src/in-the-dark/Entity.js +299 -293
- package/src/in-the-dark/Entity.js.map +7 -1
- package/src/in-the-dark/Kernel.d.ts.map +1 -1
- package/src/in-the-dark/Kernel.js +556 -533
- package/src/in-the-dark/Kernel.js.map +7 -1
- package/src/in-the-dark/Registry.d.ts.map +1 -1
- package/src/in-the-dark/Registry.js +101 -104
- package/src/in-the-dark/Registry.js.map +7 -1
- package/src/in-the-dark/ShadowObject.d.ts.map +1 -1
- package/src/in-the-dark/ShadowObject.js +21 -23
- package/src/in-the-dark/ShadowObject.js.map +7 -1
- package/src/in-the-dark/SignalsPath.d.ts.map +1 -1
- package/src/in-the-dark/SignalsPath.js +139 -123
- package/src/in-the-dark/SignalsPath.js.map +7 -1
- package/src/in-the-dark/events.js +11 -9
- package/src/in-the-dark/events.js.map +7 -1
- package/src/in-the-dark/importModule.js +31 -29
- package/src/in-the-dark/importModule.js.map +7 -1
- package/src/index.d.ts +2 -2
- package/src/index.d.ts.map +1 -1
- package/src/index.js +14 -14
- package/src/index.js.map +7 -1
- package/src/shadow-objects.js +6 -6
- package/src/shadow-objects.js.map +7 -1
- package/src/shadow-objects.worker.js +3 -3
- package/src/shadow-objects.worker.js.map +7 -1
- package/src/shae-ent.js +3 -3
- package/src/shae-ent.js.map +7 -1
- package/src/shae-prop.js +3 -3
- package/src/shae-prop.js.map +7 -1
- package/src/shae-worker.js +3 -3
- package/src/shae-worker.js.map +7 -1
- package/src/types.d.ts +3 -2
- package/src/types.d.ts.map +1 -1
- package/src/types.js +1 -2
- package/src/types.js.map +7 -1
- package/src/utils/ConsoleLogger.js +179 -185
- package/src/utils/ConsoleLogger.js.map +7 -1
- package/src/utils/FrameLoop.js +41 -40
- package/src/utils/FrameLoop.js.map +7 -1
- package/src/utils/array-utils.js +22 -24
- package/src/utils/array-utils.js.map +7 -1
- package/src/utils/attr-utils.js +15 -11
- package/src/utils/attr-utils.js.map +7 -1
- package/src/utils/constants.js +5 -2
- package/src/utils/constants.js.map +7 -1
- package/src/utils/generateUUID.d.ts.map +1 -1
- package/src/utils/generateUUID.js +269 -32
- package/src/utils/generateUUID.js.map +7 -1
- package/src/utils/props-utils.js +34 -43
- package/src/utils/props-utils.js.map +7 -1
- package/src/utils/toMaybe.js +5 -2
- package/src/utils/toMaybe.js.map +7 -1
- package/src/utils/toNamespace.js +6 -3
- package/src/utils/toNamespace.js.map +7 -1
- package/src/utils/toUrlString.js +9 -6
- package/src/utils/toUrlString.js.map +7 -1
- package/src/utils/waitForMessageOfType.js +30 -32
- package/src/utils/waitForMessageOfType.js.map +7 -1
- package/src/view/ComponentChanges.d.ts +1 -1
- package/src/view/ComponentChanges.d.ts.map +1 -1
- package/src/view/ComponentChanges.js +249 -251
- package/src/view/ComponentChanges.js.map +7 -1
- package/src/view/ComponentContext.d.ts.map +1 -1
- package/src/view/ComponentContext.js +303 -331
- package/src/view/ComponentContext.js.map +7 -1
- package/src/view/ComponentMemory.d.ts +1 -0
- package/src/view/ComponentMemory.d.ts.map +1 -1
- package/src/view/ComponentMemory.js +73 -76
- package/src/view/ComponentMemory.js.map +7 -1
- package/src/view/IShadowObjectEnvProxy.js +1 -2
- package/src/view/IShadowObjectEnvProxy.js.map +7 -1
- package/src/view/LocalShadowObjectEnv.d.ts.map +1 -1
- package/src/view/LocalShadowObjectEnv.js +57 -52
- package/src/view/LocalShadowObjectEnv.js.map +7 -1
- package/src/view/RemoteWorkerEnv.js +134 -123
- package/src/view/RemoteWorkerEnv.js.map +7 -1
- package/src/view/ShadowEnv.d.ts.map +1 -1
- package/src/view/ShadowEnv.js +232 -228
- package/src/view/ShadowEnv.js.map +7 -1
- package/src/view/ViewComponent.d.ts +9 -0
- package/src/view/ViewComponent.d.ts.map +1 -1
- package/src/view/ViewComponent.js +142 -130
- package/src/view/ViewComponent.js.map +7 -1
- package/src/view/cloneChangeTrail.js +13 -11
- package/src/view/cloneChangeTrail.js.map +7 -1
- package/src/worker/MessageRouter.d.ts.map +1 -1
- package/src/worker/MessageRouter.js +78 -67
- package/src/worker/MessageRouter.js.map +7 -1
- package/src/worker/WorkerRuntime.js +22 -21
- package/src/worker/WorkerRuntime.js.map +7 -1
- package/tsconfig.lib.tsbuildinfo +0 -1
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/utils/waitForMessageOfType.ts"],
|
|
4
|
+
"sourcesContent": ["/**\n * Wait for a message of a specific type or reject after a timeout.\n */\nexport const waitForMessageOfType = (worker: Worker, type: string, timeout = 1000, guard?: (data: any) => boolean) =>\n new Promise<void>((resolve, reject) => {\n let timeoutId: number;\n // eslint-disable-next-line prefer-const\n let listener: (event: MessageEvent) => void;\n\n const cleanup = () => {\n clearTimeout(timeoutId);\n worker.removeEventListener('message', listener);\n };\n\n if (timeout !== 0 && timeout !== Infinity) {\n timeoutId = setTimeout(() => {\n cleanup();\n reject(new Error(`Timeout waiting for message of type: ${type}`));\n }, timeout) as any;\n }\n\n listener = (event) => {\n if (event.data.type === type) {\n try {\n if (!guard || guard(event.data)) {\n cleanup();\n resolve();\n }\n } catch (error) {\n cleanup();\n reject(error.toString());\n }\n }\n };\n\n worker.addEventListener('message', listener);\n });"],
|
|
5
|
+
"mappings": "AAGO,MAAM,uBAAuB,CAAC,QAAgB,MAAc,UAAU,KAAM,UACjF,IAAI,QAAc,CAAC,SAAS,WAAW;AACrC,MAAI;AAEJ,MAAI;AAEJ,QAAM,UAAU,MAAM;AACpB,iBAAa,SAAS;AACtB,WAAO,oBAAoB,WAAW,QAAQ;AAAA,EAChD;AAEA,MAAI,YAAY,KAAK,YAAY,UAAU;AACzC,gBAAY,WAAW,MAAM;AAC3B,cAAQ;AACR,aAAO,IAAI,MAAM,wCAAwC,IAAI,EAAE,CAAC;AAAA,IAClE,GAAG,OAAO;AAAA,EACZ;AAEA,aAAW,CAAC,UAAU;AACpB,QAAI,MAAM,KAAK,SAAS,MAAM;AAC5B,UAAI;AACF,YAAI,CAAC,SAAS,MAAM,MAAM,IAAI,GAAG;AAC/B,kBAAQ;AACR,kBAAQ;AAAA,QACV;AAAA,MACF,SAAS,OAAO;AACd,gBAAQ;AACR,eAAO,MAAM,SAAS,CAAC;AAAA,MACzB;AAAA,IACF;AAAA,EACF;AAEA,SAAO,iBAAiB,WAAW,QAAQ;AAC7C,CAAC;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -8,7 +8,7 @@ export declare class ComponentChanges {
|
|
|
8
8
|
get isNew(): boolean;
|
|
9
9
|
get isCreated(): boolean;
|
|
10
10
|
get isDestroyed(): boolean;
|
|
11
|
-
create(token?: string, parentUuid?: string, order?: number): void;
|
|
11
|
+
create(token?: string, parentUuid?: string, order?: number, autoDestructionOnParentRemoval?: boolean): void;
|
|
12
12
|
destroy(): void;
|
|
13
13
|
clear(): void;
|
|
14
14
|
changeToken(token: string | undefined): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentChanges.d.ts","sourceRoot":"","sources":["../../../src/view/ComponentChanges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAiC,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EAEpB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAKrB,qBAAa,gBAAgB;;IAG3B,IAAI,IAAI,IAAI,MAAM,CAEjB;gBAIW,IAAI,EAAE,MAAM;IAQxB,UAAU,IAAI,OAAO;IAIrB,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;
|
|
1
|
+
{"version":3,"file":"ComponentChanges.d.ts","sourceRoot":"","sources":["../../../src/view/ComponentChanges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,gBAAgB,EAAiC,MAAM,iBAAiB,CAAC;AACjF,OAAO,KAAK,EACV,YAAY,EACZ,oBAAoB,EAEpB,qBAAqB,EACrB,sBAAsB,EACtB,iBAAiB,EACjB,WAAW,EACX,gBAAgB,EAChB,kBAAkB,EACnB,MAAM,aAAa,CAAC;AAKrB,qBAAa,gBAAgB;;IAG3B,IAAI,IAAI,IAAI,MAAM,CAEjB;gBAIW,IAAI,EAAE,MAAM;IAQxB,UAAU,IAAI,OAAO;IAIrB,IAAI,KAAK,IAAI,OAAO,CAEnB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAWD,MAAM,CAAC,KAAK,GAAE,MAAkB,EAAE,UAAU,CAAC,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,EAAE,8BAA8B,UAAQ;IAUhH,OAAO;IAKP,KAAK;IAgBL,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS;IASrC,SAAS,CAAC,UAAU,CAAC,EAAE,MAAM;IAS7B,WAAW,CAAC,KAAK,EAAE,MAAM;IAazB,cAAc,CAAC,CAAC,GAAG,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO;IAcpF,cAAc,CAAC,GAAG,EAAE,MAAM;IAgB1B,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE;IAMvE,gBAAgB,CAAC,OAAO,EAAE,gBAAgB;IAW1C,gBAAgB,CAAC,KAAK,EAAE,oBAAoB,EAAE,EAAE,UAAU,EAAE,gBAAgB;IAsC5E,UAAU,IAAI,WAAW;IAYzB,sBAAsB,IAAI,qBAAqB;IAiC/C,uBAAuB,IAAI,sBAAsB;IAOjD,mBAAmB,IAAI,gBAAgB;IAgBvC,qBAAqB,IAAI,kBAAkB;IAU3C,eAAe,IAAI,YAAY;IAU/B,wBAAwB,IAAI,iBAAiB;CAoB9C"}
|
|
@@ -1,254 +1,252 @@
|
|
|
1
|
-
import { ChangeTrailPhase, ComponentChangeType, VoidToken } from
|
|
2
|
-
import { appendToEnd, removeFrom } from
|
|
3
|
-
const ROOT =
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
1
|
+
import { ChangeTrailPhase, ComponentChangeType, VoidToken } from "../constants.js";
|
|
2
|
+
import { appendToEnd, removeFrom } from "../utils/array-utils.js";
|
|
3
|
+
const ROOT = "#root";
|
|
4
|
+
class ComponentChanges {
|
|
5
|
+
#uuid;
|
|
6
|
+
get uuid() {
|
|
7
|
+
return this.#uuid;
|
|
8
|
+
}
|
|
9
|
+
#serial = 0;
|
|
10
|
+
constructor(uuid) {
|
|
11
|
+
this.#uuid = uuid;
|
|
12
|
+
}
|
|
13
|
+
#isNew = true;
|
|
14
|
+
#createCount = 0;
|
|
15
|
+
#destroyCount = 0;
|
|
16
|
+
hasChanges() {
|
|
17
|
+
return this.#serial > 0;
|
|
18
|
+
}
|
|
19
|
+
get isNew() {
|
|
20
|
+
return this.#isNew;
|
|
21
|
+
}
|
|
22
|
+
get isCreated() {
|
|
23
|
+
return this.#createCount > 0 && this.#createCount > this.#destroyCount;
|
|
24
|
+
}
|
|
25
|
+
get isDestroyed() {
|
|
26
|
+
return this.#destroyCount > 0 && this.#destroyCount >= this.#createCount;
|
|
27
|
+
}
|
|
28
|
+
#token = VoidToken;
|
|
29
|
+
#parentUuid;
|
|
30
|
+
#order = 0;
|
|
31
|
+
#autoDestructionOnParentRemoval = false;
|
|
32
|
+
#nextToken;
|
|
33
|
+
#nextParentUuid;
|
|
34
|
+
#nextOrder;
|
|
35
|
+
create(token = VoidToken, parentUuid, order = 0, autoDestructionOnParentRemoval = false) {
|
|
36
|
+
this.#serial++;
|
|
37
|
+
this.#createCount++;
|
|
38
|
+
this.#nextToken = token;
|
|
39
|
+
this.#nextParentUuid = parentUuid ?? ROOT;
|
|
40
|
+
this.#nextOrder = !order ? void 0 : order;
|
|
41
|
+
this.#autoDestructionOnParentRemoval = autoDestructionOnParentRemoval;
|
|
42
|
+
}
|
|
43
|
+
destroy() {
|
|
44
|
+
this.#destroyCount++;
|
|
45
|
+
this.#serial++;
|
|
46
|
+
}
|
|
47
|
+
clear() {
|
|
48
|
+
this.#serial = 0;
|
|
49
|
+
this.#isNew = false;
|
|
50
|
+
this.#nextToken = void 0;
|
|
51
|
+
this.#nextParentUuid = void 0;
|
|
52
|
+
this.#nextOrder = void 0;
|
|
53
|
+
this.#nextProperties.clear();
|
|
54
|
+
this.#propsChangeOrder.length = 0;
|
|
55
|
+
this.#events.length = 0;
|
|
56
|
+
this.#transferables.clear();
|
|
57
|
+
}
|
|
58
|
+
changeToken(token) {
|
|
59
|
+
if (token === this.#token) {
|
|
60
|
+
this.#nextToken = void 0;
|
|
61
|
+
} else {
|
|
62
|
+
this.#nextToken = token;
|
|
63
|
+
this.#serial++;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
setParent(parentUuid) {
|
|
67
|
+
if (parentUuid === this.#parentUuid) {
|
|
68
|
+
this.#nextParentUuid = void 0;
|
|
69
|
+
} else {
|
|
70
|
+
this.#nextParentUuid = parentUuid ?? ROOT;
|
|
71
|
+
this.#serial++;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
changeOrder(order) {
|
|
75
|
+
if (order === this.#order) {
|
|
76
|
+
this.#nextOrder = void 0;
|
|
77
|
+
} else {
|
|
78
|
+
this.#nextOrder = order;
|
|
79
|
+
this.#serial++;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
#properties = /* @__PURE__ */ new Map();
|
|
83
|
+
#nextProperties = /* @__PURE__ */ new Map();
|
|
84
|
+
#propsChangeOrder = [];
|
|
85
|
+
// we use an Array here and not a Set, because we want to keep the change order
|
|
86
|
+
changeProperty(key, value, isEqual) {
|
|
87
|
+
const prevValue = this.#properties.get(key);
|
|
88
|
+
const valueChanged = isEqual == null && value !== prevValue || isEqual != null && !isEqual(value, prevValue);
|
|
89
|
+
if (valueChanged) {
|
|
90
|
+
this.#nextProperties.set(key, value);
|
|
91
|
+
appendToEnd(this.#propsChangeOrder, key);
|
|
92
|
+
this.#serial++;
|
|
93
|
+
} else {
|
|
94
|
+
this.#nextProperties.delete(key);
|
|
95
|
+
removeFrom(this.#propsChangeOrder, key);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
removeProperty(key) {
|
|
99
|
+
const propExists = this.#properties.has(key);
|
|
100
|
+
if (this.#nextProperties.has(key)) {
|
|
101
|
+
this.#nextProperties.delete(key);
|
|
102
|
+
if (!propExists) {
|
|
103
|
+
removeFrom(this.#propsChangeOrder, key);
|
|
104
|
+
}
|
|
105
|
+
} else if (propExists) {
|
|
106
|
+
appendToEnd(this.#propsChangeOrder, key);
|
|
107
|
+
this.#serial++;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
#events = [];
|
|
111
|
+
#transferables = /* @__PURE__ */ new Set();
|
|
112
|
+
createEvent(type, data, transferables) {
|
|
113
|
+
this.#events.push({ type, data });
|
|
114
|
+
transferables?.forEach((transferable) => this.#transferables.add(transferable));
|
|
115
|
+
this.#serial++;
|
|
116
|
+
}
|
|
117
|
+
transferEventsTo(changes) {
|
|
118
|
+
if (this.#events.length > 0) {
|
|
119
|
+
changes.#events.push(...this.#events);
|
|
120
|
+
this.#events.length = 0;
|
|
121
|
+
}
|
|
122
|
+
if (this.#transferables.size > 0) {
|
|
123
|
+
changes.#transferables = /* @__PURE__ */ new Set([...changes.#transferables, ...this.#transferables]);
|
|
124
|
+
this.#transferables.clear();
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
buildChangeTrail(trail, trailPhase) {
|
|
128
|
+
const { isNew, isCreated, isDestroyed } = this;
|
|
129
|
+
if (isNew && isDestroyed) return;
|
|
130
|
+
switch (trailPhase) {
|
|
131
|
+
case ChangeTrailPhase.StructuralChanges:
|
|
132
|
+
if (isNew) {
|
|
133
|
+
trail.push(this.makeCreateEntityChange());
|
|
134
|
+
} else if (!isDestroyed) {
|
|
135
|
+
if (this.#nextParentUuid !== void 0 && !(this.#nextParentUuid === ROOT && this.#parentUuid === void 0)) {
|
|
136
|
+
trail.push(this.makeSetParentChange());
|
|
137
|
+
} else if (this.#nextOrder !== void 0 && this.#nextOrder !== this.#order) {
|
|
138
|
+
trail.push(this.makeUpdateOrderChange());
|
|
139
|
+
}
|
|
140
|
+
if (this.#nextToken !== void 0 && this.#nextToken !== this.#token) {
|
|
141
|
+
trail.push(this.makeChangeToken());
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
break;
|
|
145
|
+
case ChangeTrailPhase.ContentUpdates:
|
|
146
|
+
if (!isNew && isCreated && this.#propsChangeOrder.length > 0) {
|
|
147
|
+
trail.push(this.makeChangePropertyChange());
|
|
106
148
|
}
|
|
107
|
-
else if (propExists) {
|
|
108
|
-
appendToEnd(this.#propsChangeOrder, key);
|
|
109
|
-
this.#serial++;
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
#events = [];
|
|
113
|
-
#transferables = new Set();
|
|
114
|
-
createEvent(type, data, transferables) {
|
|
115
|
-
this.#events.push({ type, data });
|
|
116
|
-
transferables?.forEach((transferable) => this.#transferables.add(transferable));
|
|
117
|
-
this.#serial++;
|
|
118
|
-
}
|
|
119
|
-
transferEventsTo(changes) {
|
|
120
149
|
if (this.#events.length > 0) {
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
this.#
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
return {
|
|
220
|
-
type: ComponentChangeType.UpdateOrder,
|
|
221
|
-
uuid: this.#uuid,
|
|
222
|
-
order: this.#order,
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
|
-
makeChangeToken() {
|
|
226
|
-
this.#token = this.#nextToken ?? VoidToken;
|
|
227
|
-
return {
|
|
228
|
-
type: ComponentChangeType.ChangeToken,
|
|
229
|
-
uuid: this.#uuid,
|
|
230
|
-
token: this.#token,
|
|
231
|
-
};
|
|
232
|
-
}
|
|
233
|
-
makeChangePropertyChange() {
|
|
234
|
-
const properties = this.#propsChangeOrder.map((key) => {
|
|
235
|
-
if (this.#nextProperties.has(key)) {
|
|
236
|
-
// set prop
|
|
237
|
-
const nextValue = this.#nextProperties.get(key);
|
|
238
|
-
this.#properties.set(key, nextValue);
|
|
239
|
-
return [key, nextValue];
|
|
240
|
-
}
|
|
241
|
-
else {
|
|
242
|
-
// remove prop
|
|
243
|
-
this.#properties.delete(key);
|
|
244
|
-
return [key, undefined];
|
|
245
|
-
}
|
|
246
|
-
});
|
|
247
|
-
return {
|
|
248
|
-
type: ComponentChangeType.ChangeProperties,
|
|
249
|
-
uuid: this.#uuid,
|
|
250
|
-
properties,
|
|
251
|
-
};
|
|
252
|
-
}
|
|
150
|
+
trail.push(this.makeEvents());
|
|
151
|
+
}
|
|
152
|
+
break;
|
|
153
|
+
case ChangeTrailPhase.Removal:
|
|
154
|
+
if (isDestroyed) {
|
|
155
|
+
trail.push(this.makeDestroyEntityChange());
|
|
156
|
+
}
|
|
157
|
+
break;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
makeEvents() {
|
|
161
|
+
const event = {
|
|
162
|
+
type: ComponentChangeType.SendEvents,
|
|
163
|
+
uuid: this.#uuid,
|
|
164
|
+
events: this.#events.slice(0)
|
|
165
|
+
};
|
|
166
|
+
if (this.#transferables.size > 0) {
|
|
167
|
+
event.transferables = Array.from(this.#transferables);
|
|
168
|
+
}
|
|
169
|
+
return event;
|
|
170
|
+
}
|
|
171
|
+
makeCreateEntityChange() {
|
|
172
|
+
const entry = {
|
|
173
|
+
type: ComponentChangeType.CreateEntities,
|
|
174
|
+
uuid: this.#uuid,
|
|
175
|
+
token: this.#nextToken
|
|
176
|
+
};
|
|
177
|
+
this.#token = this.#nextToken;
|
|
178
|
+
if (this.#nextParentUuid !== void 0) {
|
|
179
|
+
const nextParentUuid = this.#nextParentUuid === ROOT ? void 0 : this.#nextParentUuid;
|
|
180
|
+
this.#parentUuid = nextParentUuid;
|
|
181
|
+
if (nextParentUuid !== void 0) {
|
|
182
|
+
entry.parentUuid = nextParentUuid;
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
if (this.#nextProperties.size > 0) {
|
|
186
|
+
entry.properties = Array.from(this.#nextProperties.entries()).filter(([, value]) => value !== void 0);
|
|
187
|
+
entry.properties.forEach(([key, value]) => this.#properties.set(key, value));
|
|
188
|
+
}
|
|
189
|
+
if (this.#nextOrder !== void 0 && this.#nextOrder !== this.#order) {
|
|
190
|
+
entry.order = this.#order = this.#nextOrder;
|
|
191
|
+
}
|
|
192
|
+
if (this.#autoDestructionOnParentRemoval) {
|
|
193
|
+
entry.autoDestructionOnParentRemoval = true;
|
|
194
|
+
}
|
|
195
|
+
return entry;
|
|
196
|
+
}
|
|
197
|
+
makeDestroyEntityChange() {
|
|
198
|
+
return {
|
|
199
|
+
type: ComponentChangeType.DestroyEntities,
|
|
200
|
+
uuid: this.#uuid
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
makeSetParentChange() {
|
|
204
|
+
this.#parentUuid = this.#nextParentUuid === ROOT ? void 0 : this.#nextParentUuid;
|
|
205
|
+
const entry = {
|
|
206
|
+
type: ComponentChangeType.SetParent,
|
|
207
|
+
uuid: this.#uuid,
|
|
208
|
+
parentUuid: this.#parentUuid
|
|
209
|
+
};
|
|
210
|
+
if (this.#nextOrder !== void 0 && this.#nextOrder !== this.#order) {
|
|
211
|
+
entry.order = this.#order = this.#nextOrder;
|
|
212
|
+
}
|
|
213
|
+
return entry;
|
|
214
|
+
}
|
|
215
|
+
makeUpdateOrderChange() {
|
|
216
|
+
this.#order = this.#nextOrder ?? 0;
|
|
217
|
+
return {
|
|
218
|
+
type: ComponentChangeType.UpdateOrder,
|
|
219
|
+
uuid: this.#uuid,
|
|
220
|
+
order: this.#order
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
makeChangeToken() {
|
|
224
|
+
this.#token = this.#nextToken ?? VoidToken;
|
|
225
|
+
return {
|
|
226
|
+
type: ComponentChangeType.ChangeToken,
|
|
227
|
+
uuid: this.#uuid,
|
|
228
|
+
token: this.#token
|
|
229
|
+
};
|
|
230
|
+
}
|
|
231
|
+
makeChangePropertyChange() {
|
|
232
|
+
const properties = this.#propsChangeOrder.map((key) => {
|
|
233
|
+
if (this.#nextProperties.has(key)) {
|
|
234
|
+
const nextValue = this.#nextProperties.get(key);
|
|
235
|
+
this.#properties.set(key, nextValue);
|
|
236
|
+
return [key, nextValue];
|
|
237
|
+
} else {
|
|
238
|
+
this.#properties.delete(key);
|
|
239
|
+
return [key, void 0];
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
return {
|
|
243
|
+
type: ComponentChangeType.ChangeProperties,
|
|
244
|
+
uuid: this.#uuid,
|
|
245
|
+
properties
|
|
246
|
+
};
|
|
247
|
+
}
|
|
253
248
|
}
|
|
254
|
-
|
|
249
|
+
export {
|
|
250
|
+
ComponentChanges
|
|
251
|
+
};
|
|
252
|
+
//# sourceMappingURL=ComponentChanges.js.map
|
|
@@ -1 +1,7 @@
|
|
|
1
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../src/view/ComponentChanges.ts"],
|
|
4
|
+
"sourcesContent": ["import {ChangeTrailPhase, ComponentChangeType, VoidToken} from '../constants.js';\nimport type {\n IChangeToken,\n IComponentChangeType,\n IComponentEvent,\n ICreateEntitiesChange,\n IDestroyEntitiesChange,\n IPropertiesChange,\n ISendEvents,\n ISetParentChange,\n IUpdateOrderChange,\n} from '../types.js';\nimport {appendToEnd, removeFrom} from '../utils/array-utils.js';\n\nconst ROOT = '#root';\n\nexport class ComponentChanges {\n readonly #uuid: string;\n\n get uuid(): string {\n return this.#uuid;\n }\n\n #serial = 0;\n\n constructor(uuid: string) {\n this.#uuid = uuid;\n }\n\n #isNew = true;\n #createCount = 0;\n #destroyCount = 0;\n\n hasChanges(): boolean {\n return this.#serial > 0;\n }\n\n get isNew(): boolean {\n return this.#isNew;\n }\n\n get isCreated(): boolean {\n return this.#createCount > 0 && this.#createCount > this.#destroyCount;\n }\n\n get isDestroyed(): boolean {\n return this.#destroyCount > 0 && this.#destroyCount >= this.#createCount;\n }\n\n #token: string = VoidToken;\n #parentUuid?: string;\n #order: number = 0;\n #autoDestructionOnParentRemoval = false;\n\n #nextToken?: string;\n #nextParentUuid?: string;\n #nextOrder?: number;\n\n create(token: string = VoidToken, parentUuid?: string, order: number = 0, autoDestructionOnParentRemoval = false) {\n this.#serial++;\n this.#createCount++;\n\n this.#nextToken = token;\n this.#nextParentUuid = parentUuid ?? ROOT;\n this.#nextOrder = !order ? undefined : order;\n this.#autoDestructionOnParentRemoval = autoDestructionOnParentRemoval;\n }\n\n destroy() {\n this.#destroyCount++;\n this.#serial++;\n }\n\n clear() {\n this.#serial = 0;\n\n this.#isNew = false;\n\n this.#nextToken = undefined;\n this.#nextParentUuid = undefined;\n this.#nextOrder = undefined;\n\n this.#nextProperties.clear();\n this.#propsChangeOrder.length = 0;\n\n this.#events.length = 0;\n this.#transferables.clear();\n }\n\n changeToken(token: string | undefined) {\n if (token === this.#token) {\n this.#nextToken = undefined;\n } else {\n this.#nextToken = token;\n this.#serial++;\n }\n }\n\n setParent(parentUuid?: string) {\n if (parentUuid === this.#parentUuid) {\n this.#nextParentUuid = undefined;\n } else {\n this.#nextParentUuid = parentUuid ?? ROOT;\n this.#serial++;\n }\n }\n\n changeOrder(order: number) {\n if (order === this.#order) {\n this.#nextOrder = undefined;\n } else {\n this.#nextOrder = order;\n this.#serial++;\n }\n }\n\n #properties: Map<string, unknown> = new Map();\n #nextProperties: Map<string, unknown> = new Map();\n #propsChangeOrder: string[] = []; // we use an Array here and not a Set, because we want to keep the change order\n\n changeProperty<T = unknown>(key: string, value: T, isEqual?: (a: T, b: T) => boolean) {\n const prevValue = this.#properties.get(key) as T;\n const valueChanged = (isEqual == null && value !== prevValue) || (isEqual != null && !isEqual(value, prevValue));\n\n if (valueChanged) {\n this.#nextProperties.set(key, value);\n appendToEnd(this.#propsChangeOrder, key);\n this.#serial++;\n } else {\n this.#nextProperties.delete(key);\n removeFrom(this.#propsChangeOrder, key);\n }\n }\n\n removeProperty(key: string) {\n const propExists = this.#properties.has(key);\n if (this.#nextProperties.has(key)) {\n this.#nextProperties.delete(key);\n if (!propExists) {\n removeFrom(this.#propsChangeOrder, key);\n }\n } else if (propExists) {\n appendToEnd(this.#propsChangeOrder, key);\n this.#serial++;\n }\n }\n\n #events: IComponentEvent[] = [];\n #transferables = new Set<Transferable>();\n\n createEvent(type: string, data: unknown, transferables?: Transferable[]) {\n this.#events.push({type, data});\n transferables?.forEach((transferable) => this.#transferables.add(transferable));\n this.#serial++;\n }\n\n transferEventsTo(changes: ComponentChanges) {\n if (this.#events.length > 0) {\n changes.#events.push(...this.#events);\n this.#events.length = 0;\n }\n if (this.#transferables.size > 0) {\n changes.#transferables = new Set([...changes.#transferables, ...this.#transferables]);\n this.#transferables.clear();\n }\n }\n\n buildChangeTrail(trail: IComponentChangeType[], trailPhase: ChangeTrailPhase) {\n const {isNew, isCreated, isDestroyed} = this;\n\n if (isNew && isDestroyed) return;\n\n switch (trailPhase) {\n case ChangeTrailPhase.StructuralChanges:\n if (isNew) {\n trail.push(this.makeCreateEntityChange());\n } else if (!isDestroyed) {\n if (this.#nextParentUuid !== undefined && !(this.#nextParentUuid === ROOT && this.#parentUuid === undefined)) {\n trail.push(this.makeSetParentChange());\n } else if (this.#nextOrder !== undefined && this.#nextOrder !== this.#order) {\n trail.push(this.makeUpdateOrderChange());\n }\n if (this.#nextToken !== undefined && this.#nextToken !== this.#token) {\n trail.push(this.makeChangeToken());\n }\n }\n break;\n\n case ChangeTrailPhase.ContentUpdates:\n if (!isNew && isCreated && this.#propsChangeOrder.length > 0) {\n trail.push(this.makeChangePropertyChange());\n }\n if (this.#events.length > 0) {\n trail.push(this.makeEvents());\n }\n break;\n\n case ChangeTrailPhase.Removal:\n if (isDestroyed) {\n trail.push(this.makeDestroyEntityChange());\n }\n break;\n }\n }\n\n makeEvents(): ISendEvents {\n const event: ISendEvents = {\n type: ComponentChangeType.SendEvents,\n uuid: this.#uuid,\n events: this.#events.slice(0),\n };\n if (this.#transferables.size > 0) {\n event.transferables = Array.from(this.#transferables);\n }\n return event;\n }\n\n makeCreateEntityChange(): ICreateEntitiesChange {\n const entry: ICreateEntitiesChange = {\n type: ComponentChangeType.CreateEntities,\n uuid: this.#uuid,\n token: this.#nextToken,\n };\n\n this.#token = this.#nextToken;\n\n if (this.#nextParentUuid !== undefined) {\n const nextParentUuid = this.#nextParentUuid === ROOT ? undefined : this.#nextParentUuid;\n this.#parentUuid = nextParentUuid;\n if (nextParentUuid !== undefined) {\n entry.parentUuid = nextParentUuid;\n }\n }\n\n if (this.#nextProperties.size > 0) {\n entry.properties = Array.from(this.#nextProperties.entries()).filter(([, value]) => value !== undefined);\n entry.properties.forEach(([key, value]) => this.#properties.set(key, value));\n }\n\n if (this.#nextOrder !== undefined && this.#nextOrder !== this.#order) {\n entry.order = this.#order = this.#nextOrder;\n }\n\n if (this.#autoDestructionOnParentRemoval) {\n entry.autoDestructionOnParentRemoval = true;\n }\n\n return entry;\n }\n\n makeDestroyEntityChange(): IDestroyEntitiesChange {\n return {\n type: ComponentChangeType.DestroyEntities,\n uuid: this.#uuid,\n };\n }\n\n makeSetParentChange(): ISetParentChange {\n this.#parentUuid = this.#nextParentUuid === ROOT ? undefined : this.#nextParentUuid;\n\n const entry: ISetParentChange = {\n type: ComponentChangeType.SetParent,\n uuid: this.#uuid,\n parentUuid: this.#parentUuid,\n };\n\n if (this.#nextOrder !== undefined && this.#nextOrder !== this.#order) {\n entry.order = this.#order = this.#nextOrder;\n }\n\n return entry;\n }\n\n makeUpdateOrderChange(): IUpdateOrderChange {\n this.#order = this.#nextOrder ?? 0;\n\n return {\n type: ComponentChangeType.UpdateOrder,\n uuid: this.#uuid,\n order: this.#order,\n };\n }\n\n makeChangeToken(): IChangeToken {\n this.#token = this.#nextToken ?? VoidToken;\n\n return {\n type: ComponentChangeType.ChangeToken,\n uuid: this.#uuid,\n token: this.#token,\n };\n }\n\n makeChangePropertyChange(): IPropertiesChange {\n const properties = this.#propsChangeOrder.map((key) => {\n if (this.#nextProperties.has(key)) {\n // set prop\n const nextValue = this.#nextProperties.get(key);\n this.#properties.set(key, nextValue);\n return [key, nextValue] as [string, unknown];\n } else {\n // remove prop\n this.#properties.delete(key);\n return [key, undefined] as [string, unknown];\n }\n });\n\n return {\n type: ComponentChangeType.ChangeProperties,\n uuid: this.#uuid,\n properties,\n };\n }\n}"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ComponentContext.d.ts","sourceRoot":"","sources":["../../../src/view/ComponentContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAwB,aAAa,EAAC,MAAM,aAAa,CAAC;AAKtF,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAStD,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,oBAAoB,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAAC;CAC9E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,gBAAgB;;IAC3B,MAAM,CAAC,QAAQ,CAAC,oBAAoB,6BAA6B;IAEjE,MAAM,CAAC,cAAc,IAAI,GAAG,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAO7D,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,gBAAgB;IASvD,EAAE,CAAC,EAAE,aAAa,CAAC;gBAOP,SAAS,GAAE,aAAwB;IAU/C,YAAY,CAAC,SAAS,EAAE,aAAa;
|
|
1
|
+
{"version":3,"file":"ComponentContext.d.ts","sourceRoot":"","sources":["../../../src/view/ComponentContext.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,eAAe,EAAwB,aAAa,EAAC,MAAM,aAAa,CAAC;AAKtF,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAStD,OAAO,CAAC,MAAM,CAAC;IAEb,IAAI,oBAAoB,EAAE,GAAG,CAAC,MAAM,GAAG,MAAM,EAAE,gBAAgB,CAAC,GAAG,SAAS,CAAC;CAC9E;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,gBAAgB;;IAC3B,MAAM,CAAC,QAAQ,CAAC,oBAAoB,6BAA6B;IAEjE,MAAM,CAAC,cAAc,IAAI,GAAG,CAAC,aAAa,EAAE,gBAAgB,CAAC;IAO7D,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,aAAa,GAAG,gBAAgB;IASvD,EAAE,CAAC,EAAE,aAAa,CAAC;gBAOP,SAAS,GAAE,aAAwB;IAU/C,YAAY,CAAC,SAAS,EAAE,aAAa;IAkCrC,YAAY,CAAC,SAAS,EAAE,aAAa;IAIrC,aAAa;IAIb,eAAe,CAAC,SAAS,EAAE,aAAa;IAIxC,gBAAgB,CAAC,SAAS,EAAE,aAAa;IASzC,WAAW,CAAC,SAAS,EAAE,aAAa,GAAG,aAAa,EAAE;IAItD,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa;IAczD,UAAU,CAAC,SAAS,EAAE,MAAM;IAS5B,WAAW,CAAC,SAAS,EAAE,aAAa,EAAE,KAAK,CAAC,EAAE,MAAM;IAIpD,SAAS,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa;IAQrD,aAAa,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,EAAE,aAAa;IAYzD,aAAa,CAAC,IAAI,EAAE,MAAM;IAS1B,WAAW,CAAC,CAAC,GAAG,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,OAAO;IAc/G,cAAc,CAAC,SAAS,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM;IAIxD,WAAW,CAAC,SAAS,EAAE,aAAa;IAapC;;OAEG;IACH,qBAAqB,IAAI,aAAa,EAAE;IAIxC;;OAEG;IACH,0BAA0B,CAAC,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,EAAE,YAAY,EAAE;IAIhH;;OAEG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,OAAmB;IAMtD;;OAEG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,OAAmB,EAAE,gBAAgB,UAAQ;IAI/F;;OAEG;IACH,4BAA4B;IAM5B;;;;;OAKG;IACH,iBAAiB,CAAC,YAAY,UAAO,GAAG,eAAe;IAmCvD;;;;;OAKG;IACH,eAAe;IA6Bf,KAAK;CA2GN"}
|