@holoscript/core 8.0.0 → 8.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/README.md +2 -2
  2. package/dist/{GLTFPipeline-M7WSSJED.cjs → GLTFPipeline-N6B6PJ6G.cjs} +10 -9
  3. package/dist/{GLTFPipeline-276GE64O.js → GLTFPipeline-P3WMNYCN.js} +6 -5
  4. package/dist/{HoloScriptRuntime-3URVTKPJ.js → HoloScriptRuntime-CBYJX3LZ.js} +3 -3
  5. package/dist/{HoloScriptRuntime-SXEAEU2N.cjs → HoloScriptRuntime-VJ374RER.cjs} +4 -4
  6. package/dist/{chunk-JJBE3TIH.cjs → chunk-2IWC4FP7.cjs} +6 -6
  7. package/dist/{chunk-S4W6Z2MN.js → chunk-2X7NGX3M.js} +3 -3
  8. package/dist/chunk-4GU5GCIY.js +1384 -0
  9. package/dist/{chunk-T2QCTZMO.js → chunk-4SDKXQ4C.js} +3 -3
  10. package/dist/{chunk-253GBQZY.cjs → chunk-5H2G27PK.cjs} +35 -35
  11. package/dist/{chunk-C2A5DUMF.cjs → chunk-5NWINHR5.cjs} +35 -35
  12. package/dist/chunk-6Q7RC2MK.cjs +1418 -0
  13. package/dist/{chunk-D54CNIAJ.cjs → chunk-7H33U5SM.cjs} +2 -2
  14. package/dist/{chunk-CXFDRBQU.cjs → chunk-7M3PNU2M.cjs} +7 -7
  15. package/dist/{chunk-B4TFTDG4.js → chunk-7T25IEZ2.js} +3 -3
  16. package/dist/{chunk-7CUEMLDZ.cjs → chunk-7V4JI5TB.cjs} +540 -38
  17. package/dist/{chunk-WJIHFLMJ.js → chunk-ADADVMXY.js} +2 -2
  18. package/dist/{chunk-GQT4TYKY.cjs → chunk-ALC6K7GL.cjs} +40 -19
  19. package/dist/{chunk-3HYYMEXI.cjs → chunk-AOVGZ25K.cjs} +17 -12
  20. package/dist/{chunk-NHWSN2SD.cjs → chunk-AVJHHUC5.cjs} +17 -17
  21. package/dist/{chunk-UM6C3CGK.js → chunk-BGY3SDG3.js} +24 -3
  22. package/dist/{chunk-JCLBKPMX.js → chunk-BOVPWH4H.js} +48 -4
  23. package/dist/{chunk-ZZEI7MV4.js → chunk-CCATWPXM.js} +3 -3
  24. package/dist/{chunk-NBMHU6SW.js → chunk-CMT5NMMS.js} +3 -3
  25. package/dist/{chunk-HINXWAOD.cjs → chunk-CR4FMIWL.cjs} +11 -11
  26. package/dist/{chunk-W7VDOASB.cjs → chunk-CR7XRXRN.cjs} +5 -5
  27. package/dist/{chunk-AYBXB26F.js → chunk-CSD27UNQ.js} +5 -5
  28. package/dist/{chunk-IZM5VQZD.js → chunk-D3STJ56J.js} +3 -3
  29. package/dist/{chunk-ZBQXLH2L.js → chunk-DHO2YRIM.js} +3 -3
  30. package/dist/{chunk-JX7YL6ZE.js → chunk-E6XXE66V.js} +4 -4
  31. package/dist/{chunk-62FBK3B7.js → chunk-FFAOS5HQ.js} +4 -4
  32. package/dist/{chunk-NV4VMVXU.js → chunk-FL33V6U7.js} +3 -3
  33. package/dist/{chunk-XUUVDHIF.cjs → chunk-HKEXJUWS.cjs} +48 -3
  34. package/dist/{chunk-NXZFOPVD.cjs → chunk-HNDK4IQU.cjs} +16 -16
  35. package/dist/{chunk-RVBHAXFG.js → chunk-HR2OSYVQ.js} +16 -11
  36. package/dist/{chunk-LICPB5HZ.cjs → chunk-IUDGEUDO.cjs} +10 -10
  37. package/dist/{chunk-73FELZVJ.cjs → chunk-IWC5DM2M.cjs} +11 -11
  38. package/dist/{chunk-NGKREZ36.js → chunk-J52VSAQ7.js} +505 -5
  39. package/dist/{chunk-PHVRG4I2.js → chunk-J7XZV333.js} +3 -3
  40. package/dist/{chunk-K4VVR7CN.cjs → chunk-JBNDTXXV.cjs} +15 -15
  41. package/dist/{chunk-3NFFOWGG.js → chunk-JIBL5LRK.js} +2 -2
  42. package/dist/{chunk-HZSPDCXV.cjs → chunk-K574J76X.cjs} +3 -3
  43. package/dist/{chunk-SJBGLS25.cjs → chunk-KHDZJE5D.cjs} +5 -5
  44. package/dist/{chunk-KH4CNH66.cjs → chunk-L5LKKENW.cjs} +4 -4
  45. package/dist/{chunk-IVSZDECV.js → chunk-LHAXPADA.js} +3 -3
  46. package/dist/{chunk-EUDQTK7N.cjs → chunk-MQWAT42R.cjs} +2 -2
  47. package/dist/{chunk-KVRSTFNH.cjs → chunk-NCWCUZNS.cjs} +8 -8
  48. package/dist/{chunk-MGE5Z4GS.js → chunk-OH2FAIVU.js} +3 -3
  49. package/dist/{chunk-UMABK6SI.js → chunk-PY37LNDP.js} +3 -3
  50. package/dist/{chunk-23J755AR.js → chunk-QD32ADK6.js} +3 -3
  51. package/dist/{chunk-HZTDET3N.js → chunk-R24NNAEG.js} +3 -3
  52. package/dist/{chunk-6DPSFNJB.cjs → chunk-ROHLEP2W.cjs} +16 -16
  53. package/dist/{chunk-25IQCHTO.cjs → chunk-TWUXUCEW.cjs} +35 -35
  54. package/dist/{chunk-3AO425MZ.cjs → chunk-UFZZ7TSN.cjs} +17 -17
  55. package/dist/{chunk-BE4UJCQT.js → chunk-UWJHCOH2.js} +3 -3
  56. package/dist/{chunk-KEFNV2WM.cjs → chunk-X3UVCWNL.cjs} +13 -13
  57. package/dist/{chunk-7HIASF7S.cjs → chunk-XB274MW5.cjs} +10 -10
  58. package/dist/{chunk-KJLB4OPV.js → chunk-YN2YWTXW.js} +3 -3
  59. package/dist/{chunk-IPWSXCCN.js → chunk-YVD3CSO3.js} +3 -3
  60. package/dist/{chunk-F43YAA34.js → chunk-YVOAF4ML.js} +3 -3
  61. package/dist/{chunk-OR4Q2BGL.cjs → chunk-YWOBW2PV.cjs} +15 -15
  62. package/dist/compiler/android-xr.cjs +5 -5
  63. package/dist/compiler/android-xr.js +3 -3
  64. package/dist/compiler/babylon.cjs +4 -4
  65. package/dist/compiler/babylon.js +3 -3
  66. package/dist/compiler/business-quest.cjs +9 -9
  67. package/dist/compiler/business-quest.js +1 -1
  68. package/dist/compiler/domain-block-utils.cjs +154 -150
  69. package/dist/compiler/domain-block-utils.js +2 -2
  70. package/dist/compiler/gltf-pipeline.cjs +8 -8
  71. package/dist/compiler/gltf-pipeline.js +1 -1
  72. package/dist/compiler/godot.cjs +4 -4
  73. package/dist/compiler/godot.js +3 -3
  74. package/dist/compiler/index.cjs +129 -581
  75. package/dist/compiler/index.d.ts +12 -0
  76. package/dist/compiler/index.js +42 -498
  77. package/dist/compiler/multi-layer.cjs +5 -5
  78. package/dist/compiler/multi-layer.js +4 -4
  79. package/dist/compiler/nodetoy.d.ts +69 -0
  80. package/dist/compiler/openxr.cjs +4 -4
  81. package/dist/compiler/openxr.js +3 -3
  82. package/dist/compiler/playcanvas.cjs +4 -4
  83. package/dist/compiler/playcanvas.js +3 -3
  84. package/dist/compiler/r3f.cjs +9 -8
  85. package/dist/compiler/r3f.js +4 -3
  86. package/dist/compiler/sdf.cjs +5 -5
  87. package/dist/compiler/sdf.js +3 -3
  88. package/dist/compiler/unity.cjs +4 -4
  89. package/dist/compiler/unity.js +3 -3
  90. package/dist/compiler/unreal.cjs +5 -5
  91. package/dist/compiler/unreal.js +3 -3
  92. package/dist/compiler/urdf.cjs +12 -12
  93. package/dist/compiler/urdf.js +3 -3
  94. package/dist/compiler/usd-physics.cjs +5 -5
  95. package/dist/compiler/usd-physics.js +2 -2
  96. package/dist/compiler/visionos.cjs +4 -4
  97. package/dist/compiler/visionos.js +3 -3
  98. package/dist/compiler/vrchat.cjs +5 -5
  99. package/dist/compiler/vrchat.js +3 -3
  100. package/dist/compiler/vrr.cjs +5 -5
  101. package/dist/compiler/vrr.js +3 -3
  102. package/dist/compiler/wasm.cjs +8 -8
  103. package/dist/compiler/wasm.js +3 -3
  104. package/dist/compiler/webgpu.cjs +4 -4
  105. package/dist/compiler/webgpu.js +3 -3
  106. package/dist/debugger.cjs +4 -4
  107. package/dist/debugger.js +2 -2
  108. package/dist/dist-ACXG6IH5.cjs +3113 -0
  109. package/dist/dist-VD4L6V7Q.js +3076 -0
  110. package/dist/index.cjs +1915 -488
  111. package/dist/index.d.ts +2 -0
  112. package/dist/index.js +1480 -53
  113. package/dist/reconstruction/index.cjs +31 -31
  114. package/dist/reconstruction/index.js +2 -2
  115. package/dist/runtime.cjs +6 -6
  116. package/dist/runtime.js +2 -2
  117. package/dist/src-4ROC227P.cjs +2094 -0
  118. package/dist/src-HCCCSYP7.js +2073 -0
  119. package/dist/traits/botanical-lotus.cjs +146 -10
  120. package/dist/traits/botanical-lotus.d.ts +330 -0
  121. package/dist/traits/botanical-lotus.js +4 -1
  122. package/dist/traits/index.cjs +594 -455
  123. package/dist/traits/index.js +9 -5
  124. package/package.json +20 -20
  125. package/dist/chunk-VECQYRXL.js +0 -474
  126. package/dist/chunk-WDT3JTGM.cjs +0 -483
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkUOIGFQXC_cjs = require('./chunk-UOIGFQXC.cjs');
4
+ var chunk6Q7RC2MK_cjs = require('./chunk-6Q7RC2MK.cjs');
4
5
  var chunk5S7RKFGR_cjs = require('./chunk-5S7RKFGR.cjs');
5
6
  var chunkOIQYIIO3_cjs = require('./chunk-OIQYIIO3.cjs');
6
7
  var chunkAIA52I7T_cjs = require('./chunk-AIA52I7T.cjs');
7
- var chunkXUUVDHIF_cjs = require('./chunk-XUUVDHIF.cjs');
8
+ var chunkHKEXJUWS_cjs = require('./chunk-HKEXJUWS.cjs');
8
9
  var chunkKKP7JKN4_cjs = require('./chunk-KKP7JKN4.cjs');
9
10
  var chunkHCCQLAA4_cjs = require('./chunk-HCCQLAA4.cjs');
10
11
 
@@ -755,11 +756,12 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
755
756
  chunkOIQYIIO3_cjs.init_TraitCompositor();
756
757
  chunk5S7RKFGR_cjs.init_ProvenanceSemiring();
757
758
  init_visual();
758
- chunkXUUVDHIF_cjs.init_DomainBlockCompilerMixin();
759
+ chunkHKEXJUWS_cjs.init_DomainBlockCompilerMixin();
759
760
  chunkAIA52I7T_cjs.init_PlatformConditionalCompilerMixin();
760
761
  chunkKKP7JKN4_cjs.init_AgentRBAC();
761
762
  chunkKKP7JKN4_cjs.init_CompilerBase();
762
763
  init_ObjectPool();
764
+ chunk6Q7RC2MK_cjs.init_BotanicalLotusTrait();
763
765
  r3fNodePool = new exports.ASTNodePool(
764
766
  () => ({ type: "", props: {} }),
765
767
  (node) => {
@@ -2762,15 +2764,15 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2762
2764
  this.injectDefaultLighting(root);
2763
2765
  const domainBlocks = ast.domainBlocks ?? [];
2764
2766
  if (domainBlocks.length > 0) {
2765
- const compiled = chunkXUUVDHIF_cjs.compileDomainBlocks(
2767
+ const compiled = chunkHKEXJUWS_cjs.compileDomainBlocks(
2766
2768
  domainBlocks,
2767
2769
  {
2768
2770
  material: (block) => {
2769
- const mat = chunkXUUVDHIF_cjs.compileMaterialBlock(block);
2771
+ const mat = chunkHKEXJUWS_cjs.compileMaterialBlock(block);
2770
2772
  return {
2771
2773
  type: "DomainBlockOutput",
2772
2774
  props: {
2773
- __raw: chunkXUUVDHIF_cjs.materialToR3F(mat, this.tierScales),
2775
+ __raw: chunkHKEXJUWS_cjs.materialToR3F(mat, this.tierScales),
2774
2776
  __domain: "material",
2775
2777
  __name: mat.name
2776
2778
  },
@@ -2778,11 +2780,11 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2778
2780
  };
2779
2781
  },
2780
2782
  physics: (block) => {
2781
- const phys = chunkXUUVDHIF_cjs.compilePhysicsBlock(block);
2783
+ const phys = chunkHKEXJUWS_cjs.compilePhysicsBlock(block);
2782
2784
  return {
2783
2785
  type: "DomainBlockOutput",
2784
2786
  props: {
2785
- __raw: chunkXUUVDHIF_cjs.physicsToR3F(phys),
2787
+ __raw: chunkHKEXJUWS_cjs.physicsToR3F(phys),
2786
2788
  __domain: "physics",
2787
2789
  __name: phys.name || phys.keyword
2788
2790
  },
@@ -2790,11 +2792,11 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2790
2792
  };
2791
2793
  },
2792
2794
  vfx: (block) => {
2793
- const ps = chunkXUUVDHIF_cjs.compileParticleBlock(block);
2795
+ const ps = chunkHKEXJUWS_cjs.compileParticleBlock(block);
2794
2796
  return {
2795
2797
  type: "DomainBlockOutput",
2796
2798
  props: {
2797
- __raw: chunkXUUVDHIF_cjs.particlesToR3F(ps, this.tierScales),
2799
+ __raw: chunkHKEXJUWS_cjs.particlesToR3F(ps, this.tierScales),
2798
2800
  __domain: "vfx",
2799
2801
  __name: ps.name
2800
2802
  },
@@ -2802,11 +2804,11 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2802
2804
  };
2803
2805
  },
2804
2806
  postfx: (block) => {
2805
- const pp = chunkXUUVDHIF_cjs.compilePostProcessingBlock(block);
2807
+ const pp = chunkHKEXJUWS_cjs.compilePostProcessingBlock(block);
2806
2808
  return {
2807
2809
  type: "DomainBlockOutput",
2808
2810
  props: {
2809
- __raw: chunkXUUVDHIF_cjs.postProcessingToR3F(pp),
2811
+ __raw: chunkHKEXJUWS_cjs.postProcessingToR3F(pp),
2810
2812
  __domain: "postfx",
2811
2813
  __name: pp.name || "PostProcessing"
2812
2814
  },
@@ -2814,19 +2816,19 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2814
2816
  };
2815
2817
  },
2816
2818
  audio: (block) => {
2817
- const audio = chunkXUUVDHIF_cjs.compileAudioSourceBlock(block);
2819
+ const audio = chunkHKEXJUWS_cjs.compileAudioSourceBlock(block);
2818
2820
  return {
2819
2821
  type: "DomainBlockOutput",
2820
- props: { __raw: chunkXUUVDHIF_cjs.audioSourceToR3F(audio), __domain: "audio", __name: audio.name },
2822
+ props: { __raw: chunkHKEXJUWS_cjs.audioSourceToR3F(audio), __domain: "audio", __name: audio.name },
2821
2823
  children: []
2822
2824
  };
2823
2825
  },
2824
2826
  weather: (block) => {
2825
- const weather = chunkXUUVDHIF_cjs.compileWeatherBlock(block);
2827
+ const weather = chunkHKEXJUWS_cjs.compileWeatherBlock(block);
2826
2828
  return {
2827
2829
  type: "DomainBlockOutput",
2828
2830
  props: {
2829
- __raw: chunkXUUVDHIF_cjs.weatherToR3F(weather),
2831
+ __raw: chunkHKEXJUWS_cjs.weatherToR3F(weather),
2830
2832
  __domain: "weather",
2831
2833
  __name: weather.name || "Weather"
2832
2834
  },
@@ -2834,11 +2836,11 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2834
2836
  };
2835
2837
  },
2836
2838
  simulation: (block) => {
2837
- const sim = chunkXUUVDHIF_cjs.compileSimulationBlock(block);
2839
+ const sim = chunkHKEXJUWS_cjs.compileSimulationBlock(block);
2838
2840
  return {
2839
2841
  type: "DomainBlockOutput",
2840
2842
  props: {
2841
- __raw: chunkXUUVDHIF_cjs.simulationToR3F(sim),
2843
+ __raw: chunkHKEXJUWS_cjs.simulationToR3F(sim),
2842
2844
  __domain: "simulation",
2843
2845
  __name: sim.name || "Simulation"
2844
2846
  },
@@ -2922,6 +2924,19 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2922
2924
  node.directives = [];
2923
2925
  return node;
2924
2926
  }
2927
+ /**
2928
+ * I.007 closure: emit a node's compiled petal material spec into its props.
2929
+ * Shared by every trait-bearing compile path (compileNode directives + the
2930
+ * .holo compileObjectDecl obj.traits path) so the emission can't silently miss
2931
+ * the real parser route. The spec is the locked CompiledMaterialSpec shape that
2932
+ * the renderer's buildCompiledMaterial consumes — building the petal material
2933
+ * from `.holo` data instead of hand-authoring it.
2934
+ */
2935
+ emitCompiledLotusMaterial(props, config) {
2936
+ const profile = chunk6Q7RC2MK_cjs.createBotanicalLotusRenderProfile(config);
2937
+ props.__compiledMaterial = chunk6Q7RC2MK_cjs.buildLotusPetalMaterialSpec(profile);
2938
+ props.__uniformBindings = chunk6Q7RC2MK_cjs.LOTUS_PETAL_UNIFORM_BINDINGS;
2939
+ }
2925
2940
  compileNode(node) {
2926
2941
  if (node.type === "system") {
2927
2942
  return this.compileSystemNode(node);
@@ -2949,6 +2964,10 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
2949
2964
  }
2950
2965
  }
2951
2966
  }
2967
+ const lotusConfig = r3fNode.traits?.get("botanical_lotus");
2968
+ if (lotusConfig) {
2969
+ this.emitCompiledLotusMaterial(r3fNode.props, lotusConfig);
2970
+ }
2952
2971
  const enhanced = node;
2953
2972
  if (enhanced.graphics) {
2954
2973
  this.applyGraphicsConfig(r3fNode, enhanced.graphics);
@@ -3690,6 +3709,8 @@ var init_R3FCompiler = chunkHCCQLAA4_cjs.__esm({
3690
3709
  if (!props.rigidBody) props.rigidBody = { type: "fixed" };
3691
3710
  if (!props.collider) props.collider = { type: "auto" };
3692
3711
  }
3712
+ } else if (name === "botanical_lotus") {
3713
+ this.emitCompiledLotusMaterial(props, trait.config || {});
3693
3714
  } else {
3694
3715
  props[name] = trait.config || true;
3695
3716
  if (!props.__unrecognizedTraits) {
@@ -4377,5 +4398,5 @@ exports.init_ObjectPool = init_ObjectPool;
4377
4398
  exports.init_R3FCompiler = init_R3FCompiler;
4378
4399
  exports.init_visual = init_visual;
4379
4400
  exports.registerAllPresets = registerAllPresets;
4380
- //# sourceMappingURL=chunk-GQT4TYKY.cjs.map
4381
- //# sourceMappingURL=chunk-GQT4TYKY.cjs.map
4401
+ //# sourceMappingURL=chunk-ALC6K7GL.cjs.map
4402
+ //# sourceMappingURL=chunk-ALC6K7GL.cjs.map
@@ -2,10 +2,10 @@
2
2
 
3
3
  var chunkGMP623FG_cjs = require('./chunk-GMP623FG.cjs');
4
4
  var chunk3FOKASKO_cjs = require('./chunk-3FOKASKO.cjs');
5
- var chunkWDT3JTGM_cjs = require('./chunk-WDT3JTGM.cjs');
6
5
  var chunk4PDEPEQW_cjs = require('./chunk-4PDEPEQW.cjs');
7
6
  var chunkXJAN7CZG_cjs = require('./chunk-XJAN7CZG.cjs');
8
7
  var chunkXHIV6326_cjs = require('./chunk-XHIV6326.cjs');
8
+ var chunk6Q7RC2MK_cjs = require('./chunk-6Q7RC2MK.cjs');
9
9
  var chunkTVHSPJ4N_cjs = require('./chunk-TVHSPJ4N.cjs');
10
10
  var chunkILRBGFVD_cjs = require('./chunk-ILRBGFVD.cjs');
11
11
  var chunkE7JP3BS3_cjs = require('./chunk-E7JP3BS3.cjs');
@@ -19773,7 +19773,7 @@ function createNetworkedTrait(config) {
19773
19773
  }
19774
19774
 
19775
19775
  // src/traits/NetworkedTraitHandler.ts
19776
- var _mesh2 = null;
19776
+ var _syncTierRates = null;
19777
19777
  var handlerStates = /* @__PURE__ */ new Map();
19778
19778
  function getNodeKey(node) {
19779
19779
  return node.id || `__anon_${Math.random().toString(36).slice(2, 8)}`;
@@ -19812,6 +19812,10 @@ var networkedHandler = {
19812
19812
  // onAttach
19813
19813
  // ===========================================================================
19814
19814
  onAttach(node, config, context) {
19815
+ void import('@holoscript/mesh').then((m) => {
19816
+ _syncTierRates ?? (_syncTierRates = m.SYNC_TIER_RATES);
19817
+ }).catch(() => {
19818
+ });
19815
19819
  const key = getNodeKey(node);
19816
19820
  const trait = new NetworkedTrait({
19817
19821
  mode: config.mode,
@@ -19883,14 +19887,12 @@ var networkedHandler = {
19883
19887
  // ===========================================================================
19884
19888
  // onUpdate — per-frame sync
19885
19889
  // ===========================================================================
19886
- async onUpdate(node, config, context, delta) {
19890
+ onUpdate(node, config, context, delta) {
19887
19891
  const key = getNodeKey(node);
19888
19892
  const state = handlerStates.get(key);
19889
19893
  if (!state || !state.registered) return;
19890
19894
  const trait = state.trait;
19891
- _mesh2 ?? (_mesh2 = await import('@holoscript/mesh'));
19892
- const { SYNC_TIER_RATES } = _mesh2;
19893
- const baseSyncRate = SYNC_TIER_RATES[config.syncTier] ?? config.syncRate;
19895
+ const baseSyncRate = _syncTierRates?.[config.syncTier] ?? config.syncRate;
19894
19896
  const effectiveRate = baseSyncRate * state.priorityWeight;
19895
19897
  const syncIntervalMs = effectiveRate > 0 ? 1e3 / effectiveRate : Infinity;
19896
19898
  if (trait.isLocalOwner()) {
@@ -38501,7 +38503,7 @@ var characterHandler = {
38501
38503
  if (typeof instance.onUpdate === "function") instance.onUpdate(node, ctx, dt);
38502
38504
  }
38503
38505
  };
38504
- var _mesh3 = null;
38506
+ var _mesh2 = null;
38505
38507
  var DEFAULT_TRAIT_CONFIG = {
38506
38508
  mechanism: "simple_majority",
38507
38509
  timeout: 5e3
@@ -38524,8 +38526,8 @@ var ConsensusTrait = class extends events.EventEmitter {
38524
38526
  */
38525
38527
  async start() {
38526
38528
  if (this.isStarted) return;
38527
- _mesh3 ?? (_mesh3 = await import('@holoscript/mesh'));
38528
- const { RaftConsensus, ConsensusManager } = _mesh3;
38529
+ _mesh2 ?? (_mesh2 = await import('@holoscript/mesh'));
38530
+ const { RaftConsensus, ConsensusManager } = _mesh2;
38529
38531
  const nodeId = this.config.nodeId || this.entityId;
38530
38532
  const mechanism = this.config.mechanism || "simple_majority";
38531
38533
  if (mechanism === "raft") {
@@ -54816,6 +54818,9 @@ var gotchaHandler = {
54816
54818
  }
54817
54819
  };
54818
54820
 
54821
+ // src/traits/VRTraitSystem.ts
54822
+ chunk6Q7RC2MK_cjs.init_BotanicalLotusTrait();
54823
+
54819
54824
  // src/traits/FluidSimulationTrait.ts
54820
54825
  var SpatialHash = class {
54821
54826
  constructor(cellSize) {
@@ -55744,7 +55749,7 @@ var VRTraitRegistry = class {
55744
55749
  for (const handler of vfxParticleHandlers) this.register(handler);
55745
55750
  this.register(gpuPhysicsHandler);
55746
55751
  this.register(gpuBufferHandler);
55747
- this.register(chunkWDT3JTGM_cjs.botanicalLotusHandler);
55752
+ this.register(chunk6Q7RC2MK_cjs.botanicalLotusHandler);
55748
55753
  this.register(phyllotaxisHandler);
55749
55754
  this.register(bloomReactiveHandler);
55750
55755
  this.register(lotusRootHandler);
@@ -56574,5 +56579,5 @@ exports.windHandler = windHandler;
56574
56579
  exports.withNegotiation = withNegotiation;
56575
56580
  exports.wotThingHandler = wotThingHandler;
56576
56581
  exports.zkPrivateHandler = zkPrivateHandler;
56577
- //# sourceMappingURL=chunk-3HYYMEXI.cjs.map
56578
- //# sourceMappingURL=chunk-3HYYMEXI.cjs.map
56582
+ //# sourceMappingURL=chunk-AOVGZ25K.cjs.map
56583
+ //# sourceMappingURL=chunk-AOVGZ25K.cjs.map
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkAIA52I7T_cjs = require('./chunk-AIA52I7T.cjs');
4
- var chunkXUUVDHIF_cjs = require('./chunk-XUUVDHIF.cjs');
4
+ var chunkHKEXJUWS_cjs = require('./chunk-HKEXJUWS.cjs');
5
5
  var chunkKKP7JKN4_cjs = require('./chunk-KKP7JKN4.cjs');
6
6
  var chunkHCCQLAA4_cjs = require('./chunk-HCCQLAA4.cjs');
7
7
  var ans = require('@holoscript/core-types/ans');
@@ -20,7 +20,7 @@ exports.UnrealCompiler = void 0;
20
20
  var init_UnrealCompiler = chunkHCCQLAA4_cjs.__esm({
21
21
  "src/compiler/UnrealCompiler.ts"() {
22
22
  chunkKKP7JKN4_cjs.init_CompilerBase();
23
- chunkXUUVDHIF_cjs.init_DomainBlockCompilerMixin();
23
+ chunkHKEXJUWS_cjs.init_DomainBlockCompilerMixin();
24
24
  chunkAIA52I7T_cjs.init_PlatformConditionalCompilerMixin();
25
25
  exports.UnrealCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
26
26
  constructor(options = {}) {
@@ -644,32 +644,32 @@ var init_UnrealCompiler = chunkHCCQLAA4_cjs.__esm({
644
644
  this.emitS("");
645
645
  this.emitS("// === v4.2 Domain Blocks ===");
646
646
  let blockIdx = 0;
647
- const compiled = chunkXUUVDHIF_cjs.compileDomainBlocks(
647
+ const compiled = chunkHKEXJUWS_cjs.compileDomainBlocks(
648
648
  domainBlocks,
649
649
  {
650
650
  material: (block) => {
651
- const mat = chunkXUUVDHIF_cjs.compileMaterialBlock(block);
652
- return chunkXUUVDHIF_cjs.materialToUnreal(mat, `DB${blockIdx++}`);
651
+ const mat = chunkHKEXJUWS_cjs.compileMaterialBlock(block);
652
+ return chunkHKEXJUWS_cjs.materialToUnreal(mat, `DB${blockIdx++}`);
653
653
  },
654
654
  physics: (block) => {
655
- const phys = chunkXUUVDHIF_cjs.compilePhysicsBlock(block);
656
- return chunkXUUVDHIF_cjs.physicsToUnreal(phys, `DB${blockIdx++}`);
655
+ const phys = chunkHKEXJUWS_cjs.compilePhysicsBlock(block);
656
+ return chunkHKEXJUWS_cjs.physicsToUnreal(phys, `DB${blockIdx++}`);
657
657
  },
658
658
  vfx: (block) => {
659
- const ps = chunkXUUVDHIF_cjs.compileParticleBlock(block);
660
- return chunkXUUVDHIF_cjs.particlesToUnreal(ps, `DB${blockIdx++}`);
659
+ const ps = chunkHKEXJUWS_cjs.compileParticleBlock(block);
660
+ return chunkHKEXJUWS_cjs.particlesToUnreal(ps, `DB${blockIdx++}`);
661
661
  },
662
662
  postfx: (block) => {
663
- const pp = chunkXUUVDHIF_cjs.compilePostProcessingBlock(block);
664
- return chunkXUUVDHIF_cjs.postProcessingToUnreal(pp, `DB${blockIdx++}`);
663
+ const pp = chunkHKEXJUWS_cjs.compilePostProcessingBlock(block);
664
+ return chunkHKEXJUWS_cjs.postProcessingToUnreal(pp, `DB${blockIdx++}`);
665
665
  },
666
666
  audio: (block) => {
667
- const audio = chunkXUUVDHIF_cjs.compileAudioSourceBlock(block);
668
- return chunkXUUVDHIF_cjs.audioSourceToUnreal(audio, `DB${blockIdx++}`);
667
+ const audio = chunkHKEXJUWS_cjs.compileAudioSourceBlock(block);
668
+ return chunkHKEXJUWS_cjs.audioSourceToUnreal(audio, `DB${blockIdx++}`);
669
669
  },
670
670
  weather: (block) => {
671
- const weather = chunkXUUVDHIF_cjs.compileWeatherBlock(block);
672
- return chunkXUUVDHIF_cjs.weatherToUnreal(weather);
671
+ const weather = chunkHKEXJUWS_cjs.compileWeatherBlock(block);
672
+ return chunkHKEXJUWS_cjs.weatherToUnreal(weather);
673
673
  }
674
674
  },
675
675
  (block) => `// Domain block: ${block.domain}/${block.keyword} "${this.escapeStringValue(block.name, "TypeScript")}"`
@@ -714,5 +714,5 @@ var init_UnrealCompiler = chunkHCCQLAA4_cjs.__esm({
714
714
  exports.UnrealCompiler_exports = UnrealCompiler_exports;
715
715
  exports.compileToUnreal = compileToUnreal;
716
716
  exports.init_UnrealCompiler = init_UnrealCompiler;
717
- //# sourceMappingURL=chunk-NHWSN2SD.cjs.map
718
- //# sourceMappingURL=chunk-NHWSN2SD.cjs.map
717
+ //# sourceMappingURL=chunk-AVJHHUC5.cjs.map
718
+ //# sourceMappingURL=chunk-AVJHHUC5.cjs.map
@@ -1,8 +1,9 @@
1
1
  import { init_material_properties_visual, init_surface_texture_visual, init_lighting_visual, init_gems_minerals_visual, init_fabric_cloth_visual, init_visual_effects_visual, init_age_condition_visual, init_water_fluid_visual, init_weather_phenomena_visual, init_emotion_mood_visual, init_size_scale_visual, init_environmental_biome_visual, init_magic_fantasy_visual, init_scifi_technology_visual, init_creatures_mythical_visual, init_nature_life_visual, init_furniture_decor_visual, init_construction_building_visual, init_containers_storage_visual, init_shape_form_visual, init_animals_visual, init_maritime_naval_visual, init_time_period_visual, init_accessibility_visual, init_accessibility_extended_visual, init_architecture_realestate_visual, init_audio_visual, init_cooking_food_visual, init_core_vr_interaction_visual, init_data_visualization_visual, init_education_learning_visual, init_environment_input_visual, init_game_mechanics_visual, init_geospatial_web3_visual, init_healthcare_medical_visual, init_humanoid_avatar_visual, init_intelligence_behavior_visual, init_interop_copresence_visual, init_iot_autonomous_agents_visual, init_locomotion_movement_visual, init_measurement_sensing_visual, init_media_analytics_visual, init_multisensory_haptic_visual, init_musical_sound_visual, init_music_performance_visual, init_narrative_storytelling_visual, init_networking_ai_visual, init_npc_roles_visual, init_object_interaction_visual, init_parser_core_ui_visual, init_physical_affordances_visual, init_physics_expansion_visual, init_procedural_generation_visual, init_resource_gathering_visual, init_safety_boundaries_visual, init_signs_communication_visual, init_simple_modifiers_visual, init_social_commerce_visual, init_social_effects_visual, init_sports_fitness_visual, init_state_persistence_visual, init_transportation_vehicles_visual, init_volumetric_webgpu_visual, init_weather_particles_visual, init_xr_platform_visual, MATERIAL_PROPERTIES_VISUALS, SURFACE_TEXTURE_VISUALS, LIGHTING_VISUALS, GEMS_MINERALS_VISUALS, FABRIC_CLOTH_VISUALS, VISUAL_EFFECTS_VISUALS, AGE_CONDITION_VISUALS, WATER_FLUID_VISUALS, WEATHER_PHENOMENA_VISUALS, EMOTION_MOOD_VISUALS, SIZE_SCALE_VISUALS, ENVIRONMENTAL_BIOME_VISUALS, MAGIC_FANTASY_VISUALS, SCIFI_TECHNOLOGY_VISUALS, CREATURES_MYTHICAL_VISUALS, NATURE_LIFE_VISUALS, FURNITURE_DECOR_VISUALS, CONSTRUCTION_BUILDING_VISUALS, CONTAINERS_STORAGE_VISUALS, SHAPE_FORM_VISUALS, ANIMALS_VISUALS, MARITIME_NAVAL_VISUALS, TIME_PERIOD_VISUALS, ACCESSIBILITY_VISUALS, ACCESSIBILITY_EXTENDED_VISUALS, ARCHITECTURE_REALESTATE_VISUALS, AUDIO_VISUALS, COOKING_FOOD_VISUALS, CORE_VR_INTERACTION_VISUALS, DATA_VISUALIZATION_VISUALS, EDUCATION_LEARNING_VISUALS, ENVIRONMENT_INPUT_VISUALS, GAME_MECHANICS_VISUALS, GEOSPATIAL_WEB3_VISUALS, HEALTHCARE_MEDICAL_VISUALS, HUMANOID_AVATAR_VISUALS, INTELLIGENCE_BEHAVIOR_VISUALS, INTEROP_COPRESENCE_VISUALS, IOT_AUTONOMOUS_AGENTS_VISUALS, LOCOMOTION_MOVEMENT_VISUALS, MEASUREMENT_SENSING_VISUALS, MEDIA_ANALYTICS_VISUALS, MULTISENSORY_HAPTIC_VISUALS, MUSICAL_SOUND_VISUALS, MUSIC_PERFORMANCE_VISUALS, NARRATIVE_STORYTELLING_VISUALS, NETWORKING_AI_VISUALS, NPC_ROLES_VISUALS, OBJECT_INTERACTION_VISUALS, PARSER_CORE_UI_VISUALS, PHYSICAL_AFFORDANCES_VISUALS, PHYSICS_EXPANSION_VISUALS, PROCEDURAL_GENERATION_VISUALS, RESOURCE_GATHERING_VISUALS, SAFETY_BOUNDARIES_VISUALS, SIGNS_COMMUNICATION_VISUALS, SIMPLE_MODIFIERS_VISUALS, SOCIAL_COMMERCE_VISUALS, SOCIAL_EFFECTS_VISUALS, SPORTS_FITNESS_VISUALS, STATE_PERSISTENCE_VISUALS, TRANSPORTATION_VEHICLES_VISUALS, VOLUMETRIC_WEBGPU_VISUALS, WEATHER_PARTICLES_VISUALS, XR_PLATFORM_VISUALS } from './chunk-XT6JY5W5.js';
2
+ import { init_BotanicalLotusTrait, createBotanicalLotusRenderProfile, buildLotusPetalMaterialSpec, LOTUS_PETAL_UNIFORM_BINDINGS } from './chunk-4GU5GCIY.js';
2
3
  import { init_ProvenanceSemiring, ProvenanceSemiring } from './chunk-TJHVSBP2.js';
3
4
  import { init_TraitVisualRegistry, init_types, init_TraitCompositor, TraitCompositor, TraitVisualRegistry } from './chunk-4C57PR42.js';
4
5
  import { init_PlatformConditionalCompilerMixin, createPlatformTarget, PlatformConditionalCompilerMixin } from './chunk-GZG4KA4E.js';
5
- import { init_DomainBlockCompilerMixin, compileDomainBlocks, compileSimulationBlock, simulationToR3F, compileWeatherBlock, weatherToR3F, compileAudioSourceBlock, audioSourceToR3F, compilePostProcessingBlock, postProcessingToR3F, compileParticleBlock, particlesToR3F, compilePhysicsBlock, physicsToR3F, compileMaterialBlock, materialToR3F } from './chunk-JCLBKPMX.js';
6
+ import { init_DomainBlockCompilerMixin, compileDomainBlocks, compileSimulationBlock, simulationToR3F, compileWeatherBlock, weatherToR3F, compileAudioSourceBlock, audioSourceToR3F, compilePostProcessingBlock, postProcessingToR3F, compileParticleBlock, particlesToR3F, compilePhysicsBlock, physicsToR3F, compileMaterialBlock, materialToR3F } from './chunk-BOVPWH4H.js';
6
7
  import { init_AgentRBAC, init_CompilerBase, getRBAC, UnauthorizedCompilerAccessError, escapeStringValue } from './chunk-QPSKHBJP.js';
7
8
  import { __esm, __export } from './chunk-OL46QLBJ.js';
8
9
 
@@ -758,6 +759,7 @@ var init_R3FCompiler = __esm({
758
759
  init_AgentRBAC();
759
760
  init_CompilerBase();
760
761
  init_ObjectPool();
762
+ init_BotanicalLotusTrait();
761
763
  r3fNodePool = new ASTNodePool(
762
764
  () => ({ type: "", props: {} }),
763
765
  (node) => {
@@ -2920,6 +2922,19 @@ var init_R3FCompiler = __esm({
2920
2922
  node.directives = [];
2921
2923
  return node;
2922
2924
  }
2925
+ /**
2926
+ * I.007 closure: emit a node's compiled petal material spec into its props.
2927
+ * Shared by every trait-bearing compile path (compileNode directives + the
2928
+ * .holo compileObjectDecl obj.traits path) so the emission can't silently miss
2929
+ * the real parser route. The spec is the locked CompiledMaterialSpec shape that
2930
+ * the renderer's buildCompiledMaterial consumes — building the petal material
2931
+ * from `.holo` data instead of hand-authoring it.
2932
+ */
2933
+ emitCompiledLotusMaterial(props, config) {
2934
+ const profile = createBotanicalLotusRenderProfile(config);
2935
+ props.__compiledMaterial = buildLotusPetalMaterialSpec(profile);
2936
+ props.__uniformBindings = LOTUS_PETAL_UNIFORM_BINDINGS;
2937
+ }
2923
2938
  compileNode(node) {
2924
2939
  if (node.type === "system") {
2925
2940
  return this.compileSystemNode(node);
@@ -2947,6 +2962,10 @@ var init_R3FCompiler = __esm({
2947
2962
  }
2948
2963
  }
2949
2964
  }
2965
+ const lotusConfig = r3fNode.traits?.get("botanical_lotus");
2966
+ if (lotusConfig) {
2967
+ this.emitCompiledLotusMaterial(r3fNode.props, lotusConfig);
2968
+ }
2950
2969
  const enhanced = node;
2951
2970
  if (enhanced.graphics) {
2952
2971
  this.applyGraphicsConfig(r3fNode, enhanced.graphics);
@@ -3688,6 +3707,8 @@ var init_R3FCompiler = __esm({
3688
3707
  if (!props.rigidBody) props.rigidBody = { type: "fixed" };
3689
3708
  if (!props.collider) props.collider = { type: "auto" };
3690
3709
  }
3710
+ } else if (name === "botanical_lotus") {
3711
+ this.emitCompiledLotusMaterial(props, trait.config || {});
3691
3712
  } else {
3692
3713
  props[name] = trait.config || true;
3693
3714
  if (!props.__unrecognizedTraits) {
@@ -4371,5 +4392,5 @@ var init_R3FCompiler = __esm({
4371
4392
  });
4372
4393
 
4373
4394
  export { ASTNodePool, ENVIRONMENT_PRESETS, MATERIAL_PRESETS, QUALITY_TIER_SCALES, R3FCompiler, R3FCompiler_exports, UI_COMPONENT_PRESETS, init_ObjectPool, init_R3FCompiler, init_visual, registerAllPresets };
4374
- //# sourceMappingURL=chunk-UM6C3CGK.js.map
4375
- //# sourceMappingURL=chunk-UM6C3CGK.js.map
4395
+ //# sourceMappingURL=chunk-BGY3SDG3.js.map
4396
+ //# sourceMappingURL=chunk-BGY3SDG3.js.map
@@ -5,6 +5,9 @@ import { __esm } from './chunk-OL46QLBJ.js';
5
5
  function esc(value, target) {
6
6
  return escapeStringValue(value, target);
7
7
  }
8
+ function isPhysicalMaterial(mat) {
9
+ return PHYSICAL_MATERIAL_KEYS.some((k) => mat[k] !== void 0);
10
+ }
8
11
  function compileMaterialBlock(block) {
9
12
  const type = block.keyword === "unlit_material" ? "unlit" : block.keyword === "shader" ? "shader" : "pbr";
10
13
  const textureMaps = {};
@@ -26,6 +29,17 @@ function compileMaterialBlock(block) {
26
29
  ior: otherProps.ior,
27
30
  emissiveColor: otherProps.emissive_color,
28
31
  emissiveIntensity: otherProps.emissive_intensity,
32
+ clearcoat: otherProps.clearcoat ?? otherProps.clear_coat,
33
+ clearcoatRoughness: otherProps.clearcoat_roughness ?? otherProps.clearcoatRoughness,
34
+ transmission: otherProps.transmission,
35
+ thickness: otherProps.thickness,
36
+ sheen: otherProps.sheen,
37
+ sheenColor: otherProps.sheen_color ?? otherProps.sheenColor,
38
+ sheenRoughness: otherProps.sheen_roughness ?? otherProps.sheenRoughness,
39
+ specularIntensity: otherProps.specular_intensity ?? otherProps.specularIntensity,
40
+ iridescence: otherProps.iridescence,
41
+ attenuationColor: otherProps.attenuation_color ?? otherProps.attenuationColor,
42
+ attenuationDistance: otherProps.attenuation_distance ?? otherProps.attenuationDistance,
29
43
  textureMaps,
30
44
  traits: block.traits || []
31
45
  };
@@ -244,6 +258,23 @@ function materialToR3F(mat, tier) {
244
258
  const propName = type.replace(/_map$/, "Map").replace(/^albedo/, "");
245
259
  return `${propName}={useTexture("${path}")}`;
246
260
  }).join(" ");
261
+ if (isPhysicalMaterial(mat)) {
262
+ const physical = [
263
+ mat.ior !== void 0 ? `ior={${mat.ior}}` : "",
264
+ mat.clearcoat !== void 0 ? `clearcoat={${mat.clearcoat}}` : "",
265
+ mat.clearcoatRoughness !== void 0 ? `clearcoatRoughness={${mat.clearcoatRoughness}}` : "",
266
+ mat.transmission !== void 0 ? `transmission={${mat.transmission}}` : "",
267
+ mat.thickness !== void 0 ? `thickness={${mat.thickness}}` : "",
268
+ mat.sheen !== void 0 ? `sheen={${mat.sheen}}` : "",
269
+ mat.sheenColor ? `sheenColor="${mat.sheenColor}"` : "",
270
+ mat.sheenRoughness !== void 0 ? `sheenRoughness={${mat.sheenRoughness}}` : "",
271
+ mat.specularIntensity !== void 0 ? `specularIntensity={${mat.specularIntensity}}` : "",
272
+ mat.iridescence !== void 0 ? `iridescence={${mat.iridescence}}` : "",
273
+ mat.attenuationColor ? `attenuationColor="${mat.attenuationColor}"` : "",
274
+ mat.attenuationDistance !== void 0 ? `attenuationDistance={${mat.attenuationDistance}}` : ""
275
+ ].filter(Boolean).join(" ");
276
+ return `<meshPhysicalMaterial ${props} ${physical} ${textures} />`;
277
+ }
247
278
  return `<meshStandardMaterial ${props} ${textures} />`;
248
279
  }
249
280
  function materialToUSD(mat) {
@@ -3799,15 +3830,28 @@ function hexToRGBA(hex, alpha) {
3799
3830
  function getRequiredCapability() {
3800
3831
  return ANSCapabilityPath.DOMAIN_BLOCK;
3801
3832
  }
3802
- var DOMAIN_BLOCK_COMPILER_MIXIN_CAPABILITY;
3833
+ var PHYSICAL_MATERIAL_KEYS, DOMAIN_BLOCK_COMPILER_MIXIN_CAPABILITY;
3803
3834
  var init_DomainBlockCompilerMixin = __esm({
3804
3835
  "src/compiler/DomainBlockCompilerMixin.ts"() {
3805
3836
  init_CompilerBase();
3806
3837
  init_ANSNamespace();
3838
+ PHYSICAL_MATERIAL_KEYS = [
3839
+ "clearcoat",
3840
+ "clearcoatRoughness",
3841
+ "transmission",
3842
+ "thickness",
3843
+ "sheen",
3844
+ "sheenColor",
3845
+ "sheenRoughness",
3846
+ "specularIntensity",
3847
+ "iridescence",
3848
+ "attenuationColor",
3849
+ "attenuationDistance"
3850
+ ];
3807
3851
  DOMAIN_BLOCK_COMPILER_MIXIN_CAPABILITY = "/compile/mixin/domain-block";
3808
3852
  }
3809
3853
  });
3810
3854
 
3811
- export { DOMAIN_BLOCK_COMPILER_MIXIN_CAPABILITY, architectureToGodot, architectureToR3F, architectureToUSDA, architectureToUnity, architectureToVRChat, audioSourceToAndroidXR, audioSourceToBabylon, audioSourceToGodot, audioSourceToPlayCanvas, audioSourceToR3F, audioSourceToUSD, audioSourceToUnity, audioSourceToUnreal, audioSourceToVisionOS, compileArchitectureBlock, compileAudioSourceBlock, compileDataVizBlock, compileDomainBlocks, compileEducationBlock, compileHealthcareBlock, compileInputBlock, compileIoTBlock, compileMaterialBlock, compileMusicBlock, compileNarrativeBlock, compileNavigationBlock, compileParticleBlock, compilePaymentBlock, compilePhysicsBlock, compilePostProcessingBlock, compileProceduralBlock, compileRenderingBlock, compileRoboticsBlock, compileSimulationBlock, compileWeatherBlock, compileWeb3Block, datavizToGodot, datavizToR3F, datavizToUSDA, datavizToUnity, datavizToVRChat, educationToGodot, educationToR3F, educationToUSDA, educationToUnity, educationToVRChat, getRequiredCapability, healthcareToGodot, healthcareToR3F, healthcareToUSDA, healthcareToUnity, healthcareToVRChat, init_DomainBlockCompilerMixin, inputToGodot, inputToR3F, inputToUSDA, inputToUnity, inputToVRChat, iotToGodot, iotToR3F, iotToUSDA, iotToUnity, iotToVRChat, materialToAndroidXR, materialToBabylon, materialToGLTF, materialToGodot, materialToPlayCanvas, materialToR3F, materialToSDF, materialToUSD, materialToUnity, materialToUnreal, materialToVRChat, materialToVisionOS, materialToWebGPU, musicToGodot, musicToR3F, musicToUSDA, musicToUnity, musicToVRChat, narrativeToGodot, narrativeToR3F, narrativeToUSDA, narrativeToUnity, narrativeToVRChat, navigationToGodot, navigationToR3F, navigationToUSDA, navigationToUnity, navigationToVRChat, particlesToAndroidXR, particlesToBabylon, particlesToGodot, particlesToPlayCanvas, particlesToR3F, particlesToUSD, particlesToUnity, particlesToUnreal, particlesToVisionOS, paymentToGodot, paymentToR3F, paymentToUSDA, paymentToUnity, paymentToVRChat, physicsToAndroidXR, physicsToBabylon, physicsToGodot, physicsToPlayCanvas, physicsToR3F, physicsToSDF, physicsToURDF, physicsToUnity, physicsToUnreal, physicsToVisionOS, postProcessingToBabylon, postProcessingToGodot, postProcessingToR3F, postProcessingToUSD, postProcessingToUnity, postProcessingToUnreal, proceduralToGodot, proceduralToR3F, proceduralToUSDA, proceduralToUnity, proceduralToVRChat, renderingToGodot, renderingToR3F, renderingToUSDA, renderingToUnity, renderingToVRChat, roboticsToGodot, roboticsToR3F, roboticsToUSDA, roboticsToUnity, roboticsToVRChat, simulationToR3F, weatherToAndroidXR, weatherToGodot, weatherToR3F, weatherToUSD, weatherToUnity, weatherToUnreal, web3ToGodot, web3ToR3F, web3ToUSDA, web3ToUnity, web3ToVRChat };
3812
- //# sourceMappingURL=chunk-JCLBKPMX.js.map
3813
- //# sourceMappingURL=chunk-JCLBKPMX.js.map
3855
+ export { DOMAIN_BLOCK_COMPILER_MIXIN_CAPABILITY, architectureToGodot, architectureToR3F, architectureToUSDA, architectureToUnity, architectureToVRChat, audioSourceToAndroidXR, audioSourceToBabylon, audioSourceToGodot, audioSourceToPlayCanvas, audioSourceToR3F, audioSourceToUSD, audioSourceToUnity, audioSourceToUnreal, audioSourceToVisionOS, compileArchitectureBlock, compileAudioSourceBlock, compileDataVizBlock, compileDomainBlocks, compileEducationBlock, compileHealthcareBlock, compileInputBlock, compileIoTBlock, compileMaterialBlock, compileMusicBlock, compileNarrativeBlock, compileNavigationBlock, compileParticleBlock, compilePaymentBlock, compilePhysicsBlock, compilePostProcessingBlock, compileProceduralBlock, compileRenderingBlock, compileRoboticsBlock, compileSimulationBlock, compileWeatherBlock, compileWeb3Block, datavizToGodot, datavizToR3F, datavizToUSDA, datavizToUnity, datavizToVRChat, educationToGodot, educationToR3F, educationToUSDA, educationToUnity, educationToVRChat, getRequiredCapability, healthcareToGodot, healthcareToR3F, healthcareToUSDA, healthcareToUnity, healthcareToVRChat, init_DomainBlockCompilerMixin, inputToGodot, inputToR3F, inputToUSDA, inputToUnity, inputToVRChat, iotToGodot, iotToR3F, iotToUSDA, iotToUnity, iotToVRChat, isPhysicalMaterial, materialToAndroidXR, materialToBabylon, materialToGLTF, materialToGodot, materialToPlayCanvas, materialToR3F, materialToSDF, materialToUSD, materialToUnity, materialToUnreal, materialToVRChat, materialToVisionOS, materialToWebGPU, musicToGodot, musicToR3F, musicToUSDA, musicToUnity, musicToVRChat, narrativeToGodot, narrativeToR3F, narrativeToUSDA, narrativeToUnity, narrativeToVRChat, navigationToGodot, navigationToR3F, navigationToUSDA, navigationToUnity, navigationToVRChat, particlesToAndroidXR, particlesToBabylon, particlesToGodot, particlesToPlayCanvas, particlesToR3F, particlesToUSD, particlesToUnity, particlesToUnreal, particlesToVisionOS, paymentToGodot, paymentToR3F, paymentToUSDA, paymentToUnity, paymentToVRChat, physicsToAndroidXR, physicsToBabylon, physicsToGodot, physicsToPlayCanvas, physicsToR3F, physicsToSDF, physicsToURDF, physicsToUnity, physicsToUnreal, physicsToVisionOS, postProcessingToBabylon, postProcessingToGodot, postProcessingToR3F, postProcessingToUSD, postProcessingToUnity, postProcessingToUnreal, proceduralToGodot, proceduralToR3F, proceduralToUSDA, proceduralToUnity, proceduralToVRChat, renderingToGodot, renderingToR3F, renderingToUSDA, renderingToUnity, renderingToVRChat, roboticsToGodot, roboticsToR3F, roboticsToUSDA, roboticsToUnity, roboticsToVRChat, simulationToR3F, weatherToAndroidXR, weatherToGodot, weatherToR3F, weatherToUSD, weatherToUnity, weatherToUnreal, web3ToGodot, web3ToR3F, web3ToUSDA, web3ToUnity, web3ToVRChat };
3856
+ //# sourceMappingURL=chunk-BOVPWH4H.js.map
3857
+ //# sourceMappingURL=chunk-BOVPWH4H.js.map
@@ -1,5 +1,5 @@
1
1
  import { init_PlatformConditionalCompilerMixin, createPlatformTarget, PlatformConditionalCompilerMixin } from './chunk-GZG4KA4E.js';
2
- import { init_DomainBlockCompilerMixin, compileDomainBlocks, inputToUnity, compileInputBlock, navigationToUnity, compileNavigationBlock, renderingToUnity, compileRenderingBlock, proceduralToUnity, compileProceduralBlock, web3ToUnity, compileWeb3Block, architectureToUnity, compileArchitectureBlock, musicToUnity, compileMusicBlock, educationToUnity, compileEducationBlock, datavizToUnity, compileDataVizBlock, iotToUnity, compileIoTBlock, compileRoboticsBlock, roboticsToUnity, compileHealthcareBlock, healthcareToUnity, compilePaymentBlock, paymentToUnity, compileNarrativeBlock, narrativeToUnity, compileWeatherBlock, weatherToUnity, compileAudioSourceBlock, audioSourceToUnity, compilePostProcessingBlock, postProcessingToUnity, compileParticleBlock, particlesToUnity, compilePhysicsBlock, physicsToUnity, compileMaterialBlock, materialToUnity } from './chunk-JCLBKPMX.js';
2
+ import { init_DomainBlockCompilerMixin, compileDomainBlocks, inputToUnity, compileInputBlock, navigationToUnity, compileNavigationBlock, renderingToUnity, compileRenderingBlock, proceduralToUnity, compileProceduralBlock, web3ToUnity, compileWeb3Block, architectureToUnity, compileArchitectureBlock, musicToUnity, compileMusicBlock, educationToUnity, compileEducationBlock, datavizToUnity, compileDataVizBlock, iotToUnity, compileIoTBlock, compileRoboticsBlock, roboticsToUnity, compileHealthcareBlock, healthcareToUnity, compilePaymentBlock, paymentToUnity, compileNarrativeBlock, narrativeToUnity, compileWeatherBlock, weatherToUnity, compileAudioSourceBlock, audioSourceToUnity, compilePostProcessingBlock, postProcessingToUnity, compileParticleBlock, particlesToUnity, compilePhysicsBlock, physicsToUnity, compileMaterialBlock, materialToUnity } from './chunk-BOVPWH4H.js';
3
3
  import { init_CompilerBase, CompilerBase } from './chunk-QPSKHBJP.js';
4
4
  import { __export, __esm } from './chunk-OL46QLBJ.js';
5
5
  import { ANSCapabilityPath } from '@holoscript/core-types/ans';
@@ -774,5 +774,5 @@ var init_UnityCompiler = __esm({
774
774
  });
775
775
 
776
776
  export { UnityCompiler, UnityCompiler_exports, init_UnityCompiler };
777
- //# sourceMappingURL=chunk-ZZEI7MV4.js.map
778
- //# sourceMappingURL=chunk-ZZEI7MV4.js.map
777
+ //# sourceMappingURL=chunk-CCATWPXM.js.map
778
+ //# sourceMappingURL=chunk-CCATWPXM.js.map
@@ -1,4 +1,4 @@
1
- import { init_DomainBlockCompilerMixin, compileDomainBlocks, compileMaterialBlock, materialToWebGPU } from './chunk-JCLBKPMX.js';
1
+ import { init_DomainBlockCompilerMixin, compileDomainBlocks, compileMaterialBlock, materialToWebGPU } from './chunk-BOVPWH4H.js';
2
2
  import { init_CompilerBase, CompilerBase } from './chunk-QPSKHBJP.js';
3
3
  import { __export, __esm } from './chunk-OL46QLBJ.js';
4
4
  import { ANSCapabilityPath } from '@holoscript/core-types/ans';
@@ -665,5 +665,5 @@ var init_WebGPUCompiler = __esm({
665
665
  });
666
666
 
667
667
  export { WebGPUCompiler, WebGPUCompiler_exports, init_WebGPUCompiler };
668
- //# sourceMappingURL=chunk-NBMHU6SW.js.map
669
- //# sourceMappingURL=chunk-NBMHU6SW.js.map
668
+ //# sourceMappingURL=chunk-CMT5NMMS.js.map
669
+ //# sourceMappingURL=chunk-CMT5NMMS.js.map
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  var chunkAIA52I7T_cjs = require('./chunk-AIA52I7T.cjs');
4
- var chunkXUUVDHIF_cjs = require('./chunk-XUUVDHIF.cjs');
4
+ var chunkHKEXJUWS_cjs = require('./chunk-HKEXJUWS.cjs');
5
5
  var chunkKKP7JKN4_cjs = require('./chunk-KKP7JKN4.cjs');
6
6
  var chunkHCCQLAA4_cjs = require('./chunk-HCCQLAA4.cjs');
7
7
  var ans = require('@holoscript/core-types/ans');
@@ -16,7 +16,7 @@ var init_OpenXRCompiler = chunkHCCQLAA4_cjs.__esm({
16
16
  "src/compiler/OpenXRCompiler.ts"() {
17
17
  chunkKKP7JKN4_cjs.init_CompilerBase();
18
18
  chunkAIA52I7T_cjs.init_PlatformConditionalCompilerMixin();
19
- chunkXUUVDHIF_cjs.init_DomainBlockCompilerMixin();
19
+ chunkHKEXJUWS_cjs.init_DomainBlockCompilerMixin();
20
20
  exports.OpenXRCompiler = class extends chunkKKP7JKN4_cjs.CompilerBase {
21
21
  constructor(options = {}) {
22
22
  super();
@@ -136,32 +136,32 @@ var init_OpenXRCompiler = chunkHCCQLAA4_cjs.__esm({
136
136
  if (domainBlocks.length > 0) {
137
137
  this.emit("");
138
138
  this.emit("// === v4.2 Domain Blocks ===");
139
- const compiled = chunkXUUVDHIF_cjs.compileDomainBlocks(
139
+ const compiled = chunkHKEXJUWS_cjs.compileDomainBlocks(
140
140
  // @ts-expect-error During migration
141
141
  domainBlocks,
142
142
  {
143
143
  material: (block) => {
144
- const m = chunkXUUVDHIF_cjs.compileMaterialBlock(block);
144
+ const m = chunkHKEXJUWS_cjs.compileMaterialBlock(block);
145
145
  return `// Material: "${this.escapeStringValue(m.name, "TypeScript")}" type=${m.type} baseColor=${m.baseColor || "none"} roughness=${m.roughness ?? "default"} metallic=${m.metallic ?? "default"}`;
146
146
  },
147
147
  physics: (block) => {
148
- const p = chunkXUUVDHIF_cjs.compilePhysicsBlock(block);
148
+ const p = chunkHKEXJUWS_cjs.compilePhysicsBlock(block);
149
149
  return `// Physics: ${p.keyword} "${p.name || ""}" colliders=${p.colliders?.length || 0} rigidbody=${!!p.rigidbody}`;
150
150
  },
151
151
  vfx: (block) => {
152
- const ps = chunkXUUVDHIF_cjs.compileParticleBlock(block);
152
+ const ps = chunkHKEXJUWS_cjs.compileParticleBlock(block);
153
153
  return `// Particles: "${this.escapeStringValue(ps.name, "TypeScript")}" rate=${ps.properties.rate || "default"} modules=${ps.modules.length}`;
154
154
  },
155
155
  postfx: (block) => {
156
- const pp = chunkXUUVDHIF_cjs.compilePostProcessingBlock(block);
156
+ const pp = chunkHKEXJUWS_cjs.compilePostProcessingBlock(block);
157
157
  return `// PostFX: ${pp.keyword} effects=[${pp.effects.map((e) => e.type).join(", ")}]`;
158
158
  },
159
159
  audio: (block) => {
160
- const a = chunkXUUVDHIF_cjs.compileAudioSourceBlock(block);
160
+ const a = chunkHKEXJUWS_cjs.compileAudioSourceBlock(block);
161
161
  return `// Audio: "${this.escapeStringValue(a.name, "TypeScript")}" (${a.keyword}) clip=${a.properties.clip || "none"}`;
162
162
  },
163
163
  weather: (block) => {
164
- const w = chunkXUUVDHIF_cjs.compileWeatherBlock(block);
164
+ const w = chunkHKEXJUWS_cjs.compileWeatherBlock(block);
165
165
  return `// Weather: ${w.keyword} layers=[${w.layers.map((l) => l.type).join(", ")}]`;
166
166
  }
167
167
  },
@@ -1045,5 +1045,5 @@ var init_OpenXRCompiler = chunkHCCQLAA4_cjs.__esm({
1045
1045
 
1046
1046
  exports.OpenXRCompiler_exports = OpenXRCompiler_exports;
1047
1047
  exports.init_OpenXRCompiler = init_OpenXRCompiler;
1048
- //# sourceMappingURL=chunk-HINXWAOD.cjs.map
1049
- //# sourceMappingURL=chunk-HINXWAOD.cjs.map
1048
+ //# sourceMappingURL=chunk-CR4FMIWL.cjs.map
1049
+ //# sourceMappingURL=chunk-CR4FMIWL.cjs.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkSJBGLS25_cjs = require('./chunk-SJBGLS25.cjs');
3
+ var chunkKHDZJE5D_cjs = require('./chunk-KHDZJE5D.cjs');
4
4
 
5
5
  // src/reconstruction/FusedAttentionKernel.ts
6
6
  var FUSED_ATTENTION_WGSL = `
@@ -585,9 +585,9 @@ function mobileSensorBundleToFrames(bundle) {
585
585
  }
586
586
  async function replayMobileSensorBundle(bundle, config = {}) {
587
587
  const frames = mobileSensorBundleToFrames(bundle);
588
- const runtime = chunkSJBGLS25_cjs.createHoloMapRuntime();
588
+ const runtime = chunkKHDZJE5D_cjs.createHoloMapRuntime();
589
589
  await runtime.init({
590
- ...chunkSJBGLS25_cjs.HOLOMAP_DEFAULTS,
590
+ ...chunkKHDZJE5D_cjs.HOLOMAP_DEFAULTS,
591
591
  seed: 0,
592
592
  modelHash: bundle.bundleId,
593
593
  videoHash: bundle.bundleId,
@@ -635,5 +635,5 @@ exports.mergeAnchoredProvenance = mergeAnchoredProvenance;
635
635
  exports.mobileSensorBundleToFrames = mobileSensorBundleToFrames;
636
636
  exports.replayMobileSensorBundle = replayMobileSensorBundle;
637
637
  exports.validateMobileSensorBundle = validateMobileSensorBundle;
638
- //# sourceMappingURL=chunk-W7VDOASB.cjs.map
639
- //# sourceMappingURL=chunk-W7VDOASB.cjs.map
638
+ //# sourceMappingURL=chunk-CR7XRXRN.cjs.map
639
+ //# sourceMappingURL=chunk-CR7XRXRN.cjs.map