@realsee/dnalogel 2.25.0 → 2.26.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (390) hide show
  1. package/dist/CruisePlugin/typing.d.ts +1 -1
  2. package/dist/GuideLinePlugin/typing.d.ts +1 -1
  3. package/dist/PanoCompassPlugin/typings.d.ts +1 -1
  4. package/dist/PanoMeasurePlugin/Model/point.d.ts +0 -4
  5. package/dist/PanoMeasurePlugin/Model/polyline.d.ts +1 -1
  6. package/dist/PipelinePlugin/Controller.d.ts +108 -0
  7. package/dist/PipelinePlugin/index.d.ts +6 -0
  8. package/dist/PipelinePlugin/typing/PluginData.d.ts +20 -0
  9. package/dist/PipelinePlugin/typing/ServerData.d.ts +28 -0
  10. package/dist/PipelinePlugin/typing/index.d.ts +79 -0
  11. package/dist/PipelinePlugin/utils/Objects/FlowPipe.d.ts +34 -0
  12. package/dist/PipelinePlugin/utils/Objects/Pipe.d.ts +49 -0
  13. package/dist/PipelinePlugin/utils/formatData.d.ts +12 -0
  14. package/dist/base/BasePluginWithData.d.ts +3 -15
  15. package/dist/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +1 -1
  16. package/dist/floorplan/typings/index.d.ts +1 -1
  17. package/dist/index.cjs.js +100 -65
  18. package/dist/index.d.ts +1 -0
  19. package/dist/index.js +9180 -8600
  20. package/dist/index.umd.js +89 -54
  21. package/dist/shared-utils/three/Extras/Core/Interpolations.d.ts +11 -0
  22. package/dist/shared-utils/three/Extras/Curves/BezierCurve3.d.ts +13 -0
  23. package/docs/assets/search.js +1 -1
  24. package/docs/classes/CSS3DRender.html +33 -30
  25. package/docs/classes/CruisePluginController.html +28 -25
  26. package/docs/classes/GuideLineItem.GuideLineItem.html +22 -19
  27. package/docs/classes/GuideLineModeItem.GuideLineModeItem.html +37 -34
  28. package/docs/classes/Magnifier.html +22 -19
  29. package/docs/classes/ModelRoomLabelController.html +13 -10
  30. package/docs/classes/Object3DHelperController.html +27 -24
  31. package/docs/classes/PaintBrush.html +17 -14
  32. package/docs/classes/PanoMeasurePluginLine.html +29 -26
  33. package/docs/classes/PanoMeasurePluginModel.html +29 -26
  34. package/docs/classes/PanoMeasurePluginPoint.html +14 -48
  35. package/docs/classes/PanoMeasurePluginPolyline.html +43 -32
  36. package/docs/classes/PanoTagPluginController.html +49 -46
  37. package/docs/classes/Util.BetterTween.html +11 -8
  38. package/docs/classes/Util.Interval.html +14 -11
  39. package/docs/classes/Util.Magnifier.html +22 -19
  40. package/docs/classes/Util.PointDomHelper.html +13 -10
  41. package/docs/classes/Util.PointHelper.html +13 -10
  42. package/docs/classes/Util.PointSelectorHelper.html +18 -15
  43. package/docs/classes/Util.Rectangle.html +15 -12
  44. package/docs/enums/CameraMovementEffect.html +9 -6
  45. package/docs/enums/ContentType.html +22 -19
  46. package/docs/enums/DIRECTION.html +11 -8
  47. package/docs/enums/DISPLAY_STRATEGY_TYPE.html +11 -8
  48. package/docs/enums/DimensionType.html +9 -6
  49. package/docs/enums/FLOOR_PLAN_ATTACHED_TO.html +10 -7
  50. package/docs/enums/ITEM_LABEL_PLUGIN_DISPLAY_STRATEGY_TYPE.html +11 -8
  51. package/docs/enums/PaintBrushTypeEnum.html +10 -7
  52. package/docs/enums/PointType.html +9 -6
  53. package/docs/enums/Rotation.html +10 -7
  54. package/docs/functions/CSS3DRenderPlugin.html +6 -3
  55. package/docs/functions/CameraMovementPlugin.html +6 -3
  56. package/docs/functions/CruisePlugin.html +6 -3
  57. package/docs/functions/GuideLinePlugin.html +7 -4
  58. package/docs/functions/ItemLabelPlugin.html +6 -3
  59. package/docs/functions/MapviewFloorplanPlugin.html +6 -3
  60. package/docs/functions/ModelChassisCompassPlugin.html +6 -3
  61. package/docs/functions/ModelEntryDoorGuidePlugin.html +6 -3
  62. package/docs/functions/ModelFloorplanPlugin.html +6 -3
  63. package/docs/functions/ModelItemLabelPlugin.html +6 -3
  64. package/docs/functions/ModelRoomLabelPlugin.html +6 -3
  65. package/docs/functions/ModelTVVideoPlugin.html +6 -3
  66. package/docs/functions/ModelViewPlugin.html +6 -3
  67. package/docs/functions/Object3DHelperPlugin.html +6 -3
  68. package/docs/functions/PanoCompassPlugin.html +6 -3
  69. package/docs/functions/PanoCursorRaycasterPlugin.html +6 -3
  70. package/docs/functions/PanoDoorLabelPlugin.html +6 -3
  71. package/docs/functions/PanoFloorplanRadarPlugin.html +6 -3
  72. package/docs/functions/PanoMeasurePlugin.html +6 -3
  73. package/docs/functions/PanoRulerPlugin.html +6 -3
  74. package/docs/functions/PanoRulerProPlugin.html +6 -3
  75. package/docs/functions/PanoSpatialTagPlugin.html +6 -3
  76. package/docs/functions/PanoTagPlugin.html +6 -3
  77. package/docs/functions/PanoVideoPlugin.html +6 -3
  78. package/docs/functions/PipelinePlugin.html +280 -0
  79. package/docs/functions/TopviewFloorplanPlugin.html +6 -3
  80. package/docs/functions/Util.absoluteUrl.html +7 -4
  81. package/docs/functions/Util.getCoordsFromClient.html +7 -4
  82. package/docs/functions/Util.getCoordsFromElement.html +7 -4
  83. package/docs/functions/Util.getFrameTime.html +7 -4
  84. package/docs/functions/Util.getIntersectFromRelativePosition.html +7 -4
  85. package/docs/functions/Util.getRaycasterFromFivePointer.html +7 -4
  86. package/docs/functions/Util.isAbsoluteURL.html +7 -4
  87. package/docs/functions/Util.isModelLike.html +7 -4
  88. package/docs/functions/Util.isNil.html +7 -4
  89. package/docs/functions/Util.isPanoramaLike.html +7 -4
  90. package/docs/functions/Util.nextFrame.html +7 -4
  91. package/docs/functions/Util.notNil.html +7 -4
  92. package/docs/functions/Util.requestAnimationFrameInterval.html +7 -4
  93. package/docs/functions/Util.tweenProgress.html +7 -4
  94. package/docs/functions/Util.uuid.html +7 -4
  95. package/docs/functions/pluginFlag.html +7 -4
  96. package/docs/index.html +7 -4
  97. package/docs/interfaces/AddTagConfig.html +8 -5
  98. package/docs/interfaces/CSS3DRenderPluginEventMap.html +13 -10
  99. package/docs/interfaces/CSS3DRenderPluginState.html +10 -7
  100. package/docs/interfaces/CameraMovementPluginExportType.html +9 -6
  101. package/docs/interfaces/CruisePluginTypes.Config.html +10 -7
  102. package/docs/interfaces/CruisePluginTypes.CruiseKeyframe.html +14 -11
  103. package/docs/interfaces/CruisePluginTypes.EventMap.html +22 -19
  104. package/docs/interfaces/CruisePluginTypes.MoveAction.html +14 -11
  105. package/docs/interfaces/CruisePluginTypes.MoveWithKeyframesAction.html +16 -13
  106. package/docs/interfaces/CruisePluginTypes.MoveWithPanoIndexAction.html +16 -13
  107. package/docs/interfaces/CruisePluginTypes.PluginData.html +11 -8
  108. package/docs/interfaces/CruisePluginTypes.PluginServerData.html +10 -21
  109. package/docs/interfaces/CruisePluginTypes.PluginState.html +13 -10
  110. package/docs/interfaces/EventMap.html +17 -14
  111. package/docs/interfaces/FloorplanBounding.html +10 -7
  112. package/docs/interfaces/FloorplanData.html +12 -9
  113. package/docs/interfaces/FloorplanEntrance.html +13 -10
  114. package/docs/interfaces/FloorplanExtraObject.html +12 -9
  115. package/docs/interfaces/FloorplanExtraObject3D.html +10 -7
  116. package/docs/interfaces/FloorplanFloorData.html +11 -8
  117. package/docs/interfaces/FloorplanImagePosition.html +9 -6
  118. package/docs/interfaces/FloorplanObserver.html +11 -8
  119. package/docs/interfaces/FloorplanOutlineItem.html +11 -8
  120. package/docs/interfaces/FloorplanPosition.html +9 -6
  121. package/docs/interfaces/FloorplanRoomItem.html +15 -12
  122. package/docs/interfaces/FloorplanRoomLabelItem.html +9 -6
  123. package/docs/interfaces/FloorplanServerBounding.html +10 -7
  124. package/docs/interfaces/FloorplanServerComputedData.html +12 -9
  125. package/docs/interfaces/FloorplanServerData.html +9 -6
  126. package/docs/interfaces/FloorplanServerDoorItem.html +12 -9
  127. package/docs/interfaces/FloorplanServerDoorPosition.html +10 -7
  128. package/docs/interfaces/FloorplanServerEntrance.html +13 -10
  129. package/docs/interfaces/FloorplanServerFloorData.html +11 -8
  130. package/docs/interfaces/FloorplanServerImagePosition.html +9 -6
  131. package/docs/interfaces/FloorplanServerObserver.html +11 -8
  132. package/docs/interfaces/FloorplanServerOutlineItem.html +11 -8
  133. package/docs/interfaces/FloorplanServerPosition.html +9 -6
  134. package/docs/interfaces/FloorplanServerRoomItem.html +16 -13
  135. package/docs/interfaces/FloorplanServerRoomLabelItem.html +9 -6
  136. package/docs/interfaces/GuideLineModeItem.GuideLineTagContainer.html +10 -7
  137. package/docs/interfaces/GuideLinePluginType.CatmullRomCurve3.html +12 -9
  138. package/docs/interfaces/GuideLinePluginType.EventMap.html +15 -12
  139. package/docs/interfaces/GuideLinePluginType.GuideLineGeometryStyle.html +10 -7
  140. package/docs/interfaces/GuideLinePluginType.GuideLineItemContainer.html +8 -5
  141. package/docs/interfaces/GuideLinePluginType.GuideLineMaterialStyle.html +15 -12
  142. package/docs/interfaces/GuideLinePluginType.LineGeometriesConfig.html +10 -7
  143. package/docs/interfaces/GuideLinePluginType.ModelGuideLineStyle.html +20 -17
  144. package/docs/interfaces/GuideLinePluginType.ModelGuideLineTagData.html +9 -6
  145. package/docs/interfaces/GuideLinePluginType.PanoramaGuideLineStyle.html +20 -17
  146. package/docs/interfaces/GuideLinePluginType.PluginDataV2.html +7 -4
  147. package/docs/interfaces/GuideLinePluginType.PluginServerData.html +10 -21
  148. package/docs/interfaces/GuideLinePluginType.PluginState.html +10 -7
  149. package/docs/interfaces/GuideLinePluginType.Route.html +13 -10
  150. package/docs/interfaces/GuideLinePluginType.RouteConfig.html +11 -8
  151. package/docs/interfaces/HelperOffset.html +10 -7
  152. package/docs/interfaces/ImagePlaneGroup.html +8 -5
  153. package/docs/interfaces/ItemLabelPluginData.html +8 -5
  154. package/docs/interfaces/ItemLabelPluginExportReturnsType.html +13 -10
  155. package/docs/interfaces/ItemLabelPluginParametersType.html +11 -8
  156. package/docs/interfaces/MinMax.html +9 -6
  157. package/docs/interfaces/ModelChassisCompassPluginData.html +9 -6
  158. package/docs/interfaces/ModelChassisCompassPluginExportType.html +10 -7
  159. package/docs/interfaces/ModelChassisCompassPluginParameterType.html +9 -6
  160. package/docs/interfaces/ModelEntryDoorGuidePluginData.html +10 -7
  161. package/docs/interfaces/ModelEntryDoorGuidePluginExportType.html +10 -7
  162. package/docs/interfaces/ModelItemLabelPluginData.html +8 -5
  163. package/docs/interfaces/ModelItemLabelPluginExportReturnsType.html +13 -10
  164. package/docs/interfaces/ModelItemLabelPluginParametersType.html +9 -6
  165. package/docs/interfaces/ModelRoomLabelPluginData.html +8 -5
  166. package/docs/interfaces/ModelTVVideoPluginData.html +11 -8
  167. package/docs/interfaces/ModelTVVideoPluginExportType.html +10 -7
  168. package/docs/interfaces/ModelTVVideoPluginParameterType.html +8 -5
  169. package/docs/interfaces/ModelViewPluginExportType.html +13 -10
  170. package/docs/interfaces/Object3DHelperState.html +10 -7
  171. package/docs/interfaces/ObjectHelperControllers.html +11 -8
  172. package/docs/interfaces/PaintBrushAction.html +14 -11
  173. package/docs/interfaces/PaintBrushConfigs.html +14 -11
  174. package/docs/interfaces/PaintBrushState.html +12 -9
  175. package/docs/interfaces/PanoCursorRaycasterPluginExportType.html +12 -9
  176. package/docs/interfaces/PanoCursorRaycasterPluginParameterType.html +7 -4
  177. package/docs/interfaces/PanoMeasureParameterType.html +18 -15
  178. package/docs/interfaces/PanoMeasurePluginLineJson.html +10 -7
  179. package/docs/interfaces/PanoMeasurePluginOpenParameter.html +9 -6
  180. package/docs/interfaces/PanoMeasurePluginPointJson.html +9 -6
  181. package/docs/interfaces/PanoMeasurePluginPolylineJson.html +10 -7
  182. package/docs/interfaces/PanoRulerPluginExportType.html +12 -9
  183. package/docs/interfaces/PanoRulerPluginOptions.html +9 -6
  184. package/docs/interfaces/PanoRulerPluginParameterType.html +10 -7
  185. package/docs/interfaces/PanoRulerProPluginExportType.html +11 -8
  186. package/docs/interfaces/PanoRulerProPluginOptions.html +9 -6
  187. package/docs/interfaces/PanoRulerProPluginParameterType.html +9 -6
  188. package/docs/interfaces/PanoRulerProPluginState.html +10 -7
  189. package/docs/interfaces/PanoSpatialTagPluginContentEvent.html +7 -4
  190. package/docs/interfaces/PanoSpatialTagPluginContentReplacement.html +7 -4
  191. package/docs/interfaces/PanoSpatialTagPluginData.html +13 -10
  192. package/docs/interfaces/PanoSpatialTagPluginDataElement.html +12 -9
  193. package/docs/interfaces/PanoSpatialTagPluginExportType.html +15 -12
  194. package/docs/interfaces/PanoSpatialTagPluginOriginElement.html +12 -9
  195. package/docs/interfaces/PanoSpatialTagPluginParameterType.html +15 -12
  196. package/docs/interfaces/PanoSpatialTagPluginPointElement.html +13 -10
  197. package/docs/interfaces/PanoSpatialTagPluginTagElement.html +12 -9
  198. package/docs/interfaces/PanoVideoPluginType.LoadParams.html +8 -5
  199. package/docs/interfaces/PanoVideoPluginType.PanoVideoItem.html +10 -7
  200. package/docs/interfaces/PanoVideoPluginType.PluginData.html +8 -5
  201. package/docs/interfaces/PanoVideoPluginType.PluginEventMap.html +11 -8
  202. package/docs/interfaces/PanoVideoPluginType.PluginState.html +8 -5
  203. package/docs/interfaces/PanoVideoPluginType.VideoItem.html +10 -7
  204. package/docs/interfaces/PanoVideoPluginType.VideoMeshParams.html +12 -9
  205. package/docs/interfaces/Point.html +10 -7
  206. package/docs/interfaces/Room.html +11 -8
  207. package/docs/interfaces/RoomInfo.html +9 -6
  208. package/docs/interfaces/RoomLabel.html +16 -13
  209. package/docs/interfaces/RoomRules.html +7 -4
  210. package/docs/interfaces/Rooms.html +7 -4
  211. package/docs/interfaces/Scissor.html +11 -8
  212. package/docs/interfaces/State.html +10 -7
  213. package/docs/interfaces/TagCacheInterface.html +14 -11
  214. package/docs/interfaces/TagConfig.html +15 -12
  215. package/docs/interfaces/TagGLTFObjectGroup.html +8 -5
  216. package/docs/interfaces/TagIconUrl.html +14 -11
  217. package/docs/interfaces/TagObjectGroup.html +8 -5
  218. package/docs/interfaces/TagStyle.html +8 -5
  219. package/docs/interfaces/Tags.html +11 -8
  220. package/docs/interfaces/TemporaryState.html +8 -5
  221. package/docs/interfaces/Util.MagnifierParameter.html +13 -10
  222. package/docs/interfaces/Util.MouseGroupParameter.html +10 -7
  223. package/docs/interfaces/Util.PointIntersection.html +10 -7
  224. package/docs/modules/CruisePluginTypes.html +7 -4
  225. package/docs/modules/GuideLineItem.html +7 -4
  226. package/docs/modules/GuideLineModeItem.html +7 -4
  227. package/docs/modules/GuideLinePluginType.html +7 -4
  228. package/docs/modules/PanoVideoPluginType.html +7 -4
  229. package/docs/modules/Util.html +7 -4
  230. package/docs/modules.html +10 -4
  231. package/docs/types/ArrayPosition.html +7 -4
  232. package/docs/types/AudioAppearance.html +7 -4
  233. package/docs/types/AudioTagTypeConfigKey.html +7 -4
  234. package/docs/types/CSS3DRenderExportType.html +7 -4
  235. package/docs/types/CSS3DRenderPluginExportType.html +7 -4
  236. package/docs/types/CSS3DRenderPluginParameterType.html +7 -4
  237. package/docs/types/ClassFunctionParameters.html +7 -4
  238. package/docs/types/Color.html +7 -4
  239. package/docs/types/ContentTypeConfigKey.html +7 -4
  240. package/docs/types/ContentTypeConfigKeySplit.html +7 -4
  241. package/docs/types/ContentTypeMap.html +7 -4
  242. package/docs/types/Create3DDomContainerReturnType.html +7 -4
  243. package/docs/types/Create3DElementReturnType.html +7 -4
  244. package/docs/types/CruisePluginExportType.html +7 -4
  245. package/docs/types/CruisePluginTypes.CruiseData.html +7 -4
  246. package/docs/types/CruisePluginTypes.MoveEffect.html +7 -4
  247. package/docs/types/DeprecatedMediaPlaneProperty.html +7 -4
  248. package/docs/types/DeprecatedTagProperty.html +7 -4
  249. package/docs/types/Direction-1.html +7 -4
  250. package/docs/types/Direction4.html +7 -4
  251. package/docs/types/ElementRenderer.html +7 -4
  252. package/docs/types/FloorplanRuleLabels.html +7 -4
  253. package/docs/types/FloorplanServerRuleLabels.html +7 -4
  254. package/docs/types/GuideLinePluginExportType.html +7 -4
  255. package/docs/types/GuideLinePluginType.GuideLineItem.html +7 -4
  256. package/docs/types/GuideLinePluginType.GuideLineItemEventMap.html +7 -4
  257. package/docs/types/GuideLinePluginType.GuideLineModeItemMode.html +7 -4
  258. package/docs/types/GuideLinePluginType.GuideLineStyle.html +7 -4
  259. package/docs/types/GuideLinePluginType.ModelGuideLineTag.html +7 -4
  260. package/docs/types/GuideLinePluginType.PathItem.html +7 -4
  261. package/docs/types/GuideLinePluginType.PluginData.html +7 -4
  262. package/docs/types/HelperEventMap.html +7 -4
  263. package/docs/types/LoadTagConfig.html +7 -4
  264. package/docs/types/MapviewFloorplanPluginParameterType.html +7 -4
  265. package/docs/types/MapviewFloorplanPluginReturnType.html +7 -4
  266. package/docs/types/MediaData.html +7 -4
  267. package/docs/types/MediaStore.html +7 -4
  268. package/docs/types/ModelEntryDoorGuidePluginParameterType.html +7 -4
  269. package/docs/types/ModelFloorplanPluginParameterType.html +7 -4
  270. package/docs/types/ModelFloorplanPluginReturnType.html +7 -4
  271. package/docs/types/ModelRoomLabelPluginParameters.html +7 -4
  272. package/docs/types/ModelRoomLabelPluginReturnType.html +7 -4
  273. package/docs/types/MoveArgs.html +7 -4
  274. package/docs/types/MoveOpts.html +7 -4
  275. package/docs/types/Object3DHelperEventMap.html +7 -4
  276. package/docs/types/ObjectFit.html +7 -4
  277. package/docs/types/PaintBrushEventMap.html +7 -4
  278. package/docs/types/PanoCompassPluginData.html +7 -4
  279. package/docs/types/PanoCompassPluginExportType.html +7 -4
  280. package/docs/types/PanoCompassPluginParameterType.html +7 -4
  281. package/docs/types/PanoFloorplanRadarPluginParameterType.html +7 -4
  282. package/docs/types/PanoFloorplanRadarPluginReturnType.html +7 -4
  283. package/docs/types/PanoIndex.html +7 -4
  284. package/docs/types/PanoMeasurePluginEvent.html +7 -4
  285. package/docs/types/PanoMeasureReturnType.html +7 -4
  286. package/docs/types/PanoSpatialTagPluginId.html +7 -4
  287. package/docs/types/PanoTagPluginExportInterface.html +7 -4
  288. package/docs/types/PanoTagPluginParamsInterface.html +7 -4
  289. package/docs/types/PanoVideoPluginParameterType.html +7 -4
  290. package/docs/types/PanoVideoPluginReturnType.html +7 -4
  291. package/docs/types/PickTagContentTypeInContentTypeConfigKey.html +7 -4
  292. package/docs/types/PipelinePluginParameterType.html +271 -0
  293. package/docs/types/PipelinePluginReturnType.html +271 -0
  294. package/docs/types/PlaneTag.html +7 -4
  295. package/docs/types/Point2DTag.html +7 -4
  296. package/docs/types/Point3DTag.html +7 -4
  297. package/docs/types/PointTag.html +7 -4
  298. package/docs/types/PointTagInstance.html +7 -4
  299. package/docs/types/Position.html +7 -4
  300. package/docs/types/RotateArgs.html +7 -4
  301. package/docs/types/RotateOpts.html +7 -4
  302. package/docs/types/RuleLabelsKey.html +7 -4
  303. package/docs/types/RuleLabelsValue.html +7 -4
  304. package/docs/types/StickType.html +7 -4
  305. package/docs/types/Tag.html +7 -4
  306. package/docs/types/Tag2D.html +7 -4
  307. package/docs/types/Tag3D.html +7 -4
  308. package/docs/types/TagContentType.html +7 -4
  309. package/docs/types/TagDimensionType.html +7 -4
  310. package/docs/types/TagElement.html +7 -4
  311. package/docs/types/TagEvents.html +7 -4
  312. package/docs/types/TagGLTFObject.html +7 -4
  313. package/docs/types/TagHooks.html +7 -4
  314. package/docs/types/TagId.html +7 -4
  315. package/docs/types/TagInstance.html +7 -4
  316. package/docs/types/TagPointType.html +7 -4
  317. package/docs/types/TagRendererMap.html +7 -4
  318. package/docs/types/TopviewFloorplanPluginParameterType.html +7 -4
  319. package/docs/types/TopviewFloorplanPluginReturnType.html +7 -4
  320. package/docs/types/WorkCode.html +7 -4
  321. package/docs/variables/FLOOR_TYPE_MAP.html +7 -4
  322. package/docs/variables/PLUGIN.html +7 -4
  323. package/docs/variables/ROOM_FETILE_TYPE_MAP.html +7 -4
  324. package/docs/variables/ROOM_TYPE_MAP.html +7 -4
  325. package/docs/variables/itemLabelPluginServerParams.html +7 -4
  326. package/docs/variables/modelItemLabelPluginServerParams.html +7 -4
  327. package/docs/variables/modelRoomLabelPluginServerParams.html +7 -4
  328. package/libs/CruisePlugin/typing.d.ts +1 -1
  329. package/libs/GuideLinePlugin/typing.d.ts +1 -1
  330. package/libs/PanoCompassPlugin/typings.d.ts +1 -1
  331. package/libs/PanoMeasurePlugin/Components/Controller0.js +2 -4
  332. package/libs/PanoMeasurePlugin/Components/Controller1.js +52 -54
  333. package/libs/PanoMeasurePlugin/Controller/BaseController.js +2 -3
  334. package/libs/PanoMeasurePlugin/Controller/EditController.js +5 -7
  335. package/libs/PanoMeasurePlugin/Controller/MixedController.js +14 -16
  336. package/libs/PanoMeasurePlugin/Controller/ViewController.js +2 -3
  337. package/libs/PanoMeasurePlugin/Controller/WatchController.js +41 -43
  338. package/libs/PanoMeasurePlugin/Controller/index.js +26 -30
  339. package/libs/PanoMeasurePlugin/Model/area.js +2 -3
  340. package/libs/PanoMeasurePlugin/Model/index.js +2 -3
  341. package/libs/PanoMeasurePlugin/Model/line.js +20 -20
  342. package/libs/PanoMeasurePlugin/Model/point.d.ts +0 -4
  343. package/libs/PanoMeasurePlugin/Model/point.js +12 -20
  344. package/libs/PanoMeasurePlugin/Model/polyline.d.ts +1 -1
  345. package/libs/PanoMeasurePlugin/Model/polyline.js +59 -51
  346. package/libs/PanoMeasurePlugin/Modules/UIController/index.js +22 -24
  347. package/libs/PanoMeasurePlugin/Modules/rangePiece/index.js +2 -3
  348. package/libs/PanoMeasurePlugin/index.js +13 -15
  349. package/libs/PanoVideoPlugin/VideoMeshController.js +1 -2
  350. package/libs/PipelinePlugin/Controller.d.ts +108 -0
  351. package/libs/PipelinePlugin/Controller.js +344 -0
  352. package/libs/PipelinePlugin/index.d.ts +6 -0
  353. package/libs/PipelinePlugin/index.js +39 -0
  354. package/libs/PipelinePlugin/typing/PluginData/index.js +6 -0
  355. package/libs/PipelinePlugin/typing/PluginData.d.ts +20 -0
  356. package/libs/PipelinePlugin/typing/PluginData.js +1 -0
  357. package/libs/PipelinePlugin/typing/ServerData/index.js +6 -0
  358. package/libs/PipelinePlugin/typing/ServerData.d.ts +28 -0
  359. package/libs/PipelinePlugin/typing/ServerData.js +1 -0
  360. package/libs/PipelinePlugin/typing/index.d.ts +79 -0
  361. package/libs/PipelinePlugin/typing/index.js +6 -0
  362. package/libs/PipelinePlugin/utils/Objects/FlowPipe.d.ts +34 -0
  363. package/libs/PipelinePlugin/utils/Objects/FlowPipe.js +106 -0
  364. package/libs/PipelinePlugin/utils/Objects/HighlightPipe.d.ts +11 -0
  365. package/libs/PipelinePlugin/utils/Objects/HighlightPipe.js +52 -0
  366. package/libs/PipelinePlugin/utils/Objects/Pipe.d.ts +49 -0
  367. package/libs/PipelinePlugin/utils/Objects/Pipe.js +179 -0
  368. package/libs/PipelinePlugin/utils/formatData.d.ts +12 -0
  369. package/libs/PipelinePlugin/utils/formatData.js +46 -0
  370. package/libs/base/BasePlugin.js +1 -1
  371. package/libs/base/BasePluginWithData.d.ts +3 -15
  372. package/libs/floorplan/MapviewFloorplanPlugin/Controller.js +87 -88
  373. package/libs/floorplan/ModelFloorplanPlugin/Controller.js +75 -76
  374. package/libs/floorplan/PanoFloorplanRadarPlugin/typing.d.ts +1 -1
  375. package/libs/floorplan/typings/index.d.ts +1 -1
  376. package/libs/index.d.ts +1 -0
  377. package/libs/index.js +117 -110
  378. package/libs/shared-utils/logger.js +1 -1
  379. package/libs/shared-utils/three/Extras/Core/Interpolations.d.ts +11 -0
  380. package/libs/shared-utils/three/Extras/Core/Interpolations.js +28 -0
  381. package/libs/shared-utils/three/Extras/Core/Interpolations2.js +34 -0
  382. package/libs/shared-utils/three/Extras/Curves/BezierCurve3.d.ts +13 -0
  383. package/libs/shared-utils/three/Extras/Curves/BezierCurve3.js +30 -0
  384. package/package.json +1 -1
  385. package/dist/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +0 -2
  386. package/dist/shared-utils/removeArrayItem.d.ts +0 -7
  387. package/libs/PanoMeasurePlugin/utils/findAssociatedLines.d.ts +0 -2
  388. package/libs/PanoMeasurePlugin/utils/findAssociatedLines.js +0 -13
  389. package/libs/shared-utils/removeArrayItem.d.ts +0 -7
  390. package/libs/shared-utils/removeArrayItem.js +0 -8
@@ -1,10 +1,10 @@
1
- var m = Object.defineProperty;
2
- var a = (r, i, t) => i in r ? m(r, i, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[i] = t;
3
- var s = (r, i, t) => (a(r, typeof i != "symbol" ? i + "" : i, t), t);
4
- import P from "./line.js";
5
- import g from "./point.js";
6
- import { uuid as L } from "../../shared-utils/uuid.js";
7
- import { Subscribe as v } from "@realsee/five";
1
+ var c = Object.defineProperty;
2
+ var f = (r, i, e) => i in r ? c(r, i, { enumerable: !0, configurable: !0, writable: !0, value: e }) : r[i] = e;
3
+ var o = (r, i, e) => (f(r, typeof i != "symbol" ? i + "" : i, e), e);
4
+ import a from "./line.js";
5
+ import m from "./point.js";
6
+ import { uuid as P } from "../../shared-utils/uuid.js";
7
+ import { Subscribe as g } from "@realsee/five";
8
8
  import "../utils/line.js";
9
9
  import "@realsee/five/line";
10
10
  import "../utils/constants.js";
@@ -13,38 +13,46 @@ import "../utils/dom/distanceItem.js";
13
13
  import "../utils/dom/base.js";
14
14
  import "../utils/isNDCPointInScreen.js";
15
15
  import "../../shared-utils/three/centerPoint.js";
16
- import "../../shared-utils/removeArrayItem.js";
17
- class W {
16
+ class M {
18
17
  constructor(i) {
19
- s(this, "id", L());
20
- s(this, "lines", []);
21
- s(this, "points", []);
22
- s(this, "visiblePanoIndexes");
23
- s(this, "model");
24
- s(this, "type", "polyline");
25
- s(this, "hook", new v());
18
+ o(this, "id", P());
19
+ o(this, "lines", []);
20
+ o(this, "visiblePanoIndexes");
21
+ o(this, "model");
22
+ o(this, "type", "polyline");
23
+ o(this, "hook", new g());
26
24
  this.model = i.model;
27
25
  }
26
+ get points() {
27
+ const i = /* @__PURE__ */ new Set();
28
+ return this.lines.forEach((e) => {
29
+ i.add(e.points[0]), i.add(e.points[1]);
30
+ }), Array.from(i);
31
+ }
28
32
  addLine(i) {
29
33
  if (this.includes(i)) {
30
34
  console.error(new Error("不能重复添加线段"));
31
35
  return;
32
36
  }
33
- const t = this.getLastPoint(), h = t && i.findAnotherPoint(t);
34
- t ? t && h ? (this.lines.push(i), this.points.push(...i.points), this.hook.emit("lineAdded", i)) : console.error(new Error("传入线段无法与当前折线进行连接")) : (this.lines.push(i), this.points.push(...i.points), this.hook.emit("lineAdded", i));
37
+ const e = this.getLastPoint(), l = e && i.findAnotherPoint(e);
38
+ if (e && !l) {
39
+ console.error(new Error("传入线段无法与当前折线进行连接"));
40
+ return;
41
+ }
42
+ this.lines.push(i), this.hook.emit("lineAdded", i);
35
43
  }
36
44
  removeLine(i) {
37
- if (this.lines.length !== 0) {
38
- if (!this.isLastLine(i)) {
39
- console.error(new Error("传入线段不是当前折线的最后一段"));
40
- return;
41
- }
42
- this.lines.pop(), this.lines.length === 0 ? this.points.slice(0, this.points.length) : this.points.pop(), this.hook.emit("lineRemoved", i);
45
+ if (this.lines.length === 0)
46
+ return;
47
+ if (!this.isLastLine(i)) {
48
+ console.error(new Error("传入线段不是当前折线的最后一段"));
49
+ return;
43
50
  }
51
+ this.lines.pop() && this.hook.emit("lineRemoved", i);
44
52
  }
45
53
  isLastLine(i) {
46
- const t = this.getLastLine();
47
- return t ? i.id === t.id : !1;
54
+ const e = this.getLastLine();
55
+ return e ? i.id === e.id : !1;
48
56
  }
49
57
  getLastLine() {
50
58
  return this.lines.slice(-1)[0];
@@ -57,17 +65,17 @@ class W {
57
65
  }
58
66
  clear() {
59
67
  const i = this.lines.slice();
60
- this.lines.slice(0, this.lines.length), this.points.slice(0, this.points.length), i.reduceRight((t, h) => this.hook.emit("lineRemoved", h), void 0);
68
+ this.lines.length = 0, i.reduceRight((e, l) => this.hook.emit("lineRemoved", l), void 0);
61
69
  }
62
70
  /** 是否产生重叠 */
63
71
  overlapWith(i) {
64
- return i.type === "point" ? this.includes(i) : i.type === "line" ? i.points.some((t) => this.includes(t)) : i.type === "polyline" ? i.points.some((t) => this.includes(t)) : !0;
72
+ return i.type === "point" ? this.includes(i) : i.type === "line" ? i.points.some((e) => this.includes(e)) : i.type === "polyline" ? i.points.some((e) => this.includes(e)) : !0;
65
73
  }
66
74
  includes(i) {
67
- return i.type === "point" ? this.points.find(({ id: t }) => t === i.id) !== void 0 : i.type === "line" ? this.lines.find(({ id: t }) => t === i.id) !== void 0 : !1;
75
+ return i.type === "point" ? this.points.find(({ id: e }) => e === i.id) !== void 0 : i.type === "line" ? this.lines.find(({ id: e }) => e === i.id) !== void 0 : !1;
68
76
  }
69
77
  isEmpty() {
70
- return this.points.length === 0;
78
+ return this.lines.length === 0;
71
79
  }
72
80
  getLastPoint() {
73
81
  return this.points.slice(-1)[0];
@@ -80,38 +88,38 @@ class W {
80
88
  };
81
89
  }
82
90
  getPointByID(i) {
83
- return this.points.find(({ id: t }) => t === i);
91
+ return this.points.find(({ id: e }) => e === i);
84
92
  }
85
93
  fromJson(i) {
86
94
  this.clear(), this.id = i.id;
87
- const { getPoint: t, getAllPoints: h } = f(), u = i.lines.map((e) => {
88
- const [p, d] = e.points, n = t(p), l = t(d);
89
- if (!n || !l)
95
+ const { getPoint: e } = u(), l = i.lines.map((t) => {
96
+ const [d, p] = t.points, n = e(d), h = e(p);
97
+ if (!n || !h)
90
98
  throw new Error("线上的点不存在");
91
- const o = new P(n, l, this.model);
92
- return o.id = e.id, o.text = e.text, o;
93
- }), c = h();
94
- this.points.push(...c), this.lines.push(...u), this.visiblePanoIndexes = i.visiblePanoIndexes;
95
- function f() {
96
- const e = /* @__PURE__ */ new Map();
97
- function p(n) {
98
- const l = e.get(n.id);
99
- if (l)
100
- return l;
101
- const o = new g(n.position);
102
- return o.id = n.id, e.set(n.id, o), o;
99
+ const s = new a(n, h, this.model);
100
+ return s.id = t.id, s.text = t.text, s;
101
+ });
102
+ this.lines.push(...l), this.visiblePanoIndexes = i.visiblePanoIndexes;
103
+ function u() {
104
+ const t = /* @__PURE__ */ new Map();
105
+ function d(n) {
106
+ const h = t.get(n.id);
107
+ if (h)
108
+ return h;
109
+ const s = new m(n.position);
110
+ return s.id = n.id, t.set(n.id, s), s;
103
111
  }
104
- function d() {
105
- return Array.from(e.values());
112
+ function p() {
113
+ return Array.from(t.values());
106
114
  }
107
- return { getPoint: p, getAllPoints: d };
115
+ return { getPoint: d, getAllPoints: p };
108
116
  }
109
117
  return this;
110
118
  }
111
119
  replace(i) {
112
- this.id = i.id, this.clear(), this.lines.push(...i.lines), this.points.push(...i.points);
120
+ this.id = i.id, this.clear(), this.lines.push(...i.lines);
113
121
  }
114
122
  }
115
123
  export {
116
- W as Polyline
124
+ M as Polyline
117
125
  };
@@ -1,6 +1,6 @@
1
1
  var a = Object.defineProperty;
2
- var h = (r, o, t) => o in r ? a(r, o, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[o] = t;
3
- var e = (r, o, t) => (h(r, typeof o != "symbol" ? o + "" : o, t), t);
2
+ var h = (r, e, t) => e in r ? a(r, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : r[e] = t;
3
+ var o = (r, e, t) => (h(r, typeof e != "symbol" ? e + "" : e, t), t);
4
4
  import d from "./HTML.js";
5
5
  import u from "./mobileHTML.js";
6
6
  import { controllerBackgroundStyle as y, operatingSpaceStyle as f, uiWrapperStyle as v, textStyle as C, exitItemStyle as E, exitIconStyle as x } from "./style.js";
@@ -25,7 +25,6 @@ import "../../utils/dom/base.js";
25
25
  import "../../utils/isNDCPointInScreen.js";
26
26
  import "../../../shared-utils/three/centerPoint.js";
27
27
  import "../../Model/point.js";
28
- import "../../../shared-utils/removeArrayItem.js";
29
28
  import "../../../shared-utils/throttle.js";
30
29
  import "../../Controller/BaseController.js";
31
30
  import "../../utils/ironbox.js";
@@ -75,28 +74,27 @@ import "../DeleteDom/index.js";
75
74
  import "../DeleteDom/_Assets/delete.svg.js";
76
75
  import "../DeleteDom/_Assets/delete_bg.png.js";
77
76
  import "../DeleteDom/_Assets/delete_hover_bg.png.js";
78
- import "../../utils/findAssociatedLines.js";
79
77
  import "../../utils/math.js";
80
78
  import "../../Components/Common/icons/index.js";
81
79
  import "../../Components/Common/Switcher1.js";
82
80
  import "../../Components/Common/CircleButton.js";
83
81
  import "../../../vendor/svelte/transition/index.js";
84
82
  import "../../../vendor/svelte/easing/index.js";
85
- class to {
86
- constructor(o, t) {
87
- e(this, "revoke");
88
- e(this, "container");
89
- e(this, "mainController");
90
- e(this, "disposers", []);
91
- e(this, "measureController");
92
- e(this, "mode");
93
- e(this, "svelteDom");
94
- e(this, "_params");
95
- e(this, "handleExit", () => {
96
- const o = this.container.querySelector(".fpm__exit-icon"), t = this.container.querySelector(".fpm__exit");
97
- if (!t || !o)
83
+ class Yt {
84
+ constructor(e, t) {
85
+ o(this, "revoke");
86
+ o(this, "container");
87
+ o(this, "mainController");
88
+ o(this, "disposers", []);
89
+ o(this, "measureController");
90
+ o(this, "mode");
91
+ o(this, "svelteDom");
92
+ o(this, "_params");
93
+ o(this, "handleExit", () => {
94
+ const e = this.container.querySelector(".fpm__exit-icon"), t = this.container.querySelector(".fpm__exit");
95
+ if (!t || !e)
98
96
  throw new Error("cannot find dom");
99
- this.mode === "pc" && (Object.assign(t.style, E), Object.assign(o == null ? void 0 : o.style, x));
97
+ this.mode === "pc" && (Object.assign(t.style, E), Object.assign(e == null ? void 0 : e.style, x));
100
98
  const i = () => {
101
99
  t.style.opacity = "1";
102
100
  }, s = () => {
@@ -109,7 +107,7 @@ class to {
109
107
  };
110
108
  });
111
109
  var s, n;
112
- this._params = t, this.measureController = o, this.mode = (s = t.mode) != null ? s : "pc", this.container = document.createElement("div"), this.container.innerHTML = this.mode === "mobile" ? u : d, this.container.classList.add("fpm__ui-controller", this.mode), this.container.style.background = "rgba(0, 0, 0, 0.15)";
110
+ this._params = t, this.measureController = e, this.mode = (s = t.mode) != null ? s : "pc", this.container = document.createElement("div"), this.container.innerHTML = this.mode === "mobile" ? u : d, this.container.classList.add("fpm__ui-controller", this.mode), this.container.style.background = "rgba(0, 0, 0, 0.15)";
113
111
  const i = (n = t.useNewUI) != null ? n : !1;
114
112
  if (i && (t.pointSelectorMode === "cursor" ? this.svelteDom = new _({
115
113
  target: t.container,
@@ -124,17 +122,17 @@ class to {
124
122
  }
125
123
  }
126
124
  dispose() {
127
- var o;
128
- this.hide(), (o = this.svelteDom) == null || o.$destroy(), this.container.remove();
125
+ var e;
126
+ this.hide(), (e = this.svelteDom) == null || e.$destroy(), this.container.remove();
129
127
  }
130
128
  show() {
131
129
  return this.container.style.display = "block", this.container.style.opacity = "1", this.container.style.transform = "translate(0, 0)", this.mode === "pc" ? (this.revoke = new w(this.measureController, this.container), this.mainController = new S(this.measureController, this.container, this._params)) : this.mainController = new g(this.measureController, this.container, this._params), this.disposers.push(this.handleExit()), this;
132
130
  }
133
131
  hide() {
134
- var o, t;
135
- return this.container.style.display = "none", this.container.style.opacity = "0", this.container.style.transform = "translate(0, 10px)", this.mode === "pc" && ((o = this.revoke) == null || o.dispose()), (t = this.mainController) == null || t.dispose(), this.disposers.forEach((i) => i()), this.disposers = [], this;
132
+ var e, t;
133
+ return this.container.style.display = "none", this.container.style.opacity = "0", this.container.style.transform = "translate(0, 10px)", this.mode === "pc" && ((e = this.revoke) == null || e.dispose()), (t = this.mainController) == null || t.dispose(), this.disposers.forEach((i) => i()), this.disposers = [], this;
136
134
  }
137
135
  }
138
136
  export {
139
- to as UIController
137
+ Yt as UIController
140
138
  };
@@ -19,8 +19,7 @@ import { noop as x } from "../../../shared-utils/noop.js";
19
19
  import A from "../../utils/calculateThreeMouse.js";
20
20
  import { getMouseGroup as X } from "../../utils/mouseGroup.js";
21
21
  import "../../../shared-utils/uuid.js";
22
- import "../../../shared-utils/removeArrayItem.js";
23
- class L {
22
+ class V {
24
23
  // eslint-disable-next-line @typescript-eslint/explicit-member-accessibility
25
24
  constructor(t) {
26
25
  i(this, "container", document.createElement("div"));
@@ -131,5 +130,5 @@ class L {
131
130
  }
132
131
  }
133
132
  export {
134
- L as default
133
+ V as default
135
134
  };
@@ -1,9 +1,9 @@
1
1
  import t from "./Controller/index.js";
2
- import { default as Yo } from "./Modules/Magnifier.js";
3
- import { Model as _o } from "./Model/index.js";
4
- import { default as or } from "./Model/point.js";
5
- import { default as tr } from "./Model/line.js";
6
- import { Polyline as mr } from "./Model/polyline.js";
2
+ import { default as Wo } from "./Modules/Magnifier.js";
3
+ import { Model as Yo } from "./Model/index.js";
4
+ import { default as _o } from "./Model/point.js";
5
+ import { default as or } from "./Model/line.js";
6
+ import { Polyline as tr } from "./Model/polyline.js";
7
7
  import "./Controller/EditController.js";
8
8
  import "../shared-utils/throttle.js";
9
9
  import "./Controller/BaseController.js";
@@ -18,7 +18,6 @@ import "./utils/dom/distanceItem.js";
18
18
  import "./utils/dom/base.js";
19
19
  import "./utils/isNDCPointInScreen.js";
20
20
  import "../shared-utils/three/centerPoint.js";
21
- import "../shared-utils/removeArrayItem.js";
22
21
  import "./Model/area.js";
23
22
  import "./Model/polygon.js";
24
23
  import "../shared-utils/three/IObject3D.js";
@@ -64,7 +63,6 @@ import "./Modules/DeleteDom/index.js";
64
63
  import "./Modules/DeleteDom/_Assets/delete.svg.js";
65
64
  import "./Modules/DeleteDom/_Assets/delete_bg.png.js";
66
65
  import "./Modules/DeleteDom/_Assets/delete_hover_bg.png.js";
67
- import "./utils/findAssociatedLines.js";
68
66
  import "./utils/math.js";
69
67
  import "./Controller/ViewController.js";
70
68
  import "./Controller/WatchController.js";
@@ -99,15 +97,15 @@ import "../vendor/object-assign-deep/objectAssignDeep.js";
99
97
  import "./Components/Tip.js";
100
98
  import "./Controller/ShortcutKeyController.js";
101
99
  import "../shared-utils/safeObj.js";
102
- const Vo = function(o, r) {
100
+ const To = function(o, r) {
103
101
  return new t(o, r);
104
102
  };
105
103
  export {
106
- Yo as Magnifier,
107
- Vo as PanoMeasurePlugin,
108
- tr as PanoMeasurePluginLine,
109
- _o as PanoMeasurePluginModel,
110
- or as PanoMeasurePluginPoint,
111
- mr as PanoMeasurePluginPolyline,
112
- Vo as default
104
+ Wo as Magnifier,
105
+ To as PanoMeasurePlugin,
106
+ or as PanoMeasurePluginLine,
107
+ Yo as PanoMeasurePluginModel,
108
+ _o as PanoMeasurePluginPoint,
109
+ tr as PanoMeasurePluginPolyline,
110
+ To as default
113
111
  };
@@ -77,8 +77,7 @@ class K {
77
77
  });
78
78
  /** 兼容视频播放 */
79
79
  t(this, "onFiveWantsMoveToPano", (e) => {
80
- e === this.panoIndex && (this.hasVideoEverPlayed || this.video.play().catch((i) => {
81
- console.error("🐶 ==> error:", i);
80
+ e === this.panoIndex && (this.hasVideoEverPlayed || this.video.play().catch(() => {
82
81
  }));
83
82
  });
84
83
  /** 走到某个点位上时,挂载/卸载视频 */
@@ -0,0 +1,108 @@
1
+ import type { Five } from '@realsee/five';
2
+ import type { State, EventMap, ServerData, PluginData, LoadOptions, ShowHideOptions, SetSpeedOptions, ShowPipelinesOptions } from './typing';
3
+ import * as THREE from 'three';
4
+ import * as BasePlugin from '../base/BasePluginWithData';
5
+ import { ObjectFlowPipe } from './utils/Objects/FlowPipe';
6
+ export declare class Controller extends BasePlugin.Controller<State, EventMap, ServerData.RootObject, PluginData.RootObject> {
7
+ data?: PluginData.RootObject;
8
+ /** 插件状态
9
+ * @property `visible` `<boolean>` 是否可见
10
+ * @property `enabled` `<boolean>` 是否启用
11
+ * @property `visiblePipeIDs` `<string[]>` 可见的管道 ID
12
+ * @property `speed` `<Speed>` 水流速度
13
+ * @property `speed.flowSpeed` `<number>` 横向流动速度,默认是 0.6 m/s
14
+ * @property `speed.rotateSpeed` `<number>` 纵向旋转速度:默认是 0 deg/s
15
+ */
16
+ state: State;
17
+ /** 当前插件所有新增 THREE 相关副作用都在 group 下 */
18
+ group: THREE.Group;
19
+ /** 用于展示水流的水管 */
20
+ pipeObjects: ObjectFlowPipe[];
21
+ /** 水管贴图缓存 */
22
+ private texturePromiseCache;
23
+ constructor(five: Five);
24
+ /** 加载管道数据,重复调用会使用新数据覆盖旧数据
25
+ * @param `data` `<Plugin.ServerData>` Open API 接口返回的数据。
26
+ * @param `initialState` `<Plugin.State> | <undefined>` 数据加载后,要应用的 state,默认是 undefined。
27
+ * @param `userAction` `<boolean> | <undefined>` 是否是用户操作,默认是 true。
28
+ * @param `options` `<Plugin.LoadOptions> | <undefined>` 数据加载配置项。
29
+ * @param `options.getPipeRadius` `<(pipe: ServerData.LinesDataset) => number> | <undefined>` 允许用户通过函数自定义管道半径。
30
+ * @param `options.getPipeUrl` `<(water: Water) => string> | <undefined>` 允许用户通过函数自定义管道贴图,
31
+ * 函数返回的 string 就是当前 water 对应的贴图地址。
32
+ */
33
+ load(data: ServerData.RootObject, initialState?: Partial<State>, userAction?: boolean, options?: Partial<LoadOptions>): Promise<void>;
34
+ /** 更改插件 State
35
+ * @param `state` `<Partial<Plugin.State>>` 插件属性 `state` 的子集。
36
+ * @param `options` `<Option> | <undefined>`
37
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是用户操作。默认是 true。
38
+ */
39
+ setState(state: Partial<State>, options?: BasePlugin.BaseOptions): void;
40
+ /** 启用插件
41
+ * @param `options` `<Option> | <undefined>`
42
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是用户操作。默认是 true。
43
+ */
44
+ enable(options?: BasePlugin.BaseOptions): void;
45
+ /** 禁用插件
46
+ * @param `options` `<Option> | <undefined>`
47
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是用户操作。默认是 true。
48
+ */
49
+ disable(options?: BasePlugin.BaseOptions): void;
50
+ /** 展示管道模型,注意如果通过 `switchPipelines` 更改过 `visibleIDs`,则只会展示这一部分模型。
51
+ * @param `options` `<Partial<ShowHideOptions>> | <undefined>`
52
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是用户操作。默认是 true。
53
+ * @param `options.anime` `<AnimeOptions> | <undefined>` 动画配置。
54
+ * @param `options.anime.duration` `<number> | <undefined>` 动画时间,默认是 500ms。
55
+ */
56
+ show(options?: Partial<ShowHideOptions>): Promise<void>;
57
+ /** 插件内容整体隐藏
58
+ * @param `options` `<Partial<ShowHideOptions>> | <undefined>`
59
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是用户操作。默认是 true。
60
+ * @param `options.anime` `<AnimeOptions> | <undefined>` 动画配置。
61
+ * @param `options.anime.duration` `<number> | <undefined>` 动画时间,默认是 500ms。
62
+ */
63
+ hide(options?: Partial<ShowHideOptions>): Promise<void>;
64
+ /** 切换管路
65
+ * @param `options` `Partial<ShowPipelinesOptions> | <undefined>`
66
+ * @param `options.target` `<{ startLibraryID: number; endLibraryID: number }[]> | <undefined>`
67
+ * 目标管路,存在时,展示目标管路包含的管道,同时隐藏其他管道。不存在则展示所有管道。
68
+ * startLibraryID 和 endLibraryID 是起始和结束的设备 ID。
69
+ * @param `options.showAnime` `<AnimeOptions> | <undefined>` 展示的动画配置。
70
+ * @param `options.hideAnime` `<AnimeOptions> | <undefined>` 隐藏的动画配置。
71
+ * @param `options.anime` `<AnimeOptions> | <undefined>` 兜底的动画配置。
72
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是否是用户操作。
73
+ * */
74
+ switchPipelines(options?: Partial<ShowPipelinesOptions>): Promise<void>;
75
+ /** 开始流动 */
76
+ flow(options?: BasePlugin.BaseOptions): void;
77
+ /** 停止流动 */
78
+ stopFlow(options?: BasePlugin.BaseOptions): void;
79
+ /** 更改水管流速
80
+ * @param `options` `<SetSpeedOptions> | <undefined>`
81
+ * @param `options.speed` `<Speed> | <undefined>` 参考 `state.speed` 的描述。
82
+ * @param `options.userAction` `<boolean> | <undefined>` 是否是否是用户操作。
83
+ */
84
+ setSpeed(options?: Partial<SetSpeedOptions>): void;
85
+ /** 销毁插件,移除所有副作用,销毁后将不响应任何 API */
86
+ dispose: () => void;
87
+ protected formatData(data: ServerData.RootObject, options?: Partial<LoadOptions>): Promise<PluginData.RootObject>;
88
+ private _enable;
89
+ private _disable;
90
+ private _show;
91
+ private _hide;
92
+ private _switchPipelines;
93
+ private _flow;
94
+ private _stopFlow;
95
+ private _setSpeed;
96
+ private updateState;
97
+ /** 加载管道贴图,如果再加载中,复用之前的加载 Promise */
98
+ private loadPipeTexture;
99
+ /** 销毁所有动画 */
100
+ private disposeAnime;
101
+ /** 移除所有管道模型 */
102
+ private removeAllPipes;
103
+ /** 根据 ID 查找管道模型 */
104
+ private findPipeObjectWithID;
105
+ /** 根据 target 查找管道模型 */
106
+ private findPipeObjectWithTarget;
107
+ private onWantsFiveTapGesture;
108
+ }