@mapvx/web-js 3.3.1 → 3.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/logger/sentry.js +1 -1
- package/dist/cjs/map/map.js +4 -0
- package/dist/cjs/map/map.js.map +1 -1
- package/dist/cjs/map/scene3DController.js +54 -2
- package/dist/cjs/map/scene3DController.js.map +1 -1
- package/dist/cjs/utils/loadGlb.js +1 -1
- package/dist/cjs/utils/threeScene.js +81 -0
- package/dist/cjs/utils/threeScene.js.map +1 -1
- package/dist/es/logger/sentry.js +1 -1
- package/dist/es/map/map.d.ts.map +1 -1
- package/dist/es/map/map.js +4 -0
- package/dist/es/map/map.js.map +1 -1
- package/dist/es/map/scene3DController.d.ts +19 -1
- package/dist/es/map/scene3DController.d.ts.map +1 -1
- package/dist/es/map/scene3DController.js +55 -3
- package/dist/es/map/scene3DController.js.map +1 -1
- package/dist/es/utils/loadGlb.d.ts +1 -1
- package/dist/es/utils/loadGlb.js +1 -1
- package/dist/es/utils/threeScene.d.ts +19 -0
- package/dist/es/utils/threeScene.d.ts.map +1 -1
- package/dist/es/utils/threeScene.js +79 -0
- package/dist/es/utils/threeScene.js.map +1 -1
- package/dist/umd/index.js +219 -68
- package/dist/umd/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -4,7 +4,7 @@ import { buildElevatedPaths, buildLabelData, buildPoiIconData, buildStoreLogoDat
|
|
|
4
4
|
import { loadGlbRoot } from "../utils/loadGlb";
|
|
5
5
|
import { Semaphore } from "../utils/semaphore";
|
|
6
6
|
import { loadDeck, loadThree } from "../utils/three";
|
|
7
|
-
import { addScene3DLights, computeGlbBottomAnchor } from "../utils/threeScene";
|
|
7
|
+
import { addScene3DLights, computeGlbBottomAnchor, disposeMaterialsOnly, disposeObject3D, } from "../utils/threeScene";
|
|
8
8
|
/**
|
|
9
9
|
* Owns the experimental 3D scene for a MapLibre map: the deck.gl overlay layers (elevated room
|
|
10
10
|
* outlines, indoor labels, POI icons, store logos) and the declarative GLB custom layer rendered
|
|
@@ -37,6 +37,8 @@ export class Scene3DController {
|
|
|
37
37
|
this.scene3DGlbLightCount = 0;
|
|
38
38
|
/** Container group holding all placed GLB pivots; rebuilt on each floor change. */
|
|
39
39
|
this.scene3DModelsGroup = undefined;
|
|
40
|
+
/** The GLB custom layer's renderer, stored so {@link dispose} can release it; see `createGlbCustomLayer`. */
|
|
41
|
+
this.glbRenderer = undefined;
|
|
40
42
|
/**
|
|
41
43
|
* Route points currently used for GLB route-transparency collision, tagged with the floor on
|
|
42
44
|
* which each point's route segment is visible. Stored as coordinates (not pivot references) so
|
|
@@ -103,9 +105,18 @@ export class Scene3DController {
|
|
|
103
105
|
this.recomputeRouteAffectedModels();
|
|
104
106
|
this.applyModelOpacity();
|
|
105
107
|
}
|
|
106
|
-
/**
|
|
108
|
+
/**
|
|
109
|
+
* Rebuilds the deck overlay and GLB placements for the given floor. Host apps call this on every
|
|
110
|
+
* floor/place-changing navigation, including many that leave the floor unchanged (e.g. re-entering
|
|
111
|
+
* a screen, tapping the already-active floor selector); a no-op floor is skipped so those don't
|
|
112
|
+
* trigger a full, wasteful GLB rebuild.
|
|
113
|
+
*/
|
|
107
114
|
onFloorChange(currentFloor) {
|
|
108
|
-
|
|
115
|
+
const nextFloor = currentFloor !== null && currentFloor !== void 0 ? currentFloor : "";
|
|
116
|
+
if (nextFloor === this.currentFloor) {
|
|
117
|
+
return;
|
|
118
|
+
}
|
|
119
|
+
this.currentFloor = nextFloor;
|
|
109
120
|
this.updateDeckOverlay();
|
|
110
121
|
this.placeScene3DModels();
|
|
111
122
|
}
|
|
@@ -114,6 +125,36 @@ export class Scene3DController {
|
|
|
114
125
|
this.currentFloor = currentFloor !== null && currentFloor !== void 0 ? currentFloor : "";
|
|
115
126
|
this.updateDeckOverlay();
|
|
116
127
|
}
|
|
128
|
+
/**
|
|
129
|
+
* Releases every GPU resource this controller owns: the placed models group's material clones,
|
|
130
|
+
* the cached GLB templates' geometries/materials/textures, and the `WebGLRenderer` created for the
|
|
131
|
+
* declarative GLB layer. Idempotent — safe to call more than once (e.g. once via the custom
|
|
132
|
+
* layer's own `onRemove` and again explicitly).
|
|
133
|
+
*
|
|
134
|
+
* Callers must invoke this themselves before tearing down the map: MapLibre's `map.remove()` does
|
|
135
|
+
* not call a custom layer's `onRemove`, so without an explicit call here nothing ever frees these
|
|
136
|
+
* resources, and every context-loss recovery cycle (destroy + recreate the map) leaks a full scene.
|
|
137
|
+
*/
|
|
138
|
+
dispose() {
|
|
139
|
+
var _a, _b;
|
|
140
|
+
const three = (_a = this.threeMod) === null || _a === void 0 ? void 0 : _a.THREE;
|
|
141
|
+
if (three) {
|
|
142
|
+
if (this.scene3DModelsGroup) {
|
|
143
|
+
disposeMaterialsOnly(three, this.scene3DModelsGroup);
|
|
144
|
+
this.scene3DModelsGroup = undefined;
|
|
145
|
+
}
|
|
146
|
+
// Iterate the deduplicated-by-URL roots (not `scene3DGlbTemplateById`, which may map several
|
|
147
|
+
// asset ids to the same root) so a shared root is never disposed more than once.
|
|
148
|
+
for (const root of this.scene3DGlbRootByUrl.values()) {
|
|
149
|
+
disposeObject3D(three, root);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
this.scene3DGlbRootByUrl.clear();
|
|
153
|
+
this.scene3DGlbTemplateById.clear();
|
|
154
|
+
this.scene3DGlbScene = undefined;
|
|
155
|
+
(_b = this.glbRenderer) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
156
|
+
this.glbRenderer = undefined;
|
|
157
|
+
}
|
|
117
158
|
// Internal implementation -----------------------------------------------------------------
|
|
118
159
|
/**
|
|
119
160
|
* Lazily loads the Three.js / deck.gl runtime handles (dynamic import) and caches them so the
|
|
@@ -165,6 +206,13 @@ export class Scene3DController {
|
|
|
165
206
|
renderer.setSize = function (width, height) {
|
|
166
207
|
this.setViewport(0, 0, width, height);
|
|
167
208
|
};
|
|
209
|
+
// Stored on the controller (not just this closure) so `dispose()` can release it — MapLibre
|
|
210
|
+
// does not call a custom layer's `onRemove` when the whole map/style is torn down via
|
|
211
|
+
// `map.remove()`, so callers must dispose this controller explicitly before that happens.
|
|
212
|
+
this.glbRenderer = renderer;
|
|
213
|
+
},
|
|
214
|
+
onRemove: () => {
|
|
215
|
+
this.dispose();
|
|
168
216
|
},
|
|
169
217
|
render: (_gl, args) => {
|
|
170
218
|
var _a;
|
|
@@ -292,6 +340,10 @@ export class Scene3DController {
|
|
|
292
340
|
return;
|
|
293
341
|
}
|
|
294
342
|
if (this.scene3DModelsGroup) {
|
|
343
|
+
// Only the per-placement material clones (made below so each placement's zoom-based opacity
|
|
344
|
+
// is independent) are exclusively owned by this group — geometries/textures come from the
|
|
345
|
+
// cached templates and stay alive for the next rebuild, so they must not be disposed here.
|
|
346
|
+
disposeMaterialsOnly(three, this.scene3DModelsGroup);
|
|
295
347
|
this.scene3DGlbScene.remove(this.scene3DModelsGroup);
|
|
296
348
|
this.scene3DModelsGroup = undefined;
|
|
297
349
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scene3DController.js","sourceRoot":"","sources":["../../../src/map/scene3DController.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scene3DController.js","sourceRoot":"","sources":["../../../src/map/scene3DController.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,7 @@ import type * as THREE from "three";
|
|
|
12
12
|
* Draco decode time, and totem hardware/networks in the field are often slower than that. The
|
|
13
13
|
* timeout only needs to be long enough that no realistically-sized valid asset ever hits it; a
|
|
14
14
|
* truly hung load (the actual failure this guards against) would still hang forever whether this
|
|
15
|
-
* is 30 seconds or
|
|
15
|
+
* is 30 seconds or 500 seconds, so there is no tradeoff in keeping it generous.
|
|
16
16
|
*
|
|
17
17
|
* @group Configuration
|
|
18
18
|
*/
|
package/dist/es/utils/loadGlb.js
CHANGED
|
@@ -34,7 +34,7 @@ function getGltfLoader() {
|
|
|
34
34
|
* Draco decode time, and totem hardware/networks in the field are often slower than that. The
|
|
35
35
|
* timeout only needs to be long enough that no realistically-sized valid asset ever hits it; a
|
|
36
36
|
* truly hung load (the actual failure this guards against) would still hang forever whether this
|
|
37
|
-
* is 30 seconds or
|
|
37
|
+
* is 30 seconds or 500 seconds, so there is no tradeoff in keeping it generous.
|
|
38
38
|
*
|
|
39
39
|
* @group Configuration
|
|
40
40
|
*/
|
|
@@ -21,4 +21,23 @@ export declare function computeGlbBottomAnchor(three: typeof import("three"), ro
|
|
|
21
21
|
* @returns Number of light objects added (used to keep lights when clearing meshes).
|
|
22
22
|
*/
|
|
23
23
|
export declare function addScene3DLights(three: typeof import("three"), scene: THREE.Scene, lights: readonly Scene3DLightConfig[]): number;
|
|
24
|
+
/**
|
|
25
|
+
* Disposes every mesh's material(s) under `root`, releasing each one's GPU-side program reference,
|
|
26
|
+
* without touching geometries or textures. Use this for a group whose geometries/textures are
|
|
27
|
+
* shared with a still-live cache (e.g. a GLB template reused by future placements via `.clone(true)`)
|
|
28
|
+
* and only its per-placement material clones (made so each placement's opacity is independent) are
|
|
29
|
+
* exclusively owned by the group.
|
|
30
|
+
*
|
|
31
|
+
* @param three - The resolved Three.js module (from `loadThree()`).
|
|
32
|
+
*/
|
|
33
|
+
export declare function disposeMaterialsOnly(three: typeof import("three"), root: THREE.Object3D): void;
|
|
34
|
+
/**
|
|
35
|
+
* Fully disposes every mesh's geometry, material(s), and textures under `root`. Use this only for
|
|
36
|
+
* an object that exclusively owns its GPU resources — e.g. a loaded GLB template root being evicted
|
|
37
|
+
* from cache — never for a placement group whose geometries/textures came from a shared template
|
|
38
|
+
* (use {@link disposeMaterialsOnly} for that instead).
|
|
39
|
+
*
|
|
40
|
+
* @param three - The resolved Three.js module (from `loadThree()`).
|
|
41
|
+
*/
|
|
42
|
+
export declare function disposeObject3D(three: typeof import("three"), root: THREE.Object3D): void;
|
|
24
43
|
//# sourceMappingURL=threeScene.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threeScene.d.ts","sourceRoot":"","sources":["../../../src/utils/threeScene.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAA;AACnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAElE;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,cAAc,OAAO,CAAC,EAC7B,IAAI,EAAE,KAAK,CAAC,QAAQ,GACnB,KAAK,CAAC,OAAO,CAKf;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,cAAc,OAAO,CAAC,EAC7B,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,SAAS,kBAAkB,EAAE,GACpC,MAAM,CAcR"}
|
|
1
|
+
{"version":3,"file":"threeScene.d.ts","sourceRoot":"","sources":["../../../src/utils/threeScene.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAA;AACnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAElE;;;;;;GAMG;AAEH;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,cAAc,OAAO,CAAC,EAC7B,IAAI,EAAE,KAAK,CAAC,QAAQ,GACnB,KAAK,CAAC,OAAO,CAKf;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,cAAc,OAAO,CAAC,EAC7B,KAAK,EAAE,KAAK,CAAC,KAAK,EAClB,MAAM,EAAE,SAAS,kBAAkB,EAAE,GACpC,MAAM,CAcR;AA8CD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,cAAc,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAS9F;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,cAAc,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAUzF"}
|
|
@@ -38,4 +38,83 @@ export function addScene3DLights(three, scene, lights) {
|
|
|
38
38
|
}
|
|
39
39
|
return count;
|
|
40
40
|
}
|
|
41
|
+
/** Every material texture-slot property name across three.js's built-in material types. */
|
|
42
|
+
const MATERIAL_TEXTURE_KEYS = [
|
|
43
|
+
"map",
|
|
44
|
+
"alphaMap",
|
|
45
|
+
"aoMap",
|
|
46
|
+
"bumpMap",
|
|
47
|
+
"displacementMap",
|
|
48
|
+
"emissiveMap",
|
|
49
|
+
"envMap",
|
|
50
|
+
"lightMap",
|
|
51
|
+
"metalnessMap",
|
|
52
|
+
"normalMap",
|
|
53
|
+
"roughnessMap",
|
|
54
|
+
"specularMap",
|
|
55
|
+
"gradientMap",
|
|
56
|
+
"clearcoatMap",
|
|
57
|
+
"clearcoatNormalMap",
|
|
58
|
+
"clearcoatRoughnessMap",
|
|
59
|
+
"sheenColorMap",
|
|
60
|
+
"sheenRoughnessMap",
|
|
61
|
+
"transmissionMap",
|
|
62
|
+
"thicknessMap",
|
|
63
|
+
"iridescenceMap",
|
|
64
|
+
"iridescenceThicknessMap",
|
|
65
|
+
"anisotropyMap",
|
|
66
|
+
];
|
|
67
|
+
function disposeMaterial(three, material, disposeTextures) {
|
|
68
|
+
if (disposeTextures) {
|
|
69
|
+
const record = material;
|
|
70
|
+
for (const key of MATERIAL_TEXTURE_KEYS) {
|
|
71
|
+
const value = record[key];
|
|
72
|
+
if (value instanceof three.Texture) {
|
|
73
|
+
value.dispose();
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
material.dispose();
|
|
78
|
+
}
|
|
79
|
+
/**
|
|
80
|
+
* Disposes every mesh's material(s) under `root`, releasing each one's GPU-side program reference,
|
|
81
|
+
* without touching geometries or textures. Use this for a group whose geometries/textures are
|
|
82
|
+
* shared with a still-live cache (e.g. a GLB template reused by future placements via `.clone(true)`)
|
|
83
|
+
* and only its per-placement material clones (made so each placement's opacity is independent) are
|
|
84
|
+
* exclusively owned by the group.
|
|
85
|
+
*
|
|
86
|
+
* @param three - The resolved Three.js module (from `loadThree()`).
|
|
87
|
+
*/
|
|
88
|
+
export function disposeMaterialsOnly(three, root) {
|
|
89
|
+
root.traverse((obj) => {
|
|
90
|
+
const mesh = obj;
|
|
91
|
+
if (!mesh.isMesh)
|
|
92
|
+
return;
|
|
93
|
+
const materials = Array.isArray(mesh.material) ? mesh.material : [mesh.material];
|
|
94
|
+
for (const material of materials) {
|
|
95
|
+
disposeMaterial(three, material, false);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Fully disposes every mesh's geometry, material(s), and textures under `root`. Use this only for
|
|
101
|
+
* an object that exclusively owns its GPU resources — e.g. a loaded GLB template root being evicted
|
|
102
|
+
* from cache — never for a placement group whose geometries/textures came from a shared template
|
|
103
|
+
* (use {@link disposeMaterialsOnly} for that instead).
|
|
104
|
+
*
|
|
105
|
+
* @param three - The resolved Three.js module (from `loadThree()`).
|
|
106
|
+
*/
|
|
107
|
+
export function disposeObject3D(three, root) {
|
|
108
|
+
root.traverse((obj) => {
|
|
109
|
+
var _a;
|
|
110
|
+
const mesh = obj;
|
|
111
|
+
if (!mesh.isMesh)
|
|
112
|
+
return;
|
|
113
|
+
(_a = mesh.geometry) === null || _a === void 0 ? void 0 : _a.dispose();
|
|
114
|
+
const materials = Array.isArray(mesh.material) ? mesh.material : [mesh.material];
|
|
115
|
+
for (const material of materials) {
|
|
116
|
+
disposeMaterial(three, material, true);
|
|
117
|
+
}
|
|
118
|
+
});
|
|
119
|
+
}
|
|
41
120
|
//# sourceMappingURL=threeScene.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threeScene.js","sourceRoot":"","sources":["../../../src/utils/threeScene.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAA6B,EAC7B,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IACjD,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACpB,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAA6B,EAC7B,KAAkB,EAClB,MAAqC;IAErC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;YAC/D,KAAK,EAAE,CAAA;YACP,SAAQ;QACV,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAC5E,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC9E,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QACtB,KAAK,EAAE,CAAA;IACT,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC"}
|
|
1
|
+
{"version":3,"file":"threeScene.js","sourceRoot":"","sources":["../../../src/utils/threeScene.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,KAA6B,EAC7B,IAAoB;IAEpB,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IAChD,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;IACjD,MAAM,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IACpB,OAAO,MAAM,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAA6B,EAC7B,KAAkB,EAClB,MAAqC;IAErC,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;YAC7B,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;YAC/D,KAAK,EAAE,CAAA;YACP,SAAQ;QACV,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC,CAAA;QAC5E,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;QAC9E,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAA;QACtB,KAAK,EAAE,CAAA;IACT,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC;AAED,2FAA2F;AAC3F,MAAM,qBAAqB,GAAG;IAC5B,KAAK;IACL,UAAU;IACV,OAAO;IACP,SAAS;IACT,iBAAiB;IACjB,aAAa;IACb,QAAQ;IACR,UAAU;IACV,cAAc;IACd,WAAW;IACX,cAAc;IACd,aAAa;IACb,aAAa;IACb,cAAc;IACd,oBAAoB;IACpB,uBAAuB;IACvB,eAAe;IACf,mBAAmB;IACnB,iBAAiB;IACjB,cAAc;IACd,gBAAgB;IAChB,yBAAyB;IACzB,eAAe;CACP,CAAA;AAEV,SAAS,eAAe,CACtB,KAA6B,EAC7B,QAAwB,EACxB,eAAwB;IAExB,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,QAA8C,CAAA;QAC7D,KAAK,MAAM,GAAG,IAAI,qBAAqB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;YACzB,IAAI,KAAK,YAAY,KAAK,CAAC,OAAO,EAAE,CAAC;gBACnC,KAAK,CAAC,OAAO,EAAE,CAAA;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IACD,QAAQ,CAAC,OAAO,EAAE,CAAA;AACpB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAA6B,EAAE,IAAoB;IACtF,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE;QACpB,MAAM,IAAI,GAAG,GAAiB,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAM;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAChF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;QACzC,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,KAA6B,EAAE,IAAoB;IACjF,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,EAAE,EAAE;;QACpB,MAAM,IAAI,GAAG,GAAiB,CAAA;QAC9B,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAM;QACxB,MAAA,IAAI,CAAC,QAAQ,0CAAE,OAAO,EAAE,CAAA;QACxB,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAChF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QACxC,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC"}
|