@needle-tools/engine 4.11.5-next.d9019e4 → 4.11.5-next.dedc70b

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 (367) hide show
  1. package/components.needle.json +1 -1
  2. package/custom-elements.json +436 -0
  3. package/dist/{needle-engine.bundle-GILPT50v.min.js → needle-engine.bundle-CJlEyOBM.min.js} +4 -4
  4. package/dist/{needle-engine.bundle-DbRanrPL.umd.cjs → needle-engine.bundle-DgiVW9bH.umd.cjs} +6 -6
  5. package/dist/{needle-engine.bundle-D4DKOVeW.js → needle-engine.bundle-F4gDjlNg.js} +60 -14
  6. package/dist/needle-engine.d.ts +18154 -1
  7. package/dist/needle-engine.js +2 -2
  8. package/dist/needle-engine.min.js +1 -1
  9. package/dist/needle-engine.umd.cjs +1 -1
  10. package/lib/engine/api.d.ts +0 -1
  11. package/lib/engine/api.js +0 -1
  12. package/lib/engine/api.js.map +1 -1
  13. package/lib/engine/engine_texture.d.ts +1 -1
  14. package/lib/engine/engine_tonemapping.d.ts +1 -1
  15. package/lib/engine/webcomponents/logo-element.d.ts +11 -0
  16. package/lib/engine/webcomponents/logo-element.js +6 -0
  17. package/lib/engine/webcomponents/logo-element.js.map +1 -1
  18. package/lib/engine/webcomponents/needle menu/needle-menu.d.ts +24 -3
  19. package/lib/engine/webcomponents/needle menu/needle-menu.js +18 -3
  20. package/lib/engine/webcomponents/needle menu/needle-menu.js.map +1 -1
  21. package/lib/engine/webcomponents/needle-button.d.ts +5 -0
  22. package/lib/engine/webcomponents/needle-button.js.map +1 -1
  23. package/lib/engine/webcomponents/needle-engine.d.ts +209 -8
  24. package/lib/engine/webcomponents/needle-engine.js +91 -13
  25. package/lib/engine/webcomponents/needle-engine.js.map +1 -1
  26. package/lib/engine-components/AlignmentConstraint.d.ts +9 -0
  27. package/lib/engine-components/AlignmentConstraint.js +9 -0
  28. package/lib/engine-components/AlignmentConstraint.js.map +1 -1
  29. package/lib/engine-components/Animator.d.ts +1 -0
  30. package/lib/engine-components/Animator.js.map +1 -1
  31. package/lib/engine-components/AudioListener.d.ts +2 -0
  32. package/lib/engine-components/AudioListener.js +2 -0
  33. package/lib/engine-components/AudioListener.js.map +1 -1
  34. package/lib/engine-components/AudioSource.d.ts +1 -0
  35. package/lib/engine-components/AudioSource.js +1 -0
  36. package/lib/engine-components/AudioSource.js.map +1 -1
  37. package/lib/engine-components/AxesHelper.d.ts +2 -0
  38. package/lib/engine-components/AxesHelper.js +2 -0
  39. package/lib/engine-components/AxesHelper.js.map +1 -1
  40. package/lib/engine-components/Camera.d.ts +1 -0
  41. package/lib/engine-components/Camera.js +1 -0
  42. package/lib/engine-components/Camera.js.map +1 -1
  43. package/lib/engine-components/CharacterController.d.ts +4 -1
  44. package/lib/engine-components/CharacterController.js +4 -1
  45. package/lib/engine-components/CharacterController.js.map +1 -1
  46. package/lib/engine-components/DeleteBox.d.ts +2 -0
  47. package/lib/engine-components/DeleteBox.js +2 -0
  48. package/lib/engine-components/DeleteBox.js.map +1 -1
  49. package/lib/engine-components/DeviceFlag.d.ts +4 -0
  50. package/lib/engine-components/DeviceFlag.js +4 -0
  51. package/lib/engine-components/DeviceFlag.js.map +1 -1
  52. package/lib/engine-components/DragControls.d.ts +1 -0
  53. package/lib/engine-components/DragControls.js +1 -0
  54. package/lib/engine-components/DragControls.js.map +1 -1
  55. package/lib/engine-components/DropListener.d.ts +1 -0
  56. package/lib/engine-components/DropListener.js +1 -0
  57. package/lib/engine-components/DropListener.js.map +1 -1
  58. package/lib/engine-components/Duplicatable.d.ts +1 -0
  59. package/lib/engine-components/Duplicatable.js +1 -0
  60. package/lib/engine-components/Duplicatable.js.map +1 -1
  61. package/lib/engine-components/EventTrigger.d.ts +2 -0
  62. package/lib/engine-components/EventTrigger.js +2 -0
  63. package/lib/engine-components/EventTrigger.js.map +1 -1
  64. package/lib/engine-components/GridHelper.d.ts +2 -0
  65. package/lib/engine-components/GridHelper.js +2 -0
  66. package/lib/engine-components/GridHelper.js.map +1 -1
  67. package/lib/engine-components/GroundProjection.d.ts +1 -0
  68. package/lib/engine-components/GroundProjection.js +1 -0
  69. package/lib/engine-components/GroundProjection.js.map +1 -1
  70. package/lib/engine-components/LODGroup.d.ts +2 -0
  71. package/lib/engine-components/LODGroup.js +2 -0
  72. package/lib/engine-components/LODGroup.js.map +1 -1
  73. package/lib/engine-components/Light.d.ts +1 -0
  74. package/lib/engine-components/Light.js +1 -0
  75. package/lib/engine-components/Light.js.map +1 -1
  76. package/lib/engine-components/LookAtConstraint.d.ts +1 -0
  77. package/lib/engine-components/LookAtConstraint.js +1 -0
  78. package/lib/engine-components/LookAtConstraint.js.map +1 -1
  79. package/lib/engine-components/NeedleMenu.d.ts +1 -0
  80. package/lib/engine-components/NeedleMenu.js +1 -0
  81. package/lib/engine-components/NeedleMenu.js.map +1 -1
  82. package/lib/engine-components/NestedGltf.d.ts +1 -0
  83. package/lib/engine-components/NestedGltf.js +1 -0
  84. package/lib/engine-components/NestedGltf.js.map +1 -1
  85. package/lib/engine-components/Networking.d.ts +1 -0
  86. package/lib/engine-components/Networking.js +1 -0
  87. package/lib/engine-components/Networking.js.map +1 -1
  88. package/lib/engine-components/OffsetConstraint.d.ts +7 -0
  89. package/lib/engine-components/OffsetConstraint.js +7 -0
  90. package/lib/engine-components/OffsetConstraint.js.map +1 -1
  91. package/lib/engine-components/OrbitControls.d.ts +1 -0
  92. package/lib/engine-components/OrbitControls.js +1 -0
  93. package/lib/engine-components/OrbitControls.js.map +1 -1
  94. package/lib/engine-components/PlayerColor.d.ts +2 -0
  95. package/lib/engine-components/PlayerColor.js +2 -0
  96. package/lib/engine-components/PlayerColor.js.map +1 -1
  97. package/lib/engine-components/ReflectionProbe.d.ts +1 -0
  98. package/lib/engine-components/ReflectionProbe.js +1 -0
  99. package/lib/engine-components/ReflectionProbe.js.map +1 -1
  100. package/lib/engine-components/RigidBody.d.ts +1 -0
  101. package/lib/engine-components/RigidBody.js +1 -0
  102. package/lib/engine-components/RigidBody.js.map +1 -1
  103. package/lib/engine-components/SceneSwitcher.d.ts +1 -0
  104. package/lib/engine-components/SceneSwitcher.js +1 -0
  105. package/lib/engine-components/SceneSwitcher.js.map +1 -1
  106. package/lib/engine-components/ScreenCapture.d.ts +1 -0
  107. package/lib/engine-components/ScreenCapture.js +1 -0
  108. package/lib/engine-components/ScreenCapture.js.map +1 -1
  109. package/lib/engine-components/SeeThrough.d.ts +1 -0
  110. package/lib/engine-components/SeeThrough.js +1 -0
  111. package/lib/engine-components/SeeThrough.js.map +1 -1
  112. package/lib/engine-components/ShadowCatcher.d.ts +2 -0
  113. package/lib/engine-components/ShadowCatcher.js +2 -0
  114. package/lib/engine-components/ShadowCatcher.js.map +1 -1
  115. package/lib/engine-components/Skybox.d.ts +1 -0
  116. package/lib/engine-components/Skybox.js +1 -0
  117. package/lib/engine-components/Skybox.js.map +1 -1
  118. package/lib/engine-components/SmoothFollow.d.ts +1 -0
  119. package/lib/engine-components/SmoothFollow.js +1 -0
  120. package/lib/engine-components/SmoothFollow.js.map +1 -1
  121. package/lib/engine-components/SpatialTrigger.d.ts +1 -0
  122. package/lib/engine-components/SpatialTrigger.js +1 -0
  123. package/lib/engine-components/SpatialTrigger.js.map +1 -1
  124. package/lib/engine-components/SpectatorCamera.d.ts +1 -0
  125. package/lib/engine-components/SpectatorCamera.js +1 -0
  126. package/lib/engine-components/SpectatorCamera.js.map +1 -1
  127. package/lib/engine-components/SpriteRenderer.d.ts +1 -0
  128. package/lib/engine-components/SpriteRenderer.js +1 -0
  129. package/lib/engine-components/SpriteRenderer.js.map +1 -1
  130. package/lib/engine-components/SyncedCamera.d.ts +2 -0
  131. package/lib/engine-components/SyncedCamera.js +2 -0
  132. package/lib/engine-components/SyncedCamera.js.map +1 -1
  133. package/lib/engine-components/SyncedRoom.d.ts +1 -0
  134. package/lib/engine-components/SyncedRoom.js +1 -0
  135. package/lib/engine-components/SyncedRoom.js.map +1 -1
  136. package/lib/engine-components/SyncedTransform.d.ts +2 -0
  137. package/lib/engine-components/SyncedTransform.js +2 -0
  138. package/lib/engine-components/SyncedTransform.js.map +1 -1
  139. package/lib/engine-components/TransformGizmo.d.ts +2 -0
  140. package/lib/engine-components/TransformGizmo.js +2 -0
  141. package/lib/engine-components/TransformGizmo.js.map +1 -1
  142. package/lib/engine-components/VideoPlayer.d.ts +1 -0
  143. package/lib/engine-components/VideoPlayer.js +1 -0
  144. package/lib/engine-components/VideoPlayer.js.map +1 -1
  145. package/lib/engine-components/Voip.d.ts +1 -0
  146. package/lib/engine-components/Voip.js +1 -0
  147. package/lib/engine-components/Voip.js.map +1 -1
  148. package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.d.ts +18 -0
  149. package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js +18 -0
  150. package/lib/engine-components/export/usdz/extensions/behavior/BehaviourComponents.js.map +1 -1
  151. package/lib/engine-components/particlesystem/ParticleSystem.d.ts +1 -0
  152. package/lib/engine-components/particlesystem/ParticleSystem.js +1 -0
  153. package/lib/engine-components/particlesystem/ParticleSystem.js.map +1 -1
  154. package/lib/engine-components/physics/Attractor.d.ts +3 -0
  155. package/lib/engine-components/physics/Attractor.js +3 -0
  156. package/lib/engine-components/physics/Attractor.js.map +1 -1
  157. package/lib/engine-components/postprocessing/Effects/BloomEffect.d.ts +1 -0
  158. package/lib/engine-components/postprocessing/Effects/BloomEffect.js +1 -0
  159. package/lib/engine-components/postprocessing/Effects/BloomEffect.js.map +1 -1
  160. package/lib/engine-components/postprocessing/Effects/ChromaticAberration.d.ts +4 -0
  161. package/lib/engine-components/postprocessing/Effects/ChromaticAberration.js +4 -0
  162. package/lib/engine-components/postprocessing/Effects/ChromaticAberration.js.map +1 -1
  163. package/lib/engine-components/postprocessing/Effects/ColorAdjustments.d.ts +3 -0
  164. package/lib/engine-components/postprocessing/Effects/ColorAdjustments.js +3 -0
  165. package/lib/engine-components/postprocessing/Effects/ColorAdjustments.js.map +1 -1
  166. package/lib/engine-components/postprocessing/Effects/DepthOfField.d.ts +4 -0
  167. package/lib/engine-components/postprocessing/Effects/DepthOfField.js +4 -0
  168. package/lib/engine-components/postprocessing/Effects/DepthOfField.js.map +1 -1
  169. package/lib/engine-components/postprocessing/Effects/EffectWrapper.d.ts +1 -0
  170. package/lib/engine-components/postprocessing/Effects/EffectWrapper.js +1 -0
  171. package/lib/engine-components/postprocessing/Effects/EffectWrapper.js.map +1 -1
  172. package/lib/engine-components/postprocessing/Effects/Pixelation.d.ts +3 -0
  173. package/lib/engine-components/postprocessing/Effects/Pixelation.js +3 -0
  174. package/lib/engine-components/postprocessing/Effects/Pixelation.js.map +1 -1
  175. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.d.ts +4 -0
  176. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.js +4 -0
  177. package/lib/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.js.map +1 -1
  178. package/lib/engine-components/postprocessing/Effects/Sharpening.d.ts +4 -0
  179. package/lib/engine-components/postprocessing/Effects/Sharpening.js +4 -0
  180. package/lib/engine-components/postprocessing/Effects/Sharpening.js.map +1 -1
  181. package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.d.ts +4 -0
  182. package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.js +4 -0
  183. package/lib/engine-components/postprocessing/Effects/TiltShiftEffect.js.map +1 -1
  184. package/lib/engine-components/postprocessing/Effects/Tonemapping.d.ts +4 -0
  185. package/lib/engine-components/postprocessing/Effects/Tonemapping.js +4 -0
  186. package/lib/engine-components/postprocessing/Effects/Tonemapping.js.map +1 -1
  187. package/lib/engine-components/postprocessing/Effects/Vignette.d.ts +4 -0
  188. package/lib/engine-components/postprocessing/Effects/Vignette.js +4 -0
  189. package/lib/engine-components/postprocessing/Effects/Vignette.js.map +1 -1
  190. package/lib/engine-components/postprocessing/Volume.d.ts +1 -0
  191. package/lib/engine-components/postprocessing/Volume.js +1 -0
  192. package/lib/engine-components/postprocessing/Volume.js.map +1 -1
  193. package/lib/engine-components/splines/Spline.d.ts +1 -0
  194. package/lib/engine-components/splines/Spline.js +1 -0
  195. package/lib/engine-components/splines/Spline.js.map +1 -1
  196. package/lib/engine-components/splines/SplineWalker.d.ts +1 -0
  197. package/lib/engine-components/splines/SplineWalker.js +1 -0
  198. package/lib/engine-components/splines/SplineWalker.js.map +1 -1
  199. package/lib/engine-components/timeline/PlayableDirector.d.ts +1 -0
  200. package/lib/engine-components/timeline/PlayableDirector.js +1 -0
  201. package/lib/engine-components/timeline/PlayableDirector.js.map +1 -1
  202. package/lib/engine-components/timeline/SignalAsset.d.ts +1 -0
  203. package/lib/engine-components/timeline/SignalAsset.js +1 -0
  204. package/lib/engine-components/timeline/SignalAsset.js.map +1 -1
  205. package/lib/engine-components/ui/Button.d.ts +4 -0
  206. package/lib/engine-components/ui/Button.js +4 -0
  207. package/lib/engine-components/ui/Button.js.map +1 -1
  208. package/lib/engine-components/ui/Canvas.d.ts +5 -0
  209. package/lib/engine-components/ui/Canvas.js +5 -0
  210. package/lib/engine-components/ui/Canvas.js.map +1 -1
  211. package/lib/engine-components/ui/CanvasGroup.d.ts +4 -0
  212. package/lib/engine-components/ui/CanvasGroup.js +4 -0
  213. package/lib/engine-components/ui/CanvasGroup.js.map +1 -1
  214. package/lib/engine-components/ui/EventSystem.d.ts +2 -0
  215. package/lib/engine-components/ui/EventSystem.js +2 -0
  216. package/lib/engine-components/ui/EventSystem.js.map +1 -1
  217. package/lib/engine-components/ui/Image.d.ts +4 -0
  218. package/lib/engine-components/ui/Image.js +4 -0
  219. package/lib/engine-components/ui/Image.js.map +1 -1
  220. package/lib/engine-components/ui/InputField.d.ts +4 -0
  221. package/lib/engine-components/ui/InputField.js +4 -0
  222. package/lib/engine-components/ui/InputField.js.map +1 -1
  223. package/lib/engine-components/ui/Outline.d.ts +7 -0
  224. package/lib/engine-components/ui/Outline.js +7 -0
  225. package/lib/engine-components/ui/Outline.js.map +1 -1
  226. package/lib/engine-components/ui/Text.d.ts +1 -0
  227. package/lib/engine-components/ui/Text.js +1 -0
  228. package/lib/engine-components/ui/Text.js.map +1 -1
  229. package/lib/engine-components/utils/LookAt.d.ts +1 -0
  230. package/lib/engine-components/utils/LookAt.js +1 -0
  231. package/lib/engine-components/utils/LookAt.js.map +1 -1
  232. package/lib/engine-components/web/Clickthrough.d.ts +1 -1
  233. package/lib/engine-components/web/Clickthrough.js +1 -1
  234. package/lib/engine-components/web/CursorFollow.d.ts +1 -0
  235. package/lib/engine-components/web/CursorFollow.js +1 -0
  236. package/lib/engine-components/web/CursorFollow.js.map +1 -1
  237. package/lib/engine-components/web/HoverAnimation.d.ts +1 -0
  238. package/lib/engine-components/web/HoverAnimation.js +1 -0
  239. package/lib/engine-components/web/HoverAnimation.js.map +1 -1
  240. package/lib/engine-components/web/ScrollFollow.d.ts +2 -0
  241. package/lib/engine-components/web/ScrollFollow.js +2 -0
  242. package/lib/engine-components/web/ScrollFollow.js.map +1 -1
  243. package/lib/engine-components/web/ViewBox.d.ts +1 -0
  244. package/lib/engine-components/web/ViewBox.js +1 -0
  245. package/lib/engine-components/web/ViewBox.js.map +1 -1
  246. package/lib/engine-components/webxr/Avatar.d.ts +5 -0
  247. package/lib/engine-components/webxr/Avatar.js +5 -0
  248. package/lib/engine-components/webxr/Avatar.js.map +1 -1
  249. package/lib/engine-components/webxr/WebARCameraBackground.d.ts +1 -0
  250. package/lib/engine-components/webxr/WebARCameraBackground.js +1 -0
  251. package/lib/engine-components/webxr/WebARCameraBackground.js.map +1 -1
  252. package/lib/engine-components/webxr/WebARSessionRoot.d.ts +1 -0
  253. package/lib/engine-components/webxr/WebARSessionRoot.js +1 -0
  254. package/lib/engine-components/webxr/WebARSessionRoot.js.map +1 -1
  255. package/lib/engine-components/webxr/WebXR.d.ts +1 -1
  256. package/lib/engine-components/webxr/WebXR.js +1 -1
  257. package/lib/engine-components/webxr/controllers/XRControllerFollow.d.ts +1 -0
  258. package/lib/engine-components/webxr/controllers/XRControllerFollow.js +1 -0
  259. package/lib/engine-components/webxr/controllers/XRControllerFollow.js.map +1 -1
  260. package/lib/engine-components/webxr/controllers/XRControllerModel.d.ts +4 -0
  261. package/lib/engine-components/webxr/controllers/XRControllerModel.js +4 -0
  262. package/lib/engine-components/webxr/controllers/XRControllerModel.js.map +1 -1
  263. package/lib/engine-components/webxr/controllers/XRControllerMovement.d.ts +1 -0
  264. package/lib/engine-components/webxr/controllers/XRControllerMovement.js +1 -0
  265. package/lib/engine-components/webxr/controllers/XRControllerMovement.js.map +1 -1
  266. package/lib/engine-components-experimental/networking/PlayerSync.d.ts +2 -0
  267. package/lib/engine-components-experimental/networking/PlayerSync.js +2 -0
  268. package/lib/engine-components-experimental/networking/PlayerSync.js.map +1 -1
  269. package/package.json +19 -12
  270. package/plugins/types/needleConfig.d.ts +1 -1
  271. package/plugins/types/next.d.ts +1 -1
  272. package/plugins/types/userconfig.d.ts +4 -1
  273. package/plugins/vite/custom-element-data.js +80 -0
  274. package/plugins/vite/index.js +4 -0
  275. package/src/engine/api.ts +0 -1
  276. package/src/engine/engine_texture.ts +1 -1
  277. package/src/engine/engine_tonemapping.ts +1 -1
  278. package/src/engine/webcomponents/logo-element.ts +12 -0
  279. package/src/engine/webcomponents/needle menu/needle-menu.ts +24 -3
  280. package/src/engine/webcomponents/needle-button.ts +6 -0
  281. package/src/engine/webcomponents/needle-engine.ts +317 -22
  282. package/src/engine-components/AlignmentConstraint.ts +9 -0
  283. package/src/engine-components/Animator.ts +1 -0
  284. package/src/engine-components/AudioListener.ts +2 -0
  285. package/src/engine-components/AudioSource.ts +1 -0
  286. package/src/engine-components/AxesHelper.ts +2 -0
  287. package/src/engine-components/Camera.ts +1 -0
  288. package/src/engine-components/CharacterController.ts +4 -1
  289. package/src/engine-components/DeleteBox.ts +2 -0
  290. package/src/engine-components/DeviceFlag.ts +4 -0
  291. package/src/engine-components/DragControls.ts +1 -0
  292. package/src/engine-components/DropListener.ts +1 -0
  293. package/src/engine-components/Duplicatable.ts +1 -0
  294. package/src/engine-components/EventTrigger.ts +2 -0
  295. package/src/engine-components/GridHelper.ts +2 -0
  296. package/src/engine-components/GroundProjection.ts +1 -0
  297. package/src/engine-components/LODGroup.ts +2 -0
  298. package/src/engine-components/Light.ts +1 -0
  299. package/src/engine-components/LookAtConstraint.ts +1 -0
  300. package/src/engine-components/NeedleMenu.ts +1 -0
  301. package/src/engine-components/NestedGltf.ts +1 -0
  302. package/src/engine-components/Networking.ts +1 -0
  303. package/src/engine-components/OffsetConstraint.ts +7 -0
  304. package/src/engine-components/OrbitControls.ts +1 -0
  305. package/src/engine-components/PlayerColor.ts +2 -0
  306. package/src/engine-components/ReflectionProbe.ts +1 -0
  307. package/src/engine-components/RigidBody.ts +1 -0
  308. package/src/engine-components/SceneSwitcher.ts +1 -0
  309. package/src/engine-components/ScreenCapture.ts +1 -0
  310. package/src/engine-components/SeeThrough.ts +1 -0
  311. package/src/engine-components/ShadowCatcher.ts +2 -0
  312. package/src/engine-components/Skybox.ts +1 -0
  313. package/src/engine-components/SmoothFollow.ts +1 -0
  314. package/src/engine-components/SpatialTrigger.ts +1 -0
  315. package/src/engine-components/SpectatorCamera.ts +1 -0
  316. package/src/engine-components/SpriteRenderer.ts +1 -0
  317. package/src/engine-components/SyncedCamera.ts +2 -0
  318. package/src/engine-components/SyncedRoom.ts +1 -0
  319. package/src/engine-components/SyncedTransform.ts +2 -0
  320. package/src/engine-components/TransformGizmo.ts +2 -0
  321. package/src/engine-components/VideoPlayer.ts +1 -0
  322. package/src/engine-components/Voip.ts +1 -0
  323. package/src/engine-components/export/usdz/extensions/behavior/BehaviourComponents.ts +18 -0
  324. package/src/engine-components/particlesystem/ParticleSystem.ts +1 -0
  325. package/src/engine-components/physics/Attractor.ts +3 -0
  326. package/src/engine-components/postprocessing/Effects/BloomEffect.ts +1 -0
  327. package/src/engine-components/postprocessing/Effects/ChromaticAberration.ts +4 -0
  328. package/src/engine-components/postprocessing/Effects/ColorAdjustments.ts +3 -0
  329. package/src/engine-components/postprocessing/Effects/DepthOfField.ts +4 -0
  330. package/src/engine-components/postprocessing/Effects/EffectWrapper.ts +1 -0
  331. package/src/engine-components/postprocessing/Effects/Pixelation.ts +3 -0
  332. package/src/engine-components/postprocessing/Effects/ScreenspaceAmbientOcclusionN8.ts +4 -0
  333. package/src/engine-components/postprocessing/Effects/Sharpening.ts +4 -0
  334. package/src/engine-components/postprocessing/Effects/TiltShiftEffect.ts +4 -0
  335. package/src/engine-components/postprocessing/Effects/Tonemapping.ts +4 -0
  336. package/src/engine-components/postprocessing/Effects/Vignette.ts +4 -0
  337. package/src/engine-components/postprocessing/Volume.ts +1 -0
  338. package/src/engine-components/splines/Spline.ts +1 -0
  339. package/src/engine-components/splines/SplineWalker.ts +1 -0
  340. package/src/engine-components/timeline/PlayableDirector.ts +1 -0
  341. package/src/engine-components/timeline/SignalAsset.ts +1 -0
  342. package/src/engine-components/ui/Button.ts +4 -0
  343. package/src/engine-components/ui/Canvas.ts +5 -0
  344. package/src/engine-components/ui/CanvasGroup.ts +4 -0
  345. package/src/engine-components/ui/EventSystem.ts +2 -0
  346. package/src/engine-components/ui/Image.ts +4 -0
  347. package/src/engine-components/ui/InputField.ts +4 -0
  348. package/src/engine-components/ui/Outline.ts +7 -0
  349. package/src/engine-components/ui/Text.ts +1 -0
  350. package/src/engine-components/utils/LookAt.ts +1 -0
  351. package/src/engine-components/web/Clickthrough.ts +1 -1
  352. package/src/engine-components/web/CursorFollow.ts +1 -0
  353. package/src/engine-components/web/HoverAnimation.ts +1 -0
  354. package/src/engine-components/web/ScrollFollow.ts +2 -0
  355. package/src/engine-components/web/ViewBox.ts +1 -0
  356. package/src/engine-components/webxr/Avatar.ts +5 -0
  357. package/src/engine-components/webxr/WebARCameraBackground.ts +1 -0
  358. package/src/engine-components/webxr/WebARSessionRoot.ts +1 -0
  359. package/src/engine-components/webxr/WebXR.ts +1 -1
  360. package/src/engine-components/webxr/controllers/XRControllerFollow.ts +1 -0
  361. package/src/engine-components/webxr/controllers/XRControllerModel.ts +4 -0
  362. package/src/engine-components/webxr/controllers/XRControllerMovement.ts +1 -0
  363. package/src/engine-components-experimental/networking/PlayerSync.ts +2 -0
  364. package/lib/engine/webcomponents/needle-engine.attributes.d.ts +0 -70
  365. package/lib/engine/webcomponents/needle-engine.attributes.js +0 -2
  366. package/lib/engine/webcomponents/needle-engine.attributes.js.map +0 -1
  367. package/src/engine/webcomponents/needle-engine.attributes.ts +0 -85
@@ -0,0 +1,436 @@
1
+ {
2
+ "version": 1.1,
3
+ "tags": [
4
+ {
5
+ "name": "needle-logo-element",
6
+ "description": "Needle logo web component used in the hosting UI (small, compact logo or full)\n\nProperties:\n\n\n * `wrapper` {`HTMLDivElement`} - \n\n * `logoElement` {`HTMLImageElement`} - \n\n![Needle Engine Logo](data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDEwIiB3aWR0aD0iMTgiIGhlaWdodD0iMTAiPgoJPGRlZnM+CgkJPGxpbmVhckdyYWRpZW50IGlkPSJnMSIgeDI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KC4wNDUsLTguNjgsMS4xMzUsLjAwNiw5LjU0OSw5Ljg0NCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM2MmQzOTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiNhY2Q4NDIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iI2Q3ZGIwYSIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNkN2RiMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzIiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4wODUsLTguNjM2LDEuMTI0LC0wLjAxMSw4LjQ4Niw5LjUyOSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMwYmEzOTgiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iIzRjYTM1MiIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM3NmEzMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzMiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4xMDEsLTMuNjIxLDEuMDI4LC0wLjAyOSw2LjcyNCw4LjEwNSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuMTkiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTQiIHN0b3AtY29sb3I9IiM0OWE0NTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzZhMzBiIi8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc0IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjExNiwtMy4zMjMsMS45MTgsLjA2Nyw1LjYxNyw4LjE2MikiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMyNjc4ODAiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiM0NTdhNWMiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzE3NTE2Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc1IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjczOCwtMy44MzMsMS4xMDEsLjIxMiwxMS45Nyw3LjIxNCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNiMGQ5MzkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZWFkYjA0Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc2IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMS4zOTMsLTMuNDQ4LDEuODU3LC43NSwxMC40OTYsNi44MjYpIj4KCQkJPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjE3IiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjQ4IiBzdG9wLWNvbG9yPSIjOTliZTMyIi8+CgkJCTxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI2MwYzQwYSIvPgoJCTwvbGluZWFyR3JhZGllbnQ+Cgk8L2RlZnM+Cgk8c3R5bGU+CgkJLnMwIHsgZmlsbDogdXJsKCNnMSkgfSAKCQkuczEgeyBmaWxsOiB1cmwoI2cyKSB9IAoJCS5zMiB7IGZpbGw6IHVybCgjZzMpIH0gCgkJLnMzIHsgZmlsbDogdXJsKCNnNCkgfSAKCQkuczQgeyBmaWxsOiAjOTljYzMzIH0gCgkJLnM1IHsgZmlsbDogdXJsKCNnNSkgfSAKCQkuczYgeyBmaWxsOiB1cmwoI2c2KSB9IAoJCS5zNyB7IGZpbGw6ICNmZmUxMTMgfSAKCQkuczggeyBmaWxsOiAjZjNlNjAwIH0gCgk8L3N0eWxlPgoJPGc+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMCIgZD0ibTkgMS45N3Y4LjAzbDAuODMtMC43IDAuMzYtOC4zM3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMSIgZD0ibTkgMS45NywtMS4xOS0xIDAuMzUgOC4zMyAwLjg0IDAuN3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMiIgZD0ibTYuMTIgNS41OGwwLjQ2IDIuNjIgMC42Ni0wLjgtMC4xMy0zLjAxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InMzIiBkPSJtNi4xMiA1LjU4bC0xLjM1LTAuNzcgMC45MSAyLjg3IDAuOSAwLjUyeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM0IiBkPSJtNy4xMSA0LjM5bC0xLjM0LTAuNzctMSAxLjE5IDEuMzUgMC43N3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzNSIgZD0ibTExLjk2IDQuMTlsLTAuNTQgMy4wMSAwLjgzLTAuNDggMS4wNS0zLjMxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM2IiBkPSJtMTEuOTYgNC4xOWwtMS0xLjE5LTAuMTUgMy40NiAwLjYxIDAuNzR6Ii8+CgkJPC9nPgoJCTxnPgoJCQk8cGF0aCBjbGFzcz0iczciIGQ9Im0xMy4zIDMuNDFsLTEtMS4xOC0xLjM0IDAuNzcgMSAxLjE5eiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM4IiBkPSJtMTAuMTkgMC45N2wtMS4xOS0wLjk3LTEuMTkgMC45NyAxLjE5IDF6Ii8+CgkJPC9nPgoJPC9nPgo8L3N2Zz4=) _Needle Engine_",
7
+ "attributes": [],
8
+ "references": [
9
+ {
10
+ "name": "Needle Engine reference",
11
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
12
+ }
13
+ ]
14
+ },
15
+ {
16
+ "name": "needle-menu",
17
+ "description": "`<needle-menu>` web component — lightweight menu used by Needle Engine.\n\nThis element is intended as an internal UI primitive for hosting application\nmenus and buttons. Use the higher-level `NeedleMenu` API from the engine\ncode to manipulate it programmatically. Public DOM-facing methods are\ndocumented (appendChild / append / prepend / setPosition / setVisible).\n\nProperties:\n\n\n\n\n\n * `logoIsVisible` {`boolean`} - \n\n\n\n\n * `hasAnyContent` {`boolean`} - \n\n * `hasAnyVisibleOptions` {`boolean`} - \n\n\n\n * `handleSizeChange` - \n\n * `root` {`HTMLDivElement`} - \n\n * `wrapper` {`HTMLDivElement`} - \n\n * `options` {`HTMLDivElement`} - \n\n * `logoContainer` {`HTMLDivElement`} - \n\n * `compactMenuButton` {`HTMLButtonElement`} - \n\n * `foldout` {`HTMLDivElement`} - \n\n![Needle Engine Logo](data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDEwIiB3aWR0aD0iMTgiIGhlaWdodD0iMTAiPgoJPGRlZnM+CgkJPGxpbmVhckdyYWRpZW50IGlkPSJnMSIgeDI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KC4wNDUsLTguNjgsMS4xMzUsLjAwNiw5LjU0OSw5Ljg0NCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM2MmQzOTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiNhY2Q4NDIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iI2Q3ZGIwYSIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNkN2RiMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzIiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4wODUsLTguNjM2LDEuMTI0LC0wLjAxMSw4LjQ4Niw5LjUyOSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMwYmEzOTgiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iIzRjYTM1MiIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM3NmEzMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzMiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4xMDEsLTMuNjIxLDEuMDI4LC0wLjAyOSw2LjcyNCw4LjEwNSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuMTkiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTQiIHN0b3AtY29sb3I9IiM0OWE0NTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzZhMzBiIi8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc0IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjExNiwtMy4zMjMsMS45MTgsLjA2Nyw1LjYxNyw4LjE2MikiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMyNjc4ODAiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiM0NTdhNWMiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzE3NTE2Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc1IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjczOCwtMy44MzMsMS4xMDEsLjIxMiwxMS45Nyw3LjIxNCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNiMGQ5MzkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZWFkYjA0Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc2IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMS4zOTMsLTMuNDQ4LDEuODU3LC43NSwxMC40OTYsNi44MjYpIj4KCQkJPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjE3IiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjQ4IiBzdG9wLWNvbG9yPSIjOTliZTMyIi8+CgkJCTxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI2MwYzQwYSIvPgoJCTwvbGluZWFyR3JhZGllbnQ+Cgk8L2RlZnM+Cgk8c3R5bGU+CgkJLnMwIHsgZmlsbDogdXJsKCNnMSkgfSAKCQkuczEgeyBmaWxsOiB1cmwoI2cyKSB9IAoJCS5zMiB7IGZpbGw6IHVybCgjZzMpIH0gCgkJLnMzIHsgZmlsbDogdXJsKCNnNCkgfSAKCQkuczQgeyBmaWxsOiAjOTljYzMzIH0gCgkJLnM1IHsgZmlsbDogdXJsKCNnNSkgfSAKCQkuczYgeyBmaWxsOiB1cmwoI2c2KSB9IAoJCS5zNyB7IGZpbGw6ICNmZmUxMTMgfSAKCQkuczggeyBmaWxsOiAjZjNlNjAwIH0gCgk8L3N0eWxlPgoJPGc+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMCIgZD0ibTkgMS45N3Y4LjAzbDAuODMtMC43IDAuMzYtOC4zM3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMSIgZD0ibTkgMS45NywtMS4xOS0xIDAuMzUgOC4zMyAwLjg0IDAuN3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMiIgZD0ibTYuMTIgNS41OGwwLjQ2IDIuNjIgMC42Ni0wLjgtMC4xMy0zLjAxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InMzIiBkPSJtNi4xMiA1LjU4bC0xLjM1LTAuNzcgMC45MSAyLjg3IDAuOSAwLjUyeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM0IiBkPSJtNy4xMSA0LjM5bC0xLjM0LTAuNzctMSAxLjE5IDEuMzUgMC43N3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzNSIgZD0ibTExLjk2IDQuMTlsLTAuNTQgMy4wMSAwLjgzLTAuNDggMS4wNS0zLjMxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM2IiBkPSJtMTEuOTYgNC4xOWwtMS0xLjE5LTAuMTUgMy40NiAwLjYxIDAuNzR6Ii8+CgkJPC9nPgoJCTxnPgoJCQk8cGF0aCBjbGFzcz0iczciIGQ9Im0xMy4zIDMuNDFsLTEtMS4xOC0xLjM0IDAuNzcgMSAxLjE5eiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM4IiBkPSJtMTAuMTkgMC45N2wtMS4xOS0wLjk3LTEuMTkgMC45NyAxLjE5IDF6Ii8+CgkJPC9nPgoJPC9nPgo8L3N2Zz4=) _Needle Engine_",
18
+ "attributes": [],
19
+ "references": [
20
+ {
21
+ "name": "Needle Engine reference",
22
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
23
+ }
24
+ ]
25
+ },
26
+ {
27
+ "name": "needle-button",
28
+ "description": "A <needle-button> can be used to simply add VR, AR or Quicklook buttons to your website without having to write any code.\n\nAttributes:\n\n * `ar` - Create an AR button\n\n * `vr` - Create a VR button\n\n * `quicklook` - Create a QuickLook button for iOS\n\n * `unstyled` - When present, the component won't add its default styles\n\nProperties:\n\n * `observedAttributes` {`string[]`} - \n\n![Needle Engine Logo](data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDEwIiB3aWR0aD0iMTgiIGhlaWdodD0iMTAiPgoJPGRlZnM+CgkJPGxpbmVhckdyYWRpZW50IGlkPSJnMSIgeDI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KC4wNDUsLTguNjgsMS4xMzUsLjAwNiw5LjU0OSw5Ljg0NCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM2MmQzOTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiNhY2Q4NDIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iI2Q3ZGIwYSIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNkN2RiMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzIiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4wODUsLTguNjM2LDEuMTI0LC0wLjAxMSw4LjQ4Niw5LjUyOSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMwYmEzOTgiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iIzRjYTM1MiIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM3NmEzMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzMiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4xMDEsLTMuNjIxLDEuMDI4LC0wLjAyOSw2LjcyNCw4LjEwNSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuMTkiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTQiIHN0b3AtY29sb3I9IiM0OWE0NTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzZhMzBiIi8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc0IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjExNiwtMy4zMjMsMS45MTgsLjA2Nyw1LjYxNyw4LjE2MikiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMyNjc4ODAiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiM0NTdhNWMiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzE3NTE2Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc1IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjczOCwtMy44MzMsMS4xMDEsLjIxMiwxMS45Nyw3LjIxNCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNiMGQ5MzkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZWFkYjA0Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc2IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMS4zOTMsLTMuNDQ4LDEuODU3LC43NSwxMC40OTYsNi44MjYpIj4KCQkJPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjE3IiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjQ4IiBzdG9wLWNvbG9yPSIjOTliZTMyIi8+CgkJCTxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI2MwYzQwYSIvPgoJCTwvbGluZWFyR3JhZGllbnQ+Cgk8L2RlZnM+Cgk8c3R5bGU+CgkJLnMwIHsgZmlsbDogdXJsKCNnMSkgfSAKCQkuczEgeyBmaWxsOiB1cmwoI2cyKSB9IAoJCS5zMiB7IGZpbGw6IHVybCgjZzMpIH0gCgkJLnMzIHsgZmlsbDogdXJsKCNnNCkgfSAKCQkuczQgeyBmaWxsOiAjOTljYzMzIH0gCgkJLnM1IHsgZmlsbDogdXJsKCNnNSkgfSAKCQkuczYgeyBmaWxsOiB1cmwoI2c2KSB9IAoJCS5zNyB7IGZpbGw6ICNmZmUxMTMgfSAKCQkuczggeyBmaWxsOiAjZjNlNjAwIH0gCgk8L3N0eWxlPgoJPGc+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMCIgZD0ibTkgMS45N3Y4LjAzbDAuODMtMC43IDAuMzYtOC4zM3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMSIgZD0ibTkgMS45NywtMS4xOS0xIDAuMzUgOC4zMyAwLjg0IDAuN3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMiIgZD0ibTYuMTIgNS41OGwwLjQ2IDIuNjIgMC42Ni0wLjgtMC4xMy0zLjAxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InMzIiBkPSJtNi4xMiA1LjU4bC0xLjM1LTAuNzcgMC45MSAyLjg3IDAuOSAwLjUyeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM0IiBkPSJtNy4xMSA0LjM5bC0xLjM0LTAuNzctMSAxLjE5IDEuMzUgMC43N3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzNSIgZD0ibTExLjk2IDQuMTlsLTAuNTQgMy4wMSAwLjgzLTAuNDggMS4wNS0zLjMxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM2IiBkPSJtMTEuOTYgNC4xOWwtMS0xLjE5LTAuMTUgMy40NiAwLjYxIDAuNzR6Ii8+CgkJPC9nPgoJCTxnPgoJCQk8cGF0aCBjbGFzcz0iczciIGQ9Im0xMy4zIDMuNDFsLTEtMS4xOC0xLjM0IDAuNzcgMSAxLjE5eiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM4IiBkPSJtMTAuMTkgMC45N2wtMS4xOS0wLjk3LTEuMTkgMC45NyAxLjE5IDF6Ii8+CgkJPC9nPgoJPC9nPgo8L3N2Zz4=) _Needle Engine_",
29
+ "attributes": [
30
+ {
31
+ "name": "ar",
32
+ "description": "Create an AR button\n\n",
33
+ "references": [
34
+ {
35
+ "name": "Needle Engine reference",
36
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
37
+ }
38
+ ]
39
+ },
40
+ {
41
+ "name": "vr",
42
+ "description": "Create a VR button\n\n",
43
+ "references": [
44
+ {
45
+ "name": "Needle Engine reference",
46
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
47
+ }
48
+ ]
49
+ },
50
+ {
51
+ "name": "quicklook",
52
+ "description": "Create a QuickLook button for iOS\n\n",
53
+ "references": [
54
+ {
55
+ "name": "Needle Engine reference",
56
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
57
+ }
58
+ ]
59
+ },
60
+ {
61
+ "name": "unstyled",
62
+ "description": "When present, the component won't add its default styles\n\n",
63
+ "references": [
64
+ {
65
+ "name": "Needle Engine reference",
66
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
67
+ }
68
+ ]
69
+ }
70
+ ],
71
+ "references": [
72
+ {
73
+ "name": "Needle Engine reference",
74
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
75
+ }
76
+ ]
77
+ },
78
+ {
79
+ "name": "needle-engine",
80
+ "description": "The <needle-engine> web component creates and manages a Needle Engine context for rendering a 3D scene using threejs. The context is created when the `src` attribute is set and disposed when the element is removed from the DOM; set the `keep-alive` attribute to `true` to prevent cleanup. The context is accessible as `document.querySelector('needle-engine').context`. See https://engine.needle.tools/docs/reference/needle-engine-attributes\n\n![Needle Engine Logo](data:image/svg+xml;base64,PHN2ZyB2ZXJzaW9uPSIxLjIiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4IDEwIiB3aWR0aD0iMTgiIGhlaWdodD0iMTAiPgoJPGRlZnM+CgkJPGxpbmVhckdyYWRpZW50IGlkPSJnMSIgeDI9IjEiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KC4wNDUsLTguNjgsMS4xMzUsLjAwNiw5LjU0OSw5Ljg0NCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiM2MmQzOTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiNhY2Q4NDIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuOSIgc3RvcC1jb2xvcj0iI2Q3ZGIwYSIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNkN2RiMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzIiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4wODUsLTguNjM2LDEuMTI0LC0wLjAxMSw4LjQ4Niw5LjUyOSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMwYmEzOTgiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNSIgc3RvcC1jb2xvcj0iIzRjYTM1MiIvPgoJCQk8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiM3NmEzMGEiLz4KCQk8L2xpbmVhckdyYWRpZW50PgoJCTxsaW5lYXJHcmFkaWVudCBpZD0iZzMiIHgyPSIxIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgtMC4xMDEsLTMuNjIxLDEuMDI4LC0wLjAyOSw2LjcyNCw4LjEwNSkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuMTkiIHN0b3AtY29sb3I9IiMzNmEzODIiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTQiIHN0b3AtY29sb3I9IiM0OWE0NTkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzZhMzBiIi8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc0IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjExNiwtMy4zMjMsMS45MTgsLjA2Nyw1LjYxNyw4LjE2MikiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiMyNjc4ODAiLz4KCQkJPHN0b3Agb2Zmc2V0PSIuNTEiIHN0b3AtY29sb3I9IiM0NTdhNWMiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjNzE3NTE2Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc1IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLjczOCwtMy44MzMsMS4xMDEsLjIxMiwxMS45Nyw3LjIxNCkiPgoJCQk8c3RvcCBvZmZzZXQ9IjAiIHN0b3AtY29sb3I9IiNiMGQ5MzkiLz4KCQkJPHN0b3Agb2Zmc2V0PSIxIiBzdG9wLWNvbG9yPSIjZWFkYjA0Ii8+CgkJPC9saW5lYXJHcmFkaWVudD4KCQk8bGluZWFyR3JhZGllbnQgaWQ9Imc2IiB4Mj0iMSIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMS4zOTMsLTMuNDQ4LDEuODU3LC43NSwxMC40OTYsNi44MjYpIj4KCQkJPHN0b3Agb2Zmc2V0PSIwIiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjE3IiBzdG9wLWNvbG9yPSIjNzRhZjUyIi8+CgkJCTxzdG9wIG9mZnNldD0iLjQ4IiBzdG9wLWNvbG9yPSIjOTliZTMyIi8+CgkJCTxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iI2MwYzQwYSIvPgoJCTwvbGluZWFyR3JhZGllbnQ+Cgk8L2RlZnM+Cgk8c3R5bGU+CgkJLnMwIHsgZmlsbDogdXJsKCNnMSkgfSAKCQkuczEgeyBmaWxsOiB1cmwoI2cyKSB9IAoJCS5zMiB7IGZpbGw6IHVybCgjZzMpIH0gCgkJLnMzIHsgZmlsbDogdXJsKCNnNCkgfSAKCQkuczQgeyBmaWxsOiAjOTljYzMzIH0gCgkJLnM1IHsgZmlsbDogdXJsKCNnNSkgfSAKCQkuczYgeyBmaWxsOiB1cmwoI2c2KSB9IAoJCS5zNyB7IGZpbGw6ICNmZmUxMTMgfSAKCQkuczggeyBmaWxsOiAjZjNlNjAwIH0gCgk8L3N0eWxlPgoJPGc+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMCIgZD0ibTkgMS45N3Y4LjAzbDAuODMtMC43IDAuMzYtOC4zM3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMSIgZD0ibTkgMS45NywtMS4xOS0xIDAuMzUgOC4zMyAwLjg0IDAuN3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzMiIgZD0ibTYuMTIgNS41OGwwLjQ2IDIuNjIgMC42Ni0wLjgtMC4xMy0zLjAxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InMzIiBkPSJtNi4xMiA1LjU4bC0xLjM1LTAuNzcgMC45MSAyLjg3IDAuOSAwLjUyeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM0IiBkPSJtNy4xMSA0LjM5bC0xLjM0LTAuNzctMSAxLjE5IDEuMzUgMC43N3oiLz4KCQk8L2c+CgkJPGc+CgkJCTxwYXRoIGNsYXNzPSJzNSIgZD0ibTExLjk2IDQuMTlsLTAuNTQgMy4wMSAwLjgzLTAuNDggMS4wNS0zLjMxeiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM2IiBkPSJtMTEuOTYgNC4xOWwtMS0xLjE5LTAuMTUgMy40NiAwLjYxIDAuNzR6Ii8+CgkJPC9nPgoJCTxnPgoJCQk8cGF0aCBjbGFzcz0iczciIGQ9Im0xMy4zIDMuNDFsLTEtMS4xOC0xLjM0IDAuNzcgMSAxLjE5eiIvPgoJCTwvZz4KCQk8Zz4KCQkJPHBhdGggY2xhc3M9InM4IiBkPSJtMTAuMTkgMC45N2wtMS4xOS0wLjk3LTEuMTkgMC45NyAxLjE5IDF6Ii8+CgkJPC9nPgoJPC9nPgo8L3N2Zz4=) _Needle Engine_",
81
+ "attributes": [
82
+ {
83
+ "name": "src",
84
+ "description": "src to one or multiple glb files to be loaded initially. Can be a URL or an array-like string\n\n",
85
+ "values": [
86
+ {
87
+ "name": " string[]"
88
+ }
89
+ ],
90
+ "references": [
91
+ {
92
+ "name": "Needle Engine reference",
93
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
94
+ }
95
+ ]
96
+ },
97
+ {
98
+ "name": "hash",
99
+ "description": "optional hash string applied to the context\n\n",
100
+ "references": [
101
+ {
102
+ "name": "Needle Engine reference",
103
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
104
+ }
105
+ ]
106
+ },
107
+ {
108
+ "name": "camera-controls",
109
+ "description": "Add/remove default camera controls (true/false/none)\n\n",
110
+ "values": [
111
+ {
112
+ "name": "true"
113
+ },
114
+ {
115
+ "name": "false"
116
+ },
117
+ {
118
+ "name": "none"
119
+ }
120
+ ],
121
+ "references": [
122
+ {
123
+ "name": "Needle Engine reference",
124
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
125
+ }
126
+ ]
127
+ },
128
+ {
129
+ "name": "dracoDecoderPath",
130
+ "description": "Override the draco decoder path\n\n",
131
+ "references": [
132
+ {
133
+ "name": "Needle Engine reference",
134
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
135
+ }
136
+ ]
137
+ },
138
+ {
139
+ "name": "dracoDecoderType",
140
+ "description": "Override the draco decoder type (wasm | js)\n\n",
141
+ "values": [
142
+ {
143
+ "name": "wasm"
144
+ },
145
+ {
146
+ "name": "js"
147
+ }
148
+ ],
149
+ "references": [
150
+ {
151
+ "name": "Needle Engine reference",
152
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
153
+ }
154
+ ]
155
+ },
156
+ {
157
+ "name": "ktx2DecoderPath",
158
+ "description": "Override the ktx2 decoder/transcoder path\n\n",
159
+ "references": [
160
+ {
161
+ "name": "Needle Engine reference",
162
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
163
+ }
164
+ ]
165
+ },
166
+ {
167
+ "name": "tone-mapping",
168
+ "description": "Tonemapping mode\n\n",
169
+ "values": [
170
+ {
171
+ "name": "none"
172
+ },
173
+ {
174
+ "name": "linear"
175
+ },
176
+ {
177
+ "name": "neutral"
178
+ },
179
+ {
180
+ "name": "agx"
181
+ }
182
+ ],
183
+ "references": [
184
+ {
185
+ "name": "Needle Engine reference",
186
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
187
+ }
188
+ ]
189
+ },
190
+ {
191
+ "name": "tone-mapping-exposure",
192
+ "description": "Exposure multiplier for tonemapping\n\n",
193
+ "references": [
194
+ {
195
+ "name": "Needle Engine reference",
196
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
197
+ }
198
+ ]
199
+ },
200
+ {
201
+ "name": "background-blurriness",
202
+ "description": "Blur strength for background image (0..1)\n\n",
203
+ "references": [
204
+ {
205
+ "name": "Needle Engine reference",
206
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
207
+ }
208
+ ]
209
+ },
210
+ {
211
+ "name": "background-color",
212
+ "description": "CSS color for background\n\n",
213
+ "references": [
214
+ {
215
+ "name": "Needle Engine reference",
216
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
217
+ }
218
+ ]
219
+ },
220
+ {
221
+ "name": "environment-intensity",
222
+ "description": "Intensity of environment lighting\n\n",
223
+ "references": [
224
+ {
225
+ "name": "Needle Engine reference",
226
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
227
+ }
228
+ ]
229
+ },
230
+ {
231
+ "name": "keep-alive",
232
+ "description": "Keep the context alive when element is removed\n\n",
233
+ "valueSet": "b",
234
+ "references": [
235
+ {
236
+ "name": "Needle Engine reference",
237
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
238
+ }
239
+ ]
240
+ },
241
+
242
+ {
243
+ "name": "background-image",
244
+ "description": "URL to an image (.exr, .hdr, .png, .jpg) used as the scene skybox/background",
245
+ "references": [
246
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
247
+ ]
248
+ },
249
+ {
250
+ "name": "environment-image",
251
+ "description": "URL to an image (.exr, .hdr, .png, .jpg) used for environment lighting",
252
+ "references": [
253
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
254
+ ]
255
+ },
256
+ {
257
+ "name": "background-intensity",
258
+ "description": "Intensity multiplier for the background image",
259
+ "references": [
260
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
261
+ ]
262
+ },
263
+ {
264
+ "name": "transparent",
265
+ "description": "If set, renders the canvas with transparent background",
266
+ "valueSet": "b",
267
+ "references": [
268
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
269
+ ]
270
+ },
271
+ {
272
+ "name": "contact-shadows",
273
+ "description": "Enable/disable contact shadows in the rendered scene",
274
+ "valueSet": "b",
275
+ "references": [
276
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
277
+ ]
278
+ },
279
+ {
280
+ "name": "focus-rect",
281
+ "description": "CSS selector or HTMLElement that defines a camera focus rectangle",
282
+ "references": [
283
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
284
+ ]
285
+ },
286
+ {
287
+ "name": "clickthrough",
288
+ "description": "Allow pointer events to pass through the renderer UI",
289
+ "valueSet": "b",
290
+ "references": [
291
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
292
+ ]
293
+ },
294
+ {
295
+ "name": "auto-fit",
296
+ "description": "If set, model is automatically fit into camera view on load",
297
+ "valueSet": "b",
298
+ "references": [
299
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
300
+ ]
301
+ },
302
+ {
303
+ "name": "auto-rotate",
304
+ "description": "Automatically rotates the model until user interaction",
305
+ "valueSet": "b",
306
+ "references": [
307
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
308
+ ]
309
+ },
310
+ {
311
+ "name": "autoplay",
312
+ "description": "Play animations automatically on scene load",
313
+ "valueSet": "b",
314
+ "references": [
315
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
316
+ ]
317
+ },
318
+ {
319
+ "name": "onloadstart",
320
+ "description": "Dispatched when loading begins. The event is cancelable — call `preventDefault()` to override the default loading UI. Detail contains { context, alias }.",
321
+ "references": [
322
+ {
323
+ "name": "Needle Engine reference",
324
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
325
+ }
326
+ ]
327
+ },
328
+ {
329
+ "name": "onprogress",
330
+ "description": "Dispatched repeatedly while loading; event detail: { context, name, progress, index, count, totalProgress01 }.",
331
+ "references": [
332
+ {
333
+ "name": "Needle Engine reference",
334
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
335
+ }
336
+ ]
337
+ },
338
+ {
339
+ "name": "onloadfinished",
340
+ "description": "Dispatched when loading finished. Event detail contains { context, src, loadedFiles }.",
341
+ "references": [
342
+ {
343
+ "name": "Needle Engine reference",
344
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
345
+ }
346
+ ]
347
+ },
348
+ {
349
+ "name": "onxr-session-ended",
350
+ "description": "Emitted when an XR session ends; detail includes { session, context, sessionMode }.",
351
+ "references": [
352
+ {
353
+ "name": "Needle Engine reference",
354
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
355
+ }
356
+ ]
357
+ },
358
+ {
359
+ "name": "onenter-ar",
360
+ "description": "Emitted on entering an AR session; detail includes { session, context, htmlContainer }.",
361
+ "references": [
362
+ {
363
+ "name": "Needle Engine reference",
364
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
365
+ }
366
+ ]
367
+ },
368
+ {
369
+ "name": "onexit-ar",
370
+ "description": "Emitted on exiting an AR session; detail includes { session, context, htmlContainer }.",
371
+ "references": [
372
+ {
373
+ "name": "Needle Engine reference",
374
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
375
+ }
376
+ ]
377
+ },
378
+ {
379
+ "name": "onenter-vr",
380
+ "description": "Emitted when entering a VR session; detail includes { session, context }.",
381
+ "references": [
382
+ {
383
+ "name": "Needle Engine reference",
384
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
385
+ }
386
+ ]
387
+ },
388
+ {
389
+ "name": "onexit-vr",
390
+ "description": "Emitted when exiting a VR session; detail includes { session, context }.",
391
+ "references": [
392
+ {
393
+ "name": "Needle Engine reference",
394
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
395
+ }
396
+ ]
397
+ }
398
+ ,
399
+ {
400
+ "name": "onready",
401
+ "description": "Emitted once the engine has rendered its first frame and is ready.",
402
+ "references": [
403
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
404
+ ]
405
+ },
406
+ {
407
+ "name": "onxr-session-started",
408
+ "description": "Emitted when an XR session has started; detail includes { session, context }.",
409
+ "references": [
410
+ { "name": "Needle Engine reference", "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html" }
411
+ ]
412
+ }
413
+ ],
414
+ "references": [
415
+ {
416
+ "name": "Needle Engine reference",
417
+ "url": "https://engine.needle.tools/docs/reference/needle-engine-attributes.html"
418
+ }
419
+ ]
420
+ }
421
+ ],
422
+ "globalAttributes": [],
423
+ "valueSets": [
424
+ {
425
+ "name": "b",
426
+ "values": [
427
+ {
428
+ "name": "true"
429
+ },
430
+ {
431
+ "name": "false"
432
+ }
433
+ ]
434
+ }
435
+ ]
436
+ }