@realsee/dnalogel 2.6.6 → 2.6.7-dev.1

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 (390) hide show
  1. package/dist/CSS3DRenderPlugin/Controller.d.ts +1 -1
  2. package/dist/Object3DHelperPlugin/Controller.d.ts +25 -10
  3. package/dist/Object3DHelperPlugin/FiveControllerWrapper.d.ts +6 -8
  4. package/dist/Object3DHelperPlugin/typings.d.ts +14 -0
  5. package/dist/PanoTagPlugin/controller/TagCacheController.d.ts +1 -0
  6. package/dist/PanoTagPlugin/controller/TagComputer.d.ts +23 -7
  7. package/dist/PanoTagPlugin/controller/index.d.ts +33 -6
  8. package/dist/PanoTagPlugin/typings/controller.d.ts +17 -2
  9. package/dist/PanoTagPlugin/typings/tag/Tag.d.ts +5 -2
  10. package/dist/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -1
  11. package/dist/PanoTagPlugin/typings/tag/TagData.d.ts +19 -3
  12. package/dist/PanoTagPlugin/typings/tag/Utils.d.ts +1 -1
  13. package/dist/PanoTagPlugin/utils/tag/index.d.ts +2 -0
  14. package/dist/PanoTagPlugin/utils/tag/tagCheck.d.ts +2 -1
  15. package/dist/PanoTagPlugin/utils/tagPosition.d.ts +3 -1
  16. package/dist/index.cjs.js +49 -49
  17. package/dist/index.js +5151 -4731
  18. package/dist/index.umd.js +32 -32
  19. package/dist/shared-utils/Object3DHelper/Base/BaseController.d.ts +41 -15
  20. package/dist/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +27 -20
  21. package/dist/shared-utils/Object3DHelper/Controller/BoundingBoxController.d.ts +7 -0
  22. package/dist/shared-utils/Object3DHelper/Controller/CSS3DScaleController.d.ts +1 -0
  23. package/dist/shared-utils/Object3DHelper/Controller/MoveController.d.ts +24 -0
  24. package/dist/shared-utils/Object3DHelper/Controller/RectangleScaleController.d.ts +6 -1
  25. package/dist/shared-utils/Object3DHelper/Controller/RotateController.d.ts +14 -0
  26. package/dist/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +12 -0
  27. package/dist/shared-utils/Object3DHelper/Helper/{OutlineHelper.d.ts → BoundingBoxHelper.d.ts} +3 -2
  28. package/{libs/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts → dist/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.d.ts} +3 -8
  29. package/dist/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +14 -11
  30. package/dist/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +5 -0
  31. package/dist/shared-utils/Object3DHelper/Helper/index.d.ts +2 -2
  32. package/dist/shared-utils/Object3DHelper/index.d.ts +4 -27
  33. package/dist/shared-utils/Object3DHelper/typings/Hooks.d.ts +22 -12
  34. package/dist/shared-utils/Object3DHelper/typings/index.d.ts +22 -0
  35. package/dist/shared-utils/Object3DHelper/utils/boundingBox.d.ts +2 -0
  36. package/dist/shared-utils/three/GLTFLoader.d.ts +2 -0
  37. package/docs/assets/search.js +1 -1
  38. package/docs/classes/CSS3DRender.html +31 -31
  39. package/docs/classes/CruisePluginController.html +24 -24
  40. package/docs/classes/Magnifier.html +20 -20
  41. package/docs/classes/ModelRoomLabelController.html +11 -11
  42. package/docs/classes/Object3DHelperController.html +40 -33
  43. package/docs/classes/PaintBrush.html +15 -15
  44. package/docs/classes/PanoMeasurePluginLine.html +23 -23
  45. package/docs/classes/PanoMeasurePluginModel.html +22 -22
  46. package/docs/classes/PanoMeasurePluginPoint.html +14 -14
  47. package/docs/classes/PanoMeasurePluginPolyline.html +26 -26
  48. package/docs/classes/PanoTagPluginController.html +279 -77
  49. package/docs/classes/Util.BetterTween.html +8 -8
  50. package/docs/classes/Util.FivePointSelector.html +12 -12
  51. package/docs/classes/Util.Interval.html +12 -12
  52. package/docs/classes/Util.Magnifier.html +17 -17
  53. package/docs/classes/Util.PointDomHelper.html +11 -11
  54. package/docs/classes/Util.PointHelper.html +11 -11
  55. package/docs/classes/Util.Rectangle.html +13 -13
  56. package/docs/enums/CameraMovementEffect.html +7 -7
  57. package/docs/enums/ContentType.html +34 -16
  58. package/docs/enums/DIRECTION.html +9 -9
  59. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +9 -9
  60. package/docs/enums/DimensionType.html +7 -7
  61. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +8 -8
  62. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +9 -9
  63. package/docs/enums/PaintBrushTypeEnum.html +8 -8
  64. package/docs/enums/PointType.html +7 -7
  65. package/docs/enums/Rotation.html +8 -8
  66. package/docs/functions/CSS3DRenderPlugin.html +10 -5
  67. package/docs/functions/CameraMovementPlugin.html +10 -5
  68. package/docs/functions/CruisePlugin.html +10 -5
  69. package/docs/functions/GuideLinePlugin.html +10 -5
  70. package/docs/functions/ItemLabelPlugin.html +10 -5
  71. package/docs/functions/MapviewFloorplanPlugin.html +10 -5
  72. package/docs/functions/ModelChassisCompassPlugin.html +10 -5
  73. package/docs/functions/ModelEntryDoorGuidePlugin.html +10 -5
  74. package/docs/functions/ModelFloorplanPlugin.html +10 -5
  75. package/docs/functions/ModelItemLabelPlugin.html +10 -5
  76. package/docs/functions/ModelRoomLabelPlugin.html +10 -5
  77. package/docs/functions/ModelTVVideoPlugin.html +10 -5
  78. package/docs/functions/ModelViewPlugin.html +10 -5
  79. package/docs/functions/Object3DHelperPlugin.html +10 -5
  80. package/docs/functions/PanoCompassPlugin.html +10 -5
  81. package/docs/functions/PanoCursorRaycasterPlugin.html +10 -5
  82. package/docs/functions/PanoDoorLabelPlugin.html +10 -5
  83. package/docs/functions/PanoFloorplanRadarPlugin.html +10 -5
  84. package/docs/functions/PanoMeasurePlugin.html +10 -5
  85. package/docs/functions/PanoRulerPlugin.html +10 -5
  86. package/docs/functions/PanoRulerProPlugin.html +10 -5
  87. package/docs/functions/PanoSpatialTagPlugin.html +10 -5
  88. package/docs/functions/PanoTagPlugin.html +15 -10
  89. package/docs/functions/TopviewFloorplanPlugin.html +10 -5
  90. package/docs/functions/Util.getCoordsFromClient.html +5 -5
  91. package/docs/functions/Util.getCoordsFromElement.html +5 -5
  92. package/docs/functions/Util.getFrameTime.html +5 -5
  93. package/docs/functions/Util.getIntersectFromRelativePosition.html +5 -5
  94. package/docs/functions/Util.getRaycasterFromFivePointer.html +5 -5
  95. package/docs/functions/Util.isNil.html +5 -5
  96. package/docs/functions/Util.nextFrame.html +5 -5
  97. package/docs/functions/Util.notNil.html +5 -5
  98. package/docs/functions/Util.requestAnimationFrameInterval.html +5 -5
  99. package/docs/functions/Util.tweenProgress.html +5 -5
  100. package/docs/functions/pluginFlag.html +10 -5
  101. package/docs/index.html +9 -4
  102. package/docs/interfaces/AddTagConfig.html +6 -6
  103. package/docs/interfaces/CSS3DRenderPluginEventMap.html +11 -11
  104. package/docs/interfaces/CSS3DRenderPluginState.html +8 -8
  105. package/docs/interfaces/CameraMovementPluginExportType.html +7 -7
  106. package/docs/interfaces/EventMap.html +19 -19
  107. package/docs/interfaces/FloorplanBounding.html +8 -8
  108. package/docs/interfaces/FloorplanData.html +10 -10
  109. package/docs/interfaces/FloorplanEntrance.html +11 -11
  110. package/docs/interfaces/FloorplanExtraObject.html +10 -10
  111. package/docs/interfaces/FloorplanExtraObject3D.html +8 -8
  112. package/docs/interfaces/FloorplanFloorData.html +9 -9
  113. package/docs/interfaces/FloorplanImagePosition.html +7 -7
  114. package/docs/interfaces/FloorplanObserver.html +9 -9
  115. package/docs/interfaces/FloorplanOutlineItem.html +9 -9
  116. package/docs/interfaces/FloorplanPosition.html +7 -7
  117. package/docs/interfaces/FloorplanRoomItem.html +13 -13
  118. package/docs/interfaces/FloorplanRoomLabelItem.html +7 -7
  119. package/docs/interfaces/FloorplanServerBounding.html +8 -8
  120. package/docs/interfaces/FloorplanServerComputedData.html +10 -10
  121. package/docs/interfaces/FloorplanServerData.html +7 -7
  122. package/docs/interfaces/FloorplanServerDoorItem.html +10 -10
  123. package/docs/interfaces/FloorplanServerDoorPosition.html +8 -8
  124. package/docs/interfaces/FloorplanServerEntrance.html +11 -11
  125. package/docs/interfaces/FloorplanServerFloorData.html +9 -9
  126. package/docs/interfaces/FloorplanServerImagePosition.html +7 -7
  127. package/docs/interfaces/FloorplanServerObserver.html +9 -9
  128. package/docs/interfaces/FloorplanServerOutlineItem.html +9 -9
  129. package/docs/interfaces/FloorplanServerPosition.html +7 -7
  130. package/docs/interfaces/FloorplanServerRoomItem.html +14 -14
  131. package/docs/interfaces/FloorplanServerRoomLabelItem.html +7 -7
  132. package/docs/interfaces/HelperOffset.html +78 -0
  133. package/docs/interfaces/ItemLabelPluginData.html +6 -6
  134. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +11 -11
  135. package/docs/interfaces/ItemLabelPluginParametersType.html +9 -9
  136. package/docs/interfaces/MinMax.html +7 -7
  137. package/docs/interfaces/ModelChassisCompassPluginData.html +7 -7
  138. package/docs/interfaces/ModelChassisCompassPluginExportType.html +8 -8
  139. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +7 -7
  140. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +8 -8
  141. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +8 -8
  142. package/docs/interfaces/ModelItemLabelPluginData.html +6 -6
  143. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +11 -11
  144. package/docs/interfaces/ModelItemLabelPluginParametersType.html +7 -7
  145. package/docs/interfaces/ModelRoomLabelPluginData.html +6 -6
  146. package/docs/interfaces/ModelTVVideoPluginData.html +9 -9
  147. package/docs/interfaces/ModelTVVideoPluginExportType.html +8 -8
  148. package/docs/interfaces/ModelTVVideoPluginParameterType.html +6 -6
  149. package/docs/interfaces/ModelViewPluginExportType.html +11 -11
  150. package/docs/interfaces/Object3DHelperState.html +8 -8
  151. package/docs/interfaces/ObjectHelperControllers.html +85 -0
  152. package/docs/interfaces/PaintBrushAction.html +12 -12
  153. package/docs/interfaces/PaintBrushConfigs.html +12 -12
  154. package/docs/interfaces/PaintBrushState.html +10 -10
  155. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +10 -10
  156. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +10 -5
  157. package/docs/interfaces/PanoMeasureParameterType.html +12 -12
  158. package/docs/interfaces/PanoMeasurePluginLineJson.html +8 -8
  159. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +7 -7
  160. package/docs/interfaces/PanoMeasurePluginPointJson.html +7 -7
  161. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +8 -8
  162. package/docs/interfaces/PanoRulerPluginExportType.html +10 -10
  163. package/docs/interfaces/PanoRulerPluginOptions.html +7 -7
  164. package/docs/interfaces/PanoRulerPluginParameterType.html +8 -8
  165. package/docs/interfaces/PanoRulerProPluginExportType.html +9 -9
  166. package/docs/interfaces/PanoRulerProPluginOptions.html +7 -7
  167. package/docs/interfaces/PanoRulerProPluginParameterType.html +7 -7
  168. package/docs/interfaces/PanoRulerProPluginState.html +8 -8
  169. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +10 -5
  170. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +10 -5
  171. package/docs/interfaces/PanoSpatialTagPluginData.html +11 -11
  172. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +10 -10
  173. package/docs/interfaces/PanoSpatialTagPluginExportType.html +13 -13
  174. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +10 -10
  175. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +13 -13
  176. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +11 -11
  177. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +10 -10
  178. package/docs/interfaces/Point.html +8 -8
  179. package/docs/interfaces/Room.html +9 -9
  180. package/docs/interfaces/RoomInfo.html +7 -7
  181. package/docs/interfaces/RoomLabel.html +14 -14
  182. package/docs/interfaces/RoomRules.html +10 -5
  183. package/docs/interfaces/Rooms.html +10 -5
  184. package/docs/interfaces/Scissor.html +9 -9
  185. package/docs/interfaces/State.html +8 -8
  186. package/docs/interfaces/TagCache.html +25 -16
  187. package/docs/interfaces/TagConfig.html +11 -11
  188. package/docs/interfaces/TagIconUrl.html +9 -9
  189. package/docs/interfaces/Tags.html +11 -11
  190. package/docs/interfaces/TemporaryState.html +6 -6
  191. package/docs/interfaces/Util.MagnifierParameter.html +11 -11
  192. package/docs/interfaces/Util.MouseGroupParameter.html +8 -8
  193. package/docs/modules/Util.html +5 -5
  194. package/docs/modules.html +14 -4
  195. package/docs/types/ArrayPosition.html +10 -5
  196. package/docs/types/AudioAppearance.html +10 -5
  197. package/docs/types/AudioTagTypeConfigKey.html +10 -5
  198. package/docs/types/CSS3DRenderExportType.html +10 -5
  199. package/docs/types/CSS3DRenderPluginExportType.html +10 -5
  200. package/docs/types/CSS3DRenderPluginParameterType.html +10 -5
  201. package/docs/types/ClassFunctionParameters.html +268 -0
  202. package/docs/types/Color.html +10 -5
  203. package/docs/types/ContentTypeConfigKey.html +10 -5
  204. package/docs/types/ContentTypeConfigKeySplit.html +10 -5
  205. package/docs/types/ContentTypeMap.html +10 -5
  206. package/docs/types/Create3DDomContainerReturnType.html +10 -5
  207. package/docs/types/Create3DElementReturnType.html +10 -5
  208. package/docs/types/CruisePluginExportType.html +10 -5
  209. package/docs/types/Direction-1.html +10 -5
  210. package/docs/types/Direction4.html +10 -5
  211. package/docs/types/FloorplanRuleLabels.html +10 -5
  212. package/docs/types/FloorplanServerRuleLabels.html +10 -5
  213. package/docs/types/GuideLinePluginExportType.html +10 -5
  214. package/docs/types/HelperEventMap.html +174 -21
  215. package/docs/types/LoadTagConfig.html +10 -5
  216. package/docs/types/MapviewFloorplanPluginParameterType.html +10 -5
  217. package/docs/types/MapviewFloorplanPluginReturnType.html +10 -5
  218. package/docs/types/MediaData.html +10 -5
  219. package/docs/types/MediaStore.html +10 -5
  220. package/docs/types/ModelElement.html +266 -0
  221. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +10 -5
  222. package/docs/types/ModelFloorplanPluginParameterType.html +10 -5
  223. package/docs/types/ModelFloorplanPluginReturnType.html +10 -5
  224. package/docs/types/ModelRoomLabelPluginParameters.html +10 -5
  225. package/docs/types/ModelRoomLabelPluginReturnType.html +10 -5
  226. package/docs/types/MoveArgs.html +10 -5
  227. package/docs/types/MoveOpts.html +10 -5
  228. package/docs/types/Object3DHelperEventMap.html +10 -5
  229. package/docs/types/ObjectFit.html +10 -5
  230. package/docs/types/PaintBrushEventMap.html +10 -5
  231. package/docs/types/PanoCompassPluginData.html +10 -5
  232. package/docs/types/PanoCompassPluginExportType.html +10 -5
  233. package/docs/types/PanoCompassPluginParameterType.html +10 -5
  234. package/docs/types/PanoFloorplanRadarPluginParameterType.html +10 -5
  235. package/docs/types/PanoFloorplanRadarPluginReturnType.html +10 -5
  236. package/docs/types/PanoIndex.html +10 -5
  237. package/docs/types/PanoMeasurePluginEvent.html +10 -5
  238. package/docs/types/PanoMeasureReturnType.html +10 -5
  239. package/docs/types/PanoSpatialTagPluginId.html +10 -5
  240. package/docs/types/PanoTagPluginExportInterface.html +10 -5
  241. package/docs/types/PanoTagPluginParamsInterface.html +10 -5
  242. package/docs/types/PlaneTag.html +10 -5
  243. package/docs/types/PlaneTagElement.html +10 -5
  244. package/docs/types/Point2DElement.html +10 -5
  245. package/docs/types/Point2DTag.html +10 -5
  246. package/docs/types/Point3DElement.html +10 -5
  247. package/docs/types/Point3DTag.html +10 -5
  248. package/docs/types/PointTag.html +10 -5
  249. package/docs/types/PointTagElement.html +10 -5
  250. package/docs/types/Position.html +10 -5
  251. package/docs/types/RotateArgs.html +10 -5
  252. package/docs/types/RotateOpts.html +10 -5
  253. package/docs/types/RuleLabelsKey.html +10 -5
  254. package/docs/types/RuleLabelsValue.html +10 -5
  255. package/docs/types/StickType.html +11 -6
  256. package/docs/types/Tag.html +11 -6
  257. package/docs/types/Tag2D.html +10 -5
  258. package/docs/types/Tag3D.html +10 -5
  259. package/docs/types/TagContentType.html +11 -6
  260. package/docs/types/TagDimensionType.html +10 -5
  261. package/docs/types/TagElement.html +11 -6
  262. package/docs/types/TagEvents.html +10 -5
  263. package/docs/types/TagGLTFObject.html +261 -0
  264. package/docs/types/TagHooks.html +10 -5
  265. package/docs/types/TagIconSize.html +10 -5
  266. package/docs/types/TagId.html +10 -5
  267. package/docs/types/TagPointType.html +10 -5
  268. package/docs/types/TopviewFloorplanPluginParameterType.html +10 -5
  269. package/docs/types/TopviewFloorplanPluginReturnType.html +10 -5
  270. package/docs/types/WorkCode.html +10 -5
  271. package/docs/variables/FLOOR_TYPE_MAP.html +10 -5
  272. package/docs/variables/PLUGIN.html +10 -5
  273. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +10 -5
  274. package/docs/variables/ROOM_TYPE_MAP.html +10 -5
  275. package/docs/variables/VERSION.html +10 -5
  276. package/docs/variables/itemLabelPluginServerParams.html +10 -5
  277. package/docs/variables/modelItemLabelPluginServerParams.html +10 -5
  278. package/docs/variables/modelRoomLabelPluginServerParams.html +10 -5
  279. package/libs/CSS3DRenderPlugin/CSS3DRender.js +93 -89
  280. package/libs/CSS3DRenderPlugin/Controller.d.ts +1 -1
  281. package/libs/CSS3DRenderPlugin/utils/generateBehindFiveElement.js +15 -14
  282. package/libs/Object3DHelperPlugin/Controller.d.ts +25 -10
  283. package/libs/Object3DHelperPlugin/Controller.js +117 -97
  284. package/libs/Object3DHelperPlugin/FiveControllerWrapper.d.ts +6 -8
  285. package/libs/Object3DHelperPlugin/FiveControllerWrapper.js +29 -22
  286. package/libs/Object3DHelperPlugin/index.js +16 -11
  287. package/libs/Object3DHelperPlugin/typings.d.ts +14 -0
  288. package/libs/PanoTagPlugin/Components/Common/Media.js +3 -2
  289. package/libs/PanoTagPlugin/Components/Common/Text/FlyMText.js +3 -2
  290. package/libs/PanoTagPlugin/Components/Common/Text/FlyText.js +3 -2
  291. package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioPlaneTag.js +3 -2
  292. package/libs/PanoTagPlugin/Components/Tag/AudioTag/AudioTag.js +3 -2
  293. package/libs/PanoTagPlugin/Components/Tag/AudioTag/index.js +12 -11
  294. package/libs/PanoTagPlugin/Components/Tag/CustomTag.js +33 -33
  295. package/libs/PanoTagPlugin/Components/Tag/ImageTextTag.js +3 -2
  296. package/libs/PanoTagPlugin/Components/Tag/MediaPlane.js +12 -11
  297. package/libs/PanoTagPlugin/Components/Tag/TextTag/TextTag.js +26 -25
  298. package/libs/PanoTagPlugin/Components/Tag/TextTag/index.js +29 -28
  299. package/libs/PanoTagPlugin/Components/Tag/index.js +126 -119
  300. package/libs/PanoTagPlugin/Components/TagContainer.js +4 -2
  301. package/libs/PanoTagPlugin/Components/TagItem.js +4 -2
  302. package/libs/PanoTagPlugin/controller/TagCacheController.d.ts +1 -0
  303. package/libs/PanoTagPlugin/controller/TagCacheController.js +14 -12
  304. package/libs/PanoTagPlugin/controller/TagComputer.d.ts +23 -7
  305. package/libs/PanoTagPlugin/controller/TagComputer.js +244 -174
  306. package/libs/PanoTagPlugin/controller/index.d.ts +33 -6
  307. package/libs/PanoTagPlugin/controller/index.js +174 -88
  308. package/libs/PanoTagPlugin/index.js +15 -12
  309. package/libs/PanoTagPlugin/tag.config.js +9 -0
  310. package/libs/PanoTagPlugin/typings/controller.d.ts +17 -2
  311. package/libs/PanoTagPlugin/typings/controller.js +1 -1
  312. package/libs/PanoTagPlugin/typings/index.js +6 -5
  313. package/libs/PanoTagPlugin/typings/tag/Tag.d.ts +5 -2
  314. package/libs/PanoTagPlugin/typings/tag/TagConfig.d.ts +2 -1
  315. package/libs/PanoTagPlugin/typings/tag/TagData.d.ts +19 -3
  316. package/libs/PanoTagPlugin/typings/tag/TagData.js +1 -1
  317. package/libs/PanoTagPlugin/typings/tag/Utils.d.ts +1 -1
  318. package/libs/PanoTagPlugin/utils/addDebugPoints.js +5 -4
  319. package/libs/PanoTagPlugin/utils/color.js +5 -5
  320. package/libs/PanoTagPlugin/utils/index.js +37 -34
  321. package/libs/PanoTagPlugin/utils/planeNormal.js +3 -2
  322. package/libs/PanoTagPlugin/utils/tag/index.d.ts +2 -0
  323. package/libs/PanoTagPlugin/utils/tag/index.js +11 -0
  324. package/libs/PanoTagPlugin/utils/tag/tagCheck.d.ts +2 -1
  325. package/libs/PanoTagPlugin/utils/tag/tagCheck.js +6 -2
  326. package/libs/PanoTagPlugin/utils/tagPosition.d.ts +3 -1
  327. package/libs/PanoTagPlugin/utils/tagPosition.js +20 -8
  328. package/libs/index.js +111 -104
  329. package/libs/shared-utils/Object3DHelper/Base/BaseController.d.ts +41 -15
  330. package/libs/shared-utils/Object3DHelper/Base/BaseController.js +112 -90
  331. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.d.ts +27 -20
  332. package/libs/shared-utils/Object3DHelper/Base/BaseHelper.js +55 -22
  333. package/libs/shared-utils/Object3DHelper/Controller/BoundingBoxController.d.ts +7 -0
  334. package/libs/shared-utils/Object3DHelper/Controller/BoundingBoxController.js +14 -0
  335. package/libs/shared-utils/Object3DHelper/Controller/CSS3DScaleController.d.ts +1 -0
  336. package/libs/shared-utils/Object3DHelper/Controller/CSS3DScaleController.js +14 -10
  337. package/libs/shared-utils/Object3DHelper/Controller/MoveController.d.ts +24 -0
  338. package/libs/shared-utils/Object3DHelper/Controller/MoveController.js +80 -37
  339. package/libs/shared-utils/Object3DHelper/Controller/RectangleScaleController.d.ts +6 -1
  340. package/libs/shared-utils/Object3DHelper/Controller/RectangleScaleController.js +44 -41
  341. package/libs/shared-utils/Object3DHelper/Controller/RotateController.d.ts +14 -0
  342. package/libs/shared-utils/Object3DHelper/Controller/RotateController.js +95 -67
  343. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.d.ts +12 -0
  344. package/libs/shared-utils/Object3DHelper/Controller/ScaleController.js +21 -0
  345. package/libs/shared-utils/Object3DHelper/Helper/{OutlineHelper.d.ts → BoundingBoxHelper.d.ts} +3 -2
  346. package/libs/shared-utils/Object3DHelper/Helper/BoundingBoxHelper.js +87 -0
  347. package/{dist/shared-utils/Object3DHelper/Helper/RectangleScaleHelper.d.ts → libs/shared-utils/Object3DHelper/Helper/CSS3DScaleHelper.d.ts} +3 -8
  348. package/libs/shared-utils/Object3DHelper/Helper/{RectangleScaleHelper.js → CSS3DScaleHelper.js} +5 -7
  349. package/libs/shared-utils/Object3DHelper/Helper/MoveHelper.js +7 -9
  350. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.d.ts +14 -11
  351. package/libs/shared-utils/Object3DHelper/Helper/RotateHelper.js +72 -66
  352. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.d.ts +5 -0
  353. package/libs/shared-utils/Object3DHelper/Helper/ScaleHelper.js +9 -0
  354. package/libs/shared-utils/Object3DHelper/Helper/index.d.ts +2 -2
  355. package/libs/shared-utils/Object3DHelper/Helper/index.js +0 -2
  356. package/libs/shared-utils/Object3DHelper/index.d.ts +4 -27
  357. package/libs/shared-utils/Object3DHelper/index.js +48 -96
  358. package/libs/shared-utils/Object3DHelper/typings/Hooks.d.ts +22 -12
  359. package/libs/shared-utils/Object3DHelper/typings/index.d.ts +22 -0
  360. package/libs/shared-utils/Object3DHelper/typings/index.js +2 -1
  361. package/libs/shared-utils/Object3DHelper/utils/boundingBox.d.ts +2 -0
  362. package/libs/shared-utils/Object3DHelper/utils/boundingBox.js +24 -0
  363. package/libs/shared-utils/Object3DHelper/utils/threex/domevents/index.js +2 -2
  364. package/libs/shared-utils/three/GLTFLoader.d.ts +2 -0
  365. package/libs/shared-utils/three/GLTFLoader.js +16 -0
  366. package/libs/typings/math.type.js +1 -0
  367. package/package.json +4 -4
  368. package/dist/shared-utils/Object3DHelper/utils/getPoint.d.ts +0 -3
  369. package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.d.ts +0 -4
  370. package/libs/PanoTagPlugin/mocks/v1/mock-80P6A03eQRQKY3oqLj.js +0 -6
  371. package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.d.ts +0 -93
  372. package/libs/PanoTagPlugin/mocks/v1/mock-80QG2vMPboNv5DWrom.js +0 -5622
  373. package/libs/PanoTagPlugin/mocks/v1/mock-test3-realsee-cn-4zr0A5.js +0 -1325
  374. package/libs/PanoTagPlugin/mocks/v1/mock1.d.ts +0 -173
  375. package/libs/PanoTagPlugin/mocks/v1/mock1.js +0 -122
  376. package/libs/PanoTagPlugin/mocks/v1/mock2.d.ts +0 -233
  377. package/libs/PanoTagPlugin/mocks/v1/mock2.js +0 -296
  378. package/libs/PanoTagPlugin/mocks/v1/mock3.d.ts +0 -22
  379. package/libs/PanoTagPlugin/mocks/v1/mock3.js +0 -32
  380. package/libs/PanoTagPlugin/mocks/v1/mock4.d.ts +0 -56
  381. package/libs/PanoTagPlugin/mocks/v1/mock4.js +0 -60
  382. package/libs/PanoTagPlugin/mocks/v1/mock5.d.ts +0 -13
  383. package/libs/PanoTagPlugin/mocks/v1/mock5.js +0 -17
  384. package/libs/PanoTagPlugin/mocks/v1/mock6.d.ts +0 -16
  385. package/libs/PanoTagPlugin/mocks/v1/mock6.js +0 -27
  386. package/libs/PanoTagPlugin/mocks/v1/mock7.d.ts +0 -22
  387. package/libs/PanoTagPlugin/mocks/v1/mock7.js +0 -228
  388. package/libs/shared-utils/Object3DHelper/Helper/OutlineHelper.js +0 -2
  389. package/libs/shared-utils/Object3DHelper/utils/getPoint.d.ts +0 -3
  390. package/libs/shared-utils/Object3DHelper/utils/getPoint.js +0 -1
@@ -1,7 +1,8 @@
1
- import type { Tag, PartialDeep, TagId, Tags, State, AddTagConfig, LoadTagConfig } from '../typings';
1
+ import type { Tag, PartialDeep, TagId, Tags, TagElement, State, AddTagConfig, LoadTagConfig } from '../typings';
2
2
  import type { TagContentType } from '..';
3
3
  import type { ArrayPosition } from '../typings';
4
4
  import { Five } from '@realsee/five';
5
+ import { Object3D } from 'three';
5
6
  import { TagComputer } from './TagComputer';
6
7
  export declare const pluginFlag: (name: string) => string;
7
8
  declare class PanoTagPluginController extends TagComputer {
@@ -23,8 +24,12 @@ declare class PanoTagPluginController extends TagComputer {
23
24
  /** 临时状态 */
24
25
  private temporaryState;
25
26
  private mediaStore;
27
+ private group;
28
+ private gltfObjectGroup;
26
29
  private isIOSWX;
27
30
  private store;
31
+ /** 维护一个可用模型表,用于快速删除不应该在场景中的模型 */
32
+ private enabledModelTagSet;
28
33
  constructor(five: Five, params?: {
29
34
  debug?: boolean;
30
35
  config?: {
@@ -35,11 +40,11 @@ declare class PanoTagPluginController extends TagComputer {
35
40
  /**
36
41
  * @description: 加载数据
37
42
  */
38
- load(data: Tags, config?: LoadTagConfig): Promise<boolean>;
43
+ load(data: Tags, config?: LoadTagConfig): Promise<void>;
39
44
  /**
40
45
  * @description: 添加标签
41
46
  */
42
- addTag(tag: Tag | Tag[], config?: AddTagConfig): Promise<boolean>;
47
+ addTag(tag: Tag<any, any> | Tag<any, any>[], config?: AddTagConfig): Promise<void>;
43
48
  /**
44
49
  * @description: 改变配置
45
50
  */
@@ -89,15 +94,21 @@ declare class PanoTagPluginController extends TagComputer {
89
94
  /**
90
95
  * @description: 改变tag任意属性
91
96
  */
92
- changeTagById<C extends TagContentType = any>(id: TagId, tag: PartialDeep<{
93
- [P in keyof Pick<Tag<C>, 'enabled' | 'style' | 'stickType' | 'contentType' | 'data' | 'normal' | 'config'>]: Tag[P];
94
- }>, deepMerge?: boolean): void;
97
+ changeTagById<C extends TagContentType = any>(id: TagId, tag: PartialDeep<Tag<C>>, deepMerge?: boolean): void;
95
98
  /**
96
99
  * @description: 销毁tag
97
100
  */
98
101
  destroyTagById(id: TagId | TagId[]): void;
99
102
  /** 暂停当前标签内进行的所有多媒体 */
100
103
  pauseCurrentMedia(): void;
104
+ /** 更改 tag 模型 */
105
+ changeTagModel: (tag: TagElement<any, 'Model'>, data: PartialDeep<Tag<'MediaModel'>['data']>) => Promise<void>;
106
+ /** 更新标签中多媒体面片的位置
107
+ * @param tag 标签
108
+ * @param model 模型
109
+ * @param scale css3DObject 原始缩放比例
110
+ */
111
+ updateTagCss3DObjectMatrix<S extends 'Model' | 'Plane' = 'Model'>(tag: TagElement<any, S>, model: Object3D): void;
101
112
  /**
102
113
  * @description: 设置 visible 和 unfolded
103
114
  */
@@ -118,6 +129,7 @@ declare class PanoTagPluginController extends TagComputer {
118
129
  * @description: 切换模式处理函数
119
130
  */
120
131
  private handleFiveModeChange;
132
+ private handleFiveInitAnimationEnded;
121
133
  private handleFiveWantsMoveToPano;
122
134
  /**
123
135
  * @description: 走点/切换模型后显示
@@ -136,6 +148,8 @@ declare class PanoTagPluginController extends TagComputer {
136
148
  private handleFiveCameraUpdateDebounce;
137
149
  private handleFiveCameraUpdate;
138
150
  private handleFivePanoArrived;
151
+ /** 楼层切换时,需要更新标签可见性 */
152
+ private handleFiveModelShownFloorChange;
139
153
  private setUnfoldedByCamera;
140
154
  /**
141
155
  * @description: 渲染单个点的标签
@@ -145,11 +159,24 @@ declare class PanoTagPluginController extends TagComputer {
145
159
  * @description: 渲染3D贴片
146
160
  */
147
161
  private updateRenderPlaneTag;
162
+ /** 更新所有模型标签
163
+ *
164
+ * 1. 移除不应该在场景中的模型
165
+ * 2. 更新模型的可见性
166
+ *
167
+ * FIXME: 有性能问题,但是之前的逻辑都是这么写,暂时先这样吧
168
+ */
169
+ private updateRenderModelTag;
148
170
  private disposeAllCSS3DContainer;
149
171
  /**
150
172
  * @description: 检查并销毁不用的3D贴片
151
173
  */
152
174
  private checkPanelTag;
175
+ /** 添加模型标签 */
176
+ private addMediaModelTag;
177
+ /** 加载外部模型 */
178
+ private loadModel;
179
+ private changeTagMode;
153
180
  }
154
181
  export default PanoTagPluginController;
155
182
  export { PanoTagPluginController };
@@ -1,17 +1,17 @@
1
- var P = Object.defineProperty, w = Object.defineProperties;
2
- var E = Object.getOwnPropertyDescriptors;
3
- var T = Object.getOwnPropertySymbols;
4
- var R = Object.prototype.hasOwnProperty, k = Object.prototype.propertyIsEnumerable;
5
- var u = (h, a, e) => a in h ? P(h, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[a] = e, p = (h, a) => {
1
+ var x = Object.defineProperty, G = Object.defineProperties;
2
+ var V = Object.getOwnPropertyDescriptors;
3
+ var R = Object.getOwnPropertySymbols;
4
+ var N = Object.prototype.hasOwnProperty, W = Object.prototype.propertyIsEnumerable;
5
+ var S = (h, a, e) => a in h ? x(h, a, { enumerable: !0, configurable: !0, writable: !0, value: e }) : h[a] = e, p = (h, a) => {
6
6
  for (var e in a || (a = {}))
7
- R.call(a, e) && u(h, e, a[e]);
8
- if (T)
9
- for (var e of T(a))
10
- k.call(a, e) && u(h, e, a[e]);
7
+ N.call(a, e) && S(h, e, a[e]);
8
+ if (R)
9
+ for (var e of R(a))
10
+ W.call(a, e) && S(h, e, a[e]);
11
11
  return h;
12
- }, f = (h, a) => w(h, E(a));
13
- var d = (h, a, e) => (u(h, typeof a != "symbol" ? a + "" : a, e), e);
14
- var m = (h, a, e) => new Promise((t, i) => {
12
+ }, f = (h, a) => G(h, V(a));
13
+ var d = (h, a, e) => (S(h, typeof a != "symbol" ? a + "" : a, e), e);
14
+ var c = (h, a, e) => new Promise((t, i) => {
15
15
  var s = (r) => {
16
16
  try {
17
17
  n(e.next(r));
@@ -27,24 +27,28 @@ var m = (h, a, e) => new Promise((t, i) => {
27
27
  }, n = (r) => r.done ? t(r.value) : Promise.resolve(r.value).then(s, o);
28
28
  n((e = e.apply(h, a)).next());
29
29
  });
30
- import { Subscribe as F } from "@realsee/five";
31
- import { Quaternion as U } from "three";
32
- import c from "object-assign-deep";
33
- import { writable as L } from "../../vendor/svelte/store/index.js";
34
- import O from "../Components/TagContainer.js";
35
- import I from "../Components/Tag/index.js";
36
- import { arrayPositionToVector3 as g } from "../../CSS3DRenderPlugin/utils/positionToVector3.js";
37
- import { addDebugPoints as B } from "../utils/addDebugPoints.js";
38
- import { planeNormal as M } from "../utils/planeNormal.js";
39
- import { waitFiveModelLoaded as N } from "../utils/actionAfterFiveModelLoad.js";
40
- import { normalPositionToPositions as V } from "../utils/normalPositionToPositions.js";
41
- import { debounce as C } from "../utils/debounce.js";
42
- import { throttle as z } from "../utils/throttle.js";
43
- import { resizeObserver as D } from "../utils/resizeObserver.js";
44
- import { TagComputer as W } from "./TagComputer.js";
45
- import { CSS3DRenderPlugin as _ } from "../../CSS3DRenderPlugin/index.js";
46
- import $ from "../utils/tag/format.js";
47
- import { generateBlankAudio as A, AudioNamespace as S } from "../../shared-utils/audio.js";
30
+ import { Subscribe as z } from "@realsee/five";
31
+ import { Group as E, Vector3 as T, Matrix4 as C, Quaternion as _ } from "three";
32
+ import u from "object-assign-deep";
33
+ import { writable as $ } from "../../vendor/svelte/store/index.js";
34
+ import q from "../Components/TagContainer.js";
35
+ import H from "../Components/Tag/index.js";
36
+ import { arrayPositionToVector3 as v } from "../../CSS3DRenderPlugin/utils/positionToVector3.js";
37
+ import { addDebugPoints as J } from "../utils/addDebugPoints.js";
38
+ import { planeNormal as O } from "../utils/planeNormal.js";
39
+ import "@realsee/five/gltf-loader";
40
+ import { isMediaModelTag as m } from "../utils/tag/tagCheck.js";
41
+ import { waitFiveModelLoaded as Q } from "../utils/actionAfterFiveModelLoad.js";
42
+ import { normalPositionToPositions as X } from "../utils/normalPositionToPositions.js";
43
+ import { debounce as k } from "../utils/debounce.js";
44
+ import { throttle as K } from "../utils/throttle.js";
45
+ import { resizeObserver as I } from "../utils/resizeObserver.js";
46
+ import { TagComputer as Y } from "./TagComputer.js";
47
+ import { CSS3DRenderPlugin as Z } from "../../CSS3DRenderPlugin/index.js";
48
+ import ee from "../utils/tag/format.js";
49
+ import { generateBlankAudio as L, AudioNamespace as U } from "../../shared-utils/audio.js";
50
+ import { loadGLTF as te } from "../../shared-utils/three/GLTFLoader.js";
51
+ import { getMediaModelPlanPositions as ie } from "../utils/tag/index.js";
48
52
  import "../../vendor/svelte/internal/index.js";
49
53
  import "../Components/TagItem.js";
50
54
  import "../utils/noTypecheck.js";
@@ -114,27 +118,28 @@ import "../Components/Tag/MediaPlane.js";
114
118
  import "../Components/Tag/LinkTag.js";
115
119
  import "../Components/Tag/CustomTag.js";
116
120
  import "../tag.config.js";
117
- import "../utils/tag/tagCheck.js";
118
121
  import "../utils/tagPosition.js";
119
122
  import "../utils/checkRange.js";
120
123
  import "./TagCacheController.js";
121
124
  import "../../base/BasePlugin.js";
122
125
  import "../../CSS3DRenderPlugin/Controller.js";
123
126
  import "../../CSS3DRenderPlugin/utils/waitFiveModelLoaded.js";
124
- const y = "2.0.10", v = `DnalogelPlugin-PanoTagPlugin@${y}`, G = !1, Lt = (h) => `${v}--${h}`;
125
- class Ot extends W {
127
+ const j = "2.0.10", A = `DnalogelPlugin-PanoTagPlugin@${j}`, se = !1, Jt = (h) => `${A}--${h}`;
128
+ class Qt extends Y {
126
129
  constructor(e, t) {
127
130
  super(e);
128
- d(this, "version", y);
131
+ d(this, "version", j);
129
132
  d(this, "state", { enabled: !0, visible: !0 });
130
133
  d(this, "params");
131
134
  d(this, "debug");
132
135
  d(this, "css3DRenderPlugin");
133
136
  d(this, "TagContainerSvelte");
134
137
  d(this, "temporaryState", { visible: !0 });
135
- d(this, "mediaStore", L({
138
+ d(this, "mediaStore", $({
136
139
  currentMediaElement: null
137
140
  }));
141
+ d(this, "group", new E());
142
+ d(this, "gltfObjectGroup", new E());
138
143
  d(this, "isIOSWX", navigator.userAgent.toLowerCase().indexOf("micromessenger") !== -1 && navigator.userAgent.toLowerCase().indexOf("iphone") !== -1);
139
144
  d(this, "store", {
140
145
  disposers: [],
@@ -142,54 +147,85 @@ class Ot extends W {
142
147
  resizeObserverDisposerAdding: !1,
143
148
  css3DRenderDisposer: /* @__PURE__ */ new Map()
144
149
  });
150
+ d(this, "enabledModelTagSet", /* @__PURE__ */ new Set());
151
+ d(this, "changeTagModel", (e, t) => c(this, null, function* () {
152
+ e.data = u({}, e.data, t), yield this.loadModel(e), this.updateRenderAllTags();
153
+ }));
145
154
  d(this, "disposedErrorLog", () => {
146
- console.error(`${v} is disposed`);
155
+ console.error(`${A} is disposed`);
156
+ });
157
+ d(this, "handleFiveInitAnimationEnded", () => {
158
+ const e = this.five.getCurrentState().mode;
159
+ this.tags.forEach((t) => {
160
+ t.temporaryState = f(p({}, t.temporaryState), { visible: this.getVisibelByFiveMode(t, e) }), m(t) && e === "Panorama" && this.changeTagMode(t, "front");
161
+ }), this.updateRenderAllTags(), this.updateRenderAllTags();
147
162
  });
148
- this.params = p({ debug: !1, config: this.config }, t), this.debug = this.params.debug, this.config = this.params.config, A(1, { namespace: S.GetAudioDuration }), A(1, { namespace: S.PlayAudio }), Object.assign(window, { [`__PANOTAGPLUGIN_DEBUG_${Date.now()}__`]: this }), Object.assign(window, { __PANOTAGPLUGIN_DEBUG__: this });
163
+ d(this, "handleFiveModelShownFloorChange", () => {
164
+ this.tags.forEach((e) => {
165
+ !m(e) || (e.state.visible = this.checkFloorIndex(e));
166
+ }), this.updateRenderAllTags();
167
+ });
168
+ d(this, "loadModel", (e) => c(this, null, function* () {
169
+ var r;
170
+ const t = e.data.modelUrl;
171
+ if (console.log("\u{1F436} ==> url:", t), !t)
172
+ return;
173
+ const i = te(t).then((l) => Object.assign(l.scene, { customID: e.id, isTagModel: !0 }));
174
+ e.model = { promise: i };
175
+ const s = yield i;
176
+ if (((r = e.model) == null ? void 0 : r.promise) !== i || (e.model.object = s, !this.tags.includes(e)))
177
+ return;
178
+ s.visible = e.state.visible, new C().fromArray(e.matrix).decompose(s.position, s.quaternion, s.scale), this.checkFloorIndex(e) || (s.visible = !1);
179
+ const n = this.gltfObjectGroup.children.find((l) => l.customID === e.id);
180
+ return n && this.gltfObjectGroup.remove(n), this.gltfObjectGroup.add(s), this.updateTagCss3DObjectMatrix(e, s), s;
181
+ }));
182
+ this.group.name = "PanoTagPluginModelGroup", this.gltfObjectGroup.name = "PanoTagPluginGLTFObjectGroup", this.group.add(this.gltfObjectGroup), this.params = p({ debug: !1, config: this.config }, t), this.debug = this.params.debug, this.config = this.params.config, L(1, { namespace: U.GetAudioDuration }), L(1, { namespace: U.PlayAudio }), Object.assign(window, { [`__PANOTAGPLUGIN_DEBUG_${Date.now()}__`]: this }), Object.assign(window, { __PANOTAGPLUGIN_DEBUG__: this }), this.state.enabled && this.five.scene.add(this.group);
149
183
  }
150
184
  load(e, t) {
151
- return m(this, null, function* () {
152
- var i, s;
153
- if (this.clearTags(), console.log(v, " load:", { data: e }), this.config = c({}, this.config, {
154
- globalConfig: (i = e.globalConfig) != null ? i : {},
155
- contentTypeConfig: (s = e.contentTypeConfig) != null ? s : {}
156
- }), this.debug)
185
+ return c(this, null, function* () {
186
+ var s, o;
187
+ this.clearTags(), console.log(A, " load:", { data: JSON.parse(JSON.stringify(e)) }), this.config = u({}, this.config, {
188
+ globalConfig: (s = e.globalConfig) != null ? s : {},
189
+ contentTypeConfig: (o = e.contentTypeConfig) != null ? o : {}
190
+ });
191
+ const i = yield this.addTag(e.tagList, t);
192
+ if (this.debug)
157
193
  try {
158
- B(this.five, this.tags);
159
- } catch (o) {
160
- console.error(o);
194
+ J(this.five, this.tags);
195
+ } catch (n) {
196
+ console.error(n);
161
197
  }
162
- return this.addTag(e.tagList, t);
198
+ return i;
163
199
  });
164
200
  }
165
201
  addTag(e, t) {
166
- return m(this, null, function* () {
202
+ return c(this, null, function* () {
167
203
  const s = (Array.isArray(e) ? e : [e]).map((o) => {
168
- const n = this.getTagConfig(o);
169
- return f(p({}, o), {
170
- state: p({ visible: void 0, unfolded: G }, n.initialState),
171
- hooks: new F(),
204
+ const n = this.getTagConfig(o), r = f(p({}, o), {
205
+ state: p({ visible: void 0, unfolded: se }, n.initialState),
206
+ hooks: new z(),
172
207
  clickable: n.clickable,
173
208
  mergedConfig: n
174
209
  });
210
+ return m(o) && (r.temporaryState = { visible: !1 }), r;
175
211
  }).filter((o) => o.position);
176
- return s.forEach($), this.tags.push(...s), N(this.five).then(() => {
212
+ return s.forEach(ee), this.tags.push(...s), Q(this.five).then(() => {
177
213
  var o, n, r;
178
- return this.store.eventListenerDisposer && ((n = (o = this.store).eventListenerDisposer) == null || n.call(o)), this.state.enabled && (this.store.eventListenerDisposer = this.addEventListener()), this.addResizeListener(), this.checkPanelTag(), this.setVisibleAndUnfolded({ withAnimation: (r = t == null ? void 0 : t.withAnimation) != null ? r : !0 }).then(() => this.updateRenderAllTags()), this.updateRenderAllTags(), !0;
214
+ return this.store.eventListenerDisposer && ((n = (o = this.store).eventListenerDisposer) == null || n.call(o)), this.state.enabled && (this.store.eventListenerDisposer = this.addEventListener()), this.addResizeListener(), this.checkPanelTag(), this.setVisibleAndUnfolded({ withAnimation: (r = t == null ? void 0 : t.withAnimation) != null ? r : !0 }).then(() => this.updateRenderAllTags()), this.updateRenderAllTags(), console.log("\u{1F436} ==> waitFiveModelLoaded:"), this.addMediaModelTag(s);
179
215
  });
180
216
  });
181
217
  }
182
218
  changeConfig(e, t = !0) {
183
- t ? this.config = c({}, this.config, e) : this.config = e, this.updateTagConfig({ force: !0 }), this.updateRenderAllTags();
219
+ t ? this.config = u({}, this.config, e) : this.config = e, this.updateTagConfig({ force: !0 }), this.updateRenderAllTags();
184
220
  }
185
221
  changeGlobalConfig(e, t = !0) {
186
- t ? this.config.globalConfig = c({}, this.config.globalConfig, e) : this.config.globalConfig = e, this.updateTagConfig({ force: !0 }), this.updateRenderAllTags();
222
+ t ? this.config.globalConfig = u({}, this.config.globalConfig, e) : this.config.globalConfig = e, this.updateTagConfig({ force: !0 }), this.updateRenderAllTags();
187
223
  }
188
224
  clearTags() {
189
- this.tags = [], this.clearCache(), this.disposeAllCSS3DContainer(), this.updateRenderAllTags();
225
+ this.tags = [], this.enabledModelTagSet.clear(), this.clearCache(), this.disposeAllCSS3DContainer(), this.updateRenderAllTags();
190
226
  }
191
227
  show(e) {
192
- return m(this, null, function* () {
228
+ return c(this, null, function* () {
193
229
  const { userAction: t = !0, withAnimation: i = !1 } = e != null ? e : {};
194
230
  if (this.store.disposed)
195
231
  return this.disposedErrorLog();
@@ -197,7 +233,7 @@ class Ot extends W {
197
233
  });
198
234
  }
199
235
  hide(e) {
200
- return m(this, null, function* () {
236
+ return c(this, null, function* () {
201
237
  const { userAction: t = !0, withAnimation: i = !1 } = e != null ? e : {};
202
238
  if (this.store.disposed)
203
239
  return this.disposedErrorLog();
@@ -208,20 +244,20 @@ class Ot extends W {
208
244
  const { userAction: t = !0 } = e != null ? e : {};
209
245
  if (this.store.disposed)
210
246
  return this.disposedErrorLog();
211
- this.setState({ enabled: !0 }, { userAction: t }), this.hooks.emit("enable", { userAction: t });
247
+ this.five.scene.children.includes(this.group) || this.five.scene.add(this.group), this.setState({ enabled: !0 }, { userAction: t }), this.hooks.emit("enable", { userAction: t }), this.five.needsRender = !0;
212
248
  }
213
249
  disable(e) {
214
250
  const { userAction: t = !0 } = e != null ? e : {};
215
251
  if (this.store.disposed)
216
252
  return this.disposedErrorLog();
217
- this.setState({ enabled: !1 }, { userAction: t }), this.hooks.emit("disable", { userAction: t });
253
+ this.setState({ enabled: !1 }, { userAction: t }), this.five.scene.remove(this.group), this.hooks.emit("disable", { userAction: t }), this.five.needsRender = !0;
218
254
  }
219
255
  dispose() {
220
256
  var e, t, i, s, o, n;
221
257
  this.pauseCurrentMedia(), this.disposeAllCSS3DContainer(), (e = this.TagContainerSvelte) == null || e.$destroy(), this.filter3DTag().forEach((r) => {
222
258
  var l;
223
259
  return (l = r.tag3DContentSvelte) == null ? void 0 : l.svelteApp.$destroy();
224
- }), this.tags = [], (t = this.store.disposers) == null || t.forEach((r) => r == null ? void 0 : r()), this.store.disposers = [], this.store.disposed = !0, (s = (i = this.store).eventListenerDisposer) == null || s.call(i), this.store.eventListenerDisposer = void 0, (n = (o = this.store).resizeObserverDisposer) == null || n.call(o), this.store.resizeObserverDisposer = void 0, this.store.resizeObserverDisposerAdding = !1, this.clearCache(), this.hooks.emit("dispose");
260
+ }), this.tags = [], (t = this.store.disposers) == null || t.forEach((r) => r == null ? void 0 : r()), this.store.disposers = [], this.store.disposed = !0, (s = (i = this.store).eventListenerDisposer) == null || s.call(i), this.store.eventListenerDisposer = void 0, (n = (o = this.store).resizeObserverDisposer) == null || n.call(o), this.store.resizeObserverDisposer = void 0, this.store.resizeObserverDisposerAdding = !1, this.five.scene.remove(this.group), this.group.remove(...this.group.children), this.gltfObjectGroup.remove(...this.gltfObjectGroup.children), this.clearCache(), this.five.needsRender = !0, this.hooks.emit("dispose");
225
261
  }
226
262
  setState(e, t) {
227
263
  if (this.store.disposed)
@@ -240,18 +276,18 @@ class Ot extends W {
240
276
  }
241
277
  changeTagNormalById(e, t) {
242
278
  const i = this.getTagById(e);
243
- !i || !i.tag3DContentSvelte || (i.tag3DContentSvelte.currentNormal = g(t), this.updateRenderPlaneTag());
279
+ !i || !i.tag3DContentSvelte || (i.tag3DContentSvelte.currentNormal = v(t), this.updateRenderPlaneTag());
244
280
  }
245
281
  changeDataById(e, t, i = !0) {
246
282
  const s = this.getTagById(e);
247
- !s || (i ? s.data = c({}, s.data, t) : s.data = p(p({}, s.data), t), this.checkPanelTag(), this.updateRenderAllTags());
283
+ !s || (i ? s.data = u({}, s.data, t) : s.data = p(p({}, s.data), t), this.checkPanelTag(), this.updateRenderAllTags());
248
284
  }
249
285
  changeStickTypeById(e, t, i = !0) {
250
286
  this.changeTagById(e, t, i);
251
287
  }
252
288
  changeTagById(e, t, i = !0) {
253
289
  const s = this.getTagById(e);
254
- !t || (i ? c(s, t) : Object.assign(s, t), (s == null ? void 0 : s.tag3DContentSvelte) && (t == null ? void 0 : t.normal) && (s.tag3DContentSvelte.currentNormal = g(t.normal)), this.updateRenderAllTags(), this.checkPanelTag());
290
+ !t || (i ? u(s, t) : Object.assign(s, t), (s == null ? void 0 : s.tag3DContentSvelte) && (t == null ? void 0 : t.normal) && (s.tag3DContentSvelte.currentNormal = v(t.normal)), this.updateRenderAllTags(), this.checkPanelTag());
255
291
  }
256
292
  destroyTagById(e) {
257
293
  (Array.isArray(e) ? e : [e]).forEach((i) => {
@@ -262,8 +298,20 @@ class Ot extends W {
262
298
  pauseCurrentMedia() {
263
299
  this.mediaStore.set({ currentMediaElement: null });
264
300
  }
301
+ updateTagCss3DObjectMatrix(e, t) {
302
+ var P, M, w, F;
303
+ const i = (w = (M = (P = e.mergedConfig) == null ? void 0 : P.tag3DConfig) == null ? void 0 : M.ratio) != null ? w : 216e-5, s = (F = e.tag3DContentSvelte) == null ? void 0 : F.domContainer.css3DObject;
304
+ if (!s)
305
+ return;
306
+ const o = m(e) ? e.data.mediaPosition : e.position;
307
+ t.updateWorldMatrix(!1, !1);
308
+ const n = t.matrixWorld, r = new T().fromArray(o[0]), l = new T().fromArray(o[2]), g = new T().lerpVectors(r, l, 0.5).add(new T(0, 0, 5e-4)), D = new C().setPosition(g), B = new C().makeScale(i, i, i), y = new C().multiply(n).multiply(D).multiply(B);
309
+ y.decompose(s.position, s.quaternion, s.scale);
310
+ const b = s.opacityMesh;
311
+ !b || y.decompose(b.position, b.quaternion, b.scale);
312
+ }
265
313
  setVisibleAndUnfolded() {
266
- return m(this, arguments, function* ({ withAnimation: e } = { withAnimation: !1 }) {
314
+ return c(this, arguments, function* ({ withAnimation: e } = { withAnimation: !1 }) {
267
315
  if (!!this.isPanorama)
268
316
  return this.setVisibleByPanoIndex(), e ? new Promise((t, i) => {
269
317
  setTimeout(() => {
@@ -289,9 +337,9 @@ class Ot extends W {
289
337
  });
290
338
  }
291
339
  addEventListener() {
292
- const { five: e, hooks: t } = this, i = this.handleFiveWantsMoveToPano.bind(this), s = this.handleFiveModeChange.bind(this), o = this.handleFiveCameraUpdate.bind(this), n = this.handleFiveCameraUpdateDebounce(), r = this.handleFivePanoArrived.bind(this), l = this.loadVideoFirstFrame.bind(this), b = this.clickhandler.bind(this);
293
- return this.five.currentMode && (this.isPanorama ? (this.handleFivePanoArrived(), this.temporaryShow({ withAnimation: !0 })) : this.temporaryHide()), e.on("wantsMoveToPano", i), e.on("modeChange", s), e.on("cameraUpdate", o), e.on("cameraUpdate", n), e.on("panoArrived", r), e.on("panoArrived", l), t.on("click", b), () => {
294
- e.off("wantsMoveToPano", i), e.off("modeChange", s), e.off("cameraUpdate", o), e.off("cameraUpdate", n), e.off("panoArrived", r), e.off("panoArrived", l), t.off("click", b), this.store.eventListenerDisposer = void 0;
340
+ const { five: e, hooks: t } = this, i = this.handleFiveWantsMoveToPano.bind(this), s = this.handleFiveModeChange.bind(this), o = this.handleFiveCameraUpdate.bind(this), n = this.handleFiveCameraUpdateDebounce(), r = this.handleFivePanoArrived.bind(this), l = this.loadVideoFirstFrame.bind(this), g = this.clickhandler.bind(this), D = this.five.currentMode;
341
+ return this.handleFiveModeChange(D), this.handleFivePanoArrived(), e.on("wantsMoveToPano", i), e.on("modeChange", s), e.on("initAnimationEnded", this.handleFiveInitAnimationEnded), e.on("modelShownFloorChange", this.handleFiveModelShownFloorChange), e.on("cameraUpdate", o), e.on("cameraUpdate", n), e.on("panoArrived", r), e.on("panoArrived", l), t.on("click", g), () => {
342
+ e.off("wantsMoveToPano", i), e.off("modeChange", s), e.off("initAnimationEnded", this.handleFiveInitAnimationEnded), e.off("modelShownFloorChange", this.handleFiveModelShownFloorChange), e.off("cameraUpdate", o), e.off("cameraUpdate", n), e.off("panoArrived", r), e.off("panoArrived", l), t.off("click", g), this.store.eventListenerDisposer = void 0;
295
343
  };
296
344
  }
297
345
  loadVideoFirstFrame() {
@@ -312,13 +360,13 @@ class Ot extends W {
312
360
  !this.state.enabled || (this.show(), this.updateRenderAllTags());
313
361
  }, i = () => {
314
362
  !this.state.enabled || this.hide();
315
- }, { observe: s, unobserve: o } = D(
316
- z(() => {
363
+ }, { observe: s, unobserve: o } = I(
364
+ K(() => {
317
365
  !this.store.resizeObserverDisposer || i();
318
366
  }, 500),
319
367
  e
320
- ), { observe: n, unobserve: r } = D(
321
- C(() => t(), 400),
368
+ ), { observe: n, unobserve: r } = I(
369
+ k(() => t(), 400),
322
370
  e
323
371
  );
324
372
  return s(), n(), () => {
@@ -326,7 +374,9 @@ class Ot extends W {
326
374
  };
327
375
  }
328
376
  handleFiveModeChange(e) {
329
- e === "Panorama" ? this.five.once("panoArrived", () => this.temporaryShow({ withAnimation: !0 })) : this.temporaryHide();
377
+ this.tags.forEach((t) => {
378
+ t.temporaryState = f(p({}, t.temporaryState), { visible: this.getVisibelByFiveMode(t, e) }), m(t) && e !== "Panorama" && this.changeTagMode(t, "behind");
379
+ }), this.updateRenderAllTags(), this.updateRenderAllTags();
330
380
  }
331
381
  handleFiveWantsMoveToPano() {
332
382
  this.tags.forEach((e) => {
@@ -351,7 +401,7 @@ class Ot extends W {
351
401
  }), this.updateRenderAllTags());
352
402
  }
353
403
  updateRenderAllTags() {
354
- this.updateRenderPointTag(), this.updateRenderPlaneTag();
404
+ this.enabledModelTagSet.clear(), this.tags.forEach((e) => e.stickType === "Model" && this.enabledModelTagSet.add(e.id)), this.updateRenderPointTag(), this.updateRenderPlaneTag(), this.updateRenderModelTag();
355
405
  }
356
406
  updateTagContainerVisible() {
357
407
  var e;
@@ -369,7 +419,7 @@ class Ot extends W {
369
419
  });
370
420
  }
371
421
  handleFiveCameraUpdateDebounce() {
372
- return C(() => {
422
+ return k(() => {
373
423
  this.setUnfoldedByCamera(), this.updateRenderAllTags();
374
424
  }, 100);
375
425
  }
@@ -377,8 +427,8 @@ class Ot extends W {
377
427
  this.updateRenderPointTag();
378
428
  }
379
429
  handleFivePanoArrived() {
380
- return m(this, null, function* () {
381
- yield this.setVisibleAndUnfolded(), this.tags.forEach((e) => {
430
+ return c(this, null, function* () {
431
+ yield this.setVisibleAndUnfolded(), this.setModelMedialVisibleByPanoIndex(), this.tags.forEach((e) => {
382
432
  e.temporaryState = f(p({}, e.temporaryState), { visible: !0 });
383
433
  }), this.store.visibleWithAnimation = !0, this.updateTagContainerVisible();
384
434
  });
@@ -402,14 +452,14 @@ class Ot extends W {
402
452
  const i = (t = this.five.getElement()) == null ? void 0 : t.parentElement;
403
453
  if (!i)
404
454
  return console.error("updateRenderPlaneTag: tag2DContainer not found");
405
- this.TagContainerSvelte = new O({
455
+ this.TagContainerSvelte = new q({
406
456
  target: i,
407
457
  props: { hooks: this.hooks, tags: e, state: this.state, temporaryState: this.temporaryState, mediaStore: this.mediaStore }
408
458
  });
409
459
  }
410
460
  }
411
461
  updateRenderPlaneTag() {
412
- this.sort([...this.filterPlaneTag(), ...this.filter3DPointTag()]).forEach((t) => {
462
+ this.sort([...this.filterPlaneTag(), ...this.filter3DPointTag(), ...this.filterModelTag()]).forEach((t) => {
413
463
  var i;
414
464
  if (t.tag3DContentSvelte) {
415
465
  const { svelteApp: s, domContainer: o, initialNormal: n, currentNormal: r } = t.tag3DContentSvelte;
@@ -419,24 +469,41 @@ class Ot extends W {
419
469
  state: this.state,
420
470
  temporaryState: this.temporaryState
421
471
  }), !n.equals(r)) {
422
- const l = new U().setFromUnitVectors(n, r);
472
+ const l = new _().setFromUnitVectors(n, r);
423
473
  o.css3DObject.setRotationFromQuaternion(l);
424
474
  }
425
475
  } else {
426
476
  if (((i = t.state) == null ? void 0 : i.visible) === !1)
427
477
  return;
428
- if (this.css3DRenderPlugin || (this.css3DRenderPlugin = _(this.five)), t.stickType === "3DPoint" && !t.normal)
478
+ if (this.css3DRenderPlugin || (this.css3DRenderPlugin = Z(this.five)), t.stickType === "3DPoint" && !t.normal)
429
479
  return console.error("updateRenderPlaneTag: \u4E09\u7EF4\u70B9\u6807\u7B7E\u7F3A\u5C11\u6CD5\u5411\u91CF\uFF01");
430
- const s = t.stickType === "Plane" ? t.position : V(this.five.camera.position, g(t.position), g(t.normal)), o = t.stickType === "Plane" ? M(t.position) : g(t.normal), n = this.getTagConfig(t).tag3DConfig, r = this.css3DRenderPlugin.create3DDomContainer(s, n);
480
+ const s = (() => t.stickType === "Plane" ? t.position : t.stickType === "Model" && t.contentType === "MediaModel" ? ie(t) : X(
481
+ this.five.camera.position,
482
+ v(t.position),
483
+ v(t.normal)
484
+ ))();
485
+ if (!s)
486
+ return;
487
+ const o = function() {
488
+ if (t.normal)
489
+ return v(t.normal);
490
+ if (t.stickType === "Plane")
491
+ return O(t.position);
492
+ if (t.contentType === "MediaModel")
493
+ return O(s);
494
+ }();
495
+ if (!o)
496
+ return;
497
+ const n = this.getTagConfig(t).tag3DConfig, r = this.css3DRenderPlugin.create3DDomContainer(s, n);
431
498
  if (!r)
432
499
  return;
433
500
  this.store.css3DRenderDisposer.set(t.id, r.dispose), t.tag3DContentSvelte = {
434
- svelteApp: new I({
501
+ svelteApp: new H({
435
502
  target: r.container,
436
503
  props: {
437
504
  tag: t,
438
505
  hooks: this.hooks,
439
- state: this.state,
506
+ state: t.contentType === "MediaModel" ? f(p({}, this.state), { visible: !1 }) : this.state,
440
507
  mediaStore: this.mediaStore,
441
508
  temporaryState: this.temporaryState
442
509
  }
@@ -448,6 +515,15 @@ class Ot extends W {
448
515
  }
449
516
  }), this.checkPanelTag();
450
517
  }
518
+ updateRenderModelTag() {
519
+ const e = (i) => !this.enabledModelTagSet.has(i.customID);
520
+ this.gltfObjectGroup.remove(...this.gltfObjectGroup.children.filter(e)), this.tags.filter(m).forEach((i) => {
521
+ var s;
522
+ (s = i.model) == null || s.promise.then((o) => {
523
+ o.visible = i.state.visible;
524
+ });
525
+ });
526
+ }
451
527
  disposeAllCSS3DContainer() {
452
528
  for (const [e, t] of this.store.css3DRenderDisposer)
453
529
  t == null || t();
@@ -463,9 +539,19 @@ class Ot extends W {
463
539
  (!i || i.stickType === "2DPoint") && (t == null || t(), this.store.css3DRenderDisposer.delete(e));
464
540
  }
465
541
  }
542
+ addMediaModelTag(e) {
543
+ return c(this, null, function* () {
544
+ const t = e.filter(m).map(this.loadModel);
545
+ yield Promise.all(t), this.five.getCurrentState().mode === "Panorama" && this.setModelMedialVisibleByPanoIndex(), this.updateRenderAllTags();
546
+ });
547
+ }
548
+ changeTagMode(e, t) {
549
+ var i, s, o, n, r;
550
+ ((o = (s = (i = e.tag3DContentSvelte) == null ? void 0 : i.domContainer) == null ? void 0 : s.css3DObject) == null ? void 0 : o.mode) !== t && ((n = e.config) != null && n.tag3DConfig ? e.config.tag3DConfig.mode = t : e.config ? e.config.tag3DConfig = { mode: t } : e.config = { tag3DConfig: { mode: t } }, (r = this.store.css3DRenderDisposer.get(e.id)) == null || r(), e.tag3DContentSvelte = void 0);
551
+ }
466
552
  }
467
553
  export {
468
- Ot as PanoTagPluginController,
469
- Ot as default,
470
- Lt as pluginFlag
554
+ Qt as PanoTagPluginController,
555
+ Qt as default,
556
+ Jt as pluginFlag
471
557
  };
@@ -1,7 +1,8 @@
1
1
  import t from "./controller/index.js";
2
- import { default as Wo, pluginFlag as Xo } from "./controller/index.js";
3
- import { ContentType as Zo } from "./typings/tag/TagData.js";
4
- import { DimensionType as $o, PointType as or } from "./typings/tag/Utils.js";
2
+ import { default as Zo, pluginFlag as _o } from "./controller/index.js";
3
+ import "@realsee/five/gltf-loader";
4
+ import { ContentType as or } from "./typings/tag/TagData.js";
5
+ import { DimensionType as tr, PointType as pr } from "./typings/tag/Utils.js";
5
6
  import "@realsee/five";
6
7
  import "three";
7
8
  import "object-assign-deep";
@@ -64,6 +65,7 @@ import "../CSS3DRenderPlugin/utils/three/CSS3DGroup.js";
64
65
  import "../CSS3DRenderPlugin/utils/generateBehindFiveElement.js";
65
66
  import "../shared-utils/animationFrame/BetterTween.js";
66
67
  import "../shared-utils/animationFrame/index.js";
68
+ import "./utils/tag/tagCheck.js";
67
69
  import "./Components/Tag/AudioTag/index.js";
68
70
  import "./Components/Tag/AudioTag/AudioTag.js";
69
71
  import "./Components/Common/Audio.js";
@@ -87,7 +89,6 @@ import "./utils/throttle.js";
87
89
  import "./utils/resizeObserver.js";
88
90
  import "./controller/TagComputer.js";
89
91
  import "./tag.config.js";
90
- import "./utils/tag/tagCheck.js";
91
92
  import "./utils/tagPosition.js";
92
93
  import "./utils/checkRange.js";
93
94
  import "./controller/TagCacheController.js";
@@ -96,13 +97,15 @@ import "../CSS3DRenderPlugin/index.js";
96
97
  import "../CSS3DRenderPlugin/Controller.js";
97
98
  import "../CSS3DRenderPlugin/utils/waitFiveModelLoaded.js";
98
99
  import "./utils/tag/format.js";
99
- const So = (o, r) => new t(o, r);
100
+ import "../shared-utils/three/GLTFLoader.js";
101
+ import "./utils/tag/index.js";
102
+ const Wo = (o, r) => new t(o, r);
100
103
  export {
101
- Zo as ContentType,
102
- $o as DimensionType,
103
- So as PanoTagPlugin,
104
- Wo as PanoTagPluginController,
105
- or as PointType,
106
- So as default,
107
- Xo as pluginFlag
104
+ or as ContentType,
105
+ tr as DimensionType,
106
+ Wo as PanoTagPlugin,
107
+ Zo as PanoTagPluginController,
108
+ pr as PointType,
109
+ Wo as default,
110
+ _o as pluginFlag
108
111
  };
@@ -50,6 +50,15 @@ const e = {
50
50
  visibleConfig: {
51
51
  alwaysShowWhenMovePano: !0
52
52
  }
53
+ },
54
+ MediaModel: {
55
+ unfoldedConfig: {
56
+ keep: "unfolded"
57
+ },
58
+ visibleConfig: {
59
+ keep: "visible",
60
+ alwaysShowWhenMovePano: !0
61
+ }
53
62
  }
54
63
  }
55
64
  };