@holoscript/core 6.0.4 → 6.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (351) 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-4R6HPSHJ.js +2176 -0
  29. package/dist/chunk-4R6SBXDB.js +45 -0
  30. package/dist/chunk-4SY77NA4.cjs +413 -0
  31. package/dist/{chunk-YCXFCXDS.js → chunk-4UUKPCY4.js} +668 -110
  32. package/dist/{chunk-LGGRPKTV.cjs → chunk-52ULD552.cjs} +114 -35
  33. package/dist/{chunk-L4G4RLXX.js → chunk-5CKA5SXU.js} +438 -22
  34. package/dist/chunk-5FSKKMR7.cjs +2092 -0
  35. package/dist/{chunk-FF3Q7ADR.js → chunk-5JEU52DW.js} +5 -3
  36. package/dist/chunk-5N54COB6.cjs +327 -0
  37. package/dist/chunk-5S7RKFGR.cjs +446 -0
  38. package/dist/{chunk-KED34ILP.js → chunk-6ASWLXXN.js} +21 -9
  39. package/dist/chunk-6CTRH7HT.cjs +1985 -0
  40. package/dist/{chunk-CAUCGUEA.cjs → chunk-6EX3I5P4.cjs} +6 -6
  41. package/dist/chunk-6FGQNDR4.js +5731 -0
  42. package/dist/{chunk-72EQECGT.cjs → chunk-6KMK2UXT.cjs} +122 -46
  43. package/dist/{chunk-G4VZTCIB.js → chunk-6L4VE27M.js} +33 -23
  44. package/dist/{chunk-ATSKSYVE.cjs → chunk-6S6TKNEA.cjs} +6478 -1738
  45. package/dist/chunk-77V4GTCA.js +596 -0
  46. package/dist/{chunk-ZP4D3CSX.cjs → chunk-7AD52FRS.cjs} +16 -16
  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-G2LS3RFO.js +623 -0
  75. package/dist/chunk-GCMWDSBZ.cjs +729 -0
  76. package/dist/chunk-GJNCFRJU.cjs +125 -0
  77. package/dist/{chunk-Q4QX3AET.cjs → chunk-GMP623FG.cjs} +16 -13
  78. package/dist/{chunk-XD6IYDUX.js → chunk-GN3KDX4W.js} +119 -43
  79. package/dist/{chunk-QLEAOI3Q.cjs → chunk-GQYKQSTC.cjs} +10 -10
  80. package/dist/chunk-GTU2Z2WW.cjs +262 -0
  81. package/dist/chunk-GZG4KA4E.js +529 -0
  82. package/dist/{chunk-BND3ST2K.cjs → chunk-H3MGK7TX.cjs} +42 -32
  83. package/dist/{chunk-XRKWN5PL.cjs → chunk-H5DZIHJP.cjs} +14 -18
  84. package/dist/{chunk-Z34RLXRA.cjs → chunk-HANL7K2Q.cjs} +65 -50
  85. package/dist/{chunk-3SAK5KFL.cjs → chunk-HCCQLAA4.cjs} +2 -11
  86. package/dist/{chunk-LXJ4667L.cjs → chunk-HGVXZDSK.cjs} +108 -20
  87. package/dist/{chunk-3FJCK5XA.js → chunk-HRODTEEO.js} +30 -10
  88. package/dist/{chunk-HQUEA5R6.cjs → chunk-HZCQO4JM.cjs} +6 -6
  89. package/dist/{chunk-S565K7NK.js → chunk-I2O7TW6B.js} +12 -8
  90. package/dist/chunk-IHESJZSW.js +4490 -0
  91. package/dist/{chunk-FSF7EQVA.cjs → chunk-IRWWS72C.cjs} +63 -22
  92. package/dist/{chunk-5O6TQC6M.cjs → chunk-IVIA7K75.cjs} +689 -127
  93. package/dist/chunk-IVY74O6C.js +247 -0
  94. package/dist/chunk-J32ZJZJH.js +554 -0
  95. package/dist/chunk-J56PTA46.cjs +639 -0
  96. package/dist/chunk-JD7CIZ33.js +1949 -0
  97. package/dist/{chunk-T7LEXZUZ.cjs → chunk-JIYN45TV.cjs} +14 -15
  98. package/dist/{chunk-FFKU7BTK.cjs → chunk-KHPCJRI3.cjs} +24 -21
  99. package/dist/chunk-KKFZ3B6J.cjs +557 -0
  100. package/dist/chunk-KPJL34Y7.cjs +186 -0
  101. package/dist/{chunk-HE7ULERA.cjs → chunk-KQTPCYTG.cjs} +128 -44
  102. package/dist/{chunk-OFKWH2IP.js → chunk-KX76JUQY.js} +3 -3
  103. package/dist/{chunk-33LSUQDD.cjs → chunk-L63H3SQ4.cjs} +43 -31
  104. package/dist/{chunk-K6EKD26I.js → chunk-LAOCQJ2M.js} +64 -8
  105. package/dist/chunk-LM2VU56C.cjs +37 -0
  106. package/dist/chunk-M56JSP4A.js +400 -0
  107. package/dist/chunk-MBOOR7X4.js +18 -0
  108. package/dist/{chunk-XWPNTWDN.cjs → chunk-MJVIRCUV.cjs} +31 -27
  109. package/dist/{chunk-SDAMZIRE.js → chunk-MSMIFMBL.js} +135 -18
  110. package/dist/{chunk-56IF4NTA.js → chunk-MXFUTKCO.js} +18 -18
  111. package/dist/{chunk-6UEHYZ7V.cjs → chunk-MXJ5SS53.cjs} +447 -31
  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-RAXUF5DF.cjs +2196 -0
  132. package/dist/{chunk-BF2235SI.cjs → chunk-RMHC2VG7.cjs} +2876 -2592
  133. package/dist/chunk-RUXGBKPS.cjs +4517 -0
  134. package/dist/{chunk-UERJ3YJV.js → chunk-S5IFXW6E.js} +113 -9
  135. package/dist/{chunk-27LWW5FU.cjs → chunk-S6YWHCKV.cjs} +5 -5
  136. package/dist/{chunk-WB4Z63GG.js → chunk-SIEXCILW.js} +3 -3
  137. package/dist/{chunk-CLYEIWA5.cjs → chunk-SLU6UPJI.cjs} +5 -3
  138. package/dist/{chunk-LZ266PCM.cjs → chunk-T5J7ZKP3.cjs} +446 -60
  139. package/dist/chunk-TDCNJHWO.js +341 -0
  140. package/dist/{chunk-IHOUYQIA.js → chunk-TG7O4WBC.js} +5 -5
  141. package/dist/chunk-THCK6ECW.js +2085 -0
  142. package/dist/chunk-TJHVSBP2.js +439 -0
  143. package/dist/chunk-TK74TR4H.js +5541 -0
  144. package/dist/{chunk-CDPGV4DN.js → chunk-U4NBQJBY.js} +14 -15
  145. package/dist/{chunk-NOZZ46QU.js → chunk-UD3DSHZM.js} +10 -14
  146. package/dist/chunk-UDMYRFDZ.js +3038 -0
  147. package/dist/{chunk-WDW67DZB.cjs → chunk-UOIGFQXC.cjs} +90 -68
  148. package/dist/{chunk-BU7VWW2K.js → chunk-URG2SJLK.js} +14 -15
  149. package/dist/{chunk-EQV4R3EV.cjs → chunk-V73NPPTM.cjs} +152 -35
  150. package/dist/chunk-VECQYRXL.js +474 -0
  151. package/dist/chunk-VEXPG4WN.js +1989 -0
  152. package/dist/{chunk-LDP5OK6G.js → chunk-VMLKSV26.js} +5 -5
  153. package/dist/{chunk-5BGSECRJ.cjs → chunk-VSK7W3O5.cjs} +47 -27
  154. package/dist/chunk-VVKVQZI6.js +55 -0
  155. package/dist/{chunk-YQK5JNFK.js → chunk-W55Z7QIX.js} +103 -15
  156. package/dist/{chunk-KSGXLT74.cjs → chunk-W6P2GBHH.cjs} +3 -3
  157. package/dist/{chunk-IBDG74G2.cjs → chunk-W6RW64BB.cjs} +7 -7
  158. package/dist/chunk-WDT3JTGM.cjs +483 -0
  159. package/dist/{chunk-HPS76H7Q.js → chunk-WKX5AMOY.js} +3 -3
  160. package/dist/chunk-WNNE3PO3.js +34 -0
  161. package/dist/{chunk-XG23EUQX.cjs → chunk-WRLUBRKS.cjs} +538 -312
  162. package/dist/{chunk-IFNQFCTM.js → chunk-WRNEH5MO.js} +79 -8
  163. package/dist/{chunk-54FHG2MX.js → chunk-WRWEX5ZF.js} +7 -4
  164. package/dist/{chunk-KCQ5NDYC.cjs → chunk-X3GJPRVK.cjs} +154 -80
  165. package/dist/{chunk-7AGYRWKW.cjs → chunk-XFXGA5IW.cjs} +126 -22
  166. package/dist/{chunk-TQSZUOW5.cjs → chunk-XHIV6326.cjs} +4 -4
  167. package/dist/chunk-XJAN7CZG.cjs +432 -0
  168. package/dist/chunk-XL6INWKT.js +121 -0
  169. package/dist/{chunk-E3UALNFA.js → chunk-XMWZG36H.js} +4 -4
  170. package/dist/{chunk-BKIGPPVM.js → chunk-XSFNHP2E.js} +6 -3
  171. package/dist/{chunk-H5Z7NASB.js → chunk-XT6JY5W5.js} +25 -3
  172. package/dist/chunk-XXZJEFKW.cjs +490 -0
  173. package/dist/chunk-Y3MWXQSB.cjs +5737 -0
  174. package/dist/chunk-YF2I3MV3.js +46 -0
  175. package/dist/{chunk-V3NN3HPP.js → chunk-YIMN575O.js} +437 -52
  176. package/dist/chunk-YIVFJNYV.js +176 -0
  177. package/dist/{chunk-MD6KDHVE.cjs → chunk-YKGPCZEE.cjs} +10 -10
  178. package/dist/chunk-YQELFNJV.js +39 -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.js +380 -0
  316. package/dist/traits/index.cjs +17630 -7881
  317. package/dist/traits/index.d.ts +197 -0
  318. package/dist/traits/index.js +16573 -7193
  319. package/dist/traits/simulation-solver-factory.cjs +13 -0
  320. package/dist/traits/simulation-solver-factory.d.ts +23 -0
  321. package/dist/traits/simulation-solver-factory.js +4 -0
  322. package/dist/traits/webcam-gaze.cjs +35 -0
  323. package/dist/traits/webcam-gaze.d.ts +17 -0
  324. package/dist/traits/webcam-gaze.js +4 -0
  325. package/dist/type-checker.cjs +6 -5
  326. package/dist/type-checker.js +4 -3
  327. package/dist/world/index.cjs +947 -0
  328. package/dist/world/index.d.ts +147 -0
  329. package/dist/world/index.js +939 -0
  330. package/dist/world-model/index.cjs +1446 -0
  331. package/dist/world-model/index.d.ts +119 -0
  332. package/dist/world-model/index.js +1414 -0
  333. package/dist/wot/index.cjs +29 -0
  334. package/dist/wot/index.js +4 -0
  335. package/package.json +153 -61
  336. package/dist/GLTFPipeline-DEN36VNK.js +0 -12
  337. package/dist/GLTFPipeline-YPCAK236.cjs +0 -33
  338. package/dist/chunk-4XSNJCLC.cjs +0 -1859
  339. package/dist/chunk-A7PIMZGU.js +0 -263
  340. package/dist/chunk-BWFJEM5A.js +0 -5419
  341. package/dist/chunk-CBJSLA2E.cjs +0 -5423
  342. package/dist/chunk-K3JDKWGI.cjs +0 -270
  343. package/dist/chunk-LSW7P7ML.js +0 -3675
  344. package/dist/chunk-MEASWI2Y.js +0 -126
  345. package/dist/chunk-NCUKG4SK.cjs +0 -3075
  346. package/dist/chunk-Q5JT3YML.cjs +0 -129
  347. package/dist/chunk-QGKNANZ3.js +0 -3071
  348. package/dist/chunk-S2N5TNMA.js +0 -1855
  349. package/dist/chunk-TSH3MSQU.cjs +0 -129
  350. package/dist/chunk-WGMEAYBG.js +0 -126
  351. 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