@needle-tools/engine 4.13.0 → 4.13.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 (428) hide show
  1. package/CHANGELOG.md +8 -1
  2. package/README.md +37 -0
  3. package/components.needle.json +1 -1
  4. package/custom-elements.json +138 -4
  5. package/dist/{needle-engine.bundle-CxaKFQVS.min.js → needle-engine.bundle-BNIUpreS.min.js} +107 -107
  6. package/dist/{needle-engine.bundle-Dl3TFYyv.js → needle-engine.bundle-DauZUYl7.js} +2347 -1845
  7. package/dist/{needle-engine.bundle-J4k4znv8.umd.cjs → needle-engine.bundle-tjI5Fq2c.umd.cjs} +108 -108
  8. package/dist/needle-engine.d.ts +4022 -419
  9. package/dist/needle-engine.js +2 -2
  10. package/dist/needle-engine.min.js +1 -1
  11. package/dist/needle-engine.umd.cjs +1 -1
  12. package/lib/engine/engine_context.d.ts +16 -0
  13. package/lib/engine/engine_context.js +16 -0
  14. package/lib/engine/engine_context.js.map +1 -1
  15. package/lib/engine/engine_gameobject.d.ts +72 -0
  16. package/lib/engine/engine_gameobject.js +38 -0
  17. package/lib/engine/engine_gameobject.js.map +1 -1
  18. package/lib/engine/engine_input.d.ts +80 -4
  19. package/lib/engine/engine_input.js +78 -2
  20. package/lib/engine/engine_input.js.map +1 -1
  21. package/lib/engine/engine_math.d.ts +81 -2
  22. package/lib/engine/engine_math.js +68 -2
  23. package/lib/engine/engine_math.js.map +1 -1
  24. package/lib/engine/engine_networking.d.ts +181 -14
  25. package/lib/engine/engine_networking.js +181 -14
  26. package/lib/engine/engine_networking.js.map +1 -1
  27. package/lib/engine/engine_networking_auto.d.ts +35 -8
  28. package/lib/engine/engine_networking_auto.js +35 -8
  29. package/lib/engine/engine_networking_auto.js.map +1 -1
  30. package/lib/engine/engine_physics.d.ts +37 -1
  31. package/lib/engine/engine_physics.js +37 -1
  32. package/lib/engine/engine_physics.js.map +1 -1
  33. package/lib/engine/engine_physics_rapier.d.ts +78 -0
  34. package/lib/engine/engine_physics_rapier.js +78 -0
  35. package/lib/engine/engine_physics_rapier.js.map +1 -1
  36. package/lib/engine/engine_serialization_decorator.d.ts +28 -2
  37. package/lib/engine/engine_serialization_decorator.js +28 -2
  38. package/lib/engine/engine_serialization_decorator.js.map +1 -1
  39. package/lib/engine/engine_time.d.ts +23 -3
  40. package/lib/engine/engine_time.js +23 -3
  41. package/lib/engine/engine_time.js.map +1 -1
  42. package/lib/engine/engine_util_decorator.d.ts +31 -1
  43. package/lib/engine/engine_util_decorator.js +31 -1
  44. package/lib/engine/engine_util_decorator.js.map +1 -1
  45. package/lib/engine/engine_utils.d.ts +21 -5
  46. package/lib/engine/engine_utils.js +21 -5
  47. package/lib/engine/engine_utils.js.map +1 -1
  48. package/lib/engine/extensions/NEEDLE_materialx.d.ts +2 -2
  49. package/lib/engine/extensions/NEEDLE_materialx.js +2 -2
  50. package/lib/engine/extensions/NEEDLE_materialx.js.map +1 -1
  51. package/lib/engine/extensions/index.d.ts +1 -1
  52. package/lib/engine/extensions/index.js +1 -1
  53. package/lib/engine/extensions/index.js.map +1 -1
  54. package/lib/engine-components/AlignmentConstraint.d.ts +23 -3
  55. package/lib/engine-components/AlignmentConstraint.js +23 -3
  56. package/lib/engine-components/AlignmentConstraint.js.map +1 -1
  57. package/lib/engine-components/Animation.d.ts +42 -0
  58. package/lib/engine-components/Animation.js +36 -0
  59. package/lib/engine-components/Animation.js.map +1 -1
  60. package/lib/engine-components/Animator.d.ts +37 -4
  61. package/lib/engine-components/Animator.js +37 -4
  62. package/lib/engine-components/Animator.js.map +1 -1
  63. package/lib/engine-components/AudioListener.d.ts +1 -1
  64. package/lib/engine-components/AudioListener.js +1 -1
  65. package/lib/engine-components/AudioSource.d.ts +32 -10
  66. package/lib/engine-components/AudioSource.js +32 -10
  67. package/lib/engine-components/AudioSource.js.map +1 -1
  68. package/lib/engine-components/AxesHelper.d.ts +22 -3
  69. package/lib/engine-components/AxesHelper.js +22 -3
  70. package/lib/engine-components/AxesHelper.js.map +1 -1
  71. package/lib/engine-components/BasicIKConstraint.d.ts +27 -4
  72. package/lib/engine-components/BasicIKConstraint.js +27 -4
  73. package/lib/engine-components/BasicIKConstraint.js.map +1 -1
  74. package/lib/engine-components/Camera.d.ts +32 -2
  75. package/lib/engine-components/Camera.js +32 -2
  76. package/lib/engine-components/Camera.js.map +1 -1
  77. package/lib/engine-components/CharacterController.d.ts +68 -4
  78. package/lib/engine-components/CharacterController.js +68 -4
  79. package/lib/engine-components/CharacterController.js.map +1 -1
  80. package/lib/engine-components/Collider.d.ts +69 -12
  81. package/lib/engine-components/Collider.js +69 -12
  82. package/lib/engine-components/Collider.js.map +1 -1
  83. package/lib/engine-components/ContactShadows.d.ts +28 -6
  84. package/lib/engine-components/ContactShadows.js +33 -8
  85. package/lib/engine-components/ContactShadows.js.map +1 -1
  86. package/lib/engine-components/DeleteBox.d.ts +43 -2
  87. package/lib/engine-components/DeleteBox.js +43 -2
  88. package/lib/engine-components/DeleteBox.js.map +1 -1
  89. package/lib/engine-components/DeviceFlag.d.ts +21 -2
  90. package/lib/engine-components/DeviceFlag.js +21 -2
  91. package/lib/engine-components/DeviceFlag.js.map +1 -1
  92. package/lib/engine-components/DragControls.d.ts +32 -2
  93. package/lib/engine-components/DragControls.js +32 -2
  94. package/lib/engine-components/DragControls.js.map +1 -1
  95. package/lib/engine-components/DropListener.d.ts +33 -21
  96. package/lib/engine-components/DropListener.js +33 -21
  97. package/lib/engine-components/DropListener.js.map +1 -1
  98. package/lib/engine-components/Duplicatable.d.ts +36 -5
  99. package/lib/engine-components/Duplicatable.js +36 -5
  100. package/lib/engine-components/Duplicatable.js.map +1 -1
  101. package/lib/engine-components/EventList.d.ts +38 -10
  102. package/lib/engine-components/EventList.js +40 -12
  103. package/lib/engine-components/EventList.js.map +1 -1
  104. package/lib/engine-components/EventTrigger.d.ts +1 -1
  105. package/lib/engine-components/EventTrigger.js +1 -1
  106. package/lib/engine-components/Fog.d.ts +23 -1
  107. package/lib/engine-components/Fog.js +23 -1
  108. package/lib/engine-components/Fog.js.map +1 -1
  109. package/lib/engine-components/GridHelper.d.ts +18 -2
  110. package/lib/engine-components/GridHelper.js +18 -2
  111. package/lib/engine-components/GridHelper.js.map +1 -1
  112. package/lib/engine-components/GroundProjection.d.ts +24 -2
  113. package/lib/engine-components/GroundProjection.js +24 -2
  114. package/lib/engine-components/GroundProjection.js.map +1 -1
  115. package/lib/engine-components/Interactable.d.ts +17 -2
  116. package/lib/engine-components/Interactable.js +17 -2
  117. package/lib/engine-components/Interactable.js.map +1 -1
  118. package/lib/engine-components/Joints.d.ts +50 -7
  119. package/lib/engine-components/Joints.js +50 -7
  120. package/lib/engine-components/Joints.js.map +1 -1
  121. package/lib/engine-components/LODGroup.d.ts +36 -14
  122. package/lib/engine-components/LODGroup.js +43 -11
  123. package/lib/engine-components/LODGroup.js.map +1 -1
  124. package/lib/engine-components/Light.d.ts +30 -5
  125. package/lib/engine-components/Light.js +30 -5
  126. package/lib/engine-components/Light.js.map +1 -1
  127. package/lib/engine-components/LookAtConstraint.d.ts +22 -7
  128. package/lib/engine-components/LookAtConstraint.js +22 -7
  129. package/lib/engine-components/LookAtConstraint.js.map +1 -1
  130. package/lib/engine-components/NeedleMenu.d.ts +27 -5
  131. package/lib/engine-components/NeedleMenu.js +27 -5
  132. package/lib/engine-components/NeedleMenu.js.map +1 -1
  133. package/lib/engine-components/NestedGltf.d.ts +39 -4
  134. package/lib/engine-components/NestedGltf.js +42 -4
  135. package/lib/engine-components/NestedGltf.js.map +1 -1
  136. package/lib/engine-components/OffsetConstraint.d.ts +27 -3
  137. package/lib/engine-components/OffsetConstraint.js +27 -3
  138. package/lib/engine-components/OffsetConstraint.js.map +1 -1
  139. package/lib/engine-components/OrbitControls.d.ts +41 -3
  140. package/lib/engine-components/OrbitControls.js +41 -3
  141. package/lib/engine-components/OrbitControls.js.map +1 -1
  142. package/lib/engine-components/PlayerColor.d.ts +1 -1
  143. package/lib/engine-components/PlayerColor.js +1 -1
  144. package/lib/engine-components/ReflectionProbe.d.ts +17 -2
  145. package/lib/engine-components/ReflectionProbe.js +17 -3
  146. package/lib/engine-components/ReflectionProbe.js.map +1 -1
  147. package/lib/engine-components/Renderer.d.ts +35 -0
  148. package/lib/engine-components/Renderer.js +36 -2
  149. package/lib/engine-components/Renderer.js.map +1 -1
  150. package/lib/engine-components/RigidBody.d.ts +57 -5
  151. package/lib/engine-components/RigidBody.js +57 -5
  152. package/lib/engine-components/RigidBody.js.map +1 -1
  153. package/lib/engine-components/SceneSwitcher.d.ts +11 -0
  154. package/lib/engine-components/SceneSwitcher.js +11 -0
  155. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  156. package/lib/engine-components/ScreenCapture.d.ts +39 -6
  157. package/lib/engine-components/ScreenCapture.js +39 -6
  158. package/lib/engine-components/ScreenCapture.js.map +1 -1
  159. package/lib/engine-components/SeeThrough.d.ts +70 -5
  160. package/lib/engine-components/SeeThrough.js +70 -5
  161. package/lib/engine-components/SeeThrough.js.map +1 -1
  162. package/lib/engine-components/ShadowCatcher.d.ts +56 -4
  163. package/lib/engine-components/ShadowCatcher.js +56 -4
  164. package/lib/engine-components/ShadowCatcher.js.map +1 -1
  165. package/lib/engine-components/Skybox.d.ts +43 -7
  166. package/lib/engine-components/Skybox.js +43 -7
  167. package/lib/engine-components/Skybox.js.map +1 -1
  168. package/lib/engine-components/SmoothFollow.d.ts +66 -7
  169. package/lib/engine-components/SmoothFollow.js +66 -7
  170. package/lib/engine-components/SmoothFollow.js.map +1 -1
  171. package/lib/engine-components/SpatialTrigger.d.ts +48 -1
  172. package/lib/engine-components/SpatialTrigger.js +48 -1
  173. package/lib/engine-components/SpatialTrigger.js.map +1 -1
  174. package/lib/engine-components/SpectatorCamera.d.ts +21 -3
  175. package/lib/engine-components/SpectatorCamera.js +21 -3
  176. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  177. package/lib/engine-components/SyncedRoom.d.ts +7 -1
  178. package/lib/engine-components/SyncedRoom.js +7 -1
  179. package/lib/engine-components/SyncedRoom.js.map +1 -1
  180. package/lib/engine-components/SyncedTransform.d.ts +55 -6
  181. package/lib/engine-components/SyncedTransform.js +55 -6
  182. package/lib/engine-components/SyncedTransform.js.map +1 -1
  183. package/lib/engine-components/TransformGizmo.d.ts +30 -3
  184. package/lib/engine-components/TransformGizmo.js +30 -3
  185. package/lib/engine-components/TransformGizmo.js.map +1 -1
  186. package/lib/engine-components/VideoPlayer.d.ts +33 -6
  187. package/lib/engine-components/VideoPlayer.js +45 -6
  188. package/lib/engine-components/VideoPlayer.js.map +1 -1
  189. package/lib/engine-components/Voip.d.ts +33 -2
  190. package/lib/engine-components/Voip.js +33 -2
  191. package/lib/engine-components/Voip.js.map +1 -1
  192. package/lib/engine-components/export/usdz/USDZExporter.d.ts +47 -13
  193. package/lib/engine-components/export/usdz/USDZExporter.js +47 -13
  194. package/lib/engine-components/export/usdz/USDZExporter.js.map +1 -1
  195. package/lib/engine-components/particlesystem/ParticleSystem.d.ts +82 -3
  196. package/lib/engine-components/particlesystem/ParticleSystem.js +82 -3
  197. package/lib/engine-components/particlesystem/ParticleSystem.js.map +1 -1
  198. package/lib/engine-components/postprocessing/Effects/Antialiasing.d.ts +1 -0
  199. package/lib/engine-components/postprocessing/Effects/Antialiasing.js +1 -0
  200. package/lib/engine-components/postprocessing/Effects/Antialiasing.js.map +1 -1
  201. package/lib/engine-components/postprocessing/Effects/BloomEffect.d.ts +1 -1
  202. package/lib/engine-components/postprocessing/Effects/BloomEffect.js +1 -1
  203. package/lib/engine-components/postprocessing/Effects/ChromaticAberration.d.ts +1 -1
  204. package/lib/engine-components/postprocessing/Effects/ChromaticAberration.js +1 -1
  205. package/lib/engine-components/postprocessing/Effects/ColorAdjustments.d.ts +1 -1
  206. package/lib/engine-components/postprocessing/Effects/ColorAdjustments.js +1 -1
  207. package/lib/engine-components/postprocessing/Effects/DepthOfField.d.ts +1 -1
  208. package/lib/engine-components/postprocessing/Effects/DepthOfField.js +1 -1
  209. package/lib/engine-components/postprocessing/Effects/EffectWrapper.d.ts +1 -0
  210. package/lib/engine-components/postprocessing/Effects/EffectWrapper.js +1 -0
  211. package/lib/engine-components/postprocessing/Effects/EffectWrapper.js.map +1 -1
  212. package/lib/engine-components/postprocessing/Effects/Pixelation.d.ts +1 -1
  213. package/lib/engine-components/postprocessing/Effects/Pixelation.js +1 -1
  214. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.d.ts +1 -1
  215. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.js +1 -1
  216. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.d.ts +1 -1
  217. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.js +1 -1
  218. package/lib/engine-components/postprocessing/Effects/Sharpening.d.ts +1 -1
  219. package/lib/engine-components/postprocessing/Effects/Sharpening.js +1 -1
  220. package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.d.ts +1 -1
  221. package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.js +1 -1
  222. package/lib/engine-components/postprocessing/Effects/Tonemapping.d.ts +1 -1
  223. package/lib/engine-components/postprocessing/Effects/Tonemapping.js +1 -1
  224. package/lib/engine-components/postprocessing/Effects/Vignette.d.ts +1 -1
  225. package/lib/engine-components/postprocessing/Effects/Vignette.js +1 -1
  226. package/lib/engine-components/postprocessing/PostProcessingHandler.d.ts +1 -1
  227. package/lib/engine-components/postprocessing/PostProcessingHandler.js +1 -1
  228. package/lib/engine-components/postprocessing/Volume.d.ts +1 -1
  229. package/lib/engine-components/postprocessing/Volume.js +1 -1
  230. package/lib/engine-components/splines/Spline.d.ts +409 -12
  231. package/lib/engine-components/splines/Spline.js +409 -12
  232. package/lib/engine-components/splines/Spline.js.map +1 -1
  233. package/lib/engine-components/splines/SplineUtils.d.ts +1 -0
  234. package/lib/engine-components/splines/SplineUtils.js +1 -0
  235. package/lib/engine-components/splines/SplineUtils.js.map +1 -1
  236. package/lib/engine-components/splines/SplineWalker.d.ts +3 -1
  237. package/lib/engine-components/splines/SplineWalker.js +3 -1
  238. package/lib/engine-components/splines/SplineWalker.js.map +1 -1
  239. package/lib/engine-components/timeline/PlayableDirector.d.ts +103 -14
  240. package/lib/engine-components/timeline/PlayableDirector.js +95 -25
  241. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  242. package/lib/engine-components/timeline/TimelineModels.d.ts +14 -0
  243. package/lib/engine-components/timeline/TimelineModels.js +4 -0
  244. package/lib/engine-components/timeline/TimelineModels.js.map +1 -1
  245. package/lib/engine-components/ui/Button.d.ts +29 -3
  246. package/lib/engine-components/ui/Button.js +29 -3
  247. package/lib/engine-components/ui/Button.js.map +1 -1
  248. package/lib/engine-components/ui/Canvas.d.ts +29 -4
  249. package/lib/engine-components/ui/Canvas.js +29 -4
  250. package/lib/engine-components/ui/Canvas.js.map +1 -1
  251. package/lib/engine-components/ui/CanvasGroup.d.ts +1 -1
  252. package/lib/engine-components/ui/CanvasGroup.js +1 -1
  253. package/lib/engine-components/ui/EventSystem.d.ts +1 -1
  254. package/lib/engine-components/ui/EventSystem.js +1 -1
  255. package/lib/engine-components/ui/Graphic.d.ts +1 -0
  256. package/lib/engine-components/ui/Graphic.js +1 -0
  257. package/lib/engine-components/ui/Graphic.js.map +1 -1
  258. package/lib/engine-components/ui/Image.d.ts +22 -3
  259. package/lib/engine-components/ui/Image.js +22 -3
  260. package/lib/engine-components/ui/Image.js.map +1 -1
  261. package/lib/engine-components/ui/InputField.d.ts +1 -1
  262. package/lib/engine-components/ui/InputField.js +1 -1
  263. package/lib/engine-components/ui/Layout.d.ts +3 -0
  264. package/lib/engine-components/ui/Layout.js +3 -0
  265. package/lib/engine-components/ui/Layout.js.map +1 -1
  266. package/lib/engine-components/ui/Outline.d.ts +1 -1
  267. package/lib/engine-components/ui/Outline.js +1 -1
  268. package/lib/engine-components/ui/PointerEvents.d.ts +1 -1
  269. package/lib/engine-components/ui/PointerEvents.js +1 -1
  270. package/lib/engine-components/ui/Raycaster.d.ts +55 -6
  271. package/lib/engine-components/ui/Raycaster.js +55 -6
  272. package/lib/engine-components/ui/Raycaster.js.map +1 -1
  273. package/lib/engine-components/ui/RectTransform.d.ts +1 -1
  274. package/lib/engine-components/ui/RectTransform.js +1 -1
  275. package/lib/engine-components/ui/SpatialHtml.d.ts +1 -1
  276. package/lib/engine-components/ui/SpatialHtml.js +1 -1
  277. package/lib/engine-components/ui/Text.d.ts +23 -1
  278. package/lib/engine-components/ui/Text.js +23 -1
  279. package/lib/engine-components/ui/Text.js.map +1 -1
  280. package/lib/engine-components/utils/LookAt.d.ts +1 -1
  281. package/lib/engine-components/utils/LookAt.js +1 -1
  282. package/lib/engine-components/utils/OpenURL.d.ts +1 -1
  283. package/lib/engine-components/utils/OpenURL.js +1 -1
  284. package/lib/engine-components/web/Clickthrough.d.ts +116 -7
  285. package/lib/engine-components/web/Clickthrough.js +116 -7
  286. package/lib/engine-components/web/Clickthrough.js.map +1 -1
  287. package/lib/engine-components/web/CursorFollow.d.ts +171 -7
  288. package/lib/engine-components/web/CursorFollow.js +171 -7
  289. package/lib/engine-components/web/CursorFollow.js.map +1 -1
  290. package/lib/engine-components/web/HoverAnimation.d.ts +140 -11
  291. package/lib/engine-components/web/HoverAnimation.js +140 -11
  292. package/lib/engine-components/web/HoverAnimation.js.map +1 -1
  293. package/lib/engine-components/web/ScrollFollow.d.ts +4 -1
  294. package/lib/engine-components/web/ScrollFollow.js +4 -1
  295. package/lib/engine-components/web/ScrollFollow.js.map +1 -1
  296. package/lib/engine-components/web/ViewBox.d.ts +116 -16
  297. package/lib/engine-components/web/ViewBox.js +110 -16
  298. package/lib/engine-components/web/ViewBox.js.map +1 -1
  299. package/lib/engine-components/webxr/TeleportTarget.d.ts +21 -2
  300. package/lib/engine-components/webxr/TeleportTarget.js +21 -2
  301. package/lib/engine-components/webxr/TeleportTarget.js.map +1 -1
  302. package/lib/engine-components/webxr/WebXR.d.ts +10 -2
  303. package/lib/engine-components/webxr/WebXR.js +10 -2
  304. package/lib/engine-components/webxr/WebXR.js.map +1 -1
  305. package/lib/engine-components/webxr/WebXRAvatar.d.ts +39 -2
  306. package/lib/engine-components/webxr/WebXRAvatar.js +35 -3
  307. package/lib/engine-components/webxr/WebXRAvatar.js.map +1 -1
  308. package/lib/engine-components/webxr/WebXRImageTracking.d.ts +266 -30
  309. package/lib/engine-components/webxr/WebXRImageTracking.js +266 -30
  310. package/lib/engine-components/webxr/WebXRImageTracking.js.map +1 -1
  311. package/lib/engine-components/webxr/WebXRPlaneTracking.d.ts +1 -1
  312. package/lib/engine-components/webxr/WebXRPlaneTracking.js +1 -1
  313. package/lib/engine-components/webxr/XRFlag.d.ts +29 -2
  314. package/lib/engine-components/webxr/XRFlag.js +29 -2
  315. package/lib/engine-components/webxr/XRFlag.js.map +1 -1
  316. package/package.json +1 -1
  317. package/plugins/vite/custom-element-data.js +128 -19
  318. package/src/engine/engine_context.ts +16 -0
  319. package/src/engine/engine_gameobject.ts +73 -0
  320. package/src/engine/engine_input.ts +83 -7
  321. package/src/engine/engine_math.ts +81 -2
  322. package/src/engine/engine_networking.ts +186 -17
  323. package/src/engine/engine_networking_auto.ts +36 -9
  324. package/src/engine/engine_physics.ts +41 -1
  325. package/src/engine/engine_physics_rapier.ts +81 -0
  326. package/src/engine/engine_serialization_decorator.ts +28 -2
  327. package/src/engine/engine_time.ts +23 -3
  328. package/src/engine/engine_util_decorator.ts +31 -1
  329. package/src/engine/engine_utils.ts +21 -5
  330. package/src/engine/extensions/NEEDLE_materialx.ts +5 -4
  331. package/src/engine/extensions/index.ts +2 -2
  332. package/src/engine-components/AlignmentConstraint.ts +24 -4
  333. package/src/engine-components/Animation.ts +44 -2
  334. package/src/engine-components/Animator.ts +40 -7
  335. package/src/engine-components/AudioListener.ts +1 -1
  336. package/src/engine-components/AudioSource.ts +37 -15
  337. package/src/engine-components/AxesHelper.ts +23 -4
  338. package/src/engine-components/BasicIKConstraint.ts +28 -5
  339. package/src/engine-components/Camera.ts +33 -3
  340. package/src/engine-components/CharacterController.ts +74 -7
  341. package/src/engine-components/Collider.ts +78 -21
  342. package/src/engine-components/ContactShadows.ts +41 -11
  343. package/src/engine-components/DeleteBox.ts +43 -2
  344. package/src/engine-components/DeviceFlag.ts +22 -3
  345. package/src/engine-components/DragControls.ts +32 -2
  346. package/src/engine-components/DropListener.ts +41 -29
  347. package/src/engine-components/Duplicatable.ts +37 -6
  348. package/src/engine-components/EventList.ts +43 -15
  349. package/src/engine-components/EventTrigger.ts +1 -1
  350. package/src/engine-components/Fog.ts +23 -1
  351. package/src/engine-components/GridHelper.ts +18 -2
  352. package/src/engine-components/GroundProjection.ts +25 -3
  353. package/src/engine-components/Interactable.ts +17 -2
  354. package/src/engine-components/Joints.ts +51 -8
  355. package/src/engine-components/LODGroup.ts +45 -11
  356. package/src/engine-components/Light.ts +35 -13
  357. package/src/engine-components/LookAtConstraint.ts +26 -8
  358. package/src/engine-components/NeedleMenu.ts +29 -7
  359. package/src/engine-components/NestedGltf.ts +40 -4
  360. package/src/engine-components/OffsetConstraint.ts +27 -3
  361. package/src/engine-components/OrbitControls.ts +41 -3
  362. package/src/engine-components/PlayerColor.ts +1 -1
  363. package/src/engine-components/ReflectionProbe.ts +19 -5
  364. package/src/engine-components/Renderer.ts +35 -1
  365. package/src/engine-components/RigidBody.ts +64 -8
  366. package/src/engine-components/SceneSwitcher.ts +11 -0
  367. package/src/engine-components/ScreenCapture.ts +42 -9
  368. package/src/engine-components/SeeThrough.ts +76 -9
  369. package/src/engine-components/ShadowCatcher.ts +61 -6
  370. package/src/engine-components/Skybox.ts +48 -12
  371. package/src/engine-components/SmoothFollow.ts +68 -7
  372. package/src/engine-components/SpatialTrigger.ts +51 -4
  373. package/src/engine-components/SpectatorCamera.ts +23 -5
  374. package/src/engine-components/SyncedRoom.ts +8 -2
  375. package/src/engine-components/SyncedTransform.ts +59 -10
  376. package/src/engine-components/TransformGizmo.ts +31 -4
  377. package/src/engine-components/VideoPlayer.ts +48 -6
  378. package/src/engine-components/Voip.ts +33 -2
  379. package/src/engine-components/export/usdz/USDZExporter.ts +47 -13
  380. package/src/engine-components/particlesystem/ParticleSystem.ts +84 -5
  381. package/src/engine-components/postprocessing/Effects/Antialiasing.ts +1 -0
  382. package/src/engine-components/postprocessing/Effects/BloomEffect.ts +1 -1
  383. package/src/engine-components/postprocessing/Effects/ChromaticAberration.ts +1 -1
  384. package/src/engine-components/postprocessing/Effects/ColorAdjustments.ts +1 -1
  385. package/src/engine-components/postprocessing/Effects/DepthOfField.ts +1 -1
  386. package/src/engine-components/postprocessing/Effects/EffectWrapper.ts +1 -0
  387. package/src/engine-components/postprocessing/Effects/Pixelation.ts +1 -1
  388. package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusion.ts +1 -1
  389. package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.ts +1 -1
  390. package/src/engine-components/postprocessing/Effects/Sharpening.ts +1 -1
  391. package/src/engine-components/postprocessing/Effects/TiltShiftEffect.ts +1 -1
  392. package/src/engine-components/postprocessing/Effects/Tonemapping.ts +1 -1
  393. package/src/engine-components/postprocessing/Effects/Vignette.ts +1 -1
  394. package/src/engine-components/postprocessing/PostProcessingHandler.ts +1 -1
  395. package/src/engine-components/postprocessing/Volume.ts +1 -1
  396. package/src/engine-components/splines/Spline.ts +412 -14
  397. package/src/engine-components/splines/SplineUtils.ts +1 -0
  398. package/src/engine-components/splines/SplineWalker.ts +4 -2
  399. package/src/engine-components/timeline/PlayableDirector.ts +108 -27
  400. package/src/engine-components/timeline/SignalAsset.ts +1 -1
  401. package/src/engine-components/timeline/TimelineModels.ts +18 -2
  402. package/src/engine-components/ui/Button.ts +29 -3
  403. package/src/engine-components/ui/Canvas.ts +29 -4
  404. package/src/engine-components/ui/CanvasGroup.ts +2 -2
  405. package/src/engine-components/ui/EventSystem.ts +1 -1
  406. package/src/engine-components/ui/Graphic.ts +1 -0
  407. package/src/engine-components/ui/Image.ts +22 -3
  408. package/src/engine-components/ui/InputField.ts +2 -2
  409. package/src/engine-components/ui/Layout.ts +3 -0
  410. package/src/engine-components/ui/Outline.ts +1 -1
  411. package/src/engine-components/ui/PointerEvents.ts +1 -1
  412. package/src/engine-components/ui/Raycaster.ts +57 -8
  413. package/src/engine-components/ui/RectTransform.ts +2 -2
  414. package/src/engine-components/ui/SpatialHtml.ts +1 -1
  415. package/src/engine-components/ui/Text.ts +24 -2
  416. package/src/engine-components/utils/LookAt.ts +1 -1
  417. package/src/engine-components/utils/OpenURL.ts +1 -1
  418. package/src/engine-components/web/Clickthrough.ts +119 -10
  419. package/src/engine-components/web/CursorFollow.ts +174 -9
  420. package/src/engine-components/web/HoverAnimation.ts +142 -13
  421. package/src/engine-components/web/ScrollFollow.ts +4 -1
  422. package/src/engine-components/web/ViewBox.ts +118 -18
  423. package/src/engine-components/webxr/TeleportTarget.ts +23 -4
  424. package/src/engine-components/webxr/WebXR.ts +11 -3
  425. package/src/engine-components/webxr/WebXRAvatar.ts +41 -4
  426. package/src/engine-components/webxr/WebXRImageTracking.ts +282 -38
  427. package/src/engine-components/webxr/WebXRPlaneTracking.ts +1 -1
  428. package/src/engine-components/webxr/XRFlag.ts +30 -3
@@ -4,11 +4,15 @@ import { Behaviour } from '../Component.js';
4
4
  import * as Models from "./TimelineModels.js";
5
5
  import * as Tracks from "./TimelineTracks.js";
6
6
  /**
7
- * The wrap mode of the {@link PlayableDirector}.
7
+ * Controls how the {@link PlayableDirector} behaves when playback reaches the end.
8
+ * @see {@link PlayableDirector.extrapolationMode}
8
9
  */
9
10
  export declare enum DirectorWrapMode {
11
+ /** Hold the last frame when playback reaches the end of the timeline. */
10
12
  Hold = 0,
13
+ /** Loop back to the start and continue playing indefinitely. */
11
14
  Loop = 1,
15
+ /** Stop playback when the end is reached. The timeline will not loop. */
12
16
  None = 2
13
17
  }
14
18
  /** How the clip handles time outside its start and end range. */
@@ -27,44 +31,119 @@ export declare enum ClipExtrapolation {
27
31
  /** @internal */
28
32
  export type CreateTrackFunction = (director: PlayableDirector, track: Models.TrackModel) => Tracks.TrackHandler | undefined | null;
29
33
  /**
30
- * The PlayableDirector component is the main component to control timelines in needle engine.
31
- * It is used to play, pause, stop and evaluate timelines.
32
- * Assign a TimelineAsset to the `playableAsset` property to start playing a timeline.
34
+ * PlayableDirector is the main component for controlling timelines in Needle Engine.
35
+ * It orchestrates playback of TimelineAssets containing animation, audio, signal,
36
+ * control, and activation tracks.
37
+ *
38
+ * ![](https://cloud.needle.tools/-/media/CkJal5dIBwFe6erA-MmiGw.webp)
39
+ * *Screenshot: Timeline in Unity*
40
+ *
41
+ * **Supported track types:**
42
+ * - Animation tracks - animate objects using AnimationClips
43
+ * - Audio tracks - play synchronized audio
44
+ * - Activation tracks - show/hide objects at specific times
45
+ * - Signal tracks - trigger events at specific points
46
+ * - Control tracks - control nested timelines or prefab instances
47
+ * - Marker tracks - add metadata and navigation points
48
+ *
49
+ * [![](https://cloud.needle.tools/-/media/HFudFwl8J8D-Kt_VPu7pRw.gif)](https://engine.needle.tools/samples/bike-scrollytelling-responsive-3d)
50
+ *
51
+ * [![](https://cloud.needle.tools/-/media/xJ1rI3STbZRnOoWJrSzqlQ.gif)](https://app.songsofcultures.com/?scene=little-brother)
52
+ *
53
+ * **Playback control:**
54
+ * Use `play()`, `pause()`, `stop()` for basic control.
55
+ * Set `time` directly and call `evaluate()` for scrubbing.
56
+ * Adjust `speed` for playback rate and `weight` for blending.
57
+ *
58
+ * @example Basic timeline playback
59
+ * ```ts
60
+ * const director = myObject.getComponent(PlayableDirector);
61
+ * director.play();
62
+ * // Jump to specific time
63
+ * director.time = 2.5;
64
+ * director.evaluate();
65
+ * ```
66
+ *
67
+ * @example Control playback speed
68
+ * ```ts
69
+ * director.speed = 0.5; // Half speed
70
+ * director.speed = -1; // Reverse playback
71
+ * ```
72
+ *
73
+ * - Example: https://engine.needle.tools/samples-uploads/product-flyover/
74
+ *
33
75
  * @summary Controls and plays TimelineAssets
34
76
  * @category Animation and Sequencing
35
77
  * @group Components
78
+ * @see {@link Animator} for playing individual AnimationClips
79
+ * @see {@link AudioSource} for standalone audio playback
80
+ * @see {@link SignalReceiver} for handling timeline signals
81
+ * @link https://engine.needle.tools/samples/?overlay=samples&tag=animation
82
+ * @link https://app.songsofcultures.com/
83
+ * @link https://engine.needle.tools/docs/blender/animation.html Blender timeline and animation export
36
84
  */
37
85
  export declare class PlayableDirector extends Behaviour {
38
86
  private static createTrackFunctions;
87
+ /**
88
+ * Register a function to create a track handler for a custom track type.
89
+ * This allows you to extend the timeline system with your own track types and handlers.
90
+ */
39
91
  static registerCreateTrack(type: string, fn: CreateTrackFunction): void;
40
92
  /**
41
- * The timeline asset that is played by this director.
93
+ * The timeline asset containing tracks, clips, and markers that this director will play.
94
+ * Assign a timeline asset exported from Unity or Blender to enable playback.
42
95
  */
43
96
  playableAsset?: Models.TimelineAssetModel;
44
- /** Set to true to start playing the timeline when the scene starts */
97
+ /**
98
+ * When true, the timeline starts playing automatically when the component awakens.
99
+ * Set to false to control playback manually via `play()`.
100
+ * @default false
101
+ */
45
102
  playOnAwake?: boolean;
46
103
  /**
47
104
  * Determines how the timeline behaves when it reaches the end of its duration.
48
105
  * @default DirectorWrapMode.Loop
49
106
  */
50
107
  extrapolationMode: DirectorWrapMode;
51
- /** @returns true if the timeline is currently playing */
108
+ /** Returns true if the timeline is currently playing (not paused or stopped). */
52
109
  get isPlaying(): boolean;
53
- /** @returns true if the timeline is currently paused */
110
+ /** Returns true if the timeline is currently paused. */
54
111
  get isPaused(): boolean;
55
- /** the current time of the timeline */
112
+ /**
113
+ * The current playback time in seconds. Set this and call `evaluate()` to scrub.
114
+ * @example Scrub to a specific time
115
+ * ```ts
116
+ * director.time = 5.0;
117
+ * director.evaluate();
118
+ * ```
119
+ */
56
120
  get time(): number;
57
121
  set time(value: number);
58
- /** the duration of the timeline */
122
+ /** The total duration of the timeline in seconds (read from the longest track/clip). */
59
123
  get duration(): number;
60
124
  set duration(value: number);
61
- /** the weight of the timeline. Set to a value below 1 to blend with other timelines */
125
+ /**
126
+ * The blend weight of the timeline (0-1). Use values below 1 to blend
127
+ * timeline animations with other animations like those from an Animator.
128
+ */
62
129
  get weight(): number;
63
130
  set weight(value: number);
64
- /** the playback speed of the timeline */
131
+ /**
132
+ * The playback speed multiplier. Set to negative values for reverse playback.
133
+ * @example Reverse playback at double speed
134
+ * ```ts
135
+ * director.speed = -2;
136
+ * ```
137
+ */
65
138
  get speed(): number;
66
139
  set speed(value: number);
67
- /** When enabled the timeline will wait for audio tracks to load at the current time before starting to play */
140
+ /**
141
+ * When true, `play()` will wait for audio tracks to load and for user interaction
142
+ * before starting playback. Web browsers require user interaction (click/tap) before
143
+ * allowing audio to play - this ensures audio is synchronized with the timeline.
144
+ * Set to false if you need immediate visual playback and can tolerate audio delay.
145
+ * @default true
146
+ */
68
147
  waitForAudio: boolean;
69
148
  private _visibilityChangeEvt?;
70
149
  private _clonedPlayableAsset;
@@ -174,7 +253,17 @@ export declare class PlayableDirector extends Behaviour {
174
253
  unregisterAnimationCallback(receiver: ITimelineAnimationCallbacks): void;
175
254
  }
176
255
  /**
177
- * Experimental interface for receiving timeline animation callbacks. Register at the PlayableDirector
256
+ * Interface for receiving callbacks during timeline animation evaluation.
257
+ * Allows modification of position/rotation values before they are applied.
258
+ *
259
+ * **Registration:**
260
+ * ```ts
261
+ * director.registerAnimationCallback(this);
262
+ * // Later: director.unregisterAnimationCallback(this);
263
+ * ```
264
+ *
265
+ * @experimental This interface may change in future versions
266
+ * @see {@link PlayableDirector.registerAnimationCallback}
178
267
  */
179
268
  export interface ITimelineAnimationCallbacks {
180
269
  /**
@@ -19,21 +19,16 @@ import * as Models from "./TimelineModels.js";
19
19
  import * as Tracks from "./TimelineTracks.js";
20
20
  const debug = getParam("debugtimeline");
21
21
  /**
22
- * The wrap mode of the {@link PlayableDirector}.
22
+ * Controls how the {@link PlayableDirector} behaves when playback reaches the end.
23
+ * @see {@link PlayableDirector.extrapolationMode}
23
24
  */
24
25
  export var DirectorWrapMode;
25
26
  (function (DirectorWrapMode) {
26
- /// <summary>
27
- /// <para>Hold the last frame when the playable time reaches it's duration.</para>
28
- /// </summary>
27
+ /** Hold the last frame when playback reaches the end of the timeline. */
29
28
  DirectorWrapMode[DirectorWrapMode["Hold"] = 0] = "Hold";
30
- /// <summary>
31
- /// <para>Loop back to zero time and continue playing.</para>
32
- /// </summary>
29
+ /** Loop back to the start and continue playing indefinitely. */
33
30
  DirectorWrapMode[DirectorWrapMode["Loop"] = 1] = "Loop";
34
- /// <summary>
35
- /// <para>Do not keep playing when the time reaches the duration.</para>
36
- /// </summary>
31
+ /** Stop playback when the end is reached. The timeline will not loop. */
37
32
  DirectorWrapMode[DirectorWrapMode["None"] = 2] = "None";
38
33
  })(DirectorWrapMode || (DirectorWrapMode = {}));
39
34
  /** How the clip handles time outside its start and end range. */
@@ -52,34 +47,94 @@ export var ClipExtrapolation;
52
47
  })(ClipExtrapolation || (ClipExtrapolation = {}));
53
48
  ;
54
49
  /**
55
- * The PlayableDirector component is the main component to control timelines in needle engine.
56
- * It is used to play, pause, stop and evaluate timelines.
57
- * Assign a TimelineAsset to the `playableAsset` property to start playing a timeline.
50
+ * PlayableDirector is the main component for controlling timelines in Needle Engine.
51
+ * It orchestrates playback of TimelineAssets containing animation, audio, signal,
52
+ * control, and activation tracks.
53
+ *
54
+ * ![](https://cloud.needle.tools/-/media/CkJal5dIBwFe6erA-MmiGw.webp)
55
+ * *Screenshot: Timeline in Unity*
56
+ *
57
+ * **Supported track types:**
58
+ * - Animation tracks - animate objects using AnimationClips
59
+ * - Audio tracks - play synchronized audio
60
+ * - Activation tracks - show/hide objects at specific times
61
+ * - Signal tracks - trigger events at specific points
62
+ * - Control tracks - control nested timelines or prefab instances
63
+ * - Marker tracks - add metadata and navigation points
64
+ *
65
+ * [![](https://cloud.needle.tools/-/media/HFudFwl8J8D-Kt_VPu7pRw.gif)](https://engine.needle.tools/samples/bike-scrollytelling-responsive-3d)
66
+ *
67
+ * [![](https://cloud.needle.tools/-/media/xJ1rI3STbZRnOoWJrSzqlQ.gif)](https://app.songsofcultures.com/?scene=little-brother)
68
+ *
69
+ * **Playback control:**
70
+ * Use `play()`, `pause()`, `stop()` for basic control.
71
+ * Set `time` directly and call `evaluate()` for scrubbing.
72
+ * Adjust `speed` for playback rate and `weight` for blending.
73
+ *
74
+ * @example Basic timeline playback
75
+ * ```ts
76
+ * const director = myObject.getComponent(PlayableDirector);
77
+ * director.play();
78
+ * // Jump to specific time
79
+ * director.time = 2.5;
80
+ * director.evaluate();
81
+ * ```
82
+ *
83
+ * @example Control playback speed
84
+ * ```ts
85
+ * director.speed = 0.5; // Half speed
86
+ * director.speed = -1; // Reverse playback
87
+ * ```
88
+ *
89
+ * - Example: https://engine.needle.tools/samples-uploads/product-flyover/
90
+ *
58
91
  * @summary Controls and plays TimelineAssets
59
92
  * @category Animation and Sequencing
60
93
  * @group Components
94
+ * @see {@link Animator} for playing individual AnimationClips
95
+ * @see {@link AudioSource} for standalone audio playback
96
+ * @see {@link SignalReceiver} for handling timeline signals
97
+ * @link https://engine.needle.tools/samples/?overlay=samples&tag=animation
98
+ * @link https://app.songsofcultures.com/
99
+ * @link https://engine.needle.tools/docs/blender/animation.html Blender timeline and animation export
61
100
  */
62
101
  export class PlayableDirector extends Behaviour {
63
102
  static createTrackFunctions = {};
103
+ /**
104
+ * Register a function to create a track handler for a custom track type.
105
+ * This allows you to extend the timeline system with your own track types and handlers.
106
+ */
64
107
  static registerCreateTrack(type, fn) {
65
108
  this.createTrackFunctions[type] = fn;
66
109
  }
67
110
  /**
68
- * The timeline asset that is played by this director.
111
+ * The timeline asset containing tracks, clips, and markers that this director will play.
112
+ * Assign a timeline asset exported from Unity or Blender to enable playback.
69
113
  */
70
114
  playableAsset;
71
- /** Set to true to start playing the timeline when the scene starts */
115
+ /**
116
+ * When true, the timeline starts playing automatically when the component awakens.
117
+ * Set to false to control playback manually via `play()`.
118
+ * @default false
119
+ */
72
120
  playOnAwake;
73
121
  /**
74
122
  * Determines how the timeline behaves when it reaches the end of its duration.
75
123
  * @default DirectorWrapMode.Loop
76
124
  */
77
125
  extrapolationMode = DirectorWrapMode.Loop;
78
- /** @returns true if the timeline is currently playing */
126
+ /** Returns true if the timeline is currently playing (not paused or stopped). */
79
127
  get isPlaying() { return this._isPlaying; }
80
- /** @returns true if the timeline is currently paused */
128
+ /** Returns true if the timeline is currently paused. */
81
129
  get isPaused() { return this._isPaused; }
82
- /** the current time of the timeline */
130
+ /**
131
+ * The current playback time in seconds. Set this and call `evaluate()` to scrub.
132
+ * @example Scrub to a specific time
133
+ * ```ts
134
+ * director.time = 5.0;
135
+ * director.evaluate();
136
+ * ```
137
+ */
83
138
  get time() { return this._time; }
84
139
  set time(value) {
85
140
  if (typeof value === "number" && !Number.isNaN(value))
@@ -89,17 +144,32 @@ export class PlayableDirector extends Behaviour {
89
144
  }
90
145
  ;
91
146
  }
92
- /** the duration of the timeline */
147
+ /** The total duration of the timeline in seconds (read from the longest track/clip). */
93
148
  get duration() { return this._duration; }
94
149
  set duration(value) { this._duration = value; }
95
- /** the weight of the timeline. Set to a value below 1 to blend with other timelines */
150
+ /**
151
+ * The blend weight of the timeline (0-1). Use values below 1 to blend
152
+ * timeline animations with other animations like those from an Animator.
153
+ */
96
154
  get weight() { return this._weight; }
97
155
  ;
98
156
  set weight(value) { this._weight = value; }
99
- /** the playback speed of the timeline */
157
+ /**
158
+ * The playback speed multiplier. Set to negative values for reverse playback.
159
+ * @example Reverse playback at double speed
160
+ * ```ts
161
+ * director.speed = -2;
162
+ * ```
163
+ */
100
164
  get speed() { return this._speed; }
101
165
  set speed(value) { this._speed = value; }
102
- /** When enabled the timeline will wait for audio tracks to load at the current time before starting to play */
166
+ /**
167
+ * When true, `play()` will wait for audio tracks to load and for user interaction
168
+ * before starting playback. Web browsers require user interaction (click/tap) before
169
+ * allowing audio to play - this ensures audio is synchronized with the timeline.
170
+ * Set to false if you need immediate visual playback and can tolerate audio delay.
171
+ * @default true
172
+ */
103
173
  waitForAudio = true;
104
174
  _visibilityChangeEvt;
105
175
  _clonedPlayableAsset = false;
@@ -213,9 +283,9 @@ export class PlayableDirector extends Behaviour {
213
283
  await delay(200);
214
284
  }
215
285
  this.invokeStateChangedMethodsOnTracks();
216
- // Update timeline in LateUpdate to give other scripts time to react to the updated state
217
- // e.g. if we animate OrbitControls look at target we want those changes to be applied in onBeforeRender
218
- // if we use onBeforeRender here it will be called *after* the regular onBeforeRender events
286
+ // Update timeline in LateUpdate to give other scripts time to react to the updated state
287
+ // e.g. if we animate OrbitControls look at target we want those changes to be applied in onBeforeRender
288
+ // if we use onBeforeRender here it will be called *after* the regular onBeforeRender events
219
289
  // which is too late
220
290
  this._internalUpdateRoutine = this.startCoroutine(this.internalUpdate(), FrameEvent.LateUpdate);
221
291
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PlayableDirector.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/PlayableDirector.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAuB,MAAM,OAAO,CAAC;AAEtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAEpE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,qBAAqB,CAAC;AAE9C,MAAM,KAAK,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AAExC;;GAEG;AACH,MAAM,CAAN,IAAY,gBAaX;AAbD,WAAY,gBAAgB;IACxB,aAAa;IACb,oFAAoF;IACpF,cAAc;IACd,uDAAQ,CAAA;IACR,aAAa;IACb,+DAA+D;IAC/D,cAAc;IACd,uDAAQ,CAAA;IACR,aAAa;IACb,0EAA0E;IAC1E,cAAc;IACd,uDAAQ,CAAA;AACZ,CAAC,EAbW,gBAAgB,KAAhB,gBAAgB,QAa3B;AAGD,iEAAiE;AACjE,MAAM,CAAN,IAAY,iBAWX;AAXD,WAAY,iBAAiB;IACzB,mCAAmC;IACnC,yDAAQ,CAAA;IACR,kDAAkD;IAClD,yDAAQ,CAAA;IACR,sDAAsD;IACtD,yDAAQ,CAAA;IACR,uFAAuF;IACvF,iEAAY,CAAA;IACZ,uFAAuF;IACvF,iEAAY,CAAA;AAChB,CAAC,EAXW,iBAAiB,KAAjB,iBAAiB,QAW5B;AAAA,CAAC;AAKF;;;;;;;GAOG;AACH,MAAM,OAAO,gBAAiB,SAAQ,SAAS;IAEnC,MAAM,CAAC,oBAAoB,GAA2C,EAAE,CAAC;IACjF,MAAM,CAAC,mBAAmB,CAAC,IAAY,EAAE,EAAuB;QAC5D,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,aAAa,CAA6B;IAE1C,sEAAsE;IAEtE,WAAW,CAAW;IAEtB;;;OAGG;IAEH,iBAAiB,GAAqB,gBAAgB,CAAC,IAAI,CAAC;IAE5D,yDAAyD;IACzD,IAAI,SAAS,KAAc,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACpD,wDAAwD;IACxD,IAAI,QAAQ,KAAc,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAClD,uCAAuC;IACvC,IAAI,IAAI,KAAa,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACzC,IAAI,IAAI,CAAC,KAAa;QAClB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YACjD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;aAClB,IAAI,KAAK,IAAI,cAAc,EAAE,EAAE;YAChC,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;SACjE;QAAA,CAAC;IACN,CAAC;IACD,mCAAmC;IACnC,IAAI,QAAQ,KAAa,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,IAAI,QAAQ,CAAC,KAAa,IAAI,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC;IACvD,uFAAuF;IACvF,IAAI,MAAM,KAAa,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAAA,CAAC;IAC9C,IAAI,MAAM,CAAC,KAAa,IAAI,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC;IACnD,yCAAyC;IACzC,IAAI,KAAK,KAAa,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3C,IAAI,KAAK,CAAC,KAAa,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IAEjD,+GAA+G;IAC/G,YAAY,GAAY,IAAI,CAAC;IAErB,oBAAoB,CAAO;IAC3B,oBAAoB,GAAY,KAAK,CAAC;IACtC,MAAM,GAAW,CAAC,CAAC;IAE3B,gBAAgB;IAChB,KAAK;QACD,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,IAAI,CAAC,IAAI,GAAG,EAAE,IAAI,CAAC,CAAC;QAEhE,IAAI,CAAC,YAAY,EAAE,CAAC;QAEpB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,IAAI,gBAAgB,EAAE,CAAC,EAAE;YAClD,IAAI,KAAK,EAAE;gBACP,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,QAAQ,EAAE,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC;aACnL;iBACI,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC1C,OAAO,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;aAClD;iBACI;gBACD,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;aACjD;SACJ;IACL,CAAC;IAED,gBAAgB;IAChB,QAAQ;QACJ,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAE3E,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;YACnC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;SACtB;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE;YACpC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;SACtB;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACvC,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;SACtB;QACD,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,IAAI,EAAE,CAAC;SACf;QAED,IAAI,CAAC,IAAI,CAAC,oBAAoB;YAAE,IAAI,CAAC,oBAAoB,GAAG,GAAG,EAAE;gBAC7D,QAAQ,QAAQ,CAAC,eAAe,EAAE;oBAC9B,KAAK,QAAQ;wBACT,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;wBACvC,MAAM;oBACV,KAAK,SAAS;wBACV,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,CAAC;wBACtC,MAAM;iBACb;YACL,CAAC,CAAA;QACD,MAAM,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAC3E,CAAC;IAED,gBAAgB;IAChB,SAAS;QACL,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAE1D,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;YACnC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;SACvB;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE;YACpC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;SACvB;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACvC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;SACvB;QACD,IAAI,IAAI,CAAC,oBAAoB;YACzB,MAAM,CAAC,mBAAmB,CAAC,kBAAkB,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAClF,CAAC;IAED,gBAAgB;IAChB,SAAS;QACL,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE;YAClC,KAAK,MAAM,KAAK,IAAI,MAAM;gBACtB,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC;SAC3B;IACL,CAAC;IAED,gBAAgB;IAChB,YAAY;QACR,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;QAC5B,IAAI,CAAC,eAAe,EAAE,CAAC;QACvB,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,2BAA2B,EAAE,CAAC;IACvC,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,IAAI;QACN,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,YAAY;YAAE,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAC3D,IAAI,IAAI,CAAC,YAAY,EAAE;YACnB,yDAAyD;YACzD,MAAM,QAAQ,GAAwB,EAAE,CAAC;YACzC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;gBACnC,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;gBAClD,IAAI,OAAO;oBACP,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC9B;YACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBACrB,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC5B,IAAI,CAAC,IAAI,CAAC,UAAU;oBAAE,OAAO;aAChC;YACD,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,WAAW,CAAC,yBAAyB,IAAI,IAAI,CAAC,YAAY;gBACjH,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;SACxB;QACD,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACzC,yFAAyF;QACzF,wGAAwG;QACxG,4FAA4F;QAC5F,oBAAoB;QACpB,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACpG,CAAC;IAED;;OAEG;IACH,KAAK;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACzC,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,IAAI;QACA,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY;YAAE,KAAK,CAAC,IAAI,EAAE,CAAC;QACpD,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;YACf,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACxB,IAAI,YAAY;gBAAE,IAAI,CAAC,iCAAiC,EAAE,CAAC;SAC9D;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,YAAY,IAAI,CAAC,UAAU;YAAE,IAAI,CAAC,iCAAiC,EAAE,CAAC;QAC1E,IAAI,UAAU;YAAE,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACzD,IAAI,IAAI,CAAC,sBAAsB;YAC3B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QACpD,IAAI,CAAC,sBAAsB,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,QAAQ;QACJ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,OAAO;QACH,OAAO,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IACvG,CAAC;IAED;;OAEG;IACH,CAAC,YAAY;QACT,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE;YAClC,KAAK,MAAM,KAAK,IAAI,MAAM;gBACtB,MAAM,KAAK,CAAC;SACnB;IACL,CAAC;IAED;;OAEG;IACH,IAAI,eAAe;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,IAAI,WAAW;QACX,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;;;;;;;;;;OAWG;IACH,CAAC,aAAa,CAAgC,OAAsB,IAAI;QACpE,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,EAAE;YACpC,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,aAAa,CAAI,IAAI,CAAC,EAAE;gBAC/C,MAAM,MAAgC,CAAC;aAC1C;SACJ;IACL,CAAC;IAGO,SAAS,CAAY;IAC7B,gBAAgB;IAChB,YAAY,CAAC,GAAa;QACtB,IAAI,CAAC,SAAS,GAAG,GAAG,CAAC;IACzB,CAAC;IAED,YAAY;IAEJ,UAAU,GAAY,KAAK,CAAC;IAC5B,sBAAsB,CAAM;IAC5B,SAAS,GAAY,KAAK,CAAC;IACnC,+DAA+D;IACvD,WAAW,GAAY,KAAK,CAAC;IAC7B,KAAK,GAAW,CAAC,CAAC;IAClB,SAAS,GAAW,CAAC,CAAC;IACtB,OAAO,GAAW,CAAC,CAAC;IACX,gBAAgB,GAAwC,EAAE,CAAC;IAC3D,YAAY,GAAoC,EAAE,CAAC;IACnD,aAAa,GAAqC,EAAE,CAAC;IACrD,aAAa,GAAqC,EAAE,CAAC;IACrD,cAAc,GAAsC,EAAE,CAAC;IACvD,aAAa,GAA+B,EAAE,CAAC;IAE/C,YAAY,GAAsC,EAAE,CAAC;IACtE,IAAY,UAAU;QAClB,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC5C,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC3C,OAAO,IAAI,CAAC,YAAY,CAAC;IAC7B,CAAC;IAED,kEAAkE;IAC1D,iCAAiC;QACrC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;YACrC,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;SACrC;IACL,CAAC;IACO,iCAAiC;QACrC,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE,EAAE;YACrC,KAAK,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACtD;IACL,CAAC;IAEO,CAAE,cAAc;QACpB,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,gBAAgB,EAAE;YAC7C,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;gBACpC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;gBACvD,IAAI,CAAC,gBAAgB,EAAE,CAAC;aAC3B;YACD,8BAA8B;YAC9B,KAAK,CAAC;SACT;IACL,CAAC;IAED;;;OAGG;IACK,gBAAgB,CAAC,iBAA0B,KAAK;QACpD,kGAAkG;QAClG,mFAAmF;QAEnF,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YAAE,OAAO;QAE5B,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;QACnB,QAAQ,IAAI,CAAC,iBAAiB,EAAE;YAC5B,KAAK,gBAAgB,CAAC,IAAI;gBACtB,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBACf,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;qBAC/B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;oBACpB,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;gBACf,MAAM;YACV,KAAK,gBAAgB,CAAC,IAAI;gBACtB,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC;gBACpB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;gBACf,MAAM;YACV,KAAK,gBAAgB,CAAC,IAAI;gBACtB,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,EAAE;oBACpB,IAAI,CAAC,IAAI,EAAE,CAAC;oBACZ,OAAO;iBACV;gBACD,MAAM;SACb;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QAExB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAc,CAAC,MAAM,EAAE;YAC5C,IAAI,KAAK,CAAC,KAAK;gBAAE,SAAS;YAC1B,QAAQ,KAAK,CAAC,IAAI,EAAE;gBAChB,KAAK,MAAM,CAAC,SAAS,CAAC,UAAU;oBAC5B,kDAAkD;oBAClD,0DAA0D;oBAC1D,cAAc;oBACd,uGAAuG;oBACvG,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,UAAU;wBAAE,SAAS;oBAElD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;wBACjC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;4BAC7B,IAAI,QAAQ,GAAY,KAAK,CAAC;4BAC9B,IAAI,KAAK,CAAC,KAAK,EAAE;gCACb,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;oCAC5B,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,EAAE;wCACxC,QAAQ,GAAG,IAAI,CAAC;qCACnB;iCACJ;6BACJ;4BACD,MAAM,GAAG,GAAG,OAAmB,CAAC;4BAChC,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE;gCAC3B,IAAI,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE;oCAC1B,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC;oCACvB,IAAI,KAAK;wCACL,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,sBAAsB,GAAG,CAAC,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC;iCACrF;6BACJ;yBACJ;qBACJ;oBACD,MAAM;aAEb;SACJ;QAED,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE;YACjC,KAAK,MAAM,OAAO,IAAI,KAAK,EAAE;gBACzB,mFAAmF;gBACnF,oGAAoG;gBACpG,6FAA6F;gBAE7F,IAAI,IAAI,CAAC,WAAW,IAAI,OAAO,YAAY,MAAM,CAAC,qBAAqB,EAAE;oBACrE,SAAS;iBACZ;gBACD,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC1B;SACJ;IACL,CAAC;IAEO,eAAe;QACnB,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE;YAC5B,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACtD;QAED,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM;YAAE,OAAO;QAG9D,yEAAyE;QACzE,0EAA0E;QAC1E,gDAAgD;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAE5C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YAC3C,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBAChD,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;oBAC7B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;wBACzC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;oBACtC,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBACjD,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;wBACzC,iEAAiE;wBACjE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC3B,OAAO,CAAC,IAAI,CAAC,2BAA2B,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;qBAC9E;yBACI;wBACD,IAAI,KAAK;4BACL,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;wBACxD,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;qBAC1B;iBACJ;qBACI,IAAI,OAAO,KAAK,IAAI,EAAE;oBACvB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;oBAC3B,IAAI,gBAAgB,CAAC,oBAAoB,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;wBACnD,iDAAiD;wBACjD,SAAS;qBACZ;oBACD,iEAAiE;oBACjE,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM;wBACpK,OAAO,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;iBAC5G;aACJ;YACD,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE;gBACzC,IAAI,KAAK,CAAC,KAAK,EAAE;oBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACzC,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC5B,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC;wBACtC,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;4BAC7B,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gCACzC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;4BACtC,MAAM,GAAG,GAAG,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;4BACjD,IAAI,GAAG,KAAK,IAAI,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;gCACzC,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;6BACrF;iCACI;gCACD,IAAI,KAAK;oCACL,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;gCACxD,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,GAAG,CAAC;6BACjC;yBACJ;qBACJ;iBACJ;aACJ;SACJ;IACL,CAAC;IAEO,QAAQ,CAAC,OAAiB;QAC9B,IAAI,OAAO,CAAC,MAAM;YACd,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,sBAAsB;QAC1B,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM;YAAE,OAAO;QAC9D,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YAC3C,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI;gBAAE,SAAS;YACnC,IAAI,KAAK,CAAC,KAAK,EAAE;gBACb,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;oBAC5B,IAAI,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,SAAS;wBAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC;iBAC5D;aACJ;YACD,IAAI,KAAK,CAAC,OAAO,EAAE;gBACf,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE;oBAChC,IAAI,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS;wBAAE,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;iBACzE;aACJ;SACJ;QACD,wEAAwE;IAC5E,CAAC;IAEO,2BAA2B;QAC/B,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;QAE9B,IAAI,CAAC,IAAI,CAAC,aAAa;YAAE,OAAO;QAChC,IAAI,aAAa,GAAyB,UAAU,CAAC,gBAAgB,CAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QACnG,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAc,CAAC,MAAM,EAAE;YAC5C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;YACxB,MAAM,UAAU,GAAG,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAC/D,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,SAAS,EAAE;gBACjD,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,EAAE,KAAK,CAAwB,CAAC;gBAC3D,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE;oBACpC,GAAG,CAAC,QAAQ,GAAG,IAAI,CAAC;oBACpB,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;oBAClB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAC7B,SAAS;iBACZ;aACJ;YACD,+BAA+B;YAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,SAAS,EAAE;gBAC3C,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;oBACzC,IAAI,KAAK;wBAAE,OAAO,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;oBAC/D,SAAS;iBACZ;gBACD,mEAAmE;gBACnE,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;oBAChD,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAa,CAAC;oBAC3C,IAAI,OAAO,YAAY,QAAQ,EAAE;wBAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,iBAAiB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;wBAC7D,IAAI,IAAI;4BAAE,OAAO,GAAG,IAAI,CAAC;qBAC5B;oBACD,MAAM,cAAc,GAAG,OAAO,EAAE,UAAU,EAAE,UAAU,CAAC;oBACvD,IAAI,cAAc,EAAE;wBAChB,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;wBACnD,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;wBACxC,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;wBACxB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;wBACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;4BACzC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;4BACjC,MAAM,SAAS,GAAG,SAAS,CAAC,KAAkC,CAAC;4BAC/D,IAAI,CAAC,SAAS,EAAE;gCACZ,OAAO,CAAC,KAAK,CAAC,YAAY,IAAI,CAAC,IAAI,WAAW,CAAC,eAAe,KAAK,CAAC,IAAI,0BAA0B,CAAC,CAAC;gCACpG,SAAS;6BACZ;4BACD,iCAAiC;4BACjC,MAAM,cAAc,GAAG,SAAS,CAAC,IAAI,CAAC;4BACtC,IAAI,IAAI,GAAQ,cAAc,CAAC;4BAC/B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gCACtD,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;6BAC9D;4BACD,IAAI,KAAK;gCAAE,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;4BAC5D,IAAI,CAAC,IAAI,EAAE;gCACP,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;gCAC5I,SAAS;6BACZ;4BACD,2CAA2C;4BAC3C,IAAI,OAAO,YAAY,QAAQ,IAAI,OAAO,CAAC,yBAAyB,EAAE;gCAClE,IAAI,CAAC,OAAO,CAAC,0BAA0B;oCAAE,OAAO,CAAC,mCAAmC,EAAE,CAAC;gCACvF,iEAAiE;gCACjE,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,KAAK;oCAAE,OAAO,CAAC,yBAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gCAC9F,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,yBAAyB,CAAC,KAAK,CAAC;6BAC3D;4BACD,sEAAsE;4BACtE,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gCAChB,OAAO,CAAC,KAAK,GAAG,IAAI,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gCACvD,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;6BACjE;4BACD,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BACzB,iDAAiD;4BACjD,+FAA+F;4BAC/F,8FAA8F;4BAC9F,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;4BAClC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,KAAkC,EAAE,IAAI,CAAC,CAAC;4BACxE,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,wDAAwD;4BAC3G,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;4BACjC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;yBAClC;wBACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;qBACvC;iBACJ;aACJ;iBACI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE;gBAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;oBAAE,SAAS;gBACtD,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC7C,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACtB,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;gBACpB,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,YAAY,WAAW,CAAgB,CAAC;gBAErF,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC9B,IAAI,CAAC,aAAa,EAAE;oBAChB,0EAA0E;oBAC1E,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,UAAU,CAAC,YAAY,CAAC,aAAa,CAAE,CAAC;iBAC7F;gBACD,KAAK,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;gBACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACzC,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACjC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;iBAC7B;aACJ;iBACI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBAE7C,IAAI,KAAK,CAAC,OAAO,EAAE;oBACf,2IAA2I;oBAC3I,MAAM,aAAa,GAA8B,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBACjF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;oBAC9B,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC;oBAE5B,MAAM,aAAa,GAA8B,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;oBACjF,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC;oBAC9B,aAAa,CAAC,KAAK,GAAG,KAAK,CAAC;oBAE5B,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE;wBAChC,QAAQ,MAAM,CAAC,IAAI,EAAE;4BACjB,KAAK,MAAM,CAAC,UAAU,CAAC,MAAM;gCACzB,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,MAAkC,CAAC,CAAC;gCAC9D,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gCACrC,MAAM;4BACV;gCACI,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gCAClC,MAAM;yBACb;qBACJ;oBAED,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC3D,MAAM,GAAG,GAAG,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;wBACrE,IAAI,GAAG,EAAE;4BACL,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BAClC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;yBAC1C;qBACJ;oBAED,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC3D,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;qBAC1C;iBACJ;aAEJ;iBACI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE;gBAC7C,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;gBAChD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACxB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;gBACtB,IAAI,KAAK,CAAC,OAAO,EAAE;oBACf,KAAK,MAAM,MAAM,IAAI,KAAK,CAAC,OAAO,EAAE;wBAChC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAkC,CAAC,CAAC;wBACxD,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;qBAClC;iBACJ;gBACD,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE;oBAC/B,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,KAAuB,CAAC,CAAC;iBACnD;gBACD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACpC;iBACI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE;gBAC9C,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,mBAAmB,EAAE,CAAC;gBACjD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACxB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;gBACtB,IAAI,KAAK,CAAC,KAAK,EAAE;oBACb,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE;wBAC5B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;qBAC7B;iBACJ;gBACD,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3C,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aACrC;SACJ;IACL,CAAC;IAEO,0BAA0B,CAAC,KAAc;QAC7C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,YAAY,EAAE;YACnC,KAAK,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;SACpC;IACL,CAAC;IAID,yFAAyF;IAChF,0BAA0B,GAAkC,EAAE,CAAC;IACxE,iGAAiG;IACjG,yBAAyB,CAAC,QAAqC,IAAI,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IACpH,oGAAoG;IACpG,2BAA2B,CAAC,QAAqC;QAC7D,MAAM,KAAK,GAAG,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAChE,IAAI,KAAK,KAAK,CAAC,CAAC;YAAE,OAAO;QACzB,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;;AA7qBD;IADC,YAAY,EAAE;qDACO;AAOtB;IADC,YAAY,EAAE;2DAC6C"}
1
+ {"version":3,"file":"PlayableDirector.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/PlayableDirector.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { AnimationClip, Object3D, Quaternion, Vector3 } from "three";
2
2
  /**
3
3
  * @category Animation and Sequencing
4
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
4
5
  */
5
6
  export declare type TimelineAssetModel = {
6
7
  name: string;
@@ -8,6 +9,8 @@ export declare type TimelineAssetModel = {
8
9
  };
9
10
  /**
10
11
  * @category Animation and Sequencing
12
+ * @see {@link TimelineAssetModel} for the data structure of a timeline asset, which can be played using the PlayableDirector component.
13
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
11
14
  */
12
15
  export declare enum TrackType {
13
16
  Activation = "ActivationTrack",
@@ -19,6 +22,8 @@ export declare enum TrackType {
19
22
  }
20
23
  /**
21
24
  * @category Animation and Sequencing
25
+ * @see {@link TimelineAssetModel} for the data structure of a timeline asset, which can be played using the PlayableDirector component.
26
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
22
27
  */
23
28
  export declare enum ClipExtrapolation {
24
29
  None = 0,
@@ -29,6 +34,7 @@ export declare enum ClipExtrapolation {
29
34
  }
30
35
  /**
31
36
  * @category Animation and Sequencing
37
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
32
38
  */
33
39
  export declare type TrackModel = {
34
40
  name: string;
@@ -53,6 +59,7 @@ declare type Quat = {
53
59
  };
54
60
  /**
55
61
  * @category Animation and Sequencing
62
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
56
63
  */
57
64
  export declare type TrackOffset = {
58
65
  position: Vec3 | Vector3;
@@ -60,6 +67,7 @@ export declare type TrackOffset = {
60
67
  };
61
68
  /**
62
69
  * @category Animation and Sequencing
70
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
63
71
  */
64
72
  export declare type ClipModel = {
65
73
  start: number;
@@ -76,6 +84,7 @@ export declare type ClipModel = {
76
84
  };
77
85
  /**
78
86
  * @category Animation and Sequencing
87
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
79
88
  */
80
89
  export declare type AnimationClipModel = {
81
90
  clip: string | number | AnimationClip;
@@ -87,6 +96,7 @@ export declare type AnimationClipModel = {
87
96
  };
88
97
  /**
89
98
  * @category Animation and Sequencing
99
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
90
100
  */
91
101
  export declare type AudioClipModel = {
92
102
  clip: string;
@@ -95,6 +105,7 @@ export declare type AudioClipModel = {
95
105
  };
96
106
  /**
97
107
  * @category Animation and Sequencing
108
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
98
109
  */
99
110
  export declare type ControlClipModel = {
100
111
  sourceObject: string | Object3D;
@@ -106,12 +117,14 @@ export declare enum MarkerType {
106
117
  }
107
118
  /**
108
119
  * @category Animation and Sequencing
120
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
109
121
  */ export declare class MarkerModel {
110
122
  type: MarkerType;
111
123
  time: number;
112
124
  }
113
125
  /**
114
126
  * @category Animation and Sequencing
127
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
115
128
  */
116
129
  export declare class SignalMarkerModel extends MarkerModel {
117
130
  retroActive: boolean;
@@ -128,6 +141,7 @@ export declare class SignalMarkerModel extends MarkerModel {
128
141
  *
129
142
  * @link [Example Project using ScrollMarker](https://scrollytelling-bike-z23hmxb2gnu5a.needle.run/)
130
143
  * @category Animation and Sequencing
144
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
131
145
  */
132
146
  export type ScrollMarkerModel = MarkerModel & {
133
147
  name?: string;
@@ -1,5 +1,7 @@
1
1
  /**
2
2
  * @category Animation and Sequencing
3
+ * @see {@link TimelineAssetModel} for the data structure of a timeline asset, which can be played using the PlayableDirector component.
4
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
3
5
  */
4
6
  export var TrackType;
5
7
  (function (TrackType) {
@@ -12,6 +14,8 @@ export var TrackType;
12
14
  })(TrackType || (TrackType = {}));
13
15
  /**
14
16
  * @category Animation and Sequencing
17
+ * @see {@link TimelineAssetModel} for the data structure of a timeline asset, which can be played using the PlayableDirector component.
18
+ * @see {@link PlayableDirector} for the main component to control timelines in Needle Engine.
15
19
  */
16
20
  export var ClipExtrapolation;
17
21
  (function (ClipExtrapolation) {
@@ -1 +1 @@
1
- {"version":3,"file":"TimelineModels.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/TimelineModels.ts"],"names":[],"mappings":"AAUA;;GAEG;AACH,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,2CAA8B,CAAA;IAC9B,yCAA4B,CAAA;IAC5B,iCAAoB,CAAA;IACpB,qCAAwB,CAAA;IACxB,mCAAsB,CAAA;IACtB,mCAAsB,CAAA;AAC1B,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IACzB,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,iEAAY,CAAA;IACZ,iEAAY,CAAA;AAChB,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B;AAAA,CAAC;AA0EF,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,sCAAwB,CAAA;AAC5B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
1
+ {"version":3,"file":"TimelineModels.js","sourceRoot":"","sources":["../../../src/engine-components/timeline/TimelineModels.ts"],"names":[],"mappings":"AAaA;;;;GAIG;AACH,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACjB,2CAA8B,CAAA;IAC9B,yCAA4B,CAAA;IAC5B,iCAAoB,CAAA;IACpB,qCAAwB,CAAA;IACxB,mCAAsB,CAAA;IACtB,mCAAsB,CAAA;AAC1B,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB;AAED;;;;GAIG;AACH,MAAM,CAAN,IAAY,iBAMX;AAND,WAAY,iBAAiB;IACzB,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,yDAAQ,CAAA;IACR,iEAAY,CAAA;IACZ,iEAAY,CAAA;AAChB,CAAC,EANW,iBAAiB,KAAjB,iBAAiB,QAM5B;AAAA,CAAC;AAgFF,MAAM,CAAN,IAAY,UAEX;AAFD,WAAY,UAAU;IAClB,sCAAwB,CAAA;AAC5B,CAAC,EAFW,UAAU,KAAV,UAAU,QAErB"}
@@ -26,12 +26,38 @@ declare class AnimationTriggers {
26
26
  selectedTrigger: string;
27
27
  }
28
28
  /**
29
- * Button is a UI component that can be clicked by the user to perform an action.
30
- * It supports different visual states such as normal, highlighted, pressed, and disabled.
31
- * You can customize the button's appearance using colors or animations for each state.
29
+ * [Button](https://engine.needle.tools/docs/api/Button) is a UI component that can be clicked to trigger actions.
30
+ * Supports visual states (normal, highlighted, pressed, disabled) with
31
+ * color tints or animation transitions.
32
+ *
33
+ * **Visual transitions:**
34
+ * - `ColorTint` - Tint the button image with state colors
35
+ * - `Animation` - Trigger animator states for each button state
36
+ * - `SpriteSwap` - Swap sprites for each state (not fully supported)
37
+ *
38
+ * **Requirements:**
39
+ * - Typically paired with an {@link Image} component for visuals or any 3D object
40
+ *
41
+ * @example Listen to button clicks
42
+ * ```ts
43
+ * const button = myButton.getComponent(Button);
44
+ * button.onClick.addEventListener(() => {
45
+ * console.log("Button clicked!");
46
+ * });
47
+ * ```
48
+ *
49
+ * @example Programmatically click a button
50
+ * ```ts
51
+ * button.click(); // Triggers onClick event
52
+ * ```
53
+ *
32
54
  * @summary UI Button that can be clicked to perform actions
33
55
  * @category User Interface
34
56
  * @group Components
57
+ * @see {@link EventList} for onClick callback handling
58
+ * @see {@link Image} for button visuals
59
+ * @see {@link GraphicRaycaster} for UI interaction
60
+ * @see {@link Transition} for visual state options
35
61
  */
36
62
  export declare class Button extends Behaviour implements IPointerEventHandler {
37
63
  /**
@@ -76,12 +76,38 @@ class AnimationTriggers {
76
76
  selectedTrigger;
77
77
  }
78
78
  /**
79
- * Button is a UI component that can be clicked by the user to perform an action.
80
- * It supports different visual states such as normal, highlighted, pressed, and disabled.
81
- * You can customize the button's appearance using colors or animations for each state.
79
+ * [Button](https://engine.needle.tools/docs/api/Button) is a UI component that can be clicked to trigger actions.
80
+ * Supports visual states (normal, highlighted, pressed, disabled) with
81
+ * color tints or animation transitions.
82
+ *
83
+ * **Visual transitions:**
84
+ * - `ColorTint` - Tint the button image with state colors
85
+ * - `Animation` - Trigger animator states for each button state
86
+ * - `SpriteSwap` - Swap sprites for each state (not fully supported)
87
+ *
88
+ * **Requirements:**
89
+ * - Typically paired with an {@link Image} component for visuals or any 3D object
90
+ *
91
+ * @example Listen to button clicks
92
+ * ```ts
93
+ * const button = myButton.getComponent(Button);
94
+ * button.onClick.addEventListener(() => {
95
+ * console.log("Button clicked!");
96
+ * });
97
+ * ```
98
+ *
99
+ * @example Programmatically click a button
100
+ * ```ts
101
+ * button.click(); // Triggers onClick event
102
+ * ```
103
+ *
82
104
  * @summary UI Button that can be clicked to perform actions
83
105
  * @category User Interface
84
106
  * @group Components
107
+ * @see {@link EventList} for onClick callback handling
108
+ * @see {@link Image} for button visuals
109
+ * @see {@link GraphicRaycaster} for UI interaction
110
+ * @see {@link Transition} for visual state options
85
111
  */
86
112
  export class Button extends Behaviour {
87
113
  /**