@realsee/five 6.8.0-alpha.0 → 6.8.0-alpha.2

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 (343) hide show
  1. package/README.md +47 -389
  2. package/docs/README.md +14 -0
  3. package/docs/assets/hierarchy.js +1 -1
  4. package/docs/assets/highlight.css +29 -29
  5. package/docs/assets/icons.js +1 -1
  6. package/docs/assets/icons.svg +1 -1
  7. package/docs/assets/main.js +2 -2
  8. package/docs/assets/navigation.js +1 -1
  9. package/docs/assets/search.js +1 -1
  10. package/docs/assets/style.css +3 -3
  11. package/docs/classes/five.AdaptiveLuminancePass.html +2 -2
  12. package/docs/classes/five.AnimationFrameLoop.html +5 -5
  13. package/docs/classes/five.BoundingMesh.html +1 -1
  14. package/docs/classes/five.Camera.html +5 -5
  15. package/docs/classes/five.EffectComposer.html +1 -1
  16. package/docs/classes/five.EyeDomeLightingPass.html +2 -2
  17. package/docs/classes/five.Five.html +119 -119
  18. package/docs/classes/five.FivePass.html +2 -2
  19. package/docs/classes/five.FullScreenQuad.html +2 -2
  20. package/docs/classes/five.InternalWebGLRenderer.html +1 -1
  21. package/docs/classes/five.Model.html +26 -26
  22. package/docs/classes/five.ModelScene.html +12 -12
  23. package/docs/classes/five.Motion.html +1 -1
  24. package/docs/classes/five.NetworkSubscribe.html +23 -23
  25. package/docs/classes/five.PBMContainer.html +3 -3
  26. package/docs/classes/five.PBMGSObject.html +24 -0
  27. package/docs/classes/five.PBMGroup.html +1 -1
  28. package/docs/classes/five.PBMMesh.html +1 -1
  29. package/docs/classes/five.PBMMeshMaterial.html +3 -3
  30. package/docs/classes/five.PBMPointCloud.html +1 -1
  31. package/docs/classes/five.PBMPointCloudMaterial.html +3 -3
  32. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  33. package/docs/classes/five.PanoCircleMesh.html +4 -4
  34. package/docs/classes/five.PanoCircleMeshCustom.html +4 -4
  35. package/docs/classes/five.PanoCircleMeshSolid.html +4 -4
  36. package/docs/classes/five.Parameter.html +53 -51
  37. package/docs/classes/five.Scene.html +3 -3
  38. package/docs/classes/five.Subscribe.html +26 -25
  39. package/docs/classes/five.Tile3D.html +26 -26
  40. package/docs/classes/five.TileNode.html +2 -2
  41. package/docs/classes/five.Tileset.html +11 -11
  42. package/docs/classes/five.TrajectoryNode.html +1 -1
  43. package/docs/classes/five.Work.html +14 -14
  44. package/docs/classes/five.WorkResolvedObserver.html +16 -16
  45. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  46. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  47. package/docs/classes/gltf-loader.GLTFLoader.html +6 -6
  48. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  49. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  50. package/docs/classes/line.Line.html +1 -1
  51. package/docs/classes/line.LineGeometry.html +4 -4
  52. package/docs/classes/line.LineMaterial.html +1 -1
  53. package/docs/classes/line.LineSegmentsGeometry.html +4 -4
  54. package/docs/classes/line.THREE_Line2.html +1 -1
  55. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  56. package/docs/classes/plugins.BasePlugin.Controller.html +16 -16
  57. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  58. package/docs/classes/react.Store.html +12 -11
  59. package/docs/classes/sticker.Sticker.html +11 -11
  60. package/docs/classes/vfx.Airflow.html +1 -1
  61. package/docs/classes/vfx.Flame.html +1 -1
  62. package/docs/classes/vfx.Particle.html +31 -31
  63. package/docs/classes/vfx.ParticleGPU.html +7 -7
  64. package/docs/classes/vfx.SpotLight.html +1 -1
  65. package/docs/documents/README.html +130 -0
  66. package/docs/documents/ai-doc-guidelines.html +72 -0
  67. package/docs/documents/api.html +312 -0
  68. package/docs/documents/features_3dtile.html +119 -0
  69. package/docs/documents/features_camera-animation.html +100 -0
  70. package/docs/documents/features_clipper.html +77 -0
  71. package/docs/documents/features_coordnate-system.html +124 -0
  72. package/docs/documents/features_event.html +101 -0
  73. package/docs/documents/features_five.html +143 -0
  74. package/docs/documents/features_gesture.html +117 -0
  75. package/docs/documents/features_get-screen-pixels.html +85 -0
  76. package/docs/documents/features_image-options.html +105 -0
  77. package/docs/documents/features_load-external-model.html +577 -0
  78. package/docs/documents/features_mode.html +109 -0
  79. package/docs/documents/features_model.html +137 -0
  80. package/docs/documents/features_move-pano-effect.html +107 -0
  81. package/docs/documents/features_multi-work.html +94 -0
  82. package/docs/documents/features_pano-tile.html +85 -0
  83. package/docs/documents/features_parameter.html +81 -0
  84. package/docs/documents/features_postprocessing.html +92 -0
  85. package/docs/documents/features_raycast.html +95 -0
  86. package/docs/documents/features_request-proxy.html +75 -0
  87. package/docs/documents/features_screen-project.html +109 -0
  88. package/docs/documents/features_state.html +68 -0
  89. package/docs/documents/features_work.html +68 -0
  90. package/docs/documents/five.FivePlugin.plugin.html +60 -0
  91. package/docs/documents/glossary.html +69 -0
  92. package/docs/documents/intro.html +24 -0
  93. package/docs/documents/plugin.html +60 -0
  94. package/docs/documents/quick-start.html +31 -0
  95. package/docs/documents/release_notes_6.6.html +79 -0
  96. package/docs/documents/release_notes_6.7.html +209 -0
  97. package/docs/documents/support.html +49 -0
  98. package/docs/documents/template.html +39 -0
  99. package/docs/functions/five.coordinatesToVector.html +1 -1
  100. package/docs/functions/five.defaultImageURLTransform.html +3 -3
  101. package/docs/functions/five.headingToLongitude.html +1 -1
  102. package/docs/functions/five.loadSplat.html +1 -0
  103. package/docs/functions/five.loadSpz.html +1 -0
  104. package/docs/functions/five.longitudeToHeading.html +1 -1
  105. package/docs/functions/five.parseWork.html +3 -3
  106. package/docs/functions/five.vectorToCoordinates.html +1 -1
  107. package/docs/functions/react.createFiveProvider.html +2 -2
  108. package/docs/functions/react.createStore.html +8 -8
  109. package/docs/functions/react.useFiveAction.html +6 -6
  110. package/docs/functions/react.useFiveCameraDirection.html +1 -1
  111. package/docs/functions/react.useFiveCameraRaycaster.html +1 -1
  112. package/docs/functions/react.useFiveCurrentObserver.html +1 -1
  113. package/docs/functions/react.useFiveCurrentState.html +1 -1
  114. package/docs/functions/react.useFiveEventCallback.html +1 -1
  115. package/docs/functions/react.useFiveFloor.html +1 -1
  116. package/docs/functions/react.useFiveHelper.html +1 -1
  117. package/docs/functions/react.useFiveModelIntersectRaycaster.html +2 -2
  118. package/docs/functions/react.useFiveModelReadyState.html +1 -1
  119. package/docs/functions/react.useFiveProject2d.html +2 -2
  120. package/docs/functions/react.useFiveSceneEffect.html +1 -1
  121. package/docs/functions/react.useFiveWork.html +2 -2
  122. package/docs/functions/vue.useFiveAction.html +8 -8
  123. package/docs/functions/vue.useFiveCameraDirection.html +1 -1
  124. package/docs/functions/vue.useFiveCameraRaycaster.html +1 -1
  125. package/docs/functions/vue.useFiveCurrentObserver.html +1 -1
  126. package/docs/functions/vue.useFiveCurrentState.html +1 -1
  127. package/docs/functions/vue.useFiveEventCallback.html +1 -1
  128. package/docs/functions/vue.useFiveFloor.html +1 -1
  129. package/docs/functions/vue.useFiveHelper.html +1 -1
  130. package/docs/functions/vue.useFiveModel.html +1 -1
  131. package/docs/functions/vue.useFiveModelBounding.html +1 -1
  132. package/docs/functions/vue.useFiveModelIntersectRaycaster.html +2 -2
  133. package/docs/functions/vue.useFiveModelReadyState.html +1 -1
  134. package/docs/functions/vue.useFiveProject2d.html +2 -2
  135. package/docs/functions/vue.useFiveScene.html +1 -1
  136. package/docs/functions/vue.useFiveState.html +1 -1
  137. package/docs/functions/vue.useFiveWorks.html +2 -2
  138. package/docs/hierarchy.html +1 -1
  139. package/docs/index.html +107 -187
  140. package/docs/interfaces/five.AddableObject.html +5 -5
  141. package/docs/interfaces/five.AjaxOptions.html +5 -5
  142. package/docs/interfaces/five.BaseEvent.html +1 -1
  143. package/docs/interfaces/five.EventCallback.html +194 -194
  144. package/docs/interfaces/five.FiveInitArgs.html +18 -18
  145. package/docs/interfaces/five.FiveLoadOptions.html +3 -3
  146. package/docs/interfaces/five.FloorplanControllerCustomInitArgs.html +8 -8
  147. package/docs/interfaces/five.GestureEvent.html +1 -1
  148. package/docs/interfaces/five.ImageOptions.html +11 -11
  149. package/docs/interfaces/five.ImageURLOptions.html +8 -8
  150. package/docs/interfaces/five.IntersectEvent.html +1 -1
  151. package/docs/interfaces/five.IntersectMesh.html +1 -1
  152. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  153. package/docs/interfaces/five.Intersection.html +2 -2
  154. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +7 -7
  155. package/docs/interfaces/five.MapviewControllerCustomInitArgs.html +8 -8
  156. package/docs/interfaces/five.ModeChangeEvent.html +1 -1
  157. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +9 -9
  158. package/docs/interfaces/five.ModelEvent.html +1 -1
  159. package/docs/interfaces/five.ModelOptions.html +3 -3
  160. package/docs/interfaces/five.ModelSceneEvent.html +1 -1
  161. package/docs/interfaces/five.MovePanoOptions.html +10 -10
  162. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  163. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  164. package/docs/interfaces/five.NetworkOptions.html +4 -4
  165. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  166. package/docs/interfaces/five.NetworkResourceEvent.html +1 -1
  167. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  168. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  169. package/docs/interfaces/five.ObjectEvent.html +1 -1
  170. package/docs/interfaces/five.PBMMaterial.html +1 -1
  171. package/docs/interfaces/five.PBMMeshMaterialParameters.html +1 -1
  172. package/docs/interfaces/five.PBMPanoDepth.html +4 -4
  173. package/docs/interfaces/five.PBMPanoPicture.html +5 -5
  174. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +1 -1
  175. package/docs/interfaces/five.PanoCircleMeshInterface.html +4 -4
  176. package/docs/interfaces/five.PanoEvent.html +1 -1
  177. package/docs/interfaces/five.PanoTextureEvent.html +1 -1
  178. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +15 -15
  179. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +9 -9
  180. package/docs/interfaces/five.ParameterMaterialValue.html +38 -36
  181. package/docs/interfaces/five.ParameterTilesetValue.html +15 -15
  182. package/docs/interfaces/five.ParameterValue.html +52 -50
  183. package/docs/interfaces/five.Pass.html +1 -1
  184. package/docs/interfaces/five.Pose.html +6 -7
  185. package/docs/interfaces/five.RenderEvent.html +1 -1
  186. package/docs/interfaces/five.ResolvedParameterValue.html +52 -50
  187. package/docs/interfaces/five.SplatData.html +10 -0
  188. package/docs/interfaces/five.State.html +9 -9
  189. package/docs/interfaces/five.StateEvent.html +1 -1
  190. package/docs/interfaces/five.TextureOptions.html +12 -12
  191. package/docs/interfaces/five.Tile3DOptions.html +2 -2
  192. package/docs/interfaces/five.TileCoordinateSystem.html +2 -2
  193. package/docs/interfaces/five.TilesetHeader.html +12 -12
  194. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +7 -7
  195. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +13 -13
  196. package/docs/interfaces/five.ViewLayer.html +26 -26
  197. package/docs/interfaces/five.Viewport.html +4 -4
  198. package/docs/interfaces/five.WorkCubeImage.html +1 -1
  199. package/docs/interfaces/five.WorkImage.html +4 -4
  200. package/docs/interfaces/five.WorkInitial.html +8 -8
  201. package/docs/interfaces/five.WorkModel.html +8 -8
  202. package/docs/interfaces/five.WorkModelLayer.html +5 -5
  203. package/docs/interfaces/five.WorkObserver.html +16 -16
  204. package/docs/interfaces/five.WorkTile.html +4 -4
  205. package/docs/interfaces/five.WorkVideo.html +4 -4
  206. package/docs/interfaces/five.WorksEvent.html +1 -1
  207. package/docs/interfaces/five.XRControllerEvent.html +1 -1
  208. package/docs/interfaces/five.XRGestureEvent.html +1 -1
  209. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +13 -13
  210. package/docs/interfaces/five.XRSessionEvent.html +1 -1
  211. package/docs/interfaces/plugins.BackgroundPluginController.html +11 -11
  212. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +8 -8
  213. package/docs/interfaces/plugins.BasePlugin.BaseOptions.html +1 -1
  214. package/docs/interfaces/plugins.BasePlugin.Config.html +2 -2
  215. package/docs/interfaces/plugins.BasePlugin.State.html +4 -4
  216. package/docs/interfaces/plugins.BasePlugin.StateChangeParams.html +3 -3
  217. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +45 -45
  218. package/docs/interfaces/plugins.DynamicPathLinePluginType.Config.html +18 -18
  219. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +13 -13
  220. package/docs/interfaces/plugins.DynamicPathLinePluginType.Params.html +2 -2
  221. package/docs/interfaces/plugins.DynamicPathLinePluginType.PathConfig.html +14 -14
  222. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +5 -5
  223. package/docs/interfaces/plugins.ItemMaskController.html +12 -12
  224. package/docs/interfaces/plugins.ItemMaskPluginType.Config.html +1 -1
  225. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +5 -5
  226. package/docs/interfaces/plugins.ItemMaskPluginType.Params.html +1 -1
  227. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +7 -7
  228. package/docs/interfaces/plugins.OrientationPluginController.html +12 -12
  229. package/docs/interfaces/plugins.OrientationPluginType.Config.html +1 -1
  230. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +5 -5
  231. package/docs/interfaces/plugins.OrientationPluginType.Params.html +1 -1
  232. package/docs/interfaces/plugins.OrientationPluginType.State.html +5 -5
  233. package/docs/interfaces/plugins.PanoAnimeController.html +14 -14
  234. package/docs/interfaces/plugins.PanoAnimePluginType.Config.html +1 -1
  235. package/docs/interfaces/plugins.PanoAnimePluginType.ConfigChangeEvent.html +3 -3
  236. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +6 -6
  237. package/docs/interfaces/plugins.PanoAnimePluginType.Params.html +1 -1
  238. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +4 -4
  239. package/docs/interfaces/plugins.PluginTemplateType.Config.html +1 -1
  240. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +5 -5
  241. package/docs/interfaces/plugins.PluginTemplateType.Params.html +1 -1
  242. package/docs/interfaces/plugins.PluginTemplateType.State.html +4 -4
  243. package/docs/interfaces/plugins.TrajectoryController.html +30 -15
  244. package/docs/interfaces/react.FiveActionReactCallbacks.html +23 -23
  245. package/docs/interfaces/react.FiveCanvasProps.html +2 -2
  246. package/docs/interfaces/react.FiveInjectionTypes.html +70 -70
  247. package/docs/interfaces/sticker.IntersectionLike.html +2 -2
  248. package/docs/interfaces/vfx.ParticleArgs.html +26 -26
  249. package/docs/interfaces/vfx.ParticleGPUArgs.html +30 -30
  250. package/docs/interfaces/vue.FiveActionVueCallbacks.html +23 -23
  251. package/docs/media/five.ts +2881 -0
  252. package/docs/media/pass.ts +64 -0
  253. package/docs/modules/five.html +1 -1
  254. package/docs/modules.html +1 -1
  255. package/docs/types/five.ControllerEventTypes.html +32 -32
  256. package/docs/types/five.EventTypes.html +23 -23
  257. package/docs/types/five.FivePlugin.html +2 -2
  258. package/docs/types/five.FivePluginInit.html +1 -1
  259. package/docs/types/five.FivePluginInstance.html +1 -1
  260. package/docs/types/five.LegacyEventType.html +142 -142
  261. package/docs/types/five.LoadResultType.html +2 -2
  262. package/docs/types/five.Mode.html +1 -1
  263. package/docs/types/five.MotionCircle.html +1 -1
  264. package/docs/types/five.ParseOptions.html +6 -6
  265. package/docs/types/plugins.BasePlugin.EventMap.html +5 -5
  266. package/docs/types/plugins.DynamicPathLinePluginType.PluginData.html +1 -1
  267. package/docs/types/plugins.DynamicPathLinePluginType.ServerData.html +1 -1
  268. package/docs/variables/react.FiveCanvas.html +1 -1
  269. package/docs/variables/react.useFiveScene.html +1 -1
  270. package/docs/variables/vue.FiveCanvas.html +1 -1
  271. package/docs/variables/vue.FiveProvider.html +1 -1
  272. package/five/index.d.ts +59 -4
  273. package/five/index.js +213 -90
  274. package/five/index.mjs +7659 -6608
  275. package/gltf-loader/index.js +3 -3
  276. package/gltf-loader/index.mjs +3 -3
  277. package/guides/README.md +113 -0
  278. package/guides/ai-doc-guidelines.md +72 -0
  279. package/guides/api.md +251 -0
  280. package/guides/features/3dtile.md +264 -0
  281. package/guides/features/camera-animation.md +184 -0
  282. package/guides/features/clipper.md +133 -0
  283. package/guides/features/coordnate-system.md +126 -0
  284. package/guides/features/event.md +152 -0
  285. package/guides/features/five.md +180 -0
  286. package/guides/features/gesture.md +178 -0
  287. package/guides/features/get-screen-pixels.md +180 -0
  288. package/guides/features/image-options.md +161 -0
  289. package/guides/features/load-external-model.md +329 -0
  290. package/guides/features/mode.md +265 -0
  291. package/guides/features/model.md +183 -0
  292. package/guides/features/move-pano-effect.md +143 -0
  293. package/guides/features/multi-work.md +144 -0
  294. package/guides/features/pano-tile.md +139 -0
  295. package/guides/features/parameter.md +178 -0
  296. package/guides/features/postprocessing.md +224 -0
  297. package/guides/features/raycast.md +164 -0
  298. package/guides/features/request-proxy.md +110 -0
  299. package/guides/features/screen-project.md +163 -0
  300. package/guides/features/state.md +99 -0
  301. package/guides/features/work.md +242 -0
  302. package/guides/glossary.md +72 -0
  303. package/guides/intro.md +23 -0
  304. package/guides/plugin.md +206 -0
  305. package/guides/quick-start.md +68 -0
  306. package/guides/release_notes/6.6.md +86 -0
  307. package/guides/release_notes/6.7.md +401 -0
  308. package/guides/support.md +23 -0
  309. package/guides/template.md +56 -0
  310. package/line/index.js +3 -3
  311. package/line/index.mjs +3 -3
  312. package/llms.txt +54 -0
  313. package/package.json +1 -1
  314. package/plugins/index.d.ts +24 -0
  315. package/plugins/index.js +17 -17
  316. package/plugins/index.mjs +1518 -1370
  317. package/react/index.js +2 -2
  318. package/react/index.mjs +2 -2
  319. package/shader-lib/index.js +2 -2
  320. package/shader-lib/index.mjs +2 -2
  321. package/sticker/index.js +3 -3
  322. package/sticker/index.mjs +3 -3
  323. package/umd/five-gltf-loader.js +3 -3
  324. package/umd/five-line.js +3 -3
  325. package/umd/five-plugins.js +16 -16
  326. package/umd/five-react.js +2 -2
  327. package/umd/five-shader-lib.js +2 -2
  328. package/umd/five-sticker.js +3 -3
  329. package/umd/five-vfx.js +2 -2
  330. package/umd/five-vue.js +2 -2
  331. package/umd/five.js +213 -90
  332. package/vfx/index.js +2 -2
  333. package/vfx/index.mjs +2 -2
  334. package/vue/index.js +2 -2
  335. package/vue/index.mjs +2 -2
  336. package/work-downloader/index.js +2 -2
  337. package/work-downloader/index.mjs +2 -2
  338. package/docs/documents/coordinate.html +0 -9
  339. package/docs/documents/five.FivePlugin.plugins.html +0 -77
  340. package/docs/documents/five.Pose.coordinate.html +0 -9
  341. package/docs/documents/plugins.html +0 -77
  342. package/docs/documents/react-component.html +0 -32
  343. package/docs/media/coordinate.jpg +0 -0
package/README.md CHANGED
@@ -4,416 +4,74 @@
4
4
 
5
5
  贝壳如视三维渲染框架
6
6
 
7
- ## 什么是**Five**
7
+ ## Introduction
8
8
 
9
- **Five**是 [贝壳如视(realsee.com)](https://realsee.com) 提供的在浏览器中运行的三维空间渲染 Javascript SDK。您可以通过[如视开发者中心](https://developers.realsee.com)的数据服务,并结合**Five**,制作丰富多彩的三维空间应用。
9
+ **Five** [贝壳如视(realsee.com)](https://realsee.com) 提供的在浏览器中运行的三维空间渲染 Javascript SDK。基于 [Three.js](https://threejs.org/) 开发,帮助开发者在浏览器中构建高质量的 VR 看房与空间交互应用。
10
10
 
11
- 并且**Five**提供了一系列的方法、事件、生命周期函数。您可以方便地基于**Five**进行二次开发,并结合到您自身的项目中,为您的项目添砖加瓦。
11
+ 核心能力包括:
12
+ * **全景浏览**: 高分辨率全景图的高效加载与平滑浏览。
13
+ * **空间漫游**: 在三维模型中自由行走、跳转。
14
+ * **模型渲染**: 内置高效的模型加载策略 (3DTile)。
15
+ * **交互事件**: 完善的手势与射线检测系统。
12
16
 
13
- **Five**通过 [TypeScript](https://www.typescriptlang.org/) 编写,保证开发的质量以及编程体验,推荐通过 [Visual Studio Code](https://code.visualstudio.com)、[WebStorm](https://www.jetbrains.com/webstorm/) 等现代源代码编辑器,您将可以体验到友好的代码提示以及自动补全。
17
+ ## Installation
14
18
 
15
- **Five**还提供了完善的 [React Hooks API](https://reactjs.org/docs/hooks-intro.html) ,可以方便的通过 [React](https://reactjs.org) 开发复杂的响应式数据应用。当然直接使用**Five**开发也是没有问题的。
19
+ 通过 npm yarn 安装:
16
20
 
17
- ## 安装**Five**
18
-
19
- **Five**提供通过 [npm](https://www.npmjs.com) 的方式安装。**Five**基于 [Three.js](https://threejs.org), 所以同时您需要安装相关依赖。
20
-
21
- 目前依赖的**three**版本为 115 ~ 117 的版本
22
-
23
- ```shell
24
- npm install @realsee/five three@0.117.1
21
+ ```bash
22
+ npm install three@^0.117.1 @realsee/five
23
+ # or
24
+ yarn add three@^0.117.1 @realsee/five
25
25
  ```
26
26
 
27
- 如果您使用**React Hooks API**,那么也请同时安装**React**的相关依赖。
27
+ > **注意**: Five 依赖 `three`,目前推荐版本为 `0.117.1`。
28
28
 
29
- ```shell
30
- npm install @realsee/five three@0.117.1 react react-dom @types/react @types/react-dom
31
- ```
32
-
33
- 接下来便可以在您的项目使用**Five**了。
29
+ ## Quick Start
34
30
 
35
31
  ```typescript
36
- import { Five } from "@realsee/five";
37
- // 如果您使用 React Hoos API
38
- import { useFiveState } from "@realsee/five/react";
39
-
40
- ```
41
-
42
- ## 浏览器兼容性
43
-
44
- | Safari | Safari on iOS | Chrome | Chrome for Android | Edge | Firefox |
45
- |:------:|:-------------:|--------:|:------------------:|:----:|:-------:|
46
- | >= 9 | >= 9 | >= 49 | >= 93 | >= 13| >= 45 |
47
-
48
- ## 快速上手
49
-
50
- **Five**提供了快速上手体验的项目生成工具,您可以通过他熟悉**Five**的功能以及尝试基于**Five**开发功能。
51
-
52
-
53
- 1. 先创建一个文件夹`five-quick-start`, 作为项目根目录并且使用 `npm init` 命令初始化一个工程。
54
-
55
- ```shell
56
- mkdir five-quick-start && cd five-quick-start && npm init -y
57
- ```
58
-
59
- 2. 安装**Five**
60
-
61
- ```shell
62
- npm install @realsee/five
63
- ```
64
-
65
- 3. 通过**Five**的内置的`five-quick-start-init`脚本来快速补完当前项目
66
-
67
- ```shell
68
- npx five-quick-start-init
69
- ```
70
-
71
- 项目的文件结构如下
32
+ import { Five, parseWork } from "@realsee/five";
72
33
 
73
- ```
74
- .
75
- ├── README.md
76
- ├── assets 静态文件(测试数据)
77
- │ ├── data0.json
78
- │ └── data1.json
79
- ├── index.html 页面模版
80
- ├── index.tsx 逻辑代码
81
- ├── package.json npm 包管理描述
82
- ├── tsconfig.json typescript 配置
83
- ├── webpack.config.js webpack 开发环境配置
84
- └── webpack.production.js webpack 生产配置
85
- ```
86
-
87
- 通**npm script**运行测试环境
88
-
89
- ```shell
90
- npm run dev
91
- ```
92
-
93
- 默认将会在 `port: 3000` 开启 `webpack dev server`。您也可以在 `webpack.config.js` 中修改配置。
94
-
95
- 4. 现在可以打来浏览器 `http://0.0.0.0:3000` 来看看项目初始化的效果了。您可以修改代码来体验一下如何使用**Five**来二次开发。
96
-
97
-
98
-
99
- ## 如何使用**Five**
100
-
101
- **Five**的简单使用样例:
102
-
103
- ```ts
104
- import { Five } from "@realsee/five";
105
-
106
- // 构造函数的具体参数见文档
34
+ // 1. 初始化
107
35
  const five = new Five();
36
+ five.appendTo(document.getElementById('app'));
108
37
 
109
- // 将渲染视图的 canvas 添加到 DOM 中
110
- five.appendTo(document.getElementById('app')!);
38
+ // 2. 加载数据
39
+ const workURL = 'https://raw.githubusercontent.com/realsee-developer/dnalogel/main/open-works/real/80o024DE2xyva3j5BE/work.json';
40
+ fetch(workURL).then(res => res.json()).then(json => {
41
+ five.load(parseWork(json));
42
+ });
111
43
 
112
- // 如果显示区域需要变动,在变动时请调用 refresh 重置显示参数
44
+ // 3. 适配窗口
113
45
  window.addEventListener('resize', () => five.refresh());
114
-
115
- // 获取三维空间的 Work 数据,加载进来
116
- // Work 数据可以通过如视开发者中心获取
117
- fetch(`./work.json`)
118
- .then(res => res.json())
119
- .then(work => five.load(work));
120
46
  ```
121
47
 
122
- 其他的 Five API 待补充
123
-
124
-
125
- ## 在**React**框架中使用**Five**
126
-
127
- 在**React**框架中使用**Five**的简单使用样例:
128
-
129
- ```tsx
130
- import * as React from "react";
131
- import * as ReactDOM from "react-dom";
132
- import {Five, Work, parseWork} from "@realsee/five";
133
- import {createFiveProvider, FiveCanvas} from "@realsee/five/react";
134
-
135
- // 创建 Provider, 参数与 new Five 参数类似
136
- // 构造函数的具体参数见文档
137
- const FiveProvider = createFiveProvider();
138
-
139
- const App: React.FC = () => {
140
-
141
- // 声明 State: Work
142
- const [work, setWork] = React.useState<Work | null>(null);
143
-
144
- // 声明 State: Size<{width, height}>
145
- const [size, setSize] = React.useState({
146
- width: window.innerWidth,
147
- height: window.innerHeight
148
- })
149
-
150
- // 获取三维空间的 Work 数据,加载进来
151
- const loadWork = React.useCallback((url: string) => {
152
- fetch(url)
153
- .then(res => res.json())
154
- .then(data => setWork(parseWork(data)));
155
- }, []);
156
-
157
- React.useEffect(() => {
158
- loadWork("./data0.json");
159
- }, []);
160
-
161
- // 如果显示区域需要变动,在变动时请调用 FiveCanvas 的 size
162
- React.useEffect(() => {
163
- const onResize = () => {
164
- setSize({
165
- width: window.innerWidth,
166
- height: window.innerHeight
167
- });
168
- }
169
- window.addEventListener("resize", onResize, false);
170
- return () => window.removeEventListener("resize", onResize, false);
171
- });
172
-
173
- if (work) {
174
- {/*
175
- 在 FiveProvider 内承载一个 Five 实例,
176
- 在他内部的组件可以使用 Five React Hook API 来获取/设置/操作 他
177
- 一个页面中也可以有多个 FiveProvider
178
- */}
179
- return <FiveProvider initialWork={work}>
180
- {/*
181
- 将渲染视图的 canvas 添加到 DOM 中
182
- FiveCanvas 需要出现在 FiveProvider 内,他将渲染 FiveProvider 的视图
183
- 这样的设计可以实现不同的 DOM 层级结构
184
- 在 FiveProvider 内的其他组件也可以使用 Five React Hook API 来获取/设置/操作 他外部的 FiveProvider
185
- */}
186
- <FiveCanvas width={size.width} height={size.height}/>
187
- </FiveProvider>
188
- }
189
- return null;
190
- }
191
-
192
- ReactDOM.render(<App></App>, document.getElementById("app"));
193
- ```
194
-
195
- 其他的**Five React Hook API**文档建设中...
196
-
197
- ## **Five API**文档
198
-
199
- 欢迎查看 [Five API 文档](https://unpkg.com/@realsee/five/docs/index.html) 。
200
-
201
- 该文档由 [TypeDoc](https://typedoc.org/) 生成,您可以详细查看 api 使用方式,调用参数,数据结构。
202
-
203
- ## 相关名词解释
204
-
205
- ### 什么是**Work**
206
-
207
- **Work**是[如视开发者中心](https://developers.realsee.com) 提供的对于一个三维空间的描述。
208
- 是通过如视硬件设备([如视扫描仪](https://realsee.com/website/product/hardware) 、[如视**Lite**全景相机](https://realsee.com/website/product/lite) 、[如视VR App](https://realsee.com/website/mobile) )扫描并处理之后用于三维空间展示的数据。
209
-
210
- **Work**以`JSON`作为数据格式**Five**框架可以解析**Work**数据并展示。一个**Five**实例每次可以载入并展示一个**Work**。并且也可以在不同的**Work**之间动态切换。
211
-
212
- **Work**的数据样例如下
213
-
214
- ```json
215
- {
216
- "initial": {
217
- "mode": "Panorama",
218
- "pano_index": 6,
219
- "longitude": 2.6869287662553916,
220
- "latitude": 0,
221
- "fov": 95
222
- },
223
- "model": {
224
- "file_url": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/model\/auto3d-DJaa08PIzN4JYluXQ1j2VS.at3d",
225
- "material_textures": [
226
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_0.jpg",
227
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_1.jpg",
228
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_2.jpg",
229
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_3.jpg",
230
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_4.jpg",
231
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_5.jpg",
232
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_6.jpg",
233
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_7.jpg",
234
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_8.jpg",
235
- "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/materials\/texture_9.jpg"
236
- ]
237
- },
238
- "panorama": {
239
- "list": [
240
- {
241
- "up": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/0\/2257f0f0b29d5b00ff01934ce51aaa35\/0_u.jpg",
242
- "down": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/0\/2257f0f0b29d5b00ff01934ce51aaa35\/0_d.jpg",
243
- "left": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/0\/2257f0f0b29d5b00ff01934ce51aaa35\/0_l.jpg",
244
- "right": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/0\/2257f0f0b29d5b00ff01934ce51aaa35\/0_r.jpg",
245
- "front": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/0\/2257f0f0b29d5b00ff01934ce51aaa35\/0_f.jpg",
246
- "back": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/0\/2257f0f0b29d5b00ff01934ce51aaa35\/0_b.jpg"
247
- },
248
- {
249
- "up": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/1\/ecb554bb1c122fa90186d176ccfecde4\/1_u.jpg",
250
- "down": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/1\/ecb554bb1c122fa90186d176ccfecde4\/1_d.jpg",
251
- "left": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/1\/ecb554bb1c122fa90186d176ccfecde4\/1_l.jpg",
252
- "right": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/1\/ecb554bb1c122fa90186d176ccfecde4\/1_r.jpg",
253
- "front": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/1\/ecb554bb1c122fa90186d176ccfecde4\/1_f.jpg",
254
- "back": "https:\/\/vrlab-public.ljcdn.com\/release\/auto3dhd\/a62e1ebf7d013f7df117551a14af79fc\/images\/cube_2048\/1\/ecb554bb1c122fa90186d176ccfecde4\/1_b.jpg"
255
- }
256
- ],
257
- },
258
- "observers": [
259
- {
260
- "visible_nodes": [ 1 ],
261
- "accessible_nodes": [ 1 ],
262
- "quaternion": {
263
- "w": 0.45076583925142194,
264
- "x": 0.010070951976936936,
265
- "y": -0.8925839597148215,
266
- "z": -0.0016154299986102319
267
- },
268
- "standing_position": [
269
- -6.956049919128418,
270
- -1.3924440682333898,
271
- 1.6591600179672241
272
- ],
273
- "position": [
274
- -6.956049919128418,
275
- -0.10312400013208389,
276
- 1.6591600179672241
277
- ],
278
- "floor_index": 0
279
- },
280
- {
281
- "visible_nodes": [ 0 ],
282
- "accessible_nodes": [ 0 ],
283
- "index": 1,
284
- "quaternion": {
285
- "w": -0.9884643083591809,
286
- "x": -0.0038900979633806664,
287
- "y": 0.1512670435365699,
288
- "z": -0.006439990839033269
289
- },
290
- "standing_position": [
291
- -6.176340103149414,
292
- -1.380554749576384,
293
- 2.179759979248047
294
- ],
295
- "position": [
296
- -6.176340103149414,
297
- -0.10025200247764587,
298
- 2.179759979248047
299
- ],
300
- "floor_index": 0,
301
- }
302
- ]
303
- }
304
- ```
305
-
306
- Work 的数据说明
307
-
308
- - `initial`: 初始化数据,是一个 `State` 数据。描述**Work**被加载初始状态的位姿,也叫做VR的初始视角
309
- - mode: 模态
310
- - pano_index: 初始化点位
311
- - longitude: 相机的水平角
312
- - latitude: 相机的偏航角
313
- - fov: 相机垂直方向的可视角度
314
-
315
- - `model`: 三维模型
316
- - file_url: 三维模型的资源地址,文件为 `.at3d` 为如视定制的模型格式
317
- - material_textures: 三维模型的贴图资源地址
318
-
319
- - `panorama`: 全景彩色信息
320
- - list:
321
- - up / down / left / right / front / back: 全景彩色信息以 [cubemap](https://en.wikipedia.org/wiki/Cube_mapping) 方式存储和使用。
322
-
323
- - `observers`: 采集点信息
324
- - visible_nodes: 采集点之间的可见性列表
325
- - accessible_nodes: 采集点之间的连通性列表
326
- - quaternion: 采集点与模型坐标的旋转偏移量
327
- - standing_position: 采集点地面坐标
328
- - position: 采集点坐标
329
- - floor_index: 采集点楼层
330
-
331
- ### 什么是 Five State
332
-
333
- **State**是**Five**框架用于描述状态的数据结构。他包含了模态、位于的采集点位、相机的方向、相机可视角度的信息。
334
- 您可以使用**State**来操作**Five**或者获取**Five**当前的状态。
335
-
336
- ```ts
337
- interface State {
338
- "mode": Five.Mode,
339
- "panoIndex": number,
340
- "longitude": number,
341
- "latitude": number,
342
- "fov": number,
343
- "distanace": number,
344
- "offset": THREE.Vector3,
345
- }
346
- ```
347
-
348
- **State**的数据描述
349
-
350
- - `mode`: 当前的模态
351
- Five 常用有 5 种模态,可以使用 `Five.Mode` 获得
352
- - Panorama: 全景游走模态,该模态下视图将在采集点间游走,手势操作可以旋转/放大视角/切换采集点,适合查看采集的全景信息。
353
- - Floorplan: 空间总览模态, 该模态下视图以模型为中心,手势操作可以旋转/放大模型/切换楼层,适合查看模型的整体效果。
354
- - Topview: 户型图模态,该模态下视图以模型为中心,垂直俯视模型,手势操作可以平移/放大模型/切换楼层,适合查看模型平面结构。
355
- - Model: 模型游走模态,该模态下视图将在模型中自由游走,手势操作可以旋转/放大视角/位移,适合查看模型的细节,做一些定位操作。
356
- - Mapview: 地图模态, 该模态下视图将类似三维地图,手势操作可以旋转/放大视角/位移,适合查看模型的细节。适合展示小区,工厂等较大的模型。
357
- - VRPanorama: VR 眼镜模态,该模态下可以使用 [Cardboard 眼镜](https://arvr.google.com/cardboard/) 或者他的第三方衍生产品,实现 VR 虚拟显示效果。
358
- - XRPanorama: XR 眼镜模态,该模态下可以使用头戴显示设备比如 Pico, Meta Quest 等,实现沉浸式体验。
359
-
360
- - `panoIndex`: 采集点位
361
-
362
- - `longitude` / `latitude`: 相机的水平角 / 相机的偏航角(弧度),我们使用类似经纬度的方式描述相机位置。
363
-
364
- - `fov`: 相机垂直方向的可视角度 (角度)
365
-
366
- - `distance`: 相机距 offset 的距离
367
-
368
- - `offset`: 相机看向的目标
369
-
370
-
371
- ### 模型坐标的转换说明
372
-
373
- > 目前涉及到的模型类型 at3d / domez / 3d-tile(b3dm, pnts, glb)
374
-
375
- #### 枚举说明
376
-
377
- - `world`: five.scene 场景下的坐标。属于 view 下的绝对坐标。坐标的上方向是 Y 轴,单位米。
378
- - `local`: 单个模型的相对坐标。坐标的上方向是 Y 轴,单位米。 单个模型受到 `work.transform` 的影响会产生一定的位姿变化进行项目拼接(比如沙盘项目)。这种情况下,会与 `world` 有一定偏转。
379
- - `enu`: 模型描述坐标(East-North-Up)。坐标的上方向是 Z 轴,单位米。需要在算法模型输入/输出时使用这个坐标系。
380
- - `ecef`: 模型在地球的坐标系(Earth-centered, Earth-fixed)。坐标的上方向是 Z 轴并且固定是北,单位米。
381
- - `lla`: 模型在地球的经纬高度 (Latitude-Longitude-Altitude)。 经纬度单位是弧度,高度单位是米。
382
-
383
- #### 数据来源
384
-
385
- 转换:
386
- - `local` 与 `world` 的转换依赖 `work.transform`
387
- - `local` 与 `enu` 的转换是固定的 yUp 转 zUp
388
- - `enu` 与 `ecef` 依赖 `tileset.json` 中 `rootMeta.coordinate.pose_ecef_to_enu` / `rootMeta.coordinate.pose_enu_to_ecef`。 如果缺损,则使用 `a=6378137.0;invf=298.257223563` 的椭球近似计算
389
- - `lla` 通过 `a=6378137.0;invf=298.257223563` 的椭球近似计算
390
-
391
- 椭球近似计算: (`enu` + `lla`) 与 `ecef` 可以相互推导。
48
+ ## Browser Support
392
49
 
393
- #### 转换关系
50
+ | Browser | Version | Note |
51
+ | :--- | :--- | :--- |
52
+ | **Chrome** | >= 69 | |
53
+ | **Safari** | >= 9 | iOS Safari >= 9 |
54
+ | **Firefox** | >= 45 | |
55
+ | **Edge** | >= 13 | |
56
+ | **Android** | >= 93 | Chrome内核 |
394
57
 
395
- - 在 five 环境下,通过 viewLayer 对象,即 five.models[number].viewLayer[number].scene 转化。提供对应方法。
396
- - `localToWorld(vector: THREE.Vector3): THREE.Vector3`
397
- - `worldToLocal(vector: THREE.Vector3): THREE.Vector3`
398
- - `localToEnu(vector: THREE.Vector3): THREE.Vector3`
399
- - `enuToLocal(vector: THREE.Vector3): THREE.Vector3`
400
- - `localToEcef(vector: THREE.Vector3): THREE.Vector3`
401
- - `ecefToLocal(vector: THREE.Vector3): THREE.Vector3`
402
- - `localToLla(vector: THREE.Vector3): THREE.Vector3`
403
- - `llaToLocal(vector: THREE.Vector3): THREE.Vector3`
404
- - `worldToEnu(vector: THREE.Vector3): THREE.Vector3`
405
- - `enuToWorld(vector: THREE.Vector3): THREE.Vector3`
406
- - `worldToEcef(vector: THREE.Vector3): THREE.Vector3`
407
- - `ecefToWorld(vector: THREE.Vector3): THREE.Vector3`
408
- - `worldToLla(vector: THREE.Vector3): THREE.Vector3`
409
- - `llaToWorld(vector: THREE.Vector3): THREE.Vector3`
58
+ ## Documentation
410
59
 
411
- 这些函数均为直接修改传入 `vector`。 如果要保持原先的数据,请实现 `vector.clone()`。
60
+ For comprehensive guides and API references, please refer to the documentation included in this package:
61
+ - [Feature Guides](guides/README.md)
62
+ - [API Reference](guides/api.md)
412
63
 
413
- #### 位置拾取
64
+ **⚠️ Note for AI Agents:**
414
65
 
415
- 通过 `intersectRaycaster` 方法得到的 `Intersection` `world` 坐标系下, 并返回对应的 `model` 与 `viewLayer`。
66
+ * **For a context-optimized index, read [llms.txt](./llms.txt).**
416
67
 
417
- #### 与算法数据对接
68
+ **Do's (推荐):**
69
+ * **Do** Read [Intro](guides/intro.md) first to understand the high-level architecture.
70
+ * **Do** Use [API Reference](guides/api.md) for checking method signatures and property types.
71
+ * **Do** Refer to `guides/*.md` files for feature-specific implementation details.
72
+ * **Do** Prefer Markdown documentation over HTML files or raw code when understanding concepts.
418
73
 
419
- 目前约定为,算法的模型输入输出均使用 `enu` 坐标系。
74
+ **Don'ts (禁止):**
75
+ * **Don't** Index or read files in the `docs/` directory (auto-generated HTML). They are redundant and hard to parse.
76
+ * **Don't** Hallucinate API methods. Always verify against `api.md` or `.d.ts` files.
77
+ * **Don't** Assume legacy behavior. Check `guides/release_notes/` if you encounter version discrepancies.
package/docs/README.md ADDED
@@ -0,0 +1,14 @@
1
+
2
+ # Documentation Directory
3
+
4
+ > **⚠️ Note for AI Agents:**
5
+ >
6
+ > This directory contains auto-generated HTML documentation which is dense and difficult to parse effectively.
7
+ >
8
+ > **PLEASE IGNORE THE CONTENTS OF THIS DIRECTORY.**
9
+ >
10
+ > Instead, refer to the **guides** directory in the package root. It contains high-quality, structured Markdown documentation specifically optimized for comprehension and retrieval.
11
+ >
12
+ > * **Go to Guides**: [../guides/README.md](../guides/README.md)
13
+ > * **Go to API Index**: [../guides/api.md](../guides/api.md)
14
+
@@ -1 +1 @@
1
- window.hierarchyData = "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"
1
+ window.hierarchyData = "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"
@@ -1,36 +1,36 @@
1
1
  :root {
2
- --light-hl-0: #795E26;
3
- --dark-hl-0: #DCDCAA;
2
+ --light-hl-0: #800000;
3
+ --dark-hl-0: #569CD6;
4
4
  --light-hl-1: #000000;
5
5
  --dark-hl-1: #D4D4D4;
6
- --light-hl-2: #A31515;
6
+ --light-hl-2: #0000FF;
7
7
  --dark-hl-2: #CE9178;
8
- --light-hl-3: #AF00DB;
9
- --dark-hl-3: #C586C0;
10
- --light-hl-4: #001080;
11
- --dark-hl-4: #9CDCFE;
12
- --light-hl-5: #008000;
13
- --dark-hl-5: #6A9955;
14
- --light-hl-6: #0000FF;
15
- --dark-hl-6: #569CD6;
16
- --light-hl-7: #0070C1;
17
- --dark-hl-7: #4FC1FF;
18
- --light-hl-8: #267F99;
19
- --dark-hl-8: #4EC9B0;
20
- --light-hl-9: #800000;
21
- --dark-hl-9: #808080;
22
- --light-hl-10: #E50000;
23
- --dark-hl-10: #9CDCFE;
24
- --light-hl-11: #000000FF;
25
- --dark-hl-11: #D4D4D4;
26
- --light-hl-12: #0451A5;
27
- --dark-hl-12: #9CDCFE;
28
- --light-hl-13: #098658;
29
- --dark-hl-13: #B5CEA8;
30
- --light-hl-14: #EE0000;
31
- --dark-hl-14: #D7BA7D;
32
- --light-hl-15: #000000;
33
- --dark-hl-15: #C8C8C8;
8
+ --light-hl-3: #0000FF;
9
+ --dark-hl-3: #569CD6;
10
+ --light-hl-4: #0070C1;
11
+ --dark-hl-4: #4FC1FF;
12
+ --light-hl-5: #795E26;
13
+ --dark-hl-5: #DCDCAA;
14
+ --light-hl-6: #001080;
15
+ --dark-hl-6: #9CDCFE;
16
+ --light-hl-7: #267F99;
17
+ --dark-hl-7: #4EC9B0;
18
+ --light-hl-8: #008000;
19
+ --dark-hl-8: #6A9955;
20
+ --light-hl-9: #A31515;
21
+ --dark-hl-9: #CE9178;
22
+ --light-hl-10: #AF00DB;
23
+ --dark-hl-10: #C586C0;
24
+ --light-hl-11: #098658;
25
+ --dark-hl-11: #B5CEA8;
26
+ --light-hl-12: #000000FF;
27
+ --dark-hl-12: #D4D4D4;
28
+ --light-hl-13: #000000;
29
+ --dark-hl-13: #C8C8C8;
30
+ --light-hl-14: #0451A5;
31
+ --dark-hl-14: #9CDCFE;
32
+ --light-hl-15: #CD3131;
33
+ --dark-hl-15: #F44747;
34
34
  --light-code-background: #FFFFFF;
35
35
  --dark-code-background: #1E1E1E;
36
36
  }
@@ -3,7 +3,7 @@
3
3
  function addIcons() {
4
4
  if (document.readyState === "loading") return document.addEventListener("DOMContentLoaded", addIcons);
5
5
  const svg = document.body.appendChild(document.createElementNS("http://www.w3.org/2000/svg", "svg"));
6
- svg.innerHTML = `<g id="icon-1" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-2" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-4" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">N</text></g><g id="icon-8" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-enum)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">E</text></g><g id="icon-16" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-32" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">V</text></g><g id="icon-64" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">F</text></g><g id="icon-128" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-class)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-256" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">I</text></g><g id="icon-512" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-1024" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-2048" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-method)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">M</text></g><g id="icon-4096" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">F</text></g><g id="icon-8192" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-16384" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">C</text></g><g id="icon-32768" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">P</text></g><g id="icon-65536" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-131072" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-262144" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-524288" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-1048576" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">A</text></g><g id="icon-2097152" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">T</text></g><g id="icon-4194304" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-reference)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dominant-baseline="central" text-anchor="middle">R</text></g><g id="icon-8388608" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="6,5 6,19 18,19, 18,10 13,5"></polygon><line x1="9" y1="9" x2="13" y2="9"></line><line x1="9" y1="12" x2="15" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></g></g><g id="icon-folder" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="5,5 10,5 12,8 19,8 19,18 5,18"></polygon></g></g><g id="icon-chevronDown" class="tsd-no-select"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-icon-text)"></path></g><g id="icon-chevronSmall" class="tsd-no-select"><path d="M1.5 5.50969L8 11.6609L14.5 5.50969L12.5466 3.66086L8 7.96494L3.45341 3.66086L1.5 5.50969Z" fill="var(--color-icon-text)"></path></g><g id="icon-checkbox" class="tsd-no-select"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></g><g id="icon-menu" class="tsd-no-select"><rect x="1" y="3" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="7" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="11" width="14" height="2" fill="var(--color-icon-text)"></rect></g><g id="icon-search" class="tsd-no-select"><path d="M15.7824 13.833L12.6666 10.7177C12.5259 10.5771 12.3353 10.499 12.1353 10.499H11.6259C12.4884 9.39596 13.001 8.00859 13.001 6.49937C13.001 2.90909 10.0914 0 6.50048 0C2.90959 0 0 2.90909 0 6.49937C0 10.0896 2.90959 12.9987 6.50048 12.9987C8.00996 12.9987 9.39756 12.4863 10.5008 11.6239V12.1332C10.5008 12.3332 10.5789 12.5238 10.7195 12.6644L13.8354 15.7797C14.1292 16.0734 14.6042 16.0734 14.8948 15.7797L15.7793 14.8954C16.0731 14.6017 16.0731 14.1267 15.7824 13.833ZM6.50048 10.499C4.29094 10.499 2.50018 8.71165 2.50018 6.49937C2.50018 4.29021 4.28781 2.49976 6.50048 2.49976C8.71001 2.49976 10.5008 4.28708 10.5008 6.49937C10.5008 8.70852 8.71314 10.499 6.50048 10.499Z" fill="var(--color-icon-text)"></path></g><g id="icon-anchor" class="tsd-no-select"><g stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></g></g><g id="icon-alertNote" class="tsd-no-select"><path fill="var(--color-alert-note)" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g><g id="icon-alertTip" class="tsd-no-select"><path fill="var(--color-alert-tip)" d="M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"></path></g><g id="icon-alertImportant" class="tsd-no-select"><path fill="var(--color-alert-important)" d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertWarning" class="tsd-no-select"><path fill="var(--color-alert-warning)" d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertCaution" class="tsd-no-select"><path fill="var(--color-alert-caution)" d="M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g>`;
6
+ svg.innerHTML = `<g id="icon-1" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">M</text></g><g id="icon-2" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-module)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">M</text></g><g id="icon-4" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-namespace)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">N</text></g><g id="icon-8" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-enum)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">E</text></g><g id="icon-16" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">P</text></g><g id="icon-32" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-variable)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">V</text></g><g id="icon-64" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">F</text></g><g id="icon-128" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-class)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">C</text></g><g id="icon-256" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-interface)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">I</text></g><g id="icon-512" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">C</text></g><g id="icon-1024" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">P</text></g><g id="icon-2048" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-method)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">M</text></g><g id="icon-4096" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-function)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">F</text></g><g id="icon-8192" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">P</text></g><g id="icon-16384" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-constructor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">C</text></g><g id="icon-32768" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-property)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">P</text></g><g id="icon-65536" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">T</text></g><g id="icon-131072" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">T</text></g><g id="icon-262144" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">A</text></g><g id="icon-524288" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">A</text></g><g id="icon-1048576" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-accessor)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">A</text></g><g id="icon-2097152" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-type-alias)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">T</text></g><g id="icon-4194304" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-ts-reference)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="12"></rect><text fill="var(--color-icon-text)" x="50%" y="50%" dy="0.35em" text-anchor="middle">R</text></g><g id="icon-8388608" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="6,5 6,19 18,19, 18,10 13,5"></polygon><line x1="9" y1="9" x2="13" y2="9"></line><line x1="9" y1="12" x2="15" y2="12"></line><line x1="9" y1="15" x2="15" y2="15"></line></g></g><g id="icon-folder" class="tsd-no-select"><rect fill="var(--color-icon-background)" stroke="var(--color-document)" stroke-width="1.5" x="1" y="1" width="22" height="22" rx="6"></rect><g stroke="var(--color-icon-text)" fill="none" stroke-width="1.5"><polygon points="5,5 10,5 12,8 19,8 19,18 5,18"></polygon></g></g><g id="icon-chevronDown" class="tsd-no-select"><path d="M4.93896 8.531L12 15.591L19.061 8.531L16.939 6.409L12 11.349L7.06098 6.409L4.93896 8.531Z" fill="var(--color-icon-text)"></path></g><g id="icon-chevronSmall" class="tsd-no-select"><path d="M1.5 5.50969L8 11.6609L14.5 5.50969L12.5466 3.66086L8 7.96494L3.45341 3.66086L1.5 5.50969Z" fill="var(--color-icon-text)"></path></g><g id="icon-checkbox" class="tsd-no-select"><rect class="tsd-checkbox-background" width="30" height="30" x="1" y="1" rx="6" fill="none"></rect><path class="tsd-checkbox-checkmark" d="M8.35422 16.8214L13.2143 21.75L24.6458 10.25" stroke="none" stroke-width="3.5" stroke-linejoin="round" fill="none"></path></g><g id="icon-menu" class="tsd-no-select"><rect x="1" y="3" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="7" width="14" height="2" fill="var(--color-icon-text)"></rect><rect x="1" y="11" width="14" height="2" fill="var(--color-icon-text)"></rect></g><g id="icon-search" class="tsd-no-select"><path d="M15.7824 13.833L12.6666 10.7177C12.5259 10.5771 12.3353 10.499 12.1353 10.499H11.6259C12.4884 9.39596 13.001 8.00859 13.001 6.49937C13.001 2.90909 10.0914 0 6.50048 0C2.90959 0 0 2.90909 0 6.49937C0 10.0896 2.90959 12.9987 6.50048 12.9987C8.00996 12.9987 9.39756 12.4863 10.5008 11.6239V12.1332C10.5008 12.3332 10.5789 12.5238 10.7195 12.6644L13.8354 15.7797C14.1292 16.0734 14.6042 16.0734 14.8948 15.7797L15.7793 14.8954C16.0731 14.6017 16.0731 14.1267 15.7824 13.833ZM6.50048 10.499C4.29094 10.499 2.50018 8.71165 2.50018 6.49937C2.50018 4.29021 4.28781 2.49976 6.50048 2.49976C8.71001 2.49976 10.5008 4.28708 10.5008 6.49937C10.5008 8.70852 8.71314 10.499 6.50048 10.499Z" fill="var(--color-icon-text)"></path></g><g id="icon-anchor" class="tsd-no-select"><g stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round"><path stroke="none" d="M0 0h24v24H0z" fill="none"></path><path d="M10 14a3.5 3.5 0 0 0 5 0l4 -4a3.5 3.5 0 0 0 -5 -5l-.5 .5"></path><path d="M14 10a3.5 3.5 0 0 0 -5 0l-4 4a3.5 3.5 0 0 0 5 5l.5 -.5"></path></g></g><g id="icon-alertNote" class="tsd-no-select"><path fill="var(--color-alert-note)" d="M0 8a8 8 0 1 1 16 0A8 8 0 0 1 0 8Zm8-6.5a6.5 6.5 0 1 0 0 13 6.5 6.5 0 0 0 0-13ZM6.5 7.75A.75.75 0 0 1 7.25 7h1a.75.75 0 0 1 .75.75v2.75h.25a.75.75 0 0 1 0 1.5h-2a.75.75 0 0 1 0-1.5h.25v-2h-.25a.75.75 0 0 1-.75-.75ZM8 6a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g><g id="icon-alertTip" class="tsd-no-select"><path fill="var(--color-alert-tip)" d="M8 1.5c-2.363 0-4 1.69-4 3.75 0 .984.424 1.625.984 2.304l.214.253c.223.264.47.556.673.848.284.411.537.896.621 1.49a.75.75 0 0 1-1.484.211c-.04-.282-.163-.547-.37-.847a8.456 8.456 0 0 0-.542-.68c-.084-.1-.173-.205-.268-.32C3.201 7.75 2.5 6.766 2.5 5.25 2.5 2.31 4.863 0 8 0s5.5 2.31 5.5 5.25c0 1.516-.701 2.5-1.328 3.259-.095.115-.184.22-.268.319-.207.245-.383.453-.541.681-.208.3-.33.565-.37.847a.751.751 0 0 1-1.485-.212c.084-.593.337-1.078.621-1.489.203-.292.45-.584.673-.848.075-.088.147-.173.213-.253.561-.679.985-1.32.985-2.304 0-2.06-1.637-3.75-4-3.75ZM5.75 12h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1 0-1.5ZM6 15.25a.75.75 0 0 1 .75-.75h2.5a.75.75 0 0 1 0 1.5h-2.5a.75.75 0 0 1-.75-.75Z"></path></g><g id="icon-alertImportant" class="tsd-no-select"><path fill="var(--color-alert-important)" d="M0 1.75C0 .784.784 0 1.75 0h12.5C15.216 0 16 .784 16 1.75v9.5A1.75 1.75 0 0 1 14.25 13H8.06l-2.573 2.573A1.458 1.458 0 0 1 3 14.543V13H1.75A1.75 1.75 0 0 1 0 11.25Zm1.75-.25a.25.25 0 0 0-.25.25v9.5c0 .138.112.25.25.25h2a.75.75 0 0 1 .75.75v2.19l2.72-2.72a.749.749 0 0 1 .53-.22h6.5a.25.25 0 0 0 .25-.25v-9.5a.25.25 0 0 0-.25-.25Zm7 2.25v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 9a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertWarning" class="tsd-no-select"><path fill="var(--color-alert-warning)" d="M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z"></path></g><g id="icon-alertCaution" class="tsd-no-select"><path fill="var(--color-alert-caution)" d="M4.47.22A.749.749 0 0 1 5 0h6c.199 0 .389.079.53.22l4.25 4.25c.141.14.22.331.22.53v6a.749.749 0 0 1-.22.53l-4.25 4.25A.749.749 0 0 1 11 16H5a.749.749 0 0 1-.53-.22L.22 11.53A.749.749 0 0 1 0 11V5c0-.199.079-.389.22-.53Zm.84 1.28L1.5 5.31v5.38l3.81 3.81h5.38l3.81-3.81V5.31L10.69 1.5ZM8 4a.75.75 0 0 1 .75.75v3.5a.75.75 0 0 1-1.5 0v-3.5A.75.75 0 0 1 8 4Zm0 8a1 1 0 1 1 0-2 1 1 0 0 1 0 2Z"></path></g>`;
7
7
  svg.style.display = "none";
8
8
  if (location.protocol === "file:") updateUseElements();
9
9
  }