@realsee/five 6.8.0-alpha.9 → 6.8.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 (490) hide show
  1. package/AGENTS_READ_ME.md +6 -1
  2. package/AI_CONTEXT.md +6 -1
  3. package/README.md +10 -3
  4. package/ai_guides/README.md +29 -0
  5. package/ai_guides/api.md +92 -21
  6. package/ai_guides/features/3dtile.md +1 -1
  7. package/ai_guides/features/camera-animation.md +18 -1
  8. package/ai_guides/features/clipper.md +2 -2
  9. package/ai_guides/features/coordinate-system.md +20 -2
  10. package/ai_guides/features/event.md +106 -10
  11. package/ai_guides/features/five.md +17 -17
  12. package/ai_guides/features/flowing-light-2d-pass.md +75 -17
  13. package/ai_guides/features/flowing-light-3d-pass.md +76 -17
  14. package/ai_guides/features/gaussian-blur-pass.md +1 -1
  15. package/ai_guides/features/gesture.md +2 -1
  16. package/ai_guides/features/get-screen-pixels.md +2 -2
  17. package/ai_guides/features/image-options.md +2 -2
  18. package/ai_guides/features/load-external-model.md +6 -2
  19. package/ai_guides/features/load-progress.md +1 -1
  20. package/ai_guides/features/material.md +20 -12
  21. package/ai_guides/features/mode.md +1 -1
  22. package/ai_guides/features/model.md +1 -1
  23. package/ai_guides/features/move-pano-effect.md +1 -1
  24. package/ai_guides/features/multi-work.md +1 -1
  25. package/ai_guides/features/pano-filter.md +149 -0
  26. package/ai_guides/features/pano-tile.md +1 -1
  27. package/ai_guides/features/pano-uv.md +1 -1
  28. package/ai_guides/features/parameter.md +26 -2
  29. package/ai_guides/features/plugin.md +1 -1
  30. package/ai_guides/features/postprocessing.md +1 -1
  31. package/ai_guides/features/raycast.md +5 -2
  32. package/ai_guides/features/request-proxy.md +1 -1
  33. package/ai_guides/features/screen-project.md +2 -1
  34. package/ai_guides/features/state.md +23 -3
  35. package/ai_guides/features/view-layer.md +1 -1
  36. package/ai_guides/features/work.md +1 -1
  37. package/ai_guides/glossary.md +4 -4
  38. package/ai_guides/release_notes/6.8.md +190 -58
  39. package/ai_guides/template.md +11 -0
  40. package/docs/00_FOR_AI_AGENTS.md +3 -2
  41. package/docs/README.md +3 -2
  42. package/docs/assets/hierarchy.js +1 -1
  43. package/docs/assets/main.js +1 -1
  44. package/docs/assets/navigation.js +1 -1
  45. package/docs/assets/search.js +1 -1
  46. package/docs/classes/five.AdaptiveLuminancePass.html +7 -6
  47. package/docs/classes/five.AnimationFrameLoop.html +1 -1
  48. package/docs/classes/five.BoundingMesh.html +2 -2
  49. package/docs/classes/five.Camera.html +3 -3
  50. package/docs/classes/five.EyeDomeLightingPass.html +1 -1
  51. package/docs/classes/five.Five.html +77 -76
  52. package/docs/classes/five.FivePass.html +1 -1
  53. package/docs/classes/five.Histogram.html +19 -0
  54. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  55. package/docs/classes/five.Model.html +8 -8
  56. package/docs/classes/five.ModelScene.html +1 -1
  57. package/docs/classes/five.NetworkSubscribe.html +5 -5
  58. package/docs/classes/five.PBMContainer.html +1 -1
  59. package/docs/classes/five.PBMCustomShader.html +42 -3
  60. package/docs/classes/five.PBMGSObject.html +5 -3
  61. package/docs/classes/five.PBMGroup.html +1 -1
  62. package/docs/classes/five.PBMMesh.html +1 -1
  63. package/docs/classes/five.PBMMeshMaterial.html +7 -7
  64. package/docs/classes/five.PBMPanoFilter.html +61 -0
  65. package/docs/classes/five.PBMPointCloud.html +1 -1
  66. package/docs/classes/five.PBMPointCloudMaterial.html +5 -6
  67. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  68. package/docs/classes/five.PBMUpdateable.html +41 -0
  69. package/docs/classes/five.PanoCircleMesh.html +1 -1
  70. package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
  71. package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
  72. package/docs/classes/five.Parameter.html +57 -55
  73. package/docs/classes/five.Scene.html +1 -1
  74. package/docs/classes/five.Subscribe.html +5 -5
  75. package/docs/classes/five.Tile.html +1 -1
  76. package/docs/classes/five.Tile3D.html +24 -24
  77. package/docs/classes/five.TileNode.html +1 -1
  78. package/docs/classes/five.Tileset.html +3 -2
  79. package/docs/classes/five.TrajectoryNode.html +1 -1
  80. package/docs/classes/five.Work.html +16 -16
  81. package/docs/classes/five.WorkResolvedObserver.html +22 -22
  82. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  83. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  84. package/docs/classes/gltf-loader.GLTFLoader.html +2 -2
  85. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  86. package/docs/classes/gltf-loader.GLTFParser.html +1 -1
  87. package/docs/classes/gltf-loader.THREEGLTFLoader.html +2 -2
  88. package/docs/classes/line.Line.html +1 -1
  89. package/docs/classes/line.LineGeometry.html +1 -1
  90. package/docs/classes/line.LineMaterial.html +1 -1
  91. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  92. package/docs/classes/line.THREE_Line2.html +1 -1
  93. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  94. package/docs/classes/plugins.BasePlugin.Controller.html +1 -1
  95. package/docs/classes/plugins.CSS2DObject.html +10 -0
  96. package/docs/classes/plugins.CSS2DRenderer.html +7 -0
  97. package/docs/classes/plugins.CSS3DObject.html +9 -0
  98. package/docs/classes/plugins.CSS3DRenderer.html +4 -2
  99. package/docs/classes/plugins.CSS3DSprite.html +11 -0
  100. package/docs/classes/plugins.Object3DHelperController.html +43 -0
  101. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  102. package/docs/classes/sticker.Sticker.html +1 -1
  103. package/docs/classes/vfx.Airflow.html +1 -1
  104. package/docs/classes/vfx.Flame.html +1 -1
  105. package/docs/classes/vfx.Particle.html +6 -6
  106. package/docs/classes/vfx.ParticleGPU.html +3 -3
  107. package/docs/classes/vfx.SpotLight.html +1 -1
  108. package/docs/documents/README.html +122 -1
  109. package/docs/documents/api.html +163 -35
  110. package/docs/documents/features_3dtile.html +1 -1
  111. package/docs/documents/features_camera-animation.html +18 -2
  112. package/docs/documents/features_clipper.html +2 -2
  113. package/docs/documents/features_coordinate-system.html +52 -3
  114. package/docs/documents/features_event.html +44 -8
  115. package/docs/documents/features_five.html +17 -17
  116. package/docs/documents/features_flowing-light-2d-pass.html +41 -125
  117. package/docs/documents/features_flowing-light-3d-pass.html +43 -132
  118. package/docs/documents/features_gaussian-blur-pass.html +6 -6
  119. package/docs/documents/features_gesture.html +2 -1
  120. package/docs/documents/features_get-screen-pixels.html +2 -2
  121. package/docs/documents/features_image-options.html +2 -2
  122. package/docs/documents/features_load-external-model.html +6 -2
  123. package/docs/documents/features_load-progress.html +1 -1
  124. package/docs/documents/features_material.html +11 -4
  125. package/docs/documents/features_mode.html +1 -1
  126. package/docs/documents/features_model.html +1 -1
  127. package/docs/documents/features_move-pano-effect.html +1 -1
  128. package/docs/documents/features_multi-work.html +1 -1
  129. package/docs/documents/features_pano-filter.html +123 -0
  130. package/docs/documents/features_pano-tile.html +1 -1
  131. package/docs/documents/features_pano-uv.html +1 -1
  132. package/docs/documents/features_parameter.html +11 -3
  133. package/docs/documents/features_plugin.html +1 -1
  134. package/docs/documents/features_postprocessing.html +1 -1
  135. package/docs/documents/features_raycast.html +5 -2
  136. package/docs/documents/features_request-proxy.html +1 -1
  137. package/docs/documents/features_screen-project.html +2 -1
  138. package/docs/documents/features_state.html +9 -2
  139. package/docs/documents/features_view-layer.html +1 -1
  140. package/docs/documents/features_work.html +1 -1
  141. package/docs/documents/glossary.html +5 -5
  142. package/docs/documents/release_notes_6.8.html +164 -64
  143. package/docs/documents/template.html +9 -0
  144. package/docs/functions/five.createDebugBoundingMesh.html +1 -1
  145. package/docs/functions/five.parseWork.html +1 -1
  146. package/docs/functions/plugins.CSS2DPlugin.html +1 -0
  147. package/docs/functions/plugins.CSS3DPlugin.html +1 -0
  148. package/docs/functions/plugins.GaussianSplattingEntranceAnimationPlugin.html +1 -0
  149. package/docs/functions/plugins.Object3DHelperPlugin.html +1 -0
  150. package/docs/functions/react.getPlugin.html +2 -0
  151. package/docs/functions/react.setPlugin.html +2 -0
  152. package/docs/functions/react.useFiveCurrentObserver.html +2 -2
  153. package/docs/functions/react.useFiveFloor.html +2 -2
  154. package/docs/functions/react.useFivePlugin.html +8 -0
  155. package/docs/functions/react.useFiveProject2d.html +2 -2
  156. package/docs/functions/react.withFive.html +1 -1
  157. package/docs/functions/vue.useFiveCurrentObserver.html +2 -2
  158. package/docs/functions/vue.useFiveFloor.html +2 -2
  159. package/docs/functions/vue.useFiveWorks.html +2 -2
  160. package/docs/hierarchy.html +1 -1
  161. package/docs/index.html +122 -1
  162. package/docs/interfaces/five.AddableObject.html +1 -1
  163. package/docs/interfaces/five.AjaxOptions.html +1 -1
  164. package/docs/interfaces/five.BaseEvent.html +7 -2
  165. package/docs/interfaces/five.BaseExtendableEvent.html +11 -0
  166. package/docs/interfaces/five.EventCallback.html +58 -54
  167. package/docs/interfaces/five.FiveInitArgs.html +2 -2
  168. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +9 -9
  169. package/docs/interfaces/five.GestureEvent.html +21 -2
  170. package/docs/interfaces/five.GesturePointer.html +20 -0
  171. package/docs/interfaces/five.ImageOptions.html +1 -1
  172. package/docs/interfaces/five.IntersectEvent.html +10 -2
  173. package/docs/interfaces/five.IntersectMesh.html +1 -1
  174. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  175. package/docs/interfaces/five.Intersection.html +1 -1
  176. package/docs/interfaces/five.LooseWorkObserver.html +2 -2
  177. package/docs/interfaces/five.LooseWorkPanorama.html +2 -2
  178. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +6 -6
  179. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +10 -10
  180. package/docs/interfaces/five.ModeChangeEvent.html +9 -2
  181. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
  182. package/docs/interfaces/five.ModelEvent.html +7 -2
  183. package/docs/interfaces/five.ModelSceneEvent.html +7 -2
  184. package/docs/interfaces/five.ModelTileEvent.html +7 -2
  185. package/docs/interfaces/five.MovePanoOptions.html +8 -8
  186. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  187. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  188. package/docs/interfaces/five.NetworkOptions.html +1 -1
  189. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  190. package/docs/interfaces/five.NetworkResourceEvent.html +7 -2
  191. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  192. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  193. package/docs/interfaces/five.ObjectEvent.html +7 -2
  194. package/docs/interfaces/five.PBMClipperParameter.html +2 -2
  195. package/docs/interfaces/five.PBMCustomShaderInitArgs.html +2 -2
  196. package/docs/interfaces/five.PBMCustomShaderSlots.html +2 -2
  197. package/docs/interfaces/five.PBMMaterial.html +1 -1
  198. package/docs/interfaces/five.PBMMeshMaterialParameters.html +5 -3
  199. package/docs/interfaces/five.PBMPanoDepth.html +5 -5
  200. package/docs/interfaces/five.PBMPanoFilterValue.html +6 -0
  201. package/docs/interfaces/five.PBMPanoPicture.html +8 -6
  202. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +2 -3
  203. package/docs/interfaces/five.PBMRefinedScreen.html +2 -2
  204. package/docs/interfaces/five.PanoCircleMeshInterface.html +2 -2
  205. package/docs/interfaces/five.PanoEvent.html +15 -2
  206. package/docs/interfaces/five.PanoPrepareEvent.html +15 -0
  207. package/docs/interfaces/five.PanoTextureEvent.html +11 -2
  208. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +1 -1
  209. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
  210. package/docs/interfaces/five.ParameterMaterialValue.html +40 -38
  211. package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
  212. package/docs/interfaces/five.ParameterValue.html +54 -52
  213. package/docs/interfaces/five.Pose.html +1 -1
  214. package/docs/interfaces/five.RenderEvent.html +7 -2
  215. package/docs/interfaces/five.ResolvedParameterValue.html +55 -54
  216. package/docs/interfaces/five.RgbaData.html +7 -0
  217. package/docs/interfaces/five.SplatData.html +2 -2
  218. package/docs/interfaces/five.State.html +1 -1
  219. package/docs/interfaces/five.StateEvent.html +9 -2
  220. package/docs/interfaces/five.TextureOptions.html +1 -1
  221. package/docs/interfaces/five.Tile3DOptions.html +2 -2
  222. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
  223. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +1 -1
  224. package/docs/interfaces/five.ViewLayer.html +24 -24
  225. package/docs/interfaces/five.WorkCubeImage.html +3 -2
  226. package/docs/interfaces/five.WorkImage.html +6 -5
  227. package/docs/interfaces/five.WorkInitial.html +8 -8
  228. package/docs/interfaces/five.WorkModel.html +8 -8
  229. package/docs/interfaces/five.WorkModelLayer.html +6 -6
  230. package/docs/interfaces/five.WorkObserver.html +29 -29
  231. package/docs/interfaces/five.WorkObserverJson.html +2 -2
  232. package/docs/interfaces/five.WorkObserverProto.html +26 -0
  233. package/docs/interfaces/five.WorkPanoramaJson.html +2 -2
  234. package/docs/interfaces/five.WorkTile.html +6 -5
  235. package/docs/interfaces/five.WorkVideo.html +4 -4
  236. package/docs/interfaces/five.WorksEvent.html +7 -2
  237. package/docs/interfaces/five.XRControllerEvent.html +10 -2
  238. package/docs/interfaces/five.XRControllerState.html +8 -0
  239. package/docs/interfaces/five.XRGestureEvent.html +13 -2
  240. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +1 -1
  241. package/docs/interfaces/five.XRSessionEvent.html +9 -2
  242. package/docs/interfaces/plugins.BackgroundPluginController.html +1 -1
  243. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +1 -1
  244. package/docs/interfaces/plugins.BasePlugin.State.html +1 -1
  245. package/docs/interfaces/plugins.CSS2DPluginController.html +49 -0
  246. package/docs/interfaces/plugins.CSS2DPluginType.Config.html +2 -0
  247. package/docs/interfaces/plugins.CSS2DPluginType.CreateCSS2DObjectType.html +8 -0
  248. package/docs/interfaces/plugins.CSS2DPluginType.EventMap.html +10 -0
  249. package/docs/interfaces/plugins.CSS2DPluginType.Params.html +4 -0
  250. package/docs/interfaces/plugins.CSS2DPluginType.State.html +8 -0
  251. package/docs/interfaces/plugins.CSS2DRendererParameters.html +2 -0
  252. package/docs/interfaces/plugins.CSS3DPluginController.html +52 -0
  253. package/docs/interfaces/plugins.CSS3DPluginType.Config.html +2 -0
  254. package/docs/interfaces/plugins.CSS3DPluginType.CreateCSS3DObjectType.html +10 -0
  255. package/docs/interfaces/plugins.CSS3DPluginType.EventMap.html +10 -0
  256. package/docs/interfaces/plugins.CSS3DPluginType.Params.html +4 -0
  257. package/docs/interfaces/plugins.CSS3DPluginType.State.html +8 -0
  258. package/docs/interfaces/plugins.CSS3DRendererParameters.html +2 -0
  259. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +3 -3
  260. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +1 -1
  261. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +1 -1
  262. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationController.html +44 -0
  263. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.BoundingAABB2D.html +3 -0
  264. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.Config.html +8 -0
  265. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.EventMap.html +10 -0
  266. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.Keyframe.html +3 -0
  267. package/docs/interfaces/plugins.GaussianSplattingEntranceAnimationPluginType.State.html +8 -0
  268. package/docs/interfaces/plugins.ItemMaskController.html +1 -1
  269. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +1 -1
  270. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +2 -2
  271. package/docs/interfaces/plugins.Object3DHelperPluginType.BaseController.html +30 -0
  272. package/docs/interfaces/plugins.Object3DHelperPluginType.BaseHelper.html +22 -0
  273. package/docs/interfaces/plugins.Object3DHelperPluginType.BoundingBoxController.html +30 -0
  274. package/docs/interfaces/plugins.Object3DHelperPluginType.HelperOffset.html +4 -0
  275. package/docs/interfaces/plugins.Object3DHelperPluginType.MoveController.html +36 -0
  276. package/docs/interfaces/plugins.Object3DHelperPluginType.MoveHelperAbstract.html +32 -0
  277. package/docs/interfaces/plugins.Object3DHelperPluginType.Object3DHelper.html +12 -0
  278. package/docs/interfaces/plugins.Object3DHelperPluginType.Object3DHelperPluginState.html +4 -0
  279. package/docs/interfaces/plugins.Object3DHelperPluginType.Object3DHelperState.html +4 -0
  280. package/docs/interfaces/plugins.Object3DHelperPluginType.ObjectHelperControllers.html +4 -0
  281. package/docs/interfaces/plugins.Object3DHelperPluginType.RotateController.html +36 -0
  282. package/docs/interfaces/plugins.Object3DHelperPluginType.RotateHelperAbstract.html +28 -0
  283. package/docs/interfaces/plugins.Object3DHelperPluginType.Scissor.html +5 -0
  284. package/docs/interfaces/plugins.Object3DHelperPluginType.Vector2Position.html +3 -0
  285. package/docs/interfaces/plugins.Object3DHelperPluginType.Vector3Position.html +4 -0
  286. package/docs/interfaces/plugins.OrientationPluginController.html +6 -6
  287. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +1 -1
  288. package/docs/interfaces/plugins.OrientationPluginType.State.html +1 -1
  289. package/docs/interfaces/plugins.PanoAnimeController.html +1 -1
  290. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +1 -1
  291. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +1 -1
  292. package/docs/interfaces/plugins.PlayingState.html +2 -2
  293. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +1 -1
  294. package/docs/interfaces/plugins.PluginTemplateType.State.html +1 -1
  295. package/docs/interfaces/plugins.TrajectoryController.html +8 -8
  296. package/docs/interfaces/react.FiveAppProps.html +11 -0
  297. package/docs/interfaces/react.FiveInjectionTypes.html +21 -21
  298. package/docs/interfaces/sticker.IntersectionLike.html +2 -2
  299. package/docs/interfaces/vfx.ParticleArgs.html +4 -4
  300. package/docs/interfaces/vue.FiveActionVueCallbacks.html +3 -3
  301. package/docs/modules/five.html +1 -1
  302. package/docs/modules/plugins.CSS2DPluginType.html +1 -0
  303. package/docs/modules/plugins.CSS3DPluginType.html +1 -0
  304. package/docs/modules/plugins.GaussianSplattingEntranceAnimationPluginType.html +1 -0
  305. package/docs/modules/plugins.Object3DHelperPluginType.html +1 -0
  306. package/docs/modules/plugins.html +1 -1
  307. package/docs/modules/react.html +1 -1
  308. package/docs/modules.html +1 -1
  309. package/docs/types/five.ControllerEventTypes.html +30 -26
  310. package/docs/types/five.EasingFunction.html +1 -0
  311. package/docs/types/five.EventTypes.html +26 -26
  312. package/docs/types/five.LegacyEventType.html +7 -7
  313. package/docs/types/five.PBMAlphaMode.html +1 -1
  314. package/docs/types/five.PBMColorStyle.html +1 -1
  315. package/docs/types/five.PBMFloorStyle.html +1 -1
  316. package/docs/types/five.PBMMeshShaderType.html +1 -1
  317. package/docs/types/five.PBMPointBack.html +1 -1
  318. package/docs/types/five.PBMPointCloudShaderType.html +1 -1
  319. package/docs/types/five.PBMPointShape.html +1 -1
  320. package/docs/types/five.PBMPointSize.html +1 -1
  321. package/docs/types/five.PBMTransition.html +1 -1
  322. package/docs/types/five.ParseOptions.html +6 -6
  323. package/docs/types/five.Works.html +1 -1
  324. package/docs/types/plugins.BasePlugin.EventMap.html +1 -1
  325. package/docs/types/plugins.CSS2DPluginType.PluginData.html +1 -0
  326. package/docs/types/plugins.CSS2DPluginType.ServerData.html +1 -0
  327. package/docs/types/plugins.CSS3DPluginType.PluginData.html +1 -0
  328. package/docs/types/plugins.CSS3DPluginType.ServerData.html +1 -0
  329. package/docs/types/plugins.Object3DHelperPluginType.AddObject3DHelperConfig.html +13 -0
  330. package/docs/types/plugins.Object3DHelperPluginType.Circle.html +1 -0
  331. package/docs/types/plugins.Object3DHelperPluginType.Color.html +1 -0
  332. package/docs/types/plugins.Object3DHelperPluginType.Direction.html +1 -0
  333. package/docs/types/plugins.Object3DHelperPluginType.Direction4.html +1 -0
  334. package/docs/types/plugins.Object3DHelperPluginType.HelperConfig.html +1 -0
  335. package/docs/types/plugins.Object3DHelperPluginType.HelperEventMap.html +17 -0
  336. package/docs/types/plugins.Object3DHelperPluginType.InternalHelperEventMap.html +8 -0
  337. package/docs/types/plugins.Object3DHelperPluginType.Object3DHelperEventMap.html +1 -0
  338. package/docs/types/plugins.Object3DHelperPluginType.Object3DHelperPluginEventMap.html +7 -0
  339. package/docs/types/plugins.Object3DHelperPluginType.PositionFrom.html +1 -0
  340. package/docs/types/plugins.Object3DHelperPluginType.ScaleCallback.html +1 -0
  341. package/docs/types/plugins.Object3DHelperPluginType.ScalePosition.html +4 -0
  342. package/docs/types/plugins.Object3DHelperPluginType.UseFaceNormalInterface.html +4 -0
  343. package/docs/types/plugins.Object3DHelperPluginType.Vector2WithArray.html +1 -0
  344. package/docs/types/plugins.Object3DHelperPluginType.Vector3WithArray.html +1 -0
  345. package/docs/variables/five.PROXY_CONTROLLER_EVENT_NAMES.html +1 -1
  346. package/docs/variables/react.FiveApp.html +3 -0
  347. package/docs/variables/react.FiveAutoCanvas.html +3 -0
  348. package/five/application/events.d.ts +1 -1
  349. package/five/application/five.d.ts +6 -5
  350. package/five/bvh/bvhObject.d.ts +2 -2
  351. package/five/controllers/base.d.ts +1 -0
  352. package/five/controllers/events.d.ts +5 -1
  353. package/five/controllers/mapview.d.ts +1 -0
  354. package/five/controllers/model.d.ts +2 -2
  355. package/five/controllers/panorama.d.ts +3 -2
  356. package/five/controllers/xrPanorama.d.ts +1 -1
  357. package/five/core/camera.d.ts +1 -1
  358. package/five/gaussian-splatting/util/renderData.d.ts +66 -0
  359. package/five/index.d.ts +4 -1
  360. package/five/index.js +272 -782
  361. package/five/index.mjs +26894 -32056
  362. package/five/meshes/boundingMesh.d.ts +1 -0
  363. package/five/model/index.d.ts +2 -2
  364. package/five/model/loaders/glTF-helpers/extensions/KHR_binary_glTF.d.ts +1 -1
  365. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting.d.ts +26 -0
  366. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz.d.ts +7 -5
  367. package/five/model/loaders/glTF-helpers/extensions/KHR_gaussian_splatting_compression_spz_2.d.ts +13 -0
  368. package/five/model/loaders/glTF-helpers/extensions/base.d.ts +2 -1
  369. package/five/model/loaders/glTF-helpers/index.d.ts +4 -0
  370. package/five/model/loaders/glTF-helpers/parser.d.ts +2 -1
  371. package/five/model/loaders/spz.d.ts +2 -2
  372. package/five/model/materials/pbmMaterial.d.ts +54 -4
  373. package/five/model/materials/pbmMeshMaterial.d.ts +5 -3
  374. package/five/model/materials/pbmPointCloudMaterial.d.ts +0 -2
  375. package/five/model/objects/{pbmGSObject.d.ts → pbmGaussianSplattingObject.d.ts} +4 -1
  376. package/five/model/objects/pbmGaussianSplattingRenderMesh.d.ts +59 -0
  377. package/five/model/objects/pbmGaussianSplattingTestMesh.d.ts +7 -0
  378. package/five/model/parameter.d.ts +11 -6
  379. package/five/model/tile3d/index.d.ts +5 -3
  380. package/five/model/tile3d/tile-node.d.ts +2 -2
  381. package/five/model/tile3d/tileset.d.ts +1 -0
  382. package/five/renderer/postprocessing/passes/adaptive-luminance-pass.d.ts +9 -7
  383. package/five/renderer/postprocessing/passes/flowing-light-2d-pass.d.ts +6 -1
  384. package/five/renderer/postprocessing/passes/flowing-light-3d-pass.d.ts +3 -1
  385. package/five/renderer/tools/render-cube-to-equirectangular.d.ts +7 -0
  386. package/five/renderer/tools/render-full-screen.d.ts +1 -1
  387. package/five/texture/histogram.d.ts +54 -0
  388. package/five/texture/loader.d.ts +1 -1
  389. package/five/texture/textureData.d.ts +11 -0
  390. package/five/thirdparty/hammer.d.ts +371 -255
  391. package/five/thirdparty/jsrsasign.d.ts +5 -20
  392. package/five/types/movePanoOptions.d.ts +4 -3
  393. package/five/utils/error.d.ts +1 -0
  394. package/five/utils/event.d.ts +98 -37
  395. package/five/utils/imageURL.d.ts +1 -1
  396. package/five/utils/memoryUsage.d.ts +2 -2
  397. package/five/utils/subscribe.d.ts +2 -2
  398. package/five/webxr/motionHelper.d.ts +1 -1
  399. package/five/work/index.d.ts +1 -0
  400. package/five/work/looseWorkType.d.ts +2 -2
  401. package/five/work/work.d.ts +5 -35
  402. package/five/work/workJsonType.d.ts +2 -2
  403. package/five/work/workObserverProto.d.ts +39 -0
  404. package/gltf-loader/index.js +9 -9
  405. package/gltf-loader/index.mjs +1351 -1451
  406. package/line/index.js +4 -4
  407. package/line/index.mjs +334 -513
  408. package/llms.txt +37 -1
  409. package/package.json +4 -4
  410. package/plugins/CSS2DPlugin/Controller.d.ts +59 -0
  411. package/plugins/CSS2DPlugin/index.d.ts +5 -0
  412. package/plugins/CSS2DPlugin/typing.d.ts +30 -0
  413. package/plugins/CSS3DPlugin/Controller.d.ts +64 -0
  414. package/plugins/CSS3DPlugin/index.d.ts +5 -0
  415. package/plugins/CSS3DPlugin/typing.d.ts +32 -0
  416. package/plugins/GaussianSplattingEntranceAnimationPlugin/Controller.d.ts +30 -0
  417. package/plugins/GaussianSplattingEntranceAnimationPlugin/index.d.ts +5 -0
  418. package/plugins/GaussianSplattingEntranceAnimationPlugin/typing.d.ts +28 -0
  419. package/plugins/Object3DHelperPlugin/Controller.d.ts +99 -0
  420. package/plugins/Object3DHelperPlugin/Controllers/BaseController.d.ts +142 -0
  421. package/plugins/Object3DHelperPlugin/Controllers/BoundingBoxController.d.ts +16 -0
  422. package/plugins/Object3DHelperPlugin/Controllers/MoveController.d.ts +66 -0
  423. package/plugins/Object3DHelperPlugin/Controllers/RotateController.d.ts +61 -0
  424. package/plugins/Object3DHelperPlugin/FiveControllerWrapper.d.ts +17 -0
  425. package/plugins/Object3DHelperPlugin/Helper/BaseHelper.d.ts +97 -0
  426. package/plugins/Object3DHelperPlugin/Helper/BoundingBoxHelper.d.ts +16 -0
  427. package/plugins/Object3DHelperPlugin/Helper/MoveHelper.d.ts +37 -0
  428. package/plugins/Object3DHelperPlugin/Helper/RotateHelper.d.ts +93 -0
  429. package/plugins/Object3DHelperPlugin/constant.d.ts +27 -0
  430. package/plugins/Object3DHelperPlugin/index.d.ts +6 -0
  431. package/plugins/Object3DHelperPlugin/typing.d.ts +143 -0
  432. package/plugins/Object3DHelperPlugin/utils/ArrowGroup.d.ts +22 -0
  433. package/plugins/Object3DHelperPlugin/utils/CenterHandle.d.ts +23 -0
  434. package/plugins/Object3DHelperPlugin/utils/PlaneHandle.d.ts +19 -0
  435. package/plugins/Object3DHelperPlugin/utils/calculateScaleByCamera.d.ts +5 -0
  436. package/plugins/Object3DHelperPlugin/utils/cameraHooks.d.ts +2 -0
  437. package/plugins/Object3DHelperPlugin/utils/direction.d.ts +14 -0
  438. package/plugins/Object3DHelperPlugin/utils/getMouseRaycaster.d.ts +5 -0
  439. package/plugins/Object3DHelperPlugin/utils/getOrthographicCameraDirection.d.ts +8 -0
  440. package/plugins/Object3DHelperPlugin/utils/setObjectQuaternion.d.ts +8 -0
  441. package/plugins/Object3DHelperPlugin/utils/solidGuide.d.ts +27 -0
  442. package/plugins/Object3DHelperPlugin/utils/tipsDom.d.ts +8 -0
  443. package/plugins/TrajectoryPlugin/Controller.d.ts +1 -1
  444. package/plugins/index.d.ts +6 -1
  445. package/plugins/index.js +55 -21
  446. package/plugins/index.mjs +5582 -4238
  447. package/plugins/thirdParty/CSS2DRenderer.d.ts +37 -0
  448. package/plugins/thirdParty/CSS3DRenderer.d.ts +16 -3
  449. package/plugins/thirdParty/domevents.d.ts +36 -0
  450. package/plugins/utils/uuid.d.ts +1 -4
  451. package/react/autoCanvas.d.ts +9 -0
  452. package/react/context.d.ts +3 -2
  453. package/react/createProvider.d.ts +4 -4
  454. package/react/createStore.d.ts +3 -3
  455. package/react/fiveApp.d.ts +22 -0
  456. package/react/hooks/useFivePlugin.d.ts +26 -0
  457. package/react/hooks/useFiveProject2d.d.ts +1 -1
  458. package/react/index.d.ts +4 -0
  459. package/react/index.js +3 -3
  460. package/react/index.mjs +687 -782
  461. package/react/rendererPool.d.ts +2 -2
  462. package/react/withFive.d.ts +1 -1
  463. package/shader-lib/index.js +13 -14
  464. package/shader-lib/index.mjs +424 -824
  465. package/sticker/index.js +3 -3
  466. package/sticker/index.mjs +102 -142
  467. package/umd/five-gltf-loader.js +9 -9
  468. package/umd/five-line.js +4 -4
  469. package/umd/five-plugins.js +55 -21
  470. package/umd/five-react.js +3 -3
  471. package/umd/five-shader-lib.js +13 -14
  472. package/umd/five-sticker.js +3 -3
  473. package/umd/five-vfx.js +21 -21
  474. package/umd/five-vue.js +3 -3
  475. package/umd/five.js +267 -777
  476. package/vfx/index.js +21 -21
  477. package/vfx/index.mjs +454 -910
  478. package/vue/index.js +3 -3
  479. package/vue/index.mjs +309 -301
  480. package/vue/rendererPool.d.ts +5 -5
  481. package/work-downloader/index.js +3 -3
  482. package/work-downloader/index.mjs +339 -556
  483. package/five/gs/util/renderData.d.ts +0 -32
  484. package/five/model/objects/pbmGSRenderMesh.d.ts +0 -29
  485. package/five/work/workObserverUtils.d.ts +0 -36
  486. /package/five/assets/{realsee-pmg-data-url.d.ts → realsee-png-data-url.d.ts} +0 -0
  487. /package/five/{gs → gaussian-splatting}/wasm/data.d.ts +0 -0
  488. /package/five/{gs → gaussian-splatting}/wasm/sort.d.ts +0 -0
  489. /package/five/{gs → gaussian-splatting}/worker/dataWorker.d.ts +0 -0
  490. /package/five/{gs → gaussian-splatting}/worker/sortWorker.d.ts +0 -0
package/react/index.mjs CHANGED
@@ -1,8 +1,8 @@
1
1
  /**
2
2
  * @license
3
3
  * @realsee/five
4
- * Generated: 2026/2/26
5
- * Version: 6.8.0-alpha.9
4
+ * Generated: 2026/4/28
5
+ * Version: 6.8.1
6
6
  * Terms:
7
7
  * Realsee SDK License Agreement
8
8
  * Update: July 28, 2021
@@ -252,786 +252,691 @@
252
252
  * No amendment to or modification of this Agreement will be binding unless in
253
253
  * writing and signed by Realsee. You and Realsee hereto confirm that this
254
254
  * Agreement and all related documents shall be drafted in English.
255
- */import * as u from "react";
256
- import * as p from "three";
257
- import { getViewportScale as ae, Five as ue } from "@realsee/five";
258
- var E = function(e, n) {
259
- return E = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t, r) {
260
- t.__proto__ = r;
261
- } || function(t, r) {
262
- for (var o in r) Object.prototype.hasOwnProperty.call(r, o) && (t[o] = r[o]);
263
- }, E(e, n);
255
+ */import * as e from "react";
256
+ import { useCallback as t, useEffect as n, useRef as r, useState as i } from "react";
257
+ import * as a from "three";
258
+ import { Five as o, getViewportScale as s } from "@realsee/five";
259
+ //#region build/react/rendererPool.js
260
+ var c = [], l = [];
261
+ function u({ preserveDrawingBuffer: e = !0, webgl2: t = !1 } = {}) {
262
+ if (typeof window > "u") return;
263
+ let n = null;
264
+ if (n = t ? c.shift() : l.shift(), !n) {
265
+ if (t) {
266
+ let t = document.createElement("canvas"), r = t.getContext("webgl2");
267
+ r ? n = new a.WebGLRenderer({
268
+ preserveDrawingBuffer: e,
269
+ antialias: !0,
270
+ alpha: !0,
271
+ stencil: !0,
272
+ canvas: t,
273
+ context: r
274
+ }) : (console.error("error occurred when getting webgl2 canvas context, mybe webgl2 not support, fallback to webgl."), n = new a.WebGLRenderer({
275
+ preserveDrawingBuffer: e,
276
+ antialias: !1,
277
+ alpha: !0,
278
+ stencil: !0
279
+ }));
280
+ } else n = new a.WebGLRenderer({
281
+ preserveDrawingBuffer: e,
282
+ antialias: !1,
283
+ alpha: !0,
284
+ stencil: !0
285
+ });
286
+ n.outputEncoding = a.sRGBEncoding;
287
+ }
288
+ return n.autoClear = !0, n;
289
+ }
290
+ function d(e) {
291
+ e && (e.capabilities.isWebGL2 ? l.indexOf(e) === -1 && l.push(e) : c.indexOf(e) === -1 && c.push(e));
292
+ }
293
+ //#endregion
294
+ //#region build/react/context.js
295
+ var f = e.createContext(null);
296
+ function p() {
297
+ let t = e.useContext(f);
298
+ if (!t) throw Error("FiveProvider never found.");
299
+ return t.five;
300
+ }
301
+ function m() {
302
+ let t = e.useContext(f);
303
+ if (!t) throw Error("FiveProvider never found.");
304
+ return t.loadWork;
305
+ }
306
+ //#endregion
307
+ //#region build/react/createProvider.js
308
+ function h(e, t) {
309
+ let n = Array.isArray(e) ? e : [e], r = Array.isArray(t) ? t : [t];
310
+ if (n.length !== r.length) return !1;
311
+ for (let e = 0; e < n.length; e++) if (n[e].workCode !== r[e].workCode) return !1;
312
+ return !0;
313
+ }
314
+ function g(t = {}) {
315
+ return class extends e.Component {
316
+ constructor(e) {
317
+ super(e), this.__fiveEventDisposers = [], this.__fiveDisposeTimer = null, this.five = new o(Object.assign(Object.assign({}, t), { renderer: void 0 })), this.loadWork = this.loadWork.bind(this), this.state = {};
318
+ }
319
+ loadWork(e, t, n, r = !0) {
320
+ if (this.props.work) throw Error("props 'works' is set in fiveProvider, if you need modify work internal, use 'initialWork' instead.");
321
+ return this.five.load(e, t, n, r);
322
+ }
323
+ shouldComponentUpdate(e) {
324
+ return this.five.renderer && this.five && e.work && !h(e.work, this.five.works) && this.five.load(e.work, e.initialState, e.initialOptions), !0;
325
+ }
326
+ componentDidMount() {
327
+ var e;
328
+ clearTimeout(this.__fiveDisposeTimer), this.__fiveDisposeTimer = null;
329
+ let n;
330
+ if (typeof window < "u") {
331
+ n = u({
332
+ webgl2: t == null ? void 0 : t.webgl2,
333
+ preserveDrawingBuffer: t == null ? void 0 : t.preserveDrawingBuffer
334
+ });
335
+ let e = s() === 1 ? window.devicePixelRatio : 1;
336
+ n == null || n.setPixelRatio(e);
337
+ }
338
+ this.five.renderer = n, this.setState({ renderer: n }), this.__fiveEventDisposers.push(this.five.on("load", () => {
339
+ this.props.onWorksChange && this.props.onWorksChange(this.five.works);
340
+ })), this.__fiveEventDisposers.push(this.five.on("stateChange", (e, t) => {
341
+ this.props.onStateChange && this.props.onStateChange(e, t);
342
+ })), this.__fiveEventDisposers.push(this.five.on("currentStateChange", (e, t) => {
343
+ this.props.onCurrentStateChange && this.props.onCurrentStateChange(e, t);
344
+ })), this.__fiveEventDisposers.push(this.five.on("error", (e) => {
345
+ this.props.onError ? this.props.onError(e) : console.warn(e.message);
346
+ }));
347
+ let r = this.props.work || this.props.initialWork;
348
+ r && this.five.load(r, this.props.initialState, this.props.initialOptions, (e = this.props.initialUserAction) == null ? !0 : e);
349
+ }
350
+ componentWillUnmount() {
351
+ var e;
352
+ (e = this.five.controller) == null || e.destroy();
353
+ let t = this.five.renderer;
354
+ this.five.renderer = void 0, d(t), this.setState({ renderer: void 0 }), this.__fiveDisposeTimer = setTimeout(() => {
355
+ this.__fiveDisposeTimer = null, this.five.dispose();
356
+ }, 1e3);
357
+ }
358
+ render() {
359
+ let t = this.five, n = this.loadWork, r = this.state.renderer;
360
+ return e.createElement(f.Provider, { value: {
361
+ renderer: r,
362
+ five: t,
363
+ loadWork: n
364
+ } }, this.props.children);
365
+ }
366
+ };
367
+ }
368
+ //#endregion
369
+ //#region build/react/canvas.js
370
+ var _ = typeof window < "u" ? e.useLayoutEffect : e.useEffect, v = {
371
+ display: "inline-block",
372
+ overflow: "hidden"
373
+ }, y = ({ width: t, height: n }) => {
374
+ let r = p(), i = e.createRef(), a = Object.assign({
375
+ width: t,
376
+ height: n
377
+ }, v);
378
+ return _(() => {
379
+ let e = i.current;
380
+ if (!e || !r.renderer) return;
381
+ let a = r.renderer.domElement;
382
+ if (a.parentNode !== null && a.parentNode !== e) throw Error("There are more than 2 fiveCanvas in this context.");
383
+ return a.parentNode !== e && e.appendChild(a), r.camera.aspect = t / n, r.camera.updateProjectionMatrix(), r.renderer.setSize(t, n), r.refresh({
384
+ width: t,
385
+ height: n
386
+ }), r.needsRender = !0, () => {
387
+ a.parentNode === e && e.removeChild(a);
388
+ };
389
+ }, [
390
+ r,
391
+ r.renderer,
392
+ t,
393
+ n,
394
+ i.current
395
+ ]), e.createElement("div", {
396
+ ref: i,
397
+ style: a
398
+ });
399
+ }, b = ({ children: t }) => {
400
+ let n = p(), r = e.useRef(null);
401
+ return e.useEffect(() => {
402
+ let e = r.current;
403
+ if (!e || !n.renderer) return;
404
+ let t = n.renderer.domElement;
405
+ e.appendChild(t);
406
+ let i = () => {
407
+ var t;
408
+ let { width: r, height: i } = e.getBoundingClientRect();
409
+ r === 0 || i === 0 || (n.camera.aspect = r / i, n.camera.updateProjectionMatrix(), (t = n.renderer) == null || t.setSize(r, i), n.refresh({
410
+ width: r,
411
+ height: i
412
+ }), n.needsRender = !0);
413
+ }, a = new ResizeObserver(i);
414
+ return a.observe(e), i(), () => {
415
+ t.parentNode === e && e.removeChild(t), a.unobserve(e), a.disconnect();
416
+ };
417
+ }, []), e.createElement("div", {
418
+ ref: r,
419
+ style: {
420
+ position: "absolute",
421
+ top: 0,
422
+ left: 0,
423
+ right: 0,
424
+ bottom: 0
425
+ }
426
+ }, t);
427
+ }, x = ({ renderChildren: t, load: n, children: r, fallback: i }) => {
428
+ let a = p(), [o, s] = e.useState(!!t), [c, l] = e.useState(!1);
429
+ return e.useEffect(() => {
430
+ a.getElement() && (s(!0), n && n(a).then((e) => {
431
+ a.load(...e);
432
+ }));
433
+ }, [a]), e.useEffect(() => {
434
+ let e = () => l(!0);
435
+ return a.on("works.load", e), a.works && a.works.length > 0 && l(!0), () => {
436
+ a.off("works.load", e);
437
+ };
438
+ }, [a]), !c && !t || !o ? i == null ? null : e.createElement(e.Fragment, null, i) : e.createElement(e.Fragment, null, r);
439
+ }, S = {
440
+ position: "relative",
441
+ width: "100vw",
442
+ height: "100vh",
443
+ overflow: "hidden"
444
+ }, C = {
445
+ backgroundAlpha: 1,
446
+ backgroundColor: 0,
447
+ imageOptions: { size: 512 },
448
+ textureOptions: { autoResize: !1 },
449
+ preserveDrawingBuffer: !0,
450
+ webgl2: !0
451
+ }, w = ({ fiveInitArgs: t = C, renderChildren: n, plugins: r, load: i, children: a, fullscreen: o, autoCanvas: s = !0, fallback: c }) => {
452
+ let [l] = e.useState(() => g(Object.assign(Object.assign({}, t), { plugins: r }))), u = [];
453
+ s && u.push(e.createElement(b, { key: "auto-canvas" })), a && u.push(a);
454
+ let d = e.createElement(l, null, e.createElement(x, {
455
+ load: i,
456
+ renderChildren: n,
457
+ fallback: c
458
+ }, ...u));
459
+ return o ? e.createElement("div", { style: S }, d) : d;
264
460
  };
265
- function B(e, n) {
266
- if (typeof n != "function" && n !== null)
267
- throw new TypeError("Class extends value " + String(n) + " is not a constructor or null");
268
- E(e, n);
269
- function t() {
270
- this.constructor = e;
271
- }
272
- e.prototype = n === null ? Object.create(n) : (t.prototype = n.prototype, new t());
273
- }
274
- var h = function() {
275
- return h = Object.assign || function(n) {
276
- for (var t, r = 1, o = arguments.length; r < o; r++) {
277
- t = arguments[r];
278
- for (var a in t) Object.prototype.hasOwnProperty.call(t, a) && (n[a] = t[a]);
279
- }
280
- return n;
281
- }, h.apply(this, arguments);
282
- };
283
- function w(e, n, t) {
284
- if (t || arguments.length === 2) for (var r = 0, o = n.length, a; r < o; r++)
285
- (a || !(r in n)) && (a || (a = Array.prototype.slice.call(n, 0, r)), a[r] = n[r]);
286
- return e.concat(a || Array.prototype.slice.call(n));
287
- }
288
- var k = [], R = [];
289
- function ie(e) {
290
- var n = e === void 0 ? {} : e, t = n.preserveDrawingBuffer, r = t === void 0 ? !0 : t, o = n.webgl2, a = o === void 0 ? !1 : o;
291
- if (typeof window != "undefined") {
292
- var i = null;
293
- if (a ? i = k.shift() : i = R.shift(), !i) {
294
- if (a) {
295
- var s = document.createElement("canvas"), c = s.getContext("webgl2");
296
- c ? i = new p.WebGLRenderer({ preserveDrawingBuffer: r, antialias: !0, alpha: !0, stencil: !0, canvas: s, context: c }) : (console.error("error occurred when getting webgl2 canvas context, mybe webgl2 not support, fallback to webgl."), i = new p.WebGLRenderer({ preserveDrawingBuffer: r, antialias: !1, alpha: !0, stencil: !0 }));
297
- } else
298
- i = new p.WebGLRenderer({ preserveDrawingBuffer: r, antialias: !1, alpha: !0, stencil: !0 });
299
- i.outputEncoding = p.sRGBEncoding;
300
- }
301
- return i.autoClear = !0, i;
302
- }
303
- }
304
- function se(e) {
305
- if (e) {
306
- var n = e.capabilities.isWebGL2;
307
- n ? R.indexOf(e) === -1 && R.push(e) : k.indexOf(e) === -1 && k.push(e);
308
- }
309
- }
310
- var L = u.createContext(null);
311
- function v() {
312
- var e = u.useContext(L);
313
- if (!e)
314
- throw new Error("FiveProvider never found.");
315
- return e.five;
316
- }
317
- function H() {
318
- var e = u.useContext(L);
319
- if (!e)
320
- throw new Error("FiveProvider never found.");
321
- return e.loadWork;
322
- }
323
- function ce(e, n) {
324
- var t = Array.isArray(e) ? e : [e], r = Array.isArray(n) ? n : [n];
325
- if (t.length !== r.length)
326
- return !1;
327
- for (var o = 0; o < t.length; o++)
328
- if (t[o].workCode !== r[o].workCode)
329
- return !1;
330
- return !0;
331
- }
332
- function Ge(e) {
333
- return e === void 0 && (e = {}), /** @class */
334
- (function(n) {
335
- B(t, n);
336
- function t(r) {
337
- var o = n.call(this, r) || this;
338
- return o.__fiveEventDisposers = [], o.__fiveDisposeTimer = null, o.five = new ue(h(h({}, e), { renderer: void 0 })), o.loadWork = o.loadWork.bind(o), o.state = {}, o;
339
- }
340
- return t.prototype.loadWork = function(r, o, a, i) {
341
- if (i === void 0 && (i = !0), this.props.work)
342
- throw new Error("props 'works' is set in fiveProvider, if you need modify work internal, use 'initialWork' instead.");
343
- return this.five.load(r, o, a, i);
344
- }, t.prototype.shouldComponentUpdate = function(r) {
345
- return this.five.renderer && this.five && r.work && !ce(r.work, this.five.works) && this.five.load(r.work, r.initialState, r.initialOptions), !0;
346
- }, t.prototype.componentDidMount = function() {
347
- var r = this, o;
348
- clearTimeout(this.__fiveDisposeTimer), this.__fiveDisposeTimer = null;
349
- var a;
350
- if (typeof window != "undefined") {
351
- a = ie({
352
- webgl2: e == null ? void 0 : e.webgl2,
353
- preserveDrawingBuffer: e == null ? void 0 : e.preserveDrawingBuffer
354
- });
355
- var i = ae(), s = i === 1 ? window.devicePixelRatio : 1;
356
- a == null || a.setPixelRatio(s);
357
- }
358
- this.five.renderer = a, this.setState({ renderer: a }), this.__fiveEventDisposers.push(this.five.on("load", function() {
359
- r.props.onWorksChange && r.props.onWorksChange(r.five.works);
360
- })), this.__fiveEventDisposers.push(this.five.on("stateChange", function(l, d) {
361
- r.props.onStateChange && r.props.onStateChange(l, d);
362
- })), this.__fiveEventDisposers.push(this.five.on("currentStateChange", function(l, d) {
363
- r.props.onCurrentStateChange && r.props.onCurrentStateChange(l, d);
364
- })), this.__fiveEventDisposers.push(this.five.on("error", function(l) {
365
- r.props.onError ? r.props.onError(l) : console.warn(l.message);
366
- }));
367
- var c = this.props.work || this.props.initialWork;
368
- c && this.five.load(c, this.props.initialState, this.props.initialOptions, (o = this.props.initialUserAction) !== null && o !== void 0 ? o : !0);
369
- }, t.prototype.componentWillUnmount = function() {
370
- var r = this, o;
371
- (o = this.five.controller) === null || o === void 0 || o.destroy();
372
- var a = this.five.renderer;
373
- this.five.renderer = void 0, se(a), this.setState({ renderer: void 0 }), this.__fiveDisposeTimer = setTimeout(function() {
374
- r.__fiveDisposeTimer = null, r.five.dispose();
375
- }, 1e3);
376
- }, t.prototype.render = function() {
377
- var r = this.five, o = this.loadWork, a = this.state.renderer;
378
- return u.createElement(L.Provider, {
379
- value: { renderer: a, five: r, loadWork: o }
380
- }, this.props.children);
381
- }, t;
382
- })(u.Component);
383
- }
384
- var fe = typeof window != "undefined" ? u.useLayoutEffect : u.useEffect, le = {
385
- display: "inline-block",
386
- overflow: "hidden"
387
- }, Ie = function(e) {
388
- var n = e.width, t = e.height, r = v(), o = u.createRef(), a = h({ width: n, height: t }, le);
389
- return fe(function() {
390
- var i = o.current;
391
- if (i && r.renderer) {
392
- var s = r.renderer.domElement;
393
- if (s.parentNode !== null && s.parentNode !== i)
394
- throw new Error("There are more than 2 fiveCanvas in this context.");
395
- return s.parentNode !== i && i.appendChild(s), r.camera.aspect = n / t, r.camera.updateProjectionMatrix(), r.renderer.setSize(n, t), r.refresh({ width: n, height: t }), r.needsRender = !0, function() {
396
- s.parentNode === i && i.removeChild(s);
397
- };
398
- }
399
- }, [r, r.renderer, n, t, o.current]), u.createElement("div", { ref: o, style: a });
400
- };
401
- function qe() {
402
- return v();
403
- }
404
- function ve(e, n) {
405
- var t = v(), r = [t];
406
- n !== void 0 && (r = r.concat(n)), u.useLayoutEffect(function() {
407
- return e(t.scene);
408
- }, r);
409
- }
410
- var ze = ve;
411
- function Ae() {
412
- var e = v(), n = H(), t = u.useState(function() {
413
- return e.works;
414
- }), r = t[0], o = t[1];
415
- return u.useLayoutEffect(function() {
416
- return e.on("load", function() {
417
- return o(e.works);
418
- });
419
- }, [e]), [r, n];
420
- }
421
- function U(e) {
422
- return h({}, e.state);
423
- }
424
- function Je() {
425
- var e = v(), n = u.useState(function() {
426
- return U(e);
427
- }), t = n[0], r = n[1], o = u.useCallback(function(a, i, s) {
428
- i === void 0 && (i = !1), s === void 0 && (s = !0);
429
- var c = typeof a == "function" ? a(e.getCurrentState()) : a;
430
- e.setState(c, i, s);
431
- }, [e]);
432
- return u.useLayoutEffect(function() {
433
- return e.on("stateChange", function() {
434
- return r(U(e));
435
- });
436
- }, [e]), [t, o];
437
- }
438
- function Ke() {
439
- var e = v(), n = u.useState(function() {
440
- return e.getCurrentState();
441
- }), t = n[0], r = n[1], o = u.useCallback(function(a, i, s) {
442
- i === void 0 && (i = !1), s === void 0 && (s = !0);
443
- var c = typeof a == "function" ? a(e.getCurrentState()) : a;
444
- e.setState(c, i, s);
445
- }, [e]);
446
- return u.useLayoutEffect(function() {
447
- return e.on("currentStateChange", function() {
448
- return r(e.getCurrentState());
449
- });
450
- }, [e]), [t, o];
451
- }
452
- function Qe() {
453
- var e = v(), n = u.useState(function() {
454
- return e.getCurrentState();
455
- }), t = n[0], r = n[1];
456
- return u.useLayoutEffect(function() {
457
- return e.on("currentStateChange", function() {
458
- return r(e.getCurrentState());
459
- });
460
- }, [e]), e.works.getObserver(t);
461
- }
462
- function Xe(e, n, t) {
463
- var r = v(), o = [r, e];
464
- t !== void 0 && (o = o.concat(t)), u.useLayoutEffect(function() {
465
- return r.on(e, n);
466
- }, o);
467
- }
468
- function Ye() {
469
- var e = v(), n = u.useCallback(function(i, s) {
470
- return e.updateCamera(i, s);
471
- }, [e]), t = u.useCallback(e.getPixels.bind(e), [e]), r = u.useCallback(function(i) {
472
- return e.render(i);
473
- }, [e]), o = u.useCallback(function() {
474
- return e.needsRender = !0;
475
- }, [e]), a = u.useCallback(function(i, s) {
476
- return e.preloadPano(i, s);
477
- }, [e]);
478
- return { updateCamera: n, getPixels: t, render: r, needsRender: o, preloadPano: a };
479
- }
480
- function Ze() {
481
- var e = v(), n = u.useState(function() {
482
- return Symbol();
483
- });
484
- n[0];
485
- var t = n[1];
486
- u.useLayoutEffect(function() {
487
- return e.on("cameraUpdate", function() {
488
- return t(Symbol());
489
- });
490
- }, [e]);
491
- var r = u.useCallback(function(o, a) {
492
- return e.project2d(o, a);
493
- }, [e]);
494
- return r;
495
- }
496
- function j(e) {
497
- var n = e.camera.getWorldDirection(new p.Vector3()), t = new p.Raycaster(e.camera.position, n);
498
- return t;
499
- }
500
- function er() {
501
- var e = v(), n = u.useState(function() {
502
- return j(e);
503
- }), t = n[0], r = n[1];
504
- return u.useLayoutEffect(function() {
505
- return e.on("cameraUpdate", function() {
506
- return r(j(e));
507
- });
508
- }, [e]), t;
509
- }
510
- function T(e) {
511
- return e.camera.getWorldDirection(new p.Vector3());
512
- }
513
- function rr() {
514
- var e = v(), n = u.useState(function() {
515
- return T(e);
516
- }), t = n[0], r = n[1];
517
- return u.useLayoutEffect(function() {
518
- return e.on("cameraUpdate", function() {
519
- return r(T(e));
520
- });
521
- }, [e]), t;
522
- }
523
- function tr() {
524
- var e = v(), n = u.useCallback(function(t) {
525
- return e.model.intersectRaycaster(t);
526
- }, [e]);
527
- return n;
528
- }
461
+ //#endregion
462
+ //#region build/react/hooks/unsafe__useFiveInstance.js
463
+ function T() {
464
+ return p();
465
+ }
466
+ //#endregion
467
+ //#region build/react/hooks/useFiveSceneEffect.js
468
+ function E(t, n) {
469
+ let r = p(), i = [r];
470
+ n !== void 0 && (i = i.concat(n)), e.useLayoutEffect(() => t(r.scene), i);
471
+ }
472
+ var D = E;
473
+ //#endregion
474
+ //#region build/react/hooks/useFiveWork.js
475
+ function O() {
476
+ let t = p(), n = m(), [r, i] = e.useState(() => t.works);
477
+ return e.useLayoutEffect(() => t.on("load", () => i(t.works)), [t]), [r, n];
478
+ }
479
+ //#endregion
480
+ //#region build/react/hooks/useFiveState.js
481
+ function k(e) {
482
+ return Object.assign({}, e.state);
483
+ }
484
+ function A() {
485
+ let t = p(), [n, r] = e.useState(() => k(t)), i = e.useCallback((e, n = !1, r = !0) => {
486
+ let i = typeof e == "function" ? e(t.getCurrentState()) : e;
487
+ t.setState(i, n, r);
488
+ }, [t]);
489
+ return e.useLayoutEffect(() => t.on("stateChange", () => r(k(t))), [t]), [n, i];
490
+ }
491
+ //#endregion
492
+ //#region build/react/hooks/useFiveCurrentState.js
493
+ function j() {
494
+ let t = p(), [n, r] = e.useState(() => t.getCurrentState()), i = e.useCallback((e, n = !1, r = !0) => {
495
+ let i = typeof e == "function" ? e(t.getCurrentState()) : e;
496
+ t.setState(i, n, r);
497
+ }, [t]);
498
+ return e.useLayoutEffect(() => t.on("currentStateChange", () => r(t.getCurrentState())), [t]), [n, i];
499
+ }
500
+ //#endregion
501
+ //#region build/react/hooks/useFiveCurrentObserver.js
502
+ function M() {
503
+ let t = p(), [n, r] = e.useState(() => t.getCurrentState());
504
+ return e.useLayoutEffect(() => t.on("currentStateChange", () => r(t.getCurrentState())), [t]), t.works.getObserver(n);
505
+ }
506
+ //#endregion
507
+ //#region build/react/hooks/useFiveEventCallback.js
508
+ function ee(t, n, r) {
509
+ let i = p(), a = [i, t];
510
+ r !== void 0 && (a = a.concat(r)), e.useLayoutEffect(() => i.on(t, n), a);
511
+ }
512
+ //#endregion
513
+ //#region build/react/hooks/useFiveAction.js
514
+ function te() {
515
+ let t = p();
516
+ return {
517
+ updateCamera: e.useCallback((e, n) => t.updateCamera(e, n), [t]),
518
+ getPixels: e.useCallback(t.getPixels.bind(t), [t]),
519
+ render: e.useCallback((e) => t.render(e), [t]),
520
+ needsRender: e.useCallback(() => t.needsRender = !0, [t]),
521
+ preloadPano: e.useCallback((e, n) => t.preloadPano(e, n), [t])
522
+ };
523
+ }
524
+ //#endregion
525
+ //#region build/react/hooks/useFiveProject2d.js
526
+ function ne() {
527
+ let t = p(), [n, r] = e.useState(() => Symbol());
528
+ return e.useLayoutEffect(() => t.on("cameraUpdate", () => r(Symbol())), [t]), e.useCallback((e, n) => t.project2d(e, n), [t]);
529
+ }
530
+ //#endregion
531
+ //#region build/react/hooks/useFiveCameraRaycaster.js
529
532
  function N(e) {
530
- return e.model.empty ? "Empty" : "Loaded";
531
- }
532
- function nr() {
533
- var e = v(), n = u.useState(function() {
534
- return N(e);
535
- }), t = n[0], r = n[1];
536
- return u.useLayoutEffect(function() {
537
- return e.on("modelLoaded", function() {
538
- return r(N(e));
539
- });
540
- }, [e]), t;
541
- }
542
- function or() {
543
- var e = v(), n = u.useState(e.model.shownFloor), t = n[0], r = n[1], o = u.useState(e.model.floorLength), a = o[0], i = o[1], s = u.useCallback(function(c) {
544
- typeof c == "number" ? e.model.show(c) : e.model.show();
545
- }, [e]);
546
- return u.useLayoutEffect(function() {
547
- var c = [];
548
- return c.push(e.on("modelShownFloorChange", function() {
549
- return r(e.model.shownFloor);
550
- })), c.push(e.on("modelLoaded", function() {
551
- return i(e.model.floorLength);
552
- })), function() {
553
- for (var l; l = c.shift(); )
554
- l();
555
- };
556
- }, [e]), [t, a, s];
557
- }
558
- function ar() {
559
- var e = v(), n = u.useState(e.helperVisible), t = n[0], r = n[1], o = u.useCallback(function(a) {
560
- e.helperVisible = a;
561
- }, [e]);
562
- return u.useLayoutEffect(function() {
563
- return e.on("helpersVisibleChange", function(a) {
564
- return r(a);
565
- });
566
- }, [e]), [t, o];
567
- }
568
- var ur = "$five";
569
- function f(e, n) {
570
- return n.indexOf(e) >= 0;
571
- }
572
- function $(e, n) {
573
- for (var t = 0, r = Object.keys(n); t < r.length; t++) {
574
- var o = r[t];
575
- n[o] !== void 0 && (e[o] = n[o]);
576
- }
577
- }
578
- function de(e, n) {
579
- var t = f("state", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
580
- if (t)
581
- return h({}, e.state);
582
- }, [e, o]);
583
- return u.useLayoutEffect(function() {
584
- if (t)
585
- return e.on("stateChange", function() {
586
- return a(Symbol());
587
- });
588
- }, [e]), [i, o];
589
- }
590
- function pe(e, n) {
591
- var t = f("currentState", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
592
- if (t)
593
- return e.getCurrentState();
594
- }, [e, o]);
595
- return u.useLayoutEffect(function() {
596
- if (t)
597
- return e.on("currentStateChange", function() {
598
- return a(Symbol());
599
- });
600
- }, [e]), [i, o];
601
- }
602
- function he(e, n) {
603
- var t = f("currentObserver", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
604
- if (t)
605
- return e.getCurrentState();
606
- }, [e, o]);
607
- u.useLayoutEffect(function() {
608
- if (t)
609
- return e.on("currentStateChange", function() {
610
- return a(Symbol());
611
- });
612
- }, [e]);
613
- var s = void 0;
614
- return i && (s = e.works.getObserver(i)), [s, o];
615
- }
616
- function ge(e, n) {
617
- var t = f("unsafe__fiveInstance", n);
618
- return [t ? e : void 0];
619
- }
620
- function me(e, n) {
621
- var t = f("works", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
622
- if (t)
623
- return e.works;
624
- }, [e, o]);
625
- return u.useLayoutEffect(function() {
626
- if (t)
627
- return e.on("load", function() {
628
- return a(Symbol());
629
- });
630
- }, [e]), [i, o];
631
- }
632
- function ye(e, n) {
633
- var t = f("model", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
634
- if (t)
635
- return e.model;
636
- }, [e, o]);
637
- return u.useLayoutEffect(function() {
638
- if (t)
639
- return e.on("modelLoaded", function() {
640
- return a(Symbol());
641
- });
642
- }, [e]), [i, o];
643
- }
644
- function Se(e, n) {
645
- var t = f("scene", n);
646
- return [t ? e.scene : void 0];
647
- }
648
- function we(e, n) {
649
- var t = f("cameraDirection", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
650
- if (t)
651
- return e.camera.getWorldDirection(new p.Vector3());
652
- }, [e, o]);
653
- return u.useLayoutEffect(function() {
654
- if (t)
655
- return e.on("cameraUpdate", function() {
656
- return a(Symbol());
657
- });
658
- }, [e]), [i, o];
659
- }
660
- function be(e, n) {
661
- var t = f("cameraRaycaster", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
662
- if (t) {
663
- var s = e.camera.getWorldDirection(new p.Vector3()), c = new p.Raycaster(e.camera.position, s);
664
- return c;
665
- }
666
- }, [e, o]);
667
- return u.useLayoutEffect(function() {
668
- if (t)
669
- return e.on("cameraUpdate", function() {
670
- return a(Symbol());
671
- });
672
- }, [e]), [i, o];
673
- }
674
- function Ce(e, n) {
675
- var t = f("modelReadyState", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
676
- if (t)
677
- return e.model.empty ? "Empty" : "Loaded";
678
- }, [e, o]);
679
- return u.useLayoutEffect(function() {
680
- if (t)
681
- return e.on("modelLoaded", function() {
682
- return a(Symbol());
683
- });
684
- }, [e]), [i, o];
685
- }
686
- function Fe(e, n) {
687
- var t = f("shownFloor", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
688
- if (t)
689
- return e.model.shownFloor;
690
- }, [e, o]);
691
- return u.useLayoutEffect(function() {
692
- if (t)
693
- return e.on("modelShownFloorChange", function() {
694
- return a(Symbol());
695
- });
696
- }, [e]), [i, o];
697
- }
698
- function Ee(e, n) {
699
- var t = f("helperVisible", n), r = u.useState(Symbol()), o = r[0], a = r[1], i = u.useMemo(function() {
700
- if (t)
701
- return e.helperVisible;
702
- }, [e, o]);
703
- return u.useLayoutEffect(function() {
704
- if (t)
705
- return e.on("helpersVisibleChange", function() {
706
- return a(Symbol());
707
- });
708
- }, [e]), [i, o];
709
- }
710
- function ke(e, n) {
711
- if (f("loadWork", n))
712
- return e;
713
- }
714
- function Re(e, n) {
715
- if (f("setState", n))
716
- return function() {
717
- for (var t = [], r = 0; r < arguments.length; r++)
718
- t[r] = arguments[r];
719
- return e.setState.apply(e, t);
720
- };
721
- }
722
- function Le(e, n) {
723
- if (f("on", n))
724
- return function() {
725
- for (var t = [], r = 0; r < arguments.length; r++)
726
- t[r] = arguments[r];
727
- return e.on.apply(e, t);
728
- };
729
- }
730
- function Ve(e, n) {
731
- if (f("on", n))
732
- return function() {
733
- for (var t = [], r = 0; r < arguments.length; r++)
734
- t[r] = arguments[r];
735
- return e.once.apply(e, t);
736
- };
737
- }
738
- function Pe(e, n) {
739
- if (f("off", n))
740
- return function() {
741
- for (var t = [], r = 0; r < arguments.length; r++)
742
- t[r] = arguments[r];
743
- return e.off.apply(e, t);
744
- };
745
- }
746
- function _e(e, n) {
747
- if (f("intersectRaycaster", n))
748
- return function() {
749
- for (var t, r = [], o = 0; o < arguments.length; o++)
750
- r[o] = arguments[o];
751
- return (t = e.model).intersectRaycaster.apply(t, r);
752
- };
753
- }
754
- function xe(e, n) {
755
- if (f("project2d", n))
756
- return function() {
757
- for (var t = [], r = 0; r < arguments.length; r++)
758
- t[r] = arguments[r];
759
- return e.project2d.apply(e, t);
760
- };
761
- }
762
- function De(e, n) {
763
- if (f("updateCamera", n))
764
- return function() {
765
- for (var t = [], r = 0; r < arguments.length; r++)
766
- t[r] = arguments[r];
767
- return e.updateCamera.apply(e, t);
768
- };
769
- }
770
- function We(e, n) {
771
- if (f("getPixels", n))
772
- return e.getPixels.bind(e);
773
- }
774
- function Oe(e, n) {
775
- if (f("render", n))
776
- return function() {
777
- for (var t = [], r = 0; r < arguments.length; r++)
778
- t[r] = arguments[r];
779
- return e.render.apply(e, t);
780
- };
781
- }
782
- function Me(e, n) {
783
- if (f("needsRender", n))
784
- return function() {
785
- e.needsRender = !0;
786
- };
787
- }
788
- function Ue(e, n) {
789
- if (f("preloadPano", n))
790
- return function() {
791
- for (var t = [], r = 0; r < arguments.length; r++)
792
- t[r] = arguments[r];
793
- return e.preloadPano.apply(e, t);
794
- };
795
- }
796
- function je(e, n) {
797
- if (f("showFloor", n))
798
- return function(t) {
799
- typeof t == "number" ? e.model.show(t) : e.model.show();
800
- };
801
- }
802
- function Te(e, n) {
803
- if (f("toggleHelperVisible", n))
804
- return function(t) {
805
- e.helperVisible = t;
806
- };
807
- }
808
- function ir(e) {
809
- return function(n) {
810
- return u.forwardRef(function(t, r) {
811
- var o = v(), a = H(), i = ge(o, e)[0], s = de(o, e), c = s[0], l = s[1], d = pe(o, e), m = d[0], g = d[1], S = he(o, e), b = S[0], C = S[1], V = me(o, e), G = V[0], I = V[1], P = ye(o, e), q = P[0], z = P[1], A = Se(o, e)[0], _ = we(o, e), J = _[0], K = _[1], x = be(o, e), Q = x[0], X = x[1], D = Ce(o, e), Y = D[0], Z = D[1], W = Fe(o, e), ee = W[0], re = W[1], O = Ee(o, e), te = O[0], ne = O[1], M = u.useMemo(function() {
812
- var y = {};
813
- return $(y, {
814
- setState: Re(o, e),
815
- loadWork: ke(a, e),
816
- on: Le(o, e),
817
- once: Ve(o, e),
818
- off: Pe(o, e),
819
- intersectRaycaster: _e(o, e),
820
- project2d: xe(o, e),
821
- updateCamera: De(o, e),
822
- getPixels: We(o, e),
823
- render: Oe(o, e),
824
- needsRender: Me(o, e),
825
- preloadPano: Ue(o, e),
826
- showFloor: je(o, e),
827
- toggleHelperVisible: Te(o, e)
828
- }), y;
829
- }, [o, a]), oe = u.useMemo(function() {
830
- var y = h({}, M);
831
- return $(y, {
832
- unsafe__fiveInstance: i,
833
- state: c,
834
- currentState: m,
835
- currentObserver: b,
836
- work: G,
837
- model: q,
838
- scene: A,
839
- cameraDirection: J,
840
- cameraRaycaster: Q,
841
- modelReadyState: Y,
842
- shownFloor: ee,
843
- helperVisible: te
844
- }), y;
845
- }, [
846
- o,
847
- M,
848
- l,
849
- g,
850
- C,
851
- I,
852
- z,
853
- K,
854
- X,
855
- Z,
856
- re,
857
- ne
858
- ]);
859
- return u.createElement(n, h({ ref: r, $five: oe }, t));
860
- });
861
- };
862
- }
863
- function sr() {
864
- for (var e = [], n = 0; n < arguments.length; n++)
865
- e[n] = arguments[n];
866
- return e;
867
- }
868
- function F(e, n) {
869
- for (var t = {}, r = n.length, o = -1; ++o < r; ) {
870
- var a = n[o];
871
- a in e && (t[a] = e[a]);
872
- }
873
- return t;
874
- }
875
- function Ne(e, n) {
876
- return typeof e == "number" && typeof n == "number" && isNaN(e) && isNaN(n) ? !0 : e === n;
877
- }
878
- function $e(e, n) {
879
- for (var t = 0; t < e.length; t++)
880
- for (var r = 0; r < n.length; r++)
881
- if (e[t] === n[r])
882
- return !0;
883
- return !1;
884
- }
885
- var Be = (
886
- /** @class */
887
- (function() {
888
- function e(n, t) {
889
- this.values = n, this.listeners = [], this.onValuesChange = t;
890
- }
891
- return e.prototype.on = function(n, t) {
892
- var r = this, o = [n, t];
893
- return this.listeners.push(o), function() {
894
- var a = r.listeners.indexOf(o);
895
- a >= 0 && r.listeners.splice(a, 1);
896
- };
897
- }, e.prototype.getValues = function(n) {
898
- return F(this.values, n);
899
- }, e.prototype.setValues = function(n, t) {
900
- var r = [];
901
- for (var o in t)
902
- n.indexOf(o) >= 0 && !Ne(t[o], this.values[o]) && r.push(o);
903
- if (r.length !== 0) {
904
- for (var a = h({}, this.values), i = 0, s = r; i < s.length; i++) {
905
- var c = s[i];
906
- this.values[c] = t[c];
907
- }
908
- this.onValuesChange && this.onValuesChange(this.values, a);
909
- for (var l = 0, d = this.listeners; l < d.length; l++) {
910
- var m = d[l], g = m[0], S = m[1];
911
- if ($e(g, r)) {
912
- var b = F(a, g), C = F(this.values, g);
913
- S(C, b);
914
- }
915
- }
916
- }
917
- }, e;
918
- })()
919
- );
920
- function cr(e) {
921
- var n = u.createContext(null);
922
- return {
923
- /**
924
- * 使用 Store
925
- * @param names - 获取的 Store 字段
926
- * @returns [值, 修改值方法]
927
- */
928
- useStore: function(t) {
929
- var r = u.useContext(n);
930
- if (r === null)
931
- throw new Error("StoreProvider never found.");
932
- var o = u.useRef(!0), a = u.useState(r.getValues(t)), i = a[0], s = a[1], c = w([r], t, !0);
933
- u.useLayoutEffect(function() {
934
- return o.current ? o.current = !1 : s(r.getValues(t)), r.on(t, function(d) {
935
- return s(d);
936
- });
937
- }, c);
938
- var l = u.useCallback(function(d) {
939
- return r.setValues(t, d);
940
- }, c);
941
- return [i, l];
942
- },
943
- /**
944
- * 使用 Store (仅设置值)
945
- * @param names - 获取的 Store 字段
946
- * @returns 修改值方法
947
- */
948
- useStoreSetter: function(t) {
949
- var r = u.useContext(n);
950
- if (r === null)
951
- throw new Error("StoreProvider never found.");
952
- var o = u.useCallback(function(a) {
953
- return r.setValues(t, a);
954
- }, w([r], t, !0));
955
- return o;
956
- },
957
- /**
958
- * 监听 Store 变化
959
- * @param names - Store 字段
960
- * @param callback - 监听变化的回调函数
961
- * @param deps - 依赖对象
962
- */
963
- watchStore: function(t, r, o) {
964
- var a = u.useContext(n);
965
- if (a === null)
966
- throw new Error("StoreProvider never found.");
967
- var i = w([a], t, !0);
968
- o !== void 0 && (i = i.concat(o)), u.useLayoutEffect(function() {
969
- return a.on(t, r);
970
- }, i);
971
- },
972
- useStoreAction: function(t) {
973
- var r = u.useContext(n);
974
- if (r === null)
975
- throw new Error("StoreProvider never found.");
976
- var o = u.useCallback(function() {
977
- for (var a = [], i = 0; i < arguments.length; i++)
978
- a[i] = arguments[i];
979
- var s = e[t], c = s[0], l = s.slice(1), d = function() {
980
- return r.getValues(l);
981
- }, m = function(g) {
982
- return r.setValues(l, g);
983
- };
984
- return c.apply(void 0, w([d, m], a, !1));
985
- }, []);
986
- return o;
987
- },
988
- /**
989
- * Store Provider.
990
- * 内部组件均可和 store 交互
991
- */
992
- StoreProvider: (
993
- /** @class */
994
- (function(t) {
995
- B(r, t);
996
- function r(o) {
997
- var a = t.call(this, o) || this;
998
- return a.store = new Be(o.initialValue, function() {
999
- for (var i, s = [], c = 0; c < arguments.length; c++)
1000
- s[c] = arguments[c];
1001
- a.props.onValuesChange && (i = a.props).onValuesChange.apply(i, s);
1002
- }), a;
1003
- }
1004
- return r.prototype.shouldComponentUpdate = function(o) {
1005
- return o.children !== this.props.children;
1006
- }, r.prototype.render = function() {
1007
- return u.createElement(n.Provider, { value: this.store }, this.props.children);
1008
- }, r;
1009
- })(u.Component)
1010
- )
1011
- };
1012
- }
1013
- export {
1014
- Ie as FiveCanvas,
1015
- ur as INJECTION_PROPNAME,
1016
- Be as Store,
1017
- sr as createFiveFeature,
1018
- Ge as createFiveProvider,
1019
- cr as createStore,
1020
- qe as unsafe__useFiveInstance,
1021
- Ye as useFiveAction,
1022
- rr as useFiveCameraDirection,
1023
- er as useFiveCameraRaycaster,
1024
- Qe as useFiveCurrentObserver,
1025
- Ke as useFiveCurrentState,
1026
- Xe as useFiveEventCallback,
1027
- or as useFiveFloor,
1028
- ar as useFiveHelper,
1029
- tr as useFiveModelIntersectRaycaster,
1030
- nr as useFiveModelReadyState,
1031
- Ze as useFiveProject2d,
1032
- ze as useFiveScene,
1033
- ve as useFiveSceneEffect,
1034
- Je as useFiveState,
1035
- Ae as useFiveWork,
1036
- ir as withFive
533
+ let t = e.camera.getWorldDirection(new a.Vector3());
534
+ return new a.Raycaster(e.camera.position, t);
535
+ }
536
+ function re() {
537
+ let t = p(), [n, r] = e.useState(() => N(t));
538
+ return e.useLayoutEffect(() => t.on("cameraUpdate", () => r(N(t))), [t]), n;
539
+ }
540
+ //#endregion
541
+ //#region build/react/hooks/useFiveCameraDirection.js
542
+ function P(e) {
543
+ return e.camera.getWorldDirection(new a.Vector3());
544
+ }
545
+ function F() {
546
+ let t = p(), [n, r] = e.useState(() => P(t));
547
+ return e.useLayoutEffect(() => t.on("cameraUpdate", () => r(P(t))), [t]), n;
548
+ }
549
+ //#endregion
550
+ //#region build/react/hooks/useFiveModelIntersectRaycaster.js
551
+ function I() {
552
+ let t = p();
553
+ return e.useCallback((e) => t.model.intersectRaycaster(e), [t]);
554
+ }
555
+ //#endregion
556
+ //#region build/react/hooks/useFiveModelReadyState.js
557
+ function L(e) {
558
+ return e.model.empty ? "Empty" : "Loaded";
559
+ }
560
+ function ie() {
561
+ let t = p(), [n, r] = e.useState(() => L(t));
562
+ return e.useLayoutEffect(() => t.on("modelLoaded", () => r(L(t))), [t]), n;
563
+ }
564
+ //#endregion
565
+ //#region build/react/hooks/useFivePlugin.js
566
+ var R = /* @__PURE__ */ new Map(), z = /* @__PURE__ */ new Map();
567
+ function B(e) {
568
+ let t = z.get(e);
569
+ t && t.forEach((e) => e());
570
+ }
571
+ function V(e, t) {
572
+ return z.has(e) || z.set(e, /* @__PURE__ */ new Set()), z.get(e).add(t), () => {
573
+ let n = z.get(e);
574
+ n && (n.delete(t), n.size === 0 && z.delete(e));
575
+ };
576
+ }
577
+ function H(e, t) {
578
+ return `${e}:${t}`;
579
+ }
580
+ function U(e, t) {
581
+ var n;
582
+ return (n = R.get(H(e, t))) == null ? void 0 : n.plugin;
583
+ }
584
+ function W(e, t, n) {
585
+ R.set(H(e, t), { plugin: n }), B(e);
586
+ }
587
+ function G(e, a) {
588
+ var o, s;
589
+ let c = p(), l = (s = (o = c.work) == null ? void 0 : o.workCode) == null ? "" : s, u = H(l, e), d = r(c), [, f] = i(0);
590
+ return n(() => {
591
+ if (l) return V(l, () => f((e) => e + 1));
592
+ }, [l]), n(() => {
593
+ if (d.current === c) return;
594
+ d.current = c;
595
+ let t = R.get(u);
596
+ if (!t) return;
597
+ let n = t.plugin;
598
+ if (a != null && a.reCreateOnFiveChange && a.createPlugin) {
599
+ typeof n.dispose == "function" && n.dispose();
600
+ let t = a.createPlugin(c);
601
+ R.set(u, { plugin: t }), c.plugins[e] = t, B(l);
602
+ } else n && (typeof n.updateFive == "function" ? n.updateFive(c) : "five" in n && (n.five = c));
603
+ }, [c]), t(() => {
604
+ let t = R.get(u);
605
+ if (t) return c.plugins[e] = t.plugin, t.plugin;
606
+ let n = c.plugins[e];
607
+ if (n) return R.set(u, { plugin: n }), n;
608
+ if (a != null && a.createPlugin) {
609
+ let t = a.createPlugin(c);
610
+ return R.set(u, { plugin: t }), c.plugins[e] = t, B(l), t;
611
+ }
612
+ }, [
613
+ u,
614
+ c,
615
+ a == null ? void 0 : a.createPlugin
616
+ ])();
617
+ }
618
+ //#endregion
619
+ //#region build/react/hooks/useFiveFloor.js
620
+ function K() {
621
+ let t = p(), [n, r] = e.useState(t.model.shownFloor), [i, a] = e.useState(t.model.floorLength), o = e.useCallback((e) => {
622
+ typeof e == "number" ? t.model.show(e) : t.model.show();
623
+ }, [t]);
624
+ return e.useLayoutEffect(() => {
625
+ let e = [];
626
+ return e.push(t.on("modelShownFloorChange", () => r(t.model.shownFloor))), e.push(t.on("modelLoaded", () => a(t.model.floorLength))), () => {
627
+ let t;
628
+ for (; t = e.shift();) t();
629
+ };
630
+ }, [t]), [
631
+ n,
632
+ i,
633
+ o
634
+ ];
635
+ }
636
+ //#endregion
637
+ //#region build/react/hooks/useFiveHelper.js
638
+ function q() {
639
+ let t = p(), [n, r] = e.useState(t.helperVisible), i = e.useCallback((e) => {
640
+ t.helperVisible = e;
641
+ }, [t]);
642
+ return e.useLayoutEffect(() => t.on("helpersVisibleChange", (e) => r(e)), [t]), [n, i];
643
+ }
644
+ //#endregion
645
+ //#region build/react/withFive.js
646
+ var J = "$five";
647
+ function Y(e, t) {
648
+ return t.indexOf(e) >= 0;
649
+ }
650
+ function X(e, t) {
651
+ for (let n of Object.keys(t)) t[n] !== void 0 && (e[n] = t[n]);
652
+ }
653
+ function ae(t, n) {
654
+ let r = Y("state", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
655
+ if (r) return Object.assign({}, t.state);
656
+ }, [t, i]);
657
+ return e.useLayoutEffect(() => {
658
+ if (r) return t.on("stateChange", () => a(Symbol()));
659
+ }, [t]), [o, i];
660
+ }
661
+ function oe(t, n) {
662
+ let r = Y("currentState", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
663
+ if (r) return t.getCurrentState();
664
+ }, [t, i]);
665
+ return e.useLayoutEffect(() => {
666
+ if (r) return t.on("currentStateChange", () => a(Symbol()));
667
+ }, [t]), [o, i];
668
+ }
669
+ function se(t, n) {
670
+ let r = Y("currentObserver", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
671
+ if (r) return t.getCurrentState();
672
+ }, [t, i]);
673
+ e.useLayoutEffect(() => {
674
+ if (r) return t.on("currentStateChange", () => a(Symbol()));
675
+ }, [t]);
676
+ let s;
677
+ return o && (s = t.works.getObserver(o)), [s, i];
678
+ }
679
+ function ce(e, t) {
680
+ return [Y("unsafe__fiveInstance", t) ? e : void 0];
681
+ }
682
+ function le(t, n) {
683
+ let r = Y("works", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
684
+ if (r) return t.works;
685
+ }, [t, i]);
686
+ return e.useLayoutEffect(() => {
687
+ if (r) return t.on("load", () => a(Symbol()));
688
+ }, [t]), [o, i];
689
+ }
690
+ function ue(t, n) {
691
+ let r = Y("model", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
692
+ if (r) return t.model;
693
+ }, [t, i]);
694
+ return e.useLayoutEffect(() => {
695
+ if (r) return t.on("modelLoaded", () => a(Symbol()));
696
+ }, [t]), [o, i];
697
+ }
698
+ function de(e, t) {
699
+ return [Y("scene", t) ? e.scene : void 0];
700
+ }
701
+ function fe(t, n) {
702
+ let r = Y("cameraDirection", n), [i, o] = e.useState(Symbol()), s = e.useMemo(() => {
703
+ if (r) return t.camera.getWorldDirection(new a.Vector3());
704
+ }, [t, i]);
705
+ return e.useLayoutEffect(() => {
706
+ if (r) return t.on("cameraUpdate", () => o(Symbol()));
707
+ }, [t]), [s, i];
708
+ }
709
+ function pe(t, n) {
710
+ let r = Y("cameraRaycaster", n), [i, o] = e.useState(Symbol()), s = e.useMemo(() => {
711
+ if (r) {
712
+ let e = t.camera.getWorldDirection(new a.Vector3());
713
+ return new a.Raycaster(t.camera.position, e);
714
+ }
715
+ }, [t, i]);
716
+ return e.useLayoutEffect(() => {
717
+ if (r) return t.on("cameraUpdate", () => o(Symbol()));
718
+ }, [t]), [s, i];
719
+ }
720
+ function me(t, n) {
721
+ let r = Y("modelReadyState", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
722
+ if (r) return t.model.empty ? "Empty" : "Loaded";
723
+ }, [t, i]);
724
+ return e.useLayoutEffect(() => {
725
+ if (r) return t.on("modelLoaded", () => a(Symbol()));
726
+ }, [t]), [o, i];
727
+ }
728
+ function he(t, n) {
729
+ let r = Y("shownFloor", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
730
+ if (r) return t.model.shownFloor;
731
+ }, [t, i]);
732
+ return e.useLayoutEffect(() => {
733
+ if (r) return t.on("modelShownFloorChange", () => a(Symbol()));
734
+ }, [t]), [o, i];
735
+ }
736
+ function ge(t, n) {
737
+ let r = Y("helperVisible", n), [i, a] = e.useState(Symbol()), o = e.useMemo(() => {
738
+ if (r) return t.helperVisible;
739
+ }, [t, i]);
740
+ return e.useLayoutEffect(() => {
741
+ if (r) return t.on("helpersVisibleChange", () => a(Symbol()));
742
+ }, [t]), [o, i];
743
+ }
744
+ function _e(e, t) {
745
+ if (Y("loadWork", t)) return e;
746
+ }
747
+ function ve(e, t) {
748
+ if (Y("setState", t)) return (...t) => e.setState(...t);
749
+ }
750
+ function ye(e, t) {
751
+ if (Y("on", t)) return (...t) => e.on(...t);
752
+ }
753
+ function be(e, t) {
754
+ if (Y("on", t)) return (...t) => e.once(...t);
755
+ }
756
+ function xe(e, t) {
757
+ if (Y("off", t)) return (...t) => e.off(...t);
758
+ }
759
+ function Se(e, t) {
760
+ if (Y("intersectRaycaster", t)) return (...t) => e.model.intersectRaycaster(...t);
761
+ }
762
+ function Ce(e, t) {
763
+ if (Y("project2d", t)) return (...t) => e.project2d(...t);
764
+ }
765
+ function we(e, t) {
766
+ if (Y("updateCamera", t)) return (...t) => e.updateCamera(...t);
767
+ }
768
+ function Te(e, t) {
769
+ if (Y("getPixels", t)) return e.getPixels.bind(e);
770
+ }
771
+ function Ee(e, t) {
772
+ if (Y("render", t)) return (...t) => e.render(...t);
773
+ }
774
+ function De(e, t) {
775
+ if (Y("needsRender", t)) return () => {
776
+ e.needsRender = !0;
777
+ };
778
+ }
779
+ function Oe(e, t) {
780
+ if (Y("preloadPano", t)) return (...t) => e.preloadPano(...t);
781
+ }
782
+ function ke(e, t) {
783
+ if (Y("showFloor", t)) return (t) => {
784
+ typeof t == "number" ? e.model.show(t) : e.model.show();
785
+ };
786
+ }
787
+ function Z(e, t) {
788
+ if (Y("toggleHelperVisible", t)) return (t) => {
789
+ e.helperVisible = t;
790
+ };
791
+ }
792
+ function Ae(t) {
793
+ return function(n) {
794
+ return e.forwardRef((r, i) => {
795
+ let a = p(), o = m(), [s] = ce(a, t), [c, l] = ae(a, t), [u, d] = oe(a, t), [f, h] = se(a, t), [g, _] = le(a, t), [v, y] = ue(a, t), [b] = de(a, t), [x, S] = fe(a, t), [C, w] = pe(a, t), [T, E] = me(a, t), [D, O] = he(a, t), [k, A] = ge(a, t), j = e.useMemo(() => {
796
+ let e = {};
797
+ return X(e, {
798
+ setState: ve(a, t),
799
+ loadWork: _e(o, t),
800
+ on: ye(a, t),
801
+ once: be(a, t),
802
+ off: xe(a, t),
803
+ intersectRaycaster: Se(a, t),
804
+ project2d: Ce(a, t),
805
+ updateCamera: we(a, t),
806
+ getPixels: Te(a, t),
807
+ render: Ee(a, t),
808
+ needsRender: De(a, t),
809
+ preloadPano: Oe(a, t),
810
+ showFloor: ke(a, t),
811
+ toggleHelperVisible: Z(a, t)
812
+ }), e;
813
+ }, [a, o]), M = e.useMemo(() => {
814
+ let e = Object.assign({}, j);
815
+ return X(e, {
816
+ unsafe__fiveInstance: s,
817
+ state: c,
818
+ currentState: u,
819
+ currentObserver: f,
820
+ work: g,
821
+ model: v,
822
+ scene: b,
823
+ cameraDirection: x,
824
+ cameraRaycaster: C,
825
+ modelReadyState: T,
826
+ shownFloor: D,
827
+ helperVisible: k
828
+ }), e;
829
+ }, [
830
+ a,
831
+ j,
832
+ l,
833
+ d,
834
+ h,
835
+ _,
836
+ y,
837
+ S,
838
+ w,
839
+ E,
840
+ O,
841
+ A
842
+ ]);
843
+ return e.createElement(n, Object.assign({
844
+ ref: i,
845
+ $five: M
846
+ }, r));
847
+ });
848
+ };
849
+ }
850
+ function je(...e) {
851
+ return e;
852
+ }
853
+ //#endregion
854
+ //#region build/react/createStore.js
855
+ function Q(e, t) {
856
+ let n = {}, r = t.length, i = -1;
857
+ for (; ++i < r;) {
858
+ let r = t[i];
859
+ r in e && (n[r] = e[r]);
860
+ }
861
+ return n;
862
+ }
863
+ function Me(e, t) {
864
+ return typeof e == "number" && typeof t == "number" && isNaN(e) && isNaN(t) ? !0 : e === t;
865
+ }
866
+ function Ne(e, t) {
867
+ for (let n = 0; n < e.length; n++) for (let r = 0; r < t.length; r++) if (e[n] === t[r]) return !0;
868
+ return !1;
869
+ }
870
+ var $ = class {
871
+ constructor(e, t) {
872
+ this.values = e, this.listeners = [], this.onValuesChange = t;
873
+ }
874
+ on(e, t) {
875
+ let n = [e, t];
876
+ return this.listeners.push(n), () => {
877
+ let e = this.listeners.indexOf(n);
878
+ e >= 0 && this.listeners.splice(e, 1);
879
+ };
880
+ }
881
+ getValues(e) {
882
+ return Q(this.values, e);
883
+ }
884
+ setValues(e, t) {
885
+ let n = [];
886
+ for (let r in t) e.indexOf(r) >= 0 && !Me(t[r], this.values[r]) && n.push(r);
887
+ if (n.length === 0) return;
888
+ let r = Object.assign({}, this.values);
889
+ for (let e of n) this.values[e] = t[e];
890
+ this.onValuesChange && this.onValuesChange(this.values, r);
891
+ for (let [e, t] of this.listeners) {
892
+ if (!Ne(e, n)) continue;
893
+ let i = Q(r, e);
894
+ t(Q(this.values, e), i);
895
+ }
896
+ }
1037
897
  };
898
+ function Pe(t) {
899
+ let n = e.createContext(null);
900
+ return {
901
+ useStore(t) {
902
+ let r = e.useContext(n);
903
+ if (r === null) throw Error("StoreProvider never found.");
904
+ let i = e.useRef(!0), [a, o] = e.useState(r.getValues(t)), s = [r, ...t];
905
+ return e.useLayoutEffect(() => (i.current ? i.current = !1 : o(r.getValues(t)), r.on(t, (e) => o(e))), s), [a, e.useCallback((e) => r.setValues(t, e), s)];
906
+ },
907
+ useStoreSetter(t) {
908
+ let r = e.useContext(n);
909
+ if (r === null) throw Error("StoreProvider never found.");
910
+ return e.useCallback((e) => r.setValues(t, e), [r, ...t]);
911
+ },
912
+ watchStore(t, r, i) {
913
+ let a = e.useContext(n);
914
+ if (a === null) throw Error("StoreProvider never found.");
915
+ let o = [a, ...t];
916
+ i !== void 0 && (o = o.concat(i)), e.useLayoutEffect(() => a.on(t, r), o);
917
+ },
918
+ useStoreAction(r) {
919
+ let i = e.useContext(n);
920
+ if (i === null) throw Error("StoreProvider never found.");
921
+ return e.useCallback((...e) => {
922
+ let [n, ...a] = t[r];
923
+ return n(() => i.getValues(a), (e) => i.setValues(a, e), ...e);
924
+ }, []);
925
+ },
926
+ StoreProvider: class extends e.Component {
927
+ constructor(e) {
928
+ super(e), this.store = new $(e.initialValue, (...e) => {
929
+ this.props.onValuesChange && this.props.onValuesChange(...e);
930
+ });
931
+ }
932
+ shouldComponentUpdate(e) {
933
+ return e.children !== this.props.children;
934
+ }
935
+ render() {
936
+ return e.createElement(n.Provider, { value: this.store }, this.props.children);
937
+ }
938
+ }
939
+ };
940
+ }
941
+ //#endregion
942
+ export { w as FiveApp, b as FiveAutoCanvas, y as FiveCanvas, J as INJECTION_PROPNAME, $ as Store, je as createFiveFeature, g as createFiveProvider, Pe as createStore, U as getPlugin, W as setPlugin, T as unsafe__useFiveInstance, te as useFiveAction, F as useFiveCameraDirection, re as useFiveCameraRaycaster, M as useFiveCurrentObserver, j as useFiveCurrentState, ee as useFiveEventCallback, K as useFiveFloor, q as useFiveHelper, I as useFiveModelIntersectRaycaster, ie as useFiveModelReadyState, G as useFivePlugin, ne as useFiveProject2d, D as useFiveScene, E as useFiveSceneEffect, A as useFiveState, O as useFiveWork, Ae as withFive };