@holoscript/core 8.0.5 → 8.0.7

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 (248) hide show
  1. package/README.md +34 -34
  2. package/bin/holoscript.cjs +1 -1
  3. package/dist/GLTFPipeline-3EJLL3TS.cjs +38 -0
  4. package/dist/GLTFPipeline-3OWJV2VK.js +17 -0
  5. package/dist/{HoloScriptPlusParser-A2W7OCN2.cjs → HoloScriptPlusParser-ADWRY5OS.cjs} +15 -15
  6. package/dist/{HoloScriptPlusParser-7FBIFUFC.js → HoloScriptPlusParser-JLJDXHSC.js} +4 -4
  7. package/dist/HoloScriptPlusParser-QCGFPWIL.cjs +27 -0
  8. package/dist/{HoloScriptPlusParser-F2Z56FJR.js → HoloScriptPlusParser-WENAFEFV.js} +5 -5
  9. package/dist/HoloScriptRuntime-GGRVEU4T.cjs +19 -0
  10. package/dist/HoloScriptRuntime-GJK6VJPH.js +10 -0
  11. package/dist/{USDZExporter-3FWJ25JI.cjs → USDZExporter-AUHZODOF.cjs} +15 -4
  12. package/dist/{USDZExporter-D2HQLQYK.js → USDZExporter-GXB4AUSG.js} +15 -4
  13. package/dist/{chunk-V6MKC2FZ.js → chunk-22Q5A6RV.js} +3 -3
  14. package/dist/{chunk-IUDGEUDO.cjs → chunk-2BZHWUSR.cjs} +27 -15
  15. package/dist/{chunk-XJAN7CZG.cjs → chunk-2GCNOI2U.cjs} +2 -2
  16. package/dist/{chunk-CCATWPXM.js → chunk-2OWDB4FB.js} +13 -25
  17. package/dist/{chunk-N75IH2HY.js → chunk-2Y3V22SG.js} +5 -14
  18. package/dist/{chunk-MXFUTKCO.js → chunk-33YHE7HX.js} +3 -7
  19. package/dist/{chunk-GYZE55MO.js → chunk-3GWWJT7L.js} +4 -4
  20. package/dist/{chunk-CMT5NMMS.js → chunk-3NGDZZR4.js} +4 -4
  21. package/dist/{chunk-WRLUBRKS.cjs → chunk-3SKLAUDD.cjs} +2 -2
  22. package/dist/{chunk-KKFZ3B6J.cjs → chunk-3VBO3IYQ.cjs} +2 -2
  23. package/dist/{chunk-YF2I3MV3.js → chunk-47RUFYKR.js} +2 -2
  24. package/dist/{chunk-LHAXPADA.js → chunk-4JGRWHZJ.js} +7 -5
  25. package/dist/{chunk-ROHLEP2W.cjs → chunk-4W5G5QVL.cjs} +26 -26
  26. package/dist/{chunk-GQHQOPXZ.cjs → chunk-4YNYPHH3.cjs} +186 -17
  27. package/dist/{chunk-ZMCVKFXI.cjs → chunk-56VOWURB.cjs} +154 -47
  28. package/dist/{chunk-FXKAW7ZO.cjs → chunk-5A4TCHOC.cjs} +3 -3
  29. package/dist/{chunk-M56JSP4A.js → chunk-5EDVCNRT.js} +2 -2
  30. package/dist/{chunk-UJXISJBN.js → chunk-5ET6L4NS.js} +3 -3
  31. package/dist/{chunk-5NWINHR5.cjs → chunk-63ZGNR2T.cjs} +43 -39
  32. package/dist/{chunk-NG77ATEW.cjs → chunk-6PRZIHGL.cjs} +6 -6
  33. package/dist/{chunk-3WZEJHUQ.cjs → chunk-7DMMMBCY.cjs} +7 -7
  34. package/dist/{chunk-FHP6LXJS.js → chunk-7E7GCQCK.js} +2 -2
  35. package/dist/{chunk-YN2YWTXW.js → chunk-7VMGP2FW.js} +44 -28
  36. package/dist/{chunk-OJXHYNXN.js → chunk-7X5PNIQJ.js} +3 -3
  37. package/dist/{chunk-FYSPZT4V.cjs → chunk-7ZHYEITD.cjs} +11 -11
  38. package/dist/{chunk-KPJL34Y7.cjs → chunk-ACVWFGBI.cjs} +2 -2
  39. package/dist/{chunk-UWXE23BT.cjs → chunk-AWB7QYY6.cjs} +6 -6
  40. package/dist/{chunk-UO4WPSGQ.js → chunk-B4EKV6HQ.js} +154 -48
  41. package/dist/{chunk-2X7NGX3M.js → chunk-BRNUPDHJ.js} +5 -5
  42. package/dist/{chunk-D3STJ56J.js → chunk-BTKZGHAV.js} +23 -11
  43. package/dist/{chunk-I5CDNPPE.cjs → chunk-C4GSLCHE.cjs} +331 -125
  44. package/dist/{chunk-QPSKHBJP.js → chunk-C7ZBSV2Q.js} +13 -7
  45. package/dist/{chunk-YN6V7R3L.cjs → chunk-CCPSNT6B.cjs} +12 -7
  46. package/dist/{chunk-NW5G5FBQ.js → chunk-DD2JQ7TS.js} +4 -3
  47. package/dist/{chunk-JD7CIZ33.js → chunk-DUCB6LGL.js} +8 -10
  48. package/dist/{chunk-ANXZFVY2.js → chunk-DY72BMU5.js} +3 -3
  49. package/dist/{chunk-AIA52I7T.cjs → chunk-EBS32AJI.cjs} +6 -4
  50. package/dist/{chunk-6DO5IZ5N.cjs → chunk-EDPYCLRC.cjs} +85 -65
  51. package/dist/{chunk-WQKJSGVS.js → chunk-F2G6CWFT.js} +271 -66
  52. package/dist/{chunk-AVJHHUC5.cjs → chunk-F5LKJ6F5.cjs} +43 -31
  53. package/dist/{chunk-ZU7NIRT6.js → chunk-FGMDMJM7.js} +10 -5
  54. package/dist/{chunk-YVD3CSO3.js → chunk-FHQFPYV4.js} +4 -4
  55. package/dist/{chunk-YIMN575O.js → chunk-FNHJRI32.js} +8 -5
  56. package/dist/{chunk-EXUP2BUM.cjs → chunk-FT6TDR2O.cjs} +27 -27
  57. package/dist/{chunk-BRQJKJGT.cjs → chunk-FWVYAMNW.cjs} +4 -4
  58. package/dist/{chunk-PGANYCAG.cjs → chunk-G25QVBA5.cjs} +4 -3
  59. package/dist/{chunk-XB274MW5.cjs → chunk-G6PNEASF.cjs} +13 -13
  60. package/dist/{chunk-2BSMSUCE.js → chunk-GASCWJK5.js} +2 -2
  61. package/dist/{chunk-HKEXJUWS.cjs → chunk-GH6C2QGW.cjs} +12 -21
  62. package/dist/{chunk-WRKUDAZJ.js → chunk-GSOUNWEL.js} +35 -27
  63. package/dist/{chunk-QPOQ7VPI.js → chunk-GTA4Q3A3.js} +2 -2
  64. package/dist/{chunk-JIYN45TV.cjs → chunk-GVFJ6T4S.cjs} +3 -7
  65. package/dist/{chunk-IVY74O6C.js → chunk-GVOKJNUN.js} +50 -11
  66. package/dist/{chunk-GZG4KA4E.js → chunk-GW3LKD5C.js} +6 -4
  67. package/dist/{chunk-NCWCUZNS.cjs → chunk-HFSVMKM3.cjs} +14 -14
  68. package/dist/{chunk-IUTY5WQ2.cjs → chunk-HLFDZ35S.cjs} +5 -5
  69. package/dist/{chunk-IWC5DM2M.cjs → chunk-I76GIKN7.cjs} +20 -16
  70. package/dist/{chunk-ON5QSY35.cjs → chunk-KAIVDEIG.cjs} +175 -59
  71. package/dist/{chunk-R24NNAEG.js → chunk-KCPHASCO.js} +18 -6
  72. package/dist/{chunk-T5J7ZKP3.cjs → chunk-KOUAQL2B.cjs} +16 -13
  73. package/dist/{chunk-GMP623FG.cjs → chunk-KQU64CIX.cjs} +2 -2
  74. package/dist/{chunk-MVPBWHAC.js → chunk-L5U4W6JC.js} +4 -4
  75. package/dist/{chunk-2IWC4FP7.cjs → chunk-LMJ5EBV7.cjs} +10 -10
  76. package/dist/{chunk-KKP7JKN4.cjs → chunk-LODTHGST.cjs} +18 -12
  77. package/dist/{chunk-4V2E7U7Q.cjs → chunk-LPS5AMQD.cjs} +8 -8
  78. package/dist/{chunk-PY37LNDP.js → chunk-LWUOUCYL.js} +9 -5
  79. package/dist/{chunk-6CTRH7HT.cjs → chunk-LYJJI7ZK.cjs} +12 -14
  80. package/dist/{chunk-GTU2Z2WW.cjs → chunk-M7K4LE66.cjs} +5 -14
  81. package/dist/{chunk-URG2SJLK.js → chunk-MDR235RZ.js} +3 -7
  82. package/dist/{chunk-E4M5OAYO.js → chunk-MSYSQ2AJ.js} +132 -16
  83. package/dist/{chunk-TWUXUCEW.cjs → chunk-NGBXXZLL.cjs} +50 -62
  84. package/dist/{chunk-FFAOS5HQ.js → chunk-NHJLP37F.js} +6 -6
  85. package/dist/{chunk-S3MDHNKB.cjs → chunk-NHYRRAGI.cjs} +5 -5
  86. package/dist/{chunk-U44IKGG7.cjs → chunk-O3MGZDCT.cjs} +89 -52
  87. package/dist/{chunk-GIOYPNTH.js → chunk-OABEO6HH.js} +185 -16
  88. package/dist/{chunk-KQCN6AKJ.cjs → chunk-OS533P33.cjs} +37 -29
  89. package/dist/{chunk-DAJXW4KX.js → chunk-PABONWKI.js} +24 -11
  90. package/dist/{chunk-QACVP4PM.js → chunk-PXNZ6TME.js} +77 -59
  91. package/dist/{chunk-OMXII44L.js → chunk-Q2Q34NF3.js} +63 -26
  92. package/dist/{chunk-OH2FAIVU.js → chunk-QBWNJXNR.js} +10 -6
  93. package/dist/{chunk-XKTPFXGA.js → chunk-QFU53KRH.js} +4 -4
  94. package/dist/{chunk-CR4FMIWL.cjs → chunk-QGMUTVVH.cjs} +17 -17
  95. package/dist/{chunk-MYY4PMWX.cjs → chunk-RUVBFAF7.cjs} +50 -11
  96. package/dist/{chunk-QD32ADK6.js → chunk-S762UEV5.js} +5 -5
  97. package/dist/{chunk-HNDK4IQU.cjs → chunk-SH5PPVK7.cjs} +61 -45
  98. package/dist/{chunk-JC5YBPSF.cjs → chunk-SKZPC5AG.cjs} +5 -5
  99. package/dist/{chunk-TJHVSBP2.js → chunk-SLHLXUMO.js} +10 -4
  100. package/dist/{chunk-5KVXXUD4.js → chunk-SSSN7VAM.js} +3 -3
  101. package/dist/{chunk-KMC6CQH3.js → chunk-SXOSDZD6.js} +6 -6
  102. package/dist/{chunk-J32ZJZJH.js → chunk-SYTRBGDS.js} +2 -2
  103. package/dist/{chunk-CIWWXYHZ.cjs → chunk-T6W3Z3SH.cjs} +2 -2
  104. package/dist/{chunk-QXH7QDSZ.js → chunk-TEVX443G.js} +44 -51
  105. package/dist/{chunk-UFZZ7TSN.cjs → chunk-TQ377OLB.cjs} +23 -21
  106. package/dist/{chunk-PJGFU5DN.cjs → chunk-TRCGG42I.cjs} +195 -152
  107. package/dist/{chunk-H652NHX5.js → chunk-TVANHNJ7.js} +30 -23
  108. package/dist/{chunk-EKBKLK7P.js → chunk-UDE4OZMR.js} +3 -3
  109. package/dist/{chunk-LKWQNUE6.cjs → chunk-UGXHYIWT.cjs} +5 -5
  110. package/dist/{chunk-JBNDTXXV.cjs → chunk-ULMSSHCJ.cjs} +21 -21
  111. package/dist/{chunk-YWOBW2PV.cjs → chunk-UOL6Y5TD.cjs} +18 -18
  112. package/dist/{chunk-5S7RKFGR.cjs → chunk-UVFI7XIR.cjs} +10 -4
  113. package/dist/{chunk-7M3PNU2M.cjs → chunk-V7AKE5VT.cjs} +10 -10
  114. package/dist/{chunk-J7XZV333.js → chunk-VEPGBETF.js} +6 -6
  115. package/dist/{chunk-UWJHCOH2.js → chunk-VF257YKO.js} +4 -4
  116. package/dist/{chunk-4N4SXXWF.js → chunk-VSACG2AR.js} +3 -3
  117. package/dist/{chunk-ZDSYWBIE.cjs → chunk-VW5CRJBE.cjs} +3 -7
  118. package/dist/{chunk-YT5L3B57.cjs → chunk-WFKVS2K4.cjs} +65 -27
  119. package/dist/{chunk-J6M4FPK5.js → chunk-WXQ57LAO.js} +3 -3
  120. package/dist/{chunk-5H2G27PK.cjs → chunk-X27QRG4C.cjs} +38 -38
  121. package/dist/{chunk-TVHSPJ4N.cjs → chunk-X2AVEAZM.cjs} +30 -23
  122. package/dist/{chunk-DHO2YRIM.js → chunk-XQ5MWMP2.js} +4 -4
  123. package/dist/{chunk-XIVIE43A.cjs → chunk-XW6IXEQH.cjs} +26 -13
  124. package/dist/{chunk-YIVFJNYV.js → chunk-Y3ZFVUUU.js} +2 -2
  125. package/dist/{chunk-7H33U5SM.cjs → chunk-Y57W2CT5.cjs} +2 -2
  126. package/dist/{chunk-OBIYPYYS.cjs → chunk-YCM6QQRT.cjs} +46 -53
  127. package/dist/{chunk-MBOOR7X4.js → chunk-YFVQWSNJ.js} +3 -3
  128. package/dist/{chunk-ADADVMXY.js → chunk-YFWRJW4B.js} +2 -2
  129. package/dist/{chunk-ONDAWTW4.js → chunk-YN6IETRZ.js} +179 -136
  130. package/dist/{chunk-4SDKXQ4C.js → chunk-YRRAUB35.js} +4 -4
  131. package/dist/{chunk-OBP5REIV.js → chunk-Z6PMDS4G.js} +62 -24
  132. package/dist/{chunk-BOVPWH4H.js → chunk-ZA34AN3R.js} +8 -17
  133. package/dist/{chunk-EKYL4PE3.cjs → chunk-ZLF4YF3U.cjs} +2 -2
  134. package/dist/{chunk-6FH72EB2.cjs → chunk-ZPZAVHXL.cjs} +20 -20
  135. package/dist/cli/holoscript-runner.cjs +39 -22
  136. package/dist/cli/holoscript-runner.js +32 -15
  137. package/dist/compiler/GasOptimizationAnalyzer.d.ts +73 -0
  138. package/dist/compiler/NFTMarketplaceCompiler.d.ts +23 -0
  139. package/dist/compiler/agent-inference.cjs +7 -7
  140. package/dist/compiler/agent-inference.js +3 -3
  141. package/dist/compiler/android-xr.cjs +8 -8
  142. package/dist/compiler/android-xr.js +6 -6
  143. package/dist/compiler/android.cjs +6 -6
  144. package/dist/compiler/android.js +4 -4
  145. package/dist/compiler/ar.cjs +6 -6
  146. package/dist/compiler/ar.js +4 -4
  147. package/dist/compiler/babylon.cjs +8 -8
  148. package/dist/compiler/babylon.js +7 -7
  149. package/dist/compiler/business-quest.cjs +9 -9
  150. package/dist/compiler/business-quest.js +1 -1
  151. package/dist/compiler/context.cjs +6 -6
  152. package/dist/compiler/context.js +3 -3
  153. package/dist/compiler/domain-block-utils.cjs +153 -153
  154. package/dist/compiler/domain-block-utils.js +4 -4
  155. package/dist/compiler/dtdl.cjs +7 -7
  156. package/dist/compiler/dtdl.js +4 -4
  157. package/dist/compiler/gltf-pipeline.cjs +8 -8
  158. package/dist/compiler/gltf-pipeline.js +1 -1
  159. package/dist/compiler/godot.cjs +6 -6
  160. package/dist/compiler/godot.js +5 -5
  161. package/dist/compiler/incremental.cjs +8 -8
  162. package/dist/compiler/incremental.js +3 -3
  163. package/dist/compiler/index.cjs +530 -355
  164. package/dist/compiler/index.d.ts +20 -0
  165. package/dist/compiler/index.js +374 -210
  166. package/dist/compiler/ios.cjs +6 -6
  167. package/dist/compiler/ios.js +4 -4
  168. package/dist/compiler/llm-provider-capabilities.cjs +6 -6
  169. package/dist/compiler/llm-provider-capabilities.js +3 -3
  170. package/dist/compiler/multi-layer.cjs +10 -10
  171. package/dist/compiler/multi-layer.js +9 -9
  172. package/dist/compiler/openxr.cjs +7 -7
  173. package/dist/compiler/openxr.js +6 -6
  174. package/dist/compiler/playcanvas.cjs +6 -6
  175. package/dist/compiler/playcanvas.js +5 -5
  176. package/dist/compiler/r3f.cjs +13 -13
  177. package/dist/compiler/r3f.js +8 -8
  178. package/dist/compiler/sdf.cjs +7 -7
  179. package/dist/compiler/sdf.js +5 -5
  180. package/dist/compiler/state.cjs +6 -6
  181. package/dist/compiler/state.js +4 -4
  182. package/dist/compiler/trait-composition.cjs +8 -8
  183. package/dist/compiler/trait-composition.js +4 -4
  184. package/dist/compiler/unity.cjs +7 -7
  185. package/dist/compiler/unity.js +6 -6
  186. package/dist/compiler/unreal.cjs +8 -8
  187. package/dist/compiler/unreal.js +6 -6
  188. package/dist/compiler/urdf.cjs +14 -14
  189. package/dist/compiler/urdf.js +5 -5
  190. package/dist/compiler/usd-physics.cjs +7 -7
  191. package/dist/compiler/usd-physics.js +4 -4
  192. package/dist/compiler/visionos.cjs +7 -7
  193. package/dist/compiler/visionos.js +6 -6
  194. package/dist/compiler/vrchat.cjs +7 -7
  195. package/dist/compiler/vrchat.js +5 -5
  196. package/dist/compiler/vrr.cjs +7 -7
  197. package/dist/compiler/vrr.js +5 -5
  198. package/dist/compiler/wasm.cjs +10 -10
  199. package/dist/compiler/wasm.js +5 -5
  200. package/dist/compiler/webgpu.cjs +6 -6
  201. package/dist/compiler/webgpu.js +5 -5
  202. package/dist/coordinators/index.cjs +27 -10
  203. package/dist/coordinators/index.js +27 -10
  204. package/dist/debugger.cjs +6 -6
  205. package/dist/debugger.js +4 -4
  206. package/dist/entries/scripting.cjs +6 -6
  207. package/dist/entries/scripting.js +2 -2
  208. package/dist/hololand/index.cjs +36 -36
  209. package/dist/hololand/index.js +2 -2
  210. package/dist/index.cjs +1080 -2190
  211. package/dist/index.js +467 -1577
  212. package/dist/math/tropical-spmv.cjs +10 -10
  213. package/dist/math/tropical-spmv.js +1 -1
  214. package/dist/math/vec3.cjs +13 -13
  215. package/dist/math/vec3.js +1 -1
  216. package/dist/parser/NFTMarketplaceTypes.d.ts +191 -0
  217. package/dist/parser.cjs +16 -16
  218. package/dist/parser.js +5 -5
  219. package/dist/reconstruction/index.cjs +37 -37
  220. package/dist/reconstruction/index.js +4 -4
  221. package/dist/runtime.cjs +280 -74
  222. package/dist/runtime.d.ts +10 -1
  223. package/dist/runtime.js +268 -70
  224. package/dist/self-improvement/index.cjs +12 -4
  225. package/dist/self-improvement/index.js +12 -4
  226. package/dist/{src-HCCCSYP7.js → src-J6CM4AUR.js} +91 -33
  227. package/dist/{src-4ROC227P.cjs → src-PT2FERDV.cjs} +93 -35
  228. package/dist/testing.cjs +5 -5
  229. package/dist/testing.js +1 -1
  230. package/dist/traits/botanical-lotus.cjs +52 -48
  231. package/dist/traits/botanical-lotus.js +2 -2
  232. package/dist/traits/engines/index.cjs +39 -39
  233. package/dist/traits/engines/index.d.ts +279 -0
  234. package/dist/traits/engines/index.js +4 -4
  235. package/dist/traits/index.cjs +889 -773
  236. package/dist/traits/index.js +371 -259
  237. package/dist/world/index.cjs +21 -18
  238. package/dist/world/index.js +21 -18
  239. package/dist/world-model/index.cjs +11 -5
  240. package/dist/world-model/index.d.ts +8 -0
  241. package/dist/world-model/index.js +11 -5
  242. package/package.json +75 -69
  243. package/LICENSE +0 -21
  244. package/dist/GLTFPipeline-37FPRVPH.js +0 -17
  245. package/dist/GLTFPipeline-EK3LFJKW.cjs +0 -38
  246. package/dist/HoloScriptPlusParser-WKHRIH6T.cjs +0 -27
  247. package/dist/HoloScriptRuntime-ACDFKVVH.js +0 -10
  248. package/dist/HoloScriptRuntime-ON2OQVEF.cjs +0 -19
@@ -1,12 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var chunkON5QSY35_cjs = require('./chunk-ON5QSY35.cjs');
4
- var chunk5S7RKFGR_cjs = require('./chunk-5S7RKFGR.cjs');
3
+ var chunkKAIVDEIG_cjs = require('./chunk-KAIVDEIG.cjs');
4
+ var chunkUVFI7XIR_cjs = require('./chunk-UVFI7XIR.cjs');
5
5
  var chunkOIQYIIO3_cjs = require('./chunk-OIQYIIO3.cjs');
6
- var chunkAIA52I7T_cjs = require('./chunk-AIA52I7T.cjs');
7
- var chunkHKEXJUWS_cjs = require('./chunk-HKEXJUWS.cjs');
8
- var chunkKKP7JKN4_cjs = require('./chunk-KKP7JKN4.cjs');
9
- var chunkKKFZ3B6J_cjs = require('./chunk-KKFZ3B6J.cjs');
6
+ var chunkEBS32AJI_cjs = require('./chunk-EBS32AJI.cjs');
7
+ var chunkGH6C2QGW_cjs = require('./chunk-GH6C2QGW.cjs');
8
+ var chunkLODTHGST_cjs = require('./chunk-LODTHGST.cjs');
9
+ var chunk3VBO3IYQ_cjs = require('./chunk-3VBO3IYQ.cjs');
10
10
  var chunkE7JP3BS3_cjs = require('./chunk-E7JP3BS3.cjs');
11
11
  var chunkHCCQLAA4_cjs = require('./chunk-HCCQLAA4.cjs');
12
12
  var ans = require('@holoscript/core-types/ans');
@@ -20,8 +20,8 @@ var SHAPE_TO_THREE_GEOMETRY; exports.ThreeJSCompiler = void 0;
20
20
  var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
21
21
  "src/compiler/ThreeJSCompiler.ts"() {
22
22
  chunkOIQYIIO3_cjs.init_TraitCompositor();
23
- chunk5S7RKFGR_cjs.init_ProvenanceSemiring();
24
- chunkKKP7JKN4_cjs.init_CompilerBase();
23
+ chunkUVFI7XIR_cjs.init_ProvenanceSemiring();
24
+ chunkLODTHGST_cjs.init_CompilerBase();
25
25
  SHAPE_TO_THREE_GEOMETRY = {
26
26
  sphere: "SphereGeometry",
27
27
  orb: "SphereGeometry",
@@ -36,7 +36,7 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
36
36
  ring: "TorusGeometry",
37
37
  capsule: "CapsuleGeometry"
38
38
  };
39
- exports.ThreeJSCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
39
+ exports.ThreeJSCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
40
40
  constructor(options = {}) {
41
41
  super();
42
42
  this.compilerName = "ThreeJSCompiler";
@@ -146,9 +146,7 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
146
146
  this.emit('import * as THREE from "three";');
147
147
  if (this.options.enablePostProcessing) {
148
148
  this.emit('import { EffectComposer } from "three/addons/postprocessing/EffectComposer.js";');
149
- this.emit(
150
- 'import { RenderPass } from "three/addons/postprocessing/RenderPass.js";'
151
- );
149
+ this.emit('import { RenderPass } from "three/addons/postprocessing/RenderPass.js";');
152
150
  this.emit(
153
151
  'import { UnrealBloomPass } from "three/addons/postprocessing/UnrealBloomPass.js";'
154
152
  );
@@ -159,7 +157,9 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
159
157
  for (const prop of env.properties) {
160
158
  if (prop.key === "background" || prop.key === "skybox" || prop.key === "preset") {
161
159
  if (typeof prop.value === "string" && prop.value.startsWith("#")) {
162
- this.emit(`this.scene.background = new THREE.Color(${this.toThreeColorHex(prop.value)});`);
160
+ this.emit(
161
+ `this.scene.background = new THREE.Color(${this.toThreeColorHex(prop.value)});`
162
+ );
163
163
  } else {
164
164
  this.emit(`// skybox: "${prop.value}" \u2014 load via THREE.CubeTextureLoader`);
165
165
  }
@@ -170,13 +170,9 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
170
170
  const color = this.toThreeColorHex(fog.color ?? "#cccccc");
171
171
  this.emit(`this.scene.fog = new THREE.Fog(${color}, ${near}, ${far});`);
172
172
  } else if (prop.key === "ambient_light") {
173
- this.emit(
174
- `this.scene.add(new THREE.AmbientLight(0xffffff, ${prop.value ?? 0.5}));`
175
- );
173
+ this.emit(`this.scene.add(new THREE.AmbientLight(0xffffff, ${prop.value ?? 0.5}));`);
176
174
  } else if (prop.key === "ground") {
177
- this.emit(
178
- `const groundGeom = new THREE.PlaneGeometry(100, 100);`
179
- );
175
+ this.emit(`const groundGeom = new THREE.PlaneGeometry(100, 100);`);
180
176
  this.emit(
181
177
  `const groundMat = new THREE.MeshStandardMaterial({ color: 0x888888, roughness: 0.8 });`
182
178
  );
@@ -282,10 +278,8 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
282
278
  this.emit(`const ${v} = new THREE.Mesh(${v}Geom, ${v}Mat);`);
283
279
  this.emit(`this.scene.add(${v});`);
284
280
  }
285
- if (position)
286
- this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
287
- if (rotation)
288
- this.emit(`${v}.rotation.set(${rotation[0]}, ${rotation[1]}, ${rotation[2]});`);
281
+ if (position) this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
282
+ if (rotation) this.emit(`${v}.rotation.set(${rotation[0]}, ${rotation[1]}, ${rotation[2]});`);
289
283
  if (scale) {
290
284
  if (Array.isArray(scale)) {
291
285
  this.emit(`${v}.scale.set(${scale[0]}, ${scale[1]}, ${scale[2]});`);
@@ -298,7 +292,7 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
298
292
  (t) => t.name === "physics" || t.name === "collidable"
299
293
  );
300
294
  if (physicsTraits.length > 0) {
301
- const semiring = new chunk5S7RKFGR_cjs.ProvenanceSemiring();
295
+ const semiring = new chunkUVFI7XIR_cjs.ProvenanceSemiring();
302
296
  const applications = physicsTraits.map((t) => ({
303
297
  name: t.name,
304
298
  config: t.config || {},
@@ -326,9 +320,7 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
326
320
  } else if (trait.name === "hoverable") {
327
321
  this.emit(`// @hoverable \u2014 attach raycaster pointer-move handler to ${v}`);
328
322
  } else if (trait.name === "gaussian_splat") {
329
- this.emit(
330
- `// @gaussian_splat \u2014 use @mkkellogg/gaussian-splats-3d or three-splat for ${v}`
331
- );
323
+ this.emit(`// @gaussian_splat \u2014 use @mkkellogg/gaussian-splats-3d or three-splat for ${v}`);
332
324
  } else if (trait.name === "object_tracking") {
333
325
  this.emit(`// @object_tracking \u2014 WebXR hit-test for ${v}`);
334
326
  } else if (trait.name === "eye_tracked") {
@@ -433,10 +425,9 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
433
425
  }
434
426
  case "point": {
435
427
  const distStr = distance !== void 0 ? String(distance) : "0";
436
- this.emit(
437
- `const ${v} = new THREE.PointLight(${colorHex}, ${intStr}, ${distStr});`
438
- );
439
- if (position) this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
428
+ this.emit(`const ${v} = new THREE.PointLight(${colorHex}, ${intStr}, ${distStr});`);
429
+ if (position)
430
+ this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
440
431
  if (castShadow && this.options.enableShadows) this.emit(`${v}.castShadow = true;`);
441
432
  this.emit(`this.scene.add(${v});`);
442
433
  break;
@@ -447,7 +438,8 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
447
438
  this.emit(
448
439
  `const ${v} = new THREE.SpotLight(${colorHex}, ${intStr}, ${distance ?? 0}, ${angleRad}, ${pen});`
449
440
  );
450
- if (position) this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
441
+ if (position)
442
+ this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
451
443
  if (castShadow && this.options.enableShadows) this.emit(`${v}.castShadow = true;`);
452
444
  this.emit(`this.scene.add(${v});`);
453
445
  break;
@@ -477,13 +469,9 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
477
469
  if (near !== void 0) this.emit(`this.camera.near = ${near};`);
478
470
  if (far !== void 0) this.emit(`this.camera.far = ${far};`);
479
471
  if (position)
480
- this.emit(
481
- `this.camera.position.set(${position[0]}, ${position[1]}, ${position[2]});`
482
- );
472
+ this.emit(`this.camera.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
483
473
  if (target) {
484
- this.emit(
485
- `this.camera.lookAt(new THREE.Vector3(${target[0]}, ${target[1]}, ${target[2]}));`
486
- );
474
+ this.emit(`this.camera.lookAt(new THREE.Vector3(${target[0]}, ${target[1]}, ${target[2]}));`);
487
475
  }
488
476
  this.emit(`this.camera.updateProjectionMatrix();`);
489
477
  this.emit("");
@@ -530,9 +518,7 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
530
518
  else if (p.key === "radius") radius = p.value;
531
519
  }
532
520
  if (shape === "sphere") {
533
- this.emit(
534
- `const ${v}Geom = new THREE.SphereGeometry(${radius ?? 5}, 16, 16);`
535
- );
521
+ this.emit(`const ${v}Geom = new THREE.SphereGeometry(${radius ?? 5}, 16, 16);`);
536
522
  } else {
537
523
  const s = Array.isArray(size) ? size : [size ?? 5, size ?? 5, size ?? 5];
538
524
  this.emit(`const ${v}Geom = new THREE.BoxGeometry(${s[0]}, ${s[1]}, ${s[2]});`);
@@ -544,9 +530,7 @@ var init_ThreeJSCompiler = chunkHCCQLAA4_cjs.__esm({
544
530
  if (position) this.emit(`${v}.position.set(${position[0]}, ${position[1]}, ${position[2]});`);
545
531
  this.emit(`this.scene.add(${v}); // trigger zone (invisible)`);
546
532
  if (zone.handlers?.length) {
547
- this.emit(
548
- `// Zone handlers: attach raycaster intersection checks for ${v}`
549
- );
533
+ this.emit(`// Zone handlers: attach raycaster intersection checks for ${v}`);
550
534
  for (const h of zone.handlers) {
551
535
  this.emit(
552
536
  `// on ${this.escapeStringValue(h.event, "TypeScript")}: implement via raycaster.intersectObject(${v})`
@@ -653,9 +637,9 @@ chunkHCCQLAA4_cjs.__export(Native2DCompiler_exports, {
653
637
  exports.Native2DCompiler = void 0;
654
638
  var init_Native2DCompiler = chunkHCCQLAA4_cjs.__esm({
655
639
  "src/compiler/Native2DCompiler.ts"() {
656
- chunkKKP7JKN4_cjs.init_CompilerBase();
640
+ chunkLODTHGST_cjs.init_CompilerBase();
657
641
  chunkE7JP3BS3_cjs.init_safeJsonParse();
658
- exports.Native2DCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
642
+ exports.Native2DCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
659
643
  constructor() {
660
644
  super(...arguments);
661
645
  this.compilerName = "Native2DCompiler";
@@ -871,26 +855,156 @@ export default ${safeName}Component;
871
855
  // ============================================================================
872
856
  generateHTMLPage(name, objects, composition) {
873
857
  const content = objects.map((obj) => this.generateHTMLNode(obj)).join("\n ");
874
- let bgColor = "#ffffff";
875
- let color = "#000000";
858
+ let bgColor = "#050510";
859
+ let color = "#ffffff";
876
860
  if (composition.environment?.properties) {
877
861
  const themeProp = composition.environment.properties.find((p) => p.key === "theme");
878
862
  const bgProp = composition.environment.properties.find((p) => p.key === "backgroundColor");
879
- if (themeProp?.value === "dark" || composition.traits?.some((t) => t.name === "theme" && t.config?.dark)) {
863
+ const fgProp = composition.environment.properties.find((p) => p.key === "color");
864
+ if (themeProp?.value === "light") {
865
+ bgColor = bgProp?.value || "#ffffff";
866
+ color = fgProp?.value || "#000000";
867
+ } else if (themeProp?.value === "dark" || !themeProp) {
880
868
  bgColor = bgProp?.value || "#050510";
881
- color = "#ffffff";
869
+ color = fgProp?.value || "#ffffff";
882
870
  }
883
871
  }
872
+ if (composition.traits?.some((t) => t.name === "theme" && t.config?.light)) {
873
+ bgColor = "#ffffff";
874
+ color = "#000000";
875
+ }
884
876
  return `<!DOCTYPE html>
885
877
  <html lang="en">
886
878
  <head>
887
879
  <meta charset="UTF-8">
888
880
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
889
881
  <title>${name}</title>
890
- <script src="https://cdn.tailwindcss.com"></script>
891
882
  <style>
883
+ /* HoloScript Native2D \u2014 minimal Tailwind-compatible utility CSS (no CDN dependency) */
884
+ *, *::before, *::after { box-sizing: border-box; }
892
885
  body { margin: 0; padding: 0; background-color: ${bgColor}; color: ${color}; font-family: system-ui, -apple-system, sans-serif; }
893
- /* Basic resets and custom trait animations to mirror React Framer variants */
886
+ /* --- Typography --- */
887
+ .text-5xl { font-size: 3rem; line-height: 1; }
888
+ .text-3xl { font-size: 1.875rem; line-height: 2.25rem; }
889
+ .text-2xl { font-size: 1.5rem; line-height: 2rem; }
890
+ .text-xl { font-size: 1.25rem; line-height: 1.75rem; }
891
+ .text-lg { font-size: 1.125rem; line-height: 1.75rem; }
892
+ .text-sm { font-size: 0.875rem; line-height: 1.25rem; }
893
+ .text-xs { font-size: 0.75rem; line-height: 1rem; }
894
+ .font-bold { font-weight: 700; }
895
+ .font-semibold { font-weight: 600; }
896
+ .font-medium { font-weight: 500; }
897
+ .tracking-tight { letter-spacing: -0.025em; }
898
+ /* --- Colors --- */
899
+ .text-white { color: #fff; }
900
+ .text-black { color: #000; }
901
+ .text-gray-300 { color: #d1d5db; }
902
+ .text-gray-400 { color: #9ca3af; }
903
+ .text-gray-500 { color: #6b7280; }
904
+ .text-gray-600 { color: #4b5563; }
905
+ /* --- Backgrounds --- */
906
+ .bg-white { background-color: #fff; }
907
+ .bg-gray-800 { background-color: #1f2937; }
908
+ .bg-gray-900 { background-color: #111827; }
909
+ .bg-gray-950 { background-color: #030712; }
910
+ .bg-blue-600 { background-color: #2563eb; }
911
+ .bg-blue-700 { background-color: #1d4ed8; }
912
+ .bg-indigo-600 { background-color: #4f46e5; }
913
+ .bg-indigo-500 { background-color: #6366f1; }
914
+ /* --- Hover states --- */
915
+ .hover\\:bg-blue-700:hover { background-color: #1d4ed8; }
916
+ .hover\\:bg-gray-800:hover { background-color: #1f2937; }
917
+ .hover\\:bg-indigo-500:hover { background-color: #6366f1; }
918
+ .hover\\:text-white:hover { color: #fff; }
919
+ /* --- Spacing --- */
920
+ .px-3 { padding-left: 0.75rem; padding-right: 0.75rem; }
921
+ .px-4 { padding-left: 1rem; padding-right: 1rem; }
922
+ .px-6 { padding-left: 1.5rem; padding-right: 1.5rem; }
923
+ .px-8 { padding-left: 2rem; padding-right: 2rem; }
924
+ .py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; }
925
+ .py-2 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
926
+ .py-3 { padding-top: 0.75rem; padding-bottom: 0.75rem; }
927
+ .py-4 { padding-top: 1rem; padding-bottom: 1rem; }
928
+ .py-8 { padding-top: 2rem; padding-bottom: 2rem; }
929
+ .py-16 { padding-top: 4rem; padding-bottom: 4rem; }
930
+ .p-4 { padding: 1rem; }
931
+ .p-6 { padding: 1.5rem; }
932
+ .p-8 { padding: 2rem; }
933
+ .mt-2 { margin-top: 0.5rem; }
934
+ .mt-4 { margin-top: 1rem; }
935
+ .mt-6 { margin-top: 1.5rem; }
936
+ .mt-8 { margin-top: 2rem; }
937
+ .mb-2 { margin-bottom: 0.5rem; }
938
+ .mb-4 { margin-bottom: 1rem; }
939
+ .mb-6 { margin-bottom: 1.5rem; }
940
+ .gap-2 { gap: 0.5rem; }
941
+ .gap-4 { gap: 1rem; }
942
+ .gap-6 { gap: 1.5rem; }
943
+ .gap-8 { gap: 2rem; }
944
+ .space-y-2 > * + * { margin-top: 0.5rem; }
945
+ .space-y-4 > * + * { margin-top: 1rem; }
946
+ /* --- Borders & Radius --- */
947
+ .border { border-width: 1px; border-style: solid; }
948
+ .border-gray-600 { border-color: #4b5563; }
949
+ .border-gray-700 { border-color: #374151; }
950
+ .border-gray-800 { border-color: #1f2937; }
951
+ .rounded { border-radius: 0.25rem; }
952
+ .rounded-lg { border-radius: 0.5rem; }
953
+ .rounded-xl { border-radius: 0.75rem; }
954
+ .rounded-2xl { border-radius: 1rem; }
955
+ .rounded-full { border-radius: 9999px; }
956
+ /* --- Shadows --- */
957
+ .shadow { box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24); }
958
+ .shadow-md { box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.1); }
959
+ .shadow-lg { box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1); }
960
+ .shadow-xl { box-shadow: 0 20px 25px -5px rgba(0,0,0,0.1), 0 8px 10px -6px rgba(0,0,0,0.1); }
961
+ /* --- Layout --- */
962
+ .flex { display: flex; }
963
+ .inline-flex { display: inline-flex; }
964
+ .grid { display: grid; }
965
+ .block { display: block; }
966
+ .hidden { display: none; }
967
+ .items-center { align-items: center; }
968
+ .items-start { align-items: flex-start; }
969
+ .justify-center { justify-content: center; }
970
+ .justify-between { justify-content: space-between; }
971
+ .flex-col { flex-direction: column; }
972
+ .flex-wrap { flex-wrap: wrap; }
973
+ .flex-1 { flex: 1 1 0%; }
974
+ .w-full { width: 100%; }
975
+ .w-auto { width: auto; }
976
+ .max-w-sm { max-width: 24rem; }
977
+ .max-w-md { max-width: 28rem; }
978
+ .max-w-lg { max-width: 32rem; }
979
+ .max-w-xl { max-width: 36rem; }
980
+ .max-w-2xl { max-width: 42rem; }
981
+ .max-w-3xl { max-width: 48rem; }
982
+ .max-w-4xl { max-width: 56rem; }
983
+ .max-w-5xl { max-width: 64rem; }
984
+ .max-w-6xl { max-width: 72rem; }
985
+ .max-w-7xl { max-width: 80rem; }
986
+ .mx-auto { margin-left: auto; margin-right: auto; }
987
+ .text-center { text-align: center; }
988
+ .text-left { text-align: left; }
989
+ .text-right { text-align: right; }
990
+ .relative { position: relative; }
991
+ .absolute { position: absolute; }
992
+ /* --- Interaction --- */
993
+ .cursor-pointer { cursor: pointer; }
994
+ .select-none { user-select: none; }
995
+ .transition-all { transition: all 0.15s ease; }
996
+ .transition { transition: color 0.15s ease, background-color 0.15s ease, border-color 0.15s ease; }
997
+ .outline-none { outline: none; }
998
+ /* Focus ring for inputs */
999
+ .focus\\:ring-2:focus { box-shadow: 0 0 0 2px rgba(99,102,241,0.5); }
1000
+ .focus\\:ring-indigo-500:focus { box-shadow: 0 0 0 2px #6366f1; }
1001
+ /* --- Opacity --- */
1002
+ .opacity-50 { opacity: 0.5; }
1003
+ .opacity-75 { opacity: 0.75; }
1004
+ /* --- Overflow --- */
1005
+ .overflow-hidden { overflow: hidden; }
1006
+ .overflow-auto { overflow: auto; }
1007
+ /* --- Custom HoloScript trait animations --- */
894
1008
  .glow-btn:hover { box-shadow: 0 0 15px rgba(255,255,255,0.5); }
895
1009
  .lift-card { transition: transform 0.2s ease, box-shadow 0.2s ease; }
896
1010
  .lift-card:hover { transform: translateY(-4px); box-shadow: 0 10px 20px rgba(0,0,0,0.2); }
@@ -940,10 +1054,85 @@ export default ${safeName}Component;
940
1054
  </body>
941
1055
  </html>`;
942
1056
  }
1057
+ /** Build a semantic HTML block for @semantic_entity / @semantic_layout traits.
1058
+ *
1059
+ * HoloScript's `generate_semantic_ui` tool emits 3D-world-style objects
1060
+ * (`mesh`, `text`, `plane`) annotated with semantic traits:
1061
+ * @semantic_entity(stock_table) → config._arg0 = entity name
1062
+ * @semantic_layout(table, columns:["a","b","c"]) → config._arg0 = layout type
1063
+ * @content("Inventory Dashboard") → config._arg0 = text
1064
+ * @color("#16213e") → config._arg0 = bg colour
1065
+ *
1066
+ * Without this handler every semantic object falls through to `tag = 'div'` with
1067
+ * no content. This method maps the semantic vocabulary to real HTML elements so
1068
+ * the compiled page is actually perceivable.
1069
+ */
1070
+ generateSemanticHTMLBlock(traits) {
1071
+ const layoutType = traits.semantic_layout?._arg0 || traits.semantic_layout?.flow || traits.semantic_layout?.layout || traits.semantic_layout?.type;
1072
+ const entityName = traits.semantic_entity?._arg0 || traits.semantic_entity?.type || traits.semantic_entity?.name || traits.semantic_entity?.entity;
1073
+ const bgColor = traits.color?._arg0;
1074
+ const textContent = traits.content?._arg0;
1075
+ if (!layoutType && !entityName) return null;
1076
+ const styleAttr = bgColor ? ` style="background-color:${bgColor};padding:1rem;border-radius:0.5rem;margin-bottom:1rem;"` : ` style="padding:1rem;margin-bottom:1rem;"`;
1077
+ const isTableEntity = !!entityName && (entityName.includes("table") || entityName.includes("grid") || entityName.includes("list"));
1078
+ if (layoutType === "table" || isTableEntity && !layoutType) {
1079
+ const columns = traits.semantic_layout?.columns || [];
1080
+ const headerCells = columns.map(
1081
+ (col) => `<th style="padding:0.5rem 1rem;text-align:left;border-bottom:2px solid #334;">${col}</th>`
1082
+ ).join("");
1083
+ const sampleRow = columns.map((col) => `<td style="padding:0.5rem 1rem;">${col}</td>`).join("");
1084
+ return `<div${styleAttr} data-holo-semantic="table" data-holo-entity="${entityName || ""}">
1085
+ <table style="width:100%;border-collapse:collapse;">
1086
+ <thead><tr>${headerCells}</tr></thead>
1087
+ <tbody>
1088
+ <tr>${sampleRow}</tr>
1089
+ </tbody>
1090
+ </table>
1091
+ </div>`;
1092
+ }
1093
+ if (layoutType === "form" || entityName && entityName.includes("form")) {
1094
+ const fields = traits.semantic_layout?.fields || [];
1095
+ const inputs = fields.map(
1096
+ (f) => `<div style="margin-bottom:0.5rem;"><label style="display:block;margin-bottom:0.25rem;">${f}</label><input type="text" name="${f}" placeholder="${f}" style="width:100%;padding:0.4rem 0.6rem;border:1px solid #556;border-radius:0.25rem;background:#111;color:#eee;" /></div>`
1097
+ ).join("\n");
1098
+ return `<div${styleAttr} data-holo-semantic="form" data-holo-entity="${entityName || ""}">
1099
+ <form onsubmit="return false;">
1100
+ ${inputs}
1101
+ <button type="submit" style="padding:0.4rem 1rem;border-radius:0.25rem;background:#3b82f6;color:#fff;border:none;cursor:pointer;">Submit</button>
1102
+ </form>
1103
+ </div>`;
1104
+ }
1105
+ if (layoutType === "alert_list") {
1106
+ const filterLabel = traits.semantic_layout?.filter || "";
1107
+ return `<div${styleAttr} data-holo-semantic="alert_list" data-holo-entity="${entityName || ""}">
1108
+ <ul style="list-style:none;padding:0;margin:0;" data-holo-filter="${filterLabel}">
1109
+ <li style="padding:0.4rem 0.8rem;border-bottom:1px solid #446;">(no alerts)</li>
1110
+ </ul>
1111
+ </div>`;
1112
+ }
1113
+ if (layoutType === "dashboard_grid" || layoutType) {
1114
+ return `<div${styleAttr} data-holo-semantic="${layoutType}" data-holo-entity="${entityName || ""}"></div>`;
1115
+ }
1116
+ if (entityName && textContent) {
1117
+ const isButton = entityName.includes("button") || entityName.includes("btn") || entityName.includes("submit");
1118
+ if (isButton) {
1119
+ return `<div${styleAttr} data-holo-entity="${entityName}"><button type="button" style="padding:0.4rem 1rem;border-radius:0.25rem;background:#3b82f6;color:#fff;border:none;cursor:pointer;">${textContent}</button></div>`;
1120
+ }
1121
+ return `<div${styleAttr} data-holo-entity="${entityName}"><span>${textContent}</span></div>`;
1122
+ }
1123
+ if (entityName) {
1124
+ return `<div${styleAttr} data-holo-entity="${entityName}"></div>`;
1125
+ }
1126
+ return null;
1127
+ }
943
1128
  generateHTMLNode(obj, opts = {}) {
944
1129
  const node = obj;
945
1130
  const traits = this.extractTraits(obj);
946
1131
  const nodeType = typeof node.type === "string" ? node.type.toLowerCase() : void 0;
1132
+ if (traits.semantic_entity || traits.semantic_layout) {
1133
+ const block = this.generateSemanticHTMLBlock(traits);
1134
+ if (block) return block;
1135
+ }
947
1136
  let tag = traits.theme?.tag || traits.panel?.tag || nodeType || "div";
948
1137
  if ([
949
1138
  "nav",
@@ -1153,8 +1342,8 @@ chunkHCCQLAA4_cjs.__export(A2AAgentCardCompiler_exports, {
1153
1342
  exports.A2AAgentCardCompiler = void 0; var A2AAgentCardCompiler_default;
1154
1343
  var init_A2AAgentCardCompiler = chunkHCCQLAA4_cjs.__esm({
1155
1344
  "src/compiler/A2AAgentCardCompiler.ts"() {
1156
- chunkKKP7JKN4_cjs.init_CompilerBase();
1157
- exports.A2AAgentCardCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
1345
+ chunkLODTHGST_cjs.init_CompilerBase();
1346
+ exports.A2AAgentCardCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
1158
1347
  constructor(options = {}) {
1159
1348
  super();
1160
1349
  this.compilerName = "A2AAgentCardCompiler";
@@ -2215,9 +2404,9 @@ chunkHCCQLAA4_cjs.__export(NIRCompiler_exports, {
2215
2404
  exports.NIRCompiler = void 0; var NIRCompiler_default;
2216
2405
  var init_NIRCompiler = chunkHCCQLAA4_cjs.__esm({
2217
2406
  "src/compiler/NIRCompiler.ts"() {
2218
- chunkKKP7JKN4_cjs.init_CompilerBase();
2407
+ chunkLODTHGST_cjs.init_CompilerBase();
2219
2408
  init_NIRTraitMap();
2220
- exports.NIRCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
2409
+ exports.NIRCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
2221
2410
  constructor(options = {}) {
2222
2411
  super();
2223
2412
  this.compilerName = "NIRCompiler";
@@ -2562,9 +2751,39 @@ var init_NIRCompiler = chunkHCCQLAA4_cjs.__esm({
2562
2751
  }
2563
2752
  });
2564
2753
 
2754
+ // src/compiler/CodeEditorCompiler.ts
2755
+ var KNOWN_TRAITS = /* @__PURE__ */ new Set([
2756
+ "code_editor",
2757
+ "lsp_client",
2758
+ "editor_gutters",
2759
+ "editor_keybindings",
2760
+ "store_diagnostics",
2761
+ "editor_toolbar",
2762
+ "spatial_blame"
2763
+ ]);
2764
+ var CodeEditorCompiler = class {
2765
+ constructor() {
2766
+ this.compilerName = "CodeEditorCompiler";
2767
+ }
2768
+ compile(composition, _agentToken, _outputPath, options) {
2769
+ const indent = options?.indent ?? 2;
2770
+ const strict = options?.strictTraits ?? false;
2771
+ const config = {};
2772
+ const allTraits = [...composition.traits ?? []];
2773
+ for (const obj of composition.objects) {
2774
+ allTraits.push(...obj.traits ?? []);
2775
+ }
2776
+ for (const trait of allTraits) {
2777
+ if (strict && !KNOWN_TRAITS.has(trait.name)) continue;
2778
+ config[trait.name] = trait.config;
2779
+ }
2780
+ return JSON.stringify(config, null, indent);
2781
+ }
2782
+ };
2783
+
2565
2784
  // src/compiler/USDZPipeline.ts
2566
- chunkHKEXJUWS_cjs.init_DomainBlockCompilerMixin();
2567
- chunkON5QSY35_cjs.init_R3FCompiler();
2785
+ chunkGH6C2QGW_cjs.init_DomainBlockCompilerMixin();
2786
+ chunkKAIVDEIG_cjs.init_R3FCompiler();
2568
2787
  function presetString(p, k) {
2569
2788
  const v = p[k];
2570
2789
  return typeof v === "string" ? v : void 0;
@@ -2795,8 +3014,8 @@ ${domainBlocksOutput}` : materials,
2795
3014
  const matName = `Material_${this.sanitizeName(obj.name)}`;
2796
3015
  const mat = { name: matName };
2797
3016
  const presetName = typeof material === "string" ? material : typeof materialPreset === "string" ? materialPreset : void 0;
2798
- if (presetName && chunkON5QSY35_cjs.MATERIAL_PRESETS[presetName]) {
2799
- const preset = chunkON5QSY35_cjs.MATERIAL_PRESETS[presetName];
3017
+ if (presetName && chunkKAIVDEIG_cjs.MATERIAL_PRESETS[presetName]) {
3018
+ const preset = chunkKAIVDEIG_cjs.MATERIAL_PRESETS[presetName];
2800
3019
  const colorStr = presetString(preset, "color");
2801
3020
  if (colorStr) mat.baseColor = this.hexToRGB(colorStr);
2802
3021
  const metal = presetNumber(preset, "metalness");
@@ -3297,59 +3516,59 @@ ${domainBlocksOutput}` : materials,
3297
3516
  generateDomainBlocks(composition) {
3298
3517
  const domainBlocks = composition.domainBlocks ?? [];
3299
3518
  if (domainBlocks.length === 0) return "";
3300
- const compiled = chunkHKEXJUWS_cjs.compileDomainBlocks(
3519
+ const compiled = chunkGH6C2QGW_cjs.compileDomainBlocks(
3301
3520
  domainBlocks,
3302
3521
  {
3303
3522
  material: (block) => {
3304
- const mat = chunkHKEXJUWS_cjs.compileMaterialBlock(block);
3305
- return chunkHKEXJUWS_cjs.materialToUSD(mat);
3523
+ const mat = chunkGH6C2QGW_cjs.compileMaterialBlock(block);
3524
+ return chunkGH6C2QGW_cjs.materialToUSD(mat);
3306
3525
  },
3307
3526
  physics: (block) => {
3308
- const phys = chunkHKEXJUWS_cjs.compilePhysicsBlock(block);
3527
+ const phys = chunkGH6C2QGW_cjs.compilePhysicsBlock(block);
3309
3528
  return `# Physics: ${phys.keyword} "${phys.name || ""}" \u2014 ${JSON.stringify(phys.properties)}`;
3310
3529
  },
3311
3530
  vfx: (block) => {
3312
- const ps = chunkHKEXJUWS_cjs.compileParticleBlock(block);
3313
- return chunkHKEXJUWS_cjs.particlesToUSD(ps);
3531
+ const ps = chunkGH6C2QGW_cjs.compileParticleBlock(block);
3532
+ return chunkGH6C2QGW_cjs.particlesToUSD(ps);
3314
3533
  },
3315
3534
  postfx: (block) => {
3316
- const pp = chunkHKEXJUWS_cjs.compilePostProcessingBlock(block);
3317
- return chunkHKEXJUWS_cjs.postProcessingToUSD(pp);
3535
+ const pp = chunkGH6C2QGW_cjs.compilePostProcessingBlock(block);
3536
+ return chunkGH6C2QGW_cjs.postProcessingToUSD(pp);
3318
3537
  },
3319
3538
  audio: (block) => {
3320
- const audio = chunkHKEXJUWS_cjs.compileAudioSourceBlock(block);
3321
- return chunkHKEXJUWS_cjs.audioSourceToUSD(audio);
3539
+ const audio = chunkGH6C2QGW_cjs.compileAudioSourceBlock(block);
3540
+ return chunkGH6C2QGW_cjs.audioSourceToUSD(audio);
3322
3541
  },
3323
3542
  weather: (block) => {
3324
- const weather = chunkHKEXJUWS_cjs.compileWeatherBlock(block);
3325
- return chunkHKEXJUWS_cjs.weatherToUSD(weather);
3543
+ const weather = chunkGH6C2QGW_cjs.compileWeatherBlock(block);
3544
+ return chunkGH6C2QGW_cjs.weatherToUSD(weather);
3326
3545
  },
3327
3546
  narrative: (block) => {
3328
- const narr = chunkHKEXJUWS_cjs.compileNarrativeBlock(block);
3329
- return chunkHKEXJUWS_cjs.narrativeToUSDA(narr);
3547
+ const narr = chunkGH6C2QGW_cjs.compileNarrativeBlock(block);
3548
+ return chunkGH6C2QGW_cjs.narrativeToUSDA(narr);
3330
3549
  },
3331
3550
  payment: (block) => {
3332
- const pay = chunkHKEXJUWS_cjs.compilePaymentBlock(block);
3333
- return chunkHKEXJUWS_cjs.paymentToUSDA(pay);
3551
+ const pay = chunkGH6C2QGW_cjs.compilePaymentBlock(block);
3552
+ return chunkGH6C2QGW_cjs.paymentToUSDA(pay);
3334
3553
  },
3335
3554
  healthcare: (block) => {
3336
- const h = chunkHKEXJUWS_cjs.compileHealthcareBlock(block);
3337
- return chunkHKEXJUWS_cjs.healthcareToUSDA(h);
3555
+ const h = chunkGH6C2QGW_cjs.compileHealthcareBlock(block);
3556
+ return chunkGH6C2QGW_cjs.healthcareToUSDA(h);
3338
3557
  },
3339
3558
  robotics: (block) => {
3340
- const r = chunkHKEXJUWS_cjs.compileRoboticsBlock(block);
3341
- return chunkHKEXJUWS_cjs.roboticsToUSDA(r);
3559
+ const r = chunkGH6C2QGW_cjs.compileRoboticsBlock(block);
3560
+ return chunkGH6C2QGW_cjs.roboticsToUSDA(r);
3342
3561
  },
3343
- iot: (block) => chunkHKEXJUWS_cjs.iotToUSDA(chunkHKEXJUWS_cjs.compileIoTBlock(block)),
3344
- dataviz: (block) => chunkHKEXJUWS_cjs.datavizToUSDA(chunkHKEXJUWS_cjs.compileDataVizBlock(block)),
3345
- education: (block) => chunkHKEXJUWS_cjs.educationToUSDA(chunkHKEXJUWS_cjs.compileEducationBlock(block)),
3346
- music: (block) => chunkHKEXJUWS_cjs.musicToUSDA(chunkHKEXJUWS_cjs.compileMusicBlock(block)),
3347
- architecture: (block) => chunkHKEXJUWS_cjs.architectureToUSDA(chunkHKEXJUWS_cjs.compileArchitectureBlock(block)),
3348
- web3: (block) => chunkHKEXJUWS_cjs.web3ToUSDA(chunkHKEXJUWS_cjs.compileWeb3Block(block)),
3349
- procedural: (block) => chunkHKEXJUWS_cjs.proceduralToUSDA(chunkHKEXJUWS_cjs.compileProceduralBlock(block)),
3350
- rendering: (block) => chunkHKEXJUWS_cjs.renderingToUSDA(chunkHKEXJUWS_cjs.compileRenderingBlock(block)),
3351
- navigation: (block) => chunkHKEXJUWS_cjs.navigationToUSDA(chunkHKEXJUWS_cjs.compileNavigationBlock(block)),
3352
- input: (block) => chunkHKEXJUWS_cjs.inputToUSDA(chunkHKEXJUWS_cjs.compileInputBlock(block))
3562
+ iot: (block) => chunkGH6C2QGW_cjs.iotToUSDA(chunkGH6C2QGW_cjs.compileIoTBlock(block)),
3563
+ dataviz: (block) => chunkGH6C2QGW_cjs.datavizToUSDA(chunkGH6C2QGW_cjs.compileDataVizBlock(block)),
3564
+ education: (block) => chunkGH6C2QGW_cjs.educationToUSDA(chunkGH6C2QGW_cjs.compileEducationBlock(block)),
3565
+ music: (block) => chunkGH6C2QGW_cjs.musicToUSDA(chunkGH6C2QGW_cjs.compileMusicBlock(block)),
3566
+ architecture: (block) => chunkGH6C2QGW_cjs.architectureToUSDA(chunkGH6C2QGW_cjs.compileArchitectureBlock(block)),
3567
+ web3: (block) => chunkGH6C2QGW_cjs.web3ToUSDA(chunkGH6C2QGW_cjs.compileWeb3Block(block)),
3568
+ procedural: (block) => chunkGH6C2QGW_cjs.proceduralToUSDA(chunkGH6C2QGW_cjs.compileProceduralBlock(block)),
3569
+ rendering: (block) => chunkGH6C2QGW_cjs.renderingToUSDA(chunkGH6C2QGW_cjs.compileRenderingBlock(block)),
3570
+ navigation: (block) => chunkGH6C2QGW_cjs.navigationToUSDA(chunkGH6C2QGW_cjs.compileNavigationBlock(block)),
3571
+ input: (block) => chunkGH6C2QGW_cjs.inputToUSDA(chunkGH6C2QGW_cjs.compileInputBlock(block))
3353
3572
  },
3354
3573
  (block) => `# Domain block: ${block.domain}/${block.keyword} "${block.name}"`
3355
3574
  );
@@ -3380,7 +3599,7 @@ _USDZPipeline.TEXTURE_CHANNEL_MAP = {
3380
3599
  var USDZPipeline = _USDZPipeline;
3381
3600
 
3382
3601
  // src/compiler/GaussianSplattingCompiler.ts
3383
- chunkKKP7JKN4_cjs.init_CompilerBase();
3602
+ chunkLODTHGST_cjs.init_CompilerBase();
3384
3603
  var GAUSSIAN_SPLAT_TRAIT_NAME = "gaussian_splat";
3385
3604
  var MULTIPLAYER_TRAIT_NAME = "multiplayer";
3386
3605
  function detectMultiUserSharedSort(composition) {
@@ -3406,7 +3625,7 @@ function objectHasBothTraits(obj) {
3406
3625
  return false;
3407
3626
  }
3408
3627
  var SHARED_SORT_SHADER_PATH = "packages/engine/src/gpu/shaders/splat-shared-sort.wgsl";
3409
- var GaussianSplattingCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
3628
+ var GaussianSplattingCompiler = class extends chunkLODTHGST_cjs.CompilerBase {
3410
3629
  constructor(options = {}) {
3411
3630
  super();
3412
3631
  this.compilerName = "GaussianSplattingCompiler";
@@ -3578,17 +3797,7 @@ var GaussianSplattingCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
3578
3797
  c11 *= invLen;
3579
3798
  c12 *= invLen;
3580
3799
  c22 *= invLen;
3581
- const ev = this.jacobiEigenvalues3([
3582
- c00,
3583
- c01,
3584
- c02,
3585
- c01,
3586
- c11,
3587
- c12,
3588
- c02,
3589
- c12,
3590
- c22
3591
- ]);
3800
+ const ev = this.jacobiEigenvalues3([c00, c01, c02, c01, c11, c12, c02, c12, c22]);
3592
3801
  const minScale = 1e-3;
3593
3802
  scales[i * 3] = Math.max(minScale, Math.sqrt(Math.abs(ev.values[0])));
3594
3803
  scales[i * 3 + 1] = Math.max(minScale, Math.sqrt(Math.abs(ev.values[1])));
@@ -4218,11 +4427,7 @@ function computeBounds(anchors) {
4218
4427
  const cx = (minX + maxX) / 2;
4219
4428
  const cy = (minY + maxY) / 2;
4220
4429
  const cz = (minZ + maxZ) / 2;
4221
- const halfSize = Math.max(
4222
- (maxX - minX) / 2,
4223
- (maxY - minY) / 2,
4224
- (maxZ - minZ) / 2
4225
- );
4430
+ const halfSize = Math.max((maxX - minX) / 2, (maxY - minY) / 2, (maxZ - minZ) / 2);
4226
4431
  return {
4227
4432
  min: { x: minX, y: minY, z: minZ },
4228
4433
  max: { x: maxX, y: maxY, z: maxZ },
@@ -5844,7 +6049,7 @@ function quickSafetyCheck(traits, calls, options = {}) {
5844
6049
  }
5845
6050
 
5846
6051
  // src/compiler/platform/CrossRealityTraitRegistry.ts
5847
- chunkAIA52I7T_cjs.init_PlatformConditional();
6052
+ chunkEBS32AJI_cjs.init_PlatformConditional();
5848
6053
  var CATEGORY_DEFAULT_EMBODIMENT = {
5849
6054
  vr: "FullAvatar",
5850
6055
  ar: "FloatingAgent",
@@ -5945,7 +6150,7 @@ var CrossRealityTraitRegistry = class {
5945
6150
  if (trait.applicablePlatforms.length === 0 && trait.applicableCategories.length === 0)
5946
6151
  return true;
5947
6152
  if (trait.applicablePlatforms.includes(platform)) return true;
5948
- const category = chunkAIA52I7T_cjs.platformCategory(platform);
6153
+ const category = chunkEBS32AJI_cjs.platformCategory(platform);
5949
6154
  return trait.applicableCategories.includes(category);
5950
6155
  }
5951
6156
  /** Resolve the default embodiment for a platform */
@@ -5953,13 +6158,13 @@ var CrossRealityTraitRegistry = class {
5953
6158
  if (platform in PLATFORM_EMBODIMENT_OVERRIDES) {
5954
6159
  return PLATFORM_EMBODIMENT_OVERRIDES[platform];
5955
6160
  }
5956
- const category = chunkAIA52I7T_cjs.platformCategory(platform);
6161
+ const category = chunkEBS32AJI_cjs.platformCategory(platform);
5957
6162
  return CATEGORY_DEFAULT_EMBODIMENT[category];
5958
6163
  }
5959
6164
  /** Validate a handoff path at compile time */
5960
6165
  validateHandoffPath(from, to) {
5961
- const fromCat = chunkAIA52I7T_cjs.platformCategory(from);
5962
- const toCat = chunkAIA52I7T_cjs.platformCategory(to);
6166
+ const fromCat = chunkEBS32AJI_cjs.platformCategory(from);
6167
+ const toCat = chunkEBS32AJI_cjs.platformCategory(to);
5963
6168
  if (fromCat === toCat) return { allowed: true, latencyBudgetMs: 100 };
5964
6169
  const rule = HANDOFF_PATH_RULES.find((r) => r.from === fromCat && r.to === toCat);
5965
6170
  if (!rule) return { allowed: true, latencyBudgetMs: 500 };
@@ -5972,7 +6177,7 @@ var CrossRealityTraitRegistry = class {
5972
6177
  }
5973
6178
  /** Get MVC budget for a target platform */
5974
6179
  getMVCBudget(platform) {
5975
- const category = chunkAIA52I7T_cjs.platformCategory(platform);
6180
+ const category = chunkEBS32AJI_cjs.platformCategory(platform);
5976
6181
  return MVC_BUDGET_CONSTRAINTS.find((b) => b.category === category) ?? MVC_BUDGET_CONSTRAINTS[0];
5977
6182
  }
5978
6183
  /** Get total registered trait count */
@@ -6132,7 +6337,7 @@ function createCrossRealityTraitRegistry() {
6132
6337
  }
6133
6338
 
6134
6339
  // src/compiler/platform/ModalitySelector.ts
6135
- chunkAIA52I7T_cjs.init_PlatformConditional();
6340
+ chunkEBS32AJI_cjs.init_PlatformConditional();
6136
6341
  var EMBODIMENT_TO_TARGET = {
6137
6342
  FullAvatar: { primary: "openxr", fallback: "r3f" },
6138
6343
  FloatingAgent: { primary: "visionos", fallback: "r3f" },
@@ -6164,8 +6369,8 @@ var PLATFORM_TARGET_OVERRIDES = {
6164
6369
  };
6165
6370
  function selectModality(platform, options = {}) {
6166
6371
  const reasoning = [];
6167
- const capabilities = chunkAIA52I7T_cjs.PLATFORM_CAPABILITIES[platform];
6168
- const category = chunkAIA52I7T_cjs.platformCategory(platform);
6372
+ const capabilities = chunkEBS32AJI_cjs.PLATFORM_CAPABILITIES[platform];
6373
+ const category = chunkEBS32AJI_cjs.platformCategory(platform);
6169
6374
  let embodiment;
6170
6375
  if (options.forceEmbodiment) {
6171
6376
  embodiment = options.forceEmbodiment;
@@ -6222,16 +6427,16 @@ function selectModality(platform, options = {}) {
6222
6427
  }
6223
6428
  function selectModalityForAll(options = {}) {
6224
6429
  const results = /* @__PURE__ */ new Map();
6225
- for (const platform of Object.keys(chunkAIA52I7T_cjs.PLATFORM_CAPABILITIES)) {
6430
+ for (const platform of Object.keys(chunkEBS32AJI_cjs.PLATFORM_CAPABILITIES)) {
6226
6431
  results.set(platform, selectModality(platform, options));
6227
6432
  }
6228
6433
  return results;
6229
6434
  }
6230
6435
  function bestCategoryForTraits(requiredCapabilities) {
6231
6436
  const categories = [];
6232
- for (const [cat, platforms] of Object.entries(chunkAIA52I7T_cjs.PLATFORM_CATEGORIES)) {
6437
+ for (const [cat, platforms] of Object.entries(chunkEBS32AJI_cjs.PLATFORM_CATEGORIES)) {
6233
6438
  const canSupport = platforms.some((platform) => {
6234
- const caps = chunkAIA52I7T_cjs.PLATFORM_CAPABILITIES[platform];
6439
+ const caps = chunkEBS32AJI_cjs.PLATFORM_CAPABILITIES[platform];
6235
6440
  return Object.entries(requiredCapabilities).every(([key, required]) => {
6236
6441
  if (typeof required === "boolean")
6237
6442
  return !required || caps[key] === true;
@@ -6258,7 +6463,7 @@ var CompilerBridge = class {
6258
6463
  if (this.initialized) return;
6259
6464
  try {
6260
6465
  const [parserModule, compilerModule] = await Promise.all([
6261
- import('./HoloScriptPlusParser-WKHRIH6T.cjs'),
6466
+ import('./HoloScriptPlusParser-QCGFPWIL.cjs'),
6262
6467
  import('./compiler/r3f.cjs')
6263
6468
  ]);
6264
6469
  this.modules = {
@@ -6848,7 +7053,7 @@ if __name__ == '__main__':
6848
7053
  `;
6849
7054
  }
6850
7055
  function compilePipelineSourceToNode(source, options = {}) {
6851
- const parsed = chunkKKFZ3B6J_cjs.parsePipeline(source);
7056
+ const parsed = chunk3VBO3IYQ_cjs.parsePipeline(source);
6852
7057
  if (!parsed.success || !parsed.pipeline) {
6853
7058
  return {
6854
7059
  success: false,
@@ -6861,7 +7066,7 @@ function compilePipelineSourceToNode(source, options = {}) {
6861
7066
  };
6862
7067
  }
6863
7068
  function compilePipelineSourceToPython(source, options = {}) {
6864
- const parsed = chunkKKFZ3B6J_cjs.parsePipeline(source);
7069
+ const parsed = chunk3VBO3IYQ_cjs.parsePipeline(source);
6865
7070
  if (!parsed.success || !parsed.pipeline) {
6866
7071
  return {
6867
7072
  success: false,
@@ -6885,6 +7090,7 @@ exports.A2AAgentCardCompiler_exports = A2AAgentCardCompiler_exports;
6885
7090
  exports.BUILTIN_RESOURCES = BUILTIN_RESOURCES;
6886
7091
  exports.CAPABILITY_HIERARCHY = CAPABILITY_HIERARCHY;
6887
7092
  exports.CATEGORY_DEFAULT_EMBODIMENT = CATEGORY_DEFAULT_EMBODIMENT;
7093
+ exports.CodeEditorCompiler = CodeEditorCompiler;
6888
7094
  exports.CompilerBridge = CompilerBridge;
6889
7095
  exports.CrossRealityTraitRegistry = CrossRealityTraitRegistry;
6890
7096
  exports.EFFECTS_BY_CATEGORY = EFFECTS_BY_CATEGORY;
@@ -6943,5 +7149,5 @@ exports.runSafetyPass = runSafetyPass;
6943
7149
  exports.selectModality = selectModality;
6944
7150
  exports.selectModalityForAll = selectModalityForAll;
6945
7151
  exports.spatialPartition = spatialPartition;
6946
- //# sourceMappingURL=chunk-I5CDNPPE.cjs.map
6947
- //# sourceMappingURL=chunk-I5CDNPPE.cjs.map
7152
+ //# sourceMappingURL=chunk-C4GSLCHE.cjs.map
7153
+ //# sourceMappingURL=chunk-C4GSLCHE.cjs.map