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