@realsee/dnalogel 2.0.0-alpha.42 → 2.0.0-alpha.45

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 (682) hide show
  1. package/dist/CSS3DRenderPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  2. package/dist/CSS3DRenderPlugin/PanoCompassPlugin/index.d.ts +1 -1
  3. package/dist/CSS3DRenderPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  4. package/dist/CSS3DRenderPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  5. package/dist/CSS3DRenderPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  6. package/dist/CSS3DRenderPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  7. package/dist/CSS3DRenderPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  8. package/dist/CSS3DRenderPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  9. package/dist/CameraMovementPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  10. package/dist/CameraMovementPlugin/PanoCompassPlugin/index.d.ts +1 -1
  11. package/dist/CameraMovementPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  12. package/dist/CameraMovementPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  13. package/dist/CameraMovementPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  14. package/dist/CameraMovementPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  15. package/dist/CameraMovementPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  16. package/dist/CameraMovementPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  17. package/dist/CameraMovementPlugin/index.js +15 -40
  18. package/dist/ItemLabelPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  19. package/dist/ItemLabelPlugin/PanoCompassPlugin/index.d.ts +1 -1
  20. package/dist/ItemLabelPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  21. package/dist/ItemLabelPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  22. package/dist/ItemLabelPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  23. package/dist/ItemLabelPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  24. package/dist/ItemLabelPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  25. package/dist/ItemLabelPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  26. package/dist/ItemLabelPlugin/index.js +183 -76
  27. package/dist/ItemLabelPlugin/typings.d.ts +2 -0
  28. package/dist/ModelChassisCompassPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  29. package/dist/ModelChassisCompassPlugin/PanoCompassPlugin/index.d.ts +1 -1
  30. package/dist/ModelChassisCompassPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  31. package/dist/ModelChassisCompassPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  32. package/dist/ModelChassisCompassPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  33. package/dist/ModelChassisCompassPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  34. package/dist/ModelChassisCompassPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  35. package/dist/ModelChassisCompassPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  36. package/dist/ModelChassisCompassPlugin/index.js +5 -30
  37. package/dist/ModelEntryDoorGuidePlugin/ItemLabelPlugin/typings.d.ts +2 -0
  38. package/dist/ModelEntryDoorGuidePlugin/PanoCompassPlugin/index.d.ts +1 -1
  39. package/dist/ModelEntryDoorGuidePlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  40. package/dist/ModelEntryDoorGuidePlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  41. package/dist/ModelEntryDoorGuidePlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  42. package/dist/ModelEntryDoorGuidePlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  43. package/dist/ModelEntryDoorGuidePlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  44. package/dist/ModelEntryDoorGuidePlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  45. package/dist/ModelEntryDoorGuidePlugin/index.js +8 -33
  46. package/dist/ModelItemLabelPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  47. package/dist/ModelItemLabelPlugin/PanoCompassPlugin/index.d.ts +1 -1
  48. package/dist/ModelItemLabelPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  49. package/dist/ModelItemLabelPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  50. package/dist/ModelItemLabelPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  51. package/dist/ModelItemLabelPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  52. package/dist/ModelItemLabelPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  53. package/dist/ModelItemLabelPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  54. package/dist/ModelRoomLabelPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  55. package/dist/ModelRoomLabelPlugin/PanoCompassPlugin/index.d.ts +1 -1
  56. package/dist/ModelRoomLabelPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  57. package/dist/ModelRoomLabelPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  58. package/dist/ModelRoomLabelPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  59. package/dist/ModelRoomLabelPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  60. package/dist/ModelRoomLabelPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  61. package/dist/ModelRoomLabelPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  62. package/dist/ModelTVVideoPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  63. package/dist/ModelTVVideoPlugin/PanoCompassPlugin/index.d.ts +1 -1
  64. package/dist/ModelTVVideoPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  65. package/dist/ModelTVVideoPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  66. package/dist/ModelTVVideoPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  67. package/dist/ModelTVVideoPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  68. package/dist/ModelTVVideoPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  69. package/dist/ModelTVVideoPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  70. package/dist/ModelTVVideoPlugin/index.js +3 -28
  71. package/dist/ModelViewPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  72. package/dist/ModelViewPlugin/PanoCompassPlugin/index.d.ts +1 -1
  73. package/dist/ModelViewPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  74. package/dist/ModelViewPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  75. package/dist/ModelViewPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  76. package/dist/ModelViewPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  77. package/dist/ModelViewPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  78. package/dist/ModelViewPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  79. package/dist/PanoCompassPlugin/{controller.d.ts → Controller.d.ts} +0 -0
  80. package/dist/PanoCompassPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  81. package/dist/PanoCompassPlugin/PanoCompassPlugin/index.d.ts +1 -1
  82. package/dist/PanoCompassPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  83. package/dist/PanoCompassPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  84. package/dist/PanoCompassPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  85. package/dist/PanoCompassPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  86. package/dist/PanoCompassPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  87. package/dist/PanoCompassPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  88. package/dist/PanoCompassPlugin/index.d.ts +1 -1
  89. package/dist/PanoCompassPlugin/index.js +64 -99
  90. package/dist/PanoCursorRaycasterPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  91. package/dist/PanoCursorRaycasterPlugin/PanoCompassPlugin/index.d.ts +1 -1
  92. package/dist/PanoCursorRaycasterPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  93. package/dist/PanoCursorRaycasterPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  94. package/dist/PanoCursorRaycasterPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  95. package/dist/PanoCursorRaycasterPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  96. package/dist/PanoCursorRaycasterPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  97. package/dist/PanoCursorRaycasterPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  98. package/dist/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  99. package/{libs/src → dist/PanoDoorLabelPlugin}/CSS3DRenderPlugin/Plugin.d.ts +0 -0
  100. package/{libs/src → dist/PanoDoorLabelPlugin}/CSS3DRenderPlugin/index.d.ts +0 -0
  101. package/{libs/src → dist/PanoDoorLabelPlugin}/CSS3DRenderPlugin/utils/createResizeObserver.d.ts +0 -0
  102. package/{libs/src → dist/PanoDoorLabelPlugin}/CameraMovementPlugin/CameraMovementPlugin.d.ts +0 -0
  103. package/{libs/src → dist/PanoDoorLabelPlugin}/CameraMovementPlugin/index.d.ts +0 -0
  104. package/{libs/src → dist/PanoDoorLabelPlugin}/CameraMovementPlugin/typing.d.ts +0 -0
  105. package/dist/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  106. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/Plugin.d.ts +0 -0
  107. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/events.type.d.ts +0 -0
  108. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/index.d.ts +0 -0
  109. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/typings.d.ts +7 -1
  110. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/utils/getLabelTransform.d.ts +0 -0
  111. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/utils/getStrokeLength.d.ts +0 -0
  112. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/utils/isImpacted.d.ts +0 -0
  113. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/utils/parseData.d.ts +0 -0
  114. package/{libs/src → dist/PanoDoorLabelPlugin}/ItemLabelPlugin/utils/transform2RenderData.d.ts +0 -0
  115. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelChassisCompassPlugin/Plugin.d.ts +0 -0
  116. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelChassisCompassPlugin/index.d.ts +0 -0
  117. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelEntryDoorGuidePlugin/Plugin.d.ts +0 -0
  118. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelEntryDoorGuidePlugin/index.d.ts +0 -0
  119. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelItemLabelPlugin/ModelItemLabelPlugin.d.ts +0 -0
  120. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelItemLabelPlugin/events.type.d.ts +0 -0
  121. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelItemLabelPlugin/index.d.ts +0 -0
  122. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelItemLabelPlugin/typings.d.ts +1 -1
  123. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelItemLabelPlugin/utils/parseData.d.ts +0 -0
  124. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelRoomLabelPlugin/Assets/roomLabelBg.d.ts +0 -0
  125. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelRoomLabelPlugin/Controller.d.ts +0 -0
  126. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelRoomLabelPlugin/index.d.ts +0 -0
  127. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelRoomLabelPlugin/typings.d.ts +0 -0
  128. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelRoomLabelPlugin/utils/parseData.d.ts +0 -0
  129. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelTVVideoPlugin/Plugin.d.ts +0 -0
  130. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelTVVideoPlugin/index.d.ts +0 -0
  131. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelTVVideoPlugin/typings.d.ts +0 -0
  132. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelTVVideoPlugin/utils/parseData.d.ts +0 -0
  133. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelViewPlugin/Plugin.d.ts +0 -0
  134. package/{libs/src → dist/PanoDoorLabelPlugin}/ModelViewPlugin/index.d.ts +0 -0
  135. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoCompassPlugin/Assets/roomInfoIcon.d.ts +0 -0
  136. package/{libs/PanoCompassPlugin/controller.d.ts → dist/PanoDoorLabelPlugin/PanoCompassPlugin/Controller.d.ts} +0 -0
  137. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoCompassPlugin/getRoomInfoInstance.d.ts +0 -0
  138. package/dist/PanoDoorLabelPlugin/PanoCompassPlugin/index.d.ts +7 -0
  139. package/dist/PanoDoorLabelPlugin/PanoCompassPlugin/typings.d.ts +57 -0
  140. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoCursorRaycasterPlugin/index.d.ts +0 -0
  141. package/dist/PanoDoorLabelPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  142. package/dist/PanoDoorLabelPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  143. package/dist/PanoDoorLabelPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  144. package/dist/PanoDoorLabelPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  145. package/dist/PanoDoorLabelPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  146. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Controller/BaseController.d.ts +0 -0
  147. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Controller/EditController.d.ts +0 -0
  148. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Controller/MixedController.d.ts +0 -0
  149. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Controller/ShortcutKeyController.d.ts +0 -0
  150. package/dist/PanoDoorLabelPlugin/PanoMeasurePlugin/Controller/ViewController.d.ts +16 -0
  151. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Controller/WatchController.d.ts +0 -0
  152. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Controller/index.d.ts +1 -1
  153. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Model/index.d.ts +0 -0
  154. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Model/line.d.ts +0 -0
  155. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Model/point.d.ts +0 -0
  156. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Model/polyline.d.ts +0 -0
  157. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.d.ts +0 -0
  158. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.d.ts +0 -0
  159. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.d.ts +0 -0
  160. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/DeleteDom/index.d.ts +0 -0
  161. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/FiveHelper.d.ts +0 -0
  162. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/GuideController.d.ts +0 -0
  163. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/Magnifier.d.ts +0 -0
  164. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/HTML.d.ts +0 -0
  165. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/MainBtnController.d.ts +0 -0
  166. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/Revoke/index.d.ts +0 -0
  167. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/index.d.ts +0 -0
  168. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/mobileHTML.d.ts +0 -0
  169. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/mobileMainBtnController.d.ts +0 -0
  170. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/UIController/style.d.ts +0 -0
  171. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/rangePiece/html.d.ts +0 -0
  172. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/Modules/rangePiece/index.d.ts +0 -0
  173. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/index.d.ts +0 -0
  174. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/typings/data.d.ts +0 -0
  175. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/typings/event.type.d.ts +0 -0
  176. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/typings/utils.type.d.ts +0 -0
  177. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/calculateThreeMouse.d.ts +0 -0
  178. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/clearGroup.d.ts +0 -0
  179. package/dist/PanoDoorLabelPlugin/PanoMeasurePlugin/utils/constants.d.ts +4 -0
  180. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/distanceDom.d.ts +2 -2
  181. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +0 -0
  182. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/findClosestPoint.d.ts +0 -0
  183. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/getIntersectionFromEvent.d.ts +0 -0
  184. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/getPointFromHammerEvent.d.ts +0 -0
  185. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/ironbox.d.ts +0 -0
  186. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/isNDCPointInScreen.d.ts +0 -0
  187. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/line.d.ts +3 -3
  188. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/math.d.ts +0 -0
  189. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/mouseGroup.d.ts +0 -0
  190. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoMeasurePlugin/utils/ndc2Screen.d.ts +0 -0
  191. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerPlugin/Plugin.d.ts +0 -0
  192. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerPlugin/index.d.ts +0 -0
  193. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerPlugin/style.d.ts +0 -0
  194. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerPlugin/typings.d.ts +0 -0
  195. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerProPlugin/Controller.d.ts +0 -0
  196. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerProPlugin/index.d.ts +0 -0
  197. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoRulerProPlugin/typings.d.ts +0 -0
  198. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoSpatialTagPlugin/Plugin.d.ts +0 -0
  199. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoSpatialTagPlugin/index.d.ts +0 -0
  200. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoSpatialTagPlugin/store.d.ts +0 -0
  201. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoSpatialTagPlugin/style.d.ts +0 -0
  202. package/{libs/src → dist/PanoDoorLabelPlugin}/PanoSpatialTagPlugin/typings.d.ts +0 -0
  203. package/{libs/src → dist/PanoDoorLabelPlugin}/base/BasePlugin.d.ts +0 -4
  204. package/{libs/src → dist/PanoDoorLabelPlugin}/base/BasePluginWithData.d.ts +0 -0
  205. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/Controller.d.ts +0 -0
  206. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/Subscribe.d.ts +0 -0
  207. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/index.d.ts +0 -0
  208. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/style.d.ts +0 -0
  209. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/tween.d.ts +0 -0
  210. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/typings.d.ts +0 -0
  211. package/{libs/src → dist/PanoDoorLabelPlugin}/components/PaintBrush/utils.d.ts +0 -0
  212. package/{libs/src → dist/PanoDoorLabelPlugin}/components/index.d.ts +0 -0
  213. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/Assets/camera.d.ts +0 -0
  214. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/Assets/compass.d.ts +0 -0
  215. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/Assets/floorplanExtraObject.d.ts +0 -0
  216. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/ModelFloorplanPlugin/Controller.d.ts +0 -0
  217. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/ModelFloorplanPlugin/index.d.ts +0 -0
  218. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/ModelFloorplanPlugin/typing.d.ts +0 -0
  219. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/PanoFloorplanRadarPlugin/Controller.d.ts +0 -0
  220. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/PanoFloorplanRadarPlugin/index.d.ts +0 -0
  221. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +0 -0
  222. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/TopviewFloorplanPlugin/Controller.d.ts +0 -0
  223. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/TopviewFloorplanPlugin/index.d.ts +0 -0
  224. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/TopviewFloorplanPlugin/style.d.ts +0 -0
  225. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/TopviewFloorplanPlugin/typing.d.ts +0 -0
  226. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/constant.d.ts +0 -0
  227. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/index.d.ts +0 -0
  228. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/typings/floorplanData.d.ts +0 -0
  229. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/typings/floorplanServerData.d.ts +13 -0
  230. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/typings/utility.d.ts +0 -0
  231. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/utils/constant.d.ts +0 -0
  232. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/utils/correctFiveState.d.ts +0 -0
  233. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/utils/formatData.d.ts +0 -0
  234. package/{libs/src → dist/PanoDoorLabelPlugin}/floorplan/utils/formatPosition.d.ts +0 -0
  235. package/dist/PanoDoorLabelPlugin/index.d.ts +7 -0
  236. package/dist/PanoDoorLabelPlugin/index.js +775 -0
  237. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/Preloader.d.ts +0 -0
  238. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/Subscribe.d.ts +0 -0
  239. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/animationFrame/BetterTween.d.ts +0 -0
  240. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/animationFrame/calculateProgress.d.ts +0 -0
  241. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/animationFrame/formatRad.d.ts +0 -0
  242. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/animationFrame/index.d.ts +0 -0
  243. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/animationFrame/tween.d.ts +0 -0
  244. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/changeModelCanvasOpacity.d.ts +0 -0
  245. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/createCanvasTextTexture.d.ts +0 -0
  246. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/createLine/index.d.ts +0 -0
  247. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/debounce.d.ts +0 -0
  248. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/equal.d.ts +0 -0
  249. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/filter.d.ts +0 -0
  250. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/five/changeMode.d.ts +0 -0
  251. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/formatRad.d.ts +0 -0
  252. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/getPxmm.d.ts +0 -0
  253. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/getRandomColor.d.ts +0 -0
  254. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/index.d.ts +0 -0
  255. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/isNil.d.ts +0 -0
  256. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/isTruelyObject.d.ts +0 -0
  257. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/logger.d.ts +0 -0
  258. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/math/Interval.d.ts +0 -0
  259. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/math/Rectangle.d.ts +0 -0
  260. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/math/evenNumber.d.ts +0 -0
  261. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/math/index.d.ts +0 -0
  262. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/math/planimetry.d.ts +0 -0
  263. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/math/rad2Deg.d.ts +0 -0
  264. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/nearlyEqual.d.ts +0 -0
  265. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/nextFrame.d.ts +0 -0
  266. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/noop.d.ts +0 -0
  267. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/object3d2LocalMatrix.d.ts +0 -0
  268. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/px2rem.d.ts +0 -0
  269. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/removeArrayItem.d.ts +0 -0
  270. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/tap.d.ts +0 -0
  271. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/centerPoint.d.ts +0 -0
  272. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/getExtraModelLoader.d.ts +0 -0
  273. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/getNormal.d.ts +0 -0
  274. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/getTextureLoader.d.ts +0 -0
  275. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/loadFbxObj.d.ts +0 -0
  276. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/loadTexture.d.ts +0 -0
  277. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/transformPositionToVector3.d.ts +0 -0
  278. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/three/transfromToMeshBasicMaterial.d.ts +0 -0
  279. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/throttle.d.ts +0 -0
  280. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/tinyEJSrender.d.ts +0 -0
  281. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/to.d.ts +0 -0
  282. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/uuid.d.ts +0 -0
  283. package/{libs/src → dist/PanoDoorLabelPlugin}/shared-utils/vectorTocoordinates.d.ts +0 -0
  284. package/{libs/src → dist/PanoDoorLabelPlugin}/typings/math.type.d.ts +0 -0
  285. package/{libs/src → dist/PanoDoorLabelPlugin}/typings/utils.type.d.ts +0 -0
  286. package/dist/PanoDoorLabelPlugin/typings.d.ts +33 -0
  287. package/dist/PanoDoorLabelPlugin/utils.d.ts +5 -0
  288. package/dist/PanoMeasurePlugin/ItemLabelPlugin/typings.d.ts +2 -0
  289. package/dist/PanoMeasurePlugin/PanoCompassPlugin/index.d.ts +1 -1
  290. package/dist/PanoMeasurePlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  291. package/dist/PanoMeasurePlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  292. package/dist/PanoMeasurePlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  293. package/dist/PanoMeasurePlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  294. package/dist/PanoMeasurePlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  295. package/dist/PanoMeasurePlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  296. package/dist/PanoRulerPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  297. package/dist/PanoRulerPlugin/PanoCompassPlugin/index.d.ts +1 -1
  298. package/dist/PanoRulerPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  299. package/dist/PanoRulerPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  300. package/dist/PanoRulerPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  301. package/dist/PanoRulerPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  302. package/dist/PanoRulerPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  303. package/dist/PanoRulerPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  304. package/dist/PanoRulerPlugin/index.js +3 -28
  305. package/dist/PanoRulerProPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  306. package/dist/PanoRulerProPlugin/PanoCompassPlugin/index.d.ts +1 -1
  307. package/dist/PanoRulerProPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  308. package/dist/PanoRulerProPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  309. package/dist/PanoRulerProPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  310. package/dist/PanoRulerProPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  311. package/dist/PanoRulerProPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  312. package/dist/PanoRulerProPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  313. package/dist/PanoRulerProPlugin/index.js +29 -58
  314. package/dist/PanoSpatialTagPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  315. package/dist/PanoSpatialTagPlugin/PanoCompassPlugin/index.d.ts +1 -1
  316. package/dist/PanoSpatialTagPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  317. package/dist/PanoSpatialTagPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  318. package/dist/PanoSpatialTagPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  319. package/dist/PanoSpatialTagPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  320. package/dist/PanoSpatialTagPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  321. package/dist/PanoSpatialTagPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  322. package/dist/floorplan/ModelFloorplanPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  323. package/dist/floorplan/ModelFloorplanPlugin/PanoCompassPlugin/index.d.ts +1 -1
  324. package/dist/floorplan/ModelFloorplanPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  325. package/dist/floorplan/ModelFloorplanPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  326. package/dist/floorplan/ModelFloorplanPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  327. package/dist/floorplan/ModelFloorplanPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  328. package/dist/floorplan/ModelFloorplanPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  329. package/dist/floorplan/ModelFloorplanPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  330. package/dist/floorplan/ModelFloorplanPlugin/index.js +115 -156
  331. package/dist/floorplan/PanoFloorplanRadarPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  332. package/dist/floorplan/PanoFloorplanRadarPlugin/PanoCompassPlugin/index.d.ts +1 -1
  333. package/dist/floorplan/PanoFloorplanRadarPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  334. package/dist/floorplan/PanoFloorplanRadarPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  335. package/dist/floorplan/PanoFloorplanRadarPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  336. package/dist/floorplan/PanoFloorplanRadarPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  337. package/dist/floorplan/PanoFloorplanRadarPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  338. package/dist/floorplan/PanoFloorplanRadarPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  339. package/dist/floorplan/PanoFloorplanRadarPlugin/index.js +71 -110
  340. package/dist/floorplan/TopviewFloorplanPlugin/ItemLabelPlugin/typings.d.ts +2 -0
  341. package/dist/floorplan/TopviewFloorplanPlugin/PanoCompassPlugin/index.d.ts +1 -1
  342. package/dist/floorplan/TopviewFloorplanPlugin/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  343. package/dist/floorplan/TopviewFloorplanPlugin/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  344. package/dist/floorplan/TopviewFloorplanPlugin/PanoDoorLabelPlugin/index.d.ts +7 -0
  345. package/dist/floorplan/TopviewFloorplanPlugin/PanoDoorLabelPlugin/typings.d.ts +33 -0
  346. package/dist/floorplan/TopviewFloorplanPlugin/PanoDoorLabelPlugin/utils.d.ts +5 -0
  347. package/dist/floorplan/TopviewFloorplanPlugin/floorplan/typings/floorplanServerData.d.ts +13 -0
  348. package/dist/floorplan/TopviewFloorplanPlugin/index.js +114 -159
  349. package/dist/floorplan/typings/floorplanServerData.d.ts +13 -0
  350. package/dist/index.d.ts +2 -1
  351. package/dist/index.es.js +1430 -668
  352. package/dist/index.js +1429 -666
  353. package/dist/index.umd.js +1426 -663
  354. package/docs/assets/search.js +1 -1
  355. package/docs/classes/Magnifier.html +4 -4
  356. package/docs/classes/ModelRoomLabelController.html +4 -4
  357. package/docs/enums/CameraMovementEffect.html +2 -2
  358. package/docs/enums/DIRECTION.html +1 -1
  359. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +1 -1
  360. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +1 -1
  361. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +1 -1
  362. package/docs/enums/Rotation.html +2 -2
  363. package/docs/index.html +2 -2
  364. package/docs/interfaces/CSS3DRenderPluginExportType.html +2 -2
  365. package/docs/interfaces/CameraMovementPluginExportType.html +2 -2
  366. package/docs/interfaces/FloorplanBounding.html +4 -4
  367. package/docs/interfaces/FloorplanData.html +2 -2
  368. package/docs/interfaces/FloorplanEntrance.html +7 -7
  369. package/docs/interfaces/FloorplanExtraObject.html +3 -3
  370. package/docs/interfaces/FloorplanExtraObject3D.html +2 -2
  371. package/docs/interfaces/FloorplanFloorData.html +2 -2
  372. package/docs/interfaces/FloorplanImagePosition.html +2 -2
  373. package/docs/interfaces/FloorplanObserver.html +2 -2
  374. package/docs/interfaces/FloorplanOutlineItem.html +2 -2
  375. package/docs/interfaces/FloorplanPosition.html +2 -2
  376. package/docs/interfaces/FloorplanRoomItem.html +6 -6
  377. package/docs/interfaces/FloorplanRoomLabelItem.html +3 -3
  378. package/docs/interfaces/FloorplanServerBounding.html +4 -4
  379. package/docs/interfaces/FloorplanServerComputedData.html +1 -1
  380. package/docs/interfaces/FloorplanServerData.html +2 -2
  381. package/docs/interfaces/FloorplanServerDoorItem.html +1 -0
  382. package/docs/interfaces/FloorplanServerDoorPosition.html +1 -0
  383. package/docs/interfaces/FloorplanServerEntrance.html +7 -7
  384. package/docs/interfaces/FloorplanServerFloorData.html +2 -2
  385. package/docs/interfaces/FloorplanServerImagePosition.html +2 -2
  386. package/docs/interfaces/FloorplanServerObserver.html +2 -2
  387. package/docs/interfaces/FloorplanServerOutlineItem.html +2 -2
  388. package/docs/interfaces/FloorplanServerPosition.html +2 -2
  389. package/docs/interfaces/FloorplanServerRoomItem.html +7 -7
  390. package/docs/interfaces/FloorplanServerRoomLabelItem.html +3 -3
  391. package/docs/interfaces/ItemLabelPluginData.html +1 -1
  392. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +1 -1
  393. package/docs/interfaces/ItemLabelPluginParametersType.html +1 -1
  394. package/docs/interfaces/LineJson.html +1 -1
  395. package/docs/interfaces/ModelChassisCompassPluginData.html +1 -1
  396. package/docs/interfaces/ModelChassisCompassPluginExportType.html +1 -1
  397. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +1 -1
  398. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +1 -1
  399. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +1 -1
  400. package/docs/interfaces/ModelItemLabelPluginData.html +1 -1
  401. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +1 -1
  402. package/docs/interfaces/ModelItemLabelPluginParametersType.html +1 -1
  403. package/docs/interfaces/ModelRoomLabelPluginData.html +1 -1
  404. package/docs/interfaces/ModelTVVideoPluginData.html +1 -1
  405. package/docs/interfaces/ModelTVVideoPluginExportType.html +1 -1
  406. package/docs/interfaces/ModelTVVideoPluginParameterType.html +1 -1
  407. package/docs/interfaces/ModelViewPluginExportType.html +1 -1
  408. package/docs/interfaces/OpenParameter.html +2 -2
  409. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +6 -6
  410. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +1 -1
  411. package/docs/interfaces/PanoMeasureParameterType.html +1 -1
  412. package/docs/interfaces/PanoRulerPluginExportType.html +1 -1
  413. package/docs/interfaces/PanoRulerPluginOptions.html +1 -1
  414. package/docs/interfaces/PanoRulerPluginParameterType.html +1 -1
  415. package/docs/interfaces/PanoRulerProPluginExportType.html +1 -1
  416. package/docs/interfaces/PanoRulerProPluginOptions.html +1 -1
  417. package/docs/interfaces/PanoRulerProPluginParameterType.html +1 -1
  418. package/docs/interfaces/PanoRulerProPluginState.html +1 -1
  419. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +1 -1
  420. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +1 -1
  421. package/docs/interfaces/PanoSpatialTagPluginData.html +1 -1
  422. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +1 -1
  423. package/docs/interfaces/PanoSpatialTagPluginExportType.html +1 -1
  424. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +1 -1
  425. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +1 -1
  426. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +1 -1
  427. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +1 -1
  428. package/docs/interfaces/Point.html +1 -1
  429. package/docs/interfaces/PointJson.html +1 -1
  430. package/docs/interfaces/Room.html +1 -1
  431. package/docs/interfaces/RoomInfo.html +1 -1
  432. package/docs/interfaces/RoomLabel.html +7 -7
  433. package/docs/interfaces/RoomRules.html +1 -1
  434. package/docs/interfaces/Rooms.html +1 -1
  435. package/docs/modules.html +18 -18
  436. package/libs/CameraMovementPlugin/CameraMovementPlugin.js +15 -24
  437. package/libs/ItemLabelPlugin/ItemLabelComponent.js +2 -2
  438. package/libs/ItemLabelPlugin/ItemLabelItem.js +183 -76
  439. package/libs/ItemLabelPlugin/typings.d.ts +2 -0
  440. package/libs/ModelChassisCompassPlugin/Plugin.js +5 -14
  441. package/libs/ModelEntryDoorGuidePlugin/Plugin.js +8 -17
  442. package/libs/ModelItemLabelPlugin/ItemLabelComponent.js +2 -2
  443. package/libs/ModelItemLabelPlugin/ItemLabelItem.js +6 -6
  444. package/libs/ModelRoomLabelPlugin/RoomLabelItem.js +4 -4
  445. package/libs/ModelRoomLabelPlugin/RoomLabelItems.js +2 -2
  446. package/libs/ModelTVVideoPlugin/Plugin.js +3 -12
  447. package/libs/PanoCompassPlugin/Controller.d.ts +84 -0
  448. package/libs/PanoCompassPlugin/{controller.js → Controller.js} +56 -73
  449. package/libs/PanoCompassPlugin/index.d.ts +1 -1
  450. package/libs/PanoDoorLabelPlugin/BaseController.d.ts +60 -0
  451. package/libs/PanoDoorLabelPlugin/BaseController.js +103 -0
  452. package/libs/PanoDoorLabelPlugin/Controller.d.ts +36 -0
  453. package/libs/PanoDoorLabelPlugin/Controller.js +434 -0
  454. package/libs/PanoDoorLabelPlugin/DoorLabelItem.js +159 -0
  455. package/libs/PanoDoorLabelPlugin/index.d.ts +7 -0
  456. package/libs/PanoDoorLabelPlugin/index.js +6 -0
  457. package/libs/PanoDoorLabelPlugin/typings.d.ts +33 -0
  458. package/libs/{src/ModelRoomLabelPlugin → PanoDoorLabelPlugin}/typings.js +0 -0
  459. package/libs/PanoDoorLabelPlugin/utils.d.ts +5 -0
  460. package/libs/PanoDoorLabelPlugin/utils.js +55 -0
  461. package/libs/PanoRulerPlugin/Plugin.js +3 -12
  462. package/libs/PanoRulerProPlugin/Controller.js +29 -42
  463. package/libs/PanoRulerProPlugin/RulerItem.js +9 -9
  464. package/libs/PanoSpatialTagPlugin/Components/origins.js +2 -2
  465. package/libs/PanoSpatialTagPlugin/Components/tag.js +9 -9
  466. package/libs/floorplan/Components/BaseImage.js +2 -2
  467. package/libs/floorplan/Components/Camera.js +3 -3
  468. package/libs/floorplan/Components/Compass.js +4 -4
  469. package/libs/floorplan/Components/CurrentFloor.js +3 -3
  470. package/libs/floorplan/Components/Main.js +2 -2
  471. package/libs/floorplan/Components/Normalmage.js +2 -2
  472. package/libs/floorplan/Components/RoomHighlight/Room.js +2 -2
  473. package/libs/floorplan/Components/RoomHighlight/RoomHighlight.js +3 -3
  474. package/libs/floorplan/Components/RoomLabels/RoomLabel.js +3 -3
  475. package/libs/floorplan/Components/RoomLabels/RoomLabels.js +2 -2
  476. package/libs/floorplan/Components/RoomMaterials/RoomMaterial.js +3 -3
  477. package/libs/floorplan/Components/RuleLabels/RuleItem.js +9 -9
  478. package/libs/floorplan/Components/RuleLabels/RuleLabels.js +2 -2
  479. package/libs/floorplan/Components/SvgImage.js +3 -4
  480. package/libs/floorplan/ModelFloorplanPlugin/Controller.js +29 -42
  481. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Camera.js +4 -4
  482. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/ExtraObjects.js +4 -4
  483. package/libs/floorplan/PanoFloorplanRadarPlugin/Components/Main.js +3 -3
  484. package/libs/floorplan/PanoFloorplanRadarPlugin/Controller.js +43 -60
  485. package/libs/floorplan/TopviewFloorplanPlugin/Controller.js +58 -79
  486. package/libs/floorplan/typings/floorplanServerData.d.ts +13 -0
  487. package/libs/floorplan/utils/correctFiveState.js +20 -31
  488. package/libs/floorplan/utils/formatData.js +28 -43
  489. package/libs/index.d.ts +2 -1
  490. package/libs/index.js +3 -1
  491. package/libs/shared-utils/five/changeMode.js +28 -39
  492. package/libs/shared-utils/three/loadFbxObj.js +9 -20
  493. package/libs/shared-utils/three/loadTexture.js +6 -17
  494. package/libs/shared-utils/to.js +10 -21
  495. package/package.json +15 -14
  496. package/dist/PanoCompassPlugin/Plugin.d.ts +0 -47
  497. package/libs/PanoCompassPlugin/Plugin.d.ts +0 -47
  498. package/libs/PanoCompassPlugin/Plugin.js +0 -267
  499. package/libs/PanoCompassPlugin/typeings.d.ts +0 -0
  500. package/libs/PanoCompassPlugin/typeings.js +0 -0
  501. package/libs/package.json +0 -68
  502. package/libs/src/CSS3DRenderPlugin/Plugin.js +0 -182
  503. package/libs/src/CSS3DRenderPlugin/index.js +0 -3
  504. package/libs/src/CSS3DRenderPlugin/utils/createResizeObserver.js +0 -18
  505. package/libs/src/CameraMovementPlugin/CameraMovementPlugin.js +0 -159
  506. package/libs/src/CameraMovementPlugin/index.js +0 -4
  507. package/libs/src/CameraMovementPlugin/typing.js +0 -17
  508. package/libs/src/ItemLabelPlugin/Plugin.js +0 -120
  509. package/libs/src/ItemLabelPlugin/events.type.js +0 -1
  510. package/libs/src/ItemLabelPlugin/index.js +0 -8
  511. package/libs/src/ItemLabelPlugin/typings.js +0 -7
  512. package/libs/src/ItemLabelPlugin/utils/getLabelTransform.js +0 -3
  513. package/libs/src/ItemLabelPlugin/utils/getStrokeLength.js +0 -16
  514. package/libs/src/ItemLabelPlugin/utils/isImpacted.js +0 -13
  515. package/libs/src/ItemLabelPlugin/utils/parseData.js +0 -4
  516. package/libs/src/ItemLabelPlugin/utils/transform2RenderData.js +0 -4
  517. package/libs/src/ModelChassisCompassPlugin/Plugin.js +0 -77
  518. package/libs/src/ModelChassisCompassPlugin/index.js +0 -3
  519. package/libs/src/ModelEntryDoorGuidePlugin/Plugin.js +0 -140
  520. package/libs/src/ModelEntryDoorGuidePlugin/index.js +0 -3
  521. package/libs/src/ModelItemLabelPlugin/ModelItemLabelPlugin.js +0 -120
  522. package/libs/src/ModelItemLabelPlugin/events.type.js +0 -1
  523. package/libs/src/ModelItemLabelPlugin/index.js +0 -8
  524. package/libs/src/ModelItemLabelPlugin/typings.js +0 -7
  525. package/libs/src/ModelItemLabelPlugin/utils/parseData.js +0 -4
  526. package/libs/src/ModelRoomLabelPlugin/Assets/roomLabelBg.js +0 -1
  527. package/libs/src/ModelRoomLabelPlugin/Controller.js +0 -142
  528. package/libs/src/ModelRoomLabelPlugin/index.js +0 -9
  529. package/libs/src/ModelRoomLabelPlugin/utils/parseData.js +0 -14
  530. package/libs/src/ModelTVVideoPlugin/Plugin.js +0 -254
  531. package/libs/src/ModelTVVideoPlugin/index.js +0 -4
  532. package/libs/src/ModelTVVideoPlugin/typings.js +0 -8
  533. package/libs/src/ModelTVVideoPlugin/utils/parseData.js +0 -13
  534. package/libs/src/ModelViewPlugin/Plugin.js +0 -159
  535. package/libs/src/ModelViewPlugin/index.js +0 -3
  536. package/libs/src/PanoCompassPlugin/Assets/roomInfoIcon.js +0 -1
  537. package/libs/src/PanoCompassPlugin/Plugin.d.ts +0 -47
  538. package/libs/src/PanoCompassPlugin/Plugin.js +0 -249
  539. package/libs/src/PanoCompassPlugin/getRoomInfoInstance.js +0 -48
  540. package/libs/src/PanoCompassPlugin/index.d.ts +0 -8
  541. package/libs/src/PanoCompassPlugin/index.js +0 -7
  542. package/libs/src/PanoCursorRaycasterPlugin/index.js +0 -76
  543. package/libs/src/PanoMeasurePlugin/Controller/BaseController.js +0 -132
  544. package/libs/src/PanoMeasurePlugin/Controller/EditController.js +0 -329
  545. package/libs/src/PanoMeasurePlugin/Controller/MixedController.js +0 -337
  546. package/libs/src/PanoMeasurePlugin/Controller/ShortcutKeyController.js +0 -64
  547. package/libs/src/PanoMeasurePlugin/Controller/WatchController.js +0 -316
  548. package/libs/src/PanoMeasurePlugin/Controller/index.js +0 -306
  549. package/libs/src/PanoMeasurePlugin/Model/index.js +0 -139
  550. package/libs/src/PanoMeasurePlugin/Model/line.js +0 -114
  551. package/libs/src/PanoMeasurePlugin/Model/point.js +0 -48
  552. package/libs/src/PanoMeasurePlugin/Model/polyline.js +0 -65
  553. package/libs/src/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete.svg.js +0 -12
  554. package/libs/src/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_bg.png.js +0 -2
  555. package/libs/src/PanoMeasurePlugin/Modules/DeleteDom/_Assets/delete_hover_bg.png.js +0 -2
  556. package/libs/src/PanoMeasurePlugin/Modules/DeleteDom/index.js +0 -190
  557. package/libs/src/PanoMeasurePlugin/Modules/FiveHelper.js +0 -48
  558. package/libs/src/PanoMeasurePlugin/Modules/GuideController.js +0 -110
  559. package/libs/src/PanoMeasurePlugin/Modules/Magnifier.js +0 -278
  560. package/libs/src/PanoMeasurePlugin/Modules/UIController/HTML.js +0 -128
  561. package/libs/src/PanoMeasurePlugin/Modules/UIController/MainBtnController.js +0 -126
  562. package/libs/src/PanoMeasurePlugin/Modules/UIController/Revoke/index.js +0 -73
  563. package/libs/src/PanoMeasurePlugin/Modules/UIController/index.js +0 -117
  564. package/libs/src/PanoMeasurePlugin/Modules/UIController/mobileHTML.js +0 -80
  565. package/libs/src/PanoMeasurePlugin/Modules/UIController/mobileMainBtnController.js +0 -98
  566. package/libs/src/PanoMeasurePlugin/Modules/UIController/style.js +0 -71
  567. package/libs/src/PanoMeasurePlugin/Modules/rangePiece/html.js +0 -64
  568. package/libs/src/PanoMeasurePlugin/Modules/rangePiece/index.js +0 -264
  569. package/libs/src/PanoMeasurePlugin/index.js +0 -7
  570. package/libs/src/PanoMeasurePlugin/typings/data.js +0 -1
  571. package/libs/src/PanoMeasurePlugin/typings/event.type.js +0 -1
  572. package/libs/src/PanoMeasurePlugin/typings/utils.type.js +0 -1
  573. package/libs/src/PanoMeasurePlugin/utils/calculateThreeMouse.js +0 -15
  574. package/libs/src/PanoMeasurePlugin/utils/clearGroup.js +0 -3
  575. package/libs/src/PanoMeasurePlugin/utils/constants.d.ts +0 -4
  576. package/libs/src/PanoMeasurePlugin/utils/constants.js +0 -31
  577. package/libs/src/PanoMeasurePlugin/utils/distanceDom.js +0 -120
  578. package/libs/src/PanoMeasurePlugin/utils/findAssociatedLines.js +0 -21
  579. package/libs/src/PanoMeasurePlugin/utils/findClosestPoint.js +0 -27
  580. package/libs/src/PanoMeasurePlugin/utils/getIntersectionFromEvent.js +0 -9
  581. package/libs/src/PanoMeasurePlugin/utils/getPointFromHammerEvent.js +0 -14
  582. package/libs/src/PanoMeasurePlugin/utils/ironbox.js +0 -1
  583. package/libs/src/PanoMeasurePlugin/utils/isNDCPointInScreen.js +0 -6
  584. package/libs/src/PanoMeasurePlugin/utils/line.js +0 -33
  585. package/libs/src/PanoMeasurePlugin/utils/math.js +0 -44
  586. package/libs/src/PanoMeasurePlugin/utils/mouseGroup.js +0 -69
  587. package/libs/src/PanoMeasurePlugin/utils/ndc2Screen.js +0 -6
  588. package/libs/src/PanoRulerPlugin/Plugin.js +0 -403
  589. package/libs/src/PanoRulerPlugin/index.js +0 -3
  590. package/libs/src/PanoRulerPlugin/style.js +0 -88
  591. package/libs/src/PanoRulerPlugin/typings.js +0 -1
  592. package/libs/src/PanoRulerProPlugin/Controller.js +0 -110
  593. package/libs/src/PanoRulerProPlugin/index.js +0 -8
  594. package/libs/src/PanoRulerProPlugin/typings.js +0 -1
  595. package/libs/src/PanoSpatialTagPlugin/Plugin.js +0 -426
  596. package/libs/src/PanoSpatialTagPlugin/index.js +0 -5
  597. package/libs/src/PanoSpatialTagPlugin/store.js +0 -2
  598. package/libs/src/PanoSpatialTagPlugin/style.js +0 -8
  599. package/libs/src/PanoSpatialTagPlugin/typings.js +0 -1
  600. package/libs/src/base/BasePlugin.js +0 -41
  601. package/libs/src/base/BasePluginWithData.js +0 -4
  602. package/libs/src/components/PaintBrush/Controller.js +0 -575
  603. package/libs/src/components/PaintBrush/Subscribe.js +0 -121
  604. package/libs/src/components/PaintBrush/index.js +0 -57
  605. package/libs/src/components/PaintBrush/style.js +0 -102
  606. package/libs/src/components/PaintBrush/tween.js +0 -15
  607. package/libs/src/components/PaintBrush/typings.js +0 -6
  608. package/libs/src/components/PaintBrush/utils.js +0 -51
  609. package/libs/src/components/index.js +0 -3
  610. package/libs/src/floorplan/Assets/camera.js +0 -1
  611. package/libs/src/floorplan/Assets/compass.js +0 -1
  612. package/libs/src/floorplan/Assets/floorplanExtraObject.js +0 -1
  613. package/libs/src/floorplan/ModelFloorplanPlugin/Controller.js +0 -701
  614. package/libs/src/floorplan/ModelFloorplanPlugin/index.js +0 -5
  615. package/libs/src/floorplan/ModelFloorplanPlugin/typing.js +0 -1
  616. package/libs/src/floorplan/PanoFloorplanRadarPlugin/Controller.js +0 -240
  617. package/libs/src/floorplan/PanoFloorplanRadarPlugin/index.js +0 -5
  618. package/libs/src/floorplan/PanoFloorplanRadarPlugin/typing.js +0 -1
  619. package/libs/src/floorplan/TopviewFloorplanPlugin/Controller.js +0 -486
  620. package/libs/src/floorplan/TopviewFloorplanPlugin/index.js +0 -5
  621. package/libs/src/floorplan/TopviewFloorplanPlugin/style.js +0 -8
  622. package/libs/src/floorplan/TopviewFloorplanPlugin/typing.js +0 -1
  623. package/libs/src/floorplan/constant.js +0 -6
  624. package/libs/src/floorplan/index.js +0 -7
  625. package/libs/src/floorplan/typings/floorplanData.js +0 -6
  626. package/libs/src/floorplan/typings/floorplanServerData.js +0 -101
  627. package/libs/src/floorplan/typings/utility.js +0 -1
  628. package/libs/src/floorplan/utils/constant.js +0 -23
  629. package/libs/src/floorplan/utils/correctFiveState.js +0 -46
  630. package/libs/src/floorplan/utils/formatData.js +0 -94
  631. package/libs/src/floorplan/utils/formatPosition.js +0 -50
  632. package/libs/src/index.d.ts +0 -16
  633. package/libs/src/index.js +0 -28
  634. package/libs/src/shared-utils/Preloader.js +0 -38
  635. package/libs/src/shared-utils/Subscribe.js +0 -108
  636. package/libs/src/shared-utils/animationFrame/BetterTween.js +0 -59
  637. package/libs/src/shared-utils/animationFrame/calculateProgress.js +0 -23
  638. package/libs/src/shared-utils/animationFrame/formatRad.js +0 -20
  639. package/libs/src/shared-utils/animationFrame/index.js +0 -48
  640. package/libs/src/shared-utils/animationFrame/tween.js +0 -44
  641. package/libs/src/shared-utils/changeModelCanvasOpacity.js +0 -15
  642. package/libs/src/shared-utils/createCanvasTextTexture.js +0 -20
  643. package/libs/src/shared-utils/createLine/index.js +0 -8
  644. package/libs/src/shared-utils/debounce.js +0 -14
  645. package/libs/src/shared-utils/equal.js +0 -84
  646. package/libs/src/shared-utils/filter.js +0 -53
  647. package/libs/src/shared-utils/five/changeMode.js +0 -36
  648. package/libs/src/shared-utils/formatRad.js +0 -10
  649. package/libs/src/shared-utils/getPxmm.js +0 -39
  650. package/libs/src/shared-utils/getRandomColor.js +0 -10
  651. package/libs/src/shared-utils/index.js +0 -1
  652. package/libs/src/shared-utils/isNil.js +0 -14
  653. package/libs/src/shared-utils/isTruelyObject.js +0 -20
  654. package/libs/src/shared-utils/logger.js +0 -47
  655. package/libs/src/shared-utils/math/Interval.js +0 -40
  656. package/libs/src/shared-utils/math/Rectangle.js +0 -50
  657. package/libs/src/shared-utils/math/evenNumber.js +0 -4
  658. package/libs/src/shared-utils/math/index.js +0 -2
  659. package/libs/src/shared-utils/math/planimetry.js +0 -288
  660. package/libs/src/shared-utils/math/rad2Deg.js +0 -3
  661. package/libs/src/shared-utils/nearlyEqual.js +0 -9
  662. package/libs/src/shared-utils/nextFrame.js +0 -6
  663. package/libs/src/shared-utils/noop.js +0 -7
  664. package/libs/src/shared-utils/object3d2LocalMatrix.js +0 -29
  665. package/libs/src/shared-utils/px2rem.js +0 -4
  666. package/libs/src/shared-utils/removeArrayItem.js +0 -12
  667. package/libs/src/shared-utils/tap.js +0 -12
  668. package/libs/src/shared-utils/three/centerPoint.js +0 -4
  669. package/libs/src/shared-utils/three/getExtraModelLoader.js +0 -18
  670. package/libs/src/shared-utils/three/getNormal.js +0 -6
  671. package/libs/src/shared-utils/three/getTextureLoader.js +0 -17
  672. package/libs/src/shared-utils/three/loadFbxObj.js +0 -13
  673. package/libs/src/shared-utils/three/loadTexture.js +0 -10
  674. package/libs/src/shared-utils/three/transformPositionToVector3.js +0 -3
  675. package/libs/src/shared-utils/three/transfromToMeshBasicMaterial.js +0 -15
  676. package/libs/src/shared-utils/throttle.js +0 -18
  677. package/libs/src/shared-utils/tinyEJSrender.js +0 -210
  678. package/libs/src/shared-utils/to.js +0 -18
  679. package/libs/src/shared-utils/uuid.js +0 -12
  680. package/libs/src/shared-utils/vectorTocoordinates.js +0 -9
  681. package/libs/src/typings/math.type.js +0 -1
  682. package/libs/src/typings/utils.type.js +0 -1
package/dist/index.umd.js CHANGED
@@ -478,11 +478,11 @@
478
478
 
479
479
  /* src/ModelRoomLabelPlugin/RoomLabelItem.svelte generated by Svelte v3.49.0 */
480
480
 
481
- function add_css$p(target) {
481
+ function add_css$q(target) {
482
482
  internal.append_styles(target, "svelte-877671", ".room-label-item.svelte-877671{position:absolute;font-size:0.41667rem;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.room-label-item__text.svelte-877671{position:absolute;left:0;top:-3.33333rem;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center;height:1.04167rem;min-width:1.66667rem;padding:0 0.3125rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap}.room-label-item__bar.svelte-877671{position:absolute;top:-2.29167rem;height:2.5rem;width:1px;background-image:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0))}.wide.svelte-877671{font-size:0.52083rem}");
483
483
  }
484
484
 
485
- function create_fragment$u(ctx) {
485
+ function create_fragment$v(ctx) {
486
486
  let div1;
487
487
  let span;
488
488
  let t0_value = /*roomLabel*/ ctx[0].name + "";
@@ -549,7 +549,7 @@
549
549
  };
550
550
  }
551
551
 
552
- function instance$u($$self, $$props, $$invalidate) {
552
+ function instance$v($$self, $$props, $$invalidate) {
553
553
  let { five } = $$props;
554
554
  let { roomLabel } = $$props;
555
555
 
@@ -572,7 +572,7 @@
572
572
  class RoomLabelItem extends internal.SvelteComponent {
573
573
  constructor(options) {
574
574
  super();
575
- internal.init(this, options, instance$u, create_fragment$u, internal.safe_not_equal, { five: 2, roomLabel: 0 }, add_css$p);
575
+ internal.init(this, options, instance$v, create_fragment$v, internal.safe_not_equal, { five: 2, roomLabel: 0 }, add_css$q);
576
576
  }
577
577
  }
578
578
 
@@ -580,7 +580,7 @@
580
580
 
581
581
  const { Map: Map_1 } = internal.globals;
582
582
 
583
- function add_css$o(target) {
583
+ function add_css$p(target) {
584
584
  internal.append_styles(target, "svelte-9eg4zi", ".room-labels-container.svelte-9eg4zi{width:100%;height:100%;position:relative;color:#fff}");
585
585
  }
586
586
 
@@ -639,7 +639,7 @@
639
639
  };
640
640
  }
641
641
 
642
- function create_fragment$t(ctx) {
642
+ function create_fragment$u(ctx) {
643
643
  let div;
644
644
  let each_blocks = [];
645
645
  let each_1_lookup = new Map_1();
@@ -711,7 +711,7 @@
711
711
  };
712
712
  }
713
713
 
714
- function instance$t($$self, $$props, $$invalidate) {
714
+ function instance$u($$self, $$props, $$invalidate) {
715
715
  let rendererSize;
716
716
  let { five } = $$props;
717
717
  let { roomLabels } = $$props;
@@ -836,7 +836,7 @@
836
836
  class RoomLabelItems extends internal.SvelteComponent {
837
837
  constructor(options) {
838
838
  super();
839
- internal.init(this, options, instance$t, create_fragment$t, internal.safe_not_equal, { five: 1, roomLabels: 0 }, add_css$o);
839
+ internal.init(this, options, instance$u, create_fragment$u, internal.safe_not_equal, { five: 1, roomLabels: 0 }, add_css$p);
840
840
  }
841
841
  }
842
842
 
@@ -1011,31 +1011,6 @@
1011
1011
  FLOOR_PLAN_ATTACHED_TO[FLOOR_PLAN_ATTACHED_TO["BOUNDING_CENTER"] = 3] = "BOUNDING_CENTER";
1012
1012
  })(exports.FLOOR_PLAN_ATTACHED_TO || (exports.FLOOR_PLAN_ATTACHED_TO = {}));
1013
1013
 
1014
- /******************************************************************************
1015
- Copyright (c) Microsoft Corporation.
1016
-
1017
- Permission to use, copy, modify, and/or distribute this software for any
1018
- purpose with or without fee is hereby granted.
1019
-
1020
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
1021
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
1022
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
1023
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
1024
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
1025
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
1026
- PERFORMANCE OF THIS SOFTWARE.
1027
- ***************************************************************************** */
1028
-
1029
- function __awaiter(thisArg, _arguments, P, generator) {
1030
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
1031
- return new (P || (P = Promise))(function (resolve, reject) {
1032
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
1033
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
1034
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
1035
- step((generator = generator.apply(thisArg, _arguments || [])).next());
1036
- });
1037
- }
1038
-
1039
1014
  /**
1040
1015
  * 检查一个值是否是狭义上的对象
1041
1016
  * @param {any} value 要检查的值
@@ -1149,11 +1124,11 @@
1149
1124
 
1150
1125
  /* src/floorplan/Components/Camera.svelte generated by Svelte v3.49.0 */
1151
1126
 
1152
- function add_css$n(target) {
1127
+ function add_css$o(target) {
1153
1128
  internal.append_styles(target, "svelte-17cl35n", ".floorplan__camera-position.svelte-17cl35n{position:absolute;width:0;height:0}.floorplan__camera-rotate.svelte-17cl35n{position:absolute;background-repeat:no-repeat;background-size:100%}");
1154
1129
  }
1155
1130
 
1156
- function create_fragment$s(ctx) {
1131
+ function create_fragment$t(ctx) {
1157
1132
  let div1;
1158
1133
  let div0;
1159
1134
 
@@ -1190,7 +1165,7 @@
1190
1165
  };
1191
1166
  }
1192
1167
 
1193
- function instance$s($$self, $$props, $$invalidate) {
1168
+ function instance$t($$self, $$props, $$invalidate) {
1194
1169
  let { panoIndex } = $$props;
1195
1170
  let { floorplanData } = $$props;
1196
1171
  let { lastPanoramaLongitude } = $$props;
@@ -1236,8 +1211,8 @@
1236
1211
  internal.init(
1237
1212
  this,
1238
1213
  options,
1239
- instance$s,
1240
- create_fragment$s,
1214
+ instance$t,
1215
+ create_fragment$t,
1241
1216
  internal.safe_not_equal,
1242
1217
  {
1243
1218
  panoIndex: 5,
@@ -1245,7 +1220,7 @@
1245
1220
  lastPanoramaLongitude: 7,
1246
1221
  cameraImageUrl: 0
1247
1222
  },
1248
- add_css$n
1223
+ add_css$o
1249
1224
  );
1250
1225
  }
1251
1226
  }
@@ -1254,7 +1229,7 @@
1254
1229
 
1255
1230
  /* src/floorplan/Components/Compass.svelte generated by Svelte v3.49.0 */
1256
1231
 
1257
- function add_css$m(target) {
1232
+ function add_css$n(target) {
1258
1233
  internal.append_styles(target, "svelte-z9kwkx", ".floorplan-plugin__compass.svelte-z9kwkx{position:absolute;left:50%;top:-2.39583rem;width:12.03125rem;height:2.13542rem;will-change:opacity;transform-origin:center 9.58333rem}.floorplan-plugin__compass-image.svelte-z9kwkx{width:100%;height:100%;position:absolute;left:0;top:0;opacity:0.1;background-repeat:no-repeat;background-size:100% 100%}.floorplan-plugin__compass-text.svelte-z9kwkx{position:absolute;left:50%;top:0.78125rem;transform:translateX(-50%);opacity:0.2;font-weight:bold;font-size:0.52083rem;color:#fff}");
1259
1234
  }
1260
1235
 
@@ -1295,7 +1270,7 @@
1295
1270
  };
1296
1271
  }
1297
1272
 
1298
- function create_fragment$r(ctx) {
1273
+ function create_fragment$s(ctx) {
1299
1274
  let if_block_anchor;
1300
1275
  let if_block = /*canCompassShow*/ ctx[1] && create_if_block$b(ctx);
1301
1276
 
@@ -1324,7 +1299,7 @@
1324
1299
  return rad / Math.PI * 180;
1325
1300
  }
1326
1301
 
1327
- function instance$r($$self, $$props, $$invalidate) {
1302
+ function instance$s($$self, $$props, $$invalidate) {
1328
1303
  var _a;
1329
1304
  let { floorplanData } = $$props;
1330
1305
  let { northDesc } = $$props;
@@ -1348,17 +1323,17 @@
1348
1323
  class Compass extends internal.SvelteComponent {
1349
1324
  constructor(options) {
1350
1325
  super();
1351
- internal.init(this, options, instance$r, create_fragment$r, internal.safe_not_equal, { floorplanData: 3, northDesc: 0 }, add_css$m);
1326
+ internal.init(this, options, instance$s, create_fragment$s, internal.safe_not_equal, { floorplanData: 3, northDesc: 0 }, add_css$n);
1352
1327
  }
1353
1328
  }
1354
1329
 
1355
1330
  /* src/floorplan/Components/Normalmage.svelte generated by Svelte v3.49.0 */
1356
1331
 
1357
- function add_css$l(target) {
1332
+ function add_css$m(target) {
1358
1333
  internal.append_styles(target, "svelte-1gfoniz", "img.svelte-1gfoniz{width:100%;height:100%}");
1359
1334
  }
1360
1335
 
1361
- function create_fragment$q(ctx) {
1336
+ function create_fragment$r(ctx) {
1362
1337
  let img;
1363
1338
  let img_src_value;
1364
1339
 
@@ -1385,7 +1360,7 @@
1385
1360
  };
1386
1361
  }
1387
1362
 
1388
- function instance$q($$self, $$props, $$invalidate) {
1363
+ function instance$r($$self, $$props, $$invalidate) {
1389
1364
  let { url } = $$props;
1390
1365
 
1391
1366
  $$self.$$set = $$props => {
@@ -1398,17 +1373,17 @@
1398
1373
  class Normalmage extends internal.SvelteComponent {
1399
1374
  constructor(options) {
1400
1375
  super();
1401
- internal.init(this, options, instance$q, create_fragment$q, internal.safe_not_equal, { url: 0 }, add_css$l);
1376
+ internal.init(this, options, instance$r, create_fragment$r, internal.safe_not_equal, { url: 0 }, add_css$m);
1402
1377
  }
1403
1378
  }
1404
1379
 
1405
1380
  /* src/floorplan/Components/SvgImage.svelte generated by Svelte v3.49.0 */
1406
1381
 
1407
- function add_css$k(target) {
1382
+ function add_css$l(target) {
1408
1383
  internal.append_styles(target, "svelte-ub47ya", ".floorplan-plugin__base-image.svelte-ub47ya{width:100%;height:100%}");
1409
1384
  }
1410
1385
 
1411
- function create_fragment$p(ctx) {
1386
+ function create_fragment$q(ctx) {
1412
1387
  let div;
1413
1388
  let html_tag;
1414
1389
  let t;
@@ -1441,7 +1416,7 @@
1441
1416
  };
1442
1417
  }
1443
1418
 
1444
- function instance$p($$self, $$props, $$invalidate) {
1419
+ function instance$q($$self, $$props, $$invalidate) {
1445
1420
  let { content } = $$props;
1446
1421
 
1447
1422
  const svgStyle = `
@@ -1465,18 +1440,18 @@
1465
1440
  class SvgImage extends internal.SvelteComponent {
1466
1441
  constructor(options) {
1467
1442
  super();
1468
- internal.init(this, options, instance$p, create_fragment$p, internal.safe_not_equal, { content: 0 }, add_css$k);
1443
+ internal.init(this, options, instance$q, create_fragment$q, internal.safe_not_equal, { content: 0 }, add_css$l);
1469
1444
  }
1470
1445
  }
1471
1446
 
1472
1447
  /* src/floorplan/Components/BaseImage.svelte generated by Svelte v3.49.0 */
1473
1448
 
1474
- function add_css$j(target) {
1449
+ function add_css$k(target) {
1475
1450
  internal.append_styles(target, "svelte-ozpg4a", ".floorplan-plugin__base-image.svelte-ozpg4a{position:absolute;z-index:10;width:100%;height:100%;pointer-events:none}");
1476
1451
  }
1477
1452
 
1478
1453
  // (13:22)
1479
- function create_if_block_1$5(ctx) {
1454
+ function create_if_block_1$6(ctx) {
1480
1455
  let normalimage;
1481
1456
  let current;
1482
1457
  normalimage = new Normalmage({ props: { url: /*imageData*/ ctx[1].url } });
@@ -1546,12 +1521,12 @@
1546
1521
  };
1547
1522
  }
1548
1523
 
1549
- function create_fragment$o(ctx) {
1524
+ function create_fragment$p(ctx) {
1550
1525
  let div;
1551
1526
  let current_block_type_index;
1552
1527
  let if_block;
1553
1528
  let current;
1554
- const if_block_creators = [create_if_block$a, create_if_block_1$5];
1529
+ const if_block_creators = [create_if_block$a, create_if_block_1$6];
1555
1530
  const if_blocks = [];
1556
1531
 
1557
1532
  function select_block_type(ctx, dirty) {
@@ -1634,7 +1609,7 @@
1634
1609
  };
1635
1610
  }
1636
1611
 
1637
- function instance$o($$self, $$props, $$invalidate) {
1612
+ function instance$p($$self, $$props, $$invalidate) {
1638
1613
  let imageData;
1639
1614
  let svgContent;
1640
1615
  var _a, _b;
@@ -1666,18 +1641,18 @@
1666
1641
  class BaseImage extends internal.SvelteComponent {
1667
1642
  constructor(options) {
1668
1643
  super();
1669
- internal.init(this, options, instance$o, create_fragment$o, internal.safe_not_equal, { floorIndex: 2, floorplanData: 3 }, add_css$j);
1644
+ internal.init(this, options, instance$p, create_fragment$p, internal.safe_not_equal, { floorIndex: 2, floorplanData: 3 }, add_css$k);
1670
1645
  }
1671
1646
  }
1672
1647
 
1673
1648
  /* src/floorplan/Components/RoomLabels/RoomLabel.svelte generated by Svelte v3.49.0 */
1674
1649
 
1675
- function add_css$i(target) {
1650
+ function add_css$j(target) {
1676
1651
  internal.append_styles(target, "svelte-12pzct5", ".floorplan-plugin__room-label-item.svelte-12pzct5{position:absolute;display:flex;flex-flow:column;align-items:center;line-height:1;color:#fff;transform:translate(-50%, -50%);white-space:nowrap;will-change:opacity;transition:opacity 300ms}.floorplan-plugin__room-size.svelte-12pzct5{opacity:0.45}");
1677
1652
  }
1678
1653
 
1679
1654
  // (95:30)
1680
- function create_if_block_1$4(ctx) {
1655
+ function create_if_block_1$5(ctx) {
1681
1656
  let html_tag;
1682
1657
  let raw_value = /*userConfigElement*/ ctx[4].outerHTML + "";
1683
1658
  let html_anchor;
@@ -1737,12 +1712,12 @@
1737
1712
  };
1738
1713
  }
1739
1714
 
1740
- function create_fragment$n(ctx) {
1715
+ function create_fragment$o(ctx) {
1741
1716
  let div;
1742
1717
 
1743
1718
  function select_block_type(ctx, dirty) {
1744
1719
  if (/*getLabelElement*/ ctx[1] === undefined) return create_if_block$9;
1745
- if (/*userConfigElement*/ ctx[4]) return create_if_block_1$4;
1720
+ if (/*userConfigElement*/ ctx[4]) return create_if_block_1$5;
1746
1721
  }
1747
1722
 
1748
1723
  let current_block_type = select_block_type(ctx);
@@ -1811,7 +1786,7 @@
1811
1786
  return inside;
1812
1787
  }
1813
1788
 
1814
- function instance$n($$self, $$props, $$invalidate) {
1789
+ function instance$o($$self, $$props, $$invalidate) {
1815
1790
  let isLabelInRoom;
1816
1791
  let userConfigElement;
1817
1792
  let labelVisible;
@@ -1955,8 +1930,8 @@
1955
1930
  internal.init(
1956
1931
  this,
1957
1932
  options,
1958
- instance$n,
1959
- create_fragment$n,
1933
+ instance$o,
1934
+ create_fragment$o,
1960
1935
  internal.safe_not_equal,
1961
1936
  {
1962
1937
  pxmm: 9,
@@ -1965,14 +1940,14 @@
1965
1940
  getLabelElement: 1,
1966
1941
  adaptiveRoomLabelVisibleEnable: 11
1967
1942
  },
1968
- add_css$i
1943
+ add_css$j
1969
1944
  );
1970
1945
  }
1971
1946
  }
1972
1947
 
1973
1948
  /* src/floorplan/Components/RoomLabels/RoomLabels.svelte generated by Svelte v3.49.0 */
1974
1949
 
1975
- function add_css$h(target) {
1950
+ function add_css$i(target) {
1976
1951
  internal.append_styles(target, "svelte-13xux0b", ".floorplan-plugin__room-labels.svelte-13xux0b{width:100%;height:100%;position:absolute;left:0;top:0;z-index:20;pointer-events:none}");
1977
1952
  }
1978
1953
 
@@ -2125,7 +2100,7 @@
2125
2100
  };
2126
2101
  }
2127
2102
 
2128
- function create_fragment$m(ctx) {
2103
+ function create_fragment$n(ctx) {
2129
2104
  let if_block_anchor;
2130
2105
  let current;
2131
2106
  let if_block = /*rooms*/ ctx[5] && create_if_block$8(ctx);
@@ -2180,7 +2155,7 @@
2180
2155
  };
2181
2156
  }
2182
2157
 
2183
- function instance$m($$self, $$props, $$invalidate) {
2158
+ function instance$n($$self, $$props, $$invalidate) {
2184
2159
  let rooms;
2185
2160
  let { floorIndex } = $$props;
2186
2161
  let { floorplanData } = $$props;
@@ -2237,8 +2212,8 @@
2237
2212
  internal.init(
2238
2213
  this,
2239
2214
  options,
2240
- instance$m,
2241
- create_fragment$m,
2215
+ instance$n,
2216
+ create_fragment$n,
2242
2217
  internal.safe_not_equal,
2243
2218
  {
2244
2219
  floorIndex: 6,
@@ -2247,14 +2222,14 @@
2247
2222
  getLabelElement: 1,
2248
2223
  adaptiveRoomLabelVisibleEnable: 2
2249
2224
  },
2250
- add_css$h
2225
+ add_css$i
2251
2226
  );
2252
2227
  }
2253
2228
  }
2254
2229
 
2255
2230
  /* src/floorplan/Components/RuleLabels/RuleItem.svelte generated by Svelte v3.49.0 */
2256
2231
 
2257
- function add_css$g(target) {
2232
+ function add_css$h(target) {
2258
2233
  internal.append_styles(target, "svelte-xt7p1v", ".floorplan-plugin__rule-labels.svelte-xt7p1v.svelte-xt7p1v{position:absolute;display:flex}.floorplan-plugin__rule-labels--top.svelte-xt7p1v.svelte-xt7p1v{left:0;top:-1.25rem}.floorplan-plugin__rule-labels--bottom.svelte-xt7p1v.svelte-xt7p1v{left:0;bottom:-1.25rem}.floorplan-plugin__rule-labels--left.svelte-xt7p1v.svelte-xt7p1v{top:0;left:-1.25rem}.floorplan-plugin__rule-labels--right.svelte-xt7p1v.svelte-xt7p1v{top:0;right:-1.25rem}.floorplan-plugin__rule-line.svelte-xt7p1v.svelte-xt7p1v{background:#fff;opacity:0.05;width:100%;height:100%}.floorplan-plugin__rule-scale-wrapper.svelte-xt7p1v.svelte-xt7p1v{position:absolute;width:0.3125rem;height:100%;left:50%;top:0;transform:translateX(-50%)}.floorplan-plugin__rule-labels.is-row.svelte-xt7p1v .floorplan-plugin__rule-scale-wrapper.svelte-xt7p1v{width:100%;height:0.3125rem;top:50%;left:0;transform:translateY(-50%)}.floorplan-plugin__rule-scale.svelte-xt7p1v.svelte-xt7p1v{position:absolute;background:#fff;opacity:0.05;width:100%;height:0.0625rem}.floorplan-plugin__rule-labels.is-row.svelte-xt7p1v .floorplan-plugin__rule-scale.svelte-xt7p1v{width:0.0625rem;height:100%}.floorplan-plugin__rule-text-wrapper.svelte-xt7p1v.svelte-xt7p1v{position:absolute}.floorplan-plugin__rule-labels--top.svelte-xt7p1v .floorplan-plugin__rule-text-wrapper.svelte-xt7p1v{width:100%;height:0;top:0.625rem}.floorplan-plugin__rule-labels--bottom.svelte-xt7p1v .floorplan-plugin__rule-text-wrapper.svelte-xt7p1v{width:100%;height:0;bottom:0.625rem}.floorplan-plugin__rule-labels--left.svelte-xt7p1v .floorplan-plugin__rule-text-wrapper.svelte-xt7p1v{width:0;height:100%;left:0.625rem}.floorplan-plugin__rule-labels--right.svelte-xt7p1v .floorplan-plugin__rule-text-wrapper.svelte-xt7p1v{width:0;height:100%;right:0.625rem}.floorplan-plugin__rule-text-item.svelte-xt7p1v.svelte-xt7p1v{width:0;height:0;position:absolute;transform:rotate(90deg)}.floorplan-plugin__rule-labels.is-row.svelte-xt7p1v .floorplan-plugin__rule-text-item.svelte-xt7p1v{transform:rotate(0)}.floorplan-plugin__rule-text.svelte-xt7p1v.svelte-xt7p1v{width:-webkit-max-content;width:-moz-max-content;width:max-content;transform:translate(-50%, -50%);font-size:0.625rem;color:#fff;opacity:0.2}");
2259
2234
  }
2260
2235
 
@@ -2330,7 +2305,7 @@
2330
2305
  };
2331
2306
  }
2332
2307
 
2333
- function create_fragment$l(ctx) {
2308
+ function create_fragment$m(ctx) {
2334
2309
  let div3;
2335
2310
  let div0;
2336
2311
  let t0;
@@ -2453,7 +2428,7 @@
2453
2428
  const padding$1 = 1000;
2454
2429
  const exteriorWallOffset$1 = 180;
2455
2430
 
2456
- function instance$l($$self, $$props, $$invalidate) {
2431
+ function instance$m($$self, $$props, $$invalidate) {
2457
2432
  let { type } = $$props;
2458
2433
  let { data } = $$props;
2459
2434
  let { bounding } = $$props;
@@ -2512,13 +2487,13 @@
2512
2487
  class RuleItem extends internal.SvelteComponent {
2513
2488
  constructor(options) {
2514
2489
  super();
2515
- internal.init(this, options, instance$l, create_fragment$l, internal.safe_not_equal, { type: 0, data: 4, bounding: 5 }, add_css$g);
2490
+ internal.init(this, options, instance$m, create_fragment$m, internal.safe_not_equal, { type: 0, data: 4, bounding: 5 }, add_css$h);
2516
2491
  }
2517
2492
  }
2518
2493
 
2519
2494
  /* src/floorplan/Components/RuleLabels/RuleLabels.svelte generated by Svelte v3.49.0 */
2520
2495
 
2521
- function add_css$f(target) {
2496
+ function add_css$g(target) {
2522
2497
  internal.append_styles(target, "svelte-1mzj9p3", ".floorplan-plugin__rule-labels-wrapper.svelte-1mzj9p3{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);pointer-events:none}");
2523
2498
  }
2524
2499
 
@@ -2595,7 +2570,7 @@
2595
2570
  };
2596
2571
  }
2597
2572
 
2598
- function create_fragment$k(ctx) {
2573
+ function create_fragment$l(ctx) {
2599
2574
  let div;
2600
2575
  let each_blocks = [];
2601
2576
  let each_1_lookup = new Map();
@@ -2675,7 +2650,7 @@
2675
2650
  const padding = 1000;
2676
2651
  const exteriorWallOffset = 180;
2677
2652
 
2678
- function instance$k($$self, $$props, $$invalidate) {
2653
+ function instance$l($$self, $$props, $$invalidate) {
2679
2654
  let bounding;
2680
2655
  let ruleLabelData;
2681
2656
  let ruleLabelDataKeys;
@@ -2755,7 +2730,7 @@
2755
2730
  class RuleLabels extends internal.SvelteComponent {
2756
2731
  constructor(options) {
2757
2732
  super();
2758
- internal.init(this, options, instance$k, create_fragment$k, internal.safe_not_equal, { floorIndex: 4, floorplanData: 5 }, add_css$f);
2733
+ internal.init(this, options, instance$l, create_fragment$l, internal.safe_not_equal, { floorIndex: 4, floorplanData: 5 }, add_css$g);
2759
2734
  }
2760
2735
  }
2761
2736
 
@@ -2812,7 +2787,7 @@
2812
2787
 
2813
2788
  /* src/floorplan/Components/RoomMaterials/RoomMaterial_0.svelte generated by Svelte v3.49.0 */
2814
2789
 
2815
- function create_fragment$j(ctx) {
2790
+ function create_fragment$k(ctx) {
2816
2791
  let path_1;
2817
2792
 
2818
2793
  return {
@@ -2837,7 +2812,7 @@
2837
2812
  };
2838
2813
  }
2839
2814
 
2840
- function instance$j($$self, $$props, $$invalidate) {
2815
+ function instance$k($$self, $$props, $$invalidate) {
2841
2816
  let d;
2842
2817
  let { path } = $$props;
2843
2818
 
@@ -2857,13 +2832,13 @@
2857
2832
  class RoomMaterial_0 extends internal.SvelteComponent {
2858
2833
  constructor(options) {
2859
2834
  super();
2860
- internal.init(this, options, instance$j, create_fragment$j, internal.safe_not_equal, { path: 1 });
2835
+ internal.init(this, options, instance$k, create_fragment$k, internal.safe_not_equal, { path: 1 });
2861
2836
  }
2862
2837
  }
2863
2838
 
2864
2839
  /* src/floorplan/Components/RoomMaterials/RoomMaterial_1.svelte generated by Svelte v3.49.0 */
2865
2840
 
2866
- function create_fragment$i(ctx) {
2841
+ function create_fragment$j(ctx) {
2867
2842
  let defs;
2868
2843
  let pattern;
2869
2844
  let rect;
@@ -2924,7 +2899,7 @@
2924
2899
 
2925
2900
  const halfWidth = 6;
2926
2901
 
2927
- function instance$i($$self, $$props, $$invalidate) {
2902
+ function instance$j($$self, $$props, $$invalidate) {
2928
2903
  let d;
2929
2904
  let { path } = $$props;
2930
2905
  const width = halfWidth * 2;
@@ -2946,13 +2921,13 @@
2946
2921
  class RoomMaterial_1 extends internal.SvelteComponent {
2947
2922
  constructor(options) {
2948
2923
  super();
2949
- internal.init(this, options, instance$i, create_fragment$i, internal.safe_not_equal, { path: 3 });
2924
+ internal.init(this, options, instance$j, create_fragment$j, internal.safe_not_equal, { path: 3 });
2950
2925
  }
2951
2926
  }
2952
2927
 
2953
2928
  /* src/floorplan/Components/RoomMaterials/RoomMaterial_2.svelte generated by Svelte v3.49.0 */
2954
2929
 
2955
- function create_fragment$h(ctx) {
2930
+ function create_fragment$i(ctx) {
2956
2931
  let defs;
2957
2932
  let pattern0;
2958
2933
  let rect0;
@@ -3053,7 +3028,7 @@
3053
3028
  };
3054
3029
  }
3055
3030
 
3056
- function instance$h($$self, $$props, $$invalidate) {
3031
+ function instance$i($$self, $$props, $$invalidate) {
3057
3032
  let d;
3058
3033
  let { path } = $$props;
3059
3034
 
@@ -3073,13 +3048,13 @@
3073
3048
  class RoomMaterial_2 extends internal.SvelteComponent {
3074
3049
  constructor(options) {
3075
3050
  super();
3076
- internal.init(this, options, instance$h, create_fragment$h, internal.safe_not_equal, { path: 1 });
3051
+ internal.init(this, options, instance$i, create_fragment$i, internal.safe_not_equal, { path: 1 });
3077
3052
  }
3078
3053
  }
3079
3054
 
3080
3055
  /* src/floorplan/Components/RoomMaterials/RoomMaterial.svelte generated by Svelte v3.49.0 */
3081
3056
 
3082
- function add_css$e(target) {
3057
+ function add_css$f(target) {
3083
3058
  internal.append_styles(target, "svelte-1dykexu", ".floorplan-plugin__room-material.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%}svg.svelte-1dykexu{position:absolute;left:0;top:0;width:100%;height:100%;overflow:visible}");
3084
3059
  }
3085
3060
 
@@ -3090,7 +3065,7 @@
3090
3065
  }
3091
3066
 
3092
3067
  // (19:6) {:else}
3093
- function create_else_block$1(ctx) {
3068
+ function create_else_block$2(ctx) {
3094
3069
  let roommaterial_1;
3095
3070
  let current;
3096
3071
  roommaterial_1 = new RoomMaterial_1({ props: { path: /*room*/ ctx[5].path } });
@@ -3124,7 +3099,7 @@
3124
3099
  }
3125
3100
 
3126
3101
  // (17:37)
3127
- function create_if_block_1$3(ctx) {
3102
+ function create_if_block_1$4(ctx) {
3128
3103
  let roommaterial_2;
3129
3104
  let current;
3130
3105
  roommaterial_2 = new RoomMaterial_2({ props: { path: /*room*/ ctx[5].path } });
@@ -3197,7 +3172,7 @@
3197
3172
  let current_block_type_index;
3198
3173
  let if_block;
3199
3174
  let current;
3200
- const if_block_creators = [create_if_block$7, create_if_block_1$3, create_else_block$1];
3175
+ const if_block_creators = [create_if_block$7, create_if_block_1$4, create_else_block$2];
3201
3176
  const if_blocks = [];
3202
3177
 
3203
3178
  function select_block_type(ctx, dirty) {
@@ -3266,7 +3241,7 @@
3266
3241
  };
3267
3242
  }
3268
3243
 
3269
- function create_fragment$g(ctx) {
3244
+ function create_fragment$h(ctx) {
3270
3245
  let div;
3271
3246
  let current;
3272
3247
  let each_value = /*rooms*/ ctx[0];
@@ -3352,7 +3327,7 @@
3352
3327
  };
3353
3328
  }
3354
3329
 
3355
- function instance$g($$self, $$props, $$invalidate) {
3330
+ function instance$h($$self, $$props, $$invalidate) {
3356
3331
  let rooms;
3357
3332
  let { floorIndex } = $$props;
3358
3333
  let { floorplanData } = $$props;
@@ -3378,17 +3353,17 @@
3378
3353
  class RoomMaterial extends internal.SvelteComponent {
3379
3354
  constructor(options) {
3380
3355
  super();
3381
- internal.init(this, options, instance$g, create_fragment$g, internal.safe_not_equal, { floorIndex: 3, floorplanData: 4 }, add_css$e);
3356
+ internal.init(this, options, instance$h, create_fragment$h, internal.safe_not_equal, { floorIndex: 3, floorplanData: 4 }, add_css$f);
3382
3357
  }
3383
3358
  }
3384
3359
 
3385
3360
  /* src/floorplan/Components/RoomHighlight/Room.svelte generated by Svelte v3.49.0 */
3386
3361
 
3387
- function add_css$d(target) {
3362
+ function add_css$e(target) {
3388
3363
  internal.append_styles(target, "svelte-19uvvss", "path.svelte-19uvvss{opacity:0}path.svelte-19uvvss:hover{opacity:0.1}");
3389
3364
  }
3390
3365
 
3391
- function create_fragment$f(ctx) {
3366
+ function create_fragment$g(ctx) {
3392
3367
  let path;
3393
3368
  let mounted;
3394
3369
  let dispose;
@@ -3423,7 +3398,7 @@
3423
3398
  };
3424
3399
  }
3425
3400
 
3426
- function instance$f($$self, $$props, $$invalidate) {
3401
+ function instance$g($$self, $$props, $$invalidate) {
3427
3402
  let { room } = $$props;
3428
3403
  let { floorplanData } = $$props;
3429
3404
  let { hoveredRoom } = $$props;
@@ -3459,22 +3434,22 @@
3459
3434
  internal.init(
3460
3435
  this,
3461
3436
  options,
3462
- instance$f,
3463
- create_fragment$f,
3437
+ instance$g,
3438
+ create_fragment$g,
3464
3439
  internal.safe_not_equal,
3465
3440
  {
3466
3441
  room: 3,
3467
3442
  floorplanData: 4,
3468
3443
  hoveredRoom: 5
3469
3444
  },
3470
- add_css$d
3445
+ add_css$e
3471
3446
  );
3472
3447
  }
3473
3448
  }
3474
3449
 
3475
3450
  /* src/floorplan/Components/RoomHighlight/RoomHighlight.svelte generated by Svelte v3.49.0 */
3476
3451
 
3477
- function add_css$c(target) {
3452
+ function add_css$d(target) {
3478
3453
  internal.append_styles(target, "svelte-1kqo6e4", ".floorplan-plugin__room-highlight.svelte-1kqo6e4{position:absolute;width:100%;height:100%}svg.svelte-1kqo6e4{width:100%;height:100%;overflow:visible}");
3479
3454
  }
3480
3455
 
@@ -3550,7 +3525,7 @@
3550
3525
  };
3551
3526
  }
3552
3527
 
3553
- function create_fragment$e(ctx) {
3528
+ function create_fragment$f(ctx) {
3554
3529
  let div;
3555
3530
  let svg;
3556
3531
  let each_blocks = [];
@@ -3624,7 +3599,7 @@
3624
3599
  };
3625
3600
  }
3626
3601
 
3627
- function instance$e($$self, $$props, $$invalidate) {
3602
+ function instance$f($$self, $$props, $$invalidate) {
3628
3603
  let { floorIndex } = $$props;
3629
3604
  let { floorplanData } = $$props;
3630
3605
  let { hoveredRoom } = $$props;
@@ -3647,22 +3622,22 @@
3647
3622
  internal.init(
3648
3623
  this,
3649
3624
  options,
3650
- instance$e,
3651
- create_fragment$e,
3625
+ instance$f,
3626
+ create_fragment$f,
3652
3627
  internal.safe_not_equal,
3653
3628
  {
3654
3629
  floorIndex: 0,
3655
3630
  floorplanData: 1,
3656
3631
  hoveredRoom: 2
3657
3632
  },
3658
- add_css$c
3633
+ add_css$d
3659
3634
  );
3660
3635
  }
3661
3636
  }
3662
3637
 
3663
3638
  /* src/floorplan/Components/CurrentFloor.svelte generated by Svelte v3.49.0 */
3664
3639
 
3665
- function add_css$b(target) {
3640
+ function add_css$c(target) {
3666
3641
  internal.append_styles(target, "svelte-bl8zrz", ".floorplan-plugin__floor.svelte-bl8zrz{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;pointer-events:none}.floorplan-plugin__floor--is-current.svelte-bl8zrz{opacity:1;pointer-events:auto}");
3667
3642
  }
3668
3643
 
@@ -3724,7 +3699,7 @@
3724
3699
  }
3725
3700
 
3726
3701
  // (24:2) {#if roomLabelsEnable}
3727
- function create_if_block_1$2(ctx) {
3702
+ function create_if_block_1$3(ctx) {
3728
3703
  let roomlabels;
3729
3704
  let current;
3730
3705
 
@@ -3839,7 +3814,7 @@
3839
3814
  };
3840
3815
  }
3841
3816
 
3842
- function create_fragment$d(ctx) {
3817
+ function create_fragment$e(ctx) {
3843
3818
  let div;
3844
3819
  let roommaterial;
3845
3820
  let t0;
@@ -3880,7 +3855,7 @@
3880
3855
  }
3881
3856
 
3882
3857
  baseimage = new BaseImage({ props: baseimage_props });
3883
- let if_block1 = /*roomLabelsEnable*/ ctx[3] && create_if_block_1$2(ctx);
3858
+ let if_block1 = /*roomLabelsEnable*/ ctx[3] && create_if_block_1$3(ctx);
3884
3859
  let if_block2 = /*ruleLabelsEnable*/ ctx[4] && create_if_block$6(ctx);
3885
3860
 
3886
3861
  return {
@@ -3967,7 +3942,7 @@
3967
3942
  internal.transition_in(if_block1, 1);
3968
3943
  }
3969
3944
  } else {
3970
- if_block1 = create_if_block_1$2(ctx);
3945
+ if_block1 = create_if_block_1$3(ctx);
3971
3946
  if_block1.c();
3972
3947
  internal.transition_in(if_block1, 1);
3973
3948
  if_block1.m(div, t3);
@@ -4039,7 +4014,7 @@
4039
4014
  };
4040
4015
  }
4041
4016
 
4042
- function instance$d($$self, $$props, $$invalidate) {
4017
+ function instance$e($$self, $$props, $$invalidate) {
4043
4018
  let { isCurrent } = $$props;
4044
4019
  let { floorIndex } = $$props;
4045
4020
  let { hoverEnable } = $$props;
@@ -4081,8 +4056,8 @@
4081
4056
  internal.init(
4082
4057
  this,
4083
4058
  options,
4084
- instance$d,
4085
- create_fragment$d,
4059
+ instance$e,
4060
+ create_fragment$e,
4086
4061
  internal.safe_not_equal,
4087
4062
  {
4088
4063
  isCurrent: 0,
@@ -4094,14 +4069,14 @@
4094
4069
  getLabelElement: 6,
4095
4070
  adaptiveRoomLabelVisibleEnable: 7
4096
4071
  },
4097
- add_css$b
4072
+ add_css$c
4098
4073
  );
4099
4074
  }
4100
4075
  }
4101
4076
 
4102
4077
  /* src/floorplan/Components/Main.svelte generated by Svelte v3.49.0 */
4103
4078
 
4104
- function add_css$a(target) {
4079
+ function add_css$b(target) {
4105
4080
  internal.append_styles(target, "svelte-86bqav", ".floorplan-main.svelte-86bqav{width:100%;height:100%;pointer-events:none}");
4106
4081
  }
4107
4082
 
@@ -4146,7 +4121,7 @@
4146
4121
  }
4147
4122
 
4148
4123
  camera = new Camera$1({ props: camera_props });
4149
- let if_block = /*compassEnable*/ ctx[6] && create_if_block_1$1(ctx);
4124
+ let if_block = /*compassEnable*/ ctx[6] && create_if_block_1$2(ctx);
4150
4125
 
4151
4126
  return {
4152
4127
  c() {
@@ -4226,7 +4201,7 @@
4226
4201
  internal.transition_in(if_block, 1);
4227
4202
  }
4228
4203
  } else {
4229
- if_block = create_if_block_1$1(ctx);
4204
+ if_block = create_if_block_1$2(ctx);
4230
4205
  if_block.c();
4231
4206
  internal.transition_in(if_block, 1);
4232
4207
  if_block.m(div, null);
@@ -4360,7 +4335,7 @@
4360
4335
  }
4361
4336
 
4362
4337
  // (39:4) {#if compassEnable}
4363
- function create_if_block_1$1(ctx) {
4338
+ function create_if_block_1$2(ctx) {
4364
4339
  let compass;
4365
4340
  let current;
4366
4341
 
@@ -4400,7 +4375,7 @@
4400
4375
  };
4401
4376
  }
4402
4377
 
4403
- function create_fragment$c(ctx) {
4378
+ function create_fragment$d(ctx) {
4404
4379
  let if_block_anchor;
4405
4380
  let current;
4406
4381
  let if_block = /*visible*/ ctx[1] && create_if_block$5(ctx);
@@ -4455,7 +4430,7 @@
4455
4430
  };
4456
4431
  }
4457
4432
 
4458
- function instance$c($$self, $$props, $$invalidate) {
4433
+ function instance$d($$self, $$props, $$invalidate) {
4459
4434
  let { duration = 0 } = $$props;
4460
4435
  let { visible } = $$props;
4461
4436
  let { northDesc } = $$props;
@@ -4513,8 +4488,8 @@
4513
4488
  internal.init(
4514
4489
  this,
4515
4490
  options,
4516
- instance$c,
4517
- create_fragment$c,
4491
+ instance$d,
4492
+ create_fragment$d,
4518
4493
  internal.safe_not_equal,
4519
4494
  {
4520
4495
  duration: 0,
@@ -4532,33 +4507,29 @@
4532
4507
  getLabelElement: 12,
4533
4508
  adaptiveRoomLabelVisibleEnable: 13
4534
4509
  },
4535
- add_css$a
4510
+ add_css$b
4536
4511
  );
4537
4512
  }
4538
4513
  }
4539
4514
 
4540
4515
  const FLOORPLAN_EXTRA_OBJECT_IMAGE = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC0AAAAwCAYAAACFUvPfAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAALaADAAQAAAABAAAAMAAAAADe2FZjAAAEF0lEQVRoBe2WzWskRRiHf13V092TxI2oEzYeVDwITtyDuCiihwiCePGgxIM3vYgHL4J4UIhBRA8i/gPqyUvWg7AiIuIeloDiYUHJLOK6BPwIk9nNODM9Xf1RVe1b3elJRjCZmQ6euqGmuqer33rq4e23GqiOykBloDJQGagMVAYqA5WBykBlYFYD1qwP/tdzaZqOx9zYOLxeX0+L5yzLGp0X/03a25MOnGRcBtx+6Rlo9SL08G4EooFnxa8Yiivox5/h5Ys/4cl7NVorNDRnngX+0MIkVMeMSf23zyKML8J7/Dy8hwF2Buh9CnS+AEQIdLspBuGb+M7/qLW4qJrNpsLapjYhpwVnx3BMfCtNNx3Etc9xywvnMf80wG8HmQainw0RxSGrnmeBp+8k5/j9S0HbvXb5io0Lz880/0wPHV1NlhLd316He+4xOCv5ragF7L9PrH1qBJyB0626x/lC+qrSvH5r/W+n1WpxUM5nMY4GPeH8lHJaPgfeAFQHCL+ntkXT+vnUc3W6pvTIwC0wy3rA4dwLmK2avZ7Eo9uKBuYJfgJscbs8dLCxDMt+EOEPBEZNEWyBYHqTz6bPXrzUnNrSShxHIsYiOL69zrCGLLcLqJP68tB+9w5wj+YhWDafQ2s61wNqxjZhmrQ2pvMFCEvXuCUZ7wqH794ZWs28LJqlTXSUyuksF2M/yOwqgkx2c1ADa4wLAQRk2sAGQQakhN6yFC2hltfz5kSY44NKQeeh+vtI/SSzWhg2CzCgmWISmKUGmaYFBDfCSymnfxJ6/+ospVcWOLLp5DGP/y0P/Rp66O99DQNq7Po3Ds0a0wY+My2QSv2N2mO/OyxR2o6UQk+Lv7yJ06JYSnnolZVU9cUn2O9SmaMWGFBqYXRwbqAJWIi94TX5biotpcGl1DXZ6LnqIbNDTnmUgi52Mv5l5ysMxIcZcGjy2DTK4ZHlcBC14zeSge4qphICjj3bS0A7o9nSp2TOkm7aZ8bGZy/jxhO87V91G0+dfY/Z7BWIIK9KYUi5qy/Hf8YfBG3sqJTHiQWhmTVkbip+wX3x6volVSx+LPAxF+VLXhZ8VQ+iP2Rta/iWe5v42Fngj0BbdnRTXh12ZIcKhTaGbcYjybRwXBU1lu9KlndXp04NM52poKWO0RZsviNaP9a6grkO972+st05pXhE5c1hTEluJy7XUejGUQNLMbAmTdWY1rKBLW3aTJqBZ7nZkb36DhYCreeYHbMUXHvaYi5XDK70EcgulmRjm77wNtenzuXCbmnTRaAx493rbGf3Jr/njMzj920CnKdUaFCjlDioy7NYNvOdGrQJNgI32/L2tkXfFPlxgToqjWVhD6KdLnQRdARf/HHQz2r2X2Gqy8pAZaAyUBmoDFQGKgP/q4F/AJYg9/s0ZoABAAAAAElFTkSuQmCC';
4541
4516
 
4542
- function formatOutlines(outlines) {
4543
- return __awaiter(this, void 0, void 0, function* () {
4544
- const headers = new Headers({ 'Content-Type': 'text/plain' });
4545
- const getOutlineItem = function (item) {
4546
- return __awaiter(this, void 0, void 0, function* () {
4547
- const outlineItem = {
4548
- index: item.index,
4549
- url: item.url,
4550
- svgUrl: item.svg_url,
4551
- };
4552
- if (item.svg_url) {
4553
- const svgContent = yield fetch(item.svg_url, { headers }).then((res) => res.text());
4554
- outlineItem.svgContent = svgContent;
4555
- }
4556
- return outlineItem;
4557
- });
4517
+ async function formatOutlines(outlines) {
4518
+ const headers = new Headers({ 'Content-Type': 'text/plain' });
4519
+ const getOutlineItem = async function (item) {
4520
+ const outlineItem = {
4521
+ index: item.index,
4522
+ url: item.url,
4523
+ svgUrl: item.svg_url,
4558
4524
  };
4559
- const svgOutlineItems = yield Promise.all(outlines.map(getOutlineItem));
4560
- return svgOutlineItems;
4561
- });
4525
+ if (item.svg_url) {
4526
+ const svgContent = await fetch(item.svg_url, { headers }).then((res) => res.text());
4527
+ outlineItem.svgContent = svgContent;
4528
+ }
4529
+ return outlineItem;
4530
+ };
4531
+ const svgOutlineItems = await Promise.all(outlines.map(getOutlineItem));
4532
+ return svgOutlineItems;
4562
4533
  }
4563
4534
  function formatRoom(data) {
4564
4535
  const floorplanRoomItem = {
@@ -4604,21 +4575,19 @@
4604
4575
  };
4605
4576
  return floorplanEntrance;
4606
4577
  }
4607
- function formatData(data) {
4608
- return __awaiter(this, void 0, void 0, function* () {
4609
- const outlines = yield formatOutlines(data.outlines);
4610
- const bounding = data.computed_data.bounding;
4611
- const floorDatas = data.computed_data.floor_datas.map(formatFloorData);
4612
- const entrance = data.computed_data.entrance ? formatFloorplanEntrance(data.computed_data.entrance) : null;
4613
- const floorplanData = {
4614
- outlines,
4615
- entrance,
4616
- bounding,
4617
- floorDatas,
4618
- observers: data.computed_data.observers.map(formateFloorplanObserver),
4619
- };
4620
- return floorplanData;
4621
- });
4578
+ async function formatData(data) {
4579
+ const outlines = await formatOutlines(data.outlines);
4580
+ const bounding = data.computed_data.bounding;
4581
+ const floorDatas = data.computed_data.floor_datas.map(formatFloorData);
4582
+ const entrance = data.computed_data.entrance ? formatFloorplanEntrance(data.computed_data.entrance) : null;
4583
+ const floorplanData = {
4584
+ outlines,
4585
+ entrance,
4586
+ bounding,
4587
+ floorDatas,
4588
+ observers: data.computed_data.observers.map(formateFloorplanObserver),
4589
+ };
4590
+ return floorplanData;
4622
4591
  }
4623
4592
  function formatExtraObjects(data, five, floorplanData) {
4624
4593
  const extraObjects = data.map((object) => {
@@ -4713,37 +4682,35 @@
4713
4682
  /** 等待 five changeMode 结束
4714
4683
  * @description Promise 的状态只代表 mode 与预期是否一致,不保证参数的一致性
4715
4684
  */
4716
- function changeMode(five, changeModeParams) {
4717
- return __awaiter(this, void 0, void 0, function* () {
4718
- yield new Promise((resolve, reject) => {
4719
- // 虽然 changeMode 是异步函数,但不代表异步流程结束代表切换 Mode 动画结束
4720
- five.changeMode(...changeModeParams).catch((error) => reject(error));
4721
- five.once('initAnimationEnded', () => {
4722
- const fiveCurrentState = five.getCurrentState();
4723
- const correctMode = changeModeParams[0];
4724
- if (fiveCurrentState.mode !== correctMode)
4725
- reject(new Error('mode 与预期不符'));
4726
- /** 检测当前的 current pose 和传入的 pose 是否一致 */
4727
- const checkPose = () => {
4728
- const correctPose = changeModeParams[1];
4729
- if (!correctPose)
4685
+ async function changeMode(five, changeModeParams) {
4686
+ await new Promise((resolve, reject) => {
4687
+ // 虽然 changeMode 是异步函数,但不代表异步流程结束代表切换 Mode 动画结束
4688
+ five.changeMode(...changeModeParams).catch((error) => reject(error));
4689
+ five.once('initAnimationEnded', () => {
4690
+ const fiveCurrentState = five.getCurrentState();
4691
+ const correctMode = changeModeParams[0];
4692
+ if (fiveCurrentState.mode !== correctMode)
4693
+ reject(new Error('mode 与预期不符'));
4694
+ /** 检测当前的 current pose 和传入的 pose 是否一致 */
4695
+ const checkPose = () => {
4696
+ const correctPose = changeModeParams[1];
4697
+ if (!correctPose)
4698
+ return true;
4699
+ return Object.keys(correctPose).every((key) => {
4700
+ const fivePoseItem = fiveCurrentState[key];
4701
+ if (fivePoseItem === undefined)
4730
4702
  return true;
4731
- return Object.keys(correctPose).every((key) => {
4732
- const fivePoseItem = fiveCurrentState[key];
4733
- if (fivePoseItem === undefined)
4734
- return true;
4735
- const correctPoseItem = correctPose[key];
4736
- if (typeof fivePoseItem === 'number' && typeof correctPoseItem === 'number') {
4737
- return nearlyEqual(fivePoseItem, correctPoseItem, 2);
4738
- }
4739
- return fivePoseItem === correctPoseItem;
4740
- });
4741
- };
4742
- const checkPoseResult = checkPose();
4743
- if (!checkPoseResult)
4744
- reject(new Error('five pose 与预期不符'));
4745
- resolve();
4746
- });
4703
+ const correctPoseItem = correctPose[key];
4704
+ if (typeof fivePoseItem === 'number' && typeof correctPoseItem === 'number') {
4705
+ return nearlyEqual(fivePoseItem, correctPoseItem, 2);
4706
+ }
4707
+ return fivePoseItem === correctPoseItem;
4708
+ });
4709
+ };
4710
+ const checkPoseResult = checkPose();
4711
+ if (!checkPoseResult)
4712
+ reject(new Error('five pose 与预期不符'));
4713
+ resolve();
4747
4714
  });
4748
4715
  });
4749
4716
  }
@@ -5090,24 +5057,22 @@
5090
5057
  five.once('dispose', this.dispose);
5091
5058
  this.addEventListener();
5092
5059
  }
5093
- load(serverData, state, userAction = true) {
5094
- return __awaiter(this, void 0, void 0, function* () {
5095
- function isPluginServerData(serverData) {
5096
- return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
5097
- }
5098
- const _data = serverData;
5099
- if (_data && !_data.version)
5100
- console.warn('传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数');
5101
- const copyData = JSON.parse(JSON.stringify(serverData));
5102
- const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
5103
- const prevData = this.data;
5104
- this.data = yield formatData(_serverData);
5105
- this.hooks.emit('dataLoaded', this.data);
5106
- this.hooks.emit('dataChange', this.data, prevData);
5107
- if (state)
5108
- this.updateState(state, userAction);
5109
- this.render();
5110
- });
5060
+ async load(serverData, state, userAction = true) {
5061
+ function isPluginServerData(serverData) {
5062
+ return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
5063
+ }
5064
+ const _data = serverData;
5065
+ if (_data && !_data.version)
5066
+ console.warn('传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数');
5067
+ const copyData = JSON.parse(JSON.stringify(serverData));
5068
+ const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
5069
+ const prevData = this.data;
5070
+ this.data = await formatData(_serverData);
5071
+ this.hooks.emit('dataLoaded', this.data);
5072
+ this.hooks.emit('dataChange', this.data, prevData);
5073
+ if (state)
5074
+ this.updateState(state, userAction);
5075
+ this.render();
5111
5076
  }
5112
5077
  /** 更新户型图位置 */
5113
5078
  updatePosition() {
@@ -5132,25 +5097,21 @@
5132
5097
  this.render();
5133
5098
  return this;
5134
5099
  }
5135
- show(options = {}) {
5136
- return __awaiter(this, void 0, void 0, function* () {
5137
- // 已经展示完成了,不做任何操作
5138
- if (this.state.visible)
5139
- return;
5140
- const userAction = options.userAction !== undefined ? options.userAction : true;
5141
- this.updateState({ visible: true }, userAction);
5142
- this._show({ userAction });
5143
- });
5100
+ async show(options = {}) {
5101
+ // 已经展示完成了,不做任何操作
5102
+ if (this.state.visible)
5103
+ return;
5104
+ const userAction = options.userAction !== undefined ? options.userAction : true;
5105
+ this.updateState({ visible: true }, userAction);
5106
+ this._show({ userAction });
5144
5107
  }
5145
- hide(options = {}) {
5146
- return __awaiter(this, void 0, void 0, function* () {
5147
- this.isHiddenByHideFunc = true;
5148
- if (!this.state.visible)
5149
- return;
5150
- const userAction = options.userAction !== undefined ? options.userAction : true;
5151
- this.updateState({ visible: false }, userAction);
5152
- this._hide({ userAction });
5153
- });
5108
+ async hide(options = {}) {
5109
+ this.isHiddenByHideFunc = true;
5110
+ if (!this.state.visible)
5111
+ return;
5112
+ const userAction = options.userAction !== undefined ? options.userAction : true;
5113
+ this.updateState({ visible: false }, userAction);
5114
+ this._hide({ userAction });
5154
5115
  }
5155
5116
  enable(options = {}) {
5156
5117
  if (this.state.enabled)
@@ -5180,42 +5141,36 @@
5180
5141
  state.visible ? this._show(options) : this._hide(options);
5181
5142
  }
5182
5143
  }
5183
- formatData(serverData) {
5184
- return __awaiter(this, void 0, void 0, function* () {
5185
- return yield formatData(serverData.data);
5186
- });
5144
+ async formatData(serverData) {
5145
+ return await formatData(serverData.data);
5187
5146
  }
5188
- _show(options) {
5189
- return __awaiter(this, void 0, void 0, function* () {
5190
- if (!this.state.enabled)
5191
- return;
5192
- this.isHiddenByHideFunc = false;
5193
- const { userAction } = options;
5194
- this.hooks.emit('show', { userAction });
5195
- if (this.five.getCurrentState().mode !== 'Topview') {
5196
- yield changeMode(this.five, ['Topview', undefined, undefined, userAction]);
5197
- }
5198
- this.five.model.show(this.floorIndex);
5199
- this.updatePosition();
5200
- this.updateSize();
5201
- const renderDuration = 500;
5202
- const modelOpacity = this.state.config.modelOpacity;
5203
- changeModelCanvasOpacity(this.five, modelOpacity, renderDuration);
5204
- this.hooks.emit('showAnimationEnded', { userAction });
5205
- this.render();
5206
- });
5147
+ async _show(options) {
5148
+ if (!this.state.enabled)
5149
+ return;
5150
+ this.isHiddenByHideFunc = false;
5151
+ const { userAction } = options;
5152
+ this.hooks.emit('show', { userAction });
5153
+ if (this.five.getCurrentState().mode !== 'Topview') {
5154
+ await changeMode(this.five, ['Topview', undefined, undefined, userAction]);
5155
+ }
5156
+ this.five.model.show(this.floorIndex);
5157
+ this.updatePosition();
5158
+ this.updateSize();
5159
+ const renderDuration = 500;
5160
+ const modelOpacity = this.state.config.modelOpacity;
5161
+ changeModelCanvasOpacity(this.five, modelOpacity, renderDuration);
5162
+ this.hooks.emit('showAnimationEnded', { userAction });
5163
+ this.render();
5207
5164
  }
5208
- _hide(options) {
5209
- return __awaiter(this, void 0, void 0, function* () {
5210
- if (!this.state.enabled)
5211
- return;
5212
- const { userAction } = options;
5213
- this.hooks.emit('hide', { userAction });
5214
- const modelOpacity = 1;
5215
- const renderDuration = 0;
5216
- changeModelCanvasOpacity(this.five, modelOpacity, renderDuration);
5217
- this.render();
5218
- });
5165
+ async _hide(options) {
5166
+ if (!this.state.enabled)
5167
+ return;
5168
+ const { userAction } = options;
5169
+ this.hooks.emit('hide', { userAction });
5170
+ const modelOpacity = 1;
5171
+ const renderDuration = 0;
5172
+ changeModelCanvasOpacity(this.five, modelOpacity, renderDuration);
5173
+ this.render();
5219
5174
  }
5220
5175
  _enable(options) {
5221
5176
  const { userAction } = options;
@@ -5315,11 +5270,11 @@
5315
5270
 
5316
5271
  /* src/floorplan/PanoFloorplanRadarPlugin/Components/Camera.svelte generated by Svelte v3.49.0 */
5317
5272
 
5318
- function add_css$9(target) {
5273
+ function add_css$a(target) {
5319
5274
  internal.append_styles(target, "svelte-1ty3s4p", ".plugin-radar__camera-wrapper.svelte-1ty3s4p{width:100%;height:100%;position:absolute;pointer-events:none}.plugin-radar__camera-position.svelte-1ty3s4p{position:absolute;left:0;top:0;width:0;height:0;transform:none;pointer-events:none;transition:transform 1s linear}.plugin-radar__camera-rotate.svelte-1ty3s4p{position:absolute;left:-0.78125rem;top:-0.78125rem;width:0.88542rem;height:0.88542rem;transform-origin:0.78125rem 0.78125rem;transform:rotate(45deg);background-repeat:no-repeat;background-size:100%}");
5320
5275
  }
5321
5276
 
5322
- function create_fragment$b(ctx) {
5277
+ function create_fragment$c(ctx) {
5323
5278
  let div2;
5324
5279
  let div1;
5325
5280
  let div0;
@@ -5369,7 +5324,7 @@
5369
5324
  return `rotate(${rotate}deg)`;
5370
5325
  }
5371
5326
 
5372
- function instance$b($$self, $$props, $$invalidate) {
5327
+ function instance$c($$self, $$props, $$invalidate) {
5373
5328
  let positionTransform;
5374
5329
  let rotateTransform;
5375
5330
  let { five } = $$props;
@@ -5449,8 +5404,8 @@
5449
5404
  internal.init(
5450
5405
  this,
5451
5406
  options,
5452
- instance$b,
5453
- create_fragment$b,
5407
+ instance$c,
5408
+ create_fragment$c,
5454
5409
  internal.safe_not_equal,
5455
5410
  {
5456
5411
  five: 3,
@@ -5458,14 +5413,14 @@
5458
5413
  floorplanData: 5,
5459
5414
  cameraImageUrl: 0
5460
5415
  },
5461
- add_css$9
5416
+ add_css$a
5462
5417
  );
5463
5418
  }
5464
5419
  }
5465
5420
 
5466
5421
  /* src/floorplan/PanoFloorplanRadarPlugin/Components/CurrentFloor/ExtraObjects.svelte generated by Svelte v3.49.0 */
5467
5422
 
5468
- function add_css$8(target) {
5423
+ function add_css$9(target) {
5469
5424
  internal.append_styles(target, "svelte-1i87fz7", ".plugin-pano-floorplan__extra-objects.svelte-1i87fz7{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.plugin-pano-floorplan__extra-object-item--position.svelte-1i87fz7{position:absolute;width:0;height:0}.plugin-pano-floorplan__extra-object-item.svelte-1i87fz7{transform:translate(-50%, -50%)}");
5470
5425
  }
5471
5426
 
@@ -5535,7 +5490,7 @@
5535
5490
  };
5536
5491
  }
5537
5492
 
5538
- function create_fragment$a(ctx) {
5493
+ function create_fragment$b(ctx) {
5539
5494
  let div;
5540
5495
  let each_blocks = [];
5541
5496
  let each_1_lookup = new Map();
@@ -5583,7 +5538,7 @@
5583
5538
  };
5584
5539
  }
5585
5540
 
5586
- function instance$a($$self, $$props, $$invalidate) {
5541
+ function instance$b($$self, $$props, $$invalidate) {
5587
5542
  let { extraObjects = [] } = $$props;
5588
5543
 
5589
5544
  $$self.$$set = $$props => {
@@ -5596,7 +5551,7 @@
5596
5551
  class ExtraObjects extends internal.SvelteComponent {
5597
5552
  constructor(options) {
5598
5553
  super();
5599
- internal.init(this, options, instance$a, create_fragment$a, internal.safe_not_equal, { extraObjects: 0 }, add_css$8);
5554
+ internal.init(this, options, instance$b, create_fragment$b, internal.safe_not_equal, { extraObjects: 0 }, add_css$9);
5600
5555
  }
5601
5556
  }
5602
5557
 
@@ -5662,7 +5617,7 @@
5662
5617
  };
5663
5618
  }
5664
5619
 
5665
- function create_fragment$9(ctx) {
5620
+ function create_fragment$a(ctx) {
5666
5621
  let baseimage;
5667
5622
  let t0;
5668
5623
  let extraobjects;
@@ -5773,7 +5728,7 @@
5773
5728
  };
5774
5729
  }
5775
5730
 
5776
- function instance$9($$self, $$props, $$invalidate) {
5731
+ function instance$a($$self, $$props, $$invalidate) {
5777
5732
  let currentFloorExtraObjects;
5778
5733
  let { five } = $$props;
5779
5734
  let { pxmm } = $$props;
@@ -5816,7 +5771,7 @@
5816
5771
  constructor(options) {
5817
5772
  super();
5818
5773
 
5819
- internal.init(this, options, instance$9, create_fragment$9, internal.safe_not_equal, {
5774
+ internal.init(this, options, instance$a, create_fragment$a, internal.safe_not_equal, {
5820
5775
  five: 0,
5821
5776
  pxmm: 1,
5822
5777
  floorIndex: 2,
@@ -5829,7 +5784,7 @@
5829
5784
 
5830
5785
  /* src/floorplan/PanoFloorplanRadarPlugin/Components/Main.svelte generated by Svelte v3.49.0 */
5831
5786
 
5832
- function add_css$7(target) {
5787
+ function add_css$8(target) {
5833
5788
  internal.append_styles(target, "svelte-1mvqyqq", ".plugin-floorplan-radar.svelte-1mvqyqq{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.plugin-floorplan-radar-container.svelte-1mvqyqq{position:relative}");
5834
5789
  }
5835
5790
 
@@ -5838,7 +5793,7 @@
5838
5793
  let div;
5839
5794
  let div_resize_listener;
5840
5795
  let current;
5841
- let if_block = /*clientWidth*/ ctx[6] !== 0 && create_if_block_1(ctx);
5796
+ let if_block = /*clientWidth*/ ctx[6] !== 0 && create_if_block_1$1(ctx);
5842
5797
 
5843
5798
  return {
5844
5799
  c() {
@@ -5862,7 +5817,7 @@
5862
5817
  internal.transition_in(if_block, 1);
5863
5818
  }
5864
5819
  } else {
5865
- if_block = create_if_block_1(ctx);
5820
+ if_block = create_if_block_1$1(ctx);
5866
5821
  if_block.c();
5867
5822
  internal.transition_in(if_block, 1);
5868
5823
  if_block.m(div, null);
@@ -5895,7 +5850,7 @@
5895
5850
  }
5896
5851
 
5897
5852
  // (43:4) {#if clientWidth !== 0}
5898
- function create_if_block_1(ctx) {
5853
+ function create_if_block_1$1(ctx) {
5899
5854
  let div;
5900
5855
  let currentfloor;
5901
5856
  let t;
@@ -6013,7 +5968,7 @@
6013
5968
  };
6014
5969
  }
6015
5970
 
6016
- function create_fragment$8(ctx) {
5971
+ function create_fragment$9(ctx) {
6017
5972
  let if_block_anchor;
6018
5973
  let current;
6019
5974
  let if_block = /*visible*/ ctx[1] && create_if_block$3(ctx);
@@ -6068,7 +6023,7 @@
6068
6023
  };
6069
6024
  }
6070
6025
 
6071
- function instance$8($$self, $$props, $$invalidate) {
6026
+ function instance$9($$self, $$props, $$invalidate) {
6072
6027
  let { five } = $$props;
6073
6028
  let { visible } = $$props;
6074
6029
  let { hoverEnable } = $$props;
@@ -6154,8 +6109,8 @@
6154
6109
  internal.init(
6155
6110
  this,
6156
6111
  options,
6157
- instance$8,
6158
- create_fragment$8,
6112
+ instance$9,
6113
+ create_fragment$9,
6159
6114
  internal.safe_not_equal,
6160
6115
  {
6161
6116
  five: 0,
@@ -6165,7 +6120,7 @@
6165
6120
  cameraImageUrl: 4,
6166
6121
  extraObjects: 5
6167
6122
  },
6168
- add_css$7
6123
+ add_css$8
6169
6124
  );
6170
6125
  }
6171
6126
  }
@@ -6268,55 +6223,49 @@
6268
6223
  // =============== init Listener ===============
6269
6224
  five.once('dispose', this.dispose);
6270
6225
  }
6271
- load(serverData, state, userAction = true) {
6272
- return __awaiter(this, void 0, void 0, function* () {
6273
- // const loadImage = async () => {
6274
- // const floorIndex = this.five.work.observers[this.five.getCurrentState().panoIndex].floorIndex
6275
- // // 当有 svgString 时,没有加载过程
6276
- // if (floorplanData.outlines[floorIndex]?.svgContent) return
6277
- // // 如果当前楼层图片不存在,不存在加载过程
6278
- // const nowFloorImageSrc = floorplanData.outlines[floorIndex]?.url
6279
- // if (!nowFloorImageSrc) return
6280
- // // 图片加载完成时再 render
6281
- // await new Promise<void>((resolve) => {
6282
- // const nowFloorImage = new Image()
6283
- // nowFloorImage.src = nowFloorImageSrc
6284
- // nowFloorImage.onload = () => resolve()
6285
- // })
6286
- // }
6287
- // await loadImage()
6288
- function isPluginServerData(serverData) {
6289
- return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
6290
- }
6291
- const copyData = JSON.parse(JSON.stringify(serverData));
6292
- const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
6293
- const prevData = this.data;
6294
- this.data = yield formatData(_serverData);
6295
- this.hooks.emit('dataLoaded', this.data);
6296
- this.hooks.emit('dataChange', this.data, prevData);
6297
- if (state)
6298
- this.updateState(state, userAction);
6299
- this.render();
6300
- });
6226
+ async load(serverData, state, userAction = true) {
6227
+ // const loadImage = async () => {
6228
+ // const floorIndex = this.five.work.observers[this.five.getCurrentState().panoIndex].floorIndex
6229
+ // // 当有 svgString 时,没有加载过程
6230
+ // if (floorplanData.outlines[floorIndex]?.svgContent) return
6231
+ // // 如果当前楼层图片不存在,不存在加载过程
6232
+ // const nowFloorImageSrc = floorplanData.outlines[floorIndex]?.url
6233
+ // if (!nowFloorImageSrc) return
6234
+ // // 图片加载完成时再 render
6235
+ // await new Promise<void>((resolve) => {
6236
+ // const nowFloorImage = new Image()
6237
+ // nowFloorImage.src = nowFloorImageSrc
6238
+ // nowFloorImage.onload = () => resolve()
6239
+ // })
6240
+ // }
6241
+ // await loadImage()
6242
+ function isPluginServerData(serverData) {
6243
+ return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
6244
+ }
6245
+ const copyData = JSON.parse(JSON.stringify(serverData));
6246
+ const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
6247
+ const prevData = this.data;
6248
+ this.data = await formatData(_serverData);
6249
+ this.hooks.emit('dataLoaded', this.data);
6250
+ this.hooks.emit('dataChange', this.data, prevData);
6251
+ if (state)
6252
+ this.updateState(state, userAction);
6253
+ this.render();
6301
6254
  }
6302
- show(options = {}) {
6303
- return __awaiter(this, void 0, void 0, function* () {
6304
- // 已经展示完成了,不做任何操作
6305
- if (this.state.visible)
6306
- return;
6307
- const userAction = options.userAction !== undefined ? options.userAction : true;
6308
- this.updateState({ visible: true }, userAction);
6309
- this._show({ userAction });
6310
- });
6255
+ async show(options = {}) {
6256
+ // 已经展示完成了,不做任何操作
6257
+ if (this.state.visible)
6258
+ return;
6259
+ const userAction = options.userAction !== undefined ? options.userAction : true;
6260
+ this.updateState({ visible: true }, userAction);
6261
+ this._show({ userAction });
6311
6262
  }
6312
- hide(options = {}) {
6313
- return __awaiter(this, void 0, void 0, function* () {
6314
- if (!this.state.visible)
6315
- return;
6316
- const userAction = options.userAction !== undefined ? options.userAction : true;
6317
- this.updateState({ visible: false }, userAction);
6318
- this._hide({ userAction });
6319
- });
6263
+ async hide(options = {}) {
6264
+ if (!this.state.visible)
6265
+ return;
6266
+ const userAction = options.userAction !== undefined ? options.userAction : true;
6267
+ this.updateState({ visible: false }, userAction);
6268
+ this._hide({ userAction });
6320
6269
  }
6321
6270
  enable(options = {}) {
6322
6271
  if (this.state.enabled)
@@ -6361,10 +6310,8 @@
6361
6310
  this.extraObjects = formatExtraObjects(data, this.five, this.data);
6362
6311
  this.render();
6363
6312
  }
6364
- formatData(serverData) {
6365
- return __awaiter(this, void 0, void 0, function* () {
6366
- return yield formatData(serverData.data);
6367
- });
6313
+ async formatData(serverData) {
6314
+ return await formatData(serverData.data);
6368
6315
  }
6369
6316
  _enable(options) {
6370
6317
  const { userAction } = options;
@@ -6424,18 +6371,16 @@
6424
6371
  * 有异常,则返回 [Error, undefined]
6425
6372
  * 用于替代 try&catch 处理 await 异常的方案
6426
6373
  */
6427
- function to(promise) {
6428
- return __awaiter(this, void 0, void 0, function* () {
6429
- try {
6430
- const data = yield promise;
6431
- return [null, data];
6432
- }
6433
- catch (error) {
6434
- if (error instanceof Error)
6435
- return [error, null];
6436
- return [new Error(''), null];
6437
- }
6438
- });
6374
+ async function to(promise) {
6375
+ try {
6376
+ const data = await promise;
6377
+ return [null, data];
6378
+ }
6379
+ catch (error) {
6380
+ if (error instanceof Error)
6381
+ return [error, null];
6382
+ return [new Error(''), null];
6383
+ }
6439
6384
  }
6440
6385
 
6441
6386
  var FloorplanErrorType;
@@ -6480,29 +6425,27 @@
6480
6425
  * 2. 内置了相应的动画时间计算
6481
6426
  * 3. 纠正成功会返回 true,失败「可能会被用户行为中断」会返回 false
6482
6427
  */
6483
- function correctFiveState(five, showState, userAction = true) {
6484
- return __awaiter(this, void 0, void 0, function* () {
6485
- // 当前已满足状态,不需要变更
6486
- const result = checkShowState(five, showState);
6487
- if (result === true)
6488
- return;
6489
- const currentFiveState = five.getCurrentState();
6490
- // 纠正 mode
6491
- if (currentFiveState.mode !== showState.mode) {
6492
- const [changeModeError] = yield to(changeMode(five, [showState.mode, showState, undefined, userAction]));
6493
- if (changeModeError)
6494
- throw new Error(FloorplanErrorType.ChangeModeError);
6495
- return;
6496
- }
6497
- // 纠正相机状态
6498
- // 根据 latitude、longitude、fov 计算动画时间,最多 1s
6499
- const { latitude, longitude, fov } = currentFiveState;
6500
- const time = Math.min(1000, Math.max(200, Math.abs(latitude - Math.PI / 2) * 1000, (longitude > Math.PI ? 2 * Math.PI - longitude : longitude) * 500, Math.abs(fov - showState.fov) * 10));
6501
- const [updateCameraError] = yield to(five.updateCamera(showState, time, userAction));
6502
- if (updateCameraError)
6503
- throw new Error(FloorplanErrorType.UpdateCameraError);
6428
+ async function correctFiveState(five, showState, userAction = true) {
6429
+ // 当前已满足状态,不需要变更
6430
+ const result = checkShowState(five, showState);
6431
+ if (result === true)
6504
6432
  return;
6505
- });
6433
+ const currentFiveState = five.getCurrentState();
6434
+ // 纠正 mode
6435
+ if (currentFiveState.mode !== showState.mode) {
6436
+ const [changeModeError] = await to(changeMode(five, [showState.mode, showState, undefined, userAction]));
6437
+ if (changeModeError)
6438
+ throw new Error(FloorplanErrorType.ChangeModeError);
6439
+ return;
6440
+ }
6441
+ // 纠正相机状态
6442
+ // 根据 latitude、longitude、fov 计算动画时间,最多 1s
6443
+ const { latitude, longitude, fov } = currentFiveState;
6444
+ const time = Math.min(1000, Math.max(200, Math.abs(latitude - Math.PI / 2) * 1000, (longitude > Math.PI ? 2 * Math.PI - longitude : longitude) * 500, Math.abs(fov - showState.fov) * 10));
6445
+ const [updateCameraError] = await to(five.updateCamera(showState, time, userAction));
6446
+ if (updateCameraError)
6447
+ throw new Error(FloorplanErrorType.UpdateCameraError);
6448
+ return;
6506
6449
  }
6507
6450
 
6508
6451
  /** 当前 five 的相机视角是否满足户型图自动隐藏条件
@@ -6671,7 +6614,7 @@
6671
6614
  enumerable: true,
6672
6615
  configurable: true,
6673
6616
  writable: true,
6674
- value: (options = {}) => __awaiter(this, void 0, void 0, function* () {
6617
+ value: async (options = {}) => {
6675
6618
  if (!this.state.enabled)
6676
6619
  return;
6677
6620
  // 已经展示完成了,不做任何操作
@@ -6680,14 +6623,14 @@
6680
6623
  const userAction = options.userAction !== undefined ? options.userAction : true;
6681
6624
  this.updateState({ visible: true }, userAction);
6682
6625
  this._show(options);
6683
- })
6626
+ }
6684
6627
  });
6685
6628
  /** 隐藏户型图 */
6686
6629
  Object.defineProperty(this, "hide", {
6687
6630
  enumerable: true,
6688
6631
  configurable: true,
6689
6632
  writable: true,
6690
- value: (options = {}) => __awaiter(this, void 0, void 0, function* () {
6633
+ value: async (options = {}) => {
6691
6634
  if (!this.state.enabled)
6692
6635
  return;
6693
6636
  this.isHiddenByHideFunc = true;
@@ -6695,7 +6638,7 @@
6695
6638
  return;
6696
6639
  this.updateState({ visible: false }, options.userAction || true);
6697
6640
  this._hide(options);
6698
- })
6641
+ }
6699
6642
  });
6700
6643
  /** 更新户型图大小 */
6701
6644
  Object.defineProperty(this, "updateSize", {
@@ -6761,11 +6704,11 @@
6761
6704
  enumerable: true,
6762
6705
  configurable: true,
6763
6706
  writable: true,
6764
- value: (options) => __awaiter(this, void 0, void 0, function* () {
6765
- var _b;
6707
+ value: async (options) => {
6708
+ var _a;
6766
6709
  if (!this.state.enabled)
6767
6710
  return;
6768
- if (!((_b = this.five.model) === null || _b === void 0 ? void 0 : _b.loaded))
6711
+ if (!((_a = this.five.model) === null || _a === void 0 ? void 0 : _a.loaded))
6769
6712
  throw new Error(FloorplanErrorType.ModelNotLoaded);
6770
6713
  if (!this.data)
6771
6714
  throw new Error(FloorplanErrorType.DataNotLoaded);
@@ -6779,7 +6722,7 @@
6779
6722
  userAction: true,
6780
6723
  };
6781
6724
  const mergedOptions = Object.assign(Object.assign({}, baseShowOpts), options);
6782
- const getShowPromise = () => __awaiter(this, void 0, void 0, function* () {
6725
+ const getShowPromise = async () => {
6783
6726
  this.hooks.emit('show', { userAction: mergedOptions.userAction, auto: mergedOptions.isAutoShow });
6784
6727
  let hasRejected = false;
6785
6728
  let externalErrorMsg;
@@ -6787,7 +6730,7 @@
6787
6730
  hasRejected = true;
6788
6731
  externalErrorMsg = errorMsg;
6789
6732
  };
6790
- const [correctError] = yield to(correctFiveState(this.five, this.showState, mergedOptions.userAction));
6733
+ const [correctError] = await to(correctFiveState(this.five, this.showState, mergedOptions.userAction));
6791
6734
  if (correctError)
6792
6735
  throw correctError;
6793
6736
  // 异步结束要判断当前是不是被中断了
@@ -6805,7 +6748,7 @@
6805
6748
  const renderDuration = mergedOptions.immediately ? 0 : SHOW_ANIME_DURATION;
6806
6749
  changeModelCanvasOpacity(this.five, modelOpacity, renderDuration);
6807
6750
  this.render(renderDuration);
6808
- });
6751
+ };
6809
6752
  this.showPromise = getShowPromise()
6810
6753
  .then(() => {
6811
6754
  this.hooks.emit('showAnimationEnded', {
@@ -6827,7 +6770,7 @@
6827
6770
  this.showRejection = undefined;
6828
6771
  });
6829
6772
  return this.showPromise;
6830
- })
6773
+ }
6831
6774
  });
6832
6775
  Object.defineProperty(this, "_hide", {
6833
6776
  enumerable: true,
@@ -7061,24 +7004,22 @@
7061
7004
  five.once('dispose', this.dispose);
7062
7005
  this.addEventListener();
7063
7006
  }
7064
- load(serverData, state, userAction = true) {
7065
- return __awaiter(this, void 0, void 0, function* () {
7066
- function isPluginServerData(serverData) {
7067
- return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
7068
- }
7069
- const _data = serverData;
7070
- if (_data && !_data.version)
7071
- console.warn('传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数');
7072
- const copyData = JSON.parse(JSON.stringify(serverData));
7073
- const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
7074
- const prevData = this.data;
7075
- this.data = yield formatData(_serverData);
7076
- this.hooks.emit('dataLoaded', this.data);
7077
- this.hooks.emit('dataChange', this.data, prevData);
7078
- if (state)
7079
- this.updateState(state, userAction);
7080
- this.render();
7081
- });
7007
+ async load(serverData, state, userAction = true) {
7008
+ function isPluginServerData(serverData) {
7009
+ return Object.prototype.hasOwnProperty.apply(serverData, ['version']);
7010
+ }
7011
+ const _data = serverData;
7012
+ if (_data && !_data.version)
7013
+ console.warn('传入 serverData.data 的方式后续可能不再支持,请把 serverData 整体传入 load 函数');
7014
+ const copyData = JSON.parse(JSON.stringify(serverData));
7015
+ const _serverData = isPluginServerData(copyData) ? copyData.data : copyData;
7016
+ const prevData = this.data;
7017
+ this.data = await formatData(_serverData);
7018
+ this.hooks.emit('dataLoaded', this.data);
7019
+ this.hooks.emit('dataChange', this.data, prevData);
7020
+ if (state)
7021
+ this.updateState(state, userAction);
7022
+ this.render();
7082
7023
  }
7083
7024
  /** 把插件的渲染DOM插入到对应的容器中去 */
7084
7025
  appendTo(wrapper) {
@@ -7126,10 +7067,8 @@
7126
7067
  return;
7127
7068
  this.render();
7128
7069
  }
7129
- formatData(serverData) {
7130
- return __awaiter(this, void 0, void 0, function* () {
7131
- return yield formatData(serverData.data);
7132
- });
7070
+ async formatData(serverData) {
7071
+ return await formatData(serverData.data);
7133
7072
  }
7134
7073
  updateState(state, userAction) {
7135
7074
  const prevState = this.state;
@@ -7357,10 +7296,10 @@
7357
7296
  const defaultNorthRad = (_a = params.north_rad) !== null && _a !== void 0 ? _a : undefined;
7358
7297
  // 局部状态
7359
7298
  const state = {};
7360
- const load = (data) => __awaiter(void 0, void 0, void 0, function* () {
7361
- var _b;
7299
+ const load = async (data) => {
7300
+ var _a;
7362
7301
  const fbxUrl = (data === null || data === void 0 ? void 0 : data.fbx_url) || defaultFbxUrl;
7363
- const northRad = (_b = data === null || data === void 0 ? void 0 : data.north_rad) !== null && _b !== void 0 ? _b : defaultNorthRad;
7302
+ const northRad = (_a = data === null || data === void 0 ? void 0 : data.north_rad) !== null && _a !== void 0 ? _a : defaultNorthRad;
7364
7303
  if (typeof northRad !== 'number') {
7365
7304
  throw new Error('"northRad"配置参数缺失:未配置指南针指向!');
7366
7305
  }
@@ -7369,7 +7308,7 @@
7369
7308
  const zOffset = bounding.max.z - bounding.min.z;
7370
7309
  const maxOffset = Math.max(xOffset, zOffset);
7371
7310
  const fbxLoader = new FBXLoader.FBXLoader();
7372
- const object = yield fbxLoader.loadAsync(fbxUrl);
7311
+ const object = await fbxLoader.loadAsync(fbxUrl);
7373
7312
  transfromToMeshBasicMaterial(object, {
7374
7313
  transparent: true,
7375
7314
  side: THREE__namespace.DoubleSide,
@@ -7383,7 +7322,7 @@
7383
7322
  bject3d2LocalMatrix(object, { position, rotation, scale });
7384
7323
  state.object = object;
7385
7324
  return true;
7386
- });
7325
+ };
7387
7326
  const onCameraUpdate = ({ latitude }) => {
7388
7327
  if (!state.object)
7389
7328
  return;
@@ -7453,25 +7392,25 @@
7453
7392
  const defaultRad = (_c = params.rad) !== null && _c !== void 0 ? _c : undefined;
7454
7393
  const defaultFbxUrl = params.fbx_url || '//vrlab-image4.ljcdn.com/release/web/entryDoorMini/Anim_Door1.fbx';
7455
7394
  const mixers = [];
7456
- const load = (data) => __awaiter(void 0, void 0, void 0, function* () {
7457
- var _d, _e, _f, _g, _h, _j, _k;
7458
- const position = (_d = data === null || data === void 0 ? void 0 : data.position) !== null && _d !== void 0 ? _d : defaultModelPosition;
7395
+ const load = async (data) => {
7396
+ var _a, _b, _c, _d, _e, _f, _g;
7397
+ const position = (_a = data === null || data === void 0 ? void 0 : data.position) !== null && _a !== void 0 ? _a : defaultModelPosition;
7459
7398
  if (!position)
7460
7399
  return Promise.reject(`ModelEntryDoorGuidePlugin.load(): position is undefined`);
7461
7400
  const modelPosition = transformPositionToVector3(position);
7462
- const rad = (_e = data === null || data === void 0 ? void 0 : data.rad) !== null && _e !== void 0 ? _e : defaultRad;
7463
- const fbxUrl = (_f = data === null || data === void 0 ? void 0 : data.fbx_url) !== null && _f !== void 0 ? _f : defaultFbxUrl;
7401
+ const rad = (_b = data === null || data === void 0 ? void 0 : data.rad) !== null && _b !== void 0 ? _b : defaultRad;
7402
+ const fbxUrl = (_c = data === null || data === void 0 ? void 0 : data.fbx_url) !== null && _c !== void 0 ? _c : defaultFbxUrl;
7464
7403
  state.rad = rad;
7465
7404
  if (rad === undefined)
7466
7405
  return Promise.reject(`ModelEntryDoorGuidePlugin.load(): rad is ${rad}`);
7467
7406
  // 加载模型
7468
- const object = yield new FBXLoader.FBXLoader().loadAsync(fbxUrl);
7407
+ const object = await new FBXLoader.FBXLoader().loadAsync(fbxUrl);
7469
7408
  // 设置位置
7470
7409
  object.position.copy(modelPosition);
7471
7410
  object.rotation.z = rad;
7472
7411
  object.scale.set(0.8, 0.8, 0.8);
7473
7412
  transfromToMeshBasicMaterial(object, { transparent: true, side: THREE__namespace.DoubleSide });
7474
- const textMesh = (_k = (_j = (_h = (_g = object.children) === null || _g === void 0 ? void 0 : _g[0]) === null || _h === void 0 ? void 0 : _h.children) === null || _j === void 0 ? void 0 : _j[3]) === null || _k === void 0 ? void 0 : _k.clone();
7413
+ const textMesh = (_g = (_f = (_e = (_d = object.children) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.children) === null || _f === void 0 ? void 0 : _f[3]) === null || _g === void 0 ? void 0 : _g.clone();
7475
7414
  if (!textMesh)
7476
7415
  return Promise.reject(`ModelEntryDoorGuidePlugin.load(): textMesh is ${textMesh}`);
7477
7416
  textMesh.material = new THREE.MeshBasicMaterial({ transparent: true, map: createCanvasTextTexture('入户门') });
@@ -7479,7 +7418,7 @@
7479
7418
  object.children[0].add(textMesh);
7480
7419
  state.object = object;
7481
7420
  return true;
7482
- });
7421
+ };
7483
7422
  const initAnimation = () => {
7484
7423
  if (state.animation)
7485
7424
  return;
@@ -7716,21 +7655,21 @@
7716
7655
  */
7717
7656
  const CameraMovementPlugin = (five$1) => {
7718
7657
  const state = {};
7719
- const move = (args, duration, opts = { preload: true }) => __awaiter(void 0, void 0, void 0, function* () {
7658
+ const move = async (args, duration, opts = { preload: true }) => {
7720
7659
  if (state.interruptCallback) {
7721
7660
  state.interruptCallback(false);
7722
7661
  }
7723
7662
  if (opts.asyncStartCallback) {
7724
- yield opts.asyncStartCallback();
7663
+ await opts.asyncStartCallback();
7725
7664
  }
7726
7665
  if (args.mode && args.mode !== five$1.currentMode) {
7727
- yield five$1.changeMode(args.mode);
7666
+ await five$1.changeMode(args.mode);
7728
7667
  }
7729
7668
  if (opts.preload && args.panoIndex !== undefined && args.panoIndex !== five$1.panoIndex) {
7730
- yield five$1.preloadPano(args.panoIndex);
7669
+ await five$1.preloadPano(args.panoIndex);
7731
7670
  }
7732
7671
  if (opts.asyncEndCallback) {
7733
- yield opts.asyncEndCallback();
7672
+ await opts.asyncEndCallback();
7734
7673
  }
7735
7674
  if (args.panoIndex === undefined &&
7736
7675
  args.fov === undefined &&
@@ -7738,7 +7677,7 @@
7738
7677
  args.longitude === undefined) {
7739
7678
  return true;
7740
7679
  }
7741
- return yield new Promise((resolve, reject) => {
7680
+ return await new Promise((resolve, reject) => {
7742
7681
  const panoIndex = args.panoIndex !== undefined ? args.panoIndex : five$1.panoIndex;
7743
7682
  if (panoIndex !== undefined) {
7744
7683
  five$1.moveToPano(panoIndex, Object.assign({
@@ -7751,7 +7690,7 @@
7751
7690
  reject(false);
7752
7691
  }
7753
7692
  });
7754
- });
7693
+ };
7755
7694
  const getAnimeParams = (args) => {
7756
7695
  const currentFiveState = five$1.state;
7757
7696
  // latitude
@@ -7767,20 +7706,20 @@
7767
7706
  to: { latitude: toLatitude, longitude: toLongitude, fov: toFov },
7768
7707
  };
7769
7708
  };
7770
- const rotate = (args, duration, opts = {}) => __awaiter(void 0, void 0, void 0, function* () {
7709
+ const rotate = async (args, duration, opts = {}) => {
7771
7710
  if (state.interruptCallback) {
7772
7711
  state.interruptCallback(false);
7773
7712
  }
7774
7713
  if (opts.asyncStartCallback) {
7775
- yield opts.asyncStartCallback();
7714
+ await opts.asyncStartCallback();
7776
7715
  }
7777
7716
  if (five$1.currentMode !== five.Five.Mode.Panorama) {
7778
- yield five$1.changeMode(five.Five.Mode.Panorama);
7717
+ await five$1.changeMode(five.Five.Mode.Panorama);
7779
7718
  }
7780
7719
  if (args.panoIndex !== undefined && args.panoIndex !== five$1.panoIndex) {
7781
7720
  if (opts.preload)
7782
- yield five$1.preloadPano(args.panoIndex);
7783
- yield new Promise((resolve, reject) => {
7721
+ await five$1.preloadPano(args.panoIndex);
7722
+ await new Promise((resolve, reject) => {
7784
7723
  if (!args.panoIndex) {
7785
7724
  resolve(true);
7786
7725
  return;
@@ -7792,10 +7731,10 @@
7792
7731
  });
7793
7732
  }
7794
7733
  if (opts.asyncEndCallback) {
7795
- yield opts.asyncEndCallback();
7734
+ await opts.asyncEndCallback();
7796
7735
  }
7797
7736
  const { from, to } = getAnimeParams(args);
7798
- return yield new Promise((resolve) => {
7737
+ return await new Promise((resolve) => {
7799
7738
  const onUpdate = ({ progress }) => {
7800
7739
  const state = {};
7801
7740
  state.longitude = progressNumber(from.longitude, to.longitude, progress);
@@ -7837,7 +7776,7 @@
7837
7776
  state.interruptCallback(true);
7838
7777
  }, duration);
7839
7778
  });
7840
- });
7779
+ };
7841
7780
  return {
7842
7781
  move,
7843
7782
  rotate,
@@ -8039,7 +7978,7 @@
8039
7978
  </style>
8040
7979
  `;
8041
7980
 
8042
- const getDistance = (p1, p2) => {
7981
+ const getDistance$1 = (p1, p2) => {
8043
7982
  return Math.sqrt(Math.pow(p1.z - p2.z, 2) + Math.pow(p1.x - p2.x, 2));
8044
7983
  };
8045
7984
  const getRoomHeightInfo = (roomInfo, five) => {
@@ -8146,7 +8085,7 @@
8146
8085
  y: position.y,
8147
8086
  z: position.z,
8148
8087
  };
8149
- const distance = getDistance({ x, z }, observerPoint);
8088
+ const distance = getDistance$1({ x, z }, observerPoint);
8150
8089
  if (medianFloorHeight) {
8151
8090
  // 取最近点时排除高度与房间平均高度差大于0.3米的点
8152
8091
  if (distance < minDistance && Math.abs(observerPoint.y - medianFloorHeight) < 0.3) {
@@ -8197,7 +8136,7 @@
8197
8136
  freshRule();
8198
8137
  return true;
8199
8138
  };
8200
- const load = (_roomInfo, _roomRules, options) => __awaiter(void 0, void 0, void 0, function* () {
8139
+ const load = async (_roomInfo, _roomRules, options) => {
8201
8140
  const roomInfo = _roomInfo || params.roomInfo;
8202
8141
  const roomRules = _roomRules || params.roomRules;
8203
8142
  if (!roomInfo || !roomRules) {
@@ -8209,9 +8148,9 @@
8209
8148
  return _load(roomInfo, roomRules);
8210
8149
  }
8211
8150
  else {
8212
- return yield new Promise((resolve) => five$1.once('modelLoaded', () => resolve(_load(roomInfo, roomRules))));
8151
+ return await new Promise((resolve) => five$1.once('modelLoaded', () => resolve(_load(roomInfo, roomRules))));
8213
8152
  }
8214
- });
8153
+ };
8215
8154
  if (params.roomInfo && params.roomRules) {
8216
8155
  load(params.roomInfo, params.roomRules);
8217
8156
  }
@@ -8428,7 +8367,7 @@
8428
8367
 
8429
8368
  /* src/PanoRulerProPlugin/RulerItem.svelte generated by Svelte v3.49.0 */
8430
8369
 
8431
- function add_css$6(target) {
8370
+ function add_css$7(target) {
8432
8371
  internal.append_styles(target, "svelte-qy4ud2", ".PanoRulerPlugin-rule-line.svelte-qy4ud2.svelte-qy4ud2{position:absolute;transform-origin:left 0.0625rem;width:0;height:0.125rem;pointer-events:none}.PanoRulerPlugin-rule-line.svelte-qy4ud2.svelte-qy4ud2::after{content:'';position:absolute;left:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;-webkit-animation:svelte-qy4ud2-viewport-rule-point 0.1s 1s;animation:svelte-qy4ud2-viewport-rule-point 0.1s 1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-qy4ud2.svelte-qy4ud2::before{content:'';position:absolute;right:-0.125rem;top:-0.1rem;width:0.25rem;height:0.25rem;border-radius:50%;background:#fff;z-index:1;-webkit-animation:svelte-qy4ud2-viewport-rule-point 0.1s 1.5s;animation:svelte-qy4ud2-viewport-rule-point 0.1s 1.5s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.PanoRulerPlugin-rule-line.svelte-qy4ud2 em.svelte-qy4ud2{display:block;height:0.0625rem;-webkit-animation:svelte-qy4ud2-viewport-rule-line 0.5s ease 1s;animation:svelte-qy4ud2-viewport-rule-line 0.5s ease 1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;box-shadow:0 0 0.25rem rgb(0 0 0 / 40%);position:relative}.rule-mixed-line.svelte-qy4ud2.svelte-qy4ud2{display:flex;height:0.0625rem;-webkit-animation:svelte-qy4ud2-viewport-rule-line 0.5s ease 1s;animation:svelte-qy4ud2-viewport-rule-line 0.5s ease 1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;align-items:center}.em-solid.svelte-qy4ud2.svelte-qy4ud2{height:100%;background:#ffffff}.em-dotted.svelte-qy4ud2.svelte-qy4ud2{height:0.125rem;background:var(--background-image);background-position:center;background-repeat:repeat}.PanoRulerPlugin-rule-label.svelte-qy4ud2.svelte-qy4ud2{position:absolute;width:0;height:0;top:0.0625rem;pointer-events:none}.PanoRulerPlugin-rule-label-name.svelte-qy4ud2.svelte-qy4ud2{position:absolute;padding:0.1875rem 0.375rem;background:rgba(195, 195, 195, 0.3);backdrop-filter:blur(0.25rem);-webkit-backdrop-filter:blur(0.25rem);border-radius:6.25rem;border:0.0625rem solid rgba(255, 255, 255, 0.6);white-space:nowrap;overflow:hidden;color:#ffffff;font-weight:500;font-size:0.75rem;line-height:1;-webkit-animation:svelte-qy4ud2-viewport-rule-label 0.25s ease 1s;animation:svelte-qy4ud2-viewport-rule-label 0.25s ease 1s;-webkit-animation-fill-mode:both;animation-fill-mode:both;box-shadow:inset 0 0 0.625rem 0 rgba(255, 255, 255, 0.3)}@-webkit-keyframes svelte-qy4ud2-viewport-rule-line{0%{width:0%}100%{width:100%}}@keyframes svelte-qy4ud2-viewport-rule-line{0%{width:0%}100%{width:100%}}@-webkit-keyframes svelte-qy4ud2-viewport-rule-label{0%{opacity:0;transform:scaleX(0)}100%{opacity:1;transform:translate(-50%, -50%) scaleX(1)}}@keyframes svelte-qy4ud2-viewport-rule-label{0%{opacity:0;transform:scaleX(0)}100%{opacity:1;transform:translate(-50%, -50%) scaleX(1)}}@-webkit-keyframes svelte-qy4ud2-viewport-rule-point{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}@keyframes svelte-qy4ud2-viewport-rule-point{0%{transform:scaleX(0)}100%{transform:scaleX(1)}}");
8433
8372
  }
8434
8373
 
@@ -8439,7 +8378,7 @@
8439
8378
  }
8440
8379
 
8441
8380
  // (28:2) {:else}
8442
- function create_else_block(ctx) {
8381
+ function create_else_block$1(ctx) {
8443
8382
  let div;
8444
8383
  let each_value = /*rulerItemProp*/ ctx[0].children;
8445
8384
  let each_blocks = [];
@@ -8566,7 +8505,7 @@
8566
8505
  };
8567
8506
  }
8568
8507
 
8569
- function create_fragment$7(ctx) {
8508
+ function create_fragment$8(ctx) {
8570
8509
  let div2;
8571
8510
  let t0;
8572
8511
  let div1;
@@ -8582,7 +8521,7 @@
8582
8521
 
8583
8522
  function select_block_type(ctx, dirty) {
8584
8523
  if (/*rulerItemProp*/ ctx[0].children.length === 0) return create_if_block$2;
8585
- return create_else_block;
8524
+ return create_else_block$1;
8586
8525
  }
8587
8526
 
8588
8527
  let current_block_type = select_block_type(ctx);
@@ -8680,7 +8619,7 @@
8680
8619
  };
8681
8620
  }
8682
8621
 
8683
- function instance$7($$self, $$props, $$invalidate) {
8622
+ function instance$8($$self, $$props, $$invalidate) {
8684
8623
  let vars;
8685
8624
  let { rulerItemProp } = $$props;
8686
8625
  let _visible = true;
@@ -8715,7 +8654,7 @@
8715
8654
  class RulerItem extends internal.SvelteComponent {
8716
8655
  constructor(options) {
8717
8656
  super();
8718
- internal.init(this, options, instance$7, create_fragment$7, internal.safe_not_equal, { rulerItemProp: 0 }, add_css$6);
8657
+ internal.init(this, options, instance$8, create_fragment$8, internal.safe_not_equal, { rulerItemProp: 0 }, add_css$7);
8719
8658
  }
8720
8659
  }
8721
8660
 
@@ -8764,7 +8703,7 @@
8764
8703
  };
8765
8704
  }
8766
8705
 
8767
- function create_fragment$6(ctx) {
8706
+ function create_fragment$7(ctx) {
8768
8707
  let div;
8769
8708
  let current;
8770
8709
  let each_value = /*rulerItemProp*/ ctx[0];
@@ -8848,7 +8787,7 @@
8848
8787
  };
8849
8788
  }
8850
8789
 
8851
- function instance$6($$self, $$props, $$invalidate) {
8790
+ function instance$7($$self, $$props, $$invalidate) {
8852
8791
  var _a, _b, _c, _d;
8853
8792
  let { five: five$1 } = $$props;
8854
8793
  let { rulerDatas } = $$props;
@@ -9066,7 +9005,7 @@
9066
9005
  class RulerItems extends internal.SvelteComponent {
9067
9006
  constructor(options) {
9068
9007
  super();
9069
- internal.init(this, options, instance$6, create_fragment$6, internal.safe_not_equal, { five: 1, rulerDatas: 2, options: 3 });
9008
+ internal.init(this, options, instance$7, create_fragment$7, internal.safe_not_equal, { five: 1, rulerDatas: 2, options: 3 });
9070
9009
  }
9071
9010
  }
9072
9011
 
@@ -9121,22 +9060,20 @@
9121
9060
  if ((_a = params.options) === null || _a === void 0 ? void 0 : _a.className)
9122
9061
  this.container.classList.add((_b = params.options) === null || _b === void 0 ? void 0 : _b.className);
9123
9062
  }
9124
- this.five.once('modelLoaded', () => __awaiter(this, void 0, void 0, function* () {
9125
- var _c, _d;
9126
- (_d = (_c = this.five.getElement()) === null || _c === void 0 ? void 0 : _c.parentNode) === null || _d === void 0 ? void 0 : _d.append(this.container);
9127
- }));
9063
+ this.five.once('modelLoaded', async () => {
9064
+ var _a, _b;
9065
+ (_b = (_a = this.five.getElement()) === null || _a === void 0 ? void 0 : _a.parentNode) === null || _b === void 0 ? void 0 : _b.append(this.container);
9066
+ });
9128
9067
  this.five.once('dispose', () => this.dispose());
9129
9068
  }
9130
- load(serverData) {
9131
- return __awaiter(this, void 0, void 0, function* () {
9132
- if (!this.five.work)
9133
- return;
9134
- const data = serverData.data;
9135
- if (!data)
9136
- throw new Error('标尺数据依赖不齐全!');
9137
- this.panoRulerProData = data;
9138
- this.state.loaded = true;
9139
- });
9069
+ async load(serverData) {
9070
+ if (!this.five.work)
9071
+ return;
9072
+ const data = serverData.data;
9073
+ if (!data)
9074
+ throw new Error('标尺数据依赖不齐全!');
9075
+ this.panoRulerProData = data;
9076
+ this.state.loaded = true;
9140
9077
  }
9141
9078
  enable() {
9142
9079
  if (!this.state.loaded)
@@ -9154,26 +9091,24 @@
9154
9091
  this.render();
9155
9092
  return true;
9156
9093
  }
9157
- render() {
9094
+ async render() {
9158
9095
  var _a;
9159
- return __awaiter(this, void 0, void 0, function* () {
9160
- if (this.state.enabled) {
9161
- if (!this.panoRulerProData || !this.container)
9162
- return;
9163
- this.rulerItems = new RulerItems({
9164
- target: this.container,
9165
- props: {
9166
- five: this.five,
9167
- rulerDatas: this.panoRulerProData,
9168
- options: this.state.options,
9169
- },
9170
- });
9171
- }
9172
- else {
9173
- (_a = this.rulerItems) === null || _a === void 0 ? void 0 : _a.$destroy();
9174
- this.rulerItems = undefined;
9175
- }
9176
- });
9096
+ if (this.state.enabled) {
9097
+ if (!this.panoRulerProData || !this.container)
9098
+ return;
9099
+ this.rulerItems = new RulerItems({
9100
+ target: this.container,
9101
+ props: {
9102
+ five: this.five,
9103
+ rulerDatas: this.panoRulerProData,
9104
+ options: this.state.options,
9105
+ },
9106
+ });
9107
+ }
9108
+ else {
9109
+ (_a = this.rulerItems) === null || _a === void 0 ? void 0 : _a.$destroy();
9110
+ this.rulerItems = undefined;
9111
+ }
9177
9112
  }
9178
9113
  dispose() {
9179
9114
  if (this.container) {
@@ -9242,14 +9177,12 @@
9242
9177
  }
9243
9178
 
9244
9179
  const textureLoader = new THREE__namespace.TextureLoader();
9245
- function loadTexture(url) {
9246
- return __awaiter(this, void 0, void 0, function* () {
9247
- return new Promise((resolve, reject) => {
9248
- textureLoader.load(url, resolve, undefined, reject);
9249
- }).then((texture) => {
9250
- texture.encoding = THREE__namespace.sRGBEncoding;
9251
- return texture;
9252
- });
9180
+ async function loadTexture(url) {
9181
+ return new Promise((resolve, reject) => {
9182
+ textureLoader.load(url, resolve, undefined, reject);
9183
+ }).then((texture) => {
9184
+ texture.encoding = THREE__namespace.sRGBEncoding;
9185
+ return texture;
9253
9186
  });
9254
9187
  }
9255
9188
 
@@ -9311,7 +9244,7 @@
9311
9244
  return tween;
9312
9245
  }
9313
9246
 
9314
- const defaultBaseOptions = { userAction: true };
9247
+ const defaultBaseOptions$1 = { userAction: true };
9315
9248
  class PanoCompassController extends Controller$4 {
9316
9249
  constructor(five$1, config) {
9317
9250
  super(five$1);
@@ -9598,7 +9531,7 @@
9598
9531
  * 启用插件,响应用户操作并展示UI
9599
9532
  * @param options
9600
9533
  */
9601
- enable(options = defaultBaseOptions) {
9534
+ enable(options = defaultBaseOptions$1) {
9602
9535
  this.setState({
9603
9536
  enabled: true,
9604
9537
  }, options);
@@ -9607,7 +9540,7 @@
9607
9540
  * 禁用插件,禁止响应用户操作并隐藏UI
9608
9541
  * @param options
9609
9542
  */
9610
- disable(options = defaultBaseOptions) {
9543
+ disable(options = defaultBaseOptions$1) {
9611
9544
  this.setState({
9612
9545
  enabled: false,
9613
9546
  }, options);
@@ -9618,7 +9551,7 @@
9618
9551
  * @returns
9619
9552
  * @todo 需要考虑动画
9620
9553
  */
9621
- show(options = defaultBaseOptions) {
9554
+ show(options = defaultBaseOptions$1) {
9622
9555
  if (!this.state.enabled)
9623
9556
  return;
9624
9557
  this.setState({
@@ -9632,7 +9565,7 @@
9632
9565
  * @returns
9633
9566
  * @todo 需要考虑动画
9634
9567
  */
9635
- hide(options = defaultBaseOptions) {
9568
+ hide(options = defaultBaseOptions$1) {
9636
9569
  if (!this.state.enabled)
9637
9570
  return;
9638
9571
  this.setState({
@@ -9676,19 +9609,17 @@
9676
9609
  this.init();
9677
9610
  }
9678
9611
  }
9679
- load(data, state, userAction = true) {
9680
- return __awaiter(this, void 0, void 0, function* () {
9681
- const nextData = yield this.formatData(data);
9682
- if (JSON.stringify(this.data) !== JSON.stringify(nextData)) {
9683
- this.hooks.emit('dataChange', nextData, this.data);
9684
- this.data = Object.assign({}, nextData);
9685
- this.init();
9686
- if (state) {
9687
- this.setState(state, { userAction });
9688
- }
9689
- this.hooks.emit('dataLoaded', this.data);
9612
+ async load(data, state, userAction = true) {
9613
+ const nextData = await this.formatData(data);
9614
+ if (JSON.stringify(this.data) !== JSON.stringify(nextData)) {
9615
+ this.hooks.emit('dataChange', nextData, this.data);
9616
+ this.data = Object.assign({}, nextData);
9617
+ this.init();
9618
+ if (state) {
9619
+ this.setState(state, { userAction });
9690
9620
  }
9691
- });
9621
+ this.hooks.emit('dataLoaded', this.data);
9622
+ }
9692
9623
  }
9693
9624
  formatData(serverData) {
9694
9625
  if (serverData.version && serverData.data) {
@@ -9702,64 +9633,58 @@
9702
9633
  * 初始化
9703
9634
  * @todo 逻辑需要细分
9704
9635
  */
9705
- init() {
9636
+ async init() {
9706
9637
  var _a, _b, _c, _d;
9707
- return __awaiter(this, void 0, void 0, function* () {
9708
- const northRad = (_b = (_a = this.data) === null || _a === void 0 ? void 0 : _a.north_rad) !== null && _b !== void 0 ? _b : null;
9709
- this._clearCompassIfNeed();
9710
- if (northRad !== null) {
9711
- this.compassMesh = yield this.loadCompassMesh();
9712
- this.compassMesh.rotateX(-Math.PI / 2);
9713
- this.compassMesh.rotateZ(northRad - Math.PI / 2);
9714
- this.group.add(this.compassMesh);
9715
- }
9716
- const entrance = (_d = (_c = this.data) === null || _c === void 0 ? void 0 : _c.entrance) !== null && _d !== void 0 ? _d : null;
9717
- this._clearEntryDoorIfNeed();
9718
- if (entrance !== null) {
9719
- this.entryDoorMesh = yield this.loadEntryDoorMesh();
9720
- this.roomInfoWrapperInstance = this.loadRoomInfo();
9721
- this.roomInfoInstance = getRoomInfoInstance();
9722
- this.entryDoorMesh.rotateX(-Math.PI / 2);
9723
- if (this.roomInfoWrapperInstance) {
9724
- this.roomInfoInstance.appendTo(this.roomInfoWrapperInstance.container);
9725
- }
9726
- this.group.add(this.entryDoorMesh);
9638
+ const northRad = (_b = (_a = this.data) === null || _a === void 0 ? void 0 : _a.north_rad) !== null && _b !== void 0 ? _b : null;
9639
+ this._clearCompassIfNeed();
9640
+ if (northRad !== null) {
9641
+ this.compassMesh = await this.loadCompassMesh();
9642
+ this.compassMesh.rotateX(-Math.PI / 2);
9643
+ this.compassMesh.rotateZ(northRad - Math.PI / 2);
9644
+ this.group.add(this.compassMesh);
9645
+ }
9646
+ const entrance = (_d = (_c = this.data) === null || _c === void 0 ? void 0 : _c.entrance) !== null && _d !== void 0 ? _d : null;
9647
+ this._clearEntryDoorIfNeed();
9648
+ if (entrance !== null) {
9649
+ this.entryDoorMesh = await this.loadEntryDoorMesh();
9650
+ this.roomInfoWrapperInstance = this.loadRoomInfo();
9651
+ this.roomInfoInstance = getRoomInfoInstance();
9652
+ this.entryDoorMesh.rotateX(-Math.PI / 2);
9653
+ if (this.roomInfoWrapperInstance) {
9654
+ this.roomInfoInstance.appendTo(this.roomInfoWrapperInstance.container);
9727
9655
  }
9728
- this.onFivePanoArrived(this.five.panoIndex || 0);
9729
- this.five.needsRender = true;
9730
- });
9656
+ this.group.add(this.entryDoorMesh);
9657
+ }
9658
+ this.onFivePanoArrived(this.five.panoIndex || 0);
9659
+ this.five.needsRender = true;
9731
9660
  }
9732
- loadCompassMesh() {
9733
- return __awaiter(this, void 0, void 0, function* () {
9734
- const compassImageUrl = this.state.config.compassImageUrl;
9735
- const compassTexture = yield loadTexture(compassImageUrl);
9736
- const compassGeometry = new THREE__namespace.CircleGeometry(0.7, 32);
9737
- const compassMaterial = new THREE__namespace.MeshBasicMaterial({
9738
- map: compassTexture,
9739
- transparent: true,
9740
- opacity: 0,
9741
- depthTest: false,
9742
- });
9743
- const compassMesh = new THREE__namespace.Mesh(compassGeometry, compassMaterial);
9744
- compassMesh.name = 'pano-compass-mesh';
9745
- return compassMesh;
9661
+ async loadCompassMesh() {
9662
+ const compassImageUrl = this.state.config.compassImageUrl;
9663
+ const compassTexture = await loadTexture(compassImageUrl);
9664
+ const compassGeometry = new THREE__namespace.CircleGeometry(0.7, 32);
9665
+ const compassMaterial = new THREE__namespace.MeshBasicMaterial({
9666
+ map: compassTexture,
9667
+ transparent: true,
9668
+ opacity: 0,
9669
+ depthTest: false,
9746
9670
  });
9671
+ const compassMesh = new THREE__namespace.Mesh(compassGeometry, compassMaterial);
9672
+ compassMesh.name = 'pano-compass-mesh';
9673
+ return compassMesh;
9747
9674
  }
9748
- loadEntryDoorMesh() {
9749
- return __awaiter(this, void 0, void 0, function* () {
9750
- const entryDoorImageUrl = this.state.config.entryDoorImageUrl;
9751
- const entryDoorTexture = yield loadTexture(entryDoorImageUrl);
9752
- const entryDoorGeometry = new THREE__namespace.PlaneGeometry(0.2, 0.16);
9753
- const entryDoorMaterial = new THREE__namespace.MeshBasicMaterial({
9754
- map: entryDoorTexture,
9755
- transparent: true,
9756
- opacity: 0.8,
9757
- depthTest: false,
9758
- });
9759
- const entryDoorMesh = new THREE__namespace.Mesh(entryDoorGeometry, entryDoorMaterial);
9760
- entryDoorMesh.name = 'pano-compass-entry-door';
9761
- return entryDoorMesh;
9675
+ async loadEntryDoorMesh() {
9676
+ const entryDoorImageUrl = this.state.config.entryDoorImageUrl;
9677
+ const entryDoorTexture = await loadTexture(entryDoorImageUrl);
9678
+ const entryDoorGeometry = new THREE__namespace.PlaneGeometry(0.2, 0.16);
9679
+ const entryDoorMaterial = new THREE__namespace.MeshBasicMaterial({
9680
+ map: entryDoorTexture,
9681
+ transparent: true,
9682
+ opacity: 0.8,
9683
+ depthTest: false,
9762
9684
  });
9685
+ const entryDoorMesh = new THREE__namespace.Mesh(entryDoorGeometry, entryDoorMaterial);
9686
+ entryDoorMesh.name = 'pano-compass-entry-door';
9687
+ return entryDoorMesh;
9763
9688
  }
9764
9689
  loadRoomInfo() {
9765
9690
  const points = [
@@ -13813,7 +13738,7 @@ void main() {
13813
13738
 
13814
13739
  /* src/PanoSpatialTagPlugin/Components/origins.svelte generated by Svelte v3.49.0 */
13815
13740
 
13816
- function add_css$5(target) {
13741
+ function add_css$6(target) {
13817
13742
  internal.append_styles(target, "svelte-1kuu68s", ".PanoSpatialTagPlugin__tag-origin.svelte-1kuu68s{position:absolute;width:0.5rem;height:0.5rem;border-radius:50%;background:#fff;box-shadow:0 0 .6rem #fff;transform:translate(-50%, -50%) scale(1);transform-origin:center center;-webkit-animation:svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin 1.2s forwards;animation:svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin 1.2s forwards;pointer-events:auto}.PanoSpatialTagPlugin__tag-origin.svelte-1kuu68s:after{content:'';position:absolute;top:50%;height:50%;width:2rem;height:2rem;transform:translate(-50%, -50%)}.PanoSpatialTagPlugin__tag-origin-destroy.svelte-1kuu68s{transform:translate(-50%, -50%) scale(0.6);-webkit-animation:svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin-destroy 1.2s forwards .7s;animation:svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin-destroy 1.2s forwards .7s}@-webkit-keyframes svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin{0%{transform:translate(-50%, -50%) scale(1);opacity:0}100%{transform:translate(-50%, -50%) scale(0.6);opacity:1 }}@keyframes svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin{0%{transform:translate(-50%, -50%) scale(1);opacity:0}100%{transform:translate(-50%, -50%) scale(0.6);opacity:1 }}@-webkit-keyframes svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin-destroy{0%{transform:translate(-50%, -50%) scale(0.6);opacity:1}10%{transform:translate(-50%, -50%) scale(1);opacity:0.9}100%{transform:translate(-50%, -50%) scale(1);opacity:0}}@keyframes svelte-1kuu68s-PanoSpatialTagPlugin__tag-origin-destroy{0%{transform:translate(-50%, -50%) scale(0.6);opacity:1}10%{transform:translate(-50%, -50%) scale(1);opacity:0.9}100%{transform:translate(-50%, -50%) scale(1);opacity:0}}");
13818
13743
  }
13819
13744
 
@@ -13880,7 +13805,7 @@ void main() {
13880
13805
  };
13881
13806
  }
13882
13807
 
13883
- function create_fragment$5(ctx) {
13808
+ function create_fragment$6(ctx) {
13884
13809
  let each_1_anchor;
13885
13810
  let each_value = /*origins*/ ctx[0];
13886
13811
  let each_blocks = [];
@@ -13937,7 +13862,7 @@ void main() {
13937
13862
  };
13938
13863
  }
13939
13864
 
13940
- function instance$5($$self, $$props, $$invalidate) {
13865
+ function instance$6($$self, $$props, $$invalidate) {
13941
13866
  let { origins } = $$props;
13942
13867
 
13943
13868
  const handleClick = id => {
@@ -13956,17 +13881,17 @@ void main() {
13956
13881
  class Origins extends internal.SvelteComponent {
13957
13882
  constructor(options) {
13958
13883
  super();
13959
- internal.init(this, options, instance$5, create_fragment$5, internal.safe_not_equal, { origins: 0 }, add_css$5);
13884
+ internal.init(this, options, instance$6, create_fragment$6, internal.safe_not_equal, { origins: 0 }, add_css$6);
13960
13885
  }
13961
13886
  }
13962
13887
 
13963
13888
  /* src/PanoSpatialTagPlugin/Components/tag.svelte generated by Svelte v3.49.0 */
13964
13889
 
13965
- function add_css$4(target) {
13890
+ function add_css$5(target) {
13966
13891
  internal.append_styles(target, "svelte-eb8bdm", ".PanoSpatialTagPlugin__tag-x.svelte-eb8bdm.svelte-eb8bdm{position:absolute;top:0;left:0;display:block;white-space:nowrap;box-sizing:border-box;width:25rem;height:14rem;color:#FFF;transform:translate(0, -100%);transition:height .5s linear}.PanoSpatialTagPlugin__tag-shadow.svelte-eb8bdm.svelte-eb8bdm{content:'';position:absolute;width:30rem;height:30rem;top:-15rem;left:-15rem;z-index:-1;opacity:0;transition:opacity .8s .6s;background:url('https://vrlab-image4.ljcdn.com/release/web/PanoSpatialTagPlugin__blur.png');background-size:30rem 30rem}.PanoSpatialTagPlugin__tag-line.svelte-eb8bdm.svelte-eb8bdm{position:absolute;left:-1rem;width:2rem;height:100%;overflow:hidden}.PanoSpatialTagPlugin__tag-flagpole.svelte-eb8bdm.svelte-eb8bdm{position:absolute;top:0;left:1rem;height:calc(100% - 1.5rem);width:.15rem;background:linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, .1));box-shadow:0 .1rem .5rem rgba(0, 0, 0, .2);opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform .4s cubic-bezier(.44,.44,.74,.98) , opacity .4s cubic-bezier(.44,.44,.74,.98), width .5s linear, height .5s linear ;transform-origin:center bottom}.PanoSpatialTagPlugin__tag-line1.svelte-eb8bdm.svelte-eb8bdm{position:absolute;top:0;left:0.3rem;height:1.8rem;width:.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-line2.svelte-eb8bdm.svelte-eb8bdm{position:absolute;top:0;left:0.5rem;height:1.8rem;width:.1rem;background:#fff;opacity:0;transform:translate(-50%, 200%) scaleY(0);transform-origin:center top}.PanoSpatialTagPlugin__tag-show.svelte-eb8bdm .PanoSpatialTagPlugin__tag-line1.svelte-eb8bdm{-webkit-animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1 linear .5s forwards .45s;animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1 linear .5s forwards .45s}.PanoSpatialTagPlugin__tag-show.svelte-eb8bdm .PanoSpatialTagPlugin__tag-line2.svelte-eb8bdm{-webkit-animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2 linear .5s forwards .65s;animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2 linear .5s forwards .65s}.PanoSpatialTagPlugin__tag-x.PanoSpatialTagPlugin__tag-upside-down.svelte-eb8bdm.svelte-eb8bdm{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-upside-down.svelte-eb8bdm .PanoSpatialTagPlugin__tag-line.svelte-eb8bdm{transform:scaleY(-1)}.PanoSpatialTagPlugin__tag-animate.svelte-eb8bdm.svelte-eb8bdm{position:relative;height:100%;overflow:hidden;transform-origin:left top;transition:transform .5s linear}.PanoSpatialTagPlugin__tag-upside-down.svelte-eb8bdm .PanoSpatialTagPlugin__tag-animate.svelte-eb8bdm{transform-origin:left bottom}.PanoSpatialTagPlugin__tag-content.svelte-eb8bdm.svelte-eb8bdm{position:absolute;display:inline-block;transform:translate(-100%, 0);transition:transform .9s cubic-bezier(0,.65,.16,1.08) .6s;padding-left:.5rem;font-size:1rem}.PanoSpatialTagPlugin__tag-upside-down.svelte-eb8bdm .PanoSpatialTagPlugin__tag-content.svelte-eb8bdm{bottom:0}.PanoSpatialTagPlugin__tag-show.svelte-eb8bdm .PanoSpatialTagPlugin__tag-flagpole.svelte-eb8bdm{opacity:1;transform:translate(-50%, 0) scaleY(1)}.PanoSpatialTagPlugin__tag-upside-down.svelte-eb8bdm .PanoSpatialTagPlugin__tag-shadow.svelte-eb8bdm{top:unset;bottom:-15rem}.PanoSpatialTagPlugin__tag-show.svelte-eb8bdm .PanoSpatialTagPlugin__tag-shadow.svelte-eb8bdm{opacity:.32}.PanoSpatialTagPlugin__tag-show.svelte-eb8bdm .PanoSpatialTagPlugin__tag-content.svelte-eb8bdm{transform:translate(0, 0)}.PanoSpatialTagPlugin__tag-hide.svelte-eb8bdm .PanoSpatialTagPlugin__tag-flagpole.svelte-eb8bdm{opacity:0;transform:translate(-50%, 60%) scaleY(0);transition:transform .5s .55s, opacity .4s .55s}.PanoSpatialTagPlugin__tag-hide.svelte-eb8bdm .PanoSpatialTagPlugin__tag-shadow.svelte-eb8bdm{opacity:0;transition:opacity .8s}.PanoSpatialTagPlugin__tag-hide.svelte-eb8bdm .PanoSpatialTagPlugin__tag-content.svelte-eb8bdm{transform:translate(-100%, 0);transition:transform .6s cubic-bezier(.53,.06,.88,.59)}.PanoSpatialTagPlugin__tag-hide.svelte-eb8bdm .PanoSpatialTagPlugin__tag-content .svelte-eb8bdm{pointer-events:none}.PanoSpatialTagPlugin__tag-hide.svelte-eb8bdm .PanoSpatialTagPlugin__tag-line1.svelte-eb8bdm{opacity:0.5;transform:translate(-50%, 10%) scaleY(0);-webkit-animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1-hide linear .28s forwards .3s;animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1-hide linear .28s forwards .3s}.PanoSpatialTagPlugin__tag-hide.svelte-eb8bdm .PanoSpatialTagPlugin__tag-line2.svelte-eb8bdm{opacity:0.5;transform:translate(-50%, 0) scaleY(0);-webkit-animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2-hide linear .28s forwards .45s;animation:svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2-hide linear .28s forwards .45s}@-webkit-keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 135%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 20%) scaleY(0)}}@keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 135%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 20%) scaleY(0)}}@-webkit-keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 125%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}}@keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2{0%{opacity:0;transform:translate(-50%, 250%) scaleY(1)}50%{opacity:0.5;transform:translate(-50%, 125%) scaleY(1)}100%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}}@-webkit-keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1-hide{0%{opacity:0.5;transform:translate(-50%, 10%) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 105%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line1-hide{0%{opacity:0.5;transform:translate(-50%, 10%) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 105%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@-webkit-keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2-hide{0%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 100%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}@keyframes svelte-eb8bdm-PanoSpatialTagPlugin__tag-line2-hide{0%{opacity:0.5;transform:translate(-50%, 0) scaleY(0)}50%{opacity:0.2;transform:translate(-50%, 100%) scaleY(1)}100%{opacity:0;transform:translate(-50%, 200%) scaleY(0)}}");
13967
13892
  }
13968
13893
 
13969
- function create_fragment$4(ctx) {
13894
+ function create_fragment$5(ctx) {
13970
13895
  let div4;
13971
13896
  let div0;
13972
13897
  let t0;
@@ -14081,7 +14006,7 @@ void main() {
14081
14006
  };
14082
14007
  }
14083
14008
 
14084
- function instance$4($$self, $$props, $$invalidate) {
14009
+ function instance$5($$self, $$props, $$invalidate) {
14085
14010
  let { id } = $$props;
14086
14011
  let { upsideDown } = $$props;
14087
14012
  let { content } = $$props;
@@ -14218,8 +14143,8 @@ void main() {
14218
14143
  internal.init(
14219
14144
  this,
14220
14145
  options,
14221
- instance$4,
14222
- create_fragment$4,
14146
+ instance$5,
14147
+ create_fragment$5,
14223
14148
  internal.safe_not_equal,
14224
14149
  {
14225
14150
  id: 0,
@@ -14234,7 +14159,7 @@ void main() {
14234
14159
  events: 14,
14235
14160
  hooks: 15
14236
14161
  },
14237
- add_css$4
14162
+ add_css$5
14238
14163
  );
14239
14164
  }
14240
14165
  }
@@ -14888,11 +14813,11 @@ void main() {
14888
14813
 
14889
14814
  /* src/ModelItemLabelPlugin/ItemLabelItem.svelte generated by Svelte v3.49.0 */
14890
14815
 
14891
- function add_css$3(target) {
14816
+ function add_css$4(target) {
14892
14817
  internal.append_styles(target, "svelte-n1c1kg", ".item-label-item.svelte-n1c1kg{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:0}.item-label-item.visible.svelte-n1c1kg{opacity:1;-webkit-animation:svelte-n1c1kg-fadeIn .3s ease-in;animation:svelte-n1c1kg-fadeIn .3s ease-in}.item-label-item__text-wrap.svelte-n1c1kg::before{content:'';position:absolute;width:100%;height:100%;background-color:rgba(0, 0, 0, .3);filter:blur(0.83333rem);z-index:-1}.item-label-item__text-wrap.svelte-n1c1kg{padding:0.3125rem 0.3125rem 0;position:absolute;height:1.04167rem;pointer-events:all;background-size:100% 100%;background-repeat:no-repeat;white-space:nowrap;line-height:0.52083rem;font-size:0.57292rem;font-weight:bold;color:#FFEAC0;transform:translate(-50%, 0);display:flex;justify-content:center;align-items:center}.item-label-item__text.svelte-n1c1kg{padding-bottom:0.20833rem;border-top:0 solid;border-left:0 solid;border-right:0 solid;border-bottom:1px solid;-o-border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5;border-image:linear-gradient(to right, rgba(234, 208, 154, 0), rgba(234, 208, 154, 100), rgba(234, 208, 154, 0)) 4.5 1 4.5}.item-label-item__bar.svelte-n1c1kg{position:absolute;bottom:0;width:1px;background-image:linear-gradient(to bottom, rgba(234, 208, 154, 0), rgba(234, 208, 154, 1))}@-webkit-keyframes svelte-n1c1kg-fadeIn{from{opacity:0\n }to{opacity:1\n }}@keyframes svelte-n1c1kg-fadeIn{from{opacity:0\n }to{opacity:1\n }}");
14893
14818
  }
14894
14819
 
14895
- function create_fragment$3(ctx) {
14820
+ function create_fragment$4(ctx) {
14896
14821
  let div2;
14897
14822
  let div0;
14898
14823
  let span;
@@ -14973,7 +14898,7 @@ void main() {
14973
14898
  };
14974
14899
  }
14975
14900
 
14976
- function instance$3($$self, $$props, $$invalidate) {
14901
+ function instance$4($$self, $$props, $$invalidate) {
14977
14902
  let { itemLabel } = $$props;
14978
14903
  let { hooks } = $$props;
14979
14904
 
@@ -14993,7 +14918,7 @@ void main() {
14993
14918
  class ItemLabelItem$1 extends internal.SvelteComponent {
14994
14919
  constructor(options) {
14995
14920
  super();
14996
- internal.init(this, options, instance$3, create_fragment$3, internal.safe_not_equal, { itemLabel: 0, hooks: 2 }, add_css$3);
14921
+ internal.init(this, options, instance$4, create_fragment$4, internal.safe_not_equal, { itemLabel: 0, hooks: 2 }, add_css$4);
14997
14922
  }
14998
14923
  }
14999
14924
 
@@ -15014,7 +14939,7 @@ void main() {
15014
14939
 
15015
14940
  /* src/ModelItemLabelPlugin/ItemLabelComponent.svelte generated by Svelte v3.49.0 */
15016
14941
 
15017
- function add_css$2(target) {
14942
+ function add_css$3(target) {
15018
14943
  internal.append_styles(target, "svelte-gk8s47", ".item-labels-container.svelte-gk8s47{width:100%;height:100%;position:relative}");
15019
14944
  }
15020
14945
 
@@ -15073,7 +14998,7 @@ void main() {
15073
14998
  };
15074
14999
  }
15075
15000
 
15076
- function create_fragment$2(ctx) {
15001
+ function create_fragment$3(ctx) {
15077
15002
  let div;
15078
15003
  let each_blocks = [];
15079
15004
  let each_1_lookup = new Map();
@@ -15153,7 +15078,7 @@ void main() {
15153
15078
  let cssHeight = 26;
15154
15079
  let basicWidth$1 = 11;
15155
15080
 
15156
- function instance$2($$self, $$props, $$invalidate) {
15081
+ function instance$3($$self, $$props, $$invalidate) {
15157
15082
  const { Raycaster, Vector3 } = THREE__namespace;
15158
15083
  let { five } = $$props;
15159
15084
  let { modelOcclusionEnable } = $$props;
@@ -15355,8 +15280,8 @@ void main() {
15355
15280
  internal.init(
15356
15281
  this,
15357
15282
  options,
15358
- instance$2,
15359
- create_fragment$2,
15283
+ instance$3,
15284
+ create_fragment$3,
15360
15285
  internal.safe_not_equal,
15361
15286
  {
15362
15287
  five: 5,
@@ -15365,7 +15290,7 @@ void main() {
15365
15290
  hooks: 0,
15366
15291
  displayStrategyType: 8
15367
15292
  },
15368
- add_css$2
15293
+ add_css$3
15369
15294
  );
15370
15295
  }
15371
15296
  }
@@ -15669,7 +15594,7 @@ void main() {
15669
15594
  xhr.send();
15670
15595
  });
15671
15596
  };
15672
- const load = (data, videoElement) => __awaiter(void 0, void 0, void 0, function* () {
15597
+ const load = async (data, videoElement) => {
15673
15598
  const { video_src, video_poster_src, points } = data;
15674
15599
  state.videoSource = video_src;
15675
15600
  // TODO 存疑,先处理多一次遍历 o(2n)
@@ -15679,11 +15604,11 @@ void main() {
15679
15604
  if (videoElement) {
15680
15605
  state.videoElement = videoElement;
15681
15606
  }
15682
- state.videoTexture = yield getVideoTexture(state.videoSource, state.videoElement);
15607
+ state.videoTexture = await getVideoTexture(state.videoSource, state.videoElement);
15683
15608
  state.enabled = !!data.enable;
15684
15609
  if (state.enabled)
15685
15610
  enable();
15686
- });
15611
+ };
15687
15612
  const dispose = () => {
15688
15613
  disable();
15689
15614
  state.videoTexture = undefined;
@@ -15779,12 +15704,94 @@ void main() {
15779
15704
 
15780
15705
  /* src/ItemLabelPlugin/ItemLabelItem.svelte generated by Svelte v3.49.0 */
15781
15706
 
15782
- function add_css$1(target) {
15783
- internal.append_styles(target, "svelte-dka7wz", ".item-label-item.svelte-dka7wz.svelte-dka7wz{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-animation:svelte-dka7wz-fadeIn .3s ease-in;animation:svelte-dka7wz-fadeIn .3s ease-in}.item-label-item.fold.svelte-dka7wz>.item-label-item__text-wrap.svelte-dka7wz{visibility:hidden}.item-label-item.fold.svelte-dka7wz>.item-label-item__bar.anchor.svelte-dka7wz{visibility:hidden}.item-label-item.fold.svelte-dka7wz>.item-label-item__bar.anchor.svelte-dka7wz:after{visibility:visible}.item-label-item__text-wrap.svelte-dka7wz.svelte-dka7wz{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;padding:0.625rem 1.04167rem 0.625rem 0.625rem;position:absolute;width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:24.63542rem;min-height:4.79167rem;background-image:linear-gradient(269deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.60) 49%, rgba(31, 38, 46, 0.70) 100%);border:1.5px solid rgba(255, 255, 255, .65);border-radius:0.15625rem;color:white;transform:translate(-50%, 0);display:flex;justify-content:flex-start;align-items:center;box-sizing:border-box;overflow:hidden;pointer-events:all}.icon-wrap.svelte-dka7wz.svelte-dka7wz{width:3.54167rem;height:100%;display:flex;justify-content:center;align-content:center}.icon.svelte-dka7wz.svelte-dka7wz{width:3.54167rem;height:3.54167rem;background-repeat:no-repeat;background-size:contain;background-position:center}.item-label-text.svelte-dka7wz.svelte-dka7wz{margin-left:0.625rem;padding-left:0.625rem;min-height:3.54167rem;height:auto;display:flex;flex-flow:column;justify-content:space-around;align-content:flex-start;border-left:solid rgba(255, 255, 255, .2) 1px;border-top:solid rgba(255, 255, 255, .2) 0;border-right:solid rgba(255, 255, 255, .2) 0;border-bottom:solid rgba(255, 255, 255, .2) 0;pointer-events:auto}.item-model.svelte-dka7wz.svelte-dka7wz{white-space:nowrap;font-size:1.14583rem;font-weight:bold;line-height:1.5625rem}.item-name.svelte-dka7wz.svelte-dka7wz{height:auto;word-wrap:break-word;word-break:break-all;font-size:1.04167rem;line-height:1.45833rem}.item-label-item__bar.svelte-dka7wz.svelte-dka7wz{position:absolute;bottom:0;width:0.15625rem;background-image:linear-gradient(to bottom, white, rgba(255, 255, 255, 0));box-shadow:0 2px 0.41667rem 0 rgba(0, 0, 0, 0.20);pointer-events:none}.item-label-item__bar.anchor.svelte-dka7wz.svelte-dka7wz:after{content:'';position:absolute;bottom:0;width:1.25rem;height:1.25rem;background-image:url(\"//vrlab-public.ljcdn.com/common/file/web/67e7a198-28c9-47dc-879b-507bd3ae600c.png \");background-position:center;background-size:contain;transform:translate(-0.54688rem, 50%)}@-webkit-keyframes svelte-dka7wz-fadeIn{from{opacity:0\n }to{opacity:1\n }}@keyframes svelte-dka7wz-fadeIn{from{opacity:0\n }to{opacity:1\n }}");
15707
+ function add_css$2(target) {
15708
+ internal.append_styles(target, "svelte-6b32dy", ".item-label-item.svelte-6b32dy.svelte-6b32dy{position:absolute;z-index:0;transform:none;cursor:pointer;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-animation:svelte-6b32dy-fadeIn .3s ease-in;animation:svelte-6b32dy-fadeIn .3s ease-in}.item-label-item.fold.svelte-6b32dy>.item-label-item__text-wrap.svelte-6b32dy{visibility:hidden}.item-label-item.fold.svelte-6b32dy>.item-label-item__bar.anchor.svelte-6b32dy{visibility:hidden}.item-label-item.fold.svelte-6b32dy>.item-label-item__bar.anchor.svelte-6b32dy:after{visibility:visible}.item-label-item__text-wrap.svelte-6b32dy.svelte-6b32dy{height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;padding:0.625rem 1.04167rem 0.625rem 0.625rem;position:absolute;width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:24.63542rem;min-height:4.79167rem;background-image:linear-gradient(269deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.60) 49%, rgba(31, 38, 46, 0.70) 100%);border:1.5px solid rgba(255, 255, 255, .65);border-radius:0.15625rem;color:white;transform:translate(-50%, 0);display:flex;justify-content:flex-start;align-items:center;box-sizing:border-box;overflow:hidden;pointer-events:all}.item-label-item__custom.svelte-6b32dy.svelte-6b32dy{padding:0.625rem;max-width:unset;min-height:unset}.icon-wrap.svelte-6b32dy.svelte-6b32dy{width:3.54167rem;height:100%;display:flex;justify-content:center;align-content:center}.icon.svelte-6b32dy.svelte-6b32dy{width:3.54167rem;height:3.54167rem;background-repeat:no-repeat;background-size:contain;background-position:center}.item-label-text.svelte-6b32dy.svelte-6b32dy{margin-left:0.625rem;padding-left:0.625rem;min-height:3.54167rem;height:auto;display:flex;flex-flow:column;justify-content:space-around;align-content:flex-start;border-left:solid rgba(255, 255, 255, .2) 1px;border-top:solid rgba(255, 255, 255, .2) 0;border-right:solid rgba(255, 255, 255, .2) 0;border-bottom:solid rgba(255, 255, 255, .2) 0;pointer-events:auto}.item-model.svelte-6b32dy.svelte-6b32dy{white-space:nowrap;font-size:1.14583rem;font-weight:bold;line-height:1.5625rem}.item-name.svelte-6b32dy.svelte-6b32dy{height:auto;word-wrap:break-word;word-break:break-all;font-size:1.04167rem;line-height:1.45833rem}.item-label-item__bar.svelte-6b32dy.svelte-6b32dy{position:absolute;bottom:0;width:0.15625rem;background-image:linear-gradient(to bottom, white, rgba(255, 255, 255, 0));box-shadow:0 2px 0.41667rem 0 rgba(0, 0, 0, 0.20);pointer-events:none}.item-label-item__bar.anchor.svelte-6b32dy.svelte-6b32dy:after{content:'';position:absolute;bottom:0;width:1.25rem;height:1.25rem;background-image:url(\"//vrlab-public.ljcdn.com/common/file/web/67e7a198-28c9-47dc-879b-507bd3ae600c.png \");background-position:center;background-size:contain;transform:translate(-0.54688rem, 50%)}@-webkit-keyframes svelte-6b32dy-fadeIn{from{opacity:0\n }to{opacity:1\n }}@keyframes svelte-6b32dy-fadeIn{from{opacity:0\n }to{opacity:1\n }}");
15709
+ }
15710
+
15711
+ // (34:8) {:else}
15712
+ function create_else_block(ctx) {
15713
+ let t0;
15714
+ let div;
15715
+ let span0;
15716
+ let t1_value = (/*itemLabel*/ ctx[0].code || /*itemLabel*/ ctx[0].id) + "";
15717
+ let t1;
15718
+ let t2;
15719
+ let span1;
15720
+ let t3_value = /*itemLabel*/ ctx[0].name + "";
15721
+ let t3;
15722
+ let if_block = /*itemLabel*/ ctx[0].icon && create_if_block_1(ctx);
15723
+
15724
+ return {
15725
+ c() {
15726
+ if (if_block) if_block.c();
15727
+ t0 = internal.space();
15728
+ div = internal.element("div");
15729
+ span0 = internal.element("span");
15730
+ t1 = internal.text(t1_value);
15731
+ t2 = internal.space();
15732
+ span1 = internal.element("span");
15733
+ t3 = internal.text(t3_value);
15734
+ internal.attr(span0, "class", "item-model svelte-6b32dy");
15735
+ internal.attr(span1, "class", "item-name svelte-6b32dy");
15736
+ internal.attr(div, "class", "item-label-text svelte-6b32dy");
15737
+ },
15738
+ m(target, anchor) {
15739
+ if (if_block) if_block.m(target, anchor);
15740
+ internal.insert(target, t0, anchor);
15741
+ internal.insert(target, div, anchor);
15742
+ internal.append(div, span0);
15743
+ internal.append(span0, t1);
15744
+ internal.append(div, t2);
15745
+ internal.append(div, span1);
15746
+ internal.append(span1, t3);
15747
+ },
15748
+ p(ctx, dirty) {
15749
+ if (/*itemLabel*/ ctx[0].icon) {
15750
+ if (if_block) {
15751
+ if_block.p(ctx, dirty);
15752
+ } else {
15753
+ if_block = create_if_block_1(ctx);
15754
+ if_block.c();
15755
+ if_block.m(t0.parentNode, t0);
15756
+ }
15757
+ } else if (if_block) {
15758
+ if_block.d(1);
15759
+ if_block = null;
15760
+ }
15761
+
15762
+ if (dirty & /*itemLabel*/ 1 && t1_value !== (t1_value = (/*itemLabel*/ ctx[0].code || /*itemLabel*/ ctx[0].id) + "")) internal.set_data(t1, t1_value);
15763
+ if (dirty & /*itemLabel*/ 1 && t3_value !== (t3_value = /*itemLabel*/ ctx[0].name + "")) internal.set_data(t3, t3_value);
15764
+ },
15765
+ d(detaching) {
15766
+ if (if_block) if_block.d(detaching);
15767
+ if (detaching) internal.detach(t0);
15768
+ if (detaching) internal.detach(div);
15769
+ }
15770
+ };
15784
15771
  }
15785
15772
 
15786
- // (21:2) {#if itemLabel.icon}
15773
+ // (32:8) {#if Boolean(typeof itemLabel.render === 'function')}
15787
15774
  function create_if_block$1(ctx) {
15775
+ let div;
15776
+
15777
+ return {
15778
+ c() {
15779
+ div = internal.element("div");
15780
+ },
15781
+ m(target, anchor) {
15782
+ internal.insert(target, div, anchor);
15783
+ /*div_binding*/ ctx[6](div);
15784
+ },
15785
+ p: internal.noop,
15786
+ d(detaching) {
15787
+ if (detaching) internal.detach(div);
15788
+ /*div_binding*/ ctx[6](null);
15789
+ }
15790
+ };
15791
+ }
15792
+
15793
+ // (35:12) {#if itemLabel.icon}
15794
+ function create_if_block_1(ctx) {
15788
15795
  let div1;
15789
15796
  let div0;
15790
15797
  let div0_style_value;
@@ -15795,16 +15802,16 @@ void main() {
15795
15802
  c() {
15796
15803
  div1 = internal.element("div");
15797
15804
  div0 = internal.element("div");
15798
- internal.attr(div0, "class", "icon svelte-dka7wz");
15805
+ internal.attr(div0, "class", "icon svelte-6b32dy");
15799
15806
  internal.attr(div0, "style", div0_style_value = `background-image: url(${/*itemLabel*/ ctx[0].icon})`);
15800
- internal.attr(div1, "class", "icon-wrap svelte-dka7wz");
15807
+ internal.attr(div1, "class", "icon-wrap svelte-6b32dy");
15801
15808
  },
15802
15809
  m(target, anchor) {
15803
15810
  internal.insert(target, div1, anchor);
15804
15811
  internal.append(div1, div0);
15805
15812
 
15806
15813
  if (!mounted) {
15807
- dispose = internal.listen(div1, "click", /*click_handler*/ ctx[5]);
15814
+ dispose = internal.listen(div1, "click", /*click_handler*/ ctx[7]);
15808
15815
  mounted = true;
15809
15816
  }
15810
15817
  },
@@ -15821,123 +15828,114 @@ void main() {
15821
15828
  };
15822
15829
  }
15823
15830
 
15824
- function create_fragment$1(ctx) {
15825
- let div3;
15826
- let div1;
15827
- let t0;
15828
- let div0;
15829
- let span0;
15830
- let t1_value = (/*itemLabel*/ ctx[0].code || /*itemLabel*/ ctx[0].id) + "";
15831
- let t1;
15832
- let t2;
15833
- let span1;
15834
- let t3_value = /*itemLabel*/ ctx[0].name + "";
15835
- let t3;
15836
- let t4;
15831
+ function create_fragment$2(ctx) {
15837
15832
  let div2;
15833
+ let div0;
15834
+ let show_if;
15835
+ let div0_class_value;
15836
+ let t;
15837
+ let div1;
15838
+ let div1_class_value;
15838
15839
  let div2_class_value;
15839
- let div3_class_value;
15840
15840
  let mounted;
15841
15841
  let dispose;
15842
- let if_block = /*itemLabel*/ ctx[0].icon && create_if_block$1(ctx);
15842
+
15843
+ function select_block_type(ctx, dirty) {
15844
+ if (dirty & /*itemLabel*/ 1) show_if = null;
15845
+ if (show_if == null) show_if = !!Boolean(typeof /*itemLabel*/ ctx[0].render === 'function');
15846
+ if (show_if) return create_if_block$1;
15847
+ return create_else_block;
15848
+ }
15849
+
15850
+ let current_block_type = select_block_type(ctx, -1);
15851
+ let if_block = current_block_type(ctx);
15843
15852
 
15844
15853
  return {
15845
15854
  c() {
15846
- div3 = internal.element("div");
15847
- div1 = internal.element("div");
15848
- if (if_block) if_block.c();
15849
- t0 = internal.space();
15850
- div0 = internal.element("div");
15851
- span0 = internal.element("span");
15852
- t1 = internal.text(t1_value);
15853
- t2 = internal.space();
15854
- span1 = internal.element("span");
15855
- t3 = internal.text(t3_value);
15856
- t4 = internal.space();
15857
15855
  div2 = internal.element("div");
15858
- internal.attr(span0, "class", "item-model svelte-dka7wz");
15859
- internal.attr(span1, "class", "item-name svelte-dka7wz");
15860
- internal.attr(div0, "class", "item-label-text svelte-dka7wz");
15861
- internal.attr(div1, "class", "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__text-wrap")) + " svelte-dka7wz"));
15862
- internal.set_style(div1, "bottom", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15863
- internal.attr(div2, "class", div2_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__bar", { anchor: /*anchorEnabled*/ ctx[1] })) + " svelte-dka7wz"));
15864
- internal.set_style(div2, "height", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15865
- internal.attr(div3, "class", div3_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item", { fold: /*itemLabel*/ ctx[0].isFold })) + " svelte-dka7wz"));
15866
- internal.set_style(div3, "z-index", /*itemLabel*/ ctx[0].zIndex, false);
15867
- internal.set_style(div3, "transform", /*itemLabel*/ ctx[0].transform, false);
15856
+ div0 = internal.element("div");
15857
+ if_block.c();
15858
+ t = internal.space();
15859
+ div1 = internal.element("div");
15860
+
15861
+ internal.attr(div0, "class", div0_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__text-wrap", {
15862
+ 'item-label-item__custom': Boolean(typeof /*itemLabel*/ ctx[0].render === 'function')
15863
+ })) + " svelte-6b32dy"));
15864
+
15865
+ internal.set_style(div0, "bottom", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15866
+ internal.attr(div1, "class", div1_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__bar", { anchor: /*anchorEnabled*/ ctx[1] })) + " svelte-6b32dy"));
15867
+ internal.set_style(div1, "height", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15868
+ internal.attr(div2, "class", div2_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item", { fold: /*itemLabel*/ ctx[0].isFold })) + " svelte-6b32dy"));
15869
+ internal.set_style(div2, "z-index", /*itemLabel*/ ctx[0].zIndex, false);
15870
+ internal.set_style(div2, "transform", /*itemLabel*/ ctx[0].transform, false);
15868
15871
  },
15869
15872
  m(target, anchor) {
15870
- internal.insert(target, div3, anchor);
15871
- internal.append(div3, div1);
15872
- if (if_block) if_block.m(div1, null);
15873
- internal.append(div1, t0);
15874
- internal.append(div1, div0);
15875
- internal.append(div0, span0);
15876
- internal.append(span0, t1);
15877
- internal.append(div0, t2);
15878
- internal.append(div0, span1);
15879
- internal.append(span1, t3);
15880
- internal.append(div3, t4);
15881
- internal.append(div3, div2);
15873
+ internal.insert(target, div2, anchor);
15874
+ internal.append(div2, div0);
15875
+ if_block.m(div0, null);
15876
+ internal.append(div2, t);
15877
+ internal.append(div2, div1);
15882
15878
 
15883
15879
  if (!mounted) {
15884
- dispose = internal.listen(div1, "click", /*onClick*/ ctx[3]);
15880
+ dispose = internal.listen(div0, "click", /*onClick*/ ctx[4]);
15885
15881
  mounted = true;
15886
15882
  }
15887
15883
  },
15888
15884
  p(ctx, [dirty]) {
15889
- if (/*itemLabel*/ ctx[0].icon) {
15885
+ if (current_block_type === (current_block_type = select_block_type(ctx, dirty)) && if_block) {
15886
+ if_block.p(ctx, dirty);
15887
+ } else {
15888
+ if_block.d(1);
15889
+ if_block = current_block_type(ctx);
15890
+
15890
15891
  if (if_block) {
15891
- if_block.p(ctx, dirty);
15892
- } else {
15893
- if_block = create_if_block$1(ctx);
15894
15892
  if_block.c();
15895
- if_block.m(div1, t0);
15893
+ if_block.m(div0, null);
15896
15894
  }
15897
- } else if (if_block) {
15898
- if_block.d(1);
15899
- if_block = null;
15900
15895
  }
15901
15896
 
15902
- if (dirty & /*itemLabel*/ 1 && t1_value !== (t1_value = (/*itemLabel*/ ctx[0].code || /*itemLabel*/ ctx[0].id) + "")) internal.set_data(t1, t1_value);
15903
- if (dirty & /*itemLabel*/ 1 && t3_value !== (t3_value = /*itemLabel*/ ctx[0].name + "")) internal.set_data(t3, t3_value);
15897
+ if (dirty & /*itemLabel*/ 1 && div0_class_value !== (div0_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__text-wrap", {
15898
+ 'item-label-item__custom': Boolean(typeof /*itemLabel*/ ctx[0].render === 'function')
15899
+ })) + " svelte-6b32dy"))) {
15900
+ internal.attr(div0, "class", div0_class_value);
15901
+ }
15904
15902
 
15905
15903
  if (dirty & /*itemLabel*/ 1) {
15906
- internal.set_style(div1, "bottom", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15904
+ internal.set_style(div0, "bottom", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15907
15905
  }
15908
15906
 
15909
- if (dirty & /*anchorEnabled*/ 2 && div2_class_value !== (div2_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__bar", { anchor: /*anchorEnabled*/ ctx[1] })) + " svelte-dka7wz"))) {
15910
- internal.attr(div2, "class", div2_class_value);
15907
+ if (dirty & /*anchorEnabled*/ 2 && div1_class_value !== (div1_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item__bar", { anchor: /*anchorEnabled*/ ctx[1] })) + " svelte-6b32dy"))) {
15908
+ internal.attr(div1, "class", div1_class_value);
15911
15909
  }
15912
15910
 
15913
15911
  if (dirty & /*itemLabel*/ 1) {
15914
- internal.set_style(div2, "height", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15912
+ internal.set_style(div1, "height", `${/*itemLabel*/ ctx[0].strokeLength}px`);
15915
15913
  }
15916
15914
 
15917
- if (dirty & /*itemLabel*/ 1 && div3_class_value !== (div3_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item", { fold: /*itemLabel*/ ctx[0].isFold })) + " svelte-dka7wz"))) {
15918
- internal.attr(div3, "class", div3_class_value);
15915
+ if (dirty & /*itemLabel*/ 1 && div2_class_value !== (div2_class_value = "" + (internal.null_to_empty(classNames__default["default"]("item-label-item", { fold: /*itemLabel*/ ctx[0].isFold })) + " svelte-6b32dy"))) {
15916
+ internal.attr(div2, "class", div2_class_value);
15919
15917
  }
15920
15918
 
15921
15919
  if (dirty & /*itemLabel*/ 1) {
15922
- internal.set_style(div3, "z-index", /*itemLabel*/ ctx[0].zIndex, false);
15920
+ internal.set_style(div2, "z-index", /*itemLabel*/ ctx[0].zIndex, false);
15923
15921
  }
15924
15922
 
15925
15923
  if (dirty & /*itemLabel*/ 1) {
15926
- internal.set_style(div3, "transform", /*itemLabel*/ ctx[0].transform, false);
15924
+ internal.set_style(div2, "transform", /*itemLabel*/ ctx[0].transform, false);
15927
15925
  }
15928
15926
  },
15929
15927
  i: internal.noop,
15930
15928
  o: internal.noop,
15931
15929
  d(detaching) {
15932
- if (detaching) internal.detach(div3);
15933
- if (if_block) if_block.d();
15930
+ if (detaching) internal.detach(div2);
15931
+ if_block.d();
15934
15932
  mounted = false;
15935
15933
  dispose();
15936
15934
  }
15937
15935
  };
15938
15936
  }
15939
15937
 
15940
- function instance$1($$self, $$props, $$invalidate) {
15938
+ function instance$2($$self, $$props, $$invalidate) {
15941
15939
  let { itemLabel } = $$props;
15942
15940
  let { hooks } = $$props;
15943
15941
  let { anchorEnabled } = $$props;
@@ -15948,16 +15946,50 @@ void main() {
15948
15946
  hooks.emit('onLabelClick', itemLabel);
15949
15947
  }
15950
15948
 
15949
+ let customElement;
15950
+
15951
+ function div_binding($$value) {
15952
+ internal.binding_callbacks[$$value ? 'unshift' : 'push'](() => {
15953
+ customElement = $$value;
15954
+ $$invalidate(3, customElement);
15955
+ });
15956
+ }
15957
+
15951
15958
  const click_handler = e => onIconClick(itemLabel);
15952
15959
 
15953
15960
  $$self.$$set = $$props => {
15954
15961
  if ('itemLabel' in $$props) $$invalidate(0, itemLabel = $$props.itemLabel);
15955
- if ('hooks' in $$props) $$invalidate(4, hooks = $$props.hooks);
15962
+ if ('hooks' in $$props) $$invalidate(5, hooks = $$props.hooks);
15956
15963
  if ('anchorEnabled' in $$props) $$invalidate(1, anchorEnabled = $$props.anchorEnabled);
15957
15964
  if ('onIconClick' in $$props) $$invalidate(2, onIconClick = $$props.onIconClick);
15958
15965
  };
15959
15966
 
15960
- return [itemLabel, anchorEnabled, onIconClick, onClick, hooks, click_handler];
15967
+ $$self.$$.update = () => {
15968
+ if ($$self.$$.dirty & /*itemLabel, customElement*/ 9) {
15969
+ {
15970
+ if (typeof itemLabel.render === 'function' && customElement) {
15971
+ if (customElement.children.length === 0) {
15972
+ const child = itemLabel.render(itemLabel);
15973
+
15974
+ if (child) {
15975
+ customElement.appendChild(child);
15976
+ }
15977
+ }
15978
+ }
15979
+ }
15980
+ }
15981
+ };
15982
+
15983
+ return [
15984
+ itemLabel,
15985
+ anchorEnabled,
15986
+ onIconClick,
15987
+ customElement,
15988
+ onClick,
15989
+ hooks,
15990
+ div_binding,
15991
+ click_handler
15992
+ ];
15961
15993
  }
15962
15994
 
15963
15995
  class ItemLabelItem extends internal.SvelteComponent {
@@ -15967,16 +15999,16 @@ void main() {
15967
15999
  internal.init(
15968
16000
  this,
15969
16001
  options,
15970
- instance$1,
15971
- create_fragment$1,
16002
+ instance$2,
16003
+ create_fragment$2,
15972
16004
  internal.safe_not_equal,
15973
16005
  {
15974
16006
  itemLabel: 0,
15975
- hooks: 4,
16007
+ hooks: 5,
15976
16008
  anchorEnabled: 1,
15977
16009
  onIconClick: 2
15978
16010
  },
15979
- add_css$1
16011
+ add_css$2
15980
16012
  );
15981
16013
  }
15982
16014
  }
@@ -16021,7 +16053,7 @@ void main() {
16021
16053
 
16022
16054
  /* src/ItemLabelPlugin/ItemLabelComponent.svelte generated by Svelte v3.49.0 */
16023
16055
 
16024
- function add_css(target) {
16056
+ function add_css$1(target) {
16025
16057
  internal.append_styles(target, "svelte-gk8s47", ".item-labels-container.svelte-gk8s47{width:100%;height:100%;position:relative}");
16026
16058
  }
16027
16059
 
@@ -16140,7 +16172,7 @@ void main() {
16140
16172
  };
16141
16173
  }
16142
16174
 
16143
- function create_fragment(ctx) {
16175
+ function create_fragment$1(ctx) {
16144
16176
  let div;
16145
16177
  let each_blocks = [];
16146
16178
  let each_1_lookup = new Map();
@@ -16218,7 +16250,7 @@ void main() {
16218
16250
  }
16219
16251
  let basicWidth = 11;
16220
16252
 
16221
- function instance($$self, $$props, $$invalidate) {
16253
+ function instance$1($$self, $$props, $$invalidate) {
16222
16254
  const { Raycaster, Vector3 } = THREE__namespace;
16223
16255
  let { five: five$1 } = $$props;
16224
16256
  let { modelOcclusionEnable } = $$props;
@@ -16511,8 +16543,8 @@ void main() {
16511
16543
  internal.init(
16512
16544
  this,
16513
16545
  options,
16514
- instance,
16515
- create_fragment,
16546
+ instance$1,
16547
+ create_fragment$1,
16516
16548
  internal.safe_not_equal,
16517
16549
  {
16518
16550
  five: 7,
@@ -16523,7 +16555,7 @@ void main() {
16523
16555
  displayStrategyType: 11,
16524
16556
  maxVisibleDistance: 12
16525
16557
  },
16526
- add_css,
16558
+ add_css$1,
16527
16559
  [-1, -1]
16528
16560
  );
16529
16561
  }
@@ -16661,7 +16693,737 @@ void main() {
16661
16693
  version: 0,
16662
16694
  };
16663
16695
 
16664
- const DnalogelVersion = '2.0.0-alpha.38';
16696
+ /**
16697
+ * pano plugin controller 基类
16698
+ * @author kyleju
16699
+ */
16700
+ class BasePanoPluginController extends Controller$5 {
16701
+ constructor(five) {
16702
+ super(five);
16703
+ Object.defineProperty(this, "state", {
16704
+ enumerable: true,
16705
+ configurable: true,
16706
+ writable: true,
16707
+ value: void 0
16708
+ });
16709
+ Object.defineProperty(this, "container", {
16710
+ enumerable: true,
16711
+ configurable: true,
16712
+ writable: true,
16713
+ value: void 0
16714
+ });
16715
+ Object.defineProperty(this, "enabled", {
16716
+ enumerable: true,
16717
+ configurable: true,
16718
+ writable: true,
16719
+ value: void 0
16720
+ });
16721
+ this.five = five;
16722
+ this.five.once('dispose', this.dispose);
16723
+ this.enabled = true;
16724
+ this.state = this.initState();
16725
+ console.log('base controller');
16726
+ }
16727
+ /**
16728
+ * 启用组件
16729
+ * @param options
16730
+ */
16731
+ enable(options) {
16732
+ this.enabled = true;
16733
+ this.updateState(Object.assign(Object.assign({}, options), { userAction: true }));
16734
+ }
16735
+ /**
16736
+ * 禁用组件
16737
+ * @param options
16738
+ */
16739
+ disable(options) {
16740
+ this.enabled = false;
16741
+ this.updateState(Object.assign(Object.assign({}, options), { userAction: true }));
16742
+ }
16743
+ /**
16744
+ * 显示 UI
16745
+ * @param options
16746
+ * @returns
16747
+ */
16748
+ show(options) {
16749
+ if (!this.state.enabled)
16750
+ return;
16751
+ this.setState(Object.assign(Object.assign({}, this.state), { visible: true }), options);
16752
+ return Promise.resolve();
16753
+ }
16754
+ /**
16755
+ * 隐藏 UI
16756
+ * @param options
16757
+ * @returns
16758
+ */
16759
+ hide(options) {
16760
+ if (!this.state.enabled)
16761
+ return;
16762
+ this.setState(Object.assign(Object.assign({}, this.state), { visible: false }), options);
16763
+ return Promise.resolve();
16764
+ }
16765
+ /**
16766
+ * 销毁对象
16767
+ */
16768
+ dispose() {
16769
+ this.container.remove();
16770
+ }
16771
+ /**
16772
+ * 设置状态
16773
+ * @param state @T 状态
16774
+ * @param options @BaseOptions 可选配置
16775
+ * @returns
16776
+ */
16777
+ setState(state, options) {
16778
+ if (!this.enabled)
16779
+ return;
16780
+ const prevState = Object.assign({}, this.state);
16781
+ this.state = Object.assign(Object.assign(Object.assign({}, this.state), state), options);
16782
+ this.stateChangedCallback(prevState, options);
16783
+ }
16784
+ get visible() {
16785
+ return this.five.state.mode === five.Five.Mode.Panorama;
16786
+ }
16787
+ appendTo(container) {
16788
+ if (!this.enabled)
16789
+ return;
16790
+ this.container = container;
16791
+ this.render();
16792
+ }
16793
+ updateState(options) {
16794
+ this.setState(Object.assign(Object.assign({}, this.state), { enabled: this.enabled, visible: this.visible }), options);
16795
+ }
16796
+ }
16797
+
16798
+ /* src/PanoDoorLabelPlugin/DoorLabelItem.svelte generated by Svelte v3.49.0 */
16799
+
16800
+ function add_css(target) {
16801
+ internal.append_styles(target, "svelte-6rn4em", ".plugin-DoorLabelPlugin-item.svelte-6rn4em.svelte-6rn4em{position:absolute;left:0;top:0;width:0;height:0;pointer-events:none;transition:opacity 0.3s ease}.plugin-DoorLabelPlugin-cnt.svelte-6rn4em.svelte-6rn4em{position:absolute;top:50%;left:50%;border-radius:0.125rem;background:rgba(0, 0, 0, 0.35);line-height:0.625rem;padding:0.3125rem;white-space:nowrap;font-size:0.625rem;font-style:normal;color:white;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform ease 1s, background ease 0.3s, color ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-6rn4em.svelte-6rn4em::after{content:\"\";display:block;position:absolute;top:-1px;left:-1px;bottom:-1px;right:-1px;border-radius:0.125rem;border:1px solid rgba(0, 0, 0, 0);-o-border-image:url(\"//vrlab-image4.ljcdn.com/release/web/highlightCarouseal-border-image.14b51834.png\") 4;border-image:url(\"//vrlab-image4.ljcdn.com/release/web/highlightCarouseal-border-image.14b51834.png\") 4;transition:opacity ease 0.3s}.plugin-DoorLabelPlugin-cnt.svelte-6rn4em.svelte-6rn4em:active,.plugin-DoorLabelPlugin-cnt.svelte-6rn4em.svelte-6rn4em:focus{background:rgba(0, 0, 0, 0.5);color:rgba(255, 255, 255, 0.5)}.plugin-DoorLabelPlugin-icon.svelte-6rn4em.svelte-6rn4em{background:url(\"//vrlab-image4.ljcdn.com/release/web/DoorLabel-icon.de1304ae.svg\") no-repeat;background-size:100%;display:inline-block;width:0.52083rem;height:0.52083rem;margin-left:0.20833rem;transform-origin:center}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].left.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-6rn4em .plugin-DoorLabelPlugin-txt.svelte-6rn4em{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=forward].right.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(-90deg);margin-left:0;margin-right:0.20833rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].forward.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-6rn4em .plugin-DoorLabelPlugin-txt.svelte-6rn4em{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=right].back.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(-90deg);margin-left:0;margin-right:0.20833rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].back.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-6rn4em .plugin-DoorLabelPlugin-txt.svelte-6rn4em{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=left].forward.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(-90deg);margin-left:0;margin-right:0.20833rem;order:0}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].right.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(90deg)}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-6rn4em .plugin-DoorLabelPlugin-txt.svelte-6rn4em{order:1}.plugin-DoorLabelPlugin-cnt[data-camera-toward=back].left.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{transform:rotate(-90deg);margin-left:0;margin-right:0.20833rem;order:0}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-6rn4em.svelte-6rn4em{color:#f9eac1}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-6rn4em .plugin-DoorLabelPlugin-icon.svelte-6rn4em{background:url(\"//vrlab-image4.ljcdn.com/release/web/arrow.6e8ec00e.svg\") no-repeat}.plugin-DoorLabelPlugin-cnt--customBrand.svelte-6rn4em.svelte-6rn4em:active,.plugin-DoorLabelPlugin-cnt--customBrand.svelte-6rn4em.svelte-6rn4em:focus{background:rgba(0, 0, 0, 0.5);color:rgba(249, 234, 193, 0.5)}");
16802
+ }
16803
+
16804
+ function create_fragment(ctx) {
16805
+ let div1;
16806
+ let div0;
16807
+ let span;
16808
+ let t1;
16809
+ let i;
16810
+ let div0_class_value;
16811
+ let mounted;
16812
+ let dispose;
16813
+
16814
+ return {
16815
+ c() {
16816
+ div1 = internal.element("div");
16817
+ div0 = internal.element("div");
16818
+ span = internal.element("span");
16819
+ span.textContent = `${/*name*/ ctx[8]}`;
16820
+ t1 = internal.space();
16821
+ i = internal.element("i");
16822
+ internal.attr(span, "class", "plugin-DoorLabelPlugin-txt svelte-6rn4em");
16823
+ internal.attr(i, "class", "plugin-DoorLabelPlugin-icon svelte-6rn4em");
16824
+ internal.attr(div0, "class", div0_class_value = "" + (internal.null_to_empty(classNames__default["default"]('plugin-DoorLabelPlugin-cnt', /*props*/ ctx[0].toward)) + " svelte-6rn4em"));
16825
+ internal.attr(div0, "style", `transform: ${/*transform*/ ctx[6] || 'initial'};pointerEvents: ${/*inSight*/ ctx[5] ? 'auto' : 'none'};opacity: ${/*inSight*/ ctx[5] ? 1 : 0}`);
16826
+ internal.attr(div0, "data-camera-toward", /*cameraToward*/ ctx[7]);
16827
+ internal.attr(div1, "style", `left: ${/*left*/ ctx[3] || 0}%;top: ${/*top*/ ctx[4] || 0}%;opacity: ${/*inSight*/ ctx[5] ? 1 : 0}`);
16828
+ internal.attr(div1, "class", "plugin-DoorLabelPlugin-item svelte-6rn4em");
16829
+ },
16830
+ m(target, anchor) {
16831
+ internal.insert(target, div1, anchor);
16832
+ internal.append(div1, div0);
16833
+ internal.append(div0, span);
16834
+ internal.append(div0, t1);
16835
+ internal.append(div0, i);
16836
+ /*div1_binding*/ ctx[10](div1);
16837
+
16838
+ if (!mounted) {
16839
+ dispose = internal.listen(div0, "click", /*click_handler*/ ctx[9]);
16840
+ mounted = true;
16841
+ }
16842
+ },
16843
+ p(ctx, [dirty]) {
16844
+ if (dirty & /*props*/ 1 && div0_class_value !== (div0_class_value = "" + (internal.null_to_empty(classNames__default["default"]('plugin-DoorLabelPlugin-cnt', /*props*/ ctx[0].toward)) + " svelte-6rn4em"))) {
16845
+ internal.attr(div0, "class", div0_class_value);
16846
+ }
16847
+ },
16848
+ i: internal.noop,
16849
+ o: internal.noop,
16850
+ d(detaching) {
16851
+ if (detaching) internal.detach(div1);
16852
+ /*div1_binding*/ ctx[10](null);
16853
+ mounted = false;
16854
+ dispose();
16855
+ }
16856
+ };
16857
+ }
16858
+
16859
+ function instance($$self, $$props, $$invalidate) {
16860
+ let { props } = $$props;
16861
+ let { onClick } = $$props;
16862
+ let divElement;
16863
+ let { left, top, inSight, transform, panoIndex, cameraToward, name } = props;
16864
+ let prevPanoIndexRef = 0;
16865
+
16866
+ const initPanoIndex = () => {
16867
+ if (!left || !top || !inSight) {
16868
+ return;
16869
+ }
16870
+
16871
+ if (!divElement) return;
16872
+ const _width = divElement.current.clientWidth / window.innerWidth * 100;
16873
+ const _height = divElement.current.clientHeight / window.innerHeight * 100;
16874
+
16875
+ if (left <= _width / 2 || left >= 100 - _width / 2) {
16876
+ return;
16877
+ }
16878
+
16879
+ if (top <= _height / 2 || top >= 100 - _height / 2) {
16880
+ return;
16881
+ }
16882
+
16883
+ const prevPanoIndex = prevPanoIndexRef;
16884
+
16885
+ if (panoIndex !== prevPanoIndex) {
16886
+ // 触发埋点
16887
+ console.log('panoDoorLabelPlugin', panoIndex, '触发埋点');
16888
+
16889
+ // 这里触发曝光埋点
16890
+ prevPanoIndexRef = panoIndex;
16891
+ }
16892
+ };
16893
+
16894
+ const click_handler = e => {
16895
+ if (onClick) onClick();
16896
+ };
16897
+
16898
+ function div1_binding($$value) {
16899
+ internal.binding_callbacks[$$value ? 'unshift' : 'push'](() => {
16900
+ divElement = $$value;
16901
+ $$invalidate(2, divElement);
16902
+ });
16903
+ }
16904
+
16905
+ $$self.$$set = $$props => {
16906
+ if ('props' in $$props) $$invalidate(0, props = $$props.props);
16907
+ if ('onClick' in $$props) $$invalidate(1, onClick = $$props.onClick);
16908
+ };
16909
+
16910
+ {
16911
+ initPanoIndex();
16912
+ }
16913
+
16914
+ return [
16915
+ props,
16916
+ onClick,
16917
+ divElement,
16918
+ left,
16919
+ top,
16920
+ inSight,
16921
+ transform,
16922
+ cameraToward,
16923
+ name,
16924
+ click_handler,
16925
+ div1_binding
16926
+ ];
16927
+ }
16928
+
16929
+ class DoorLabelItem extends internal.SvelteComponent {
16930
+ constructor(options) {
16931
+ super();
16932
+ internal.init(this, options, instance, create_fragment, internal.safe_not_equal, { props: 0, onClick: 1 }, add_css);
16933
+ }
16934
+ }
16935
+
16936
+ function isTwoRectOverlaped(rect1, rect2) {
16937
+ // 两矩形的中心点水平及垂直距离
16938
+ const verticalDistance = Math.abs(rect1.top + rect1.height / 2 - rect2.top - rect2.height / 2);
16939
+ const horizontalDistance = Math.abs(rect1.left + rect1.width / 2 - rect2.left - rect2.width / 2);
16940
+ const verticalThreshold = (rect1.height + rect2.height) / 2;
16941
+ const horizontalThroshold = (rect1.width + rect2.width) / 2;
16942
+ if (verticalDistance > verticalThreshold && horizontalDistance > horizontalThroshold) {
16943
+ return false;
16944
+ }
16945
+ return true;
16946
+ }
16947
+ function getCameraToward(five) {
16948
+ const { camera } = five;
16949
+ const cameraDirection = camera.getWorldDirection(new THREE.Vector3());
16950
+ let angel = (Math.atan(cameraDirection.z / cameraDirection.x) * 180) / Math.PI;
16951
+ let toward = '';
16952
+ if (cameraDirection.x < 0)
16953
+ angel += 180;
16954
+ if (angel < 0)
16955
+ angel += 360;
16956
+ if (angel > 315 || angel <= 45) {
16957
+ toward = 'right';
16958
+ }
16959
+ else if (angel > 45 && angel <= 135) {
16960
+ toward = 'back';
16961
+ }
16962
+ else if (angel > 135 && angel <= 225) {
16963
+ toward = 'left';
16964
+ }
16965
+ else if (angel > 225 && angel <= 315) {
16966
+ toward = 'forward';
16967
+ }
16968
+ return toward;
16969
+ }
16970
+ function getDistance(p1, p2) {
16971
+ return Math.sqrt(Math.pow(p1.z - p2.z, 2) + Math.pow(p1.x - p2.x, 2));
16972
+ }
16973
+ // left、right、forward、back 是 roomLabel 的朝向
16974
+ function getToward(rad) {
16975
+ const pi_4 = Math.PI / 4;
16976
+ if (rad > -pi_4 && rad <= pi_4) {
16977
+ return 'left';
16978
+ }
16979
+ else if (rad > pi_4 * 3 || rad <= -pi_4 * 3) {
16980
+ return 'right';
16981
+ }
16982
+ else if (rad > -pi_4 * 3 && rad <= -pi_4) {
16983
+ return 'forward';
16984
+ }
16985
+ else if (rad > pi_4 && rad <= pi_4 * 3) {
16986
+ return 'back';
16987
+ }
16988
+ return '';
16989
+ }
16990
+
16991
+ const defaultBaseOptions = { userAction: true };
16992
+ /**
16993
+ * 分间标签插件
16994
+ * @author kyleju
16995
+ */
16996
+ class PanoDoorLabelPluginController extends BasePanoPluginController {
16997
+ constructor(five) {
16998
+ super(five);
16999
+ Object.defineProperty(this, "MinVisibledistance", {
17000
+ enumerable: true,
17001
+ configurable: true,
17002
+ writable: true,
17003
+ value: 1.8
17004
+ });
17005
+ Object.defineProperty(this, "MaxVisibledistance", {
17006
+ enumerable: true,
17007
+ configurable: true,
17008
+ writable: true,
17009
+ value: 6
17010
+ });
17011
+ Object.defineProperty(this, "OffsetHeight", {
17012
+ enumerable: true,
17013
+ configurable: true,
17014
+ writable: true,
17015
+ value: -1.3
17016
+ }); // 标签页面高度偏移值
17017
+ Object.defineProperty(this, "rooms", {
17018
+ enumerable: true,
17019
+ configurable: true,
17020
+ writable: true,
17021
+ value: void 0
17022
+ });
17023
+ Object.defineProperty(this, "floorplanServerData", {
17024
+ enumerable: true,
17025
+ configurable: true,
17026
+ writable: true,
17027
+ value: void 0
17028
+ });
17029
+ /** 标签项 */
17030
+ Object.defineProperty(this, "doorLabelItems", {
17031
+ enumerable: true,
17032
+ configurable: true,
17033
+ writable: true,
17034
+ value: void 0
17035
+ });
17036
+ /** 每个点位 visible 标签的缓存 */
17037
+ Object.defineProperty(this, "visibleLabelMap", {
17038
+ enumerable: true,
17039
+ configurable: true,
17040
+ writable: true,
17041
+ value: new Map()
17042
+ });
17043
+ /** 标签项Prop值 */
17044
+ Object.defineProperty(this, "labelItems", {
17045
+ enumerable: true,
17046
+ configurable: true,
17047
+ writable: true,
17048
+ value: []
17049
+ });
17050
+ /** 数据 */
17051
+ Object.defineProperty(this, "doorLabels", {
17052
+ enumerable: true,
17053
+ configurable: true,
17054
+ writable: true,
17055
+ value: void 0
17056
+ });
17057
+ Object.defineProperty(this, "roomObservers", {
17058
+ enumerable: true,
17059
+ configurable: true,
17060
+ writable: true,
17061
+ value: void 0
17062
+ });
17063
+ Object.defineProperty(this, "loadData", {
17064
+ enumerable: true,
17065
+ configurable: true,
17066
+ writable: true,
17067
+ value: (floorplanServerData) => {
17068
+ if (this.doorLabelItems && this.doorLabelItems.length > 0) {
17069
+ this.doorLabelItems.forEach((doorItem) => {
17070
+ doorItem.$destroy();
17071
+ });
17072
+ }
17073
+ this.labelItems = [];
17074
+ this.doorLabels = [];
17075
+ this.doorLabelItems = [];
17076
+ this.floorplanServerData = floorplanServerData;
17077
+ this.five.once('panoArrived', () => {
17078
+ console.log('doorplugin', 'panoArrived');
17079
+ this.initData();
17080
+ });
17081
+ }
17082
+ });
17083
+ Object.defineProperty(this, "initRoomObservers", {
17084
+ enumerable: true,
17085
+ configurable: true,
17086
+ writable: true,
17087
+ value: () => {
17088
+ var _a, _b;
17089
+ const floorDatas = this.floorplanServerData.computed_data.floor_datas || [];
17090
+ const observers = ((_b = (_a = this.five) === null || _a === void 0 ? void 0 : _a.work) === null || _b === void 0 ? void 0 : _b.observers) || [];
17091
+ const roomObservers = observers
17092
+ // eslint-disable-next-line array-callback-return
17093
+ .map((ob) => {
17094
+ const panoIndex = ob.panoIndex;
17095
+ const floorIndex = ob.floorIndex;
17096
+ const floor = floorDatas === null || floorDatas === void 0 ? void 0 : floorDatas.find((d) => d.floor_index === floorIndex);
17097
+ if (floor) {
17098
+ const room = floor.rooms.find((r) => r.observer_indexs.includes(panoIndex));
17099
+ if (room) {
17100
+ return { panoIndex, floorIndex, name: room.name };
17101
+ }
17102
+ }
17103
+ })
17104
+ .filter(Boolean);
17105
+ this.roomObservers = roomObservers;
17106
+ }
17107
+ });
17108
+ Object.defineProperty(this, "hideAllLabels", {
17109
+ enumerable: true,
17110
+ configurable: true,
17111
+ writable: true,
17112
+ value: () => {
17113
+ this.labelItems.forEach((item) => {
17114
+ item.visible = false;
17115
+ item.inSight = false;
17116
+ });
17117
+ this.render();
17118
+ }
17119
+ });
17120
+ Object.defineProperty(this, "fixDoorVisibleAndPosition", {
17121
+ enumerable: true,
17122
+ configurable: true,
17123
+ writable: true,
17124
+ value: () => {
17125
+ this.initRoomObservers();
17126
+ const { panoIndex } = this.five;
17127
+ if (!this.visible)
17128
+ return;
17129
+ if (this.five.model.empty)
17130
+ return;
17131
+ if (panoIndex === null)
17132
+ return;
17133
+ if (!this.roomObservers.find((item) => item.panoIndex === panoIndex))
17134
+ return;
17135
+ const roomObserver = this.roomObservers.find((item) => {
17136
+ return item.panoIndex === panoIndex;
17137
+ });
17138
+ const position = this.five.work.observers.find((item) => item.panoIndex === panoIndex).position;
17139
+ const targetPoint = position.clone();
17140
+ const visibleLabelIds = (() => {
17141
+ if (this.visibleLabelMap.has(panoIndex)) {
17142
+ /** 使用缓存 */
17143
+ return this.visibleLabelMap.get(panoIndex);
17144
+ }
17145
+ else {
17146
+ const visibleDoorIds = [];
17147
+ this.doorLabels.forEach((doorLabelItem, index) => {
17148
+ // step1 校验分间
17149
+ if (doorLabelItem.roomName === roomObserver.name)
17150
+ return;
17151
+ // step2 校验最大最小值
17152
+ const doorPosition = doorLabelItem.position.clone();
17153
+ const distance = doorPosition.distanceTo(targetPoint);
17154
+ if (distance < this.MinVisibledistance || distance > this.MaxVisibledistance)
17155
+ return;
17156
+ // step3 碰撞检测是否有遮挡
17157
+ const raycaster = new THREE.Raycaster();
17158
+ const direction = doorPosition.clone().sub(targetPoint).normalize();
17159
+ raycaster.set(targetPoint, direction);
17160
+ const [intersection] = this.five.model.intersectRaycaster(raycaster);
17161
+ if (intersection && intersection.distance + 0.1 < distance)
17162
+ return;
17163
+ // 🥳 最终剩下的就是当前点位可见的标签
17164
+ visibleDoorIds.push(index);
17165
+ });
17166
+ this.visibleLabelMap.set(panoIndex, visibleDoorIds);
17167
+ return visibleDoorIds;
17168
+ }
17169
+ })();
17170
+ this.labelItems.forEach((data, index) => {
17171
+ data.visible = visibleLabelIds.includes(index);
17172
+ });
17173
+ this.fixDoorPosition();
17174
+ }
17175
+ });
17176
+ Object.defineProperty(this, "fixDoorPosition", {
17177
+ enumerable: true,
17178
+ configurable: true,
17179
+ writable: true,
17180
+ value: () => {
17181
+ const { panoIndex, camera } = this.five;
17182
+ if (panoIndex === null)
17183
+ return;
17184
+ if (this.five.currentMode !== 'Panorama')
17185
+ return this.hideAllLabels();
17186
+ const fiveElement = this.five.getElement();
17187
+ const canvasWidth = fiveElement.clientWidth;
17188
+ const canvasHeight = fiveElement.clientHeight;
17189
+ const cameraDirection = camera.getWorldDirection(new THREE.Vector3());
17190
+ const neverOverlapLabels = [];
17191
+ const labelItems = [...this.labelItems];
17192
+ labelItems.forEach((doorLabel, index) => {
17193
+ if (doorLabel.visible) {
17194
+ const disFromCameraToLabel = camera.position.distanceTo(doorLabel.position);
17195
+ const labelPosition = doorLabel.position.clone().add(new THREE.Vector3(0, this.OffsetHeight, 0));
17196
+ const direction = labelPosition.clone().sub(camera.position).normalize();
17197
+ const angle = direction.angleTo(cameraDirection);
17198
+ const mouse = labelPosition.clone().project(camera);
17199
+ const left = ((mouse.x + 1) / 2.2) * 100;
17200
+ const top = ((-mouse.y + 1) / 2.2) * 100;
17201
+ const visible = left >= 0 &&
17202
+ left <= 100 &&
17203
+ top >= 0 &&
17204
+ top <= 100 &&
17205
+ disFromCameraToLabel > this.MinVisibledistance &&
17206
+ disFromCameraToLabel <= this.MaxVisibledistance;
17207
+ doorLabel.left = left;
17208
+ doorLabel.top = top;
17209
+ doorLabel.inSight = visible && angle < Math.PI / 2;
17210
+ doorLabel.cameraToward = getCameraToward(this.five);
17211
+ if (visible)
17212
+ neverOverlapLabels.push({ disFromCameraToLabel, left, top, index });
17213
+ else
17214
+ doorLabel.transform = 'translate(-50%, -50%)';
17215
+ }
17216
+ else {
17217
+ doorLabel.inSight = false;
17218
+ }
17219
+ });
17220
+ // 视线内多标签防重叠单独处理
17221
+ if (neverOverlapLabels.length > 1) {
17222
+ let heightLevel = 0;
17223
+ neverOverlapLabels.sort((a, b) => b.disFromCameraToLabel - a.disFromCameraToLabel);
17224
+ for (let i = 1; i < neverOverlapLabels.length; i++) {
17225
+ const { index: idx1, left: l1, top: t1 } = neverOverlapLabels[i - 1];
17226
+ const { index: idx2, left: l2, top: t2 } = neverOverlapLabels[i];
17227
+ const rectDom1 = this.container.children[idx1];
17228
+ const rectDom2 = this.container.children[idx2];
17229
+ if (!rectDom1 || !rectDom2)
17230
+ return;
17231
+ const rect1 = {
17232
+ left: (canvasWidth * l1) / 100,
17233
+ top: (canvasHeight * t1) / 100,
17234
+ width: rectDom1.children[0].clientWidth,
17235
+ height: rectDom1.children[0].clientHeight,
17236
+ };
17237
+ const rect2 = {
17238
+ left: (canvasWidth * l2) / 100,
17239
+ top: (canvasHeight * t2) / 100,
17240
+ width: rectDom2.children[0].clientWidth,
17241
+ height: rectDom2.children[0].clientHeight,
17242
+ };
17243
+ if (isTwoRectOverlaped(rect1, rect2)) {
17244
+ heightLevel++;
17245
+ labelItems[idx1].transform = `translate(-50%, ${(heightLevel - 1) * 100 - 50}%)`;
17246
+ labelItems[idx2].transform = `translate(-50%, ${heightLevel * 100 - 50}%)`;
17247
+ }
17248
+ }
17249
+ }
17250
+ this.labelItems = labelItems;
17251
+ this.render();
17252
+ }
17253
+ });
17254
+ Object.defineProperty(this, "onClick", {
17255
+ enumerable: true,
17256
+ configurable: true,
17257
+ writable: true,
17258
+ value: (roomName, position) => {
17259
+ if (!this.rooms)
17260
+ return;
17261
+ const { work } = this.five;
17262
+ let nearestIndex;
17263
+ let nearestVector;
17264
+ let minDistance = Infinity;
17265
+ for (let index = 0; index < work.observers.length; index++) {
17266
+ if (this.rooms[index].name !== roomName)
17267
+ continue;
17268
+ const observer = work.observers[index];
17269
+ const observerPoint = observer.standingPosition;
17270
+ const distance = position.distanceTo(observerPoint);
17271
+ if (distance < minDistance) {
17272
+ nearestIndex = index;
17273
+ nearestVector = observerPoint.clone().sub(position).normalize();
17274
+ minDistance = distance;
17275
+ }
17276
+ }
17277
+ if (nearestVector !== null && nearestIndex !== null) {
17278
+ const options = {};
17279
+ if (minDistance > 0) {
17280
+ const fromVector = new THREE.Vector3(0, 0, -1);
17281
+ const toVector = nearestVector.clone();
17282
+ const quaternion = new THREE.Quaternion();
17283
+ quaternion.setFromUnitVectors(fromVector, toVector);
17284
+ const euler = new THREE.Euler();
17285
+ euler.setFromQuaternion(quaternion, 'YXZ');
17286
+ options.longitude = euler.y;
17287
+ }
17288
+ const canceled = this.five.emit('wantsToMoveToPano', nearestIndex, {}, true);
17289
+ if (!canceled) {
17290
+ this.five.moveToPano(nearestIndex, { longitude: options.longitude });
17291
+ }
17292
+ }
17293
+ }
17294
+ });
17295
+ Object.defineProperty(this, "initData", {
17296
+ enumerable: true,
17297
+ configurable: true,
17298
+ writable: true,
17299
+ value: () => {
17300
+ var _a;
17301
+ this.doorLabels = [];
17302
+ const pano_index = this.five.panoIndex;
17303
+ const floor_index = this.floorplanServerData.computed_data.observers[pano_index].floor_index;
17304
+ const rooms = floor_index !== undefined &&
17305
+ ((_a = this.floorplanServerData.computed_data.floor_datas[floor_index]) === null || _a === void 0 ? void 0 : _a.rooms);
17306
+ this.rooms = rooms;
17307
+ if (this.rooms && this.rooms.length > 0) {
17308
+ this.rooms.forEach((room) => {
17309
+ var _a;
17310
+ const doors = (_a = this.floorplanServerData.computed_data.doors) === null || _a === void 0 ? void 0 : _a.filter((doorItem) => {
17311
+ if (doorItem && doorItem.name === room.name) {
17312
+ return true;
17313
+ }
17314
+ return false;
17315
+ });
17316
+ const observersInRoom = this.five.work.observers.filter((observer, index) => {
17317
+ if (room.observer_indexs.find((item) => item === index))
17318
+ return true;
17319
+ return false;
17320
+ });
17321
+ if (doors) {
17322
+ doors.forEach((door) => {
17323
+ const doorPoint = door.position;
17324
+ let minDistance = Infinity;
17325
+ let nearestPoint;
17326
+ // 遍历门所在房间所有的点,找到离门最近的点
17327
+ observersInRoom.forEach((observer) => {
17328
+ const position = observer.standingPosition;
17329
+ const observerPoint = {
17330
+ x: position.x,
17331
+ y: position.y,
17332
+ z: position.z,
17333
+ };
17334
+ const distance = getDistance(doorPoint, observerPoint);
17335
+ if (distance < minDistance) {
17336
+ minDistance = distance;
17337
+ nearestPoint = observerPoint;
17338
+ }
17339
+ });
17340
+ if (nearestPoint)
17341
+ doorPoint.y = nearestPoint.y + 0.01;
17342
+ const position = new THREE.Vector3(doorPoint.x, doorPoint.y, doorPoint.z);
17343
+ position.add(new THREE.Vector3(-0.2, 1.8, 0).applyEuler(new THREE.Euler(0, door.rad, 0)));
17344
+ this.doorLabels.push({
17345
+ roomName: room.name,
17346
+ name: door.name,
17347
+ position,
17348
+ toward: getToward(door.rad),
17349
+ });
17350
+ });
17351
+ }
17352
+ });
17353
+ }
17354
+ this.labelItems = this.doorLabels.map((data) => (Object.assign(Object.assign({}, data), { left: 0, top: 0, visible: false, inSight: false, transform: '', cameraToward: '' })));
17355
+ console.log('doorplugin', 'labelItems', this.labelItems);
17356
+ this.five.on('wantsToMoveToPano', this.hideAllLabels);
17357
+ this.five.on('modelLoaded', this.fixDoorVisibleAndPosition);
17358
+ this.five.on('panoArrived', this.fixDoorVisibleAndPosition);
17359
+ this.five.on('initAnimationEnded', this.fixDoorPosition);
17360
+ this.five.on('cameraUpdate', this.fixDoorPosition);
17361
+ this.five.on('mouseWheel', this.fixDoorPosition);
17362
+ this.five.on('pinchGesture', this.fixDoorPosition);
17363
+ this.fixDoorVisibleAndPosition();
17364
+ }
17365
+ });
17366
+ }
17367
+ stateChangedCallback(prevState, options) {
17368
+ if (this.hooks.hasListener('stateChange')) {
17369
+ const optionParams = {
17370
+ state: this.state,
17371
+ prevState,
17372
+ userAction: options ? options.userAction : defaultBaseOptions.userAction,
17373
+ };
17374
+ this.hooks.emit('stateChange', optionParams);
17375
+ }
17376
+ }
17377
+ render() {
17378
+ if (!this.enabled) {
17379
+ this.doorLabelItems &&
17380
+ this.doorLabelItems.length > 0 &&
17381
+ this.doorLabelItems.forEach((item) => {
17382
+ item === null || item === void 0 ? void 0 : item.$destroy();
17383
+ });
17384
+ this.doorLabels = undefined;
17385
+ return;
17386
+ }
17387
+ if (this.doorLabelItems) {
17388
+ this.doorLabelItems.forEach((item) => {
17389
+ item.$destroy();
17390
+ });
17391
+ }
17392
+ this.doorLabelItems = [];
17393
+ this.labelItems.forEach((item) => {
17394
+ this.doorLabelItems.push(new DoorLabelItem({
17395
+ target: this.container,
17396
+ props: {
17397
+ props: item,
17398
+ onClick: () => {
17399
+ this.onClick(item.name, item.position);
17400
+ },
17401
+ },
17402
+ }));
17403
+ });
17404
+ }
17405
+ initState() {
17406
+ return { enabled: true, visible: true };
17407
+ }
17408
+ dispose() {
17409
+ if (this.five) {
17410
+ this.five.off('wantsToMoveToPano', this.hideAllLabels);
17411
+ this.five.off('modelLoaded', this.fixDoorVisibleAndPosition);
17412
+ this.five.off('panoArrived', this.fixDoorVisibleAndPosition);
17413
+ this.five.off('initAnimationEnded', this.fixDoorPosition);
17414
+ this.five.off('cameraUpdate', this.fixDoorPosition);
17415
+ this.five.off('mouseWheel', this.fixDoorPosition);
17416
+ this.five.off('pinchGesture', this.fixDoorPosition);
17417
+ super.dispose();
17418
+ }
17419
+ }
17420
+ }
17421
+
17422
+ const PanoDoorLabelPlugin = (five) => {
17423
+ return new PanoDoorLabelPluginController(five);
17424
+ };
17425
+
17426
+ const DnalogelVersion = '2.0.0-alpha.43';
16665
17427
 
16666
17428
  exports.CSS3DRenderPlugin = CSS3DRenderPlugin;
16667
17429
  exports.CameraMovementPlugin = CameraMovementPlugin;
@@ -16678,6 +17440,7 @@ void main() {
16678
17440
  exports.ModelViewPlugin = ModelViewPlugin;
16679
17441
  exports.PanoCompassPlugin = PanoCompassPlugin;
16680
17442
  exports.PanoCursorRaycasterPlugin = PanoCursorRaycasterPlugin;
17443
+ exports.PanoDoorLabelPlugin = PanoDoorLabelPlugin;
16681
17444
  exports.PanoFloorplanRadarPlugin = PanoFloorplanRadarPlugin;
16682
17445
  exports.PanoMeasurePlugin = PanoMeasurePlugin;
16683
17446
  exports.PanoRulerPlugin = PanoRulerPlugin;