@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,131 @@
1
+ // src/keyword-registry/PluginKeywordRegistry.ts
2
+ var NODE_TYPE_FAMILIES = [
3
+ // ── Existing reaction categories (from ReactionCategory) ──────────────────
4
+ "movement",
5
+ // locomotion: move, turn, strafe, jump, land
6
+ "interaction",
7
+ // object interaction verbs
8
+ "collision",
9
+ // physics collision response
10
+ "lifecycle",
11
+ // attach, detach, spawn, destroy
12
+ "combat",
13
+ // combat/attack verbs
14
+ "signal",
15
+ // event emission verbs
16
+ // ── H2 additions ─────────────────────────────────────────────────────────
17
+ "cognitive",
18
+ // AI/LLM: llm_call, recall, rag_query, plan, reflect
19
+ "control",
20
+ // actuate, drive, set_joint, emit_gcode (ControlLoopTrait)
21
+ "sensor",
22
+ // measure, read, sample, measure_qubits (robotics/IoT/QM)
23
+ "transaction"
24
+ // pay, transfer, stake (x402 economic)
25
+ ];
26
+ var PluginKeywordRegistry = class {
27
+ constructor() {
28
+ this.table = /* @__PURE__ */ new Map();
29
+ this._sealed = false;
30
+ this._registerBuiltins();
31
+ }
32
+ _registerBuiltins() {
33
+ for (const verb of ["move", "turn", "strafe", "jump", "land"]) {
34
+ this.table.set(verb, { verb, family: "movement", registeredBy: "core" });
35
+ }
36
+ for (const verb of ["llm_call", "recall", "rag_query", "plan", "reflect"]) {
37
+ this.table.set(verb, { verb, family: "cognitive", registeredBy: "core" });
38
+ }
39
+ }
40
+ /**
41
+ * Register a plugin-supplied verb.
42
+ *
43
+ * @param verb The .hs verb (e.g., `'actuate'`, `'emit_gcode'`). Must be
44
+ * a non-empty string containing only `[a-z0-9_]`.
45
+ * @param family Must be a known `NodeTypeFamily`. Conformance gate rejects
46
+ * anything outside the fixed set.
47
+ * @param pluginId The registering plugin's manifest id (e.g., `'robotics'`).
48
+ *
49
+ * @throws If the registry is sealed, the family is unknown, or the verb is
50
+ * already registered by a DIFFERENT plugin (idempotent for same plugin).
51
+ */
52
+ register(verb, family, pluginId) {
53
+ if (this._sealed) {
54
+ throw new Error(
55
+ `[PluginKeywordRegistry] Registry is sealed \u2014 cannot register verb "${verb}" after scene init.`
56
+ );
57
+ }
58
+ if (!verb || !/^[a-z][a-z0-9_]*$/.test(verb)) {
59
+ throw new Error(
60
+ `[PluginKeywordRegistry] Invalid verb "${verb}". Must match [a-z][a-z0-9_]*.`
61
+ );
62
+ }
63
+ if (!NODE_TYPE_FAMILIES.includes(family)) {
64
+ throw new Error(
65
+ `[PluginKeywordRegistry] Unknown node-type family "${family}". Must be one of: ${NODE_TYPE_FAMILIES.join(", ")}.`
66
+ );
67
+ }
68
+ const existing = this.table.get(verb);
69
+ if (existing) {
70
+ if (existing.registeredBy === pluginId) {
71
+ return;
72
+ }
73
+ throw new Error(
74
+ `[PluginKeywordRegistry] Verb "${verb}" is already registered by plugin "${existing.registeredBy}". Cannot be re-registered by "${pluginId}".`
75
+ );
76
+ }
77
+ this.table.set(verb, { verb, family, registeredBy: pluginId });
78
+ }
79
+ /**
80
+ * Seal the registry after scene init. All plugin verbs must be registered
81
+ * before this call. After sealing, `register()` throws.
82
+ *
83
+ * Idempotent — calling seal() on an already-sealed registry is a no-op.
84
+ */
85
+ seal() {
86
+ this._sealed = true;
87
+ }
88
+ /** Whether the registry has been sealed. */
89
+ get isSealed() {
90
+ return this._sealed;
91
+ }
92
+ /**
93
+ * Look up the `NodeTypeFamily` for a verb.
94
+ * Returns `undefined` for unregistered verbs.
95
+ */
96
+ lookupFamily(verb) {
97
+ return this.table.get(verb)?.family;
98
+ }
99
+ /** Returns `true` if the verb is registered (built-in or plugin-supplied). */
100
+ isKnownVerb(verb) {
101
+ return this.table.has(verb);
102
+ }
103
+ /**
104
+ * Return all registered `VerbEntry` objects — the flat machine-introspectable
105
+ * table. Safe for LSP / marketplace / Brittney to read without importing TS.
106
+ */
107
+ entries() {
108
+ return [...this.table.values()];
109
+ }
110
+ /** Return all registered verbs for a given family. */
111
+ verbsInFamily(family) {
112
+ return [...this.table.values()].filter((e) => e.family === family).map((e) => e.verb);
113
+ }
114
+ /** Total number of registered verbs. */
115
+ get size() {
116
+ return this.table.size;
117
+ }
118
+ };
119
+ var globalKeywordRegistry = new PluginKeywordRegistry();
120
+ function registerPluginVerb(verb, family, pluginId) {
121
+ globalKeywordRegistry.register(verb, family, pluginId);
122
+ }
123
+ function registerPluginVerbs(pluginId, verbs) {
124
+ for (const { verb, family } of verbs) {
125
+ globalKeywordRegistry.register(verb, family, pluginId);
126
+ }
127
+ }
128
+
129
+ export { NODE_TYPE_FAMILIES, PluginKeywordRegistry, globalKeywordRegistry, registerPluginVerb, registerPluginVerbs };
130
+ //# sourceMappingURL=chunk-RAJMAX6D.js.map
131
+ //# sourceMappingURL=chunk-RAJMAX6D.js.map
@@ -1,4 +1,4 @@
1
- import { __esm } from './chunk-OL46QLBJ.js';
1
+ import { __esm } from './chunk-W4GABFCR.js';
2
2
  import { z } from 'zod';
3
3
 
4
4
  function safeJsonParse(s, schema) {
@@ -51,5 +51,5 @@ var init_safeJsonParse = __esm({
51
51
  });
52
52
 
53
53
  export { init_safeJsonParse, jsonClone, readJson, safeJsonParse, safeJsonParseSchema, tryParseJson };
54
- //# sourceMappingURL=chunk-VVKVQZI6.js.map
55
- //# sourceMappingURL=chunk-VVKVQZI6.js.map
54
+ //# sourceMappingURL=chunk-RAN3ECAS.js.map
55
+ //# sourceMappingURL=chunk-RAN3ECAS.js.map
@@ -0,0 +1,79 @@
1
+ import { readdirSync, existsSync, readFileSync } from 'fs';
2
+ import { join, resolve } from 'path';
3
+ import { pathToFileURL } from 'url';
4
+
5
+ // src/plugin-manifest/PluginManifest.ts
6
+ function traitName(entry) {
7
+ return typeof entry === "string" ? entry : entry.name;
8
+ }
9
+ function manifestTraitNames(manifest) {
10
+ return manifest.traits.map(traitName);
11
+ }
12
+ function combinePluginRegistrations(registrar, plugins) {
13
+ const pluginIds = [];
14
+ const traitNames = [];
15
+ for (const registration of plugins) {
16
+ registration.register(registrar);
17
+ pluginIds.push(registration.manifest.id);
18
+ traitNames.push(...manifestTraitNames(registration.manifest));
19
+ }
20
+ return { pluginIds, traitNames };
21
+ }
22
+ async function autoLoadPluginsFromManifests(pluginsDir, registrar) {
23
+ const loaded = [];
24
+ const skipped = [];
25
+ const failed = [];
26
+ let dirs;
27
+ try {
28
+ dirs = readdirSync(pluginsDir, { withFileTypes: true }).filter((d) => d.isDirectory()).map((d) => d.name);
29
+ } catch (e) {
30
+ return { loaded, skipped, failed: [{ id: "<root>", error: e.message }] };
31
+ }
32
+ for (const dir of dirs) {
33
+ const manifestPath = join(pluginsDir, dir, "plugin.manifest.json");
34
+ if (!existsSync(manifestPath)) continue;
35
+ let manifest;
36
+ try {
37
+ manifest = JSON.parse(readFileSync(manifestPath, "utf8"));
38
+ } catch (e) {
39
+ failed.push({ id: dir, error: `manifest parse: ${e.message}` });
40
+ continue;
41
+ }
42
+ if (!manifest.autoRegister) {
43
+ skipped.push(manifest.id);
44
+ continue;
45
+ }
46
+ const entry = manifest.runtimeEntry ?? "./src/runtime.ts";
47
+ const entryAbs = resolve(join(pluginsDir, dir), entry);
48
+ if (!existsSync(entryAbs)) {
49
+ failed.push({ id: manifest.id, error: `runtimeEntry not found: ${entryAbs}` });
50
+ continue;
51
+ }
52
+ try {
53
+ const mod = await import(pathToFileURL(entryAbs).href);
54
+ let fn = mod["registerTraitHandlers"];
55
+ if (typeof fn !== "function") {
56
+ const found = Object.entries(mod).find(
57
+ ([k, v]) => typeof v === "function" && /^register\w+TraitHandlers$/.test(k)
58
+ );
59
+ fn = found?.[1];
60
+ }
61
+ if (typeof fn !== "function") {
62
+ failed.push({
63
+ id: manifest.id,
64
+ error: `no registerTraitHandlers export in ${entry}`
65
+ });
66
+ continue;
67
+ }
68
+ fn(registrar);
69
+ loaded.push(manifest.id);
70
+ } catch (e) {
71
+ failed.push({ id: manifest.id, error: e.message });
72
+ }
73
+ }
74
+ return { loaded, skipped, failed };
75
+ }
76
+
77
+ export { autoLoadPluginsFromManifests, combinePluginRegistrations, manifestTraitNames, traitName };
78
+ //# sourceMappingURL=chunk-RKGUZBOC.js.map
79
+ //# sourceMappingURL=chunk-RKGUZBOC.js.map
@@ -1,21 +1,21 @@
1
1
  'use strict';
2
2
 
3
- var chunkLODTHGST_cjs = require('./chunk-LODTHGST.cjs');
4
- var chunkHCCQLAA4_cjs = require('./chunk-HCCQLAA4.cjs');
3
+ var chunkZK7KX5CD_cjs = require('./chunk-ZK7KX5CD.cjs');
4
+ var chunkZHPMP447_cjs = require('./chunk-ZHPMP447.cjs');
5
5
  var ans = require('@holoscript/core-types/ans');
6
6
 
7
7
  // src/compiler/DTDLCompiler.ts
8
8
  var DTDLCompiler_exports = {};
9
- chunkHCCQLAA4_cjs.__export(DTDLCompiler_exports, {
9
+ chunkZHPMP447_cjs.__export(DTDLCompiler_exports, {
10
10
  DTDLCompiler: () => exports.DTDLCompiler,
11
11
  DTDL_TRAIT_COMPONENTS: () => exports.DTDL_TRAIT_COMPONENTS,
12
12
  default: () => exports.DTDLCompiler_default
13
13
  });
14
14
  exports.DTDLCompiler = void 0; exports.DTDL_TRAIT_COMPONENTS = void 0; exports.DTDLCompiler_default = void 0;
15
- var init_DTDLCompiler = chunkHCCQLAA4_cjs.__esm({
15
+ var init_DTDLCompiler = chunkZHPMP447_cjs.__esm({
16
16
  "src/compiler/DTDLCompiler.ts"() {
17
- chunkLODTHGST_cjs.init_CompilerBase();
18
- exports.DTDLCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
17
+ chunkZK7KX5CD_cjs.init_CompilerBase();
18
+ exports.DTDLCompiler = class extends chunkZK7KX5CD_cjs.CompilerBase {
19
19
  constructor(options = {}) {
20
20
  super();
21
21
  this.compilerName = "DTDLCompiler";
@@ -420,5 +420,5 @@ var init_DTDLCompiler = chunkHCCQLAA4_cjs.__esm({
420
420
 
421
421
  exports.DTDLCompiler_exports = DTDLCompiler_exports;
422
422
  exports.init_DTDLCompiler = init_DTDLCompiler;
423
- //# sourceMappingURL=chunk-HLFDZ35S.cjs.map
424
- //# sourceMappingURL=chunk-HLFDZ35S.cjs.map
423
+ //# sourceMappingURL=chunk-RRQIAJLQ.cjs.map
424
+ //# sourceMappingURL=chunk-RRQIAJLQ.cjs.map
@@ -1,4 +1,4 @@
1
- import { init_CompilerBase, CompilerBase } from './chunk-C7ZBSV2Q.js';
1
+ import { init_CompilerBase, CompilerBase } from './chunk-DUG3OQAS.js';
2
2
  import { ANSCapabilityPath } from '@holoscript/core-types/ans';
3
3
 
4
4
  // src/compiler/LLMProviderCapabilitiesCompiler.ts
@@ -734,5 +734,5 @@ function daysBetween(earlier, later) {
734
734
  }
735
735
 
736
736
  export { LLMCapabilityCompileError, LLMProviderCapabilitiesCompiler, createLLMProviderCapabilitiesCompiler };
737
- //# sourceMappingURL=chunk-PABONWKI.js.map
738
- //# sourceMappingURL=chunk-PABONWKI.js.map
737
+ //# sourceMappingURL=chunk-RXQNRZ5F.js.map
738
+ //# sourceMappingURL=chunk-RXQNRZ5F.js.map
@@ -1,12 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunkUVFI7XIR_cjs = require('./chunk-UVFI7XIR.cjs');
4
- var chunkLODTHGST_cjs = require('./chunk-LODTHGST.cjs');
3
+ var chunkV6GXFSK7_cjs = require('./chunk-V6GXFSK7.cjs');
4
+ var chunkZK7KX5CD_cjs = require('./chunk-ZK7KX5CD.cjs');
5
5
 
6
6
  // src/compiler/TraitCompositionCompiler.ts
7
- chunkLODTHGST_cjs.init_AgentRBAC();
8
- chunkLODTHGST_cjs.init_CompilerBase();
9
- chunkUVFI7XIR_cjs.init_ProvenanceSemiring();
7
+ chunkZK7KX5CD_cjs.init_AgentRBAC();
8
+ chunkZK7KX5CD_cjs.init_CompilerBase();
10
9
  var CompositionConflictError = class extends Error {
11
10
  constructor(traitA, traitB, conflictKey) {
12
11
  super(
@@ -63,7 +62,7 @@ var TraitCompositionCompiler = class {
63
62
  */
64
63
  validateAccess(agentToken) {
65
64
  if (!agentToken) return;
66
- const rbac = chunkLODTHGST_cjs.getRBAC();
65
+ const rbac = chunkZK7KX5CD_cjs.getRBAC();
67
66
  const decision = rbac.checkAccess({
68
67
  token: agentToken,
69
68
  resourceType: "ast" /* AST */,
@@ -83,12 +82,12 @@ var TraitCompositionCompiler = class {
83
82
  if (!handler) throw new MissingComponentError(decl.name, name);
84
83
  return { name, handler };
85
84
  });
86
- if (chunkUVFI7XIR_cjs.authorityWeight(
85
+ if (chunkV6GXFSK7_cjs.authorityWeight(
87
86
  decl.provenance?.context?.authorityLevel ?? 0
88
87
  ) < 100) {
89
88
  this.detectConflicts(handlers);
90
89
  }
91
- const semiring = new chunkUVFI7XIR_cjs.ProvenanceSemiring();
90
+ const semiring = new chunkV6GXFSK7_cjs.ProvenanceSemiring();
92
91
  const applications = [];
93
92
  for (const { name, handler } of handlers) {
94
93
  let configAccumulator = {};
@@ -154,7 +153,7 @@ var TraitCompositionCompiler = class {
154
153
  }
155
154
  }
156
155
  };
157
- var UnauthorizedTraitCompositionAccessError = class extends chunkLODTHGST_cjs.UnauthorizedCompilerAccessError {
156
+ var UnauthorizedTraitCompositionAccessError = class extends chunkZK7KX5CD_cjs.UnauthorizedCompilerAccessError {
158
157
  constructor(decision, compilerName) {
159
158
  super(decision, "trait composition", compilerName);
160
159
  this.name = "UnauthorizedTraitCompositionAccessError";
@@ -165,5 +164,5 @@ exports.CompositionConflictError = CompositionConflictError;
165
164
  exports.MissingComponentError = MissingComponentError;
166
165
  exports.TraitCompositionCompiler = TraitCompositionCompiler;
167
166
  exports.UnauthorizedTraitCompositionAccessError = UnauthorizedTraitCompositionAccessError;
168
- //# sourceMappingURL=chunk-7ZHYEITD.cjs.map
169
- //# sourceMappingURL=chunk-7ZHYEITD.cjs.map
167
+ //# sourceMappingURL=chunk-S4O7CFHQ.cjs.map
168
+ //# sourceMappingURL=chunk-S4O7CFHQ.cjs.map
@@ -0,0 +1,128 @@
1
+ import { HoloScriptPlusParser } from './chunk-DBH3D2MU.js';
2
+
3
+ // src/parser/HsplusGrammar.ts
4
+ function normalizeHsplusGrammarErrors(errors) {
5
+ if (!Array.isArray(errors)) return [];
6
+ return errors.map((error) => {
7
+ const record = error && typeof error === "object" ? error : {};
8
+ return {
9
+ message: typeof record.message === "string" ? record.message : String(error),
10
+ line: typeof record.line === "number" ? record.line : 0,
11
+ column: typeof record.column === "number" ? record.column : 0
12
+ };
13
+ });
14
+ }
15
+ var TypeScriptHsplusGrammar = class {
16
+ constructor(options = {}) {
17
+ this.options = options;
18
+ this.source = "typescript-fallback";
19
+ }
20
+ parse(source) {
21
+ const result = this.parseWithTypeScript(source);
22
+ return {
23
+ success: result.success,
24
+ ast: result.ast,
25
+ errors: normalizeHsplusGrammarErrors(result.errors),
26
+ raw: result
27
+ };
28
+ }
29
+ validate(source) {
30
+ return this.validateDetailed(source).valid;
31
+ }
32
+ validateDetailed(source) {
33
+ const parsed = this.parse(source);
34
+ return {
35
+ valid: parsed.success,
36
+ errors: parsed.errors,
37
+ raw: parsed.raw
38
+ };
39
+ }
40
+ version() {
41
+ return "typescript-hsplus";
42
+ }
43
+ parseWithTypeScript(source) {
44
+ const parser = new HoloScriptPlusParser(this.options);
45
+ return parser.parse(source);
46
+ }
47
+ };
48
+
49
+ // src/parser/GrammarModuleRegistry.ts
50
+ var GrammarModuleRegistryImpl = class {
51
+ constructor() {
52
+ this.modules = /* @__PURE__ */ new Map();
53
+ }
54
+ /**
55
+ * Register a new grammar module.
56
+ * @throws Error if a module with the same name already exists
57
+ */
58
+ register(descriptor) {
59
+ if (this.modules.has(descriptor.name)) {
60
+ throw new Error(
61
+ `Grammar module "${descriptor.name}" is already registered. Use GrammarModuleRegistry.override() to replace an existing module.`
62
+ );
63
+ }
64
+ this.modules.set(descriptor.name, descriptor);
65
+ }
66
+ /**
67
+ * Override an existing grammar module registration.
68
+ */
69
+ override(descriptor) {
70
+ this.modules.set(descriptor.name, descriptor);
71
+ }
72
+ /**
73
+ * Unregister a grammar module.
74
+ */
75
+ unregister(name) {
76
+ return this.modules.delete(name);
77
+ }
78
+ /**
79
+ * Check if a grammar module is registered.
80
+ */
81
+ has(name) {
82
+ return this.modules.has(name);
83
+ }
84
+ /**
85
+ * Get a registered grammar module descriptor (includes the callable parse fn).
86
+ */
87
+ get(name) {
88
+ return this.modules.get(name);
89
+ }
90
+ /**
91
+ * Parse source using a registered grammar module.
92
+ * @throws Error if module not found
93
+ */
94
+ parseWith(name, source) {
95
+ const desc = this.modules.get(name);
96
+ if (!desc) {
97
+ const available = [...this.modules.keys()].join(", ");
98
+ throw new Error(`Unknown grammar module "${name}". Available: ${available}`);
99
+ }
100
+ return desc.parse(source);
101
+ }
102
+ /**
103
+ * List all registered grammar modules (discovery info only, no parse fn).
104
+ */
105
+ list() {
106
+ return [...this.modules.values()].map((desc) => ({
107
+ name: desc.name,
108
+ description: desc.description
109
+ }));
110
+ }
111
+ /**
112
+ * Get all registered grammar module names.
113
+ */
114
+ names() {
115
+ return [...this.modules.keys()];
116
+ }
117
+ /**
118
+ * Get count of registered grammar modules.
119
+ */
120
+ get size() {
121
+ return this.modules.size;
122
+ }
123
+ };
124
+ var GrammarModuleRegistry = new GrammarModuleRegistryImpl();
125
+
126
+ export { GrammarModuleRegistry, TypeScriptHsplusGrammar, normalizeHsplusGrammarErrors };
127
+ //# sourceMappingURL=chunk-SE7ANBGN.js.map
128
+ //# sourceMappingURL=chunk-SE7ANBGN.js.map
@@ -2,6 +2,118 @@
2
2
 
3
3
  var chunkILRBGFVD_cjs = require('./chunk-ILRBGFVD.cjs');
4
4
 
5
+ // src/events/EventBus.ts
6
+ var EventBus = class {
7
+ constructor() {
8
+ this.listeners = /* @__PURE__ */ new Map();
9
+ this.history = [];
10
+ this.maxHistory = 100;
11
+ this.nextId = 0;
12
+ this.paused = false;
13
+ }
14
+ /**
15
+ * Subscribe to an event.
16
+ */
17
+ on(event, callback, priority = 0) {
18
+ const id = this.nextId++;
19
+ const list = this.listeners.get(event) || [];
20
+ list.push({ callback, priority, once: false, id });
21
+ list.sort((a, b) => b.priority - a.priority);
22
+ this.listeners.set(event, list);
23
+ return id;
24
+ }
25
+ /**
26
+ * Subscribe to an event once (auto-removes after first fire).
27
+ */
28
+ once(event, callback, priority = 0) {
29
+ const id = this.nextId++;
30
+ const list = this.listeners.get(event) || [];
31
+ list.push({ callback, priority, once: true, id });
32
+ list.sort((a, b) => b.priority - a.priority);
33
+ this.listeners.set(event, list);
34
+ return id;
35
+ }
36
+ /**
37
+ * Unsubscribe by listener ID.
38
+ */
39
+ off(listenerId) {
40
+ for (const [event, list] of this.listeners) {
41
+ const idx = list.findIndex((l) => l.id === listenerId);
42
+ if (idx !== -1) {
43
+ list.splice(idx, 1);
44
+ return;
45
+ }
46
+ }
47
+ }
48
+ /**
49
+ * Unsubscribe all listeners for an event.
50
+ */
51
+ offAll(event) {
52
+ this.listeners.delete(event);
53
+ }
54
+ /**
55
+ * Emit an event to all subscribers.
56
+ */
57
+ emit(event, data) {
58
+ if (this.paused) return;
59
+ this.history.push({ event, data, timestamp: Date.now() });
60
+ if (this.history.length > this.maxHistory) this.history.shift();
61
+ const list = this.listeners.get(event);
62
+ if (list) {
63
+ const toRemove = [];
64
+ for (const listener of list) {
65
+ listener.callback(data);
66
+ if (listener.once) toRemove.push(listener.id);
67
+ }
68
+ for (const id of toRemove) {
69
+ const idx = list.findIndex((l) => l.id === id);
70
+ if (idx !== -1) list.splice(idx, 1);
71
+ }
72
+ }
73
+ if (event !== "*") {
74
+ const wildcardList = this.listeners.get("*");
75
+ if (wildcardList) {
76
+ for (const listener of wildcardList) {
77
+ listener.callback({ event, data });
78
+ }
79
+ }
80
+ }
81
+ }
82
+ /**
83
+ * Get event history.
84
+ */
85
+ getHistory() {
86
+ return [...this.history];
87
+ }
88
+ /**
89
+ * Get listener count for an event.
90
+ */
91
+ listenerCount(event) {
92
+ return this.listeners.get(event)?.length || 0;
93
+ }
94
+ /**
95
+ * Pause/resume event emission.
96
+ */
97
+ setPaused(paused) {
98
+ this.paused = paused;
99
+ }
100
+ /**
101
+ * Clear all listeners and history.
102
+ */
103
+ clear() {
104
+ this.listeners.clear();
105
+ this.history = [];
106
+ }
107
+ };
108
+ var sharedBus = null;
109
+ function getSharedEventBus() {
110
+ if (!sharedBus) sharedBus = new EventBus();
111
+ return sharedBus;
112
+ }
113
+ function setSharedEventBus(bus) {
114
+ sharedBus = bus;
115
+ }
116
+
5
117
  // src/traits/MitosisTrait.ts
6
118
  var mitosisHandler = {
7
119
  name: "mitosis",
@@ -604,10 +716,72 @@ var orbitalHandler = {
604
716
  }
605
717
  };
606
718
 
719
+ // src/runtime/easing.ts
720
+ var SPRING_ZETA = 0.35;
721
+ var SPRING_OMEGA = 8.38;
722
+ var SPRING_OMEGA_D = SPRING_OMEGA * Math.sqrt(1 - SPRING_ZETA * SPRING_ZETA);
723
+ function springStepResponse(t) {
724
+ const decay = Math.exp(-SPRING_ZETA * SPRING_OMEGA * t);
725
+ const osc = Math.cos(SPRING_OMEGA_D * t) + SPRING_ZETA * SPRING_OMEGA / SPRING_OMEGA_D * Math.sin(SPRING_OMEGA_D * t);
726
+ return 1 - decay * osc;
727
+ }
728
+ var SPRING_RESIDUAL = 1 - springStepResponse(1);
729
+ function springEasing(t) {
730
+ if (t <= 0) return 0;
731
+ if (t >= 1) return 1;
732
+ return springStepResponse(t) + t * SPRING_RESIDUAL;
733
+ }
734
+ function bounceEasing(t) {
735
+ if (t <= 0) return 0;
736
+ if (t >= 1) return 1;
737
+ const n1 = 7.5625;
738
+ const d1 = 2.75;
739
+ if (t < 1 / d1) {
740
+ return n1 * t * t;
741
+ } else if (t < 2 / d1) {
742
+ const u2 = t - 1.5 / d1;
743
+ return n1 * u2 * u2 + 0.75;
744
+ } else if (t < 2.5 / d1) {
745
+ const u2 = t - 2.25 / d1;
746
+ return n1 * u2 * u2 + 0.9375;
747
+ }
748
+ const u = t - 2.625 / d1;
749
+ return n1 * u * u + 0.984375;
750
+ }
751
+ function applyEasing(t, easing) {
752
+ switch (easing) {
753
+ case "easeIn":
754
+ return t * t;
755
+ case "easeOut":
756
+ return t * (2 - t);
757
+ case "easeInOut":
758
+ return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
759
+ case "easeInQuad":
760
+ return t * t;
761
+ case "easeOutQuad":
762
+ return t * (2 - t);
763
+ case "easeInOutQuad":
764
+ return t < 0.5 ? 2 * t * t : -1 + (4 - 2 * t) * t;
765
+ case "spring":
766
+ return springEasing(t);
767
+ case "bounce":
768
+ return bounceEasing(t);
769
+ case "smoothstep":
770
+ return t * t * (3 - 2 * t);
771
+ case "linear":
772
+ default:
773
+ return t;
774
+ }
775
+ }
776
+
777
+ exports.EventBus = EventBus;
607
778
  exports.JEPAPredictor = JEPAPredictor;
779
+ exports.applyEasing = applyEasing;
608
780
  exports.embeddingHandler = embeddingHandler;
781
+ exports.getSharedEventBus = getSharedEventBus;
609
782
  exports.jepObjectiveHandler = jepObjectiveHandler;
610
783
  exports.mitosisHandler = mitosisHandler;
611
784
  exports.orbitalHandler = orbitalHandler;
612
- //# sourceMappingURL=chunk-X2AVEAZM.cjs.map
613
- //# sourceMappingURL=chunk-X2AVEAZM.cjs.map
785
+ exports.setSharedEventBus = setSharedEventBus;
786
+ //# sourceMappingURL=chunk-SJIRCTIS.cjs.map
787
+ //# sourceMappingURL=chunk-SJIRCTIS.cjs.map
@@ -1,5 +1,5 @@
1
- import { init_CompilerBase, CompilerBase } from './chunk-C7ZBSV2Q.js';
2
- import { __export, __esm } from './chunk-OL46QLBJ.js';
1
+ import { init_CompilerBase, CompilerBase } from './chunk-DUG3OQAS.js';
2
+ import { __export, __esm } from './chunk-W4GABFCR.js';
3
3
  import { ANSCapabilityPath } from '@holoscript/core-types/ans';
4
4
 
5
5
  // src/compiler/DTDLCompiler.ts
@@ -417,5 +417,5 @@ var init_DTDLCompiler = __esm({
417
417
  });
418
418
 
419
419
  export { DTDLCompiler, DTDLCompiler_default, DTDLCompiler_exports, DTDL_TRAIT_COMPONENTS, init_DTDLCompiler };
420
- //# sourceMappingURL=chunk-WXQ57LAO.js.map
421
- //# sourceMappingURL=chunk-WXQ57LAO.js.map
420
+ //# sourceMappingURL=chunk-SQXAZHDG.js.map
421
+ //# sourceMappingURL=chunk-SQXAZHDG.js.map