@3driseai/3drise-viewer 0.1.28 → 0.1.29

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 (684) hide show
  1. package/dist/animationsV2/ClipPlayer.d.ts.map +1 -1
  2. package/dist/animationsV2/ClipPlayer.js +13 -9
  3. package/dist/animationsV2/ClipsRuntime.d.ts +44 -3
  4. package/dist/animationsV2/ClipsRuntime.d.ts.map +1 -1
  5. package/dist/animationsV2/ClipsRuntime.js +173 -55
  6. package/dist/animationsV2/appliers.d.ts.map +1 -1
  7. package/dist/animationsV2/appliers.js +21 -5
  8. package/dist/animationsV2/index.d.ts +1 -1
  9. package/dist/animationsV2/index.d.ts.map +1 -1
  10. package/dist/animationsV2/normalize.d.ts.map +1 -1
  11. package/dist/animationsV2/normalize.js +7 -3
  12. package/dist/animationsV2/sequenceUtils.d.ts +44 -6
  13. package/dist/animationsV2/sequenceUtils.d.ts.map +1 -1
  14. package/dist/animationsV2/sequenceUtils.js +58 -12
  15. package/dist/animationsV2/types.d.ts +22 -12
  16. package/dist/animationsV2/types.d.ts.map +1 -1
  17. package/dist/api/sceneHandle.d.ts +35 -1
  18. package/dist/api/sceneHandle.d.ts.map +1 -1
  19. package/dist/api/sceneHandle.js +88 -17
  20. package/dist/components/AdvancedGrid.d.ts +1 -5
  21. package/dist/components/AdvancedGrid.d.ts.map +1 -1
  22. package/dist/components/AdvancedGrid.js +6 -35
  23. package/dist/components/AnimatedObject.d.ts.map +1 -1
  24. package/dist/components/AnimatedObject.js +9 -4
  25. package/dist/components/ApollonianGrid.d.ts +1 -1
  26. package/dist/components/ApollonianGrid.d.ts.map +1 -1
  27. package/dist/components/ApollonianGrid.js +3 -28
  28. package/dist/components/ChladniGrid.d.ts +1 -1
  29. package/dist/components/ChladniGrid.d.ts.map +1 -1
  30. package/dist/components/ChladniGrid.js +6 -35
  31. package/dist/components/CircuitGrid.d.ts +1 -1
  32. package/dist/components/CircuitGrid.d.ts.map +1 -1
  33. package/dist/components/CircuitGrid.js +6 -34
  34. package/dist/components/ConformalGrid.d.ts +1 -1
  35. package/dist/components/ConformalGrid.d.ts.map +1 -1
  36. package/dist/components/ConformalGrid.js +3 -34
  37. package/dist/components/ContourGrid.d.ts +1 -1
  38. package/dist/components/ContourGrid.d.ts.map +1 -1
  39. package/dist/components/ContourGrid.js +6 -34
  40. package/dist/components/CustomPrimitive.js +1 -1
  41. package/dist/components/EnvironmentObject.d.ts.map +1 -1
  42. package/dist/components/EnvironmentObject.js +9 -7
  43. package/dist/components/FlowNetGrid.d.ts +1 -1
  44. package/dist/components/FlowNetGrid.d.ts.map +1 -1
  45. package/dist/components/FlowNetGrid.js +6 -34
  46. package/dist/components/FractalGrid.d.ts +1 -1
  47. package/dist/components/FractalGrid.d.ts.map +1 -1
  48. package/dist/components/FractalGrid.js +6 -37
  49. package/dist/components/Galaxy.d.ts.map +1 -1
  50. package/dist/components/Galaxy.js +9 -23
  51. package/dist/components/GirihGrid.d.ts +1 -1
  52. package/dist/components/GirihGrid.d.ts.map +1 -1
  53. package/dist/components/GirihGrid.js +6 -35
  54. package/dist/components/GravWaveGrid.d.ts +1 -1
  55. package/dist/components/GravWaveGrid.d.ts.map +1 -1
  56. package/dist/components/GravWaveGrid.js +6 -35
  57. package/dist/components/HexGrid.d.ts +1 -5
  58. package/dist/components/HexGrid.d.ts.map +1 -1
  59. package/dist/components/HexGrid.js +6 -36
  60. package/dist/components/HilbertGrid.d.ts +1 -1
  61. package/dist/components/HilbertGrid.d.ts.map +1 -1
  62. package/dist/components/HilbertGrid.js +3 -30
  63. package/dist/components/HyperbolicGrid.d.ts +1 -1
  64. package/dist/components/HyperbolicGrid.d.ts.map +1 -1
  65. package/dist/components/HyperbolicGrid.js +6 -34
  66. package/dist/components/LandObject.d.ts +9 -0
  67. package/dist/components/LandObject.d.ts.map +1 -0
  68. package/dist/components/LandObject.js +15 -0
  69. package/dist/components/LensingGrid.d.ts +1 -1
  70. package/dist/components/LensingGrid.d.ts.map +1 -1
  71. package/dist/components/LensingGrid.js +3 -29
  72. package/dist/components/LightsManager.d.ts.map +1 -1
  73. package/dist/components/LightsManager.js +8 -0
  74. package/dist/components/ModelBoundary.d.ts +2 -0
  75. package/dist/components/ModelBoundary.d.ts.map +1 -1
  76. package/dist/components/ModelBoundary.js +3 -0
  77. package/dist/components/ModelPrimitive.d.ts.map +1 -1
  78. package/dist/components/ModelPrimitive.js +6 -0
  79. package/dist/components/MoireGrid.d.ts +1 -1
  80. package/dist/components/MoireGrid.d.ts.map +1 -1
  81. package/dist/components/MoireGrid.js +6 -35
  82. package/dist/components/MoonDisc.d.ts +11 -0
  83. package/dist/components/MoonDisc.d.ts.map +1 -0
  84. package/dist/components/MoonDisc.js +128 -0
  85. package/dist/components/ObjectNode.d.ts.map +1 -1
  86. package/dist/components/ObjectNode.js +15 -4
  87. package/dist/components/ObjectsRenderer.d.ts.map +1 -1
  88. package/dist/components/ObjectsRenderer.js +7 -5
  89. package/dist/components/OceanBuilder.d.ts.map +1 -1
  90. package/dist/components/OceanBuilder.js +2 -0
  91. package/dist/components/ParastichyGrid.d.ts +1 -1
  92. package/dist/components/ParastichyGrid.d.ts.map +1 -1
  93. package/dist/components/ParastichyGrid.js +3 -30
  94. package/dist/components/PhyllotaxisGrid.d.ts +1 -1
  95. package/dist/components/PhyllotaxisGrid.d.ts.map +1 -1
  96. package/dist/components/PhyllotaxisGrid.js +3 -32
  97. package/dist/components/ProjectLoader.d.ts +5 -3
  98. package/dist/components/ProjectLoader.d.ts.map +1 -1
  99. package/dist/components/ProjectLoader.js +6 -3
  100. package/dist/components/QuasiGrid.d.ts +1 -1
  101. package/dist/components/QuasiGrid.d.ts.map +1 -1
  102. package/dist/components/QuasiGrid.js +6 -33
  103. package/dist/components/RadarGrid.d.ts +1 -1
  104. package/dist/components/RadarGrid.d.ts.map +1 -1
  105. package/dist/components/RadarGrid.js +6 -34
  106. package/dist/components/ReactionDiffusionGrid.d.ts +1 -1
  107. package/dist/components/ReactionDiffusionGrid.d.ts.map +1 -1
  108. package/dist/components/ReactionDiffusionGrid.js +6 -35
  109. package/dist/components/SceneBuilder.d.ts +25 -3
  110. package/dist/components/SceneBuilder.d.ts.map +1 -1
  111. package/dist/components/SceneBuilder.js +68 -38
  112. package/dist/components/SkyController.d.ts +25 -1
  113. package/dist/components/SkyController.d.ts.map +1 -1
  114. package/dist/components/SkyController.js +189 -130
  115. package/dist/components/SkyMesh.d.ts.map +1 -1
  116. package/dist/components/SkyMesh.js +26 -1
  117. package/dist/components/SkyStars.d.ts +11 -0
  118. package/dist/components/SkyStars.d.ts.map +1 -0
  119. package/dist/components/SkyStars.js +187 -0
  120. package/dist/components/SkySystem.d.ts +3 -3
  121. package/dist/components/SkySystem.d.ts.map +1 -1
  122. package/dist/components/SkySystem.js +8 -2
  123. package/dist/components/Sun.d.ts +15 -1
  124. package/dist/components/Sun.d.ts.map +1 -1
  125. package/dist/components/Sun.js +64 -3
  126. package/dist/components/SunLight.d.ts +6 -1
  127. package/dist/components/SunLight.d.ts.map +1 -1
  128. package/dist/components/SunLight.js +96 -44
  129. package/dist/components/TerrainBuilder.d.ts.map +1 -1
  130. package/dist/components/TerrainBuilder.js +2 -0
  131. package/dist/components/TextGenerator.d.ts +9 -0
  132. package/dist/components/TextGenerator.d.ts.map +1 -0
  133. package/dist/components/TextGenerator.js +29 -0
  134. package/dist/components/TruchetGrid.d.ts +1 -1
  135. package/dist/components/TruchetGrid.d.ts.map +1 -1
  136. package/dist/components/TruchetGrid.js +3 -30
  137. package/dist/components/VoronoiGrid.d.ts +1 -1
  138. package/dist/components/VoronoiGrid.d.ts.map +1 -1
  139. package/dist/components/VoronoiGrid.js +6 -33
  140. package/dist/components/WallpaperGrid.d.ts +1 -1
  141. package/dist/components/WallpaperGrid.d.ts.map +1 -1
  142. package/dist/components/WallpaperGrid.js +6 -35
  143. package/dist/components/environment/Rain.d.ts +15 -0
  144. package/dist/components/environment/Rain.d.ts.map +1 -0
  145. package/dist/components/environment/Rain.js +110 -0
  146. package/dist/components/environment/Rainbow.d.ts +20 -0
  147. package/dist/components/environment/Rainbow.d.ts.map +1 -0
  148. package/dist/components/environment/Rainbow.js +974 -0
  149. package/dist/components/environment/Sandstorm.d.ts +20 -0
  150. package/dist/components/environment/Sandstorm.d.ts.map +1 -0
  151. package/dist/components/environment/Sandstorm.js +776 -0
  152. package/dist/components/environment/Snow.d.ts +20 -0
  153. package/dist/components/environment/Snow.d.ts.map +1 -0
  154. package/dist/components/environment/Snow.js +609 -0
  155. package/dist/components/environment/Thunderstorm.d.ts +20 -0
  156. package/dist/components/environment/Thunderstorm.d.ts.map +1 -0
  157. package/dist/components/environment/Thunderstorm.js +731 -0
  158. package/dist/components/environment/Tornado.d.ts +20 -0
  159. package/dist/components/environment/Tornado.d.ts.map +1 -0
  160. package/dist/components/environment/Tornado.js +762 -0
  161. package/dist/components/environment/index.d.ts +13 -0
  162. package/dist/components/environment/index.d.ts.map +1 -0
  163. package/dist/components/environment/index.js +7 -0
  164. package/dist/components/index.d.ts +10 -10
  165. package/dist/components/index.d.ts.map +1 -1
  166. package/dist/components/index.js +8 -6
  167. package/dist/components/land/LandPatch.d.ts +15 -0
  168. package/dist/components/land/LandPatch.d.ts.map +1 -0
  169. package/dist/components/land/LandPatch.js +170 -0
  170. package/dist/components/land/index.d.ts +3 -0
  171. package/dist/components/land/index.d.ts.map +1 -0
  172. package/dist/components/land/index.js +1 -0
  173. package/dist/components/space/Earth.d.ts +16 -0
  174. package/dist/components/space/Earth.d.ts.map +1 -0
  175. package/dist/components/space/Earth.js +75 -0
  176. package/dist/components/space/ShootingStar.d.ts +21 -0
  177. package/dist/components/space/ShootingStar.d.ts.map +1 -0
  178. package/dist/components/space/ShootingStar.js +101 -0
  179. package/dist/components/space/ShootingStars.d.ts +16 -0
  180. package/dist/components/space/ShootingStars.d.ts.map +1 -0
  181. package/dist/components/space/ShootingStars.js +71 -0
  182. package/dist/components/space/SolarSystem.d.ts +16 -0
  183. package/dist/components/space/SolarSystem.d.ts.map +1 -0
  184. package/dist/components/space/SolarSystem.js +141 -0
  185. package/dist/components/space/Stars.d.ts +20 -0
  186. package/dist/components/space/Stars.d.ts.map +1 -0
  187. package/dist/components/space/Stars.js +160 -0
  188. package/dist/components/space/index.d.ts +11 -0
  189. package/dist/components/space/index.d.ts.map +1 -0
  190. package/dist/components/space/index.js +8 -0
  191. package/dist/components/terrain/TerrainSurface.d.ts.map +1 -1
  192. package/dist/components/terrain/TerrainSurface.js +27 -3
  193. package/dist/components/terrain/types.d.ts +5 -1
  194. package/dist/components/terrain/types.d.ts.map +1 -1
  195. package/dist/components/text/BurnAwayText.d.ts +15 -0
  196. package/dist/components/text/BurnAwayText.d.ts.map +1 -0
  197. package/dist/components/text/BurnAwayText.js +4 -0
  198. package/dist/components/text/ChalkboardText.d.ts +15 -0
  199. package/dist/components/text/ChalkboardText.d.ts.map +1 -0
  200. package/dist/components/text/ChalkboardText.js +4 -0
  201. package/dist/components/text/ConstellationText.d.ts +15 -0
  202. package/dist/components/text/ConstellationText.d.ts.map +1 -0
  203. package/dist/components/text/ConstellationText.js +4 -0
  204. package/dist/components/text/EmbroideryText.d.ts +15 -0
  205. package/dist/components/text/EmbroideryText.d.ts.map +1 -0
  206. package/dist/components/text/EmbroideryText.js +4 -0
  207. package/dist/components/text/FourierSketchText.d.ts +15 -0
  208. package/dist/components/text/FourierSketchText.d.ts.map +1 -0
  209. package/dist/components/text/FourierSketchText.js +4 -0
  210. package/dist/components/text/FrostGrowthText.d.ts +15 -0
  211. package/dist/components/text/FrostGrowthText.d.ts.map +1 -0
  212. package/dist/components/text/FrostGrowthText.js +4 -0
  213. package/dist/components/text/HandwritingText.d.ts +15 -0
  214. package/dist/components/text/HandwritingText.d.ts.map +1 -0
  215. package/dist/components/text/HandwritingText.js +4 -0
  216. package/dist/components/text/InkBleedText.d.ts +15 -0
  217. package/dist/components/text/InkBleedText.d.ts.map +1 -0
  218. package/dist/components/text/InkBleedText.js +4 -0
  219. package/dist/components/text/LightPaintingText.d.ts +15 -0
  220. package/dist/components/text/LightPaintingText.d.ts.map +1 -0
  221. package/dist/components/text/LightPaintingText.js +4 -0
  222. package/dist/components/text/LiquidMetalText.d.ts +15 -0
  223. package/dist/components/text/LiquidMetalText.d.ts.map +1 -0
  224. package/dist/components/text/LiquidMetalText.js +4 -0
  225. package/dist/components/text/NeonTubeText.d.ts +15 -0
  226. package/dist/components/text/NeonTubeText.d.ts.map +1 -0
  227. package/dist/components/text/NeonTubeText.js +4 -0
  228. package/dist/components/text/PlasmaDischargeText.d.ts +15 -0
  229. package/dist/components/text/PlasmaDischargeText.d.ts.map +1 -0
  230. package/dist/components/text/PlasmaDischargeText.js +4 -0
  231. package/dist/components/text/TextObjectView.d.ts +12 -0
  232. package/dist/components/text/TextObjectView.d.ts.map +1 -0
  233. package/dist/components/text/TextObjectView.js +11 -0
  234. package/dist/components/text/engine/fieldkit.d.ts +24 -0
  235. package/dist/components/text/engine/fieldkit.d.ts.map +1 -0
  236. package/dist/components/text/engine/fieldkit.js +201 -0
  237. package/dist/components/text/engine/glyphs.d.ts +19 -0
  238. package/dist/components/text/engine/glyphs.d.ts.map +1 -0
  239. package/dist/components/text/engine/glyphs.js +269 -0
  240. package/dist/components/text/engine/looks/burnAway.d.ts +144 -0
  241. package/dist/components/text/engine/looks/burnAway.d.ts.map +1 -0
  242. package/dist/components/text/engine/looks/burnAway.js +593 -0
  243. package/dist/components/text/engine/looks/chalkboard.d.ts +135 -0
  244. package/dist/components/text/engine/looks/chalkboard.d.ts.map +1 -0
  245. package/dist/components/text/engine/looks/chalkboard.js +426 -0
  246. package/dist/components/text/engine/looks/constellation.d.ts +111 -0
  247. package/dist/components/text/engine/looks/constellation.d.ts.map +1 -0
  248. package/dist/components/text/engine/looks/constellation.js +496 -0
  249. package/dist/components/text/engine/looks/embroidery.d.ts +165 -0
  250. package/dist/components/text/engine/looks/embroidery.d.ts.map +1 -0
  251. package/dist/components/text/engine/looks/embroidery.js +645 -0
  252. package/dist/components/text/engine/looks/frostGrowth.d.ts +109 -0
  253. package/dist/components/text/engine/looks/frostGrowth.d.ts.map +1 -0
  254. package/dist/components/text/engine/looks/frostGrowth.js +727 -0
  255. package/dist/components/text/engine/looks/index.d.ts +2 -0
  256. package/dist/components/text/engine/looks/index.d.ts.map +1 -0
  257. package/dist/components/text/engine/looks/index.js +48 -0
  258. package/dist/components/text/engine/looks/inkBleed.d.ts +103 -0
  259. package/dist/components/text/engine/looks/inkBleed.d.ts.map +1 -0
  260. package/dist/components/text/engine/looks/inkBleed.js +590 -0
  261. package/dist/components/text/engine/looks/lightPainting.d.ts +132 -0
  262. package/dist/components/text/engine/looks/lightPainting.d.ts.map +1 -0
  263. package/dist/components/text/engine/looks/lightPainting.js +567 -0
  264. package/dist/components/text/engine/looks/liquidMetal.d.ts +135 -0
  265. package/dist/components/text/engine/looks/liquidMetal.d.ts.map +1 -0
  266. package/dist/components/text/engine/looks/liquidMetal.js +655 -0
  267. package/dist/components/text/engine/looks/plasmaDischarge.d.ts +126 -0
  268. package/dist/components/text/engine/looks/plasmaDischarge.d.ts.map +1 -0
  269. package/dist/components/text/engine/looks/plasmaDischarge.js +763 -0
  270. package/dist/components/text/engine/methods.d.ts +19 -0
  271. package/dist/components/text/engine/methods.d.ts.map +1 -0
  272. package/dist/components/text/engine/methods.js +126 -0
  273. package/dist/components/text/engine/playback.d.ts +40 -0
  274. package/dist/components/text/engine/playback.d.ts.map +1 -0
  275. package/dist/components/text/engine/playback.js +114 -0
  276. package/dist/components/text/engine/ribbon.d.ts +58 -0
  277. package/dist/components/text/engine/ribbon.d.ts.map +1 -0
  278. package/dist/components/text/engine/ribbon.js +250 -0
  279. package/dist/components/text/engine/variants.d.ts +159 -0
  280. package/dist/components/text/engine/variants.d.ts.map +1 -0
  281. package/dist/components/text/engine/variants.js +378 -0
  282. package/dist/components/text/fonts/architects-daughter.outline.d.ts +3 -0
  283. package/dist/components/text/fonts/architects-daughter.outline.d.ts.map +1 -0
  284. package/dist/components/text/fonts/architects-daughter.outline.js +4 -0
  285. package/dist/components/text/fonts/architects-daughter.strokes.d.ts +3 -0
  286. package/dist/components/text/fonts/architects-daughter.strokes.d.ts.map +1 -0
  287. package/dist/components/text/fonts/architects-daughter.strokes.js +4 -0
  288. package/dist/components/text/fonts/caveat.outline.d.ts +3 -0
  289. package/dist/components/text/fonts/caveat.outline.d.ts.map +1 -0
  290. package/dist/components/text/fonts/caveat.outline.js +4 -0
  291. package/dist/components/text/fonts/caveat.strokes.d.ts +3 -0
  292. package/dist/components/text/fonts/caveat.strokes.d.ts.map +1 -0
  293. package/dist/components/text/fonts/caveat.strokes.js +4 -0
  294. package/dist/components/text/fonts/courgette.outline.d.ts +3 -0
  295. package/dist/components/text/fonts/courgette.outline.d.ts.map +1 -0
  296. package/dist/components/text/fonts/courgette.outline.js +4 -0
  297. package/dist/components/text/fonts/courgette.strokes.d.ts +3 -0
  298. package/dist/components/text/fonts/courgette.strokes.d.ts.map +1 -0
  299. package/dist/components/text/fonts/courgette.strokes.js +4 -0
  300. package/dist/components/text/fonts/dancing-script.outline.d.ts +3 -0
  301. package/dist/components/text/fonts/dancing-script.outline.d.ts.map +1 -0
  302. package/dist/components/text/fonts/dancing-script.outline.js +4 -0
  303. package/dist/components/text/fonts/dancing-script.strokes.d.ts +3 -0
  304. package/dist/components/text/fonts/dancing-script.strokes.d.ts.map +1 -0
  305. package/dist/components/text/fonts/dancing-script.strokes.js +4 -0
  306. package/dist/components/text/fonts/gochi-hand.outline.d.ts +3 -0
  307. package/dist/components/text/fonts/gochi-hand.outline.d.ts.map +1 -0
  308. package/dist/components/text/fonts/gochi-hand.outline.js +4 -0
  309. package/dist/components/text/fonts/gochi-hand.strokes.d.ts +3 -0
  310. package/dist/components/text/fonts/gochi-hand.strokes.d.ts.map +1 -0
  311. package/dist/components/text/fonts/gochi-hand.strokes.js +4 -0
  312. package/dist/components/text/fonts/handlee.outline.d.ts +3 -0
  313. package/dist/components/text/fonts/handlee.outline.d.ts.map +1 -0
  314. package/dist/components/text/fonts/handlee.outline.js +4 -0
  315. package/dist/components/text/fonts/handlee.strokes.d.ts +3 -0
  316. package/dist/components/text/fonts/handlee.strokes.d.ts.map +1 -0
  317. package/dist/components/text/fonts/handlee.strokes.js +4 -0
  318. package/dist/components/text/fonts/index.d.ts +5 -0
  319. package/dist/components/text/fonts/index.d.ts.map +1 -0
  320. package/dist/components/text/fonts/index.js +44 -0
  321. package/dist/components/text/fonts/indie-flower.outline.d.ts +3 -0
  322. package/dist/components/text/fonts/indie-flower.outline.d.ts.map +1 -0
  323. package/dist/components/text/fonts/indie-flower.outline.js +4 -0
  324. package/dist/components/text/fonts/indie-flower.strokes.d.ts +3 -0
  325. package/dist/components/text/fonts/indie-flower.strokes.d.ts.map +1 -0
  326. package/dist/components/text/fonts/indie-flower.strokes.js +4 -0
  327. package/dist/components/text/fonts/kalam.outline.d.ts +3 -0
  328. package/dist/components/text/fonts/kalam.outline.d.ts.map +1 -0
  329. package/dist/components/text/fonts/kalam.outline.js +4 -0
  330. package/dist/components/text/fonts/kalam.strokes.d.ts +3 -0
  331. package/dist/components/text/fonts/kalam.strokes.d.ts.map +1 -0
  332. package/dist/components/text/fonts/kalam.strokes.js +4 -0
  333. package/dist/components/text/fonts/kaushan-script.outline.d.ts +3 -0
  334. package/dist/components/text/fonts/kaushan-script.outline.d.ts.map +1 -0
  335. package/dist/components/text/fonts/kaushan-script.outline.js +4 -0
  336. package/dist/components/text/fonts/kaushan-script.strokes.d.ts +3 -0
  337. package/dist/components/text/fonts/kaushan-script.strokes.d.ts.map +1 -0
  338. package/dist/components/text/fonts/kaushan-script.strokes.js +4 -0
  339. package/dist/components/text/fonts/mynerve.outline.d.ts +3 -0
  340. package/dist/components/text/fonts/mynerve.outline.d.ts.map +1 -0
  341. package/dist/components/text/fonts/mynerve.outline.js +4 -0
  342. package/dist/components/text/fonts/mynerve.strokes.d.ts +3 -0
  343. package/dist/components/text/fonts/mynerve.strokes.d.ts.map +1 -0
  344. package/dist/components/text/fonts/mynerve.strokes.js +4 -0
  345. package/dist/components/text/fonts/nanum-pen-script.outline.d.ts +3 -0
  346. package/dist/components/text/fonts/nanum-pen-script.outline.d.ts.map +1 -0
  347. package/dist/components/text/fonts/nanum-pen-script.outline.js +4 -0
  348. package/dist/components/text/fonts/nanum-pen-script.strokes.d.ts +3 -0
  349. package/dist/components/text/fonts/nanum-pen-script.strokes.d.ts.map +1 -0
  350. package/dist/components/text/fonts/nanum-pen-script.strokes.js +4 -0
  351. package/dist/components/text/fonts/pacifico.outline.d.ts +3 -0
  352. package/dist/components/text/fonts/pacifico.outline.d.ts.map +1 -0
  353. package/dist/components/text/fonts/pacifico.outline.js +4 -0
  354. package/dist/components/text/fonts/pacifico.strokes.d.ts +3 -0
  355. package/dist/components/text/fonts/pacifico.strokes.d.ts.map +1 -0
  356. package/dist/components/text/fonts/pacifico.strokes.js +4 -0
  357. package/dist/components/text/fonts/patrick-hand.outline.d.ts +3 -0
  358. package/dist/components/text/fonts/patrick-hand.outline.d.ts.map +1 -0
  359. package/dist/components/text/fonts/patrick-hand.outline.js +4 -0
  360. package/dist/components/text/fonts/patrick-hand.strokes.d.ts +3 -0
  361. package/dist/components/text/fonts/patrick-hand.strokes.d.ts.map +1 -0
  362. package/dist/components/text/fonts/patrick-hand.strokes.js +4 -0
  363. package/dist/components/text/fonts/poppins.outline.d.ts +3 -0
  364. package/dist/components/text/fonts/poppins.outline.d.ts.map +1 -0
  365. package/dist/components/text/fonts/poppins.outline.js +4 -0
  366. package/dist/components/text/fonts/poppins.strokes.d.ts +3 -0
  367. package/dist/components/text/fonts/poppins.strokes.d.ts.map +1 -0
  368. package/dist/components/text/fonts/poppins.strokes.js +4 -0
  369. package/dist/components/text/fonts/satisfy.outline.d.ts +3 -0
  370. package/dist/components/text/fonts/satisfy.outline.d.ts.map +1 -0
  371. package/dist/components/text/fonts/satisfy.outline.js +4 -0
  372. package/dist/components/text/fonts/satisfy.strokes.d.ts +3 -0
  373. package/dist/components/text/fonts/satisfy.strokes.d.ts.map +1 -0
  374. package/dist/components/text/fonts/satisfy.strokes.js +4 -0
  375. package/dist/components/text/fonts/sriracha.outline.d.ts +3 -0
  376. package/dist/components/text/fonts/sriracha.outline.d.ts.map +1 -0
  377. package/dist/components/text/fonts/sriracha.outline.js +4 -0
  378. package/dist/components/text/fonts/sriracha.strokes.d.ts +3 -0
  379. package/dist/components/text/fonts/sriracha.strokes.d.ts.map +1 -0
  380. package/dist/components/text/fonts/sriracha.strokes.js +4 -0
  381. package/dist/components/text/index.d.ts +27 -0
  382. package/dist/components/text/index.d.ts.map +1 -0
  383. package/dist/components/text/index.js +13 -0
  384. package/dist/components/text/useTextObject.d.ts +21 -0
  385. package/dist/components/text/useTextObject.d.ts.map +1 -0
  386. package/dist/components/text/useTextObject.js +118 -0
  387. package/dist/components/water/OceanSurface.d.ts.map +1 -1
  388. package/dist/components/water/OceanSurface.js +3 -1
  389. package/dist/components/water/WaterBody.d.ts.map +1 -1
  390. package/dist/components/water/WaterBody.js +3 -1
  391. package/dist/components/water/types.d.ts +5 -1
  392. package/dist/components/water/types.d.ts.map +1 -1
  393. package/dist/constants.d.ts.map +1 -1
  394. package/dist/constants.js +4 -0
  395. package/dist/hooks/index.d.ts +2 -0
  396. package/dist/hooks/index.d.ts.map +1 -1
  397. package/dist/hooks/index.js +1 -0
  398. package/dist/hooks/useCloudSun.d.ts +9 -4
  399. package/dist/hooks/useCloudSun.d.ts.map +1 -1
  400. package/dist/hooks/useCloudSun.js +17 -7
  401. package/dist/hooks/useConfigLive.d.ts +3 -2
  402. package/dist/hooks/useConfigLive.d.ts.map +1 -1
  403. package/dist/hooks/useContinuousEffects.d.ts.map +1 -1
  404. package/dist/hooks/useContinuousEffects.js +4 -10
  405. package/dist/hooks/useEnvironmentProbe.d.ts +3 -22
  406. package/dist/hooks/useEnvironmentProbe.d.ts.map +1 -1
  407. package/dist/hooks/useEnvironmentProbe.js +47 -8
  408. package/dist/hooks/useGridSurface.d.ts +3 -10
  409. package/dist/hooks/useGridSurface.d.ts.map +1 -1
  410. package/dist/hooks/useGridSurface.js +5 -31
  411. package/dist/hooks/useInteraction.d.ts.map +1 -1
  412. package/dist/hooks/useInteraction.js +19 -72
  413. package/dist/hooks/useLightConfig.d.ts +2 -1
  414. package/dist/hooks/useLightConfig.d.ts.map +1 -1
  415. package/dist/hooks/useOceanMaterial.d.ts +6 -2
  416. package/dist/hooks/useOceanMaterial.d.ts.map +1 -1
  417. package/dist/hooks/useOceanMaterial.js +37 -2
  418. package/dist/hooks/useSkyLive.d.ts +23 -0
  419. package/dist/hooks/useSkyLive.d.ts.map +1 -0
  420. package/dist/hooks/useSkyLive.js +30 -0
  421. package/dist/hooks/useSkyUniforms.d.ts.map +1 -1
  422. package/dist/hooks/useSkyUniforms.js +2 -10
  423. package/dist/hooks/useTerrainLive.d.ts +3 -1
  424. package/dist/hooks/useTerrainLive.d.ts.map +1 -1
  425. package/dist/hooks/useTerrainTextures.d.ts +38 -0
  426. package/dist/hooks/useTerrainTextures.d.ts.map +1 -0
  427. package/dist/hooks/useTerrainTextures.js +149 -0
  428. package/dist/index.d.ts +11 -2
  429. package/dist/index.d.ts.map +1 -1
  430. package/dist/index.js +8 -1
  431. package/dist/operations/catalogue/blastOff.d.ts +3 -0
  432. package/dist/operations/catalogue/blastOff.d.ts.map +1 -0
  433. package/dist/operations/catalogue/blastOff.js +118 -0
  434. package/dist/operations/catalogue/bounce.d.ts +3 -0
  435. package/dist/operations/catalogue/bounce.d.ts.map +1 -0
  436. package/dist/operations/catalogue/bounce.js +34 -0
  437. package/dist/operations/catalogue/curlSmoke.d.ts.map +1 -1
  438. package/dist/operations/catalogue/curlSmoke.js +3 -1
  439. package/dist/operations/catalogue/dissolve.d.ts.map +1 -1
  440. package/dist/operations/catalogue/dissolve.js +2 -1
  441. package/dist/operations/catalogue/driftUp.d.ts +3 -0
  442. package/dist/operations/catalogue/driftUp.d.ts.map +1 -0
  443. package/dist/operations/catalogue/driftUp.js +57 -0
  444. package/dist/operations/catalogue/emberAsh.d.ts.map +1 -1
  445. package/dist/operations/catalogue/emberAsh.js +2 -1
  446. package/dist/operations/catalogue/flip.d.ts.map +1 -1
  447. package/dist/operations/catalogue/flip.js +19 -9
  448. package/dist/operations/catalogue/float.d.ts +3 -0
  449. package/dist/operations/catalogue/float.d.ts.map +1 -0
  450. package/dist/operations/catalogue/float.js +39 -0
  451. package/dist/operations/catalogue/flyBy.d.ts +3 -0
  452. package/dist/operations/catalogue/flyBy.d.ts.map +1 -0
  453. package/dist/operations/catalogue/flyBy.js +79 -0
  454. package/dist/operations/catalogue/frost.d.ts.map +1 -1
  455. package/dist/operations/catalogue/frost.js +10 -3
  456. package/dist/operations/catalogue/grow.d.ts +3 -0
  457. package/dist/operations/catalogue/grow.d.ts.map +1 -0
  458. package/dist/operations/catalogue/grow.js +19 -0
  459. package/dist/operations/catalogue/hologram.d.ts.map +1 -1
  460. package/dist/operations/catalogue/hologram.js +11 -5
  461. package/dist/operations/catalogue/jelly.d.ts.map +1 -1
  462. package/dist/operations/catalogue/jelly.js +18 -8
  463. package/dist/operations/catalogue/knockAway.d.ts +3 -0
  464. package/dist/operations/catalogue/knockAway.d.ts.map +1 -0
  465. package/dist/operations/catalogue/knockAway.js +74 -0
  466. package/dist/operations/catalogue/leafFall.d.ts +3 -0
  467. package/dist/operations/catalogue/leafFall.d.ts.map +1 -0
  468. package/dist/operations/catalogue/leafFall.js +74 -0
  469. package/dist/operations/catalogue/lidarScan.d.ts.map +1 -1
  470. package/dist/operations/catalogue/lidarScan.js +4 -1
  471. package/dist/operations/catalogue/metalize.d.ts.map +1 -1
  472. package/dist/operations/catalogue/metalize.js +8 -2
  473. package/dist/operations/catalogue/motionTrail.d.ts +6 -0
  474. package/dist/operations/catalogue/motionTrail.d.ts.map +1 -0
  475. package/dist/operations/catalogue/motionTrail.js +221 -0
  476. package/dist/operations/catalogue/petrify.d.ts.map +1 -1
  477. package/dist/operations/catalogue/petrify.js +9 -3
  478. package/dist/operations/catalogue/physicalExit.d.ts +55 -0
  479. package/dist/operations/catalogue/physicalExit.d.ts.map +1 -0
  480. package/dist/operations/catalogue/physicalExit.js +165 -0
  481. package/dist/operations/catalogue/physicalHeld.d.ts +41 -0
  482. package/dist/operations/catalogue/physicalHeld.d.ts.map +1 -0
  483. package/dist/operations/catalogue/physicalHeld.js +78 -0
  484. package/dist/operations/catalogue/physicalMix.d.ts +45 -0
  485. package/dist/operations/catalogue/physicalMix.d.ts.map +1 -0
  486. package/dist/operations/catalogue/physicalMix.js +144 -0
  487. package/dist/operations/catalogue/pop.d.ts +3 -0
  488. package/dist/operations/catalogue/pop.d.ts.map +1 -0
  489. package/dist/operations/catalogue/pop.js +44 -0
  490. package/dist/operations/catalogue/print3d.d.ts.map +1 -1
  491. package/dist/operations/catalogue/print3d.js +5 -1
  492. package/dist/operations/catalogue/pulse.d.ts +3 -0
  493. package/dist/operations/catalogue/pulse.d.ts.map +1 -0
  494. package/dist/operations/catalogue/pulse.js +29 -0
  495. package/dist/operations/catalogue/restPose.d.ts +5 -7
  496. package/dist/operations/catalogue/restPose.d.ts.map +1 -1
  497. package/dist/operations/catalogue/restPose.js +18 -48
  498. package/dist/operations/catalogue/rotate.d.ts +3 -0
  499. package/dist/operations/catalogue/rotate.d.ts.map +1 -0
  500. package/dist/operations/catalogue/rotate.js +49 -0
  501. package/dist/operations/catalogue/shake.d.ts +3 -0
  502. package/dist/operations/catalogue/shake.d.ts.map +1 -0
  503. package/dist/operations/catalogue/shake.js +31 -0
  504. package/dist/operations/catalogue/shatter.d.ts.map +1 -1
  505. package/dist/operations/catalogue/shatter.js +5 -1
  506. package/dist/operations/catalogue/slam.d.ts +3 -0
  507. package/dist/operations/catalogue/slam.d.ts.map +1 -0
  508. package/dist/operations/catalogue/slam.js +89 -0
  509. package/dist/operations/catalogue/slingshot.d.ts +3 -0
  510. package/dist/operations/catalogue/slingshot.d.ts.map +1 -0
  511. package/dist/operations/catalogue/slingshot.js +88 -0
  512. package/dist/operations/catalogue/spin.d.ts.map +1 -1
  513. package/dist/operations/catalogue/spin.js +24 -13
  514. package/dist/operations/catalogue/sway.d.ts +3 -0
  515. package/dist/operations/catalogue/sway.d.ts.map +1 -0
  516. package/dist/operations/catalogue/sway.js +23 -0
  517. package/dist/operations/catalogue/swirl.d.ts.map +1 -1
  518. package/dist/operations/catalogue/swirl.js +6 -5
  519. package/dist/operations/catalogue/trailCore.d.ts +89 -0
  520. package/dist/operations/catalogue/trailCore.d.ts.map +1 -0
  521. package/dist/operations/catalogue/trailCore.js +190 -0
  522. package/dist/operations/catalogue/trailGhosts.d.ts +5 -0
  523. package/dist/operations/catalogue/trailGhosts.d.ts.map +1 -0
  524. package/dist/operations/catalogue/trailGhosts.js +179 -0
  525. package/dist/operations/catalogue/trailStampStyles.d.ts +11 -0
  526. package/dist/operations/catalogue/trailStampStyles.d.ts.map +1 -0
  527. package/dist/operations/catalogue/trailStampStyles.js +479 -0
  528. package/dist/operations/catalogue/trailStamps.d.ts +57 -0
  529. package/dist/operations/catalogue/trailStamps.d.ts.map +1 -0
  530. package/dist/operations/catalogue/trailStamps.js +349 -0
  531. package/dist/operations/catalogue/trailStreaks.d.ts +3 -0
  532. package/dist/operations/catalogue/trailStreaks.d.ts.map +1 -0
  533. package/dist/operations/catalogue/trailStreaks.js +147 -0
  534. package/dist/operations/catalogue/transitionField.d.ts +30 -0
  535. package/dist/operations/catalogue/transitionField.d.ts.map +1 -1
  536. package/dist/operations/catalogue/transitionField.js +21 -0
  537. package/dist/operations/catalogue/turnAway.d.ts +3 -0
  538. package/dist/operations/catalogue/turnAway.d.ts.map +1 -0
  539. package/dist/operations/catalogue/turnAway.js +54 -0
  540. package/dist/operations/catalogue/vortexDrain.d.ts +3 -0
  541. package/dist/operations/catalogue/vortexDrain.d.ts.map +1 -0
  542. package/dist/operations/catalogue/vortexDrain.js +68 -0
  543. package/dist/operations/catalogue/warp.d.ts +3 -0
  544. package/dist/operations/catalogue/warp.d.ts.map +1 -0
  545. package/dist/operations/catalogue/warp.js +73 -0
  546. package/dist/operations/catalogue/whoosh.d.ts +3 -0
  547. package/dist/operations/catalogue/whoosh.d.ts.map +1 -0
  548. package/dist/operations/catalogue/whoosh.js +84 -0
  549. package/dist/operations/catalogue/wobble.d.ts +3 -0
  550. package/dist/operations/catalogue/wobble.d.ts.map +1 -0
  551. package/dist/operations/catalogue/wobble.js +23 -0
  552. package/dist/operations/clipPreview.d.ts +3 -0
  553. package/dist/operations/clipPreview.d.ts.map +1 -0
  554. package/dist/operations/clipPreview.js +20 -0
  555. package/dist/operations/groupFanout.d.ts +96 -0
  556. package/dist/operations/groupFanout.d.ts.map +1 -0
  557. package/dist/operations/groupFanout.js +365 -0
  558. package/dist/operations/groups.d.ts +20 -0
  559. package/dist/operations/groups.d.ts.map +1 -0
  560. package/dist/operations/groups.js +66 -0
  561. package/dist/operations/index.d.ts +5 -2
  562. package/dist/operations/index.d.ts.map +1 -1
  563. package/dist/operations/index.js +5 -2
  564. package/dist/operations/objectEffects.d.ts +161 -6
  565. package/dist/operations/objectEffects.d.ts.map +1 -1
  566. package/dist/operations/objectEffects.js +1091 -17
  567. package/dist/operations/registry.d.ts.map +1 -1
  568. package/dist/operations/registry.js +24 -2
  569. package/dist/operations/runtime.d.ts +57 -2
  570. package/dist/operations/runtime.d.ts.map +1 -1
  571. package/dist/operations/runtime.js +161 -18
  572. package/dist/operations/types.d.ts +60 -3
  573. package/dist/operations/types.d.ts.map +1 -1
  574. package/dist/operations/types.js +5 -1
  575. package/dist/operations/useObjectEffectLayers.d.ts +2 -2
  576. package/dist/operations/useObjectEffectLayers.d.ts.map +1 -1
  577. package/dist/operations/useObjectEffectLayers.js +31 -10
  578. package/dist/operations/usePresentedVisibility.d.ts +10 -0
  579. package/dist/operations/usePresentedVisibility.d.ts.map +1 -0
  580. package/dist/operations/usePresentedVisibility.js +53 -0
  581. package/dist/presets/terrainBiomes.d.ts +67 -0
  582. package/dist/presets/terrainBiomes.d.ts.map +1 -0
  583. package/dist/presets/terrainBiomes.js +294 -0
  584. package/dist/presets/terrainPresets.d.ts +6 -0
  585. package/dist/presets/terrainPresets.d.ts.map +1 -1
  586. package/dist/presets/terrainPresets.js +26 -38
  587. package/dist/shaders/glsl/oceanCore.glsl.d.ts +2 -2
  588. package/dist/shaders/glsl/oceanCore.glsl.d.ts.map +1 -1
  589. package/dist/shaders/glsl/oceanCore.glsl.js +17 -0
  590. package/dist/shaders/glsl/surfaceCore.glsl.d.ts +21 -0
  591. package/dist/shaders/glsl/surfaceCore.glsl.d.ts.map +1 -0
  592. package/dist/shaders/glsl/surfaceCore.glsl.js +120 -0
  593. package/dist/shaders/glsl/terrainCore.glsl.d.ts +16 -3
  594. package/dist/shaders/glsl/terrainCore.glsl.d.ts.map +1 -1
  595. package/dist/shaders/glsl/terrainCore.glsl.js +266 -20
  596. package/dist/shaders/ocean/OceanSurfaceMaterial.d.ts +2 -0
  597. package/dist/shaders/ocean/OceanSurfaceMaterial.d.ts.map +1 -1
  598. package/dist/shaders/ocean/OceanSurfaceMaterial.js +3 -0
  599. package/dist/shaders/terrain/TerrainMaterial.d.ts +17 -0
  600. package/dist/shaders/terrain/TerrainMaterial.d.ts.map +1 -1
  601. package/dist/shaders/terrain/TerrainMaterial.js +107 -8
  602. package/dist/triggers/engine.d.ts +44 -0
  603. package/dist/triggers/engine.d.ts.map +1 -0
  604. package/dist/triggers/engine.js +165 -0
  605. package/dist/triggers/hosts/actions.d.ts +8 -0
  606. package/dist/triggers/hosts/actions.d.ts.map +1 -0
  607. package/dist/triggers/hosts/actions.js +22 -0
  608. package/dist/triggers/hosts/interactions.d.ts +6 -0
  609. package/dist/triggers/hosts/interactions.d.ts.map +1 -0
  610. package/dist/triggers/hosts/interactions.js +4 -0
  611. package/dist/triggers/hosts/timelineCues.d.ts +2 -0
  612. package/dist/triggers/hosts/timelineCues.d.ts.map +1 -0
  613. package/dist/triggers/hosts/timelineCues.js +22 -0
  614. package/dist/triggers/index.d.ts +13 -0
  615. package/dist/triggers/index.d.ts.map +1 -0
  616. package/dist/triggers/index.js +9 -0
  617. package/dist/triggers/kinds/action.d.ts +2 -0
  618. package/dist/triggers/kinds/action.d.ts.map +1 -0
  619. package/dist/triggers/kinds/action.js +31 -0
  620. package/dist/triggers/kinds/animations.d.ts +2 -0
  621. package/dist/triggers/kinds/animations.d.ts.map +1 -0
  622. package/dist/triggers/kinds/animations.js +75 -0
  623. package/dist/triggers/kinds/effects.d.ts +2 -0
  624. package/dist/triggers/kinds/effects.d.ts.map +1 -0
  625. package/dist/triggers/kinds/effects.js +27 -0
  626. package/dist/triggers/kinds/index.d.ts +4 -0
  627. package/dist/triggers/kinds/index.d.ts.map +1 -0
  628. package/dist/triggers/kinds/index.js +4 -0
  629. package/dist/triggers/log.d.ts +21 -0
  630. package/dist/triggers/log.d.ts.map +1 -0
  631. package/dist/triggers/log.js +43 -0
  632. package/dist/triggers/readiness.d.ts +40 -0
  633. package/dist/triggers/readiness.d.ts.map +1 -0
  634. package/dist/triggers/readiness.js +158 -0
  635. package/dist/triggers/registry.d.ts +41 -0
  636. package/dist/triggers/registry.d.ts.map +1 -0
  637. package/dist/triggers/registry.js +7 -0
  638. package/dist/types/gridConfigs.d.ts +18 -23
  639. package/dist/types/gridConfigs.d.ts.map +1 -1
  640. package/dist/ui/UiAnchorUpdater.d.ts +10 -0
  641. package/dist/ui/UiAnchorUpdater.d.ts.map +1 -0
  642. package/dist/ui/UiAnchorUpdater.js +111 -0
  643. package/dist/ui/UiLayers.d.ts +20 -0
  644. package/dist/ui/UiLayers.d.ts.map +1 -0
  645. package/dist/ui/UiLayers.js +57 -0
  646. package/dist/ui/index.d.ts +9 -0
  647. package/dist/ui/index.d.ts.map +1 -0
  648. package/dist/ui/index.js +6 -0
  649. package/dist/ui/uiAnchors.d.ts +21 -0
  650. package/dist/ui/uiAnchors.d.ts.map +1 -0
  651. package/dist/ui/uiAnchors.js +22 -0
  652. package/dist/ui/uiBaseStyles.d.ts +2 -0
  653. package/dist/ui/uiBaseStyles.d.ts.map +1 -0
  654. package/dist/ui/uiBaseStyles.js +100 -0
  655. package/dist/ui/uiBinder.d.ts +30 -0
  656. package/dist/ui/uiBinder.d.ts.map +1 -0
  657. package/dist/ui/uiBinder.js +344 -0
  658. package/dist/utils/configAnimations.d.ts.map +1 -1
  659. package/dist/utils/configAnimations.js +5 -1
  660. package/dist/utils/gridConfig.d.ts +1 -1
  661. package/dist/utils/gridConfig.d.ts.map +1 -1
  662. package/dist/utils/gridConfig.js +1 -1
  663. package/dist/utils/landPatch.d.ts +33 -0
  664. package/dist/utils/landPatch.d.ts.map +1 -0
  665. package/dist/utils/landPatch.js +114 -0
  666. package/dist/utils/renderedSky.d.ts +32 -0
  667. package/dist/utils/renderedSky.d.ts.map +1 -0
  668. package/dist/utils/renderedSky.js +57 -0
  669. package/dist/utils/skyMoon.d.ts +35 -0
  670. package/dist/utils/skyMoon.d.ts.map +1 -0
  671. package/dist/utils/skyMoon.js +41 -0
  672. package/dist/utils/terrainHeight.d.ts +4 -0
  673. package/dist/utils/terrainHeight.d.ts.map +1 -0
  674. package/dist/utils/terrainHeight.js +150 -0
  675. package/dist/utils/terrainTextureResolver.d.ts +18 -0
  676. package/dist/utils/terrainTextureResolver.d.ts.map +1 -0
  677. package/dist/utils/terrainTextureResolver.js +17 -0
  678. package/dist/utils/terrainUniforms.d.ts +17 -0
  679. package/dist/utils/terrainUniforms.d.ts.map +1 -1
  680. package/dist/utils/terrainUniforms.js +84 -0
  681. package/dist/utils/textureArrays.d.ts +29 -0
  682. package/dist/utils/textureArrays.d.ts.map +1 -0
  683. package/dist/utils/textureArrays.js +140 -0
  684. package/package.json +2 -2
@@ -0,0 +1,111 @@
1
+ // =============================================================================
2
+ // UiAnchorUpdater — positions data-anchor elements over objects and model parts
3
+ // =============================================================================
4
+ //
5
+ // Mount once inside the <Canvas>. Each frame it projects every registered anchor to
6
+ // screen pixels and writes `transform` on the element (refs, not React state).
7
+ //
8
+ // - the point is the centre of the target's bounding box, refreshed every few
9
+ // frames, plus the target's movement since — cheap, and it follows animation;
10
+ // - an element is hidden (`data-offscreen`) behind the camera or outside the canvas;
11
+ // - `data-anchor-occlude` also hides it (`data-occluded`) while a mesh is in front.
12
+ //
13
+ import { useFrame } from '@react-three/fiber';
14
+ import { Box3, Raycaster, Vector3 } from 'three';
15
+ import { findById, findByName } from '../utils/sceneQuery.js';
16
+ import { uiAnchors } from './uiAnchors.js';
17
+ const BOX_EVERY = 8; // frames between bounding-box refreshes
18
+ const OCCLUDE_EVERY = 6; // frames between occlusion raycasts
19
+ const RESOLVE_EVERY = 30; // frames between lookups while the target is missing
20
+ const MARGIN = 48; // px outside the canvas before an element is hidden
21
+ const tracked = new WeakMap();
22
+ const _box = new Box3();
23
+ const _v = new Vector3();
24
+ const _pt = new Vector3();
25
+ const _pos = new Vector3();
26
+ const _ray = new Raycaster();
27
+ function resolveTarget(entry) {
28
+ const obj = findById(entry.object) ?? findByName(entry.object);
29
+ if (!obj)
30
+ return null;
31
+ if (!entry.node)
32
+ return obj;
33
+ return obj.getObjectByName(entry.node) ?? null;
34
+ }
35
+ function insideSubtree(hit, root) {
36
+ for (let o = hit; o; o = o.parent)
37
+ if (o === root)
38
+ return true;
39
+ return false;
40
+ }
41
+ /** Pure projection of a world point; exported for tests. */
42
+ export function projectPoint(point, camera, width, height, out) {
43
+ _v.copy(point).applyMatrix4(camera.matrixWorldInverse);
44
+ out.behind = _v.z >= 0; // view space looks down -Z
45
+ _v.copy(point).project(camera);
46
+ out.x = (_v.x * 0.5 + 0.5) * width;
47
+ out.y = (-_v.y * 0.5 + 0.5) * height;
48
+ }
49
+ const _p = { x: 0, y: 0, behind: false };
50
+ export function updateAnchors(camera, scene, width, height, frame) {
51
+ if (!uiAnchors.size)
52
+ return;
53
+ camera.updateMatrixWorld();
54
+ for (const entry of uiAnchors) {
55
+ let t = tracked.get(entry);
56
+ if (!t) {
57
+ t = { target: null, center: new Vector3(), origin: new Vector3(), frame: -1e9, missingSince: -1e9 };
58
+ tracked.set(entry, t);
59
+ }
60
+ if (!t.target || !t.target.parent) {
61
+ if (frame - t.missingSince < RESOLVE_EVERY)
62
+ continue;
63
+ t.target = resolveTarget(entry);
64
+ if (!t.target) {
65
+ t.missingSince = frame;
66
+ entry.el.setAttribute('data-offscreen', '');
67
+ continue;
68
+ }
69
+ t.frame = -1e9;
70
+ }
71
+ const target = t.target;
72
+ target.getWorldPosition(_pos);
73
+ if (frame - t.frame >= BOX_EVERY) {
74
+ _box.setFromObject(target);
75
+ if (_box.isEmpty()) {
76
+ _box.min.copy(_pos);
77
+ _box.max.copy(_pos);
78
+ }
79
+ _box.getCenter(t.center);
80
+ t.origin.copy(_pos);
81
+ t.frame = frame;
82
+ }
83
+ const point = _pt.copy(t.center).add(_pos).sub(t.origin);
84
+ projectPoint(point, camera, width, height, _p);
85
+ const off = _p.behind || _p.x < -MARGIN || _p.x > width + MARGIN || _p.y < -MARGIN || _p.y > height + MARGIN;
86
+ entry.el.toggleAttribute('data-offscreen', off);
87
+ if (off)
88
+ continue;
89
+ entry.el.style.transform = `translate3d(${(_p.x + entry.offset[0]).toFixed(1)}px, ${(_p.y + entry.offset[1]).toFixed(1)}px, 0) translate(-50%, -50%)`;
90
+ if (entry.occlude && frame % OCCLUDE_EVERY === 0) {
91
+ const from = camera.getWorldPosition(new Vector3());
92
+ const dir = point.clone().sub(from);
93
+ const dist = dir.length();
94
+ _ray.set(from, dir.normalize());
95
+ _ray.far = Math.max(0, dist - 0.02);
96
+ const hits = _ray.intersectObjects(scene.children, true).filter(h => h.object.isMesh && h.object.visible && !insideSubtree(h.object, target));
97
+ entry.el.toggleAttribute('data-occluded', hits.length > 0);
98
+ }
99
+ else if (!entry.occlude) {
100
+ entry.el.removeAttribute('data-occluded');
101
+ }
102
+ }
103
+ }
104
+ let frameCount = 0;
105
+ export default function UiAnchorUpdater() {
106
+ useFrame(({ camera, scene, gl }) => {
107
+ const c = gl.domElement;
108
+ updateAnchors(camera, scene, c.clientWidth, c.clientHeight, ++frameCount);
109
+ });
110
+ return null;
111
+ }
@@ -0,0 +1,20 @@
1
+ import { type UiLayer } from '@3driseai/3drise-core';
2
+ import { type BoundControl, type UiBinderHandle, type UiSceneApi } from './uiBinder';
3
+ export interface UiLayerRuntime {
4
+ id: string;
5
+ key: string;
6
+ root: ShadowRoot;
7
+ inspect(): BoundControl[];
8
+ press: UiBinderHandle['press'];
9
+ refresh(): void;
10
+ }
11
+ /** A rendered layer by key, id, or name-less id. Undefined while it is hidden or not mounted. */
12
+ export declare function getUiLayerRuntime(ref: string): UiLayerRuntime | undefined;
13
+ export interface UiLayersProps {
14
+ layers: UiLayer[] | undefined;
15
+ scene: UiSceneApi;
16
+ /** Extra CSS appended to every layer after its own (ProjectLoader's `uiStyles`). */
17
+ extraCss?: string;
18
+ }
19
+ export default function UiLayers({ layers, scene, extraCss }: UiLayersProps): import("react").JSX.Element;
20
+ //# sourceMappingURL=UiLayers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UiLayers.d.ts","sourceRoot":"","sources":["../../src/ui/UiLayers.tsx"],"names":[],"mappings":"AAaA,OAAO,EAAgD,KAAK,OAAO,EAAE,MAAM,uBAAuB,CAAC;AACnG,OAAO,EAAe,KAAK,YAAY,EAAE,KAAK,cAAc,EAAE,KAAK,UAAU,EAAE,MAAM,YAAY,CAAC;AAOlG,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,IAAI,YAAY,EAAE,CAAC;IAC1B,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/B,OAAO,IAAI,IAAI,CAAC;CACnB;AAGD,iGAAiG;AACjG,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAGzE;AA+BD,MAAM,WAAW,aAAa;IAC1B,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC;IAC9B,KAAK,EAAE,UAAU,CAAC;IAClB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,aAAa,+BAY1E"}
@@ -0,0 +1,57 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // =============================================================================
3
+ // UiLayers — renders a project's UI layers over the scene
4
+ // =============================================================================
5
+ //
6
+ // A sibling of the <Canvas> in a relatively positioned container (SceneBuilder, the
7
+ // studio's scene view). Each visible layer gets a host element with a shadow root: the
8
+ // layer's CSS cannot leak out, and the page's CSS cannot reach in. The HTML and CSS
9
+ // are sanitized again here — the viewer never renders what it did not clean itself.
10
+ //
11
+ // Props-driven, so the studio (through a connector) and the published viewer use the
12
+ // same component.
13
+ //
14
+ import { useEffect, useRef } from 'react';
15
+ import { UI_HOST_CLASS, sanitizeUiCss, sanitizeUiHtml } from '@3driseai/3drise-core';
16
+ import { bindUiLayer } from './uiBinder.js';
17
+ import { UI_BASE_CSS } from './uiBaseStyles.js';
18
+ const runtimes = new Map();
19
+ /** A rendered layer by key, id, or name-less id. Undefined while it is hidden or not mounted. */
20
+ export function getUiLayerRuntime(ref) {
21
+ for (const r of runtimes.values())
22
+ if (r.key === ref || r.id === ref)
23
+ return r;
24
+ return undefined;
25
+ }
26
+ // ---------------------------------------------------------------------------
27
+ function UiLayerHost({ layer, scene, extraCss }) {
28
+ const ref = useRef(null);
29
+ useEffect(() => {
30
+ const host = ref.current;
31
+ if (!host)
32
+ return;
33
+ const root = host.shadowRoot ?? host.attachShadow({ mode: 'open' });
34
+ root.replaceChildren();
35
+ const style = (css) => { const s = document.createElement('style'); s.textContent = css; return s; };
36
+ const body = document.createElement('div');
37
+ body.className = 'rise-layer';
38
+ body.innerHTML = sanitizeUiHtml(layer.html).out;
39
+ root.append(style(UI_BASE_CSS), style(sanitizeUiCss(layer.css).out), ...(extraCss ? [style(sanitizeUiCss(extraCss).out)] : []), body);
40
+ const binder = bindUiLayer(root, scene, { onWarn: (m) => console.warn(`[3drise ui:${layer.key}] ${m}`) });
41
+ runtimes.set(layer.id, { id: layer.id, key: layer.key, root, inspect: binder.inspect, press: binder.press, refresh: binder.refresh });
42
+ return () => {
43
+ binder.dispose();
44
+ runtimes.delete(layer.id);
45
+ root.replaceChildren();
46
+ };
47
+ }, [layer.id, layer.key, layer.html, layer.css, extraCss, scene]);
48
+ return _jsx("div", { ref: ref, className: UI_HOST_CLASS, "data-ui-layer": layer.key, style: { position: 'absolute', inset: 0, pointerEvents: 'none' } });
49
+ }
50
+ export default function UiLayers({ layers, scene, extraCss }) {
51
+ const visible = (layers ?? []).filter(l => l.visible !== false);
52
+ if (!visible.length)
53
+ return null;
54
+ return (_jsx("div", { className: "rise-ui-overlay",
55
+ // translateZ(0): a `position: fixed` inside a layer is then relative to this overlay, not the page.
56
+ style: { position: 'absolute', inset: 0, pointerEvents: 'none', overflow: 'hidden', transform: 'translateZ(0)', zIndex: 10 }, children: visible.map(l => _jsx(UiLayerHost, { layer: l, scene: scene, extraCss: extraCss }, l.id)) }));
57
+ }
@@ -0,0 +1,9 @@
1
+ export { default as UiLayers, getUiLayerRuntime } from './UiLayers';
2
+ export type { UiLayersProps, UiLayerRuntime } from './UiLayers';
3
+ export { default as UiAnchorUpdater } from './UiAnchorUpdater';
4
+ export { bindUiLayer } from './uiBinder';
5
+ export type { BindOptions, BoundControl, UiBinderHandle, UiSceneApi } from './uiBinder';
6
+ export { uiAnchors } from './uiAnchors';
7
+ export type { AnchorEntry } from './uiAnchors';
8
+ export { UI_BASE_CSS } from './uiBaseStyles';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,IAAI,QAAQ,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC"}
@@ -0,0 +1,6 @@
1
+ // UI layers: agent-written HTML/CSS that controls the scene (see claude/ui-module.md)
2
+ export { default as UiLayers, getUiLayerRuntime } from './UiLayers.js';
3
+ export { default as UiAnchorUpdater } from './UiAnchorUpdater.js';
4
+ export { bindUiLayer } from './uiBinder.js';
5
+ export { uiAnchors } from './uiAnchors.js';
6
+ export { UI_BASE_CSS } from './uiBaseStyles.js';
@@ -0,0 +1,21 @@
1
+ export interface AnchorEntry {
2
+ el: HTMLElement;
3
+ /** Object ref: its id, else its Three.js name. */
4
+ object: string;
5
+ /** A node inside a model. */
6
+ node?: string;
7
+ /** Hide while another mesh is in front of the point (a raycast every few frames). */
8
+ occlude: boolean;
9
+ /** px, added after projection. */
10
+ offset: [number, number];
11
+ }
12
+ declare class AnchorRegistry {
13
+ private entries;
14
+ register(entry: AnchorEntry): () => void;
15
+ get size(): number;
16
+ [Symbol.iterator](): SetIterator<AnchorEntry>;
17
+ clear(): void;
18
+ }
19
+ export declare const uiAnchors: AnchorRegistry;
20
+ export type { AnchorRegistry };
21
+ //# sourceMappingURL=uiAnchors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uiAnchors.d.ts","sourceRoot":"","sources":["../../src/ui/uiAnchors.ts"],"names":[],"mappings":"AAYA,MAAM,WAAW,WAAW;IACxB,EAAE,EAAE,WAAW,CAAC;IAChB,kDAAkD;IAClD,MAAM,EAAE,MAAM,CAAC;IACf,6BAA6B;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,qFAAqF;IACrF,OAAO,EAAE,OAAO,CAAC;IACjB,kCAAkC;IAClC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC5B;AAED,cAAM,cAAc;IAChB,OAAO,CAAC,OAAO,CAA0B;IACzC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,IAAI;IAIxC,IAAI,IAAI,WAAgC;IACxC,CAAC,MAAM,CAAC,QAAQ,CAAC;IACjB,KAAK;CACR;AAED,eAAO,MAAM,SAAS,gBAAuB,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,CAAC"}
@@ -0,0 +1,22 @@
1
+ // =============================================================================
2
+ // Anchor registry — data-anchor elements waiting to be positioned
3
+ // =============================================================================
4
+ //
5
+ // The binder registers an element here; UiAnchorUpdater (inside the canvas, where the
6
+ // camera lives) projects each one to the screen every frame and writes its transform
7
+ // directly. No React state is involved — positions change every frame.
8
+ //
9
+ // One registry per page: like SceneActions and ClipsRuntime, it is shared by every
10
+ // scene on the page (one scene per page for now).
11
+ //
12
+ class AnchorRegistry {
13
+ entries = new Set();
14
+ register(entry) {
15
+ this.entries.add(entry);
16
+ return () => { this.entries.delete(entry); };
17
+ }
18
+ get size() { return this.entries.size; }
19
+ [Symbol.iterator]() { return this.entries[Symbol.iterator](); }
20
+ clear() { this.entries.clear(); }
21
+ }
22
+ export const uiAnchors = new AnchorRegistry();
@@ -0,0 +1,2 @@
1
+ export declare const UI_BASE_CSS: string;
2
+ //# sourceMappingURL=uiBaseStyles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uiBaseStyles.d.ts","sourceRoot":"","sources":["../../src/ui/uiBaseStyles.ts"],"names":[],"mappings":"AAsBA,eAAO,MAAM,WAAW,QAgFvB,CAAC"}
@@ -0,0 +1,100 @@
1
+ // =============================================================================
2
+ // Base stylesheet for UI layers
3
+ // =============================================================================
4
+ //
5
+ // Styles the generic classes (UI_CLASSES) so agent-written HTML looks right with no CSS
6
+ // of its own, and so one rule or one variable restyles every control. Lives in each
7
+ // layer's shadow root, before the layer's own CSS.
8
+ //
9
+ // Variables: the public `--rise-*` ones (UI_VARIABLES) are read through a private
10
+ // `--_rise-*` copy declared on :host with the default as fallback. That keeps them
11
+ // inheriting from the page: set `--rise-accent` on <body>, or on `.rise-ui-layer`,
12
+ // and every layer follows. A plain `:host { --rise-accent: … }` would block that.
13
+ //
14
+ // The task-1 look is plain and functional; polishing it is the design task.
15
+ //
16
+ import { UI_VARIABLES } from '@3driseai/3drise-core';
17
+ const priv = (name) => `--_${name.slice(2)}`; // --rise-accent -> --_rise-accent
18
+ const v = (name) => `var(${priv(name)})`;
19
+ const hostVars = UI_VARIABLES.map(x => `${priv(x.name)}: var(${x.name}, ${x.default});`).join('\n ');
20
+ export const UI_BASE_CSS = /* css */ `
21
+ :host {
22
+ ${hostVars}
23
+ display: block; position: absolute; inset: 0; pointer-events: none; overflow: hidden;
24
+ font-family: ${v('--rise-font')}; font-size: 14px; line-height: 1.4; color: ${v('--rise-text')};
25
+ }
26
+ *, *::before, *::after { box-sizing: border-box; }
27
+ [hidden] { display: none !important; }
28
+ .rise-layer { position: absolute; inset: 0; pointer-events: none; }
29
+
30
+ /* Only controls and surfaces take the pointer; the scene stays interactive around them. */
31
+ button, a, input, select, [data-click], [data-hover-in], [data-hover-out],
32
+ .rise-panel, .rise-menu, .rise-card, .rise-hotspot { pointer-events: auto; }
33
+ [data-click] { cursor: pointer; }
34
+ [data-offscreen] { visibility: hidden; pointer-events: none !important; }
35
+ [data-occluded] { opacity: 0; pointer-events: none !important; }
36
+
37
+ .rise-panel, .rise-menu, .rise-card {
38
+ background: ${v('--rise-bg')}; border: 1px solid ${v('--rise-border')}; border-radius: ${v('--rise-radius')};
39
+ -webkit-backdrop-filter: blur(${v('--rise-blur')}); backdrop-filter: blur(${v('--rise-blur')});
40
+ }
41
+ .rise-panel { display: flex; flex-wrap: wrap; align-items: center; gap: ${v('--rise-gap')}; padding: ${v('--rise-gap')}; }
42
+
43
+ .rise-button, .rise-toggle {
44
+ display: inline-flex; align-items: center; justify-content: center; gap: 6px;
45
+ padding: 8px 14px; font: inherit; color: inherit; cursor: pointer;
46
+ background: ${v('--rise-bg')}; border: 1px solid ${v('--rise-border')}; border-radius: ${v('--rise-radius')};
47
+ transition: background-color .15s, border-color .15s, color .15s, filter .15s;
48
+ }
49
+ .rise-button:hover, .rise-toggle:hover { filter: brightness(1.2); }
50
+ .rise-button:active, .rise-toggle:active { filter: brightness(0.95); }
51
+ .rise-button:focus-visible, .rise-toggle:focus-visible, .rise-menu-item:focus-visible, .rise-slider:focus-visible, .rise-input:focus-visible {
52
+ outline: 2px solid ${v('--rise-accent')}; outline-offset: 2px;
53
+ }
54
+ .rise-button[data-on="true"], .rise-toggle[data-on="true"] {
55
+ background: ${v('--rise-accent')}; border-color: ${v('--rise-accent')}; color: ${v('--rise-accent-text')};
56
+ }
57
+ .rise-toggle::before {
58
+ content: ""; width: 8px; height: 8px; border-radius: 50%; background: ${v('--rise-muted')};
59
+ }
60
+ .rise-toggle[data-on="true"]::before { background: ${v('--rise-accent-text')}; }
61
+
62
+ .rise-slider {
63
+ -webkit-appearance: none; appearance: none; width: 160px; height: 4px; margin: 8px 0;
64
+ background: ${v('--rise-border')}; border-radius: 2px; outline: none;
65
+ }
66
+ .rise-slider::-webkit-slider-thumb {
67
+ -webkit-appearance: none; width: 16px; height: 16px; border-radius: 50%; border: 0; background: ${v('--rise-accent')}; cursor: pointer;
68
+ }
69
+ .rise-slider::-moz-range-thumb { width: 16px; height: 16px; border-radius: 50%; border: 0; background: ${v('--rise-accent')}; cursor: pointer; }
70
+
71
+ .rise-input {
72
+ padding: 8px 10px; font: inherit; color: inherit; background: ${v('--rise-bg')};
73
+ border: 1px solid ${v('--rise-border')}; border-radius: ${v('--rise-radius')};
74
+ }
75
+
76
+ .rise-menu { display: flex; flex-direction: column; gap: 2px; padding: 4px; }
77
+ .rise-menu-item { padding: 8px 12px; border-radius: calc(${v('--rise-radius')} - 4px); cursor: pointer; transition: background-color .15s; }
78
+ .rise-menu-item:hover { background: rgba(255, 255, 255, 0.08); }
79
+ .rise-menu-item[data-on="true"] { background: ${v('--rise-accent')}; color: ${v('--rise-accent-text')}; }
80
+
81
+ .rise-card { max-width: 280px; padding: 14px; box-shadow: 0 8px 28px rgba(0, 0, 0, 0.35); }
82
+ .rise-card-title { margin: 0 0 4px; font-size: 15px; font-weight: 600; }
83
+ .rise-card-body { margin: 0; color: ${v('--rise-muted')}; }
84
+ .rise-card-image { display: block; width: 100%; margin-bottom: 8px; border-radius: calc(${v('--rise-radius')} - 4px); }
85
+
86
+ .rise-hotspot {
87
+ width: 22px; height: 22px; border-radius: 50%; cursor: pointer; padding: 0;
88
+ background: ${v('--rise-accent')}; border: 2px solid #fff; box-shadow: 0 0 0 0 ${v('--rise-accent')};
89
+ animation: rise-pulse 2s ease-out infinite; transition: opacity .2s;
90
+ }
91
+ .rise-hotspot[data-on="true"] { animation: none; box-shadow: 0 0 0 4px ${v('--rise-accent')}; }
92
+ @keyframes rise-pulse { 0% { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.55); } 70%, 100% { box-shadow: 0 0 0 14px rgba(255, 255, 255, 0); } }
93
+
94
+ .rise-label {
95
+ display: inline-block; padding: 2px 8px; font-size: 12px; color: ${v('--rise-text')};
96
+ background: ${v('--rise-bg')}; border-radius: calc(${v('--rise-radius')} - 4px);
97
+ }
98
+
99
+ @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
100
+ `;
@@ -0,0 +1,30 @@
1
+ import { type UiTrigger } from '@3driseai/3drise-core';
2
+ import type { SceneHandle } from '../api/sceneHandle';
3
+ import { uiAnchors } from './uiAnchors';
4
+ export type UiSceneApi = Pick<SceneHandle, 'actions' | 'clips' | 'sequences' | 'values' | 'on'>;
5
+ export interface BindOptions {
6
+ /** Called with a problem the binder met at run time (an unknown ref). */
7
+ onWarn?: (message: string) => void;
8
+ /** Where data-anchor elements register. Defaults to the shared registry. */
9
+ anchors?: typeof uiAnchors;
10
+ /** State poll interval, ms. 0 turns it off. */
11
+ pollMs?: number;
12
+ }
13
+ export interface BoundControl {
14
+ element: string;
15
+ trigger: string;
16
+ command: string;
17
+ /** False when the ref does not resolve in this project. */
18
+ resolved: boolean;
19
+ }
20
+ export interface UiBinderHandle {
21
+ dispose(): void;
22
+ /** Re-evaluate data-state and data-show-when now. */
23
+ refresh(): void;
24
+ /** What every control is bound to, for the agent. */
25
+ inspect(): BoundControl[];
26
+ /** Dispatch a real click (or hover) on an element, so the real handlers run. */
27
+ press(selector: string, trigger?: UiTrigger): boolean;
28
+ }
29
+ export declare function bindUiLayer(root: ParentNode, scene: UiSceneApi, options?: BindOptions): UiBinderHandle;
30
+ //# sourceMappingURL=uiBinder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uiBinder.d.ts","sourceRoot":"","sources":["../../src/ui/uiBinder.ts"],"names":[],"mappings":"AAiBA,OAAO,EAEgE,KAAK,SAAS,EACpF,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAoB,MAAM,aAAa,CAAC;AAE1D,MAAM,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,GAAG,IAAI,CAAC,CAAC;AAEhG,MAAM,WAAW,WAAW;IACxB,yEAAyE;IACzE,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACnC,4EAA4E;IAC5E,OAAO,CAAC,EAAE,OAAO,SAAS,CAAC;IAC3B,+CAA+C;IAC/C,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,IAAI,IAAI,CAAC;IAChB,qDAAqD;IACrD,OAAO,IAAI,IAAI,CAAC;IAChB,qDAAqD;IACrD,OAAO,IAAI,YAAY,EAAE,CAAC;IAC1B,gFAAgF;IAChF,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;CACzD;AAKD,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,GAAE,WAAgB,GAAG,cAAc,CA2O1G"}