@realsee/dnalogel 2.2.5-alpha.0 → 2.2.6

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 (276) hide show
  1. package/dist/CSS3DRenderPlugin/CSS3DRender.d.ts +34 -47
  2. package/dist/CSS3DRenderPlugin/Controller.d.ts +5 -5
  3. package/dist/CSS3DRenderPlugin/index.d.ts +1 -2
  4. package/dist/CSS3DRenderPlugin/utils/{three/CSS3DObject.d.ts → CSS3DObjectPlus.d.ts} +11 -25
  5. package/dist/CSS3DRenderPlugin/utils/evenNumber.d.ts +3 -0
  6. package/dist/CSS3DRenderPlugin/utils/index.d.ts +1 -1
  7. package/dist/ModelEntryDoorGuidePlugin/Plugin.d.ts +1 -0
  8. package/dist/Object3DHelperPlugin/Controller.d.ts +0 -2
  9. package/dist/index.cjs.js +46 -46
  10. package/dist/index.js +4897 -5028
  11. package/dist/index.umd.js +38 -38
  12. package/dist/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts +2 -2
  13. package/dist/shared-utils/three/{transfromToMeshBasicMaterial.d.ts → transformToMeshBasicMaterial.d.ts} +0 -0
  14. package/docs/assets/highlight.css +0 -7
  15. package/docs/assets/search.js +1 -1
  16. package/docs/classes/CruisePluginController.html +24 -24
  17. package/docs/classes/Magnifier.html +16 -16
  18. package/docs/classes/ModelRoomLabelController.html +11 -11
  19. package/docs/classes/Object3DHelperController.html +24 -24
  20. package/docs/classes/PaintBrush.html +15 -15
  21. package/docs/classes/PanoTagPluginController.html +39 -39
  22. package/docs/classes/Util.BetterTween.html +8 -8
  23. package/docs/classes/Util.FivePointSelector.html +12 -12
  24. package/docs/classes/Util.Interval.html +12 -12
  25. package/docs/classes/Util.Magnifier.html +17 -17
  26. package/docs/classes/Util.PointDomHelper.html +11 -11
  27. package/docs/classes/Util.PointHelper.html +11 -11
  28. package/docs/classes/Util.Rectangle.html +13 -13
  29. package/docs/enums/CameraMovementEffect.html +7 -7
  30. package/docs/enums/ContentType.html +12 -12
  31. package/docs/enums/DIRECTION.html +9 -9
  32. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  33. package/docs/enums/DimensionType.html +7 -7
  34. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  35. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  36. package/docs/enums/LinkType.html +7 -7
  37. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  38. package/docs/enums/PointType.html +7 -7
  39. package/docs/enums/Rotation.html +8 -8
  40. package/docs/functions/CSS3DRenderPlugin.html +5 -6
  41. package/docs/functions/CameraMovementPlugin.html +5 -6
  42. package/docs/functions/CruisePlugin.html +5 -6
  43. package/docs/functions/GuideLinePlugin.html +6 -7
  44. package/docs/functions/ItemLabelPlugin.html +5 -6
  45. package/docs/functions/MapviewFloorplanPlugin.html +5 -6
  46. package/docs/functions/ModelChassisCompassPlugin.html +5 -6
  47. package/docs/functions/ModelEntryDoorGuidePlugin.html +5 -6
  48. package/docs/functions/ModelFloorplanPlugin.html +5 -6
  49. package/docs/functions/ModelItemLabelPlugin.html +5 -6
  50. package/docs/functions/ModelRoomLabelPlugin.html +5 -6
  51. package/docs/functions/ModelTVVideoPlugin.html +5 -6
  52. package/docs/functions/ModelViewPlugin.html +5 -6
  53. package/docs/functions/Object3DHelperPlugin.html +5 -6
  54. package/docs/functions/PanoCompassPlugin.html +5 -6
  55. package/docs/functions/PanoCursorRaycasterPlugin.html +5 -6
  56. package/docs/functions/PanoDoorLabelPlugin.html +5 -6
  57. package/docs/functions/PanoFloorplanRadarPlugin.html +5 -6
  58. package/docs/functions/PanoMeasurePlugin.html +5 -6
  59. package/docs/functions/PanoRulerPlugin.html +5 -6
  60. package/docs/functions/PanoRulerProPlugin.html +5 -6
  61. package/docs/functions/PanoSpatialTagPlugin.html +5 -6
  62. package/docs/functions/PanoTagPlugin.html +5 -6
  63. package/docs/functions/TopviewFloorplanPlugin.html +5 -6
  64. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  65. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  66. package/docs/functions/Util.getFrameTime.html +5 -5
  67. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  68. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  69. package/docs/functions/Util.isNil.html +5 -5
  70. package/docs/functions/Util.nextFrame.html +5 -5
  71. package/docs/functions/Util.notNil.html +5 -5
  72. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  73. package/docs/functions/Util.tweenProgress.html +5 -5
  74. package/docs/functions/pluginFlag.html +6 -7
  75. package/docs/index.html +5 -6
  76. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  77. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  78. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  79. package/docs/interfaces/ContentTypeMap.html +12 -12
  80. package/docs/interfaces/FloorplanBounding.html +8 -8
  81. package/docs/interfaces/FloorplanData.html +10 -10
  82. package/docs/interfaces/FloorplanEntrance.html +11 -11
  83. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  84. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  85. package/docs/interfaces/FloorplanFloorData.html +9 -9
  86. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  87. package/docs/interfaces/FloorplanObserver.html +9 -9
  88. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  89. package/docs/interfaces/FloorplanPosition.html +7 -7
  90. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  91. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  92. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  93. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  94. package/docs/interfaces/FloorplanServerData.html +7 -7
  95. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  96. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  97. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  98. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  99. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  100. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  101. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  102. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  103. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  104. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  105. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  106. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  107. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  108. package/docs/interfaces/LineJson.html +7 -7
  109. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  110. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  111. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  112. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  113. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  114. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  115. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  116. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  117. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  118. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  119. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  120. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  121. package/docs/interfaces/ModelViewPluginExportType.html +8 -8
  122. package/docs/interfaces/Object3DHelperState.html +8 -8
  123. package/docs/interfaces/OpenParameter.html +7 -7
  124. package/docs/interfaces/PaintBrushAction.html +12 -12
  125. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  126. package/docs/interfaces/PaintBrushState.html +10 -10
  127. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  128. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +6 -7
  129. package/docs/interfaces/PanoMeasureParameterType.html +11 -11
  130. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  131. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  132. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  133. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  134. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  135. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  136. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  137. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +6 -7
  138. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +6 -7
  139. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  140. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  141. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  142. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  143. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  144. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  145. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  146. package/docs/interfaces/Point.html +8 -8
  147. package/docs/interfaces/PointJson.html +8 -8
  148. package/docs/interfaces/Room.html +9 -9
  149. package/docs/interfaces/RoomInfo.html +7 -7
  150. package/docs/interfaces/RoomLabel.html +14 -14
  151. package/docs/interfaces/RoomRules.html +6 -7
  152. package/docs/interfaces/Rooms.html +6 -7
  153. package/docs/interfaces/Scissor.html +9 -9
  154. package/docs/interfaces/TagConfig.html +10 -10
  155. package/docs/interfaces/Tags.html +9 -9
  156. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  157. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  158. package/docs/modules/Util.html +5 -5
  159. package/docs/modules.html +5 -7
  160. package/docs/types/ArrayPosition.html +6 -7
  161. package/docs/types/CSS3DRenderExportType.html +7 -8
  162. package/docs/types/CSS3DRenderPluginExportType.html +6 -7
  163. package/docs/types/CSS3DRenderPluginParameterType.html +6 -7
  164. package/docs/types/Color.html +6 -7
  165. package/docs/types/ContentTypeConfigKey.html +6 -7
  166. package/docs/types/ContentTypeConfigKeyArray.html +6 -7
  167. package/docs/types/Create3DDomContainerReturnType.html +6 -7
  168. package/docs/types/Create3DElementReturnType.html +7 -8
  169. package/docs/types/CruisePluginExportType.html +6 -7
  170. package/docs/types/Direction-1.html +6 -7
  171. package/docs/types/Direction4.html +6 -7
  172. package/docs/types/FloorplanRuleLabels.html +6 -7
  173. package/docs/types/FloorplanServerRuleLabels.html +6 -7
  174. package/docs/types/GuideLinePluginExportType.html +6 -7
  175. package/docs/types/HelperEventMap.html +6 -7
  176. package/docs/types/MapviewFloorplanPluginParameterType.html +6 -7
  177. package/docs/types/MapviewFloorplanPluginReturnType.html +6 -7
  178. package/docs/types/MediaData.html +6 -7
  179. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +7 -8
  180. package/docs/types/ModelFloorplanPluginParameterType.html +6 -7
  181. package/docs/types/ModelFloorplanPluginReturnType.html +6 -7
  182. package/docs/types/ModelRoomLabelPluginParameters.html +6 -7
  183. package/docs/types/ModelRoomLabelPluginReturnType.html +6 -7
  184. package/docs/types/MoveArgs.html +6 -7
  185. package/docs/types/MoveOpts.html +6 -7
  186. package/docs/types/Object3DHelperEventMap.html +6 -7
  187. package/docs/types/ObjectFit.html +6 -7
  188. package/docs/types/PaintBrushEventMap.html +6 -7
  189. package/docs/types/PanoCompassPluginData.html +6 -7
  190. package/docs/types/PanoCompassPluginExportType.html +6 -7
  191. package/docs/types/PanoCompassPluginParameterType.html +6 -7
  192. package/docs/types/PanoFloorplanRadarPluginParameterType.html +6 -7
  193. package/docs/types/PanoFloorplanRadarPluginReturnType.html +6 -7
  194. package/docs/types/PanoMeasurePluginEvent.html +6 -7
  195. package/docs/types/PanoMeasureReturnType.html +6 -7
  196. package/docs/types/PanoSpatialTagPluginId.html +6 -7
  197. package/docs/types/PanoTagPluginExportInterface.html +6 -7
  198. package/docs/types/PanoTagPluginParamsInterface.html +6 -7
  199. package/docs/types/PlaneTag.html +6 -7
  200. package/docs/types/PointTag.html +6 -7
  201. package/docs/types/Position.html +6 -7
  202. package/docs/types/RotateArgs.html +6 -7
  203. package/docs/types/RotateOpts.html +6 -7
  204. package/docs/types/RuleLabelsKey.html +6 -7
  205. package/docs/types/RuleLabelsValue.html +6 -7
  206. package/docs/types/Tag.html +6 -7
  207. package/docs/types/Tag2D.html +6 -7
  208. package/docs/types/Tag3D.html +6 -7
  209. package/docs/types/TagId.html +6 -7
  210. package/docs/types/TopviewFloorplanPluginParameterType.html +6 -7
  211. package/docs/types/TopviewFloorplanPluginReturnType.html +6 -7
  212. package/docs/variables/FLOOR_TYPE_MAP.html +6 -7
  213. package/docs/variables/PLUGIN.html +6 -7
  214. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +6 -7
  215. package/docs/variables/ROOM_TYPE_MAP.html +6 -7
  216. package/docs/variables/VERSION.html +6 -7
  217. package/docs/variables/itemLabelPluginServerParams.html +6 -7
  218. package/docs/variables/modelItemLabelPluginServerParams.html +6 -7
  219. package/docs/variables/modelRoomLabelPluginServerParams.html +6 -7
  220. package/libs/CSS3DRenderPlugin/CSS3DRender.d.ts +34 -47
  221. package/libs/CSS3DRenderPlugin/CSS3DRender.js +251 -187
  222. package/libs/CSS3DRenderPlugin/Controller.d.ts +5 -5
  223. package/libs/CSS3DRenderPlugin/Controller.js +57 -48
  224. package/libs/CSS3DRenderPlugin/index.d.ts +1 -2
  225. package/libs/CSS3DRenderPlugin/index.js +2 -3
  226. package/libs/CSS3DRenderPlugin/utils/{three/CSS3DObject.d.ts → CSS3DObjectPlus.d.ts} +11 -25
  227. package/libs/CSS3DRenderPlugin/utils/CSS3DObjectPlus.js +65 -0
  228. package/libs/CSS3DRenderPlugin/utils/evenNumber.d.ts +3 -0
  229. package/libs/CSS3DRenderPlugin/utils/evenNumber.js +7 -0
  230. package/libs/CSS3DRenderPlugin/utils/index.d.ts +1 -1
  231. package/libs/CruisePlugin/Controller.js +16 -16
  232. package/libs/ModelChassisCompassPlugin/Plugin.js +1 -1
  233. package/libs/ModelEntryDoorGuidePlugin/Plugin.d.ts +1 -0
  234. package/libs/ModelEntryDoorGuidePlugin/Plugin.js +42 -39
  235. package/libs/ModelTVVideoPlugin/index.js +1 -2
  236. package/libs/Object3DHelperPlugin/Controller.d.ts +0 -2
  237. package/libs/Object3DHelperPlugin/Controller.js +74 -89
  238. package/libs/PanoSpatialTagPlugin/index.js +1 -2
  239. package/libs/index.js +98 -107
  240. package/libs/shared-utils/Object3DHelper/Base/BaseController.js +1 -1
  241. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +7 -8
  242. package/libs/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts +2 -2
  243. package/libs/shared-utils/Object3DHelper/Helper/index.js +0 -1
  244. package/libs/shared-utils/three/index.js +1 -2
  245. package/libs/shared-utils/three/{transfromToMeshBasicMaterial.d.ts → transformToMeshBasicMaterial.d.ts} +0 -0
  246. package/libs/shared-utils/three/{transfromToMeshBasicMaterial.js → transformToMeshBasicMaterial.js} +0 -0
  247. package/package.json +14 -15
  248. package/dist/CSS3DRenderPlugin/utils/createResizeObserver.d.ts +0 -4
  249. package/dist/CSS3DRenderPlugin/utils/even.d.ts +0 -9
  250. package/dist/CSS3DRenderPlugin/utils/generateBehindFiveElement.d.ts +0 -2
  251. package/dist/CSS3DRenderPlugin/utils/getAllCSS3DObject.d.ts +0 -3
  252. package/dist/CSS3DRenderPlugin/utils/three/CSS3DGroup.d.ts +0 -12
  253. package/dist/CSS3DRenderPlugin/utils/three/CSS3DRenderer.d.ts +0 -14
  254. package/dist/CSS3DRenderPlugin/utils/three/CSS3DScene.d.ts +0 -12
  255. package/dist/CSS3DRenderPlugin/utils/three/OpacityMesh.d.ts +0 -6
  256. package/dist/CSS3DRenderPlugin/utils/waitFiveModelLoaded.d.ts +0 -2
  257. package/docs/classes/CSS3DRender.html +0 -533
  258. package/libs/CSS3DRenderPlugin/utils/createResizeObserver.d.ts +0 -4
  259. package/libs/CSS3DRenderPlugin/utils/createResizeObserver.js +0 -22
  260. package/libs/CSS3DRenderPlugin/utils/even.d.ts +0 -9
  261. package/libs/CSS3DRenderPlugin/utils/even.js +0 -7
  262. package/libs/CSS3DRenderPlugin/utils/generateBehindFiveElement.d.ts +0 -2
  263. package/libs/CSS3DRenderPlugin/utils/generateBehindFiveElement.js +0 -29
  264. package/libs/CSS3DRenderPlugin/utils/getAllCSS3DObject.d.ts +0 -3
  265. package/libs/CSS3DRenderPlugin/utils/getAllCSS3DObject.js +0 -9
  266. package/libs/CSS3DRenderPlugin/utils/three/CSS3DGroup.d.ts +0 -12
  267. package/libs/CSS3DRenderPlugin/utils/three/CSS3DGroup.js +0 -39
  268. package/libs/CSS3DRenderPlugin/utils/three/CSS3DObject.js +0 -93
  269. package/libs/CSS3DRenderPlugin/utils/three/CSS3DRenderer.d.ts +0 -14
  270. package/libs/CSS3DRenderPlugin/utils/three/CSS3DRenderer.js +0 -46
  271. package/libs/CSS3DRenderPlugin/utils/three/CSS3DScene.d.ts +0 -12
  272. package/libs/CSS3DRenderPlugin/utils/three/CSS3DScene.js +0 -39
  273. package/libs/CSS3DRenderPlugin/utils/three/OpacityMesh.d.ts +0 -6
  274. package/libs/CSS3DRenderPlugin/utils/three/OpacityMesh.js +0 -18
  275. package/libs/CSS3DRenderPlugin/utils/waitFiveModelLoaded.d.ts +0 -2
  276. package/libs/CSS3DRenderPlugin/utils/waitFiveModelLoaded.js +0 -31
@@ -1,76 +1,57 @@
1
- var N = Object.defineProperty;
2
- var E = Object.getOwnPropertySymbols;
3
- var x = Object.prototype.hasOwnProperty, $ = Object.prototype.propertyIsEnumerable;
4
- var M = (o, e, t) => e in o ? N(o, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : o[e] = t, C = (o, e) => {
1
+ var Z = Object.defineProperty;
2
+ var x = Object.getOwnPropertySymbols;
3
+ var ee = Object.prototype.hasOwnProperty, te = Object.prototype.propertyIsEnumerable;
4
+ var F = (b, e, t) => e in b ? Z(b, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : b[e] = t, U = (b, e) => {
5
5
  for (var t in e || (e = {}))
6
- x.call(e, t) && M(o, t, e[t]);
7
- if (E)
8
- for (var t of E(e))
9
- $.call(e, t) && M(o, t, e[t]);
10
- return o;
6
+ ee.call(e, t) && F(b, t, e[t]);
7
+ if (x)
8
+ for (var t of x(e))
9
+ te.call(e, t) && F(b, t, e[t]);
10
+ return b;
11
11
  };
12
- var i = (o, e, t) => (M(o, typeof e != "symbol" ? e + "" : e, t), t);
13
- var p = (o, e, t) => new Promise((r, s) => {
14
- var d = (c) => {
12
+ var l = (b, e, t) => (F(b, typeof e != "symbol" ? e + "" : e, t), t);
13
+ var C = (b, e, t) => new Promise((s, n) => {
14
+ var d = (i) => {
15
15
  try {
16
- f(t.next(c));
17
- } catch (S) {
18
- s(S);
16
+ a(t.next(i));
17
+ } catch (f) {
18
+ n(f);
19
19
  }
20
- }, l = (c) => {
20
+ }, c = (i) => {
21
21
  try {
22
- f(t.throw(c));
23
- } catch (S) {
24
- s(S);
22
+ a(t.throw(i));
23
+ } catch (f) {
24
+ n(f);
25
25
  }
26
- }, f = (c) => c.done ? r(c.value) : Promise.resolve(c.value).then(d, l);
27
- f((t = t.apply(o, e)).next());
26
+ }, a = (i) => i.done ? s(i.value) : Promise.resolve(i.value).then(d, c);
27
+ a((t = t.apply(b, e)).next());
28
28
  });
29
- import { ICSS3DRenderer as O } from "./utils/three/CSS3DRenderer.js";
30
- import { Subscribe as _ } from "../shared-utils/Subscribe.js";
31
- import "three";
32
- import { anyPositionToVector3 as k } from "./utils/positionToVector3.js";
33
- import { CSS3DObjectPlus as P } from "./utils/three/CSS3DObject.js";
34
- import { CSS3DFrontScene as V, CSS3DBehindScene as q } from "./utils/three/CSS3DScene.js";
35
- import { CSS3DFrontGroup as A, CSS3DBehindGroup as L } from "./utils/three/CSS3DGroup.js";
36
- import { CSS3DObject as R } from "three/examples/jsm/renderers/CSS3DRenderer";
37
- const W = 3, g = "CSS3DRenderer", b = `${g}@${W}`, u = () => {
38
- console.error(`${b} is disposed`);
39
- }, n = {
40
- css3DObjects: [],
41
- frontModeStore: {
42
- css3DRenderer: new O()
43
- },
44
- behindModeStore: {
45
- css3DRenderer: new O()
46
- }
47
- };
48
- function B(o) {
49
- return n.css3DObjects.find((e) => e.id === o);
50
- }
51
- function H(o) {
52
- n.frontModeStore.css3DRenderer.setWrapper(o);
53
- }
54
- function T(o) {
55
- n.behindModeStore.css3DRenderer.setWrapper(o);
56
- }
57
- class w {
58
- constructor(e) {
59
- i(this, "hooks", new _());
60
- i(this, "state", {
29
+ import * as y from "three";
30
+ import { CSS3DRenderer as H } from "three/examples/jsm/renderers/CSS3DRenderer";
31
+ import { Subscribe as se } from "../shared-utils/Subscribe.js";
32
+ import { evenNumber as N } from "./utils/evenNumber.js";
33
+ import { anyPositionToVector3 as oe } from "./utils/positionToVector3.js";
34
+ import { CSS3DObjectPlus as ne } from "./utils/CSS3DObjectPlus.js";
35
+ const re = "v2.0.1", _ = "CSS3DRenderer", m = `${_}@${re}`, V = (b) => `${m}--${b}`, o = {};
36
+ class fe {
37
+ constructor() {
38
+ l(this, "hooks", new se());
39
+ l(this, "state", {
61
40
  enabled: !0,
62
41
  visible: !0,
63
42
  disposed: !1
64
43
  });
65
- i(this, "_scene");
66
- i(this, "store", {
67
- frontModeGroup: new A()
44
+ l(this, "store", {
45
+ rendered: !1,
46
+ disposers: [],
47
+ frontModeCSS3DObjects: {},
48
+ behindModeCSS3DObjects: {}
68
49
  });
69
- i(this, "create3DElement", (e, t, r) => {
50
+ l(this, "create3DElement", (e, t, s) => {
70
51
  if (this.state.disposed)
71
- return u();
72
- const s = (() => {
73
- const h = {
52
+ return this.disposedErrorLog();
53
+ const n = (() => {
54
+ const r = {
74
55
  ratio: 216e-5,
75
56
  devicePixelRatio: 1,
76
57
  mode: "front",
@@ -78,186 +59,269 @@ class w {
78
59
  container: document.createElement("div"),
79
60
  pointerEvents: "none"
80
61
  };
81
- return Object.assign(h, r);
82
- })(), d = t.map(k);
62
+ return Object.assign(r, s);
63
+ })(), d = t.map(oe);
83
64
  if ((d == null ? void 0 : d.length) < 4)
84
- return console.error(`${b}: requires 4 point but params may have fewer`);
85
- const { ratio: l, devicePixelRatio: f, mode: c, autoRender: S, container: G, pointerEvents: F } = s, a = this.createObject(d, { ratio: l, dpr: f, container: G, mode: c, pointerEvents: F });
86
- n.css3DObjects.push(a), s.scene && this.setScene(s.scene);
87
- const I = () => {
88
- const h = a.mode === "front" ? this.getFrontCSS3DObjectGroup() : this.getBehindCSS3DObjectGroup();
89
- !h || h.add(a);
90
- }, v = () => {
91
- I(), this.render(e);
92
- }, D = (h) => this.setVisibleById(a.id, h), m = (h) => this.setEnabledById(a.id, h), j = () => (a.removeFromParent(), !0), y = c === "front" ? n.frontModeStore.css3DRenderer : n.behindModeStore.css3DRenderer;
93
- return S && v(), {
94
- id: a.uuid,
95
- container: G,
96
- css3DObject: a,
97
- render: S ? void 0 : v,
98
- show: () => D(!0),
99
- hide: () => D(!1),
100
- setVisible: D,
101
- enable: () => m(!0),
102
- disable: () => m(!1),
103
- setEnabled: m,
104
- dispose: j,
105
- appendToElement: (h) => y.setWrapper(h)
65
+ return console.error(`${m}: requires 4 point but params may have fewer`);
66
+ const { ratio: c, devicePixelRatio: a, mode: i, autoRender: f, container: u, pointerEvents: G } = n, z = [], { css3DObject: h, opacityMesh: O } = this.createObject(d, { ratio: c, dpr: a, container: u, mode: i, pointerEvents: G });
67
+ u.id = `container--${h.uuid}`;
68
+ const Q = i === "front" && !o.frontModeStore, W = i === "behind" && !o.behindModeStore;
69
+ i === "front" && this.initGlobalModeStore("front"), i === "behind" && this.initGlobalModeStore("behind", n.scene), h.hooks.on("changeMode", (r, D, M) => {
70
+ var B, L, P;
71
+ if (r === D)
72
+ return;
73
+ r === "front" && this.initGlobalModeStore("front"), r === "behind" && this.initGlobalModeStore("behind", M);
74
+ const S = D === "front" ? o.frontModeStore : o.behindModeStore, p = r === "front" ? o.frontModeStore : o.behindModeStore, I = D === "behind" ? this.store.behindModeCSS3DObjects : this.store.frontModeCSS3DObjects, w = r === "behind" ? this.store.behindModeCSS3DObjects : this.store.frontModeCSS3DObjects;
75
+ if (!I || !w)
76
+ return console.error(`${m}: changeMode error: prevObjects or nextObjects is undefined`);
77
+ const j = I[h.uuid];
78
+ if (!j)
79
+ return console.error(`${m}: changeMode error: prevObject is undefined`);
80
+ if (r === "behind") {
81
+ const T = (B = j.opacityMesh) != null ? B : this.createOpacityMesh(j.css3DObject);
82
+ S == null || S.css3DScene.remove(j.css3DObject), w[h.uuid] = { css3DObject: h, opacityMesh: T, visible: !0, enabled: !0, mode: r, scene: M }, p == null || p.css3DScene.add(h), M == null || M.add(T);
83
+ }
84
+ r === "front" && (S == null || S.css3DScene.remove(j.css3DObject), (P = (L = I[h.uuid]) == null ? void 0 : L.scene) == null || P.remove(j.opacityMesh), w[h.uuid] = { css3DObject: h, visible: !0, enabled: !0, mode: r }, p == null || p.css3DScene.add(h)), r === "behind" && this.appendToElement(o.behindModeContainer, "behind"), r === "front" && this.appendToElement(o.frontModeContainer, "front"), this.render(e), console.log("change success");
85
+ });
86
+ const g = i === "front" ? o.frontModeStore : o.behindModeStore, { css3DScene: E, css3DRenderer: v } = g, q = (() => {
87
+ const r = () => {
88
+ var M, S;
89
+ const D = h.mode;
90
+ if (D === "front")
91
+ this.store.frontModeCSS3DObjects[h.uuid] = {
92
+ visible: !0,
93
+ enabled: !0,
94
+ css3DObject: h,
95
+ mode: "front"
96
+ };
97
+ else {
98
+ if (!n.scene)
99
+ return;
100
+ this.store.behindModeCSS3DObjects[h.uuid] = {
101
+ visible: !0,
102
+ enabled: !0,
103
+ css3DObject: h,
104
+ opacityMesh: O,
105
+ mode: "behind",
106
+ scene: n.scene
107
+ };
108
+ }
109
+ E.getObjectById(h.id) || E.add(h), D === "behind" && O && ((M = n.scene) != null && M.getObjectById(O.id) || (S = n.scene) == null || S.add(O), z.push(() => {
110
+ var p;
111
+ return O && ((p = n.scene) == null ? void 0 : p.remove(O));
112
+ }));
113
+ };
114
+ return Q || W ? (v.domElement.style.position = "absolute", v.domElement.style.top = "0", v.domElement.style.userSelect = "none", v.domElement.style.pointerEvents = "none", v.domElement.classList.add(V(i)), () => {
115
+ r(), this.render(e);
116
+ }) : (this.store.rendered = !0, () => r());
117
+ })(), k = i === "front" ? o.frontModeContainer : o.behindModeContainer;
118
+ if (k) {
119
+ this.appendToElement(k, i);
120
+ const r = i === "front" ? o.frontModeStore : o.behindModeStore;
121
+ r && (r.appendedToPage = !0);
122
+ }
123
+ const R = (r) => this.setVisibleById(h.uuid, r), A = (r) => this.setEnabledById(h.uuid, r), J = () => R(!0), K = () => R(!1), X = () => A(!0), Y = () => A(!1), $ = () => (delete this.store.frontModeCSS3DObjects[h.uuid], delete this.store.behindModeCSS3DObjects[h.uuid], z.forEach((r) => r == null ? void 0 : r()), E.remove(h), E.children.length === 0 && (typeof g.requestAnimationFrameId == "number" && cancelAnimationFrame(g.requestAnimationFrameId), v.domElement.remove(), i === "front" && (o.frontModeStore = void 0), i === "behind" && (o.behindModeStore = void 0), o.frontModeResizeObserver = void 0, o.behindModeResizeObserver = void 0), !0);
124
+ return this.store.disposers.push($), f && q(), {
125
+ id: h.uuid,
126
+ container: u,
127
+ dispose: $,
128
+ css3DObject: h,
129
+ render: f ? void 0 : q,
130
+ show: J,
131
+ hide: K,
132
+ setVisible: R,
133
+ disable: Y,
134
+ enable: X,
135
+ setEnabled: A,
136
+ appendToElement: (r) => this.appendToElement(r, i)
106
137
  };
107
138
  });
108
- i(this, "setVisibleById", (e, t) => {
109
- var r;
110
- (r = B(e)) == null || r.setVisible(t);
139
+ l(this, "setVisibleById", (e, t) => {
140
+ var n;
141
+ const s = (n = this.store.frontModeCSS3DObjects[e]) != null ? n : this.store.behindModeCSS3DObjects[e];
142
+ if (!s)
143
+ return console.error("id not found", e);
144
+ s.visible = t, this.state.visible && (s.css3DObject.visible = t, s.mode === "behind" && (s.opacityMesh.visible = t));
111
145
  });
112
- i(this, "setEnabledById", (e, t) => {
113
- const r = B(e);
114
- if (!r)
146
+ l(this, "setEnabledById", (e, t) => {
147
+ var d, c, a;
148
+ const s = (d = this.store.frontModeCSS3DObjects[e]) != null ? d : this.store.behindModeCSS3DObjects[e];
149
+ if (!s)
115
150
  return;
116
- const s = r.mode === "front" ? this.getFrontCSS3DObjectGroup({ addGroupIfNotExists: !1 }) : this.getBehindCSS3DObjectGroup({ addGroupIfNotExists: !1 });
117
- !s || (t ? s.add(r) : s.remove(r));
151
+ const n = s.mode === "front" ? (c = o.frontModeStore) == null ? void 0 : c.css3DScene : (a = o.behindModeStore) == null ? void 0 : a.css3DScene;
152
+ !n || (t ? (n.add(s.css3DObject), s.mode === "behind" && s.scene.add(s.opacityMesh)) : (n.remove(s.css3DObject), s.mode === "behind" && s.scene.remove(s.opacityMesh)), s.enabled = t);
118
153
  });
119
- i(this, "createObject", (e, t) => {
120
- const r = new P(C({ cornerPoints: e }, t));
121
- return r.element.classList.add(`${g}__container`), r.element.id = `${g}__container--${r.uuid}`, r;
154
+ l(this, "createObject", (e, t) => {
155
+ const { ratio: s, dpr: n, container: d, mode: c, pointerEvents: a } = t, i = new ne(d, e, s, n, c);
156
+ d.style.pointerEvents = a, d.classList.add(`${_}__container`);
157
+ const f = c === "behind" ? this.createOpacityMesh(i) : void 0;
158
+ return { css3DObject: i, opacityMesh: f };
159
+ });
160
+ l(this, "createOpacityMesh", (e) => {
161
+ const { domWidthPx: t, domHeightPx: s } = e, n = new y.MeshBasicMaterial({
162
+ opacity: 0,
163
+ color: 0,
164
+ transparent: !1,
165
+ side: y.DoubleSide
166
+ }), d = new y.PlaneGeometry(t, s), c = new y.Mesh(d, n);
167
+ return c.name = V("mesh"), c.position.copy(e.position), c.rotation.copy(e.rotation), c.scale.copy(e.scale), e.hooks.on("applyMatrix4", (a) => c.applyMatrix4(a)), e.hooks.on("applyQuaternion", (a) => c.applyQuaternion(a)), e.hooks.on("applyScaleMatrix4", (a) => c.scale.applyMatrix4(a)), c;
168
+ });
169
+ l(this, "createResizeObserver", (e, t, s = !0) => {
170
+ if (!e)
171
+ return console.error("createResizeObserver: element is undefined"), { observe: () => {
172
+ }, unobserve: () => {
173
+ } };
174
+ const n = () => {
175
+ const c = N(e.clientWidth, { smaller: !0 }), a = N(e.clientHeight, { smaller: !0 });
176
+ t(c, a);
177
+ };
178
+ if (typeof ResizeObserver == "undefined" || !ResizeObserver)
179
+ return console.warn("createResizeObserver: ResizeObserver is undefined"), { observe: () => n(), unobserve: () => {
180
+ } };
181
+ const d = new ResizeObserver(n);
182
+ return s && n(), {
183
+ observe: () => d.observe(e),
184
+ unobserve: () => d.unobserve(e)
185
+ };
186
+ });
187
+ l(this, "disposedErrorLog", () => {
188
+ console.error(`${m} is disposed`);
122
189
  });
123
- e && this.setScene(e);
124
- }
125
- get scene() {
126
- return this._scene || console.error("scene doesn't exist!, please call setScene(scene) first"), this._scene;
127
- }
128
- static get frontModeCSS3DRenderer() {
129
- return n.frontModeStore.css3DRenderer;
130
- }
131
- static get behindModeCSS3DRenderer() {
132
- return n.behindModeStore.css3DRenderer;
133
- }
134
- get frontModeCSS3DRenderer() {
135
- return n.frontModeStore.css3DRenderer;
136
- }
137
- get behindModeCSS3DRenderer() {
138
- return n.behindModeStore.css3DRenderer;
139
- }
140
- setScene(e) {
141
- this._scene = e;
142
190
  }
143
191
  getCurrentState() {
144
192
  return this.state;
145
193
  }
146
194
  setState(e, t = { userAction: !0 }) {
147
195
  if (this.state.disposed)
148
- return u();
149
- const r = C({}, this.state);
150
- this.state = Object.assign(this.state, e), r.visible !== this.state.visible && (e.visible ? this.handleShow() : this.handleHide()), r.enabled !== this.state.enabled && (e.enabled ? this.handleEnable() : this.handleDisable()), r.disposed !== this.state.disposed && this.handleDispose(), this.hooks.emit("stateChange", { state: this.state, prevState: r, userAction: t.userAction });
196
+ return this.disposedErrorLog();
197
+ const s = U({}, this.state);
198
+ this.state = Object.assign(this.state, e), s.visible !== this.state.visible && (e.visible ? this.handleShow() : this.handleHide()), s.enabled !== this.state.enabled && (e.enabled ? this.handleEnable() : this.handleDisable()), this.hooks.emit("stateChange", { state: this.state, prevState: s, userAction: t.userAction });
151
199
  }
152
200
  dispose() {
153
- this.setState({ disposed: !0 }), this.hooks.emit("dispose");
201
+ this.store.disposers.forEach((e) => e == null ? void 0 : e()), this.store.disposers = [], this.hooks.emit("dispose"), this.state.disposed = !0;
154
202
  }
155
203
  show() {
156
- return p(this, arguments, function* ({ userAction: e } = { userAction: !0 }) {
204
+ return C(this, arguments, function* ({ userAction: e } = { userAction: !0 }) {
157
205
  if (this.state.disposed)
158
- return u();
206
+ return this.disposedErrorLog();
159
207
  this.setState({ visible: !0 }, { userAction: e }), this.hooks.emit("show", { userAction: e });
160
208
  });
161
209
  }
162
210
  hide() {
163
- return p(this, arguments, function* ({ userAction: e } = { userAction: !0 }) {
211
+ return C(this, arguments, function* ({ userAction: e } = { userAction: !0 }) {
164
212
  if (this.state.disposed)
165
- return u();
213
+ return this.disposedErrorLog();
166
214
  this.setState({ visible: !1 }, { userAction: e }), this.hooks.emit("hide", { userAction: e });
167
215
  });
168
216
  }
169
217
  enable({ userAction: e } = { userAction: !0 }) {
170
218
  if (this.state.disposed)
171
- return u();
219
+ return this.disposedErrorLog();
172
220
  this.setState({ enabled: !0 }, { userAction: e }), this.hooks.emit("enable", { userAction: e });
173
221
  }
174
222
  disable({ userAction: e } = { userAction: !0 }) {
175
223
  if (this.state.disposed)
176
- return u();
224
+ return this.disposedErrorLog();
177
225
  this.setState({ enabled: !1 }, { userAction: e }), this.hooks.emit("disable", { userAction: e });
178
226
  }
179
- getFrontCSS3DScene({ createSceneIfNotExists: e = !1 } = {}) {
180
- var r;
181
- const t = (r = n.frontModeStore) == null ? void 0 : r.css3DScene;
182
- if (t)
183
- return t;
184
- if (e) {
185
- const s = new V();
186
- n.frontModeStore.css3DScene = s;
187
- }
188
- return n.frontModeStore.css3DScene;
227
+ setContainer(e, t) {
228
+ t === "front" ? o.frontModeContainer = e : o.behindModeContainer = e;
189
229
  }
190
- getBehindCSS3DScene({ createSceneIfNotExists: e = !1 } = {}) {
191
- var r, s;
192
- const t = (r = n.behindModeStore) == null ? void 0 : r.css3DScene;
193
- if (t)
194
- return t;
195
- if (e) {
196
- const d = (s = n.behindModeStore.scene) != null ? s : this.scene;
197
- if (!d) {
198
- console.error(`${b}: scene is required when mode is behind`);
199
- return;
230
+ appendToElement(e, t) {
231
+ const s = t === "front" ? o.frontModeStore : o.behindModeStore;
232
+ if (!s) {
233
+ if (t === "front" && !o.frontModeContainer) {
234
+ if (!e)
235
+ throw new Error(`${m} Cannot append to container: front mode but container is ${e}`);
236
+ o.frontModeContainer = e;
200
237
  }
201
- const l = new q(d);
202
- n.behindModeStore.css3DScene = l, n.behindModeStore.scene = d;
238
+ if (t === "behind" && !o.behindModeContainer) {
239
+ if (!e)
240
+ throw new Error(`${m} Cannot append to container: behind mode but container is ${e}`);
241
+ o.behindModeContainer = e;
242
+ }
243
+ return;
203
244
  }
204
- return n.behindModeStore.css3DScene;
205
- }
206
- getFrontCSS3DObjectGroup({ addGroupIfNotExists: e = !0 } = {}) {
207
- const t = this.getFrontCSS3DScene({ createSceneIfNotExists: e });
208
- return e && t && (t.getObjectById(this.store.frontModeGroup.id) || t.add(this.store.frontModeGroup)), this.store.frontModeGroup;
209
- }
210
- getBehindCSS3DObjectGroup({ addGroupIfNotExists: e = !0 } = {}) {
211
- var r;
212
- const t = this.getBehindCSS3DScene({ createSceneIfNotExists: e });
213
- if (e && t && this.scene) {
214
- const s = (r = this.store.behindModeGroup) != null ? r : new L(this.scene);
215
- this.store.behindModeGroup = s, t.getObjectById(s.id) || t.add(s);
245
+ if (s.appendedToPage)
246
+ return;
247
+ const n = t === "behind" ? o.behindModeContainer : o.frontModeContainer;
248
+ if (!n)
249
+ return console.error("wrapper is undefined");
250
+ if (n.appendChild(s.css3DRenderer.domElement), t === "behind" && !o.behindModeResizeObserver) {
251
+ const d = (i, f) => {
252
+ var u;
253
+ (u = o.behindModeStore) == null || u.css3DRenderer.setSize(i, f);
254
+ }, { observe: c, unobserve: a } = this.createResizeObserver(n, d, !0);
255
+ o.behindModeResizeObserver = { observe: c, unobserve: a }, c(), this.store.disposers.push(a);
256
+ }
257
+ if (t === "front" && !o.frontModeResizeObserver) {
258
+ const d = (i, f) => {
259
+ var u;
260
+ (u = o.frontModeStore) == null || u.css3DRenderer.setSize(i, f);
261
+ }, { observe: c, unobserve: a } = this.createResizeObserver(n, d, !0);
262
+ o.frontModeResizeObserver = { observe: c, unobserve: a }, c(), this.store.disposers.push(a);
216
263
  }
217
- return this.store.behindModeGroup;
264
+ s.appendedToPage = !0;
218
265
  }
219
266
  render(e) {
220
- var t, r;
221
- if (this.getFrontCSS3DObjectGroup({ addGroupIfNotExists: !1 }).children.length > 0) {
222
- const s = this.getFrontCSS3DScene({ createSceneIfNotExists: !0 });
223
- if (!s)
224
- return console.error(`${b}: css3DScene is required when mode is front`);
225
- n.frontModeStore.css3DRenderer.renderEveryFrame(s, e);
267
+ const t = o.behindModeStore, s = o.frontModeStore;
268
+ if (t && Object.keys(this.store.behindModeCSS3DObjects).length > 0 && !t.requestAnimationFrameId) {
269
+ const n = () => {
270
+ const d = requestAnimationFrame(n);
271
+ t.requestAnimationFrameId = d, t.css3DRenderer.render(t.css3DScene, e);
272
+ };
273
+ n();
226
274
  }
227
- if (((r = (t = this.getBehindCSS3DObjectGroup({ addGroupIfNotExists: !1 })) == null ? void 0 : t.children.length) != null ? r : 0) > 0) {
228
- const s = this.getBehindCSS3DScene({ createSceneIfNotExists: !0 });
229
- if (!s)
230
- return console.error(`${b}: css3DScene is required when mode is behind`);
231
- n.behindModeStore.css3DRenderer.renderEveryFrame(s, e);
275
+ if (s && Object.keys(this.store.frontModeCSS3DObjects).length > 0 && !s.requestAnimationFrameId) {
276
+ const n = () => {
277
+ const d = requestAnimationFrame(n);
278
+ s.requestAnimationFrameId = d, s.css3DRenderer.render(s.css3DScene, e);
279
+ };
280
+ n();
232
281
  }
282
+ Object.keys(this.store.frontModeCSS3DObjects).length === 0 && (s == null ? void 0 : s.requestAnimationFrameId) !== void 0 && (cancelAnimationFrame(s.requestAnimationFrameId), s.requestAnimationFrameId = void 0), Object.keys(this.store.behindModeCSS3DObjects).length === 0 && (t == null ? void 0 : t.requestAnimationFrameId) !== void 0 && (cancelAnimationFrame(t.requestAnimationFrameId), t.requestAnimationFrameId = void 0);
283
+ }
284
+ initGlobalModeStore(e, t) {
285
+ const s = e === "front" && !o.frontModeStore;
286
+ e === "behind" && !o.behindModeStore && (o.behindModeStore = { scene: t, css3DScene: new y.Scene(), css3DRenderer: new H() }), s && (o.frontModeStore = { css3DScene: new y.Scene(), css3DRenderer: new H() });
233
287
  }
234
288
  handleShow() {
235
- return p(this, null, function* () {
236
- this.store.frontModeGroup.visible = !0, this.store.behindModeGroup && (this.store.behindModeGroup.visible = !0);
289
+ return C(this, null, function* () {
290
+ Object.values(this.store.frontModeCSS3DObjects).forEach((e) => {
291
+ e.css3DObject.visible = e.visible;
292
+ }), Object.values(this.store.behindModeCSS3DObjects).forEach((e) => {
293
+ e.css3DObject.visible = e.visible, e.opacityMesh.visible = e.visible;
294
+ });
237
295
  });
238
296
  }
239
297
  handleHide() {
240
- return p(this, null, function* () {
241
- this.store.frontModeGroup.visible = !1, this.store.behindModeGroup && (this.store.behindModeGroup.visible = !1);
298
+ return C(this, null, function* () {
299
+ Object.values(this.store.frontModeCSS3DObjects).forEach((e) => {
300
+ e.css3DObject.visible = !1;
301
+ }), Object.values(this.store.behindModeCSS3DObjects).forEach((e) => {
302
+ e.css3DObject.visible = !1, e.opacityMesh.visible = !1;
303
+ });
242
304
  });
243
305
  }
244
306
  handleEnable() {
245
- var e, t;
246
- (e = this.getFrontCSS3DScene()) == null || e.add(this.store.frontModeGroup), this.store.behindModeGroup && ((t = this.getBehindCSS3DScene()) == null || t.add(this.store.behindModeGroup));
307
+ Object.values(this.store.frontModeCSS3DObjects).forEach((e) => {
308
+ var t;
309
+ !e.enabled || (t = o.frontModeStore) == null || t.css3DScene.add(e.css3DObject);
310
+ }), Object.values(this.store.behindModeCSS3DObjects).forEach((e) => {
311
+ var t, s;
312
+ !e.enabled || ((t = o.behindModeStore) == null || t.css3DScene.add(e.css3DObject), (s = o.behindModeStore) == null || s.scene.add(e.opacityMesh));
313
+ });
247
314
  }
248
315
  handleDisable() {
249
- var e, t, r;
250
- this.store.frontModeGroup.children.forEach((s) => {
251
- s instanceof R && s.element instanceof Element && s.element.parentNode !== null && s.element.parentNode.removeChild(s.element);
252
- }), (e = this.store.behindModeGroup) == null || e.children.forEach((s) => {
253
- s instanceof R && s.element instanceof Element && s.element.parentNode !== null && s.element.parentNode.removeChild(s.element);
254
- }), (t = this.getFrontCSS3DScene()) == null || t.remove(this.store.frontModeGroup), this.store.behindModeGroup && ((r = this.getBehindCSS3DScene()) == null || r.remove(this.store.behindModeGroup));
255
- }
256
- handleDispose() {
257
- this.handleDisable();
316
+ Object.values(this.store.frontModeCSS3DObjects).forEach((e) => {
317
+ var t;
318
+ (t = o.frontModeStore) == null || t.css3DScene.remove(e.css3DObject);
319
+ }), Object.values(this.store.behindModeCSS3DObjects).forEach((e) => {
320
+ var t, s;
321
+ (t = o.behindModeStore) == null || t.css3DScene.remove(e.css3DObject), (s = o.behindModeStore) == null || s.scene.remove(e.opacityMesh);
322
+ });
258
323
  }
259
324
  }
260
- i(w, "setFrontModeContainer", H), i(w, "setBehindModeContainer", T);
261
325
  export {
262
- w as CSS3DRender
326
+ fe as CSS3DRender
263
327
  };
@@ -67,15 +67,15 @@ export default class Controller extends CSS3DRender implements BasePlugin.Contro
67
67
  render: () => void;
68
68
  id: string;
69
69
  container: HTMLElement;
70
- css3DObject: import("./utils/three/CSS3DObject").CSS3DObjectPlus<HTMLElement>;
70
+ dispose: () => boolean;
71
+ css3DObject: import("./utils/CSS3DObjectPlus").CSS3DObjectPlus<HTMLElement>;
71
72
  show: () => void;
72
73
  hide: () => void;
73
74
  setVisible: (visible: boolean) => void;
74
- enable: () => void;
75
75
  disable: () => void;
76
+ enable: () => void;
76
77
  setEnabled: (enabled: boolean) => void;
77
- dispose: () => boolean;
78
- appendToElement: (element: HTMLElement) => import("./utils/three/CSS3DRenderer").default;
78
+ appendToElement: (container: Element) => void;
79
79
  };
80
- getBehindFiveElement(): HTMLElement;
80
+ private getBehindFiveElement;
81
81
  }