@combeenation/3d-viewer 6.5.0 → 7.0.0-beta1

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.
Files changed (69) hide show
  1. package/dist/lib-cjs/api/classes/element.d.ts +4 -0
  2. package/dist/lib-cjs/api/classes/element.js +59 -58
  3. package/dist/lib-cjs/api/classes/element.js.map +1 -1
  4. package/dist/lib-cjs/api/classes/event.d.ts +55 -1
  5. package/dist/lib-cjs/api/classes/event.js +55 -1
  6. package/dist/lib-cjs/api/classes/event.js.map +1 -1
  7. package/dist/lib-cjs/api/classes/fuzzyMap.d.ts +7 -0
  8. package/dist/lib-cjs/api/classes/fuzzyMap.js +22 -0
  9. package/dist/lib-cjs/api/classes/fuzzyMap.js.map +1 -0
  10. package/dist/lib-cjs/api/classes/parameter.d.ts +12 -0
  11. package/dist/lib-cjs/api/classes/parameter.js +86 -33
  12. package/dist/lib-cjs/api/classes/parameter.js.map +1 -1
  13. package/dist/lib-cjs/api/classes/parameterObservable.js +2 -27
  14. package/dist/lib-cjs/api/classes/parameterObservable.js.map +1 -1
  15. package/dist/lib-cjs/api/classes/variant.d.ts +23 -4
  16. package/dist/lib-cjs/api/classes/variant.js +45 -20
  17. package/dist/lib-cjs/api/classes/variant.js.map +1 -1
  18. package/dist/lib-cjs/api/classes/variantInstance.d.ts +11 -2
  19. package/dist/lib-cjs/api/classes/variantInstance.js +22 -2
  20. package/dist/lib-cjs/api/classes/variantInstance.js.map +1 -1
  21. package/dist/lib-cjs/api/classes/viewer.d.ts +13 -1
  22. package/dist/lib-cjs/api/classes/viewer.js +57 -7
  23. package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
  24. package/dist/lib-cjs/api/classes/viewerLight.js.map +1 -1
  25. package/dist/lib-cjs/api/manager/animationManager.d.ts +3 -3
  26. package/dist/lib-cjs/api/manager/animationManager.js.map +1 -1
  27. package/dist/lib-cjs/api/manager/sceneManager.js.map +1 -1
  28. package/dist/lib-cjs/api/manager/tagManager.d.ts +108 -0
  29. package/dist/lib-cjs/api/manager/tagManager.js +420 -0
  30. package/dist/lib-cjs/api/manager/tagManager.js.map +1 -0
  31. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +8 -3
  32. package/dist/lib-cjs/api/manager/variantInstanceManager.js +27 -8
  33. package/dist/lib-cjs/api/manager/variantInstanceManager.js.map +1 -1
  34. package/dist/lib-cjs/api/store/specStorage.d.ts +8 -0
  35. package/dist/lib-cjs/api/store/specStorage.js +15 -0
  36. package/dist/lib-cjs/api/store/specStorage.js.map +1 -1
  37. package/dist/lib-cjs/api/util/babylonHelper.d.ts +36 -7
  38. package/dist/lib-cjs/api/util/babylonHelper.js +92 -15
  39. package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
  40. package/dist/lib-cjs/api/util/globalTypes.d.ts +38 -1
  41. package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +1 -0
  42. package/dist/lib-cjs/api/util/sceneLoaderHelper.js +20 -2
  43. package/dist/lib-cjs/api/util/sceneLoaderHelper.js.map +1 -1
  44. package/dist/lib-cjs/buildinfo.json +1 -1
  45. package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
  46. package/dist/lib-cjs/index.d.ts +2 -1
  47. package/dist/lib-cjs/index.js +3 -1
  48. package/dist/lib-cjs/index.js.map +1 -1
  49. package/package.json +1 -1
  50. package/src/api/classes/element.ts +96 -82
  51. package/src/api/classes/event.ts +68 -1
  52. package/src/api/classes/fuzzyMap.ts +21 -0
  53. package/src/api/classes/parameter.ts +91 -34
  54. package/src/api/classes/parameterObservable.ts +2 -29
  55. package/src/api/classes/variant.ts +82 -33
  56. package/src/api/classes/variantInstance.ts +27 -1
  57. package/src/api/classes/viewer.ts +63 -12
  58. package/src/api/classes/viewerLight.ts +10 -10
  59. package/src/api/manager/animationManager.ts +2 -2
  60. package/src/api/manager/sceneManager.ts +5 -1
  61. package/src/api/manager/tagManager.ts +451 -0
  62. package/src/api/manager/variantInstanceManager.ts +35 -8
  63. package/src/api/store/specStorage.ts +17 -0
  64. package/src/api/util/babylonHelper.ts +99 -21
  65. package/src/api/util/globalTypes.ts +56 -1
  66. package/src/api/util/sceneLoaderHelper.ts +21 -2
  67. package/src/dev.ts +3 -1
  68. package/src/index.ts +2 -0
  69. package/src/types.d.ts +7 -0
@@ -56,6 +56,10 @@ export declare class Element extends VariantParameterizable {
56
56
  * Merges the {@link Variant}'s parameters and those from the {@link Element}.
57
57
  */
58
58
  get inheritedParameters(): ParameterBag;
59
+ /**
60
+ * The actual {@link TransformNode}s that make up this {@link Element}.
61
+ */
62
+ get nodesFlat(): TransformNode[];
59
63
  /**
60
64
  * The actual {@link Mesh}es that make up this {@link Element}.
61
65
  * Handy for e.g. creating a bounding box around an entire element.
@@ -15,6 +15,7 @@ const resourceHelper_1 = require("../util/resourceHelper");
15
15
  const sceneLoaderHelper_1 = require("../util/sceneLoaderHelper");
16
16
  const variantParameterizable_1 = require("./../classes/variantParameterizable");
17
17
  const dottedPath_1 = require("./dottedPath");
18
+ const event_1 = require("./event");
18
19
  const parameter_1 = require("./parameter");
19
20
  const highlightLayer_1 = require("@babylonjs/core/Layers/highlightLayer");
20
21
  const pbrMaterial_1 = require("@babylonjs/core/Materials/PBR/pbrMaterial");
@@ -22,7 +23,6 @@ const dynamicTexture_1 = require("@babylonjs/core/Materials/Textures/dynamicText
22
23
  const material_1 = require("@babylonjs/core/Materials/material");
23
24
  const math_color_1 = require("@babylonjs/core/Maths/math.color");
24
25
  const abstractMesh_1 = require("@babylonjs/core/Meshes/abstractMesh");
25
- const instancedMesh_1 = require("@babylonjs/core/Meshes/instancedMesh");
26
26
  const mesh_1 = require("@babylonjs/core/Meshes/mesh");
27
27
  const transformNode_1 = require("@babylonjs/core/Meshes/transformNode");
28
28
  const lodash_es_1 = require("lodash-es");
@@ -47,9 +47,20 @@ class Element extends variantParameterizable_1.VariantParameterizable {
47
47
  if ((_a = process.env.NODE_ENV) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes('dev')) {
48
48
  this.assertPathDefinitions();
49
49
  }
50
- const nodes = this.variant.inheritedNodes.map(node => (0, babylonHelper_1.cloneTransformNode)(node, this.filterNode.bind(this)));
50
+ const nodes = this.variant.inheritedNodes.map(node => {
51
+ const nodeNamingStrategy = {
52
+ handler: variant.viewer.nodeNamingStrategyHandler,
53
+ payload: {
54
+ variantInstance: variant.variantInstance,
55
+ variant: variant,
56
+ variantParameterizable: this,
57
+ },
58
+ };
59
+ return (0, babylonHelper_1.cloneTransformNode)(node, nodeNamingStrategy, this.filterNode.bind(this), true);
60
+ });
51
61
  this.nodes = nodes.filter(node => !!node);
52
62
  this._dottedNodes = (0, babylonHelper_1.mapToDottedNodes)(this.nodes, node => node instanceof transformNode_1.TransformNode);
63
+ variant.broadcastEvent(event_1.Event.ELEMENT_NODES_CLONED, this);
53
64
  this.addMissingMaterialObservers();
54
65
  this.addParameterObservers();
55
66
  }
@@ -58,7 +69,9 @@ class Element extends variantParameterizable_1.VariantParameterizable {
58
69
  */
59
70
  static create(variant, name) {
60
71
  return __awaiter(this, void 0, void 0, function* () {
61
- return new Element(variant, name);
72
+ const element = new Element(variant, name);
73
+ variant.broadcastEvent(event_1.Event.ELEMENT_CREATED, element);
74
+ return element;
62
75
  });
63
76
  }
64
77
  /**
@@ -115,30 +128,25 @@ class Element extends variantParameterizable_1.VariantParameterizable {
115
128
  get inheritedParameters() {
116
129
  return (0, lodash_es_1.merge)({}, this.variant.inheritedParameters, this.parameters);
117
130
  }
131
+ /**
132
+ * The actual {@link TransformNode}s that make up this {@link Element}.
133
+ */
134
+ get nodesFlat() {
135
+ return this.nodes.reduce((acc, cur) => [...acc, ...cur.getChildren(n => n instanceof transformNode_1.TransformNode, false)], this.nodes);
136
+ }
118
137
  /**
119
138
  * The actual {@link Mesh}es that make up this {@link Element}.
120
139
  * Handy for e.g. creating a bounding box around an entire element.
121
140
  */
122
141
  get meshesFlat() {
123
- const flatMeshes = this.nodes.reduce((accFlatMeshes, curNode) => {
124
- const currMeshes = curNode.getChildMeshes(false, n => n instanceof mesh_1.Mesh);
125
- return [...accFlatMeshes, ...currMeshes];
126
- }, []);
127
- return flatMeshes;
142
+ return this.nodes.reduce((acc, cur) => [...acc, ...cur.getChildren(n => n instanceof mesh_1.Mesh, false)], this.nodes.filter(n => n instanceof mesh_1.Mesh));
128
143
  }
129
144
  /**
130
145
  * The actual {@link AbstractMesh}es that make up this {@link Element}.
131
146
  * I.e. (real) Meshes as well as InstancedMeshes.
132
147
  */
133
148
  get abstractMeshesFlat() {
134
- const allAbstractMeshes = this.nodes.reduce((acc, currNode) => {
135
- const currAbstractMeshes = currNode.getChildMeshes(false, n => n instanceof abstractMesh_1.AbstractMesh);
136
- if (currNode instanceof abstractMesh_1.AbstractMesh) {
137
- currAbstractMeshes.unshift(currNode);
138
- }
139
- return [...acc, ...currAbstractMeshes];
140
- }, []); // initial accumulator value
141
- return allAbstractMeshes;
149
+ return this.nodes.reduce((acc, cur) => [...acc, ...cur.getChildren(n => n instanceof abstractMesh_1.AbstractMesh, false)], this.nodes.filter(n => n instanceof abstractMesh_1.AbstractMesh));
142
150
  }
143
151
  /**
144
152
  * The meshes of this {@link Element}.
@@ -352,6 +360,29 @@ class Element extends variantParameterizable_1.VariantParameterizable {
352
360
  return;
353
361
  }
354
362
  if (visible === true) {
363
+ // Override visible state and materials if tag manager is in use to support texture lazy loading
364
+ if (element.variant.viewer.tagManager.parameters.size > 0) {
365
+ const hiddenNodeNames = [];
366
+ element.variant.viewer.tagManager.parameters.forEach((parameterBag, subject) => {
367
+ const nodes = element.variant.viewer.tagManager.getNodesBySubject(subject);
368
+ if (parameterBag[parameter_1.Parameter.VISIBLE] === false) {
369
+ hiddenNodeNames.push(...nodes.map(node => node.name));
370
+ }
371
+ // overwrite materials immediatly, so that original material of node doesn't get loaded, since it could
372
+ // be exchanged by the tag manager
373
+ if (parameterBag[parameter_1.Parameter.MATERIAL]) {
374
+ nodes.forEach(node => (0, babylonHelper_1.setMaterial)(node, parameterBag[parameter_1.Parameter.MATERIAL], false));
375
+ }
376
+ });
377
+ // enable all nodes that are not explicitely hidden by the tag manager
378
+ element.nodesFlat.map(node => {
379
+ if (!hiddenNodeNames.includes(node.name)) {
380
+ node.setEnabled(true);
381
+ }
382
+ });
383
+ return;
384
+ }
385
+ // The default behaviour.
355
386
  element.nodes.forEach(node => {
356
387
  (0, babylonHelper_1.injectNodeMetadata)(node, { visibility: node.isEnabled() });
357
388
  (0, babylonHelper_1.activateTransformNode)(node);
@@ -370,8 +401,8 @@ class Element extends variantParameterizable_1.VariantParameterizable {
370
401
  // we have to deal just with root nodes here due to relative impacts in a node tree
371
402
  element.nodes.forEach(node => (0, babylonHelper_1.transformTransformNode)(node, {
372
403
  scaling: parameter_1.Parameter.parseVector(newValue),
373
- position: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.POSITION] || '(0, 0, 0)'),
374
- rotation: parameter_1.Parameter.parseRotation(element.inheritedParameters[parameter_1.Parameter.ROTATION] || '(0, 0, 0)'),
404
+ position: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.POSITION] || parameter_1.Parameter.getDefaultValue(parameter_1.Parameter.POSITION)),
405
+ rotation: parameter_1.Parameter.parseRotation(element.inheritedParameters[parameter_1.Parameter.ROTATION] || parameter_1.Parameter.getDefaultValue(parameter_1.Parameter.ROTATION)),
375
406
  }));
376
407
  }),
377
408
  ]);
@@ -379,9 +410,9 @@ class Element extends variantParameterizable_1.VariantParameterizable {
379
410
  (element, oldValue, newValue) => __awaiter(this, void 0, void 0, function* () {
380
411
  // we have to deal just with root nodes here due to relative impacts in a node tree
381
412
  element.nodes.forEach(node => (0, babylonHelper_1.transformTransformNode)(node, {
382
- scaling: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.SCALING] || '(1, 1, 1)'),
413
+ scaling: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.SCALING] || parameter_1.Parameter.getDefaultValue(parameter_1.Parameter.SCALING)),
383
414
  position: parameter_1.Parameter.parseVector(newValue),
384
- rotation: parameter_1.Parameter.parseRotation(element.inheritedParameters[parameter_1.Parameter.ROTATION] || '(0, 0, 0)'),
415
+ rotation: parameter_1.Parameter.parseRotation(element.inheritedParameters[parameter_1.Parameter.ROTATION] || parameter_1.Parameter.getDefaultValue(parameter_1.Parameter.ROTATION)),
385
416
  }));
386
417
  }),
387
418
  ]);
@@ -389,8 +420,8 @@ class Element extends variantParameterizable_1.VariantParameterizable {
389
420
  (element, oldValue, newValue) => __awaiter(this, void 0, void 0, function* () {
390
421
  // we have to deal just with root nodes here due to relative impacts in a node tree
391
422
  element.nodes.forEach(node => (0, babylonHelper_1.transformTransformNode)(node, {
392
- scaling: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.SCALING] || '(1, 1, 1)'),
393
- position: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.POSITION] || '(0, 0, 0)'),
423
+ scaling: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.SCALING] || parameter_1.Parameter.getDefaultValue(parameter_1.Parameter.SCALING)),
424
+ position: parameter_1.Parameter.parseVector(element.inheritedParameters[parameter_1.Parameter.POSITION] || parameter_1.Parameter.getDefaultValue(parameter_1.Parameter.POSITION)),
394
425
  rotation: parameter_1.Parameter.parseRotation(newValue),
395
426
  }));
396
427
  }),
@@ -399,14 +430,8 @@ class Element extends variantParameterizable_1.VariantParameterizable {
399
430
  (element, oldValue, newValue) => __awaiter(this, void 0, void 0, function* () {
400
431
  const materialName = newValue.toString();
401
432
  for (const node of element.nodes) {
402
- (0, babylonHelper_1.assertTransformNode)(node, (node) => {
403
- if (node instanceof instancedMesh_1.InstancedMesh) {
404
- throw new Error(`Changing parameter "${parameter_1.Parameter.MATERIAL}" ` +
405
- `of an InstancedMesh is not supported. ` +
406
- `Tried to change node "${node.id}" on element "${element.id}".`);
407
- }
408
- });
409
- (0, babylonHelper_1.setMaterial)(element.variant.viewer.scene, node, materialName, true, element.variant);
433
+ (0, babylonHelper_1.assertTransformNode)(node, node => (0, babylonHelper_1.assertMeshCapability)(node, parameter_1.Parameter.MATERIAL));
434
+ (0, babylonHelper_1.setMaterial)(node, materialName, true, element.variant);
410
435
  }
411
436
  }),
412
437
  ]);
@@ -414,13 +439,7 @@ class Element extends variantParameterizable_1.VariantParameterizable {
414
439
  (element, oldValue, newValue) => __awaiter(this, void 0, void 0, function* () {
415
440
  const color = parameter_1.Parameter.parseColor(newValue);
416
441
  element.nodes.forEach(node => {
417
- (0, babylonHelper_1.assertTransformNode)(node, (node) => {
418
- if (node instanceof instancedMesh_1.InstancedMesh) {
419
- throw new Error(`Changing parameter "${parameter_1.Parameter.MATERIAL_COLOR}" ` +
420
- `of an InstancedMesh is not supported. ` +
421
- `Tried to change node "${node.id}" on element "${element.id}".`);
422
- }
423
- });
442
+ (0, babylonHelper_1.assertTransformNode)(node, node => (0, babylonHelper_1.assertMeshCapability)(node, parameter_1.Parameter.MATERIAL_COLOR));
424
443
  if (this.variant.viewer.cloneMaterialsOnMutation) {
425
444
  if (!(0, lodash_es_1.has)(node.metadata, 'dirty.material')) {
426
445
  (0, babylonHelper_1.cloneTransformNodeMaterial)(node);
@@ -438,13 +457,7 @@ class Element extends variantParameterizable_1.VariantParameterizable {
438
457
  (element, oldValue, newValue) => __awaiter(this, void 0, void 0, function* () {
439
458
  const metallness = parameter_1.Parameter.parseNumber(newValue);
440
459
  element.nodes.forEach(node => {
441
- (0, babylonHelper_1.assertTransformNode)(node, (node) => {
442
- if (node instanceof instancedMesh_1.InstancedMesh) {
443
- throw new Error(`Changing parameter "${parameter_1.Parameter.MATERIAL_METALLNESS}" ` +
444
- `of an InstancedMesh is not supported. ` +
445
- `Tried to change node "${node.id}" on element "${element.id}".`);
446
- }
447
- });
460
+ (0, babylonHelper_1.assertTransformNode)(node, node => (0, babylonHelper_1.assertMeshCapability)(node, parameter_1.Parameter.MATERIAL_METALLNESS));
448
461
  if (this.variant.viewer.cloneMaterialsOnMutation) {
449
462
  if (!(0, lodash_es_1.has)(node.metadata, 'dirty.material')) {
450
463
  (0, babylonHelper_1.cloneTransformNodeMaterial)(node);
@@ -462,13 +475,7 @@ class Element extends variantParameterizable_1.VariantParameterizable {
462
475
  (element, oldValue, newValue) => __awaiter(this, void 0, void 0, function* () {
463
476
  const roughness = parameter_1.Parameter.parseNumber(newValue);
464
477
  element.nodes.forEach(node => {
465
- (0, babylonHelper_1.assertTransformNode)(node, (node) => {
466
- if (node instanceof instancedMesh_1.InstancedMesh) {
467
- throw new Error(`Changing parameter "${parameter_1.Parameter.MATERIAL_ROUGHNESS}" ` +
468
- `of an InstancedMesh is not supported. ` +
469
- `Tried to change node "${node.id}" on element "${element.id}".`);
470
- }
471
- });
478
+ (0, babylonHelper_1.assertTransformNode)(node, node => (0, babylonHelper_1.assertMeshCapability)(node, parameter_1.Parameter.MATERIAL_ROUGHNESS));
472
479
  if (this.variant.viewer.cloneMaterialsOnMutation) {
473
480
  if (!(0, lodash_es_1.has)(node.metadata, 'dirty.material')) {
474
481
  (0, babylonHelper_1.cloneTransformNodeMaterial)(node);
@@ -534,13 +541,7 @@ class Element extends variantParameterizable_1.VariantParameterizable {
534
541
  // Add/Remove meshes to previously created highlight layers.
535
542
  if (highlighted === true) {
536
543
  element.nodes.forEach(node => {
537
- (0, babylonHelper_1.assertTransformNode)(node, (node) => {
538
- if (node instanceof instancedMesh_1.InstancedMesh) {
539
- throw new Error(`Changing parameter "${parameter_1.Parameter.HIGHLIGHTED}" ` +
540
- `of an InstancedMesh is not supported. ` +
541
- `Tried to change node "${node.id}" on element "${element.id}".`);
542
- }
543
- });
544
+ (0, babylonHelper_1.assertTransformNode)(node, node => (0, babylonHelper_1.assertMeshCapability)(node, parameter_1.Parameter.HIGHLIGHTED));
544
545
  let color = math_color_1.Color3.Green();
545
546
  if (element.inheritedParameters[parameter_1.Parameter.HIGHLIGHT_COLOR]) {
546
547
  color = parameter_1.Parameter.parseColor(element.inheritedParameters[parameter_1.Parameter.HIGHLIGHT_COLOR]);
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/api/classes/element.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yDAoB+B;AAC/B,2DAAmF;AACnF,iEAAuE;AACvE,gFAA6E;AAC7E,6CAA0C;AAC1C,2CAAwC;AAExC,0EAAuE;AAGvE,2EAAwE;AACxE,sFAAmF;AACnF,iEAA8D;AAC9D,iEAA0D;AAC1D,sEAAmE;AACnE,wEAAqE;AACrE,sDAAmD;AACnD,wEAAqE;AACrE,yCAAgF;AAEhF;;;;;;GAMG;AACH,MAAa,OAAQ,SAAQ,+CAAsB;IAOjD;;OAEG;IACH,YAAsC,OAAgB,EAAkB,IAAY;;QAClF,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QADe,YAAO,GAAP,OAAO,CAAS;QAAkB,SAAI,GAAJ,IAAI,CAAQ;QATpE,UAAK,GAAoB,EAAE,CAAC;QAEzB,iBAAY,GAAmC,IAAI,GAAG,EAAE,CAAC;QAS1E,IAAI,MAAA,OAAO,CAAC,GAAG,CAAC,QAAQ,0CAAE,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,EAAE;YACvD,IAAI,CAAC,qBAAqB,EAAE,CAAC;SAC9B;QACD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,kCAAkB,EAAC,IAAI,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5G,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAoB,CAAC;QAC7D,IAAI,CAAC,YAAY,GAAG,IAAA,gCAAgB,EAAgB,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,6BAAa,CAAC,CAAC;QACvG,IAAI,CAAC,2BAA2B,EAAE,CAAC;QACnC,IAAI,CAAC,qBAAqB,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,MAAM,CAAO,MAAM,CAAC,OAAgB,EAAE,IAAY;;YACvD,OAAO,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;KAAA;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,OAAO,uBAAU,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvE,CAAC;IAED;;OAEG;IACH,IAAI,EAAE;QACJ,MAAM,UAAU,GAAG,uBAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtD,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,cAAc;QACtC,OAAO,UAAU,CAAC,IAAI,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAI,UAAU;QACZ,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,IAAI,IAAA,mBAAO,EAAC,UAAU,CAAC,EAAE;YACvB,OAAO;gBACL,KAAK,EAAE;oBACL,OAAO,EAAE,UAAU;iBACpB;aACmB,CAAC;SACxB;QACD,OAAO,UAA+B,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IAC/B,CAAC;IAED;;OAEG;IACH,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,UAAU,CAAC,UAAU,IAAI,EAAE,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACH,IAAI,mBAAmB;QACrB,OAAO,IAAA,iBAAK,EAAC,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACtE,CAAC;IAED;;;OAGG;IACH,IAAI,UAAU;QACZ,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE;YAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,WAAI,CAAW,CAAC;YACnF,OAAO,CAAC,GAAG,aAAa,EAAE,GAAG,UAAU,CAAC,CAAC;QAC3C,CAAC,EAAE,EAAY,CAAC,CAAC;QACjB,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;OAGG;IACH,IAAI,kBAAkB;QACpB,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE;YAC5D,MAAM,kBAAkB,GAAG,QAAQ,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,2BAAY,CAAC,CAAC;YAC1F,IAAI,QAAQ,YAAY,2BAAY,EAAE;gBACpC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;aACtC;YACD,OAAO,CAAC,GAAG,GAAG,EAAE,GAAG,kBAAkB,CAAC,CAAC;QACzC,CAAC,EAAE,EAAoB,CAAC,CAAC,CAAC,4BAA4B;QACtD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,WAAI,CAAW,CAAC;IACnE,CAAC;IAED;;OAEG;IACH,IAAI,cAAc,CAAC,KAAiC;QAClD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED;;OAEG;IACI,OAAO;QACZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YACxB,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACI,OAAO,CAAC,UAA8B;QAC3C,MAAM,WAAW,GAAG,uBAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC;QACpD,IAAI,CAAC,IAAI,EAAE;YACT,MAAM,IAAI,KAAK,CAAC,mBAAmB,WAAW,CAAC,IAAI,iCAAiC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAClG;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACU,OAAO,CAAC,UAA8B;;YACjD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC5C,IAAI,IAAI,YAAY,WAAI,EAAE;gBACxB,OAAO,IAAI,CAAC;aACb;YACD,OAAO,IAAI,CAAC;QACd,CAAC;KAAA;IAED;;OAEG;IACI,sBAAsB,CAAC,IAAY;QACxC,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;YAClE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,0BAA0B,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAC7E;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,sBAAsB,CAAC,IAAY;QACxC,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;YAClE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,yCAAyC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAC5F;QACD,OAAO,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,IAAY;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED;;OAEG;IACI,gBAAgB,CAAC,IAAY;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACU,gBAAgB,CAAC,UAAyB;;;;;YACrD,OAAO,OAAM,gBAAgB,YAAC,UAAU,EAAE;QAC5C,CAAC;KAAA;IAED;;;OAGG;IACI,oBAAoB,CAAC,SAAiB,EAAE,QAA0B,EAAE,OAAa;QACtF,IAAI,OAAO,IAAI,CAAC,CAAC,OAAO,YAAY,WAAW,CAAC,EAAE;YAChD,MAAM,IAAI,KAAK,CAAC,gFAAgF,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAC9G;QACD,IAAI,CAAC,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE;YACvE,MAAM,IAAI,KAAK,CAAC,iBAAiB,SAAS,yCAAyC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACjG;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,IAAI,YAAY,2BAAY,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,kFAAkF,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAChH;QACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC,YAAY,CAAC,6BAA6B,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE;YACxG,MAAM,QAAQ,GAAG,IAAA,qCAAqB,EAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpG,IAAI,OAAO,EAAE;gBACX,OAAO,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;gBACxC,OAAO,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,QAAQ,CAAC,IAAI,IAAI,CAAC;aAC3C;YACD,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,SAAiB,EAAE,WAA8B;QACpE,2CAA2C;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,IAAI,YAAY,2BAAY,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CACb,iEAAiE,SAAS,IAAI,GAAG,eAAe,IAAI,CAAC,EAAE,IAAI,CAC5G,CAAC;SACH;QAED,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE;YACjE,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;gBAC1D,IAAA,0CAA0B,EAAC,IAAI,CAAC,CAAC;aAClC;YACD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,wBAAwB,CAAC,EAAE;gBACjD,yCAAyC;gBACzC,IAAA,kCAAkB,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;aACtE;SACF;aAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;YACzB,iFAAiF;YACjF,kFAAkF;YAClF,MAAM,MAAM,GAAG,IAAI,yBAAW,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,SAAS,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC9F,MAAM,CAAC,SAAS,GAAG,GAAG,CAAC;YACvB,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC;YACtB,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;SACxB;QAED,2FAA2F;QAC3F,kHAAkH;QAClH,gBAAgB;QAChB,2GAA2G;QAC3G,mFAAmF;QACnF,IAAI,CAAC,QAAQ,CAAC,gBAAgB,GAAG,mBAAQ,CAAC,0BAA0B,CAAC;QAErE,6CAA6C;QAC7C,MAAM,cAAc,GAAG;YACrB,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,MAAM,EAAE,WAAW,CAAC,MAAM;SAC3B,CAAC;QACF,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACnE,IAAI,IAAA,oBAAQ,EAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE;YAChD,cAAc,CAAC,KAAK,GAAG,mBAAmB,CAAC,cAAc,CAAC;YAC1D,cAAc,CAAC,MAAM,GAAG,mBAAmB,CAAC,cAAc,CAAC;SAC5D;aAAM,IAAI,IAAA,yBAAa,EAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE;YAC5D,cAAc,CAAC,KAAK,GAAG,mBAAmB,CAAC,cAAc,CAAC,KAAK,CAAC;YAChE,cAAc,CAAC,MAAM,GAAG,mBAAmB,CAAC,cAAc,CAAC,MAAM,CAAC;SACnE;QAED,yDAAyD;QACzD,MAAM,OAAO,GAAG,IAAI,+BAAc,CAChC,GAAG,IAAI,CAAC,EAAE,IAAI,SAAS,UAAU,EACjC,cAAc,EACd,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EACzB,KAAK,CACN,CAAC;QAEF,wBAAwB;QACxB,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;QACjC,GAAG,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEtB,yDAAyD;QACzD,IAAA,kCAAkB,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAEzC,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACU,oBAAoB,CAAC,SAAiB,EAAE,SAAiB;;YACpE,MAAM,KAAK,GAAG,MAAM,IAAA,mCAAkB,EAAC,SAAS,CAAC,CAAC;YAClD,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;KAAA;IAED;;OAEG;IACU,uBAAuB,CAAC,SAAiB,EAAE,SAAiB;;YACvE,MAAM,KAAK,GAAG,MAAM,IAAA,sCAAqB,EAAC,SAAS,CAAC,CAAC;YACrD,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;KAAA;IAED;;OAEG;IACO,2BAA2B;QACnC,KAAK,MAAM,YAAY,IAAI,IAAI,CAAC,kBAAkB,EAAE;YAClD,IAAA,8CAA0B,EAAC,YAAY,CAAC,CAAC;SAC1C;IACH,CAAC;IAED;;OAEG;IACO,qBAAqB;QAC7B,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,OAAO,EAAE;YAC9C,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,IAAI,OAAO,CAAC;gBACZ,IAAI;oBACF,OAAO,GAAG,qBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;iBAC5C;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO;iBACR;gBACD,IAAI,OAAO,KAAK,IAAI,EAAE;oBACpB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBAC3B,IAAA,kCAAkB,EAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;wBAC3D,IAAA,qCAAQ,EAAC,IAAI,CAAC,CAAC;oBACjB,CAAC,CAAC,CAAC;iBACJ;qBAAM,IAAI,OAAO,KAAK,KAAK,EAAE;oBAC5B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBAC3B,IAAA,kCAAkB,EAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;wBAC3D,IAAA,uCAAU,EAAC,IAAI,CAAC,CAAC;oBACnB,CAAC,CAAC,CAAC;iBACJ;YACH,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,OAAO,EAAE;YAC9C,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,mFAAmF;gBACnF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAC3B,IAAA,sCAAsB,EAAC,IAAI,EAAE;oBAC3B,OAAO,EAAE,qBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC;oBACxC,QAAQ,EAAE,qBAAS,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC;oBAC/F,QAAQ,EAAE,qBAAS,CAAC,aAAa,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC;iBAClG,CAAC,CACH,CAAC;YACJ,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,QAAQ,EAAE;YAC/C,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,mFAAmF;gBACnF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAC3B,IAAA,sCAAsB,EAAC,IAAI,EAAE;oBAC3B,OAAO,EAAE,qBAAS,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC;oBAC7F,QAAQ,EAAE,qBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC;oBACzC,QAAQ,EAAE,qBAAS,CAAC,aAAa,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC;iBAClG,CAAC,CACH,CAAC;YACJ,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,QAAQ,EAAE;YAC/C,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,mFAAmF;gBACnF,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAC3B,IAAA,sCAAsB,EAAC,IAAI,EAAE;oBAC3B,OAAO,EAAE,qBAAS,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC;oBAC7F,QAAQ,EAAE,qBAAS,CAAC,WAAW,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,QAAQ,CAAC,IAAI,WAAW,CAAC;oBAC/F,QAAQ,EAAE,qBAAS,CAAC,aAAa,CAAC,QAAQ,CAAC;iBAC5C,CAAC,CACH,CAAC;YACJ,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,QAAQ,EAAE;YAC/C,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACzC,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,EAAE;oBAChC,IAAA,mCAAmB,EAAC,IAAI,EAAE,CAAC,IAAkB,EAAE,EAAE;wBAC/C,IAAI,IAAI,YAAY,6BAAa,EAAE;4BACjC,MAAM,IAAI,KAAK,CACb,uBAAuB,qBAAS,CAAC,QAAQ,IAAI;gCAC3C,wCAAwC;gCACxC,yBAAyB,IAAI,CAAC,EAAE,iBAAiB,OAAO,CAAC,EAAE,IAAI,CAClE,CAAC;yBACH;oBACH,CAAC,CAAC,CAAC;oBACH,IAAA,2BAAW,EAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;iBACtF;YACH,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,cAAc,EAAE;YACrD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,MAAM,KAAK,GAAG,qBAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBAC7C,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC3B,IAAA,mCAAmB,EAAC,IAAI,EAAE,CAAC,IAAkB,EAAE,EAAE;wBAC/C,IAAI,IAAI,YAAY,6BAAa,EAAE;4BACjC,MAAM,IAAI,KAAK,CACb,uBAAuB,qBAAS,CAAC,cAAc,IAAI;gCACjD,wCAAwC;gCACxC,yBAAyB,IAAI,CAAC,EAAE,iBAAiB,OAAO,CAAC,EAAE,IAAI,CAClE,CAAC;yBACH;oBACH,CAAC,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE;wBAChD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;4BACzC,IAAA,0CAA0B,EAAC,IAAI,CAAC,CAAC;yBAClC;wBACD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,CAAC,EAAE;4BAC/C,yCAAyC;4BACzC,IAAA,kCAAkB,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;yBACxE;qBACF;oBACD,IAAA,gCAAgB,EAAC,IAAI,EAAE,KAAK,CAAC,CAAC;gBAChC,CAAC,CAAC,CAAC;YACL,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,mBAAmB,EAAE;YAC1D,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,MAAM,UAAU,GAAG,qBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACnD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC3B,IAAA,mCAAmB,EAAC,IAAI,EAAE,CAAC,IAAkB,EAAE,EAAE;wBAC/C,IAAI,IAAI,YAAY,6BAAa,EAAE;4BACjC,MAAM,IAAI,KAAK,CACb,uBAAuB,qBAAS,CAAC,mBAAmB,IAAI;gCACtD,wCAAwC;gCACxC,yBAAyB,IAAI,CAAC,EAAE,iBAAiB,OAAO,CAAC,EAAE,IAAI,CAClE,CAAC;yBACH;oBACH,CAAC,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE;wBAChD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;4BACzC,IAAA,0CAA0B,EAAC,IAAI,CAAC,CAAC;yBAClC;wBACD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,2BAA2B,CAAC,EAAE;4BACpD,yCAAyC;4BACzC,IAAA,kCAAkB,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;yBAC7E;qBACF;oBACD,IAAA,qCAAqB,EAAC,IAAI,EAAE,UAAU,CAAC,CAAC;gBAC1C,CAAC,CAAC,CAAC;YACL,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,kBAAkB,EAAE;YACzD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,MAAM,SAAS,GAAG,qBAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAClD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBAC3B,IAAA,mCAAmB,EAAC,IAAI,EAAE,CAAC,IAAkB,EAAE,EAAE;wBAC/C,IAAI,IAAI,YAAY,6BAAa,EAAE;4BACjC,MAAM,IAAI,KAAK,CACb,uBAAuB,qBAAS,CAAC,kBAAkB,IAAI;gCACrD,wCAAwC;gCACxC,yBAAyB,IAAI,CAAC,EAAE,iBAAiB,OAAO,CAAC,EAAE,IAAI,CAClE,CAAC;yBACH;oBACH,CAAC,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,wBAAwB,EAAE;wBAChD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,gBAAgB,CAAC,EAAE;4BACzC,IAAA,0CAA0B,EAAC,IAAI,CAAC,CAAC;yBAClC;wBACD,IAAI,CAAC,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,EAAE,0BAA0B,CAAC,EAAE;4BACnD,yCAAyC;4BACzC,IAAA,kCAAkB,EAAC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;yBAC5E;qBACF;oBACD,IAAA,oCAAoB,EAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBACxC,CAAC,CAAC,CAAC;YACL,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,eAAe,EAAE;YACtD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;;gBAC7E,0CAA0C;gBAC1C,MAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,WAAW,CAAC,0CAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;oBACtE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBAClE,CAAC,CAAC,CAAC;YACL,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,iBAAiB,EAAE;YACxD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;;gBAC7E,IAAI,IAAI,CAAC;gBACT,IAAI;oBACF,IAAI,GAAG,qBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;iBACzC;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO;iBACR;gBACD,QAAQ,IAAI,EAAE;oBACZ,KAAK,IAAI;wBACP,IAAI,OAAO,CAAC,eAAe,EAAE;4BAC3B,MAAM;yBACP;wBACD,OAAO,CAAC,cAAc,GAAG,IAAI,+BAAc,CACzC,uBAAU,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,EACvD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAC7B,CAAC;wBACF,MAAM;oBACR,KAAK,KAAK;wBACR,MAAA,OAAO,CAAC,cAAc,0CAAE,OAAO,EAAE,CAAC;wBAClC,MAAM;iBACT;YACH,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,WAAW,EAAE;YAClD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;;gBAC7E,IAAI,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,iBAAiB,CAAC,EAAE;oBAC7D,OAAO;iBACR;gBACD,yEAAyE;gBACzE,MAAA,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,iBAAiB,CAAC,0CAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;oBAC5E,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,UAAU,CAAC,qBAAS,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,CAAC;gBACxE,CAAC,CAAC,CAAC;gBACH,IAAI,WAAW,CAAC;gBAChB,IAAI;oBACF,WAAW,GAAG,qBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;iBAChD;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO;iBACR;gBACD,4DAA4D;gBAC5D,IAAI,WAAW,KAAK,IAAI,EAAE;oBACxB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBAC3B,IAAA,mCAAmB,EAAC,IAAI,EAAE,CAAC,IAAkB,EAAE,EAAE;4BAC/C,IAAI,IAAI,YAAY,6BAAa,EAAE;gCACjC,MAAM,IAAI,KAAK,CACb,uBAAuB,qBAAS,CAAC,WAAW,IAAI;oCAC9C,wCAAwC;oCACxC,yBAAyB,IAAI,CAAC,EAAE,iBAAiB,OAAO,CAAC,EAAE,IAAI,CAClE,CAAC;6BACH;wBACH,CAAC,CAAC,CAAC;wBACH,IAAI,KAAK,GAAG,mBAAM,CAAC,KAAK,EAAE,CAAC;wBAC3B,IAAI,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,eAAe,CAAC,EAAE;4BAC1D,KAAK,GAAG,qBAAS,CAAC,UAAU,CAAC,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,eAAe,CAAC,CAAC,CAAC;yBACtF;wBACD,IAAI,OAAO,OAAO,CAAC,eAAe,KAAK,WAAW,EAAE;4BAClD,IAAA,mCAAmB,EAAC,OAAO,CAAC,eAAe,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;yBAC3D;oBACH,CAAC,CAAC,CAAC;iBACJ;qBAAM,IAAI,WAAW,KAAK,KAAK,EAAE;oBAChC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;wBAC3B,IAAI,OAAO,OAAO,CAAC,eAAe,KAAK,WAAW,EAAE;4BAClD,IAAA,wCAAwB,EAAC,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;yBACzD;oBACH,CAAC,CAAC,CAAC;iBACJ;YACH,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,WAAW,EAAE;YAClD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,IAAI,UAAU,CAAC;gBACf,IAAI;oBACF,UAAU,GAAG,qBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;iBAC/C;gBAAC,OAAO,CAAC,EAAE;oBACV,OAAO;iBACR;gBACD,IAAI,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,qBAAS,CAAC,uBAAuB,CAAC,CAAC;gBAC9E,IAAI,CAAC,QAAQ,EAAE;oBACb,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;iBAC7E;gBACD,IAAI,UAAU,KAAK,IAAI,EAAE;oBACvB,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,oCAAoB,CAAC,CAAC;iBACnE;gBACD,IAAI,UAAU,KAAK,KAAK,EAAE;oBACxB,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,yCAAyB,CAAC,CAAC;iBACxE;YACH,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,uBAAuB,EAAE;YAC9D,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,8GAA8G;gBAC9G,8EAA8E;gBAC9E,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAClF,gCAAgC;gBAChC,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,yCAAyB,CAAC,CAAC;gBACvE,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE;oBAC/B,gFAAgF;oBAChF,IAAI,CAAC,QAAQ,EAAE;wBACb,QAAQ,GAAG,QAAQ,CAAC;qBACrB;oBACD,MAAM,IAAI,CAAC,sBAAsB,CAAC,QAAQ,EAAE,oCAAoB,CAAC,CAAC;iBACnE;YACH,CAAC,CAAA;SACF,CAAC,CAAC;QACH,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,qBAAS,CAAC,eAAe,EAAE;YACtD,CAAO,OAAgB,EAAE,QAAwB,EAAE,QAAwB,EAAE,EAAE;gBAC7E,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAA,iCAAiB,EAAC,IAAI,EAAE,qBAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC3F,CAAC,CAAA;SACF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACO,UAAU,CAAC,IAAmB;QACtC,IAAI,aAAa,GAAa,EAAE,CAAC;QACjC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;YAChD,aAAa,GAAG,IAAA,iBAAK,EAAC,aAAa,EAAE,uBAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC;QACjF,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,CAAC,EAAc,EAAE,EAAE;YACnC,MAAM,kBAAkB,GAAG,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;YACxE,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBAChE,OAAO,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,GAAG,GAAG,uBAAU,CAAC,SAAS,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YACH,OAAO,kBAAkB,IAAI,eAAe,CAAC;QAC/C,CAAC,CAAC;QACF,MAAM,YAAY,GAAG,CAAC,EAAc,EAAE,EAAE;YACtC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE;gBACjC,OAAO,KAAK,CAAC;aACd;YACD,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC;QACF,OAAO,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACxF,CAAC;IAED;;;OAGG;IACO,qBAAqB;;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC;QACtD,IAAI,WAAW,CAAC,IAAI,KAAK,CAAC,EAAE;YAC1B,MAAM,IAAI,KAAK,CAAC,0CAA0C,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SACxE;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QACvF,MAAM,OAAO,GAAG,MAAA,IAAI,CAAC,eAAe,CAAC,OAAO,0CAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,uBAAU,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QACxF,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC/E,IAAA,iBAAK,EAAS,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7C,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC7B,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,iCAAiC,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;aACtF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACW,sBAAsB,CAAC,QAAwB,EAAE,OAAyB;;YACtF,MAAM,MAAM,GAAY,EAAE,CAAC;YAC3B,KAAK,MAAM,SAAS,IAAI,qBAAS,CAAC,uBAAuB,CAAC,QAAQ,CAAC,EAAE;gBACnE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBACjE,IAAI,WAAW,EAAE;oBACf,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;iBAChC;aACF;YACD,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,kBAAkB,EAAqB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC7G,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;gBACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;oBACxB,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAC3B,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;CACF;AA7pBD,0BA6pBC"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/api/classes/element.ts"],"names":[],"mappings":"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"}
@@ -125,7 +125,7 @@ export declare class Event {
125
125
  *
126
126
  * Scopes:
127
127
  * * Global
128
- * * {@link Variant}
128
+ * * {@link Viewer}
129
129
  *
130
130
  * Payload:
131
131
  * * variant: {@link Variant}
@@ -237,6 +237,39 @@ export declare class Event {
237
237
  * * variantInstance: {@link VariantInstance}
238
238
  */
239
239
  static readonly VARIANT_INSTANCE_DESTROYED = "variantInstanceDestroyed";
240
+ /**
241
+ * Fired after all {@link VariantInstance}s have been either created or registered.
242
+ *
243
+ * Scopes:
244
+ * * Global
245
+ * * {@link Viewer}
246
+ *
247
+ * Payload:
248
+ * * viewer: {@link viewer}
249
+ */
250
+ static readonly VARIANT_INSTANCES_READY = "variantInstancesReady";
251
+ /**
252
+ * Fired after the nodes of a {@link Variant} has been cloned to the {@link Element}.
253
+ *
254
+ * Scopes:
255
+ * * Global
256
+ * * {@link Variant}
257
+ *
258
+ * Payload:
259
+ * * element: {@link Element}
260
+ */
261
+ static readonly ELEMENT_NODES_CLONED = "elementNodesCloned";
262
+ /**
263
+ * Fired after an {@link Element} has been created.
264
+ *
265
+ * Scopes:
266
+ * * Global
267
+ * * {@link Variant}
268
+ *
269
+ * Payload:
270
+ * * element: {@link Element}
271
+ */
272
+ static readonly ELEMENT_CREATED = "elementCreated";
240
273
  /**
241
274
  * Fired after a parameter on an {@link Element} has been committed.
242
275
  *
@@ -319,6 +352,27 @@ export declare class Event {
319
352
  * * {@link SceneManager}
320
353
  */
321
354
  static readonly TEXTURE_LOADING_END = "textureLoadingEnd";
355
+ /**
356
+ * Fired after a {@link Material} has been applied to a {@link Mesh}.
357
+ *
358
+ * Scopes:
359
+ * * Global
360
+ *
361
+ * Payload:
362
+ * * mesh: {@link Mesh}
363
+ * * material: {@link Material}
364
+ */
365
+ static readonly MESH_MATERIAL_APPLIED = "meshMaterialApplied";
366
+ /**
367
+ * Fired after a {@link TagManagerParameterObserver} has been called.
368
+ *
369
+ * Scopes:
370
+ * * Global
371
+ *
372
+ * Payload:
373
+ * * payload: {@link ParameterObserverResult}
374
+ */
375
+ static readonly TAG_MANAGER_PARAMETER_COMMITTED = "tagManagerParameterCommitted";
322
376
  /**
323
377
  * All events defined in this class.
324
378
  */
@@ -169,7 +169,7 @@ Event.SCENE_PROCESSING_END = 'sceneProcessingEnd';
169
169
  *
170
170
  * Scopes:
171
171
  * * Global
172
- * * {@link Variant}
172
+ * * {@link Viewer}
173
173
  *
174
174
  * Payload:
175
175
  * * variant: {@link Variant}
@@ -281,6 +281,39 @@ Event.VARIANT_INSTANCE_CLONED = 'variantInstanceCloned';
281
281
  * * variantInstance: {@link VariantInstance}
282
282
  */
283
283
  Event.VARIANT_INSTANCE_DESTROYED = 'variantInstanceDestroyed';
284
+ /**
285
+ * Fired after all {@link VariantInstance}s have been either created or registered.
286
+ *
287
+ * Scopes:
288
+ * * Global
289
+ * * {@link Viewer}
290
+ *
291
+ * Payload:
292
+ * * viewer: {@link viewer}
293
+ */
294
+ Event.VARIANT_INSTANCES_READY = 'variantInstancesReady';
295
+ /**
296
+ * Fired after the nodes of a {@link Variant} has been cloned to the {@link Element}.
297
+ *
298
+ * Scopes:
299
+ * * Global
300
+ * * {@link Variant}
301
+ *
302
+ * Payload:
303
+ * * element: {@link Element}
304
+ */
305
+ Event.ELEMENT_NODES_CLONED = 'elementNodesCloned';
306
+ /**
307
+ * Fired after an {@link Element} has been created.
308
+ *
309
+ * Scopes:
310
+ * * Global
311
+ * * {@link Variant}
312
+ *
313
+ * Payload:
314
+ * * element: {@link Element}
315
+ */
316
+ Event.ELEMENT_CREATED = 'elementCreated';
284
317
  /**
285
318
  * Fired after a parameter on an {@link Element} has been committed.
286
319
  *
@@ -363,4 +396,25 @@ Event.TEXTURE_LOADING_START = 'textureLoadingStart';
363
396
  * * {@link SceneManager}
364
397
  */
365
398
  Event.TEXTURE_LOADING_END = 'textureLoadingEnd';
399
+ /**
400
+ * Fired after a {@link Material} has been applied to a {@link Mesh}.
401
+ *
402
+ * Scopes:
403
+ * * Global
404
+ *
405
+ * Payload:
406
+ * * mesh: {@link Mesh}
407
+ * * material: {@link Material}
408
+ */
409
+ Event.MESH_MATERIAL_APPLIED = 'meshMaterialApplied';
410
+ /**
411
+ * Fired after a {@link TagManagerParameterObserver} has been called.
412
+ *
413
+ * Scopes:
414
+ * * Global
415
+ *
416
+ * Payload:
417
+ * * payload: {@link ParameterObserverResult}
418
+ */
419
+ Event.TAG_MANAGER_PARAMETER_COMMITTED = 'tagManagerParameterCommitted';
366
420
  //# sourceMappingURL=event.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../src/api/classes/event.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event.js","sourceRoot":"","sources":["../../../../src/api/classes/event.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare class FuzzyMap<K, V> extends Map {
2
+ get(key: K): V | undefined;
3
+ has(key: K): boolean;
4
+ set(key: K, value: V): this;
5
+ delete(key: K): boolean;
6
+ _key(key: K): K;
7
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FuzzyMap = void 0;
4
+ class FuzzyMap extends Map {
5
+ get(key) {
6
+ return super.get(this._key(key));
7
+ }
8
+ has(key) {
9
+ return super.has(this._key(key));
10
+ }
11
+ set(key, value) {
12
+ return super.set(this._key(key) || key, value);
13
+ }
14
+ delete(key) {
15
+ return super.delete(this._key(key));
16
+ }
17
+ _key(key) {
18
+ return [...super.keys()].find(k => JSON.stringify(k) === JSON.stringify(key));
19
+ }
20
+ }
21
+ exports.FuzzyMap = FuzzyMap;
22
+ //# sourceMappingURL=fuzzyMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fuzzyMap.js","sourceRoot":"","sources":["../../../../src/api/classes/fuzzyMap.ts"],"names":[],"mappings":";;;AAAA,MAAa,QAAe,SAAQ,GAAG;IACrC,GAAG,CAAC,GAAM;QACR,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,GAAM;QACR,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,GAAG,CAAC,GAAM,EAAE,KAAQ;QAClB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,KAAK,CAAC,CAAC;IACjD,CAAC;IAED,MAAM,CAAC,GAAM;QACX,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,CAAC,GAAM;QACT,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAChF,CAAC;CACF;AApBD,4BAoBC"}
@@ -291,14 +291,26 @@ export declare class Parameter {
291
291
  * The {@link ParameterDeclarations} for all parameters in this class.
292
292
  */
293
293
  static get declarations(): ParameterDeclarations;
294
+ /**
295
+ * The default {@link ParameterValue}s returned as {@link ParameterBag} for a set of parameters in this class.
296
+ */
297
+ static get defaultValues(): ParameterBag;
294
298
  /**
295
299
  * Gets the {@link ParameterDeclaration} for a given {@link Parameter} declared in this class.
296
300
  */
297
301
  static getDeclaration(parameter: string): ParameterDeclaration;
302
+ /**
303
+ * Gets the default {@link ParameterValue} for a given {@link Parameter} declared in this class.
304
+ */
305
+ static getDefaultValue(parameter: string): ParameterValue;
298
306
  /**
299
307
  * All parameters defined in this class.
300
308
  */
301
309
  static get all(): string[];
310
+ /**
311
+ * Asserts whether given parameter is declared and valid.
312
+ */
313
+ static assertParameter(parameterDeclaration: ParameterDeclarations, parameter: string, value: ParameterValue): void;
302
314
  /**
303
315
  * Parses given {@link ParameterBag} with given {@link ParameterDeclarations}.
304
316
  */