@holoscript/core 8.0.8 → 8.0.10

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 (463) hide show
  1. package/LICENSE +21 -0
  2. package/bin/holoscript.cjs +5 -1
  3. package/dist/GLTFPipeline-L76YTXKA.js +15 -0
  4. package/dist/GLTFPipeline-ZWJN7GI6.cjs +36 -0
  5. package/dist/HoloCompositionParser-K76KTEEE.js +12 -0
  6. package/dist/HoloCompositionParser-UZH6Y4HO.cjs +45 -0
  7. package/dist/HoloScriptCodeParser-2D4ERFUZ.js +6 -0
  8. package/dist/HoloScriptCodeParser-UDRLDA7I.cjs +23 -0
  9. package/dist/HoloScriptPlusParser-FTMCGWXD.js +13 -0
  10. package/dist/HoloScriptPlusParser-LQR5GIKF.cjs +30 -0
  11. package/dist/HoloScriptRuntime-UTRLJI5L.js +12 -0
  12. package/dist/HoloScriptRuntime-YBYXJHJN.cjs +21 -0
  13. package/dist/SceneIRCompiler-63KA3M2F.js +17 -0
  14. package/dist/SceneIRCompiler-KWUFHZ4O.cjs +42 -0
  15. package/dist/{USDZExporter-AUHZODOF.cjs → USDZExporter-ML4UMIGC.cjs} +3 -3
  16. package/dist/{USDZExporter-GXB4AUSG.js → USDZExporter-ZFKLQ76G.js} +3 -3
  17. package/dist/agents/index.cjs +1 -1
  18. package/dist/agents/index.js +1 -1
  19. package/dist/audit/AuditLogger.d.ts +106 -0
  20. package/dist/audit/AuditQueryBuilder.d.ts +79 -0
  21. package/dist/audit/ComplianceReporter.d.ts +90 -0
  22. package/dist/audit/index.d.ts +13 -0
  23. package/dist/{chunk-FGMDMJM7.js → chunk-2BYAUHBO.js} +3 -3
  24. package/dist/{chunk-EDPYCLRC.cjs → chunk-2E6PP5UE.cjs} +83 -59
  25. package/dist/{chunk-GASCWJK5.js → chunk-2EGGAZT3.js} +65 -287
  26. package/dist/{chunk-SIEXCILW.js → chunk-2I3XAGMF.js} +3 -3
  27. package/dist/{chunk-OS533P33.cjs → chunk-2KKOYZYI.cjs} +1074 -1655
  28. package/dist/chunk-2MQKNDNH.js +51 -0
  29. package/dist/{chunk-7DMMMBCY.cjs → chunk-2X3IPCBK.cjs} +10 -10
  30. package/dist/chunk-2ZOTBO25.cjs +202 -0
  31. package/dist/chunk-356N4NPM.cjs +152 -0
  32. package/dist/{chunk-X3GJPRVK.cjs → chunk-36NPLOI4.cjs} +92 -81
  33. package/dist/{chunk-SLU6UPJI.cjs → chunk-37HHY7RH.cjs} +5 -5
  34. package/dist/{chunk-YDPEHCCI.cjs → chunk-3CDDRUER.cjs} +3 -118
  35. package/dist/chunk-3F7ZZWIN.js +1651 -0
  36. package/dist/chunk-3ILD7TKP.cjs +187 -0
  37. package/dist/{chunk-X27QRG4C.cjs → chunk-3IUHTGDD.cjs} +153 -41
  38. package/dist/{chunk-PXNZ6TME.js → chunk-4376VHNJ.js} +60 -36
  39. package/dist/{chunk-YKGPCZEE.cjs → chunk-4FIBOJW6.cjs} +10 -10
  40. package/dist/chunk-4Q7RKQQI.cjs +14195 -0
  41. package/dist/{chunk-YCM6QQRT.cjs → chunk-566ZB4LZ.cjs} +180 -8
  42. package/dist/{chunk-2Y3V22SG.js → chunk-5CURIYGT.js} +3 -3
  43. package/dist/{chunk-QBWNJXNR.js → chunk-5FYMCVBY.js} +5 -5
  44. package/dist/{chunk-ZA34AN3R.js → chunk-5LVFTGKH.js} +841 -12
  45. package/dist/{chunk-Z6PMDS4G.js → chunk-5OUOMBKK.js} +1090 -53
  46. package/dist/chunk-63AUAIL6.js +48 -0
  47. package/dist/chunk-655FATJU.js +110 -0
  48. package/dist/{chunk-TQ377OLB.cjs → chunk-65S62L4D.cjs} +28 -22
  49. package/dist/chunk-6NTAZN5Z.cjs +502 -0
  50. package/dist/chunk-6TRX6AR2.js +9376 -0
  51. package/dist/chunk-6ZCCLKS2.cjs +51 -0
  52. package/dist/{chunk-MDR235RZ.js → chunk-734OB5SK.js} +721 -8
  53. package/dist/{chunk-Q2Q34NF3.js → chunk-77QI552M.js} +6 -6
  54. package/dist/{chunk-WKX5AMOY.js → chunk-7I74JWPW.js} +3 -3
  55. package/dist/{chunk-5FSKKMR7.cjs → chunk-7IDJDMPU.cjs} +232 -4
  56. package/dist/chunk-7VBKRGIZ.cjs +847 -0
  57. package/dist/{chunk-KCPHASCO.js → chunk-AATYYLYK.js} +5 -5
  58. package/dist/{chunk-DTGBOSEM.cjs → chunk-AWXFEAQL.cjs} +12 -12
  59. package/dist/{chunk-THCK6ECW.js → chunk-B3CWTCK2.js} +231 -3
  60. package/dist/chunk-BCP4E7MD.cjs +997 -0
  61. package/dist/chunk-BG7RPYJP.js +91 -0
  62. package/dist/{chunk-VF257YKO.js → chunk-BP4KTMLY.js} +117 -5
  63. package/dist/{chunk-YN6IETRZ.js → chunk-BQJ3YBF3.js} +6424 -987
  64. package/dist/{chunk-7X5PNIQJ.js → chunk-BXSOEQI3.js} +27 -25
  65. package/dist/{chunk-WFKVS2K4.cjs → chunk-C65C5VED.cjs} +1101 -55
  66. package/dist/{chunk-KOUAQL2B.cjs → chunk-CANAL6CT.cjs} +1569 -168
  67. package/dist/{chunk-FDSGHPAK.js → chunk-CBSDJF3B.js} +3 -3
  68. package/dist/{chunk-FEWUHQNM.cjs → chunk-CFVK26P4.cjs} +4 -4
  69. package/dist/{chunk-M7K4LE66.cjs → chunk-CI33NINL.cjs} +4 -4
  70. package/dist/{chunk-2OWDB4FB.js → chunk-CKV5NYAE.js} +6 -6
  71. package/dist/{chunk-LPS5AMQD.cjs → chunk-CM4NHXVO.cjs} +24 -24
  72. package/dist/chunk-D3HSRXYB.js +115 -0
  73. package/dist/{chunk-FNHJRI32.js → chunk-DBH3D2MU.js} +1561 -160
  74. package/dist/{chunk-GW3LKD5C.js → chunk-DJNH4HFW.js} +3 -3
  75. package/dist/{chunk-2GCNOI2U.cjs → chunk-DN6F4DHH.cjs} +9 -3
  76. package/dist/chunk-DQRJ5RJG.js +432 -0
  77. package/dist/{chunk-C7ZBSV2Q.js → chunk-DUG3OQAS.js} +106 -43
  78. package/dist/chunk-ECUYJOJ2.cjs +199 -0
  79. package/dist/chunk-EEMTCAK7.js +182 -0
  80. package/dist/{chunk-3SKLAUDD.cjs → chunk-EI3J6LTW.cjs} +359 -581
  81. package/dist/{chunk-SSSN7VAM.js → chunk-EM2OGPYE.js} +4 -4
  82. package/dist/{chunk-56VOWURB.cjs → chunk-ENZCIQZC.cjs} +522 -453
  83. package/dist/chunk-ESBXUYOC.cjs +836 -0
  84. package/dist/{chunk-L5U4W6JC.js → chunk-ESSEF6U2.js} +4 -4
  85. package/dist/chunk-ET3AN4W3.js +824 -0
  86. package/dist/chunk-EXKSFGSX.cjs +14 -14
  87. package/dist/{chunk-I76GIKN7.cjs → chunk-F3YT6GUF.cjs} +17 -17
  88. package/dist/{chunk-WRWEX5ZF.js → chunk-F75DZBBI.js} +3 -3
  89. package/dist/{chunk-4JGRWHZJ.js → chunk-FG6PYGIZ.js} +12 -6
  90. package/dist/chunk-FGGJQRLZ.js +14 -14
  91. package/dist/{chunk-SXOSDZD6.js → chunk-FWCHPCD4.js} +128 -10
  92. package/dist/{chunk-XW6IXEQH.cjs → chunk-G35CAQ7I.cjs} +5 -5
  93. package/dist/{chunk-7VMGP2FW.js → chunk-G6KACNMO.js} +132 -188
  94. package/dist/{chunk-FJPADH77.cjs → chunk-GAWJJAGT.cjs} +6 -6
  95. package/dist/chunk-GGR7QUKK.cjs +4724 -0
  96. package/dist/chunk-GIBF4BHH.js +14098 -0
  97. package/dist/{chunk-AWB7QYY6.cjs → chunk-GILYQ5VH.cjs} +6 -6
  98. package/dist/{chunk-FWVYAMNW.cjs → chunk-GKFCHGCM.cjs} +4 -4
  99. package/dist/{chunk-Y3ZFVUUU.js → chunk-GLEJ2TLS.js} +3 -3
  100. package/dist/{chunk-3GWWJT7L.js → chunk-GP3OKSKT.js} +13 -13
  101. package/dist/chunk-GTIPOEHN.js +196 -0
  102. package/dist/{chunk-LMJ5EBV7.cjs → chunk-GZPUA2TL.cjs} +16 -15
  103. package/dist/{chunk-IELX2OKI.js → chunk-H4LJ4HEA.js} +3 -115
  104. package/dist/{chunk-ACVWFGBI.cjs → chunk-HCX4SMFK.cjs} +3 -3
  105. package/dist/{chunk-HYNTS5CP.js → chunk-HHRZ6STP.js} +24 -2
  106. package/dist/chunk-HIDEIEFG.js +48 -0
  107. package/dist/{chunk-W6RW64BB.cjs → chunk-HSWBIDZM.cjs} +228 -5
  108. package/dist/{chunk-GSOUNWEL.js → chunk-HVX7QQYK.js} +1035 -1616
  109. package/dist/{chunk-TRCGG42I.cjs → chunk-IFW5IW4L.cjs} +6502 -1019
  110. package/dist/{chunk-F5LKJ6F5.cjs → chunk-IJU6AS67.cjs} +32 -28
  111. package/dist/{chunk-TVANHNJ7.js → chunk-IK6Z2HNC.js} +173 -3
  112. package/dist/{chunk-QGMUTVVH.cjs → chunk-IS7NTKY5.cjs} +20 -20
  113. package/dist/{chunk-YFVQWSNJ.js → chunk-IXWGYWH6.js} +3 -3
  114. package/dist/chunk-J2DAS2PL.js +148 -0
  115. package/dist/chunk-JBQXZIWB.js +148 -0
  116. package/dist/chunk-JBYBMBMW.js +261 -0
  117. package/dist/{chunk-LWUOUCYL.js → chunk-JEJ7TT54.js} +5 -5
  118. package/dist/{chunk-DUCB6LGL.js → chunk-JOTCTHN5.js} +211 -5
  119. package/dist/{chunk-47RUFYKR.js → chunk-K56UVEXV.js} +3 -3
  120. package/dist/{chunk-XSFNHP2E.js → chunk-KB26H447.js} +3 -3
  121. package/dist/{chunk-3NGDZZR4.js → chunk-KEYG7HGY.js} +430 -37
  122. package/dist/{chunk-DY72BMU5.js → chunk-KFVNCW4Q.js} +4 -4
  123. package/dist/chunk-KPGC7SK2.js +192 -0
  124. package/dist/chunk-KROXXBK5.cjs +53 -0
  125. package/dist/{chunk-ZPZAVHXL.cjs → chunk-LB3ZZMKT.cjs} +137 -19
  126. package/dist/chunk-LDYZWNJW.cjs +1654 -0
  127. package/dist/{chunk-UGXHYIWT.cjs → chunk-LHNHO27U.cjs} +28 -28
  128. package/dist/{chunk-ULMSSHCJ.cjs → chunk-LMB555QB.cjs} +405 -38
  129. package/dist/{chunk-CBJY23VL.js → chunk-MD4IVS42.js} +3 -3
  130. package/dist/{chunk-VMLKSV26.js → chunk-MDDWEBCX.js} +226 -3
  131. package/dist/chunk-MUWH4QK5.cjs +94 -0
  132. package/dist/{chunk-T6W3Z3SH.cjs → chunk-N2ILK7BF.cjs} +4 -4
  133. package/dist/{chunk-6EX3I5P4.cjs → chunk-N74QRJGP.cjs} +6 -6
  134. package/dist/chunk-NFFHLX37.cjs +132 -0
  135. package/dist/chunk-NJSYWX7H.js +190 -0
  136. package/dist/{chunk-SH5PPVK7.cjs → chunk-NQN5LFN4.cjs} +165 -221
  137. package/dist/chunk-NTQRFOPP.cjs +56 -0
  138. package/dist/{chunk-YFWRJW4B.js → chunk-NWMJPTVL.js} +51 -55
  139. package/dist/{chunk-63ZGNR2T.cjs → chunk-OC6GV5QH.cjs} +42 -42
  140. package/dist/{chunk-7E7GCQCK.js → chunk-OG3MBHM3.js} +9 -3
  141. package/dist/chunk-OMNHTCS4.cjs +264 -0
  142. package/dist/chunk-OQXB6NNC.cjs +117 -0
  143. package/dist/{chunk-Y57W2CT5.cjs → chunk-OV46CCA2.cjs} +51 -55
  144. package/dist/{chunk-6PRZIHGL.cjs → chunk-OV6HHKLE.cjs} +21 -266
  145. package/dist/{chunk-C37BHB7N.cjs → chunk-P26YYPOO.cjs} +5 -5
  146. package/dist/{chunk-2BZHWUSR.cjs → chunk-P7JEKJTZ.cjs} +16 -16
  147. package/dist/{chunk-NGBXXZLL.cjs → chunk-PDXX5UI4.cjs} +45 -45
  148. package/dist/{chunk-FHQFPYV4.js → chunk-PJFTTSKE.js} +8 -7
  149. package/dist/{chunk-GVFJ6T4S.cjs → chunk-PVODJEJ7.cjs} +721 -8
  150. package/dist/{chunk-ZZ7RO2UQ.js → chunk-Q265VZJ4.js} +3 -3
  151. package/dist/{chunk-E7JP3BS3.cjs → chunk-Q47JEE2C.cjs} +4 -4
  152. package/dist/chunk-QBY7LRN2.js +281 -0
  153. package/dist/{chunk-GH6C2QGW.cjs → chunk-QEDMOGF3.cjs} +857 -16
  154. package/dist/{chunk-5WUNN6ZN.cjs → chunk-QHSAVOOL.cjs} +24 -2
  155. package/dist/chunk-QJNCDVYM.cjs +137 -0
  156. package/dist/chunk-QM7FJB5W.js +4717 -0
  157. package/dist/chunk-QQFB4RT2.cjs +448 -0
  158. package/dist/chunk-QSYBHQAD.cjs +196 -0
  159. package/dist/{chunk-2YSNA2F2.cjs → chunk-QVJMDVYZ.cjs} +5 -5
  160. package/dist/chunk-RAJMAX6D.js +131 -0
  161. package/dist/{chunk-VVKVQZI6.js → chunk-RAN3ECAS.js} +3 -3
  162. package/dist/chunk-RKGUZBOC.js +79 -0
  163. package/dist/{chunk-HLFDZ35S.cjs → chunk-RRQIAJLQ.cjs} +8 -8
  164. package/dist/{chunk-PABONWKI.js → chunk-RXQNRZ5F.js} +3 -3
  165. package/dist/{chunk-7ZHYEITD.cjs → chunk-S4O7CFHQ.cjs} +10 -11
  166. package/dist/chunk-SE7ANBGN.js +128 -0
  167. package/dist/{chunk-X2AVEAZM.cjs → chunk-SJIRCTIS.cjs} +176 -2
  168. package/dist/{chunk-WXQ57LAO.js → chunk-SQXAZHDG.js} +4 -4
  169. package/dist/chunk-SR73L5ZP.cjs +84 -0
  170. package/dist/{chunk-OABEO6HH.js → chunk-SZOLTWWD.js} +2349 -214
  171. package/dist/{chunk-5JEU52DW.js → chunk-TPZ3BN2D.js} +3 -3
  172. package/dist/{chunk-QFU53KRH.js → chunk-TSTFYGGX.js} +4 -5
  173. package/dist/{chunk-EBS32AJI.cjs → chunk-TZCFKZ6Z.cjs} +5 -5
  174. package/dist/chunk-UCVZXQ63.js +724 -0
  175. package/dist/chunk-UGQ3QNV6.js +992 -0
  176. package/dist/chunk-UNMVGZVW.js +142 -0
  177. package/dist/{chunk-TEVX443G.js → chunk-UTUD6GJI.js} +178 -6
  178. package/dist/chunk-UXBYA7DV.cjs +155 -0
  179. package/dist/chunk-V6GXFSK7.cjs +443 -0
  180. package/dist/chunk-VHORVGCG.cjs +761 -0
  181. package/dist/{chunk-B4EKV6HQ.js → chunk-VKCTYLDN.js} +500 -442
  182. package/dist/{chunk-O3MGZDCT.cjs → chunk-VTEXJOSD.cjs} +63 -63
  183. package/dist/chunk-VVAAZITA.cjs +287 -0
  184. package/dist/{chunk-V7AKE5VT.cjs → chunk-W2GA3EQB.cjs} +435 -42
  185. package/dist/chunk-W4GABFCR.js +37 -0
  186. package/dist/chunk-WKEK4NCA.js +490 -0
  187. package/dist/{chunk-5A4TCHOC.cjs → chunk-WNYXT4TE.cjs} +4 -4
  188. package/dist/{chunk-S762UEV5.js → chunk-WTH23ISI.js} +6 -6
  189. package/dist/{chunk-BTKZGHAV.js → chunk-WWNCM473.js} +10 -6
  190. package/dist/{chunk-4YNYPHH3.cjs → chunk-X75H75UY.cjs} +2351 -213
  191. package/dist/{chunk-LYJJI7ZK.cjs → chunk-XCUDDFKC.cjs} +216 -9
  192. package/dist/chunk-YAO4HPJL.cjs +120 -0
  193. package/dist/chunk-YKY2JBER.cjs +9443 -0
  194. package/dist/chunk-YP5CHEYU.cjs +154 -0
  195. package/dist/{chunk-WRNEH5MO.js → chunk-YW3I2FQL.js} +18 -7
  196. package/dist/{chunk-BRNUPDHJ.js → chunk-Z557DVYN.js} +386 -19
  197. package/dist/{chunk-VSACG2AR.js → chunk-Z6LZUYZF.js} +21 -264
  198. package/dist/chunk-ZHPMP447.cjs +43 -0
  199. package/dist/{chunk-LODTHGST.cjs → chunk-ZK7KX5CD.cjs} +133 -70
  200. package/dist/{chunk-CCPSNT6B.cjs → chunk-ZRPALBQB.cjs} +5 -5
  201. package/dist/chunk-ZVFHPMC5.js +824 -0
  202. package/dist/chunk-ZVQMKUGJ.js +443 -0
  203. package/dist/cli/holoscript-runner.cjs +86 -48
  204. package/dist/cli/holoscript-runner.js +54 -16
  205. package/dist/codebase/index.cjs +1 -1
  206. package/dist/codebase/index.js +1 -1
  207. package/dist/compiler/agent-inference.cjs +11 -11
  208. package/dist/compiler/agent-inference.js +9 -6
  209. package/dist/compiler/android-xr.cjs +13 -12
  210. package/dist/compiler/android-xr.js +11 -10
  211. package/dist/compiler/android.cjs +12 -12
  212. package/dist/compiler/android.js +10 -10
  213. package/dist/compiler/business-quest.cjs +10 -10
  214. package/dist/compiler/business-quest.js +2 -2
  215. package/dist/compiler/coco.cjs +1 -1
  216. package/dist/compiler/coco.js +1 -1
  217. package/dist/compiler/context.cjs +9 -9
  218. package/dist/compiler/context.js +6 -6
  219. package/dist/compiler/daimon-seed.cjs +36 -0
  220. package/dist/compiler/daimon-seed.js +12 -0
  221. package/dist/compiler/domain-block-utils.cjs +205 -156
  222. package/dist/compiler/domain-block-utils.js +8 -7
  223. package/dist/compiler/dtdl.cjs +10 -10
  224. package/dist/compiler/dtdl.js +7 -7
  225. package/dist/compiler/gltf-pipeline.cjs +9 -9
  226. package/dist/compiler/gltf-pipeline.js +2 -2
  227. package/dist/compiler/godot.cjs +10 -9
  228. package/dist/compiler/godot.js +9 -8
  229. package/dist/compiler/incremental.cjs +11 -11
  230. package/dist/compiler/incremental.js +6 -6
  231. package/dist/compiler/index.cjs +2585 -3273
  232. package/dist/compiler/index.d.ts +149 -35
  233. package/dist/compiler/index.js +2197 -3102
  234. package/dist/compiler/ios.cjs +11 -11
  235. package/dist/compiler/ios.js +9 -9
  236. package/dist/compiler/llm-provider-capabilities.cjs +9 -9
  237. package/dist/compiler/llm-provider-capabilities.js +6 -6
  238. package/dist/compiler/nodetoy.cjs +1 -1
  239. package/dist/compiler/nodetoy.js +1 -1
  240. package/dist/compiler/openxr.cjs +11 -10
  241. package/dist/compiler/openxr.js +10 -9
  242. package/dist/compiler/remotion.cjs +1 -1
  243. package/dist/compiler/remotion.js +1 -1
  244. package/dist/compiler/reproducibility.cjs +1 -1
  245. package/dist/compiler/reproducibility.js +1 -1
  246. package/dist/compiler/sdf.cjs +11 -10
  247. package/dist/compiler/sdf.js +9 -8
  248. package/dist/compiler/semantic-scene.cjs +7 -7
  249. package/dist/compiler/semantic-scene.js +2 -2
  250. package/dist/compiler/state.cjs +9 -9
  251. package/dist/compiler/state.js +7 -7
  252. package/dist/compiler/trait-composition.cjs +11 -11
  253. package/dist/compiler/trait-composition.js +7 -7
  254. package/dist/compiler/traits/ProvenanceSemiring.d.ts +167 -0
  255. package/dist/compiler/traits/Semiring.d.ts +26 -0
  256. package/dist/compiler/unity.cjs +11 -10
  257. package/dist/compiler/unity.js +10 -9
  258. package/dist/compiler/unreal.cjs +12 -11
  259. package/dist/compiler/unreal.js +10 -9
  260. package/dist/compiler/urdf.cjs +18 -17
  261. package/dist/compiler/urdf.js +9 -8
  262. package/dist/compiler/usd-physics.cjs +11 -10
  263. package/dist/compiler/usd-physics.js +8 -7
  264. package/dist/compiler/visionos.cjs +11 -10
  265. package/dist/compiler/visionos.js +10 -9
  266. package/dist/compiler/vrchat.cjs +11 -10
  267. package/dist/compiler/vrchat.js +9 -8
  268. package/dist/compiler/wasm.cjs +14 -13
  269. package/dist/compiler/wasm.js +9 -8
  270. package/dist/compiler/webgpu.cjs +10 -9
  271. package/dist/compiler/webgpu.js +9 -8
  272. package/dist/constants.cjs +398 -0
  273. package/dist/constants.js +9 -0
  274. package/dist/coordinators/index.cjs +4 -1
  275. package/dist/coordinators/index.js +4 -1
  276. package/dist/debugger.cjs +11 -9
  277. package/dist/debugger.js +9 -7
  278. package/dist/{dist-ACXG6IH5.cjs → dist-GRMOP2UL.cjs} +341 -65
  279. package/dist/{dist-VD4L6V7Q.js → dist-ZBUKU2JG.js} +333 -63
  280. package/dist/entries/interop.cjs +23 -23
  281. package/dist/entries/interop.js +3 -3
  282. package/dist/entries/scripting.cjs +12 -11
  283. package/dist/entries/scripting.js +8 -7
  284. package/dist/evolution/index.cjs +66 -0
  285. package/dist/evolution/index.d.ts +162 -0
  286. package/dist/evolution/index.js +17 -0
  287. package/dist/hololand/index.cjs +41 -37
  288. package/dist/hololand/index.js +3 -3
  289. package/dist/index.cjs +12394 -3224
  290. package/dist/index.d.ts +260 -18
  291. package/dist/index.js +10755 -2182
  292. package/dist/keyword-registry/PluginKeywordRegistry.d.ts +138 -0
  293. package/dist/keyword-registry/index.cjs +29 -0
  294. package/dist/keyword-registry/index.d.ts +1 -0
  295. package/dist/keyword-registry/index.js +4 -0
  296. package/dist/math/tropical-spmv.cjs +11 -11
  297. package/dist/math/tropical-spmv.d.ts +1 -0
  298. package/dist/math/tropical-spmv.js +2 -2
  299. package/dist/math/tropicalSpmv.d.ts +43 -0
  300. package/dist/math/vec3.cjs +1 -1
  301. package/dist/math/vec3.js +1 -1
  302. package/dist/matter/StagedMatter.d.ts +82 -0
  303. package/dist/matter/index.cjs +17 -0
  304. package/dist/matter/index.d.ts +1 -0
  305. package/dist/matter/index.js +4 -0
  306. package/dist/{ml-dsa-Z7JDKW4L.js → ml-dsa-J6VKVT4K.js} +3 -3
  307. package/dist/{ml-dsa-FSKBTE3W.cjs → ml-dsa-MTIK4ZUQ.cjs} +23 -23
  308. package/dist/paper-0c-spike/index.cjs +1 -1
  309. package/dist/paper-0c-spike/index.js +1 -1
  310. package/dist/parameter-envelope/ParameterEnvelope.d.ts +128 -0
  311. package/dist/parameter-envelope/index.cjs +17 -0
  312. package/dist/parameter-envelope/index.d.ts +2 -0
  313. package/dist/parameter-envelope/index.js +4 -0
  314. package/dist/parser/HoloCompositionTypes.d.ts +2013 -0
  315. package/dist/parser/PipelineParser.d.ts +162 -0
  316. package/dist/parser.cjs +36 -20
  317. package/dist/parser.js +13 -9
  318. package/dist/plugin-manifest/ManifestAutoLoader.d.ts +35 -0
  319. package/dist/plugin-manifest/PluginManifest.d.ts +156 -0
  320. package/dist/plugin-manifest/index.cjs +25 -0
  321. package/dist/plugin-manifest/index.d.ts +2 -0
  322. package/dist/plugin-manifest/index.js +4 -0
  323. package/dist/plugin-solver-contract/PluginSolverContract.d.ts +288 -0
  324. package/dist/plugin-solver-contract/index.cjs +41 -0
  325. package/dist/plugin-solver-contract/index.d.ts +1 -0
  326. package/dist/plugin-solver-contract/index.js +4 -0
  327. package/dist/policy/ContentPolicyGate.d.ts +51 -0
  328. package/dist/policy/PolicyPack.d.ts +120 -0
  329. package/dist/policy/blocklist.d.ts +32 -0
  330. package/dist/policy/defaults.d.ts +44 -0
  331. package/dist/policy/index.cjs +106 -0
  332. package/dist/policy/index.d.ts +17 -0
  333. package/dist/policy/index.js +5 -0
  334. package/dist/policy/jsonLogic.d.ts +31 -0
  335. package/dist/policy/types.d.ts +174 -0
  336. package/dist/proof-composition/ProofCompositionLaw.d.ts +93 -0
  337. package/dist/proof-composition/index.cjs +25 -0
  338. package/dist/proof-composition/index.d.ts +1 -0
  339. package/dist/proof-composition/index.js +4 -0
  340. package/dist/receipts/hash-policy.d.ts +85 -0
  341. package/dist/reconstruction/index.cjs +75 -47
  342. package/dist/reconstruction/index.js +5 -5
  343. package/dist/runtime/plugin-trait-registrar.d.ts +36 -0
  344. package/dist/runtime.cjs +81 -79
  345. package/dist/runtime.js +9 -7
  346. package/dist/scene-presets-EDKYZ5GW.js +4 -0
  347. package/dist/scene-presets-NCW2CFRS.cjs +17 -0
  348. package/dist/self-improvement/index.cjs +1 -1
  349. package/dist/self-improvement/index.js +1 -1
  350. package/dist/{src-PT2FERDV.cjs → src-G3D7ZATQ.cjs} +545 -21
  351. package/dist/{src-J6CM4AUR.js → src-UXYA7HM6.js} +539 -16
  352. package/dist/storage/index.cjs +10 -10
  353. package/dist/storage/index.js +3 -3
  354. package/dist/testing.cjs +1 -1
  355. package/dist/testing.js +1 -1
  356. package/dist/tools/index.cjs +3631 -0
  357. package/dist/tools/index.js +3581 -0
  358. package/dist/traitDocs/traitDocs.cjs +9 -9
  359. package/dist/traitDocs/traitDocs.d.ts +1 -0
  360. package/dist/traitDocs/traitDocs.js +3 -3
  361. package/dist/traits/ControlLoopTrait.d.ts +154 -0
  362. package/dist/traits/KinematicChainTrait.d.ts +116 -0
  363. package/dist/traits/SensorSamplingTrait.d.ts +154 -0
  364. package/dist/traits/TraitTypes.d.ts +270 -0
  365. package/dist/traits/TransactionTrait.d.ts +121 -0
  366. package/dist/traits/botanical-lotus.cjs +54 -50
  367. package/dist/traits/botanical-lotus.js +2 -5
  368. package/dist/traits/control-loop.cjs +21 -0
  369. package/dist/traits/control-loop.d.ts +1 -0
  370. package/dist/traits/control-loop.js +4 -0
  371. package/dist/traits/engines/cloth-verlet.d.ts +65 -0
  372. package/dist/traits/engines/index.cjs +19 -19
  373. package/dist/traits/engines/index.d.ts +15 -275
  374. package/dist/traits/engines/index.js +3 -3
  375. package/dist/traits/engines/motion-data-schema.d.ts +119 -0
  376. package/dist/traits/engines/motion-matching.d.ts +102 -0
  377. package/dist/traits/engines/noise.d.ts +25 -0
  378. package/dist/traits/engines/onnx-adapter.d.ts +173 -0
  379. package/dist/traits/engines/onnx-motion-matching.d.ts +163 -0
  380. package/dist/traits/engines/pfnn-network.d.ts +92 -0
  381. package/dist/traits/engines/synthetic-walk-cycle.d.ts +38 -0
  382. package/dist/traits/engines/tensor-ops.d.ts +15 -0
  383. package/dist/traits/index.cjs +2789 -1259
  384. package/dist/traits/index.d.ts +35 -0
  385. package/dist/traits/index.js +1692 -411
  386. package/dist/traits/kinematic-chain.cjs +25 -0
  387. package/dist/traits/kinematic-chain.d.ts +1 -0
  388. package/dist/traits/kinematic-chain.js +4 -0
  389. package/dist/traits/sensor-sampling.cjs +33 -0
  390. package/dist/traits/sensor-sampling.d.ts +1 -0
  391. package/dist/traits/sensor-sampling.js +4 -0
  392. package/dist/traits/simulation-solver-factory.cjs +1 -1
  393. package/dist/traits/simulation-solver-factory.js +1 -1
  394. package/dist/traits/transaction.cjs +29 -0
  395. package/dist/traits/transaction.d.ts +1 -0
  396. package/dist/traits/transaction.js +4 -0
  397. package/dist/traits/webcam-gaze.cjs +1 -1
  398. package/dist/traits/webcam-gaze.js +1 -1
  399. package/dist/type-checker.cjs +7 -6
  400. package/dist/type-checker.js +5 -4
  401. package/dist/types/AdvancedTypeSystem.d.ts +489 -0
  402. package/dist/types/HoloScriptPlus.d.ts +810 -0
  403. package/dist/types/base.d.ts +248 -0
  404. package/dist/types.d.ts +799 -0
  405. package/dist/world/index.cjs +3 -4
  406. package/dist/world/index.js +3 -4
  407. package/dist/world-model/index.cjs +1 -1
  408. package/dist/world-model/index.js +1 -1
  409. package/dist/wot/index.cjs +1 -1
  410. package/dist/wot/index.js +1 -1
  411. package/package.json +135 -69
  412. package/dist/GLTFPipeline-3EJLL3TS.cjs +0 -38
  413. package/dist/GLTFPipeline-3OWJV2VK.js +0 -17
  414. package/dist/HoloScriptPlusParser-ADWRY5OS.cjs +0 -698
  415. package/dist/HoloScriptPlusParser-JLJDXHSC.js +0 -693
  416. package/dist/HoloScriptPlusParser-QCGFPWIL.cjs +0 -27
  417. package/dist/HoloScriptPlusParser-WENAFEFV.js +0 -10
  418. package/dist/HoloScriptRuntime-GGRVEU4T.cjs +0 -19
  419. package/dist/HoloScriptRuntime-GJK6VJPH.js +0 -10
  420. package/dist/chunk-22Q5A6RV.js +0 -979
  421. package/dist/chunk-4C57PR42.js +0 -468
  422. package/dist/chunk-4W5G5QVL.cjs +0 -847
  423. package/dist/chunk-5ET6L4NS.js +0 -487
  424. package/dist/chunk-C4GSLCHE.cjs +0 -7153
  425. package/dist/chunk-F2G6CWFT.js +0 -7089
  426. package/dist/chunk-G6PNEASF.cjs +0 -814
  427. package/dist/chunk-GTA4Q3A3.js +0 -1491
  428. package/dist/chunk-HCCQLAA4.cjs +0 -74
  429. package/dist/chunk-HFSVMKM3.cjs +0 -72
  430. package/dist/chunk-KAIVDEIG.cjs +0 -4539
  431. package/dist/chunk-KQU64CIX.cjs +0 -1508
  432. package/dist/chunk-MSYSQ2AJ.js +0 -4533
  433. package/dist/chunk-NHJLP37F.js +0 -70
  434. package/dist/chunk-NHYRRAGI.cjs +0 -490
  435. package/dist/chunk-OIQYIIO3.cjs +0 -473
  436. package/dist/chunk-OL46QLBJ.js +0 -61
  437. package/dist/chunk-SKZPC5AG.cjs +0 -984
  438. package/dist/chunk-SLHLXUMO.js +0 -445
  439. package/dist/chunk-UOIGFQXC.cjs +0 -9750
  440. package/dist/chunk-UOL6Y5TD.cjs +0 -759
  441. package/dist/chunk-UVFI7XIR.cjs +0 -452
  442. package/dist/chunk-VEPGBETF.js +0 -844
  443. package/dist/chunk-XQ5MWMP2.js +0 -756
  444. package/dist/chunk-XT6JY5W5.js +0 -9684
  445. package/dist/chunk-YRRAUB35.js +0 -811
  446. package/dist/compiler/GasOptimizationAnalyzer.d.ts +0 -73
  447. package/dist/compiler/NFTMarketplaceCompiler.d.ts +0 -23
  448. package/dist/compiler/ar.cjs +0 -23
  449. package/dist/compiler/ar.js +0 -11
  450. package/dist/compiler/babylon.cjs +0 -21
  451. package/dist/compiler/babylon.js +0 -15
  452. package/dist/compiler/multi-layer.cjs +0 -24
  453. package/dist/compiler/multi-layer.js +0 -15
  454. package/dist/compiler/playcanvas.cjs +0 -19
  455. package/dist/compiler/playcanvas.js +0 -13
  456. package/dist/compiler/r3f.cjs +0 -39
  457. package/dist/compiler/r3f.d.ts +0 -22
  458. package/dist/compiler/r3f.js +0 -17
  459. package/dist/compiler/vrr.cjs +0 -24
  460. package/dist/compiler/vrr.js +0 -12
  461. package/dist/parser/NFTMarketplaceTypes.d.ts +0 -191
  462. package/dist/playwright-3AT3AKTV.cjs +0 -98673
  463. package/dist/playwright-VZPDVUEQ.js +0 -98660
@@ -0,0 +1,187 @@
1
+ 'use strict';
2
+
3
+ // src/traits/KinematicChainTrait.ts
4
+ function mat4Identity() {
5
+ return [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
6
+ }
7
+ function dhTransform(a, alpha, d, theta) {
8
+ const ct = Math.cos(theta);
9
+ const st = Math.sin(theta);
10
+ const ca = Math.cos(alpha);
11
+ const sa = Math.sin(alpha);
12
+ return [
13
+ ct,
14
+ -st * ca,
15
+ st * sa,
16
+ a * ct,
17
+ st,
18
+ ct * ca,
19
+ -ct * sa,
20
+ a * st,
21
+ 0,
22
+ sa,
23
+ ca,
24
+ d,
25
+ 0,
26
+ 0,
27
+ 0,
28
+ 1
29
+ ];
30
+ }
31
+ function mat4Mul(a, b) {
32
+ const r = new Array(16).fill(0);
33
+ for (let i = 0; i < 4; i++) {
34
+ for (let j = 0; j < 4; j++) {
35
+ for (let k = 0; k < 4; k++) {
36
+ r[i * 4 + j] += a[i * 4 + k] * b[k * 4 + j];
37
+ }
38
+ }
39
+ }
40
+ return r;
41
+ }
42
+ function extractFrame(T) {
43
+ return {
44
+ z: { x: T[2], y: T[6], z: T[10] },
45
+ p: { x: T[3], y: T[7], z: T[11] }
46
+ };
47
+ }
48
+ function computeAllFrames(links, q) {
49
+ const frames = [];
50
+ let T = mat4Identity();
51
+ frames.push(extractFrame(T));
52
+ for (let i = 0; i < links.length; i++) {
53
+ const { a, alpha, d, theta: off } = links[i];
54
+ T = mat4Mul(T, dhTransform(a, alpha, d, off + q[i]));
55
+ frames.push(extractFrame(T));
56
+ }
57
+ return frames;
58
+ }
59
+ function solve3x3(A, b) {
60
+ const a = A.map((row) => [...row]);
61
+ const x = [...b];
62
+ for (let k = 0; k < 3; k++) {
63
+ let maxVal = Math.abs(a[k][k]);
64
+ let maxRow = k;
65
+ for (let i = k + 1; i < 3; i++) {
66
+ if (Math.abs(a[i][k]) > maxVal) {
67
+ maxVal = Math.abs(a[i][k]);
68
+ maxRow = i;
69
+ }
70
+ }
71
+ [a[k], a[maxRow]] = [a[maxRow], a[k]];
72
+ [x[k], x[maxRow]] = [x[maxRow], x[k]];
73
+ for (let i = k + 1; i < 3; i++) {
74
+ if (Math.abs(a[k][k]) < 1e-12) continue;
75
+ const f = a[i][k] / a[k][k];
76
+ for (let j = k; j < 3; j++) a[i][j] -= f * a[k][j];
77
+ x[i] -= f * x[k];
78
+ }
79
+ }
80
+ const result = [0, 0, 0];
81
+ for (let i = 2; i >= 0; i--) {
82
+ if (Math.abs(a[i][i]) < 1e-12) {
83
+ result[i] = 0;
84
+ continue;
85
+ }
86
+ result[i] = x[i];
87
+ for (let j = i + 1; j < 3; j++) result[i] -= a[i][j] * result[j];
88
+ result[i] /= a[i][i];
89
+ }
90
+ return result;
91
+ }
92
+ function solveFk(links, jointAngles) {
93
+ const frameTransforms = [];
94
+ let T = mat4Identity();
95
+ for (let i = 0; i < links.length; i++) {
96
+ const { a, alpha, d, theta: off } = links[i];
97
+ T = mat4Mul(T, dhTransform(a, alpha, d, off + jointAngles[i]));
98
+ frameTransforms.push([...T]);
99
+ }
100
+ return {
101
+ endEffectorPosition: { x: T[3], y: T[7], z: T[11] },
102
+ endEffectorTransform: T,
103
+ frameTransforms
104
+ };
105
+ }
106
+ function solveIk(req) {
107
+ const { links, target, maxIterations = 100, tolerance = 1e-4, damping = 0.01 } = req;
108
+ const n = links.length;
109
+ const q = [...req.initialAngles ?? new Array(n).fill(0)];
110
+ const lam2 = damping * damping;
111
+ for (let iter = 0; iter < maxIterations; iter++) {
112
+ const frames = computeAllFrames(links, q);
113
+ const ee = frames[n].p;
114
+ const dx = target.x - ee.x;
115
+ const dy = target.y - ee.y;
116
+ const dz = target.z - ee.z;
117
+ const error = Math.sqrt(dx * dx + dy * dy + dz * dz);
118
+ if (error < tolerance) {
119
+ return { jointAngles: [...q], converged: true, finalError: error, iterations: iter };
120
+ }
121
+ const J = [
122
+ new Array(n).fill(0),
123
+ new Array(n).fill(0),
124
+ new Array(n).fill(0)
125
+ ];
126
+ for (let j = 0; j < n; j++) {
127
+ const { z, p } = frames[j];
128
+ const dpx = ee.x - p.x;
129
+ const dpy = ee.y - p.y;
130
+ const dpz = ee.z - p.z;
131
+ J[0][j] = z.y * dpz - z.z * dpy;
132
+ J[1][j] = z.z * dpx - z.x * dpz;
133
+ J[2][j] = z.x * dpy - z.y * dpx;
134
+ }
135
+ const JJT = [[0, 0, 0], [0, 0, 0], [0, 0, 0]];
136
+ for (let r = 0; r < 3; r++) {
137
+ for (let c = 0; c < 3; c++) {
138
+ for (let j = 0; j < n; j++) JJT[r][c] += J[r][j] * J[c][j];
139
+ }
140
+ }
141
+ for (let i = 0; i < 3; i++) JJT[i][i] += lam2;
142
+ const y = solve3x3(JJT, [dx, dy, dz]);
143
+ for (let j = 0; j < n; j++) {
144
+ q[j] += J[0][j] * y[0] + J[1][j] * y[1] + J[2][j] * y[2];
145
+ }
146
+ }
147
+ const finalEe = computeAllFrames(links, q)[n].p;
148
+ const finalError = Math.sqrt(
149
+ (target.x - finalEe.x) ** 2 + (target.y - finalEe.y) ** 2 + (target.z - finalEe.z) ** 2
150
+ );
151
+ return { jointAngles: [...q], converged: false, finalError, iterations: maxIterations };
152
+ }
153
+ var kinematicChainHandler = {
154
+ name: "kinematic_chain",
155
+ defaultConfig: { links: [], jointAngles: [] },
156
+ onAttach(node, config) {
157
+ if (config.links.length > 0 && config.jointAngles.length === config.links.length) {
158
+ node.__kinematic_fk = solveFk(config.links, config.jointAngles);
159
+ }
160
+ },
161
+ onEvent(node, config, _ctx, event) {
162
+ if (event.type === "kinematic_chain.solve_fk") {
163
+ const e = event;
164
+ const links = e.links ?? config.links;
165
+ const angles = e.jointAngles ?? config.jointAngles;
166
+ node.__kinematic_fk = solveFk(links, angles);
167
+ }
168
+ if (event.type === "kinematic_chain.solve_ik") {
169
+ const req = event;
170
+ node.__kinematic_ik = solveIk({
171
+ links: req.links ?? config.links,
172
+ target: req.target ?? { x: 0, y: 0, z: 0 },
173
+ initialAngles: req.initialAngles,
174
+ maxIterations: req.maxIterations,
175
+ tolerance: req.tolerance,
176
+ damping: req.damping
177
+ });
178
+ }
179
+ }
180
+ };
181
+
182
+ exports.dhTransform = dhTransform;
183
+ exports.kinematicChainHandler = kinematicChainHandler;
184
+ exports.solveFk = solveFk;
185
+ exports.solveIk = solveIk;
186
+ //# sourceMappingURL=chunk-3ILD7TKP.cjs.map
187
+ //# sourceMappingURL=chunk-3ILD7TKP.cjs.map
@@ -1,13 +1,45 @@
1
1
  'use strict';
2
2
 
3
- var chunkGH6C2QGW_cjs = require('./chunk-GH6C2QGW.cjs');
4
- var chunkLODTHGST_cjs = require('./chunk-LODTHGST.cjs');
5
- var chunkHCCQLAA4_cjs = require('./chunk-HCCQLAA4.cjs');
3
+ var chunkQEDMOGF3_cjs = require('./chunk-QEDMOGF3.cjs');
4
+ var chunkZK7KX5CD_cjs = require('./chunk-ZK7KX5CD.cjs');
5
+ var chunkZHPMP447_cjs = require('./chunk-ZHPMP447.cjs');
6
6
  var ans = require('@holoscript/core-types/ans');
7
7
 
8
+ // src/compiler/udon/udon-extern-manifest.ts
9
+ var UDON_RETURN_ADDRESS;
10
+ var init_udon_extern_manifest = chunkZHPMP447_cjs.__esm({
11
+ "src/compiler/udon/udon-extern-manifest.ts"() {
12
+ UDON_RETURN_ADDRESS = "0xFFFFFFFF";
13
+ }
14
+ });
15
+
16
+ // src/compiler/udon/udon-assembly.ts
17
+ function renderUdonAssembly(program) {
18
+ const lines = [];
19
+ lines.push(".data_start");
20
+ for (const v of program.heap) {
21
+ lines.push(`${INDENT}${v.name}: %${v.type}, ${v.init}`);
22
+ }
23
+ lines.push(".data_end");
24
+ lines.push("");
25
+ lines.push(".code_start");
26
+ for (const c of program.code) {
27
+ lines.push(`${INDENT}${c}`);
28
+ }
29
+ lines.push(".code_end");
30
+ lines.push("");
31
+ return lines.join("\n");
32
+ }
33
+ var INDENT;
34
+ var init_udon_assembly = chunkZHPMP447_cjs.__esm({
35
+ "src/compiler/udon/udon-assembly.ts"() {
36
+ INDENT = " ";
37
+ }
38
+ });
39
+
8
40
  // src/compiler/VRChatCompiler.ts
9
41
  var VRChatCompiler_exports = {};
10
- chunkHCCQLAA4_cjs.__export(VRChatCompiler_exports, {
42
+ chunkZHPMP447_cjs.__export(VRChatCompiler_exports, {
11
43
  VRChatCompiler: () => exports.VRChatCompiler,
12
44
  compileToVRChat: () => compileToVRChat
13
45
  });
@@ -16,11 +48,13 @@ function compileToVRChat(composition, options) {
16
48
  return Promise.resolve(compiler.compile(composition, ""));
17
49
  }
18
50
  exports.VRChatCompiler = void 0;
19
- var init_VRChatCompiler = chunkHCCQLAA4_cjs.__esm({
51
+ var init_VRChatCompiler = chunkZHPMP447_cjs.__esm({
20
52
  "src/compiler/VRChatCompiler.ts"() {
21
- chunkLODTHGST_cjs.init_CompilerBase();
22
- chunkGH6C2QGW_cjs.init_DomainBlockCompilerMixin();
23
- exports.VRChatCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
53
+ chunkZK7KX5CD_cjs.init_CompilerBase();
54
+ init_udon_assembly();
55
+ init_udon_extern_manifest();
56
+ chunkQEDMOGF3_cjs.init_DomainBlockCompilerMixin();
57
+ exports.VRChatCompiler = class extends chunkZK7KX5CD_cjs.CompilerBase {
24
58
  constructor(options = {}) {
25
59
  super();
26
60
  this.compilerName = "VRChatCompiler";
@@ -46,6 +80,9 @@ var init_VRChatCompiler = chunkHCCQLAA4_cjs.__esm({
46
80
  }
47
81
  compile(composition, agentToken, outputPath) {
48
82
  this.validateCompilerAccess(agentToken, outputPath);
83
+ if (this.options.outputFormat === "udon-assembly") {
84
+ return this.compileToUdonAssembly(composition);
85
+ }
49
86
  this.assertSupportedOutputFormat();
50
87
  this.lines = [];
51
88
  this.udonScripts.clear();
@@ -63,6 +100,81 @@ var init_VRChatCompiler = chunkHCCQLAA4_cjs.__esm({
63
100
  worldDescriptor
64
101
  };
65
102
  }
103
+ /**
104
+ * Byte target codegen — `.holo` → Udon Assembly. Phase-2 vertical slice scope:
105
+ * `@clickable`/`@pointable` objects lower to an `_interact` toggle behaviour; every
106
+ * world emits a trivial `_start`. Other traits (grabbable/networked/portal/mirror) are
107
+ * NOT yet lowered to UASM — they intentionally produce no behaviour here rather than a
108
+ * silently-fake one (see roadmap Phase 2 breadth). Output is validated offline by
109
+ * `validateUdonAssembly` against the EXTERN manifest.
110
+ */
111
+ compileToUdonAssembly(composition) {
112
+ const className = this.options.className;
113
+ const udonAssembly = {};
114
+ const mainUasm = this.generateMainUdonAssembly();
115
+ udonAssembly[`${className}.uasm`] = mainUasm;
116
+ for (const obj of composition.objects || []) {
117
+ const isClickable = obj.traits?.some(
118
+ (t) => t.name === "pointable" || t.name === "clickable"
119
+ );
120
+ if (isClickable) {
121
+ udonAssembly[`${this.sanitizeName(obj.name)}Behaviour.uasm`] = this.generateClickableToggleAssembly(obj);
122
+ }
123
+ }
124
+ return {
125
+ outputFormat: "udon-assembly",
126
+ mainScript: mainUasm,
127
+ udonScripts: /* @__PURE__ */ new Map(),
128
+ prefabHierarchy: this.generatePrefabHierarchy(composition),
129
+ worldDescriptor: this.generateWorldDescriptor(composition),
130
+ udonAssembly
131
+ };
132
+ }
133
+ /** Trivial world-init behaviour: an exported `_start` that returns immediately. */
134
+ generateMainUdonAssembly() {
135
+ const program = {
136
+ heap: [],
137
+ code: [".export _start", "_start:", `JUMP, ${UDON_RETURN_ADDRESS}`]
138
+ };
139
+ return renderUdonAssembly(program);
140
+ }
141
+ /**
142
+ * `@clickable` → toggle the object's active state on Interact, using only real,
143
+ * manifest-resolvable Udon nodes (get_activeSelf + SetActive) and control flow —
144
+ * no invented "boolean-negation" node. The target is a null-initialised GameObject
145
+ * slot wired in the Unity inspector at bundle time (Phase 3), avoiding the
146
+ * self-disable footgun of toggling the behaviour's own GameObject.
147
+ */
148
+ generateClickableToggleAssembly(obj) {
149
+ const target = `${this.sanitizeName(obj.name)}Target`;
150
+ const program = {
151
+ heap: [
152
+ { name: target, type: "UnityEngineGameObject", init: "null" },
153
+ { name: "isActive", type: "SystemBoolean", init: "null" },
154
+ { name: "constTrue", type: "SystemBoolean", init: "true" },
155
+ { name: "constFalse", type: "SystemBoolean", init: "false" }
156
+ ],
157
+ code: [
158
+ ".export _interact",
159
+ "_interact:",
160
+ `PUSH, ${target}`,
161
+ "PUSH, isActive",
162
+ 'EXTERN, "UnityEngineGameObject.__get_activeSelf__SystemBoolean"',
163
+ "PUSH, isActive",
164
+ "JUMP_IF_FALSE, _activate",
165
+ `PUSH, ${target}`,
166
+ "PUSH, constFalse",
167
+ 'EXTERN, "UnityEngineGameObject.__SetActive__SystemBoolean__SystemVoid"',
168
+ `JUMP, ${UDON_RETURN_ADDRESS}`,
169
+ "_activate:",
170
+ `PUSH, ${target}`,
171
+ "PUSH, constTrue",
172
+ 'EXTERN, "UnityEngineGameObject.__SetActive__SystemBoolean__SystemVoid"',
173
+ `JUMP, ${UDON_RETURN_ADDRESS}`
174
+ ]
175
+ };
176
+ return renderUdonAssembly(program);
177
+ }
66
178
  assertSupportedOutputFormat() {
67
179
  if (this.options.outputFormat === "udonsharp-csharp" && this.options.useUdonSharp) {
68
180
  return;
@@ -185,59 +297,59 @@ var init_VRChatCompiler = chunkHCCQLAA4_cjs.__esm({
185
297
  this.emit("");
186
298
  this.emit("// === v4.2 Domain Blocks (VRChat/Unity) ===");
187
299
  let blockIdx = 0;
188
- const compiled = chunkGH6C2QGW_cjs.compileDomainBlocks(
300
+ const compiled = chunkQEDMOGF3_cjs.compileDomainBlocks(
189
301
  domainBlocks,
190
302
  {
191
303
  material: (block) => {
192
- const mat = chunkGH6C2QGW_cjs.compileMaterialBlock(block);
193
- return chunkGH6C2QGW_cjs.materialToVRChat(mat, `db${blockIdx++}`);
304
+ const mat = chunkQEDMOGF3_cjs.compileMaterialBlock(block);
305
+ return chunkQEDMOGF3_cjs.materialToVRChat(mat, `db${blockIdx++}`);
194
306
  },
195
307
  physics: (block) => {
196
- const phys = chunkGH6C2QGW_cjs.compilePhysicsBlock(block);
197
- return chunkGH6C2QGW_cjs.physicsToUnity(phys, `db${blockIdx++}`);
308
+ const phys = chunkQEDMOGF3_cjs.compilePhysicsBlock(block);
309
+ return chunkQEDMOGF3_cjs.physicsToUnity(phys, `db${blockIdx++}`);
198
310
  },
199
311
  vfx: (block) => {
200
- const ps = chunkGH6C2QGW_cjs.compileParticleBlock(block);
201
- return chunkGH6C2QGW_cjs.particlesToUnity(ps, `db${blockIdx++}`);
312
+ const ps = chunkQEDMOGF3_cjs.compileParticleBlock(block);
313
+ return chunkQEDMOGF3_cjs.particlesToUnity(ps, `db${blockIdx++}`);
202
314
  },
203
315
  postfx: (block) => {
204
- const pp = chunkGH6C2QGW_cjs.compilePostProcessingBlock(block);
205
- return chunkGH6C2QGW_cjs.postProcessingToUnity(pp);
316
+ const pp = chunkQEDMOGF3_cjs.compilePostProcessingBlock(block);
317
+ return chunkQEDMOGF3_cjs.postProcessingToUnity(pp);
206
318
  },
207
319
  audio: (block) => {
208
- const audio = chunkGH6C2QGW_cjs.compileAudioSourceBlock(block);
209
- return chunkGH6C2QGW_cjs.audioSourceToUnity(audio, `db${blockIdx++}`);
320
+ const audio = chunkQEDMOGF3_cjs.compileAudioSourceBlock(block);
321
+ return chunkQEDMOGF3_cjs.audioSourceToUnity(audio, `db${blockIdx++}`);
210
322
  },
211
323
  weather: (block) => {
212
- const weather = chunkGH6C2QGW_cjs.compileWeatherBlock(block);
213
- return chunkGH6C2QGW_cjs.weatherToUnity(weather);
324
+ const weather = chunkQEDMOGF3_cjs.compileWeatherBlock(block);
325
+ return chunkQEDMOGF3_cjs.weatherToUnity(weather);
214
326
  },
215
327
  narrative: (block) => {
216
- const narr = chunkGH6C2QGW_cjs.compileNarrativeBlock(block);
217
- return chunkGH6C2QGW_cjs.narrativeToVRChat(narr);
328
+ const narr = chunkQEDMOGF3_cjs.compileNarrativeBlock(block);
329
+ return chunkQEDMOGF3_cjs.narrativeToVRChat(narr);
218
330
  },
219
331
  payment: (block) => {
220
- const pay = chunkGH6C2QGW_cjs.compilePaymentBlock(block);
221
- return chunkGH6C2QGW_cjs.paymentToVRChat(pay);
332
+ const pay = chunkQEDMOGF3_cjs.compilePaymentBlock(block);
333
+ return chunkQEDMOGF3_cjs.paymentToVRChat(pay);
222
334
  },
223
335
  healthcare: (block) => {
224
- const h = chunkGH6C2QGW_cjs.compileHealthcareBlock(block);
225
- return chunkGH6C2QGW_cjs.healthcareToVRChat(h);
336
+ const h = chunkQEDMOGF3_cjs.compileHealthcareBlock(block);
337
+ return chunkQEDMOGF3_cjs.healthcareToVRChat(h);
226
338
  },
227
339
  robotics: (block) => {
228
- const r = chunkGH6C2QGW_cjs.compileRoboticsBlock(block);
229
- return chunkGH6C2QGW_cjs.roboticsToVRChat(r);
340
+ const r = chunkQEDMOGF3_cjs.compileRoboticsBlock(block);
341
+ return chunkQEDMOGF3_cjs.roboticsToVRChat(r);
230
342
  },
231
- iot: (block) => chunkGH6C2QGW_cjs.iotToVRChat(chunkGH6C2QGW_cjs.compileIoTBlock(block)),
232
- dataviz: (block) => chunkGH6C2QGW_cjs.datavizToVRChat(chunkGH6C2QGW_cjs.compileDataVizBlock(block)),
233
- education: (block) => chunkGH6C2QGW_cjs.educationToVRChat(chunkGH6C2QGW_cjs.compileEducationBlock(block)),
234
- music: (block) => chunkGH6C2QGW_cjs.musicToVRChat(chunkGH6C2QGW_cjs.compileMusicBlock(block)),
235
- architecture: (block) => chunkGH6C2QGW_cjs.architectureToVRChat(chunkGH6C2QGW_cjs.compileArchitectureBlock(block)),
236
- web3: (block) => chunkGH6C2QGW_cjs.web3ToVRChat(chunkGH6C2QGW_cjs.compileWeb3Block(block)),
237
- procedural: (block) => chunkGH6C2QGW_cjs.proceduralToVRChat(chunkGH6C2QGW_cjs.compileProceduralBlock(block)),
238
- rendering: (block) => chunkGH6C2QGW_cjs.renderingToVRChat(chunkGH6C2QGW_cjs.compileRenderingBlock(block)),
239
- navigation: (block) => chunkGH6C2QGW_cjs.navigationToVRChat(chunkGH6C2QGW_cjs.compileNavigationBlock(block)),
240
- input: (block) => chunkGH6C2QGW_cjs.inputToVRChat(chunkGH6C2QGW_cjs.compileInputBlock(block))
343
+ iot: (block) => chunkQEDMOGF3_cjs.iotToVRChat(chunkQEDMOGF3_cjs.compileIoTBlock(block)),
344
+ dataviz: (block) => chunkQEDMOGF3_cjs.datavizToVRChat(chunkQEDMOGF3_cjs.compileDataVizBlock(block)),
345
+ education: (block) => chunkQEDMOGF3_cjs.educationToVRChat(chunkQEDMOGF3_cjs.compileEducationBlock(block)),
346
+ music: (block) => chunkQEDMOGF3_cjs.musicToVRChat(chunkQEDMOGF3_cjs.compileMusicBlock(block)),
347
+ architecture: (block) => chunkQEDMOGF3_cjs.architectureToVRChat(chunkQEDMOGF3_cjs.compileArchitectureBlock(block)),
348
+ web3: (block) => chunkQEDMOGF3_cjs.web3ToVRChat(chunkQEDMOGF3_cjs.compileWeb3Block(block)),
349
+ procedural: (block) => chunkQEDMOGF3_cjs.proceduralToVRChat(chunkQEDMOGF3_cjs.compileProceduralBlock(block)),
350
+ rendering: (block) => chunkQEDMOGF3_cjs.renderingToVRChat(chunkQEDMOGF3_cjs.compileRenderingBlock(block)),
351
+ navigation: (block) => chunkQEDMOGF3_cjs.navigationToVRChat(chunkQEDMOGF3_cjs.compileNavigationBlock(block)),
352
+ input: (block) => chunkQEDMOGF3_cjs.inputToVRChat(chunkQEDMOGF3_cjs.compileInputBlock(block))
241
353
  },
242
354
  (block) => `// Domain block: ${block.domain}/${block.keyword} "${this.escapeStringValue(block.name, "CSharp")}"`
243
355
  );
@@ -623,5 +735,5 @@ var init_VRChatCompiler = chunkHCCQLAA4_cjs.__esm({
623
735
  exports.VRChatCompiler_exports = VRChatCompiler_exports;
624
736
  exports.compileToVRChat = compileToVRChat;
625
737
  exports.init_VRChatCompiler = init_VRChatCompiler;
626
- //# sourceMappingURL=chunk-X27QRG4C.cjs.map
627
- //# sourceMappingURL=chunk-X27QRG4C.cjs.map
738
+ //# sourceMappingURL=chunk-3IUHTGDD.cjs.map
739
+ //# sourceMappingURL=chunk-3IUHTGDD.cjs.map
@@ -1,9 +1,10 @@
1
1
  import { ReactiveState, ExpressionEvaluator, createState } from './chunk-XL6INWKT.js';
2
- import { lazyPeerSymbol, definePeerNamespace, getSharedEventBus, telemetry } from './chunk-IELX2OKI.js';
3
- import { HoloScriptCodeParser } from './chunk-MDR235RZ.js';
4
- import { JEPAPredictor, jepObjectiveHandler, mitosisHandler, orbitalHandler } from './chunk-TVANHNJ7.js';
2
+ import { coronaSimulationHandler } from './chunk-D3HSRXYB.js';
3
+ import { lazyPeerSymbol, definePeerNamespace, telemetry } from './chunk-H4LJ4HEA.js';
4
+ import { HoloScriptCodeParser } from './chunk-734OB5SK.js';
5
+ import { JEPAPredictor, jepObjectiveHandler, mitosisHandler, orbitalHandler, getSharedEventBus, applyEasing } from './chunk-IK6Z2HNC.js';
5
6
  import { logger } from './chunk-PHENW4MQ.js';
6
- import { init_safeJsonParse, readJson } from './chunk-VVKVQZI6.js';
7
+ import { init_safeJsonParse, readJson } from './chunk-RAN3ECAS.js';
7
8
 
8
9
  // src/HoloScriptRuntime.ts
9
10
  init_safeJsonParse();
@@ -278,27 +279,6 @@ async function applyTransformation(data, transform, ctx) {
278
279
  }
279
280
  }
280
281
 
281
- // src/runtime/easing.ts
282
- function applyEasing(t, easing) {
283
- switch (easing) {
284
- case "easeIn":
285
- return t * t;
286
- case "easeOut":
287
- return t * (2 - t);
288
- case "easeInOut":
289
- return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
290
- case "easeInQuad":
291
- return t * t;
292
- case "easeOutQuad":
293
- return t * (2 - t);
294
- case "easeInOutQuad":
295
- return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
296
- case "linear":
297
- default:
298
- return t;
299
- }
300
- }
301
-
302
282
  // src/runtime/animation-system.ts
303
283
  function updateAnimations(animations, setVariable, now) {
304
284
  for (const [key, anim] of animations) {
@@ -1493,13 +1473,24 @@ function updateTraits(julianDate, ctx) {
1493
1473
  d.config || {},
1494
1474
  {
1495
1475
  emit: (event, payload) => {
1496
- if (event === "position_update") {
1476
+ if (event === "position_update" || event === "set_position") {
1497
1477
  const posPayload = payload;
1498
1478
  if (posPayload?.position) {
1499
1479
  const p = posPayload.position;
1500
1480
  const tuple = Array.isArray(p) ? p : [p[0], p[1], p[2]];
1501
1481
  ctx.setOrbPosition(name, tuple);
1502
1482
  }
1483
+ } else if (event === "set_rotation") {
1484
+ const rotPayload = payload;
1485
+ if (rotPayload?.rotation) {
1486
+ const r = rotPayload.rotation;
1487
+ const tuple = Array.isArray(r) ? r : [r[0], r[1], r[2]];
1488
+ if (ctx.setOrbRotation) {
1489
+ ctx.setOrbRotation(name, tuple);
1490
+ } else {
1491
+ orb.rotation = tuple;
1492
+ }
1493
+ }
1503
1494
  }
1504
1495
  return ctx.emit(event, payload);
1505
1496
  },
@@ -2452,6 +2443,7 @@ var HoloScriptAgentRuntime = class _HoloScriptAgentRuntime {
2452
2443
  this.rawEpisodes = [];
2453
2444
  this.semanticFacts = [];
2454
2445
  this.consolidationInterval = null;
2446
+ this.consolidating = false;
2455
2447
  // JEPA action-planning loop (Phase 8)
2456
2448
  // Default latentDim=64, condDim=16 (action conditioning). Caller can swap
2457
2449
  // weights externally via this.jepaPredictor.setWeights() after training.
@@ -2557,7 +2549,7 @@ var HoloScriptAgentRuntime = class _HoloScriptAgentRuntime {
2557
2549
  state: this.localState.getSnapshot(),
2558
2550
  properties: this.agentNode.properties});
2559
2551
  if (!this.consolidationInterval) {
2560
- this.consolidationInterval = setInterval(() => this.consolidateMemory(), 3e4);
2552
+ this.consolidationInterval = setInterval(() => void this.consolidateMemory(), 3e4);
2561
2553
  }
2562
2554
  }
2563
2555
  /**
@@ -2584,14 +2576,22 @@ var HoloScriptAgentRuntime = class _HoloScriptAgentRuntime {
2584
2576
  /**
2585
2577
  * Internal idle tick leveraging the MemoryConsolidator subsystem to offload processing constraints.
2586
2578
  */
2587
- consolidateMemory() {
2588
- if (this.isDestroyed || this.rawEpisodes.length < 5) return;
2589
- const { newFacts, prunedEpisodes } = MemoryConsolidator.compressEpisodes(this.rawEpisodes);
2590
- if (newFacts.length > 0) {
2591
- this.semanticFacts.push(...newFacts);
2592
- this.rawEpisodes = this.rawEpisodes.filter((e) => !prunedEpisodes.includes(e.id));
2579
+ async consolidateMemory() {
2580
+ if (this.isDestroyed || this.consolidating || this.rawEpisodes.length < 5) return;
2581
+ this.consolidating = true;
2582
+ try {
2583
+ const { newFacts, prunedEpisodes } = await MemoryConsolidator.compressEpisodes(this.rawEpisodes);
2584
+ if (this.isDestroyed) return;
2585
+ if (newFacts.length > 0) {
2586
+ this.semanticFacts.push(...newFacts);
2587
+ this.rawEpisodes = this.rawEpisodes.filter((e) => !prunedEpisodes.includes(e.id));
2588
+ }
2589
+ this.semanticFacts = MemoryConsolidator.pruneStaleFacts(this.semanticFacts);
2590
+ } catch (err) {
2591
+ console.warn("[HoloScriptAgentRuntime] memory consolidation tick failed (non-fatal):", err);
2592
+ } finally {
2593
+ this.consolidating = false;
2593
2594
  }
2594
- this.semanticFacts = MemoryConsolidator.pruneStaleFacts(this.semanticFacts);
2595
2595
  }
2596
2596
  /**
2597
2597
  * Lazily attach the JEPAObjective trait on first use so constructor stays fast.
@@ -3095,6 +3095,10 @@ var HoloScriptRuntime = class {
3095
3095
  });
3096
3096
  this.traitHandlers.set("mitosis", mitosisHandler);
3097
3097
  this.traitHandlers.set("orbital", orbitalHandler);
3098
+ this.traitHandlers.set(
3099
+ "corona_simulation",
3100
+ coronaSimulationHandler
3101
+ );
3098
3102
  this.extensionRegistry = new ExtensionRegistry(this);
3099
3103
  engineRuntime.stateMachineInterpreter.setHookExecutor((code) => this.evaluateExpression(code));
3100
3104
  engineRuntime.stateMachineInterpreter.setGuardEvaluator(
@@ -4300,6 +4304,25 @@ var HoloScriptRuntime = class {
4300
4304
  });
4301
4305
  }
4302
4306
  }
4307
+ /**
4308
+ * Apply an orb's rotation (euler [x, y, z] in radians) to the scene and
4309
+ * broadcast it — the rotation counterpart of setOrbPosition. Movement traits
4310
+ * (LocomotionTrait snap-turn / look-direction, PatrolTrait look-ahead) emit
4311
+ * `set_rotation`; this lands that output natively so turning is perceivable.
4312
+ */
4313
+ setOrbRotation(orbName, rotation) {
4314
+ const orb = this.context.variables.get(orbName);
4315
+ if (orb && typeof orb === "object" && orb.__type === "orb") {
4316
+ orb.rotation = rotation;
4317
+ this.broadcast("orb_update", {
4318
+ orb: {
4319
+ id: orbName,
4320
+ name: orbName,
4321
+ rotation
4322
+ }
4323
+ });
4324
+ }
4325
+ }
4303
4326
  /**
4304
4327
  * Per-frame trait update — dispatches onUpdate on all active
4305
4328
  * orbs (W1-T4 slice 27: impl extracted to ./runtime/skills-directives).
@@ -4311,6 +4334,7 @@ var HoloScriptRuntime = class {
4311
4334
  emit: (event, payload) => this.emit(event, payload),
4312
4335
  getCurrentScale: () => this.context.currentScale,
4313
4336
  setOrbPosition: (name, position) => this.setOrbPosition(name, position),
4337
+ setOrbRotation: (name, rotation) => this.setOrbRotation(name, rotation),
4314
4338
  getState: () => this.getState(),
4315
4339
  setState: (updates) => this.context.state.update(updates)
4316
4340
  });
@@ -4318,5 +4342,5 @@ var HoloScriptRuntime = class {
4318
4342
  };
4319
4343
 
4320
4344
  export { HoloScriptAgentRuntime, HoloScriptRuntime, TRAIT_OWNER_KEY, registerPluginTraits };
4321
- //# sourceMappingURL=chunk-PXNZ6TME.js.map
4322
- //# sourceMappingURL=chunk-PXNZ6TME.js.map
4345
+ //# sourceMappingURL=chunk-4376VHNJ.js.map
4346
+ //# sourceMappingURL=chunk-4376VHNJ.js.map