@holoscript/core 6.0.4 → 6.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +3 -3
  3. package/bin/holoscript.cjs +3 -0
  4. package/dist/GLTFPipeline-SFIORFJU.js +16 -0
  5. package/dist/GLTFPipeline-VNNDPONV.cjs +37 -0
  6. package/dist/{HoloScriptPlusParser-BN6KVRCM.js → HoloScriptPlusParser-7FBIFUFC.js} +6 -5
  7. package/dist/{HoloScriptPlusParser-NC5FE6AL.cjs → HoloScriptPlusParser-A2W7OCN2.cjs} +17 -16
  8. package/dist/HoloScriptPlusParser-F2Z56FJR.js +10 -0
  9. package/dist/HoloScriptPlusParser-WKHRIH6T.cjs +27 -0
  10. package/dist/{USDZExporter-UWGWNMMD.cjs → USDZExporter-3FWJ25JI.cjs} +344 -16
  11. package/dist/{USDZExporter-NTMBNTDB.js → USDZExporter-D2HQLQYK.js} +344 -16
  12. package/dist/agents/index.cjs +19 -0
  13. package/dist/agents/index.d.ts +100 -0
  14. package/dist/agents/index.js +17 -0
  15. package/dist/chunk-22W6NGYN.js +725 -0
  16. package/dist/{chunk-5OEOHAAW.cjs → chunk-27MPVJVZ.cjs} +64 -28
  17. package/dist/{chunk-RVYPEYPX.js → chunk-2A7FURVO.js} +44 -8
  18. package/dist/{chunk-XCWFGZAA.js → chunk-2B7WVIDZ.js} +11 -8
  19. package/dist/{chunk-NDQNIJEH.js → chunk-2BSMSUCE.js} +250 -24
  20. package/dist/chunk-2HLIGOKU.cjs +5546 -0
  21. package/dist/{chunk-EONILVMF.js → chunk-2M2DPHKB.js} +4 -4
  22. package/dist/{chunk-G7CT3EMP.cjs → chunk-2YSNA2F2.cjs} +319 -47
  23. package/dist/{chunk-IWI6J7FX.js → chunk-33XCOVE3.js} +5 -5
  24. package/dist/chunk-3FOKASKO.cjs +348 -0
  25. package/dist/{chunk-DXJQDCFL.js → chunk-4C57PR42.js} +3 -3
  26. package/dist/{chunk-MPXBVFHQ.js → chunk-4N4SXXWF.js} +4 -3
  27. package/dist/chunk-4PDEPEQW.cjs +41 -0
  28. package/dist/chunk-4R6SBXDB.js +45 -0
  29. package/dist/chunk-4SY77NA4.cjs +413 -0
  30. package/dist/{chunk-YCXFCXDS.js → chunk-4UUKPCY4.js} +668 -110
  31. package/dist/{chunk-LGGRPKTV.cjs → chunk-52ULD552.cjs} +114 -35
  32. package/dist/{chunk-L4G4RLXX.js → chunk-5CKA5SXU.js} +438 -22
  33. package/dist/chunk-5FSKKMR7.cjs +2092 -0
  34. package/dist/{chunk-FF3Q7ADR.js → chunk-5JEU52DW.js} +5 -3
  35. package/dist/chunk-5N54COB6.cjs +327 -0
  36. package/dist/chunk-5S7RKFGR.cjs +446 -0
  37. package/dist/{chunk-KED34ILP.js → chunk-6ASWLXXN.js} +21 -9
  38. package/dist/chunk-6CTRH7HT.cjs +1985 -0
  39. package/dist/{chunk-CAUCGUEA.cjs → chunk-6EX3I5P4.cjs} +6 -6
  40. package/dist/chunk-6FGQNDR4.js +5731 -0
  41. package/dist/{chunk-72EQECGT.cjs → chunk-6KMK2UXT.cjs} +122 -46
  42. package/dist/{chunk-G4VZTCIB.js → chunk-6L4VE27M.js} +33 -23
  43. package/dist/{chunk-ATSKSYVE.cjs → chunk-6S6TKNEA.cjs} +6478 -1738
  44. package/dist/chunk-77V4GTCA.js +596 -0
  45. package/dist/{chunk-ZP4D3CSX.cjs → chunk-7AD52FRS.cjs} +16 -16
  46. package/dist/chunk-7OPW2KO7.cjs +639 -0
  47. package/dist/chunk-A6KINLZJ.js +236 -0
  48. package/dist/chunk-AIA52I7T.cjs +543 -0
  49. package/dist/chunk-AIX25INK.cjs +602 -0
  50. package/dist/{chunk-B5TCIAPQ.cjs → chunk-AO4I2Z7M.cjs} +17 -18
  51. package/dist/{chunk-Q5SJOGHQ.cjs → chunk-BPICAGBV.cjs} +324 -199
  52. package/dist/chunk-BRQJKJGT.cjs +20 -0
  53. package/dist/{chunk-3FXV5S25.cjs → chunk-C37BHB7N.cjs} +6 -3
  54. package/dist/{chunk-XUTX5CBW.js → chunk-CBJY23VL.js} +3 -3
  55. package/dist/chunk-CIWWXYHZ.cjs +50 -0
  56. package/dist/{chunk-XXINBTZK.cjs → chunk-DIL6DDDN.cjs} +101 -45
  57. package/dist/chunk-DMXC24WV.js +404 -0
  58. package/dist/{chunk-PMGODDJA.cjs → chunk-DTGBOSEM.cjs} +12 -12
  59. package/dist/chunk-E7JP3BS3.cjs +61 -0
  60. package/dist/{chunk-HJJLD366.js → chunk-EKBKLK7P.js} +3 -3
  61. package/dist/chunk-EKYL4PE3.cjs +404 -0
  62. package/dist/{chunk-UPJBDCVF.js → chunk-EMMC5CSQ.js} +12 -8
  63. package/dist/{chunk-GGHSW2NN.js → chunk-EOBB6A4B.js} +6389 -1718
  64. package/dist/chunk-EOFNVCM6.js +325 -0
  65. package/dist/{chunk-FHQVYCH2.js → chunk-ER4GATIU.js} +7 -7
  66. package/dist/{chunk-N5FTS757.cjs → chunk-EXKSFGSX.cjs} +7 -148
  67. package/dist/{chunk-LK5IAVH6.cjs → chunk-EXUP2BUM.cjs} +27 -27
  68. package/dist/chunk-FDSGHPAK.js +130 -0
  69. package/dist/chunk-FEWUHQNM.cjs +144 -0
  70. package/dist/{chunk-5TOFIR6L.js → chunk-FGGJQRLZ.js} +5 -142
  71. package/dist/chunk-FHP6LXJS.js +415 -0
  72. package/dist/{chunk-7LCYLPW2.cjs → chunk-FJPADH77.cjs} +7 -4
  73. package/dist/{chunk-T36DDXSF.js → chunk-FXKTYFYA.js} +150 -25
  74. package/dist/chunk-GCMWDSBZ.cjs +729 -0
  75. package/dist/chunk-GJNCFRJU.cjs +125 -0
  76. package/dist/{chunk-Q4QX3AET.cjs → chunk-GMP623FG.cjs} +16 -13
  77. package/dist/{chunk-XD6IYDUX.js → chunk-GN3KDX4W.js} +119 -43
  78. package/dist/{chunk-QLEAOI3Q.cjs → chunk-GQYKQSTC.cjs} +10 -10
  79. package/dist/chunk-GTU2Z2WW.cjs +262 -0
  80. package/dist/chunk-GZG4KA4E.js +529 -0
  81. package/dist/{chunk-BND3ST2K.cjs → chunk-H3MGK7TX.cjs} +42 -32
  82. package/dist/{chunk-XRKWN5PL.cjs → chunk-H5DZIHJP.cjs} +14 -18
  83. package/dist/{chunk-Z34RLXRA.cjs → chunk-HANL7K2Q.cjs} +65 -50
  84. package/dist/{chunk-3SAK5KFL.cjs → chunk-HCCQLAA4.cjs} +2 -11
  85. package/dist/{chunk-LXJ4667L.cjs → chunk-HGVXZDSK.cjs} +108 -20
  86. package/dist/{chunk-3FJCK5XA.js → chunk-HRODTEEO.js} +30 -10
  87. package/dist/{chunk-HQUEA5R6.cjs → chunk-HZCQO4JM.cjs} +6 -6
  88. package/dist/{chunk-S565K7NK.js → chunk-I2O7TW6B.js} +12 -8
  89. package/dist/chunk-IHESJZSW.js +4490 -0
  90. package/dist/{chunk-FSF7EQVA.cjs → chunk-IRWWS72C.cjs} +63 -22
  91. package/dist/{chunk-5O6TQC6M.cjs → chunk-IVIA7K75.cjs} +689 -127
  92. package/dist/chunk-IVY74O6C.js +247 -0
  93. package/dist/chunk-J32ZJZJH.js +554 -0
  94. package/dist/chunk-JD7CIZ33.js +1949 -0
  95. package/dist/{chunk-T7LEXZUZ.cjs → chunk-JIYN45TV.cjs} +14 -15
  96. package/dist/{chunk-FFKU7BTK.cjs → chunk-KHPCJRI3.cjs} +24 -21
  97. package/dist/chunk-KKFZ3B6J.cjs +557 -0
  98. package/dist/chunk-KPJL34Y7.cjs +186 -0
  99. package/dist/{chunk-HE7ULERA.cjs → chunk-KQTPCYTG.cjs} +128 -44
  100. package/dist/{chunk-OFKWH2IP.js → chunk-KX76JUQY.js} +3 -3
  101. package/dist/chunk-L4LFINPO.js +623 -0
  102. package/dist/{chunk-33LSUQDD.cjs → chunk-L63H3SQ4.cjs} +43 -31
  103. package/dist/{chunk-K6EKD26I.js → chunk-LAOCQJ2M.js} +64 -8
  104. package/dist/chunk-LM2VU56C.cjs +37 -0
  105. package/dist/chunk-M56JSP4A.js +400 -0
  106. package/dist/chunk-MBOOR7X4.js +18 -0
  107. package/dist/{chunk-XWPNTWDN.cjs → chunk-MJVIRCUV.cjs} +31 -27
  108. package/dist/{chunk-SDAMZIRE.js → chunk-MSMIFMBL.js} +135 -18
  109. package/dist/{chunk-56IF4NTA.js → chunk-MXFUTKCO.js} +18 -18
  110. package/dist/{chunk-6UEHYZ7V.cjs → chunk-MXJ5SS53.cjs} +447 -31
  111. package/dist/chunk-MXWNGCRS.js +2176 -0
  112. package/dist/chunk-MYY4PMWX.cjs +264 -0
  113. package/dist/chunk-N75IH2HY.js +258 -0
  114. package/dist/{chunk-GVUR45UF.cjs → chunk-NG77ATEW.cjs} +7 -6
  115. package/dist/chunk-NW5G5FBQ.js +215 -0
  116. package/dist/{chunk-E3FWRT3Z.js → chunk-OEFY723R.js} +28 -13
  117. package/dist/chunk-OEV5RMZO.cjs +3042 -0
  118. package/dist/{chunk-X4ZF6CNE.cjs → chunk-OIQYIIO3.cjs} +7 -7
  119. package/dist/{chunk-2CWOLHTE.js → chunk-OL46QLBJ.js} +3 -11
  120. package/dist/chunk-OPZ7XDDI.js +487 -0
  121. package/dist/chunk-OSYNRVOV.cjs +243 -0
  122. package/dist/{chunk-TEWCN33Y.js → chunk-P7YIA5LN.js} +91 -7
  123. package/dist/chunk-PGANYCAG.cjs +220 -0
  124. package/dist/{chunk-CS2EMTGF.js → chunk-QAVXL2IH.js} +62 -21
  125. package/dist/{chunk-T4NKMBDL.js → chunk-QCCBXSCE.js} +1666 -756
  126. package/dist/{chunk-F4IULT7N.js → chunk-QPOQ7VPI.js} +16 -13
  127. package/dist/{chunk-6XSERL6L.js → chunk-QTPMJRGS.js} +3108 -2827
  128. package/dist/{chunk-F3HH56EB.cjs → chunk-QWNQ523V.cjs} +1730 -823
  129. package/dist/{chunk-R7MA7QWV.js → chunk-R3IVNY6P.js} +102 -23
  130. package/dist/chunk-R75BSDH7.cjs +50 -0
  131. package/dist/{chunk-BF2235SI.cjs → chunk-RMHC2VG7.cjs} +2876 -2592
  132. package/dist/chunk-RUXGBKPS.cjs +4517 -0
  133. package/dist/{chunk-UERJ3YJV.js → chunk-S5IFXW6E.js} +113 -9
  134. package/dist/{chunk-27LWW5FU.cjs → chunk-S6YWHCKV.cjs} +5 -5
  135. package/dist/{chunk-WB4Z63GG.js → chunk-SIEXCILW.js} +3 -3
  136. package/dist/{chunk-CLYEIWA5.cjs → chunk-SLU6UPJI.cjs} +5 -3
  137. package/dist/{chunk-LZ266PCM.cjs → chunk-T5J7ZKP3.cjs} +446 -60
  138. package/dist/chunk-TDCNJHWO.js +341 -0
  139. package/dist/{chunk-IHOUYQIA.js → chunk-TG7O4WBC.js} +5 -5
  140. package/dist/chunk-THCK6ECW.js +2085 -0
  141. package/dist/chunk-TJHVSBP2.js +439 -0
  142. package/dist/chunk-TK74TR4H.js +5541 -0
  143. package/dist/{chunk-CDPGV4DN.js → chunk-U4NBQJBY.js} +14 -15
  144. package/dist/{chunk-NOZZ46QU.js → chunk-UD3DSHZM.js} +10 -14
  145. package/dist/chunk-UDMYRFDZ.js +3038 -0
  146. package/dist/{chunk-WDW67DZB.cjs → chunk-UOIGFQXC.cjs} +90 -68
  147. package/dist/{chunk-BU7VWW2K.js → chunk-URG2SJLK.js} +14 -15
  148. package/dist/{chunk-EQV4R3EV.cjs → chunk-V73NPPTM.cjs} +152 -35
  149. package/dist/chunk-VECQYRXL.js +474 -0
  150. package/dist/chunk-VEXPG4WN.js +1989 -0
  151. package/dist/{chunk-LDP5OK6G.js → chunk-VMLKSV26.js} +5 -5
  152. package/dist/{chunk-5BGSECRJ.cjs → chunk-VSK7W3O5.cjs} +47 -27
  153. package/dist/chunk-VVKVQZI6.js +55 -0
  154. package/dist/{chunk-YQK5JNFK.js → chunk-W55Z7QIX.js} +103 -15
  155. package/dist/{chunk-KSGXLT74.cjs → chunk-W6P2GBHH.cjs} +3 -3
  156. package/dist/{chunk-IBDG74G2.cjs → chunk-W6RW64BB.cjs} +7 -7
  157. package/dist/chunk-WDT3JTGM.cjs +483 -0
  158. package/dist/{chunk-HPS76H7Q.js → chunk-WKX5AMOY.js} +3 -3
  159. package/dist/chunk-WNNE3PO3.js +34 -0
  160. package/dist/{chunk-XG23EUQX.cjs → chunk-WRLUBRKS.cjs} +538 -312
  161. package/dist/{chunk-IFNQFCTM.js → chunk-WRNEH5MO.js} +79 -8
  162. package/dist/{chunk-54FHG2MX.js → chunk-WRWEX5ZF.js} +7 -4
  163. package/dist/{chunk-KCQ5NDYC.cjs → chunk-X3GJPRVK.cjs} +154 -80
  164. package/dist/{chunk-7AGYRWKW.cjs → chunk-XFXGA5IW.cjs} +126 -22
  165. package/dist/{chunk-TQSZUOW5.cjs → chunk-XHIV6326.cjs} +4 -4
  166. package/dist/chunk-XJAN7CZG.cjs +432 -0
  167. package/dist/chunk-XL6INWKT.js +121 -0
  168. package/dist/{chunk-E3UALNFA.js → chunk-XMWZG36H.js} +4 -4
  169. package/dist/{chunk-BKIGPPVM.js → chunk-XSFNHP2E.js} +6 -3
  170. package/dist/{chunk-H5Z7NASB.js → chunk-XT6JY5W5.js} +25 -3
  171. package/dist/chunk-XXZJEFKW.cjs +490 -0
  172. package/dist/chunk-Y3MWXQSB.cjs +5737 -0
  173. package/dist/chunk-YF2I3MV3.js +46 -0
  174. package/dist/{chunk-V3NN3HPP.js → chunk-YIMN575O.js} +437 -52
  175. package/dist/chunk-YIVFJNYV.js +176 -0
  176. package/dist/{chunk-MD6KDHVE.cjs → chunk-YKGPCZEE.cjs} +10 -10
  177. package/dist/chunk-YQELFNJV.js +39 -0
  178. package/dist/chunk-YSCKYJOB.cjs +2196 -0
  179. package/dist/chunk-Z5XMPRNC.cjs +5390 -0
  180. package/dist/{chunk-3FYZOR7S.cjs → chunk-ZDSYWBIE.cjs} +18 -18
  181. package/dist/{chunk-6TZPZCOJ.cjs → chunk-ZKSS47EV.cjs} +24 -19
  182. package/dist/chunk-ZUL5AVTX.cjs +1993 -0
  183. package/dist/chunk-ZXBZVXDW.js +5386 -0
  184. package/dist/{chunk-DMG7C4H2.js → chunk-ZZ7RO2UQ.js} +312 -44
  185. package/dist/cli/holoscript-runner.cjs +200 -204
  186. package/dist/cli/holoscript-runner.js +144 -148
  187. package/dist/codebase/index.cjs +1 -1
  188. package/dist/codebase/index.js +1 -1
  189. package/dist/compiler/agent-inference.cjs +10 -7
  190. package/dist/compiler/agent-inference.js +6 -3
  191. package/dist/compiler/android-xr.cjs +12 -7
  192. package/dist/compiler/android-xr.js +10 -5
  193. package/dist/compiler/android.cjs +12 -8
  194. package/dist/compiler/android.js +10 -6
  195. package/dist/compiler/ar.cjs +9 -6
  196. package/dist/compiler/ar.js +7 -4
  197. package/dist/compiler/babylon.cjs +12 -8
  198. package/dist/compiler/babylon.js +11 -7
  199. package/dist/compiler/business-quest.cjs +43 -0
  200. package/dist/compiler/business-quest.js +4 -0
  201. package/dist/compiler/coco.cjs +1 -1
  202. package/dist/compiler/coco.js +1 -1
  203. package/dist/compiler/context.cjs +25 -0
  204. package/dist/compiler/context.d.ts +28 -0
  205. package/dist/compiler/context.js +8 -0
  206. package/dist/compiler/domain-block-utils.cjs +155 -152
  207. package/dist/compiler/domain-block-utils.js +7 -4
  208. package/dist/compiler/dtdl.cjs +10 -7
  209. package/dist/compiler/dtdl.js +7 -4
  210. package/dist/compiler/gltf-pipeline.cjs +9 -9
  211. package/dist/compiler/gltf-pipeline.js +2 -2
  212. package/dist/compiler/godot.cjs +9 -6
  213. package/dist/compiler/godot.js +8 -5
  214. package/dist/compiler/incremental.cjs +12 -7
  215. package/dist/compiler/incremental.js +7 -2
  216. package/dist/compiler/index.cjs +3550 -268
  217. package/dist/compiler/index.d.ts +404 -21
  218. package/dist/compiler/index.js +3280 -138
  219. package/dist/compiler/ios.cjs +11 -8
  220. package/dist/compiler/ios.js +9 -6
  221. package/dist/compiler/llm-provider-capabilities.cjs +25 -0
  222. package/dist/compiler/llm-provider-capabilities.d.ts +43 -0
  223. package/dist/compiler/llm-provider-capabilities.js +8 -0
  224. package/dist/compiler/multi-layer.cjs +14 -10
  225. package/dist/compiler/multi-layer.js +13 -9
  226. package/dist/compiler/nodetoy.cjs +5 -5
  227. package/dist/compiler/nodetoy.js +2 -2
  228. package/dist/compiler/openxr.cjs +10 -6
  229. package/dist/compiler/openxr.js +9 -5
  230. package/dist/compiler/playcanvas.cjs +10 -7
  231. package/dist/compiler/playcanvas.js +9 -6
  232. package/dist/compiler/r3f.cjs +17 -13
  233. package/dist/compiler/r3f.d.ts +22 -0
  234. package/dist/compiler/r3f.js +12 -8
  235. package/dist/compiler/remotion.cjs +1 -1
  236. package/dist/compiler/remotion.js +1 -1
  237. package/dist/compiler/reproducibility.cjs +1 -1
  238. package/dist/compiler/reproducibility.js +1 -1
  239. package/dist/compiler/sdf.cjs +10 -7
  240. package/dist/compiler/sdf.js +8 -5
  241. package/dist/compiler/semantic-scene.cjs +1 -1
  242. package/dist/compiler/semantic-scene.js +1 -1
  243. package/dist/compiler/state.cjs +9 -5
  244. package/dist/compiler/state.js +7 -3
  245. package/dist/compiler/trait-composition.cjs +11 -7
  246. package/dist/compiler/trait-composition.js +7 -3
  247. package/dist/compiler/unity.cjs +10 -6
  248. package/dist/compiler/unity.js +9 -5
  249. package/dist/compiler/unreal.cjs +11 -7
  250. package/dist/compiler/unreal.js +9 -5
  251. package/dist/compiler/urdf.cjs +20 -13
  252. package/dist/compiler/urdf.js +8 -5
  253. package/dist/compiler/usd-physics.cjs +10 -7
  254. package/dist/compiler/usd-physics.js +7 -4
  255. package/dist/compiler/visionos.cjs +10 -6
  256. package/dist/compiler/visionos.js +9 -5
  257. package/dist/compiler/vrchat.cjs +10 -7
  258. package/dist/compiler/vrchat.js +8 -5
  259. package/dist/compiler/vrr.cjs +10 -7
  260. package/dist/compiler/vrr.js +8 -5
  261. package/dist/compiler/wasm.cjs +13 -10
  262. package/dist/compiler/wasm.js +8 -5
  263. package/dist/compiler/webgpu.cjs +9 -6
  264. package/dist/compiler/webgpu.js +8 -5
  265. package/dist/constants.d.ts +3 -2
  266. package/dist/coordinators/index.cjs +1266 -0
  267. package/dist/coordinators/index.d.ts +260 -0
  268. package/dist/coordinators/index.js +1259 -0
  269. package/dist/debugger.cjs +9 -7
  270. package/dist/debugger.js +7 -5
  271. package/dist/entries/interop.cjs +23 -21
  272. package/dist/entries/interop.js +5 -3
  273. package/dist/entries/scripting.cjs +18 -18
  274. package/dist/entries/scripting.js +8 -8
  275. package/dist/hololand/index.cjs +146 -0
  276. package/dist/hololand/index.d.ts +70 -0
  277. package/dist/hololand/index.js +5 -0
  278. package/dist/index.cjs +20332 -18121
  279. package/dist/index.d.ts +1477 -40
  280. package/dist/index.js +19451 -17638
  281. package/dist/math/tropical-spmv.cjs +45 -0
  282. package/dist/math/tropical-spmv.js +4 -0
  283. package/dist/math/vec3.cjs +14 -14
  284. package/dist/math/vec3.js +2 -2
  285. package/dist/{ml-dsa-PHCWUBPX.cjs → ml-dsa-FSKBTE3W.cjs} +177 -90
  286. package/dist/{ml-dsa-WYLJHJO6.js → ml-dsa-Z7JDKW4L.js} +158 -71
  287. package/dist/paper-0c-spike/index.cjs +150 -0
  288. package/dist/paper-0c-spike/index.d.ts +29 -0
  289. package/dist/paper-0c-spike/index.js +141 -0
  290. package/dist/parser.cjs +45 -11
  291. package/dist/parser.d.ts +11 -0
  292. package/dist/parser.js +10 -8
  293. package/dist/{playwright-RL6GY4F7.cjs → playwright-3AT3AKTV.cjs} +1985 -1985
  294. package/dist/{playwright-5OSAPTNH.js → playwright-VZPDVUEQ.js} +3 -3
  295. package/dist/reconstruction/index.cjs +153 -0
  296. package/dist/reconstruction/index.d.ts +105 -0
  297. package/dist/reconstruction/index.js +8 -0
  298. package/dist/runtime.cjs +7 -5
  299. package/dist/runtime.js +6 -4
  300. package/dist/self-improvement/index.cjs +563 -0
  301. package/dist/self-improvement/index.js +545 -0
  302. package/dist/storage/index.cjs +10 -9
  303. package/dist/storage/index.js +3 -2
  304. package/dist/testing.cjs +25 -0
  305. package/dist/testing.d.ts +70 -0
  306. package/dist/testing.js +4 -0
  307. package/dist/tools/index.d.ts +22 -1
  308. package/dist/traitDocs/traitDocs.cjs +33 -0
  309. package/dist/traitDocs/traitDocs.d.ts +69 -0
  310. package/dist/traitDocs/traitDocs.js +7 -0
  311. package/dist/traits/botanical-lotus.cjs +41 -0
  312. package/dist/traits/botanical-lotus.d.ts +172 -0
  313. package/dist/traits/botanical-lotus.js +4 -0
  314. package/dist/traits/engines/index.cjs +520 -0
  315. package/dist/traits/engines/index.d.ts +111 -0
  316. package/dist/traits/engines/index.js +380 -0
  317. package/dist/traits/index.cjs +17630 -7881
  318. package/dist/traits/index.d.ts +197 -0
  319. package/dist/traits/index.js +16573 -7193
  320. package/dist/traits/simulation-solver-factory.cjs +13 -0
  321. package/dist/traits/simulation-solver-factory.d.ts +23 -0
  322. package/dist/traits/simulation-solver-factory.js +4 -0
  323. package/dist/traits/webcam-gaze.cjs +35 -0
  324. package/dist/traits/webcam-gaze.d.ts +17 -0
  325. package/dist/traits/webcam-gaze.js +4 -0
  326. package/dist/type-checker.cjs +6 -5
  327. package/dist/type-checker.js +4 -3
  328. package/dist/world/index.cjs +947 -0
  329. package/dist/world/index.d.ts +147 -0
  330. package/dist/world/index.js +939 -0
  331. package/dist/world-model/index.cjs +1446 -0
  332. package/dist/world-model/index.d.ts +119 -0
  333. package/dist/world-model/index.js +1414 -0
  334. package/dist/wot/index.cjs +29 -0
  335. package/dist/wot/index.js +4 -0
  336. package/package.json +153 -61
  337. package/dist/GLTFPipeline-DEN36VNK.js +0 -12
  338. package/dist/GLTFPipeline-YPCAK236.cjs +0 -33
  339. package/dist/chunk-4XSNJCLC.cjs +0 -1859
  340. package/dist/chunk-A7PIMZGU.js +0 -263
  341. package/dist/chunk-BWFJEM5A.js +0 -5419
  342. package/dist/chunk-CBJSLA2E.cjs +0 -5423
  343. package/dist/chunk-K3JDKWGI.cjs +0 -270
  344. package/dist/chunk-LSW7P7ML.js +0 -3675
  345. package/dist/chunk-MEASWI2Y.js +0 -126
  346. package/dist/chunk-NCUKG4SK.cjs +0 -3075
  347. package/dist/chunk-Q5JT3YML.cjs +0 -129
  348. package/dist/chunk-QGKNANZ3.js +0 -3071
  349. package/dist/chunk-S2N5TNMA.js +0 -1855
  350. package/dist/chunk-TSH3MSQU.cjs +0 -129
  351. package/dist/chunk-WGMEAYBG.js +0 -126
  352. package/dist/chunk-X6SEAXAX.cjs +0 -3681
@@ -0,0 +1,215 @@
1
+ // src/testing/DeterminismHarness.ts
2
+ function getGlobal() {
3
+ return globalThis ?? {};
4
+ }
5
+ function detectRuntime() {
6
+ const g = getGlobal();
7
+ if (typeof g.window !== "undefined" && typeof g.document !== "undefined") {
8
+ return "browser";
9
+ }
10
+ if (typeof g.process !== "undefined" && g.process.versions?.node) {
11
+ return "node";
12
+ }
13
+ return "unknown";
14
+ }
15
+ function detectBrowserFromUserAgent(ua) {
16
+ if (!ua) return {};
17
+ let browser;
18
+ let os;
19
+ if (/Firefox\//.test(ua)) browser = "firefox";
20
+ else if (/Edg\//.test(ua)) browser = "edge";
21
+ else if (/Chrome\//.test(ua)) browser = "chromium";
22
+ else if (/Safari\//.test(ua)) browser = "safari";
23
+ if (/Windows NT/.test(ua)) os = "windows";
24
+ else if (/Mac OS X/.test(ua)) os = "macos";
25
+ else if (/Linux/.test(ua)) os = "linux";
26
+ else if (/Android/.test(ua)) os = "android";
27
+ else if (/iPhone|iPad/.test(ua)) os = "ios";
28
+ return { browser, os };
29
+ }
30
+ async function captureEnvironment(annotations = {}) {
31
+ const runtime = detectRuntime();
32
+ const g = getGlobal();
33
+ const info = { runtime };
34
+ if (Object.keys(annotations).length > 0) info.annotations = { ...annotations };
35
+ if (runtime === "browser") {
36
+ const nav = g.navigator;
37
+ const ua = nav?.userAgent;
38
+ info.browser = { userAgent: ua, ...detectBrowserFromUserAgent(ua) };
39
+ if (nav?.gpu?.requestAdapter) {
40
+ try {
41
+ const adapter = await nav.gpu.requestAdapter();
42
+ let gpuInfo = adapter?.info;
43
+ if (!gpuInfo && adapter?.requestAdapterInfo) {
44
+ gpuInfo = await adapter.requestAdapterInfo();
45
+ }
46
+ if (gpuInfo) {
47
+ info.gpu = {
48
+ vendor: gpuInfo.vendor,
49
+ architecture: gpuInfo.architecture,
50
+ device: gpuInfo.device,
51
+ description: gpuInfo.description,
52
+ backend: "webgpu"
53
+ };
54
+ }
55
+ } catch {
56
+ }
57
+ }
58
+ } else if (runtime === "node") {
59
+ const proc = g.process;
60
+ if (proc) {
61
+ info.node = {
62
+ version: proc.versions?.node ?? "unknown",
63
+ arch: proc.arch ?? "unknown",
64
+ platform: proc.platform ?? "unknown"
65
+ };
66
+ }
67
+ }
68
+ return info;
69
+ }
70
+ function toUint8Array(input) {
71
+ if (input instanceof Uint8Array) return input;
72
+ if (typeof TextEncoder !== "undefined") {
73
+ return new TextEncoder().encode(input);
74
+ }
75
+ const bytes = new Uint8Array(input.length);
76
+ for (let i = 0; i < input.length; i++) bytes[i] = input.charCodeAt(i) & 255;
77
+ return bytes;
78
+ }
79
+ function fnv1a64Hex(bytes) {
80
+ let hash = 0xcbf29ce484222325n;
81
+ const prime = 0x100000001b3n;
82
+ const mask = 0xffffffffffffffffn;
83
+ for (let i = 0; i < bytes.length; i++) {
84
+ hash = (hash ^ BigInt(bytes[i])) & mask;
85
+ hash = hash * prime & mask;
86
+ }
87
+ return hash.toString(16).padStart(16, "0");
88
+ }
89
+ async function hashBytes(input, algo = "sha256") {
90
+ const bytes = toUint8Array(input);
91
+ if (algo === "sha256") {
92
+ const g = getGlobal();
93
+ const subtle = g.crypto?.subtle;
94
+ if (subtle && typeof subtle.digest === "function") {
95
+ try {
96
+ const digest = await subtle.digest("SHA-256", bytes);
97
+ const view = new Uint8Array(digest);
98
+ let hex = "";
99
+ for (let i = 0; i < view.length; i++) hex += view[i].toString(16).padStart(2, "0");
100
+ return `sha256:${hex}`;
101
+ } catch {
102
+ }
103
+ }
104
+ }
105
+ return `fnv1a-64:${fnv1a64Hex(bytes)}`;
106
+ }
107
+ var DeterminismHarness = class {
108
+ constructor(options = {}) {
109
+ this.options = {
110
+ captureOutput: options.captureOutput ?? false,
111
+ hashAlgorithm: options.hashAlgorithm ?? "sha256",
112
+ annotations: options.annotations ?? {}
113
+ };
114
+ }
115
+ /**
116
+ * Run a probe function, capture environment, hash the output,
117
+ * return a structured ProbeResult. Never throws — errors are
118
+ * caught and reported on the result's `error` field with a
119
+ * sentinel outputHash of `error:<message>`.
120
+ */
121
+ async probe(name, fn, annotations = {}) {
122
+ const timestamp = Date.now();
123
+ const mergedAnnotations = { ...this.options.annotations, ...annotations };
124
+ const environment = await captureEnvironment(mergedAnnotations);
125
+ const started = typeof performance !== "undefined" ? performance.now() : timestamp;
126
+ let output;
127
+ let error;
128
+ try {
129
+ output = await fn();
130
+ } catch (err) {
131
+ error = err instanceof Error ? err.message : String(err);
132
+ }
133
+ const ended = typeof performance !== "undefined" ? performance.now() : Date.now();
134
+ const durationMs = Math.max(0, ended - started);
135
+ if (error !== void 0 || output === void 0) {
136
+ return {
137
+ name,
138
+ timestamp,
139
+ environment,
140
+ durationMs,
141
+ outputHash: `error:${error ?? "no-output"}`,
142
+ outputSize: 0,
143
+ error
144
+ };
145
+ }
146
+ const outputHash = await hashBytes(output, this.options.hashAlgorithm);
147
+ const outputSize = output instanceof Uint8Array ? output.byteLength : toUint8Array(output).byteLength;
148
+ const result = {
149
+ name,
150
+ timestamp,
151
+ environment,
152
+ durationMs,
153
+ outputHash,
154
+ outputSize
155
+ };
156
+ if (this.options.captureOutput) result.output = output;
157
+ return result;
158
+ }
159
+ /**
160
+ * Compare a collection of probe results and report whether they
161
+ * agree. Groups results by hash so the caller can see which
162
+ * environments produced which outputs.
163
+ */
164
+ static compareResults(results) {
165
+ if (results.length === 0) {
166
+ return {
167
+ probeName: "(empty)",
168
+ totalResults: 0,
169
+ uniqueHashes: 0,
170
+ divergent: false,
171
+ groups: [],
172
+ summary: "No results supplied to compare."
173
+ };
174
+ }
175
+ const probeName = results[0].name;
176
+ const byHash = /* @__PURE__ */ new Map();
177
+ for (const r of results) {
178
+ const existing = byHash.get(r.outputHash);
179
+ if (existing) existing.push(r);
180
+ else byHash.set(r.outputHash, [r]);
181
+ }
182
+ const groups = Array.from(byHash.entries()).map(([hash, rs]) => ({
183
+ hash,
184
+ results: rs,
185
+ environments: rs.map((r) => describeEnvironment(r.environment))
186
+ }));
187
+ const divergent = groups.length > 1;
188
+ const summary = divergent ? `DIVERGENT: ${groups.length} distinct hashes across ${results.length} runs of "${probeName}".` : `CONVERGENT: all ${results.length} runs of "${probeName}" produced hash ${groups[0].hash}.`;
189
+ return {
190
+ probeName,
191
+ totalResults: results.length,
192
+ uniqueHashes: groups.length,
193
+ divergent,
194
+ groups,
195
+ summary
196
+ };
197
+ }
198
+ };
199
+ function describeEnvironment(env) {
200
+ const parts = [env.runtime];
201
+ if (env.browser?.browser) parts.push(env.browser.browser);
202
+ if (env.browser?.os) parts.push(env.browser.os);
203
+ if (env.node) parts.push(`node ${env.node.version} ${env.node.platform}/${env.node.arch}`);
204
+ if (env.gpu?.vendor) parts.push(`gpu:${env.gpu.vendor}${env.gpu.architecture ? "/" + env.gpu.architecture : ""}`);
205
+ if (env.annotations) {
206
+ for (const [k, v] of Object.entries(env.annotations)) {
207
+ parts.push(`${k}=${v}`);
208
+ }
209
+ }
210
+ return parts.join(" | ");
211
+ }
212
+
213
+ export { DeterminismHarness, captureEnvironment, describeEnvironment, hashBytes };
214
+ //# sourceMappingURL=chunk-NW5G5FBQ.js.map
215
+ //# sourceMappingURL=chunk-NW5G5FBQ.js.map
@@ -1,7 +1,7 @@
1
- import { init_DomainBlockCompilerMixin, compileDomainBlocks, inputToVRChat, compileInputBlock, navigationToVRChat, compileNavigationBlock, renderingToVRChat, compileRenderingBlock, proceduralToVRChat, compileProceduralBlock, web3ToVRChat, compileWeb3Block, architectureToVRChat, compileArchitectureBlock, musicToVRChat, compileMusicBlock, educationToVRChat, compileEducationBlock, datavizToVRChat, compileDataVizBlock, iotToVRChat, compileIoTBlock, compileRoboticsBlock, roboticsToVRChat, compileHealthcareBlock, healthcareToVRChat, compilePaymentBlock, paymentToVRChat, compileNarrativeBlock, narrativeToVRChat, compileWeatherBlock, weatherToUnity, compileAudioSourceBlock, audioSourceToUnity, compilePostProcessingBlock, postProcessingToUnity, compileParticleBlock, particlesToUnity, compilePhysicsBlock, physicsToUnity, compileMaterialBlock, materialToVRChat } from './chunk-YQK5JNFK.js';
2
- import { init_CompilerBase, CompilerBase } from './chunk-6XSERL6L.js';
3
- import { __export, __esm } from './chunk-2CWOLHTE.js';
4
- import { ANSCapabilityPath } from '@holoscript/platform';
1
+ import { init_DomainBlockCompilerMixin, compileDomainBlocks, inputToVRChat, compileInputBlock, navigationToVRChat, compileNavigationBlock, renderingToVRChat, compileRenderingBlock, proceduralToVRChat, compileProceduralBlock, web3ToVRChat, compileWeb3Block, architectureToVRChat, compileArchitectureBlock, musicToVRChat, compileMusicBlock, educationToVRChat, compileEducationBlock, datavizToVRChat, compileDataVizBlock, iotToVRChat, compileIoTBlock, compileRoboticsBlock, roboticsToVRChat, compileHealthcareBlock, healthcareToVRChat, compilePaymentBlock, paymentToVRChat, compileNarrativeBlock, narrativeToVRChat, compileWeatherBlock, weatherToUnity, compileAudioSourceBlock, audioSourceToUnity, compilePostProcessingBlock, postProcessingToUnity, compileParticleBlock, particlesToUnity, compilePhysicsBlock, physicsToUnity, compileMaterialBlock, materialToVRChat } from './chunk-W55Z7QIX.js';
2
+ import { init_CompilerBase, CompilerBase } from './chunk-QTPMJRGS.js';
3
+ import { __export, __esm } from './chunk-OL46QLBJ.js';
4
+ import { ANSCapabilityPath } from '@holoscript/core-types/ans';
5
5
 
6
6
  // src/compiler/VRChatCompiler.ts
7
7
  var VRChatCompiler_exports = {};
@@ -26,13 +26,17 @@ var init_VRChatCompiler = __esm({
26
26
  this.indentLevel = 0;
27
27
  this.udonScripts = /* @__PURE__ */ new Map();
28
28
  this.interactableObjects = [];
29
+ this.worldIdCounter = 0;
30
+ const outputFormat = options.outputFormat ?? (options.useUdonSharp === false ? "udon-assembly" : "udonsharp-csharp");
29
31
  this.options = {
30
32
  namespace: options.namespace || "HoloWorld",
31
33
  className: options.className || "GeneratedWorld",
32
34
  worldName: options.worldName || "HoloScript World",
33
35
  indent: options.indent || " ",
34
36
  sdkVersion: options.sdkVersion || "3.5",
35
- useUdonSharp: options.useUdonSharp ?? true
37
+ outputFormat,
38
+ useUdonSharp: options.useUdonSharp ?? outputFormat === "udonsharp-csharp",
39
+ provenanceHash: options.provenanceHash ?? ""
36
40
  };
37
41
  }
38
42
  getRequiredCapability() {
@@ -40,6 +44,7 @@ var init_VRChatCompiler = __esm({
40
44
  }
41
45
  compile(composition, agentToken, outputPath) {
42
46
  this.validateCompilerAccess(agentToken, outputPath);
47
+ this.assertSupportedOutputFormat();
43
48
  this.lines = [];
44
49
  this.udonScripts.clear();
45
50
  this.interactableObjects = [];
@@ -49,12 +54,22 @@ var init_VRChatCompiler = __esm({
49
54
  const prefabHierarchy = this.generatePrefabHierarchy(composition);
50
55
  const worldDescriptor = this.generateWorldDescriptor(composition);
51
56
  return {
57
+ outputFormat: this.options.outputFormat,
52
58
  mainScript,
53
59
  udonScripts: this.udonScripts,
54
60
  prefabHierarchy,
55
61
  worldDescriptor
56
62
  };
57
63
  }
64
+ assertSupportedOutputFormat() {
65
+ if (this.options.outputFormat === "udonsharp-csharp" && this.options.useUdonSharp) {
66
+ return;
67
+ }
68
+ const requested = this.options.outputFormat === "udonsharp-csharp" ? "non-UdonSharp Udon output" : this.options.outputFormat;
69
+ throw new Error(
70
+ `VRChat ${requested} output is gated: founder direction is Byte/Udon output, but the artifact contract must be confirmed before implementation (Udon Assembly text vs serialized Udon bytecode asset). The current compiler only emits legacy UdonSharp C# with outputFormat: 'udonsharp-csharp' and useUdonSharp: true.`
71
+ );
72
+ }
58
73
  generateMainScript(composition) {
59
74
  this.lines = [];
60
75
  this.indentLevel = 0;
@@ -64,6 +79,9 @@ var init_VRChatCompiler = __esm({
64
79
  );
65
80
  this.emit(`// VRChat SDK: ${this.options.sdkVersion}`);
66
81
  this.emit("// Do not edit manually \xE2\u20AC\u201D regenerate from .holo source");
82
+ if (this.options.provenanceHash) {
83
+ this.emit(`// Provenance Hash: ${this.options.provenanceHash}`);
84
+ }
67
85
  this.emit("");
68
86
  this.emit("using UdonSharp;");
69
87
  this.emit("using UnityEngine;");
@@ -510,12 +528,9 @@ var init_VRChatCompiler = __esm({
510
528
  this.emit("");
511
529
  }
512
530
  generateWorldId() {
513
- const chars = "abcdef0123456789";
514
- let id = "";
515
- for (let i = 0; i < 8; i++) {
516
- id += chars[Math.floor(Math.random() * chars.length)];
517
- }
518
- return id + "-0000-0000-0000-000000000000";
531
+ const seq = this.worldIdCounter++;
532
+ const hex = seq.toString(16).padStart(8, "0");
533
+ return `${hex}-0000-0000-0000-000000000000`;
519
534
  }
520
535
  // === Utility Methods ===
521
536
  emit(line) {
@@ -604,5 +619,5 @@ var init_VRChatCompiler = __esm({
604
619
  });
605
620
 
606
621
  export { VRChatCompiler, VRChatCompiler_exports, compileToVRChat, init_VRChatCompiler };
607
- //# sourceMappingURL=chunk-E3FWRT3Z.js.map
608
- //# sourceMappingURL=chunk-E3FWRT3Z.js.map
622
+ //# sourceMappingURL=chunk-OEFY723R.js.map
623
+ //# sourceMappingURL=chunk-OEFY723R.js.map