@shapediver/viewer.shared.node-tree 3.15.11 → 3.16.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.
Files changed (116) hide show
  1. package/dist/implementation/AbstractTreeNodeData.d.ts +4 -1
  2. package/dist/implementation/AbstractTreeNodeData.d.ts.map +1 -1
  3. package/dist/implementation/AbstractTreeNodeData.js +9 -10
  4. package/dist/implementation/AbstractTreeNodeData.js.map +1 -1
  5. package/dist/implementation/Tree.d.ts +1 -2
  6. package/dist/implementation/Tree.d.ts.map +1 -1
  7. package/dist/implementation/Tree.js.map +1 -1
  8. package/dist/implementation/TreeNode.d.ts +8 -14
  9. package/dist/implementation/TreeNode.d.ts.map +1 -1
  10. package/dist/implementation/TreeNode.js +102 -77
  11. package/dist/implementation/TreeNode.js.map +1 -1
  12. package/dist/implementation/data/AnimationData.d.ts +33 -0
  13. package/dist/implementation/data/AnimationData.d.ts.map +1 -0
  14. package/dist/implementation/data/AnimationData.js +291 -0
  15. package/dist/implementation/data/AnimationData.js.map +1 -0
  16. package/dist/implementation/data/ChunkData.d.ts +15 -0
  17. package/dist/implementation/data/ChunkData.d.ts.map +1 -0
  18. package/dist/implementation/data/ChunkData.js +47 -0
  19. package/dist/implementation/data/ChunkData.js.map +1 -0
  20. package/dist/implementation/data/CustomData.d.ts +25 -0
  21. package/dist/implementation/data/CustomData.d.ts.map +1 -0
  22. package/dist/implementation/data/CustomData.js +51 -0
  23. package/dist/implementation/data/CustomData.js.map +1 -0
  24. package/dist/implementation/data/GeometryData.d.ts +101 -0
  25. package/dist/implementation/data/GeometryData.d.ts.map +1 -0
  26. package/dist/implementation/data/GeometryData.js +327 -0
  27. package/dist/implementation/data/GeometryData.js.map +1 -0
  28. package/dist/implementation/data/HTMLElementAnchorData.d.ts +103 -0
  29. package/dist/implementation/data/HTMLElementAnchorData.d.ts.map +1 -0
  30. package/dist/implementation/data/HTMLElementAnchorData.js +274 -0
  31. package/dist/implementation/data/HTMLElementAnchorData.js.map +1 -0
  32. package/dist/implementation/data/InstanceData.d.ts +22 -0
  33. package/dist/implementation/data/InstanceData.d.ts.map +1 -0
  34. package/dist/implementation/data/InstanceData.js +59 -0
  35. package/dist/implementation/data/InstanceData.js.map +1 -0
  36. package/dist/implementation/material/AbstractMaterialData.d.ts +69 -0
  37. package/dist/implementation/material/AbstractMaterialData.d.ts.map +1 -0
  38. package/dist/implementation/material/AbstractMaterialData.js +225 -0
  39. package/dist/implementation/material/AbstractMaterialData.js.map +1 -0
  40. package/dist/implementation/material/MapData.d.ts +54 -0
  41. package/dist/implementation/material/MapData.d.ts.map +1 -0
  42. package/dist/implementation/material/MapData.js +191 -0
  43. package/dist/implementation/material/MapData.js.map +1 -0
  44. package/dist/implementation/material/MaterialBasicLineData.d.ts +15 -0
  45. package/dist/implementation/material/MaterialBasicLineData.d.ts.map +1 -0
  46. package/dist/implementation/material/MaterialBasicLineData.js +91 -0
  47. package/dist/implementation/material/MaterialBasicLineData.js.map +1 -0
  48. package/dist/implementation/material/MaterialGemData.d.ts +47 -0
  49. package/dist/implementation/material/MaterialGemData.d.ts.map +1 -0
  50. package/dist/implementation/material/MaterialGemData.js +289 -0
  51. package/dist/implementation/material/MaterialGemData.js.map +1 -0
  52. package/dist/implementation/material/MaterialLambertData.d.ts +22 -0
  53. package/dist/implementation/material/MaterialLambertData.d.ts.map +1 -0
  54. package/dist/implementation/material/MaterialLambertData.js +147 -0
  55. package/dist/implementation/material/MaterialLambertData.js.map +1 -0
  56. package/dist/implementation/material/MaterialMultiPointData.d.ts +100 -0
  57. package/dist/implementation/material/MaterialMultiPointData.d.ts.map +1 -0
  58. package/dist/implementation/material/MaterialMultiPointData.js +651 -0
  59. package/dist/implementation/material/MaterialMultiPointData.js.map +1 -0
  60. package/dist/implementation/material/MaterialPhongData.d.ts +26 -0
  61. package/dist/implementation/material/MaterialPhongData.d.ts.map +1 -0
  62. package/dist/implementation/material/MaterialPhongData.js +171 -0
  63. package/dist/implementation/material/MaterialPhongData.js.map +1 -0
  64. package/dist/implementation/material/MaterialPointData.d.ts +20 -0
  65. package/dist/implementation/material/MaterialPointData.d.ts.map +1 -0
  66. package/dist/implementation/material/MaterialPointData.js +132 -0
  67. package/dist/implementation/material/MaterialPointData.js.map +1 -0
  68. package/dist/implementation/material/MaterialShadowData.d.ts +15 -0
  69. package/dist/implementation/material/MaterialShadowData.d.ts.map +1 -0
  70. package/dist/implementation/material/MaterialShadowData.js +36 -0
  71. package/dist/implementation/material/MaterialShadowData.js.map +1 -0
  72. package/dist/implementation/material/MaterialSpecularGlossinessData.d.ts +28 -0
  73. package/dist/implementation/material/MaterialSpecularGlossinessData.d.ts.map +1 -0
  74. package/dist/implementation/material/MaterialSpecularGlossinessData.js +180 -0
  75. package/dist/implementation/material/MaterialSpecularGlossinessData.js.map +1 -0
  76. package/dist/implementation/material/MaterialStandardData.d.ts +76 -0
  77. package/dist/implementation/material/MaterialStandardData.d.ts.map +1 -0
  78. package/dist/implementation/material/MaterialStandardData.js +468 -0
  79. package/dist/implementation/material/MaterialStandardData.js.map +1 -0
  80. package/dist/implementation/material/MaterialUnlitData.d.ts +18 -0
  81. package/dist/implementation/material/MaterialUnlitData.d.ts.map +1 -0
  82. package/dist/implementation/material/MaterialUnlitData.js +120 -0
  83. package/dist/implementation/material/MaterialUnlitData.js.map +1 -0
  84. package/dist/implementation/material/MaterialVariantsData.d.ts +16 -0
  85. package/dist/implementation/material/MaterialVariantsData.d.ts.map +1 -0
  86. package/dist/implementation/material/MaterialVariantsData.js +62 -0
  87. package/dist/implementation/material/MaterialVariantsData.js.map +1 -0
  88. package/dist/implementation/sdtf/SDTFAttributesData.d.ts +23 -0
  89. package/dist/implementation/sdtf/SDTFAttributesData.d.ts.map +1 -0
  90. package/dist/implementation/sdtf/SDTFAttributesData.js +100 -0
  91. package/dist/implementation/sdtf/SDTFAttributesData.js.map +1 -0
  92. package/dist/implementation/sdtf/SDTFItemData.d.ts +19 -0
  93. package/dist/implementation/sdtf/SDTFItemData.d.ts.map +1 -0
  94. package/dist/implementation/sdtf/SDTFItemData.js +60 -0
  95. package/dist/implementation/sdtf/SDTFItemData.js.map +1 -0
  96. package/dist/implementation/sdtf/SDTFOverviewData.d.ts +13 -0
  97. package/dist/implementation/sdtf/SDTFOverviewData.d.ts.map +1 -0
  98. package/dist/implementation/sdtf/SDTFOverviewData.js +107 -0
  99. package/dist/implementation/sdtf/SDTFOverviewData.js.map +1 -0
  100. package/dist/index.d.ts +31 -5
  101. package/dist/index.d.ts.map +1 -1
  102. package/dist/index.js +51 -1
  103. package/dist/index.js.map +1 -1
  104. package/package.json +5 -4
  105. package/dist/interfaces/ITree.d.ts +0 -46
  106. package/dist/interfaces/ITree.d.ts.map +0 -1
  107. package/dist/interfaces/ITree.js +0 -3
  108. package/dist/interfaces/ITree.js.map +0 -1
  109. package/dist/interfaces/ITreeNode.d.ts +0 -237
  110. package/dist/interfaces/ITreeNode.d.ts.map +0 -1
  111. package/dist/interfaces/ITreeNode.js +0 -4
  112. package/dist/interfaces/ITreeNode.js.map +0 -1
  113. package/dist/interfaces/ITreeNodeData.d.ts +0 -36
  114. package/dist/interfaces/ITreeNodeData.d.ts.map +0 -1
  115. package/dist/interfaces/ITreeNodeData.js +0 -3
  116. package/dist/interfaces/ITreeNodeData.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { ITreeNodeData } from "../interfaces/ITreeNodeData";
1
+ import { ITreeNodeData } from "@shapediver/viewer.shared.types";
2
2
  export declare abstract class AbstractTreeNodeData implements ITreeNodeData {
3
3
  #private;
4
4
  /**
@@ -14,6 +14,9 @@ export declare abstract class AbstractTreeNodeData implements ITreeNodeData {
14
14
  [key: string]: unknown;
15
15
  });
16
16
  get id(): string;
17
+ get parentsUpdateVersions(): {
18
+ [key: string]: () => void;
19
+ };
17
20
  get updateCallback(): ((newVersion: string, oldVersion: string) => void) | null;
18
21
  set updateCallback(value: ((newVersion: string, oldVersion: string) => void) | null);
19
22
  get updateCallbackConvertedObject(): ((newObj: unknown, oldObj: unknown, viewport: string) => void) | null;
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractTreeNodeData.d.ts","sourceRoot":"","sources":["../../src/implementation/AbstractTreeNodeData.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,aAAa,EAAC,MAAM,6BAA6B,CAAC;AAE1D,8BAAsB,oBAAqB,YAAW,aAAa;;IAkBlE;;;;OAIG;gBACS,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IASzC,IAAW,eAAe,IAAI;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAErD;IAED,IAAW,eAAe,CAAC,KAAK,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,EAEzD;IAED,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,IAAW,cAAc,IACtB,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC,GAClD,IAAI,CAEN;IAED,IAAW,cAAc,CACxB,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,EAGhE;IAED,IAAW,6BAA6B,IACrC,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAC9D,IAAI,CAEN;IAED,IAAW,6BAA6B,CACvC,KAAK,EACF,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAC9D,IAAI,EAGP;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAMD;;OAEG;IACI,KAAK,IAAI,aAAa;IAK7B;;OAEG;IACI,aAAa,IAAI,IAAI;CAQ5B"}
1
+ {"version":3,"file":"AbstractTreeNodeData.d.ts","sourceRoot":"","sources":["../../src/implementation/AbstractTreeNodeData.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,aAAa,EAAC,MAAM,iCAAiC,CAAC;AAE9D,8BAAsB,oBAAqB,YAAW,aAAa;;IAelE;;;;OAIG;gBACS,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM;IAKzC,IAAW,eAAe,IAAI;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,CAErD;IAED,IAAW,eAAe,CAAC,KAAK,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAC,EAEzD;IAED,IAAW,EAAE,IAAI,MAAM,CAEtB;IAED,IAAW,qBAAqB,IAAI;QACnC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,IAAI,CAAC;KAC1B,CAEA;IAED,IAAW,cAAc,IACtB,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC,GAClD,IAAI,CAEN;IAED,IAAW,cAAc,CACxB,KAAK,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,EAGhE;IAED,IAAW,6BAA6B,IACrC,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAC9D,IAAI,CAEN;IAED,IAAW,6BAA6B,CACvC,KAAK,EACF,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC,GAC9D,IAAI,EAGP;IAED,IAAW,OAAO,IAAI,MAAM,CAE3B;IAED;;OAEG;IACI,KAAK,IAAI,aAAa;IAK7B;;OAEG;IACI,aAAa,IAAI,IAAI;CAS5B"}
@@ -10,31 +10,27 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
10
10
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
11
11
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
12
12
  };
13
- var _AbstractTreeNodeData_id, _AbstractTreeNodeData_uuidGenerator, _AbstractTreeNodeData_convertedObject, _AbstractTreeNodeData_updateCallbackConvertedObject, _AbstractTreeNodeData_version, _AbstractTreeNodeData_updateCallback;
13
+ var _AbstractTreeNodeData_id, _AbstractTreeNodeData_uuidGenerator, _AbstractTreeNodeData_convertedObject, _AbstractTreeNodeData_parentsUpdateVersions, _AbstractTreeNodeData_updateCallback, _AbstractTreeNodeData_updateCallbackConvertedObject, _AbstractTreeNodeData_version;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AbstractTreeNodeData = void 0;
16
16
  const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
17
17
  class AbstractTreeNodeData {
18
- // #endregion Properties (5)
19
- // #region Constructors (1)
20
18
  /**
21
19
  * Creates a tree node data object.
22
20
  *
23
21
  * @param id Id of this data object
24
22
  */
25
23
  constructor(id, version) {
26
- // #region Properties (5)
27
24
  _AbstractTreeNodeData_id.set(this, void 0);
28
25
  _AbstractTreeNodeData_uuidGenerator.set(this, viewer_shared_services_1.UuidGenerator.instance);
29
26
  _AbstractTreeNodeData_convertedObject.set(this, {});
27
+ _AbstractTreeNodeData_parentsUpdateVersions.set(this, {});
28
+ _AbstractTreeNodeData_updateCallback.set(this, null);
30
29
  _AbstractTreeNodeData_updateCallbackConvertedObject.set(this, null);
31
30
  _AbstractTreeNodeData_version.set(this, void 0);
32
- _AbstractTreeNodeData_updateCallback.set(this, null);
33
31
  __classPrivateFieldSet(this, _AbstractTreeNodeData_id, id || __classPrivateFieldGet(this, _AbstractTreeNodeData_uuidGenerator, "f").create(), "f");
34
32
  __classPrivateFieldSet(this, _AbstractTreeNodeData_version, version || __classPrivateFieldGet(this, _AbstractTreeNodeData_uuidGenerator, "f").create(), "f");
35
33
  }
36
- // #endregion Constructors (1)
37
- // #region Public Getters And Setters (6)
38
34
  get convertedObject() {
39
35
  return __classPrivateFieldGet(this, _AbstractTreeNodeData_convertedObject, "f");
40
36
  }
@@ -44,6 +40,9 @@ class AbstractTreeNodeData {
44
40
  get id() {
45
41
  return __classPrivateFieldGet(this, _AbstractTreeNodeData_id, "f");
46
42
  }
43
+ get parentsUpdateVersions() {
44
+ return __classPrivateFieldGet(this, _AbstractTreeNodeData_parentsUpdateVersions, "f");
45
+ }
47
46
  get updateCallback() {
48
47
  return __classPrivateFieldGet(this, _AbstractTreeNodeData_updateCallback, "f");
49
48
  }
@@ -59,8 +58,6 @@ class AbstractTreeNodeData {
59
58
  get version() {
60
59
  return __classPrivateFieldGet(this, _AbstractTreeNodeData_version, "f");
61
60
  }
62
- // #endregion Public Getters And Setters (6)
63
- // #region Public Methods (2)
64
61
  /**
65
62
  * Clones the tree node data.
66
63
  */
@@ -74,10 +71,12 @@ class AbstractTreeNodeData {
74
71
  updateVersion() {
75
72
  const oldVersion = __classPrivateFieldGet(this, _AbstractTreeNodeData_version, "f");
76
73
  __classPrivateFieldSet(this, _AbstractTreeNodeData_version, __classPrivateFieldGet(this, _AbstractTreeNodeData_uuidGenerator, "f").create(), "f");
74
+ // notify all parents about the version change
75
+ Object.values(__classPrivateFieldGet(this, _AbstractTreeNodeData_parentsUpdateVersions, "f")).forEach((cb) => cb());
77
76
  if (__classPrivateFieldGet(this, _AbstractTreeNodeData_updateCallback, "f"))
78
77
  __classPrivateFieldGet(this, _AbstractTreeNodeData_updateCallback, "f").call(this, __classPrivateFieldGet(this, _AbstractTreeNodeData_version, "f"), oldVersion);
79
78
  }
80
79
  }
81
80
  exports.AbstractTreeNodeData = AbstractTreeNodeData;
82
- _AbstractTreeNodeData_id = new WeakMap(), _AbstractTreeNodeData_uuidGenerator = new WeakMap(), _AbstractTreeNodeData_convertedObject = new WeakMap(), _AbstractTreeNodeData_updateCallbackConvertedObject = new WeakMap(), _AbstractTreeNodeData_version = new WeakMap(), _AbstractTreeNodeData_updateCallback = new WeakMap();
81
+ _AbstractTreeNodeData_id = new WeakMap(), _AbstractTreeNodeData_uuidGenerator = new WeakMap(), _AbstractTreeNodeData_convertedObject = new WeakMap(), _AbstractTreeNodeData_parentsUpdateVersions = new WeakMap(), _AbstractTreeNodeData_updateCallback = new WeakMap(), _AbstractTreeNodeData_updateCallbackConvertedObject = new WeakMap(), _AbstractTreeNodeData_version = new WeakMap();
83
82
  //# sourceMappingURL=AbstractTreeNodeData.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractTreeNodeData.js","sourceRoot":"","sources":["../../src/implementation/AbstractTreeNodeData.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+EAAiE;AAGjE,MAAsB,oBAAoB;IAczC,4BAA4B;IAE5B,2BAA2B;IAE3B;;;;OAIG;IACH,YAAY,EAAW,EAAE,OAAgB;QAtBzC,yBAAyB;QAEzB,2CAAqB;QACrB,8CAAyC,sCAAa,CAAC,QAAQ,EAAC;QAEhE,gDAA6C,EAAE,EAAC;QAChD,8DAEU,IAAI,EAAC;QACf,gDAAiB;QACjB,+CACC,IAAI,EAAC;QAYL,uBAAA,IAAI,4BAAO,EAAE,IAAI,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,MAAA,CAAC;QAC9C,uBAAA,IAAI,iCAAY,OAAO,IAAI,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,MAAA,CAAC;IACzD,CAAC;IAED,8BAA8B;IAE9B,yCAAyC;IAEzC,IAAW,eAAe;QACzB,OAAO,uBAAA,IAAI,6CAAiB,CAAC;IAC9B,CAAC;IAED,IAAW,eAAe,CAAC,KAA+B;QACzD,uBAAA,IAAI,yCAAoB,KAAK,MAAA,CAAC;IAC/B,CAAC;IAED,IAAW,EAAE;QACZ,OAAO,uBAAA,IAAI,gCAAI,CAAC;IACjB,CAAC;IAED,IAAW,cAAc;QAGxB,OAAO,uBAAA,IAAI,4CAAgB,CAAC;IAC7B,CAAC;IAED,IAAW,cAAc,CACxB,KAAgE;QAEhE,uBAAA,IAAI,wCAAmB,KAAK,MAAA,CAAC;IAC9B,CAAC;IAED,IAAW,6BAA6B;QAGvC,OAAO,uBAAA,IAAI,2DAA+B,CAAC;IAC5C,CAAC;IAED,IAAW,6BAA6B,CACvC,KAEO;QAEP,uBAAA,IAAI,uDAAkC,KAAK,MAAA,CAAC;IAC7C,CAAC;IAED,IAAW,OAAO;QACjB,OAAO,uBAAA,IAAI,qCAAS,CAAC;IACtB,CAAC;IAED,4CAA4C;IAE5C,6BAA6B;IAE7B;;OAEG;IACI,KAAK;QACX,MAAM,KAAK,GAAG,IAAK,IAAI,CAAC,WAAuC,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACI,aAAa;QACnB,MAAM,UAAU,GAAG,uBAAA,IAAI,qCAAS,CAAC;QACjC,uBAAA,IAAI,iCAAY,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,MAAA,CAAC;QAC7C,IAAI,uBAAA,IAAI,4CAAgB;YACvB,uBAAA,IAAI,4CAAgB,MAApB,IAAI,EAAiB,uBAAA,IAAI,qCAAS,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;CAGD;AAjGD,oDAiGC"}
1
+ {"version":3,"file":"AbstractTreeNodeData.js","sourceRoot":"","sources":["../../src/implementation/AbstractTreeNodeData.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,+EAAiE;AAGjE,MAAsB,oBAAoB;IAezC;;;;OAIG;IACH,YAAY,EAAW,EAAE,OAAgB;QAnBzC,2CAAqB;QACrB,8CAAyC,sCAAa,CAAC,QAAQ,EAAC;QAEhE,gDAA6C,EAAE,EAAC;QAChD,sDAEI,EAAE,EAAC;QACP,+CACC,IAAI,EAAC;QACN,8DAEU,IAAI,EAAC;QACf,gDAAiB;QAQhB,uBAAA,IAAI,4BAAO,EAAE,IAAI,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,MAAA,CAAC;QAC9C,uBAAA,IAAI,iCAAY,OAAO,IAAI,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,MAAA,CAAC;IACzD,CAAC;IAED,IAAW,eAAe;QACzB,OAAO,uBAAA,IAAI,6CAAiB,CAAC;IAC9B,CAAC;IAED,IAAW,eAAe,CAAC,KAA+B;QACzD,uBAAA,IAAI,yCAAoB,KAAK,MAAA,CAAC;IAC/B,CAAC;IAED,IAAW,EAAE;QACZ,OAAO,uBAAA,IAAI,gCAAI,CAAC;IACjB,CAAC;IAED,IAAW,qBAAqB;QAG/B,OAAO,uBAAA,IAAI,mDAAuB,CAAC;IACpC,CAAC;IAED,IAAW,cAAc;QAGxB,OAAO,uBAAA,IAAI,4CAAgB,CAAC;IAC7B,CAAC;IAED,IAAW,cAAc,CACxB,KAAgE;QAEhE,uBAAA,IAAI,wCAAmB,KAAK,MAAA,CAAC;IAC9B,CAAC;IAED,IAAW,6BAA6B;QAGvC,OAAO,uBAAA,IAAI,2DAA+B,CAAC;IAC5C,CAAC;IAED,IAAW,6BAA6B,CACvC,KAEO;QAEP,uBAAA,IAAI,uDAAkC,KAAK,MAAA,CAAC;IAC7C,CAAC;IAED,IAAW,OAAO;QACjB,OAAO,uBAAA,IAAI,qCAAS,CAAC;IACtB,CAAC;IAED;;OAEG;IACI,KAAK;QACX,MAAM,KAAK,GAAG,IAAK,IAAI,CAAC,WAAuC,EAAE,CAAC;QAClE,OAAO,KAAK,CAAC;IACd,CAAC;IAED;;OAEG;IACI,aAAa;QACnB,MAAM,UAAU,GAAG,uBAAA,IAAI,qCAAS,CAAC;QACjC,uBAAA,IAAI,iCAAY,uBAAA,IAAI,2CAAe,CAAC,MAAM,EAAE,MAAA,CAAC;QAE7C,8CAA8C;QAC9C,MAAM,CAAC,MAAM,CAAC,uBAAA,IAAI,mDAAuB,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACjE,IAAI,uBAAA,IAAI,4CAAgB;YACvB,uBAAA,IAAI,4CAAgB,MAApB,IAAI,EAAiB,uBAAA,IAAI,qCAAS,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;CACD;AA7FD,oDA6FC"}
@@ -1,5 +1,4 @@
1
- import { ITree } from "../interfaces/ITree";
2
- import { ITreeNode } from "../interfaces/ITreeNode";
1
+ import { ITree, ITreeNode } from "@shapediver/viewer.shared.types";
3
2
  export declare class Tree implements ITree {
4
3
  #private;
5
4
  private static _instance;
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../../src/implementation/Tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,qBAAqB,CAAC;AAC1C,OAAO,EAAC,SAAS,EAAC,MAAM,yBAAyB,CAAC;AAGlD,qBAAa,IAAK,YAAW,KAAK;;IAKjC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAO;IAM/B,OAAO;IAQP,WAAkB,QAAQ,SAEzB;IAMD,IAAW,IAAI,IAAI,SAAS,CAE3B;IAMM,OAAO,CACb,IAAI,EAAE,SAAS,EACf,MAAM,GAAE,SAAsB,EAC9B,IAAI,GAAE,SAAsB,GAC1B,OAAO;IAeH,aAAa,CACnB,IAAI,EAAE,SAAS,EACf,IAAI,GAAE,MAA4B,EAClC,IAAI,GAAE,SAAsB,GAC1B,OAAO;IAuBH,aAAa,CACnB,IAAI,GAAE,MAA4B,EAClC,IAAI,GAAE,SAAsB,GAC1B,SAAS,GAAG,IAAI;IAmBZ,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,GAAE,SAAsB,GAAG,OAAO;IAgBlE,gBAAgB,CACtB,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,SAAsB,GAC1B,OAAO;CAwBV"}
1
+ {"version":3,"file":"Tree.d.ts","sourceRoot":"","sources":["../../src/implementation/Tree.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAE,SAAS,EAAC,MAAM,iCAAiC,CAAC;AAGjE,qBAAa,IAAK,YAAW,KAAK;;IAKjC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAO;IAM/B,OAAO;IAQP,WAAkB,QAAQ,SAEzB;IAMD,IAAW,IAAI,IAAI,SAAS,CAE3B;IAMM,OAAO,CACb,IAAI,EAAE,SAAS,EACf,MAAM,GAAE,SAAsB,EAC9B,IAAI,GAAE,SAAsB,GAC1B,OAAO;IAeH,aAAa,CACnB,IAAI,EAAE,SAAS,EACf,IAAI,GAAE,MAA4B,EAClC,IAAI,GAAE,SAAsB,GAC1B,OAAO;IAuBH,aAAa,CACnB,IAAI,GAAE,MAA4B,EAClC,IAAI,GAAE,SAAsB,GAC1B,SAAS,GAAG,IAAI;IAmBZ,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,GAAE,SAAsB,GAAG,OAAO;IAgBlE,gBAAgB,CACtB,IAAI,EAAE,MAAM,EACZ,IAAI,GAAE,SAAsB,GAC1B,OAAO;CAwBV"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../src/implementation/Tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Tree.js","sourceRoot":"","sources":["../../src/implementation/Tree.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import { IBox } from "@shapediver/viewer.shared.math";
2
+ import { ITransformation, ITreeNode, ITreeNodeData } from "@shapediver/viewer.shared.types";
2
3
  import { mat4 } from "gl-matrix";
3
- import { ITransformation, ITreeNode } from "../interfaces/ITreeNode";
4
- import { ITreeNodeData } from "../interfaces/ITreeNodeData";
5
4
  export declare class TreeNode implements ITreeNode {
6
5
  #private;
7
6
  /**
@@ -13,10 +12,6 @@ export declare class TreeNode implements ITreeNode {
13
12
  * @param transformations the array of transformations
14
13
  */
15
14
  constructor(name?: string, parent?: ITreeNode, data?: ITreeNodeData[], transformations?: ITransformation[]);
16
- get boneInverses(): mat4[];
17
- set boneInverses(value: mat4[]);
18
- get bones(): ITreeNode[];
19
- set bones(value: ITreeNode[]);
20
15
  get boundingBox(): IBox;
21
16
  get boundingBoxViewport(): {
22
17
  [key: string]: IBox;
@@ -33,9 +28,9 @@ export declare class TreeNode implements ITreeNode {
33
28
  set displayName(value: string | undefined);
34
29
  get excludeViewports(): string[];
35
30
  set excludeViewports(value: string[]);
31
+ get id(): string;
36
32
  get intersectionTest(): boolean;
37
33
  set intersectionTest(value: boolean);
38
- get id(): string;
39
34
  get name(): string;
40
35
  set name(value: string);
41
36
  get nodeMatrix(): mat4;
@@ -47,8 +42,6 @@ export declare class TreeNode implements ITreeNode {
47
42
  set parent(value: ITreeNode | undefined);
48
43
  get restrictViewports(): string[];
49
44
  set restrictViewports(value: string[]);
50
- get skinNode(): boolean;
51
- set skinNode(value: boolean);
52
45
  get transformations(): ITransformation[];
53
46
  set transformations(value: ITransformation[]);
54
47
  get updateCallback(): ((newVersion: string, oldVersion: string) => void) | null;
@@ -60,8 +53,8 @@ export declare class TreeNode implements ITreeNode {
60
53
  get visible(): boolean;
61
54
  set visible(value: boolean);
62
55
  get worldMatrix(): mat4;
63
- addChild(child: ITreeNode): boolean;
64
- addData(data: ITreeNodeData): boolean;
56
+ addChild(child: ITreeNode | ITreeNode[]): boolean;
57
+ addData(data: ITreeNodeData | ITreeNodeData[]): boolean;
65
58
  addTransformation(transformation: ITransformation): boolean;
66
59
  clone(): ITreeNode;
67
60
  cloneInstance(): ITreeNode;
@@ -69,17 +62,18 @@ export declare class TreeNode implements ITreeNode {
69
62
  getData(id: string): ITreeNodeData | undefined;
70
63
  getNodesByName(name: string): ITreeNode[];
71
64
  getNodesByNameWithRegex(regex: RegExp): ITreeNode[];
72
- getPath(): string;
73
65
  getOriginalNamePath(): string;
66
+ getPath(): string;
74
67
  getTransformation(id: string): ITransformation | undefined;
75
68
  hasChild(child: ITreeNode): boolean;
76
69
  hasData(data: ITreeNodeData): boolean;
77
70
  hasTransformation(transformation: ITransformation): boolean;
78
- removeChild(child: ITreeNode): boolean;
79
- removeData(data: ITreeNodeData): boolean;
71
+ removeChild(child: ITreeNode | ITreeNode[]): boolean;
72
+ removeData(data: ITreeNodeData | ITreeNodeData[]): boolean;
80
73
  removeTransformation(transformation: ITransformation): boolean;
81
74
  traverse(callback: (node: ITreeNode) => void): void;
82
75
  traverseData(callback: (node: ITreeNodeData) => void): void;
83
76
  updateVersion(parents?: boolean, children?: boolean): void;
77
+ private onDataChanged;
84
78
  }
85
79
  //# sourceMappingURL=TreeNode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TreeNode.d.ts","sourceRoot":"","sources":["../../src/implementation/TreeNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TreeNode.d.ts","sourceRoot":"","sources":["../../src/implementation/TreeNode.ts"],"names":[],"mappings":"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"}
@@ -10,15 +10,13 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
10
10
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
11
11
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
12
12
  };
13
- var _TreeNode_boundingBox, _TreeNode_boundingBoxViewport, _TreeNode_children, _TreeNode_data, _TreeNode_id, _TreeNode_uuidGenerator, _TreeNode_boneInverses, _TreeNode_bones, _TreeNode_convertedObject, _TreeNode_excludeViewports, _TreeNode_intersectionTest, _TreeNode_name, _TreeNode_originalId, _TreeNode_originalName, _TreeNode_parent, _TreeNode_restrictViewports, _TreeNode_skinNode, _TreeNode_transformations, _TreeNode_updateCallbackConvertedObject, _TreeNode_version, _TreeNode_visible, _TreeNode_displayName, _TreeNode_updateCallback;
13
+ var _TreeNode_boundingBox, _TreeNode_boundingBoxViewport, _TreeNode_children, _TreeNode_dataProxy, _TreeNode_id, _TreeNode_uuidGenerator, _TreeNode_convertedObject, _TreeNode_displayName, _TreeNode_excludeViewports, _TreeNode_intersectionTest, _TreeNode_name, _TreeNode_originalId, _TreeNode_originalName, _TreeNode_parent, _TreeNode_restrictViewports, _TreeNode_transformations, _TreeNode_updateCallback, _TreeNode_updateCallbackConvertedObject, _TreeNode_version, _TreeNode_visible;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.TreeNode = void 0;
16
16
  const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
17
17
  const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
18
18
  const gl_matrix_1 = require("gl-matrix");
19
19
  class TreeNode {
20
- // #endregion Properties (19)
21
- // #region Constructors (1)
22
20
  /**
23
21
  * Creation of a node that can be used in the node tree.
24
22
  *
@@ -29,16 +27,17 @@ class TreeNode {
29
27
  */
30
28
  constructor(name = "node", parent, data = [], transformations = []) {
31
29
  var _a;
32
- // #region Properties (19)
33
30
  _TreeNode_boundingBox.set(this, new viewer_shared_math_1.Box());
34
31
  _TreeNode_boundingBoxViewport.set(this, {});
35
32
  _TreeNode_children.set(this, []);
36
- _TreeNode_data.set(this, []);
33
+ _TreeNode_dataProxy.set(this, new viewer_shared_services_1.ObservableArray({
34
+ initialData: [],
35
+ onChanged: this.onDataChanged.bind(this),
36
+ }));
37
37
  _TreeNode_id.set(this, void 0);
38
38
  _TreeNode_uuidGenerator.set(this, viewer_shared_services_1.UuidGenerator.instance);
39
- _TreeNode_boneInverses.set(this, []);
40
- _TreeNode_bones.set(this, []);
41
39
  _TreeNode_convertedObject.set(this, {});
40
+ _TreeNode_displayName.set(this, void 0);
42
41
  _TreeNode_excludeViewports.set(this, []);
43
42
  _TreeNode_intersectionTest.set(this, true);
44
43
  _TreeNode_name.set(this, "");
@@ -46,36 +45,20 @@ class TreeNode {
46
45
  _TreeNode_originalName.set(this, void 0);
47
46
  _TreeNode_parent.set(this, void 0);
48
47
  _TreeNode_restrictViewports.set(this, []);
49
- _TreeNode_skinNode.set(this, false);
50
48
  _TreeNode_transformations.set(this, []);
49
+ _TreeNode_updateCallback.set(this, null);
51
50
  _TreeNode_updateCallbackConvertedObject.set(this, null);
52
51
  _TreeNode_version.set(this, void 0);
53
52
  _TreeNode_visible.set(this, true);
54
- _TreeNode_displayName.set(this, void 0);
55
- _TreeNode_updateCallback.set(this, null);
56
53
  __classPrivateFieldSet(this, _TreeNode_name, name, "f");
57
54
  __classPrivateFieldSet(this, _TreeNode_parent, parent, "f");
58
- __classPrivateFieldSet(this, _TreeNode_data, data, "f");
55
+ __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").setData(data);
59
56
  __classPrivateFieldSet(this, _TreeNode_transformations, transformations, "f");
60
57
  __classPrivateFieldSet(this, _TreeNode_id, __classPrivateFieldGet(this, _TreeNode_uuidGenerator, "f").create(), "f");
61
58
  __classPrivateFieldSet(this, _TreeNode_originalId, __classPrivateFieldGet(this, _TreeNode_id, "f"), "f");
62
59
  __classPrivateFieldSet(this, _TreeNode_version, __classPrivateFieldGet(this, _TreeNode_uuidGenerator, "f").create(), "f");
63
60
  (_a = __classPrivateFieldGet(this, _TreeNode_parent, "f")) === null || _a === void 0 ? void 0 : _a.addChild(this);
64
61
  }
65
- // #endregion Constructors (1)
66
- // #region Public Getters And Setters (33)
67
- get boneInverses() {
68
- return __classPrivateFieldGet(this, _TreeNode_boneInverses, "f");
69
- }
70
- set boneInverses(value) {
71
- __classPrivateFieldSet(this, _TreeNode_boneInverses, value, "f");
72
- }
73
- get bones() {
74
- return __classPrivateFieldGet(this, _TreeNode_bones, "f");
75
- }
76
- set bones(value) {
77
- __classPrivateFieldSet(this, _TreeNode_bones, value, "f");
78
- }
79
62
  get boundingBox() {
80
63
  return __classPrivateFieldGet(this, _TreeNode_boundingBox, "f");
81
64
  }
@@ -92,7 +75,7 @@ class TreeNode {
92
75
  __classPrivateFieldSet(this, _TreeNode_convertedObject, value, "f");
93
76
  }
94
77
  get data() {
95
- return __classPrivateFieldGet(this, _TreeNode_data, "f");
78
+ return __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value;
96
79
  }
97
80
  get displayName() {
98
81
  return __classPrivateFieldGet(this, _TreeNode_displayName, "f");
@@ -106,15 +89,15 @@ class TreeNode {
106
89
  set excludeViewports(value) {
107
90
  __classPrivateFieldSet(this, _TreeNode_excludeViewports, value, "f");
108
91
  }
92
+ get id() {
93
+ return __classPrivateFieldGet(this, _TreeNode_id, "f");
94
+ }
109
95
  get intersectionTest() {
110
96
  return __classPrivateFieldGet(this, _TreeNode_intersectionTest, "f");
111
97
  }
112
98
  set intersectionTest(value) {
113
99
  __classPrivateFieldSet(this, _TreeNode_intersectionTest, value, "f");
114
100
  }
115
- get id() {
116
- return __classPrivateFieldGet(this, _TreeNode_id, "f");
117
- }
118
101
  get name() {
119
102
  return __classPrivateFieldGet(this, _TreeNode_name, "f");
120
103
  }
@@ -158,12 +141,6 @@ class TreeNode {
158
141
  set restrictViewports(value) {
159
142
  __classPrivateFieldSet(this, _TreeNode_restrictViewports, value, "f");
160
143
  }
161
- get skinNode() {
162
- return __classPrivateFieldGet(this, _TreeNode_skinNode, "f");
163
- }
164
- set skinNode(value) {
165
- __classPrivateFieldSet(this, _TreeNode_skinNode, value, "f");
166
- }
167
144
  get transformations() {
168
145
  return __classPrivateFieldGet(this, _TreeNode_transformations, "f");
169
146
  }
@@ -206,19 +183,35 @@ class TreeNode {
206
183
  }
207
184
  return matrix;
208
185
  }
209
- // #endregion Public Getters And Setters (33)
210
- // #region Public Methods (20)
211
186
  addChild(child) {
212
- if (this.hasChild(child))
213
- return false;
214
- __classPrivateFieldGet(this, _TreeNode_children, "f").push(child);
215
- if (child.parent)
216
- child.parent.removeChild(child);
217
- child.parent = this;
218
- return true;
187
+ if (Array.isArray(child)) {
188
+ let allAdded = true;
189
+ for (const c of child) {
190
+ const added = this.addChild(c);
191
+ if (!added)
192
+ allAdded = false;
193
+ }
194
+ return allAdded;
195
+ }
196
+ else {
197
+ if (this.hasChild(child))
198
+ return false;
199
+ __classPrivateFieldGet(this, _TreeNode_children, "f").push(child);
200
+ if (child.parent)
201
+ child.parent.removeChild(child);
202
+ child.parent = this;
203
+ return true;
204
+ }
219
205
  }
220
206
  addData(data) {
221
- __classPrivateFieldGet(this, _TreeNode_data, "f").push(data);
207
+ const currentData = [...__classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value];
208
+ if (Array.isArray(data)) {
209
+ currentData.push(...data);
210
+ }
211
+ else {
212
+ currentData.push(data);
213
+ }
214
+ __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").setData(currentData);
222
215
  return true;
223
216
  }
224
217
  addTransformation(transformation) {
@@ -239,14 +232,11 @@ class TreeNode {
239
232
  clone.displayName = this.displayName;
240
233
  clone.excludeViewports = this.excludeViewports;
241
234
  clone.restrictViewports = this.restrictViewports;
242
- clone.skinNode = this.skinNode;
243
- clone.boneInverses = this.boneInverses;
244
- clone.bones = this.bones;
245
235
  clone.intersectionTest = this.intersectionTest;
246
236
  clone.visible = this.visible;
247
237
  for (const child of __classPrivateFieldGet(this, _TreeNode_children, "f"))
248
238
  clone.addChild(child.clone());
249
- for (const data of __classPrivateFieldGet(this, _TreeNode_data, "f"))
239
+ for (const data of __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value)
250
240
  clone.data.push(data.clone());
251
241
  for (const transform of __classPrivateFieldGet(this, _TreeNode_transformations, "f"))
252
242
  clone.addTransformation({
@@ -269,14 +259,11 @@ class TreeNode {
269
259
  clone.displayName = this.displayName;
270
260
  clone.excludeViewports = this.excludeViewports;
271
261
  clone.restrictViewports = this.restrictViewports;
272
- clone.skinNode = this.skinNode;
273
- clone.boneInverses = this.boneInverses;
274
- clone.bones = this.bones;
275
262
  clone.intersectionTest = this.intersectionTest;
276
263
  clone.visible = this.visible;
277
264
  for (const child of __classPrivateFieldGet(this, _TreeNode_children, "f"))
278
265
  clone.addChild(child.cloneInstance());
279
- for (const data of __classPrivateFieldGet(this, _TreeNode_data, "f"))
266
+ for (const data of __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value)
280
267
  clone.data.push(data);
281
268
  for (const transform of __classPrivateFieldGet(this, _TreeNode_transformations, "f"))
282
269
  clone.addTransformation({
@@ -292,9 +279,9 @@ class TreeNode {
292
279
  return;
293
280
  }
294
281
  getData(id) {
295
- for (let i = 0; i < __classPrivateFieldGet(this, _TreeNode_data, "f").length; i++)
296
- if (__classPrivateFieldGet(this, _TreeNode_data, "f")[i].id === id)
297
- return __classPrivateFieldGet(this, _TreeNode_data, "f")[i];
282
+ for (let i = 0; i < __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value.length; i++)
283
+ if (__classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value[i].id === id)
284
+ return __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value[i];
298
285
  return;
299
286
  }
300
287
  getNodesByName(name) {
@@ -317,20 +304,20 @@ class TreeNode {
317
304
  });
318
305
  return nodes;
319
306
  }
320
- getPath() {
321
- let path = this.name;
307
+ getOriginalNamePath() {
308
+ let path = this.originalName || "";
322
309
  let node = this.parent;
323
310
  while (node) {
324
- path = node.name + "." + path;
311
+ path = (node.originalName || "") + "." + path;
325
312
  node = node.parent;
326
313
  }
327
314
  return path;
328
315
  }
329
- getOriginalNamePath() {
330
- let path = this.originalName || "";
316
+ getPath() {
317
+ let path = this.name;
331
318
  let node = this.parent;
332
319
  while (node) {
333
- path = (node.originalName || "") + "." + path;
320
+ path = node.name + "." + path;
334
321
  node = node.parent;
335
322
  }
336
323
  return path;
@@ -345,25 +332,53 @@ class TreeNode {
345
332
  return __classPrivateFieldGet(this, _TreeNode_children, "f").includes(child);
346
333
  }
347
334
  hasData(data) {
348
- return __classPrivateFieldGet(this, _TreeNode_data, "f").includes(data);
335
+ return __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value.includes(data);
349
336
  }
350
337
  hasTransformation(transformation) {
351
338
  return __classPrivateFieldGet(this, _TreeNode_transformations, "f").includes(transformation);
352
339
  }
353
340
  removeChild(child) {
354
- const index = __classPrivateFieldGet(this, _TreeNode_children, "f").indexOf(child);
355
- if (index === -1)
356
- return false;
357
- __classPrivateFieldGet(this, _TreeNode_children, "f").splice(index, 1);
358
- child.parent = undefined;
359
- return true;
341
+ if (Array.isArray(child)) {
342
+ let allRemoved = true;
343
+ for (const c of child) {
344
+ const removed = this.removeChild(c);
345
+ if (!removed)
346
+ allRemoved = false;
347
+ }
348
+ return allRemoved;
349
+ }
350
+ else {
351
+ const index = __classPrivateFieldGet(this, _TreeNode_children, "f").indexOf(child);
352
+ if (index === -1)
353
+ return false;
354
+ __classPrivateFieldGet(this, _TreeNode_children, "f").splice(index, 1);
355
+ child.parent = undefined;
356
+ return true;
357
+ }
360
358
  }
361
359
  removeData(data) {
362
- const index = __classPrivateFieldGet(this, _TreeNode_data, "f").indexOf(data);
363
- if (index === -1)
364
- return false;
365
- __classPrivateFieldGet(this, _TreeNode_data, "f").splice(index, 1);
366
- return true;
360
+ const currentData = [...__classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value];
361
+ if (Array.isArray(data)) {
362
+ let allRemoved = true;
363
+ for (const d of data) {
364
+ const index = currentData.indexOf(d);
365
+ if (index === -1) {
366
+ allRemoved = false;
367
+ continue;
368
+ }
369
+ currentData.splice(index, 1);
370
+ }
371
+ __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").setData(currentData);
372
+ return allRemoved;
373
+ }
374
+ else {
375
+ const index = currentData.indexOf(data);
376
+ if (index === -1)
377
+ return false;
378
+ currentData.splice(index, 1);
379
+ __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").setData(currentData);
380
+ return true;
381
+ }
367
382
  }
368
383
  removeTransformation(transformation) {
369
384
  const index = __classPrivateFieldGet(this, _TreeNode_transformations, "f").indexOf(transformation);
@@ -378,8 +393,8 @@ class TreeNode {
378
393
  this.children[i].traverse(callback);
379
394
  }
380
395
  traverseData(callback) {
381
- for (let j = 0; j < this.data.length; j++)
382
- callback(this.data[j]);
396
+ for (let j = 0; j < __classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value.length; j++)
397
+ callback(__classPrivateFieldGet(this, _TreeNode_dataProxy, "f").value[j]);
383
398
  for (let i = 0; i < this.children.length; i++)
384
399
  this.children[i].traverseData(callback);
385
400
  }
@@ -402,7 +417,17 @@ class TreeNode {
402
417
  if (__classPrivateFieldGet(this, _TreeNode_updateCallback, "f"))
403
418
  __classPrivateFieldGet(this, _TreeNode_updateCallback, "f").call(this, __classPrivateFieldGet(this, _TreeNode_version, "f"), oldVersion);
404
419
  }
420
+ onDataChanged(data) {
421
+ // ensure parent update versions are set
422
+ data.forEach((d) => {
423
+ if (d.parentsUpdateVersions[this.id] === undefined) {
424
+ d.parentsUpdateVersions[this.id] = () => {
425
+ this.updateVersion(true, false);
426
+ };
427
+ }
428
+ });
429
+ }
405
430
  }
406
431
  exports.TreeNode = TreeNode;
407
- _TreeNode_boundingBox = new WeakMap(), _TreeNode_boundingBoxViewport = new WeakMap(), _TreeNode_children = new WeakMap(), _TreeNode_data = new WeakMap(), _TreeNode_id = new WeakMap(), _TreeNode_uuidGenerator = new WeakMap(), _TreeNode_boneInverses = new WeakMap(), _TreeNode_bones = new WeakMap(), _TreeNode_convertedObject = new WeakMap(), _TreeNode_excludeViewports = new WeakMap(), _TreeNode_intersectionTest = new WeakMap(), _TreeNode_name = new WeakMap(), _TreeNode_originalId = new WeakMap(), _TreeNode_originalName = new WeakMap(), _TreeNode_parent = new WeakMap(), _TreeNode_restrictViewports = new WeakMap(), _TreeNode_skinNode = new WeakMap(), _TreeNode_transformations = new WeakMap(), _TreeNode_updateCallbackConvertedObject = new WeakMap(), _TreeNode_version = new WeakMap(), _TreeNode_visible = new WeakMap(), _TreeNode_displayName = new WeakMap(), _TreeNode_updateCallback = new WeakMap();
432
+ _TreeNode_boundingBox = new WeakMap(), _TreeNode_boundingBoxViewport = new WeakMap(), _TreeNode_children = new WeakMap(), _TreeNode_dataProxy = new WeakMap(), _TreeNode_id = new WeakMap(), _TreeNode_uuidGenerator = new WeakMap(), _TreeNode_convertedObject = new WeakMap(), _TreeNode_displayName = new WeakMap(), _TreeNode_excludeViewports = new WeakMap(), _TreeNode_intersectionTest = new WeakMap(), _TreeNode_name = new WeakMap(), _TreeNode_originalId = new WeakMap(), _TreeNode_originalName = new WeakMap(), _TreeNode_parent = new WeakMap(), _TreeNode_restrictViewports = new WeakMap(), _TreeNode_transformations = new WeakMap(), _TreeNode_updateCallback = new WeakMap(), _TreeNode_updateCallbackConvertedObject = new WeakMap(), _TreeNode_version = new WeakMap(), _TreeNode_visible = new WeakMap();
408
433
  //# sourceMappingURL=TreeNode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TreeNode.js","sourceRoot":"","sources":["../../src/implementation/TreeNode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TreeNode.js","sourceRoot":"","sources":["../../src/implementation/TreeNode.ts"],"names":[],"mappings":"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"}