@holoscript/core 8.0.8 → 8.0.9
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.
- package/bin/holoscript.cjs +5 -1
- package/dist/GLTFPipeline-L76YTXKA.js +15 -0
- package/dist/GLTFPipeline-ZWJN7GI6.cjs +36 -0
- package/dist/HoloCompositionParser-K76KTEEE.js +12 -0
- package/dist/HoloCompositionParser-UZH6Y4HO.cjs +45 -0
- package/dist/HoloScriptCodeParser-2D4ERFUZ.js +6 -0
- package/dist/HoloScriptCodeParser-UDRLDA7I.cjs +23 -0
- package/dist/HoloScriptPlusParser-FTMCGWXD.js +13 -0
- package/dist/HoloScriptPlusParser-LQR5GIKF.cjs +30 -0
- package/dist/HoloScriptRuntime-UTRLJI5L.js +12 -0
- package/dist/HoloScriptRuntime-YBYXJHJN.cjs +21 -0
- package/dist/SceneIRCompiler-63KA3M2F.js +17 -0
- package/dist/SceneIRCompiler-KWUFHZ4O.cjs +42 -0
- package/dist/{USDZExporter-AUHZODOF.cjs → USDZExporter-ML4UMIGC.cjs} +3 -3
- package/dist/{USDZExporter-GXB4AUSG.js → USDZExporter-ZFKLQ76G.js} +3 -3
- package/dist/agents/index.cjs +1 -1
- package/dist/agents/index.js +1 -1
- package/dist/audit/AuditLogger.d.ts +106 -0
- package/dist/audit/AuditQueryBuilder.d.ts +79 -0
- package/dist/audit/ComplianceReporter.d.ts +90 -0
- package/dist/audit/index.d.ts +13 -0
- package/dist/{chunk-FGMDMJM7.js → chunk-2BYAUHBO.js} +3 -3
- package/dist/{chunk-EDPYCLRC.cjs → chunk-2E6PP5UE.cjs} +83 -59
- package/dist/{chunk-GASCWJK5.js → chunk-2EGGAZT3.js} +65 -287
- package/dist/{chunk-SIEXCILW.js → chunk-2I3XAGMF.js} +3 -3
- package/dist/{chunk-OS533P33.cjs → chunk-2KKOYZYI.cjs} +1074 -1655
- package/dist/chunk-2MQKNDNH.js +51 -0
- package/dist/{chunk-7DMMMBCY.cjs → chunk-2X3IPCBK.cjs} +10 -10
- package/dist/chunk-2ZOTBO25.cjs +202 -0
- package/dist/chunk-356N4NPM.cjs +152 -0
- package/dist/{chunk-X3GJPRVK.cjs → chunk-36NPLOI4.cjs} +92 -81
- package/dist/{chunk-SLU6UPJI.cjs → chunk-37HHY7RH.cjs} +5 -5
- package/dist/{chunk-YDPEHCCI.cjs → chunk-3CDDRUER.cjs} +3 -118
- package/dist/chunk-3F7ZZWIN.js +1651 -0
- package/dist/chunk-3ILD7TKP.cjs +187 -0
- package/dist/{chunk-X27QRG4C.cjs → chunk-3IUHTGDD.cjs} +153 -41
- package/dist/{chunk-PXNZ6TME.js → chunk-4376VHNJ.js} +60 -36
- package/dist/{chunk-YKGPCZEE.cjs → chunk-4FIBOJW6.cjs} +10 -10
- package/dist/chunk-4Q7RKQQI.cjs +14195 -0
- package/dist/{chunk-YCM6QQRT.cjs → chunk-566ZB4LZ.cjs} +180 -8
- package/dist/{chunk-2Y3V22SG.js → chunk-5CURIYGT.js} +3 -3
- package/dist/{chunk-QBWNJXNR.js → chunk-5FYMCVBY.js} +5 -5
- package/dist/{chunk-ZA34AN3R.js → chunk-5LVFTGKH.js} +841 -12
- package/dist/chunk-63AUAIL6.js +48 -0
- package/dist/chunk-655FATJU.js +110 -0
- package/dist/{chunk-TQ377OLB.cjs → chunk-65S62L4D.cjs} +28 -22
- package/dist/chunk-6NTAZN5Z.cjs +502 -0
- package/dist/chunk-6TRX6AR2.js +9376 -0
- package/dist/chunk-6ZCCLKS2.cjs +51 -0
- package/dist/{chunk-MDR235RZ.js → chunk-734OB5SK.js} +721 -8
- package/dist/{chunk-Q2Q34NF3.js → chunk-77QI552M.js} +6 -6
- package/dist/{chunk-WKX5AMOY.js → chunk-7I74JWPW.js} +3 -3
- package/dist/{chunk-5FSKKMR7.cjs → chunk-7IDJDMPU.cjs} +232 -4
- package/dist/chunk-7VBKRGIZ.cjs +847 -0
- package/dist/{chunk-KCPHASCO.js → chunk-AATYYLYK.js} +5 -5
- package/dist/{chunk-WFKVS2K4.cjs → chunk-AUZRKIHQ.cjs} +1101 -55
- package/dist/{chunk-DTGBOSEM.cjs → chunk-AWXFEAQL.cjs} +12 -12
- package/dist/{chunk-THCK6ECW.js → chunk-B3CWTCK2.js} +231 -3
- package/dist/chunk-BCP4E7MD.cjs +997 -0
- package/dist/chunk-BG7RPYJP.js +91 -0
- package/dist/{chunk-VF257YKO.js → chunk-BP4KTMLY.js} +117 -5
- package/dist/{chunk-YN6IETRZ.js → chunk-BQJ3YBF3.js} +6424 -987
- package/dist/{chunk-KOUAQL2B.cjs → chunk-CANAL6CT.cjs} +1569 -168
- package/dist/{chunk-FDSGHPAK.js → chunk-CBSDJF3B.js} +3 -3
- package/dist/{chunk-FEWUHQNM.cjs → chunk-CFVK26P4.cjs} +4 -4
- package/dist/{chunk-M7K4LE66.cjs → chunk-CI33NINL.cjs} +4 -4
- package/dist/{chunk-2OWDB4FB.js → chunk-CKV5NYAE.js} +6 -6
- package/dist/{chunk-LPS5AMQD.cjs → chunk-CM4NHXVO.cjs} +24 -24
- package/dist/chunk-D3HSRXYB.js +115 -0
- package/dist/{chunk-FNHJRI32.js → chunk-DBH3D2MU.js} +1561 -160
- package/dist/{chunk-GW3LKD5C.js → chunk-DJNH4HFW.js} +3 -3
- package/dist/{chunk-2GCNOI2U.cjs → chunk-DN6F4DHH.cjs} +9 -3
- package/dist/chunk-DQRJ5RJG.js +432 -0
- package/dist/{chunk-C7ZBSV2Q.js → chunk-DUG3OQAS.js} +106 -43
- package/dist/chunk-ECUYJOJ2.cjs +199 -0
- package/dist/chunk-EEMTCAK7.js +182 -0
- package/dist/{chunk-3SKLAUDD.cjs → chunk-EI3J6LTW.cjs} +359 -581
- package/dist/{chunk-SSSN7VAM.js → chunk-EM2OGPYE.js} +4 -4
- package/dist/{chunk-56VOWURB.cjs → chunk-ENZCIQZC.cjs} +522 -453
- package/dist/chunk-ESBXUYOC.cjs +836 -0
- package/dist/{chunk-L5U4W6JC.js → chunk-ESSEF6U2.js} +4 -4
- package/dist/chunk-ET3AN4W3.js +824 -0
- package/dist/chunk-EXKSFGSX.cjs +14 -14
- package/dist/{chunk-I76GIKN7.cjs → chunk-F3YT6GUF.cjs} +17 -17
- package/dist/{chunk-WRWEX5ZF.js → chunk-F75DZBBI.js} +3 -3
- package/dist/{chunk-4JGRWHZJ.js → chunk-FG6PYGIZ.js} +12 -6
- package/dist/chunk-FGGJQRLZ.js +14 -14
- package/dist/{chunk-SXOSDZD6.js → chunk-FWCHPCD4.js} +128 -10
- package/dist/{chunk-XW6IXEQH.cjs → chunk-G35CAQ7I.cjs} +5 -5
- package/dist/{chunk-7VMGP2FW.js → chunk-G6KACNMO.js} +132 -188
- package/dist/{chunk-FJPADH77.cjs → chunk-GAWJJAGT.cjs} +6 -6
- package/dist/chunk-GGR7QUKK.cjs +4724 -0
- package/dist/chunk-GIBF4BHH.js +14098 -0
- package/dist/{chunk-AWB7QYY6.cjs → chunk-GILYQ5VH.cjs} +6 -6
- package/dist/{chunk-FWVYAMNW.cjs → chunk-GKFCHGCM.cjs} +4 -4
- package/dist/{chunk-Y3ZFVUUU.js → chunk-GLEJ2TLS.js} +3 -3
- package/dist/{chunk-3GWWJT7L.js → chunk-GP3OKSKT.js} +13 -13
- package/dist/chunk-GTIPOEHN.js +196 -0
- package/dist/{chunk-LMJ5EBV7.cjs → chunk-GZPUA2TL.cjs} +16 -15
- package/dist/{chunk-IELX2OKI.js → chunk-H4LJ4HEA.js} +3 -115
- package/dist/{chunk-ACVWFGBI.cjs → chunk-HCX4SMFK.cjs} +3 -3
- package/dist/{chunk-HYNTS5CP.js → chunk-HHRZ6STP.js} +24 -2
- package/dist/chunk-HIDEIEFG.js +48 -0
- package/dist/{chunk-W6RW64BB.cjs → chunk-HSWBIDZM.cjs} +228 -5
- package/dist/{chunk-GSOUNWEL.js → chunk-HVX7QQYK.js} +1035 -1616
- package/dist/{chunk-TRCGG42I.cjs → chunk-IFW5IW4L.cjs} +6502 -1019
- package/dist/{chunk-F5LKJ6F5.cjs → chunk-IJU6AS67.cjs} +32 -28
- package/dist/{chunk-TVANHNJ7.js → chunk-IK6Z2HNC.js} +173 -3
- package/dist/{chunk-QGMUTVVH.cjs → chunk-IS7NTKY5.cjs} +20 -20
- package/dist/{chunk-YFVQWSNJ.js → chunk-IXWGYWH6.js} +3 -3
- package/dist/chunk-J2DAS2PL.js +148 -0
- package/dist/chunk-JBQXZIWB.js +148 -0
- package/dist/chunk-JBYBMBMW.js +261 -0
- package/dist/{chunk-LWUOUCYL.js → chunk-JEJ7TT54.js} +5 -5
- package/dist/{chunk-DUCB6LGL.js → chunk-JOTCTHN5.js} +211 -5
- package/dist/{chunk-47RUFYKR.js → chunk-K56UVEXV.js} +3 -3
- package/dist/{chunk-XSFNHP2E.js → chunk-KB26H447.js} +3 -3
- package/dist/{chunk-3NGDZZR4.js → chunk-KEYG7HGY.js} +430 -37
- package/dist/{chunk-DY72BMU5.js → chunk-KFVNCW4Q.js} +4 -4
- package/dist/chunk-KPGC7SK2.js +192 -0
- package/dist/chunk-KROXXBK5.cjs +53 -0
- package/dist/{chunk-ZPZAVHXL.cjs → chunk-LB3ZZMKT.cjs} +137 -19
- package/dist/chunk-LDYZWNJW.cjs +1654 -0
- package/dist/{chunk-ULMSSHCJ.cjs → chunk-LMB555QB.cjs} +405 -38
- package/dist/{chunk-CBJY23VL.js → chunk-MD4IVS42.js} +3 -3
- package/dist/{chunk-VMLKSV26.js → chunk-MDDWEBCX.js} +226 -3
- package/dist/chunk-MUWH4QK5.cjs +94 -0
- package/dist/{chunk-T6W3Z3SH.cjs → chunk-N2ILK7BF.cjs} +4 -4
- package/dist/{chunk-6EX3I5P4.cjs → chunk-N74QRJGP.cjs} +6 -6
- package/dist/chunk-NFFHLX37.cjs +132 -0
- package/dist/chunk-NJSYWX7H.js +190 -0
- package/dist/{chunk-SH5PPVK7.cjs → chunk-NQN5LFN4.cjs} +165 -221
- package/dist/chunk-NTQRFOPP.cjs +56 -0
- package/dist/{chunk-YFWRJW4B.js → chunk-NWMJPTVL.js} +51 -55
- package/dist/{chunk-63ZGNR2T.cjs → chunk-OC6GV5QH.cjs} +42 -42
- package/dist/{chunk-7E7GCQCK.js → chunk-OG3MBHM3.js} +9 -3
- package/dist/chunk-OMNHTCS4.cjs +264 -0
- package/dist/chunk-OQXB6NNC.cjs +117 -0
- package/dist/{chunk-Y57W2CT5.cjs → chunk-OV46CCA2.cjs} +51 -55
- package/dist/{chunk-6PRZIHGL.cjs → chunk-OV6HHKLE.cjs} +21 -266
- package/dist/{chunk-C37BHB7N.cjs → chunk-P26YYPOO.cjs} +5 -5
- package/dist/{chunk-2BZHWUSR.cjs → chunk-P7JEKJTZ.cjs} +16 -16
- package/dist/{chunk-NGBXXZLL.cjs → chunk-PDXX5UI4.cjs} +45 -45
- package/dist/{chunk-FHQFPYV4.js → chunk-PJFTTSKE.js} +8 -7
- package/dist/{chunk-GVFJ6T4S.cjs → chunk-PVODJEJ7.cjs} +721 -8
- package/dist/{chunk-ZZ7RO2UQ.js → chunk-Q265VZJ4.js} +3 -3
- package/dist/{chunk-E7JP3BS3.cjs → chunk-Q47JEE2C.cjs} +4 -4
- package/dist/chunk-QBY7LRN2.js +281 -0
- package/dist/{chunk-Z6PMDS4G.js → chunk-QDQWKSU3.js} +1090 -53
- package/dist/{chunk-GH6C2QGW.cjs → chunk-QEDMOGF3.cjs} +857 -16
- package/dist/{chunk-5WUNN6ZN.cjs → chunk-QHSAVOOL.cjs} +24 -2
- package/dist/chunk-QJNCDVYM.cjs +137 -0
- package/dist/chunk-QM7FJB5W.js +4717 -0
- package/dist/chunk-QQFB4RT2.cjs +448 -0
- package/dist/chunk-QSYBHQAD.cjs +196 -0
- package/dist/{chunk-UGXHYIWT.cjs → chunk-QUJ3ZB55.cjs} +28 -28
- package/dist/{chunk-2YSNA2F2.cjs → chunk-QVJMDVYZ.cjs} +5 -5
- package/dist/chunk-RAJMAX6D.js +131 -0
- package/dist/{chunk-VVKVQZI6.js → chunk-RAN3ECAS.js} +3 -3
- package/dist/chunk-RKGUZBOC.js +79 -0
- package/dist/{chunk-HLFDZ35S.cjs → chunk-RRQIAJLQ.cjs} +8 -8
- package/dist/{chunk-PABONWKI.js → chunk-RXQNRZ5F.js} +3 -3
- package/dist/{chunk-7ZHYEITD.cjs → chunk-S4O7CFHQ.cjs} +10 -11
- package/dist/chunk-SE7ANBGN.js +128 -0
- package/dist/{chunk-X2AVEAZM.cjs → chunk-SJIRCTIS.cjs} +176 -2
- package/dist/{chunk-WXQ57LAO.js → chunk-SQXAZHDG.js} +4 -4
- package/dist/chunk-SR73L5ZP.cjs +84 -0
- package/dist/{chunk-OABEO6HH.js → chunk-SZOLTWWD.js} +2349 -214
- package/dist/{chunk-5JEU52DW.js → chunk-TPZ3BN2D.js} +3 -3
- package/dist/{chunk-QFU53KRH.js → chunk-TSTFYGGX.js} +4 -5
- package/dist/{chunk-EBS32AJI.cjs → chunk-TZCFKZ6Z.cjs} +5 -5
- package/dist/chunk-UCVZXQ63.js +724 -0
- package/dist/chunk-UGQ3QNV6.js +992 -0
- package/dist/chunk-UNMVGZVW.js +142 -0
- package/dist/{chunk-TEVX443G.js → chunk-UTUD6GJI.js} +178 -6
- package/dist/chunk-UXBYA7DV.cjs +155 -0
- package/dist/chunk-V6GXFSK7.cjs +443 -0
- package/dist/chunk-VHORVGCG.cjs +761 -0
- package/dist/{chunk-B4EKV6HQ.js → chunk-VKCTYLDN.js} +500 -442
- package/dist/{chunk-O3MGZDCT.cjs → chunk-VTEXJOSD.cjs} +63 -63
- package/dist/chunk-VVAAZITA.cjs +287 -0
- package/dist/{chunk-V7AKE5VT.cjs → chunk-W2GA3EQB.cjs} +435 -42
- package/dist/chunk-W4GABFCR.js +37 -0
- package/dist/chunk-WKEK4NCA.js +490 -0
- package/dist/{chunk-5A4TCHOC.cjs → chunk-WNYXT4TE.cjs} +4 -4
- package/dist/{chunk-S762UEV5.js → chunk-WTH23ISI.js} +6 -6
- package/dist/{chunk-BTKZGHAV.js → chunk-WWNCM473.js} +10 -6
- package/dist/{chunk-7X5PNIQJ.js → chunk-X3YFRH6K.js} +27 -25
- package/dist/{chunk-4YNYPHH3.cjs → chunk-X75H75UY.cjs} +2351 -213
- package/dist/{chunk-LYJJI7ZK.cjs → chunk-XCUDDFKC.cjs} +216 -9
- package/dist/chunk-YAO4HPJL.cjs +120 -0
- package/dist/chunk-YKY2JBER.cjs +9443 -0
- package/dist/chunk-YP5CHEYU.cjs +154 -0
- package/dist/{chunk-WRNEH5MO.js → chunk-YW3I2FQL.js} +18 -7
- package/dist/{chunk-BRNUPDHJ.js → chunk-Z557DVYN.js} +386 -19
- package/dist/{chunk-VSACG2AR.js → chunk-Z6LZUYZF.js} +21 -264
- package/dist/chunk-ZHPMP447.cjs +43 -0
- package/dist/{chunk-LODTHGST.cjs → chunk-ZK7KX5CD.cjs} +133 -70
- package/dist/{chunk-CCPSNT6B.cjs → chunk-ZRPALBQB.cjs} +5 -5
- package/dist/chunk-ZVFHPMC5.js +824 -0
- package/dist/chunk-ZVQMKUGJ.js +443 -0
- package/dist/cli/holoscript-runner.cjs +86 -48
- package/dist/cli/holoscript-runner.js +54 -16
- package/dist/codebase/index.cjs +1 -1
- package/dist/codebase/index.js +1 -1
- package/dist/compiler/agent-inference.cjs +11 -11
- package/dist/compiler/agent-inference.js +9 -6
- package/dist/compiler/android-xr.cjs +13 -12
- package/dist/compiler/android-xr.js +11 -10
- package/dist/compiler/android.cjs +12 -12
- package/dist/compiler/android.js +10 -10
- package/dist/compiler/business-quest.cjs +10 -10
- package/dist/compiler/business-quest.js +2 -2
- package/dist/compiler/coco.cjs +1 -1
- package/dist/compiler/coco.js +1 -1
- package/dist/compiler/context.cjs +9 -9
- package/dist/compiler/context.js +6 -6
- package/dist/compiler/daimon-seed.cjs +36 -0
- package/dist/compiler/daimon-seed.js +12 -0
- package/dist/compiler/domain-block-utils.cjs +205 -156
- package/dist/compiler/domain-block-utils.js +8 -7
- package/dist/compiler/dtdl.cjs +10 -10
- package/dist/compiler/dtdl.js +7 -7
- package/dist/compiler/gltf-pipeline.cjs +9 -9
- package/dist/compiler/gltf-pipeline.js +2 -2
- package/dist/compiler/godot.cjs +10 -9
- package/dist/compiler/godot.js +9 -8
- package/dist/compiler/incremental.cjs +11 -11
- package/dist/compiler/incremental.js +6 -6
- package/dist/compiler/index.cjs +2585 -3273
- package/dist/compiler/index.d.ts +149 -35
- package/dist/compiler/index.js +2197 -3102
- package/dist/compiler/ios.cjs +11 -11
- package/dist/compiler/ios.js +9 -9
- package/dist/compiler/llm-provider-capabilities.cjs +9 -9
- package/dist/compiler/llm-provider-capabilities.js +6 -6
- package/dist/compiler/nodetoy.cjs +1 -1
- package/dist/compiler/nodetoy.js +1 -1
- package/dist/compiler/openxr.cjs +11 -10
- package/dist/compiler/openxr.js +10 -9
- package/dist/compiler/remotion.cjs +1 -1
- package/dist/compiler/remotion.js +1 -1
- package/dist/compiler/reproducibility.cjs +1 -1
- package/dist/compiler/reproducibility.js +1 -1
- package/dist/compiler/sdf.cjs +11 -10
- package/dist/compiler/sdf.js +9 -8
- package/dist/compiler/semantic-scene.cjs +7 -7
- package/dist/compiler/semantic-scene.js +2 -2
- package/dist/compiler/state.cjs +9 -9
- package/dist/compiler/state.js +7 -7
- package/dist/compiler/trait-composition.cjs +11 -11
- package/dist/compiler/trait-composition.js +7 -7
- package/dist/compiler/traits/ProvenanceSemiring.d.ts +167 -0
- package/dist/compiler/traits/Semiring.d.ts +26 -0
- package/dist/compiler/unity.cjs +11 -10
- package/dist/compiler/unity.js +10 -9
- package/dist/compiler/unreal.cjs +12 -11
- package/dist/compiler/unreal.js +10 -9
- package/dist/compiler/urdf.cjs +18 -17
- package/dist/compiler/urdf.js +9 -8
- package/dist/compiler/usd-physics.cjs +11 -10
- package/dist/compiler/usd-physics.js +8 -7
- package/dist/compiler/visionos.cjs +11 -10
- package/dist/compiler/visionos.js +10 -9
- package/dist/compiler/vrchat.cjs +11 -10
- package/dist/compiler/vrchat.js +9 -8
- package/dist/compiler/wasm.cjs +14 -13
- package/dist/compiler/wasm.js +9 -8
- package/dist/compiler/webgpu.cjs +10 -9
- package/dist/compiler/webgpu.js +9 -8
- package/dist/constants.cjs +398 -0
- package/dist/constants.js +9 -0
- package/dist/coordinators/index.cjs +4 -1
- package/dist/coordinators/index.js +4 -1
- package/dist/debugger.cjs +11 -9
- package/dist/debugger.js +9 -7
- package/dist/{dist-ACXG6IH5.cjs → dist-GRMOP2UL.cjs} +341 -65
- package/dist/{dist-VD4L6V7Q.js → dist-ZBUKU2JG.js} +333 -63
- package/dist/entries/interop.cjs +23 -23
- package/dist/entries/interop.js +3 -3
- package/dist/entries/scripting.cjs +12 -11
- package/dist/entries/scripting.js +8 -7
- package/dist/evolution/index.cjs +66 -0
- package/dist/evolution/index.d.ts +162 -0
- package/dist/evolution/index.js +17 -0
- package/dist/hololand/index.cjs +41 -37
- package/dist/hololand/index.js +3 -3
- package/dist/index.cjs +12394 -3224
- package/dist/index.d.ts +260 -18
- package/dist/index.js +10755 -2182
- package/dist/keyword-registry/PluginKeywordRegistry.d.ts +138 -0
- package/dist/keyword-registry/index.cjs +29 -0
- package/dist/keyword-registry/index.d.ts +1 -0
- package/dist/keyword-registry/index.js +4 -0
- package/dist/math/tropical-spmv.cjs +11 -11
- package/dist/math/tropical-spmv.d.ts +1 -0
- package/dist/math/tropical-spmv.js +2 -2
- package/dist/math/tropicalSpmv.d.ts +43 -0
- package/dist/math/vec3.cjs +1 -1
- package/dist/math/vec3.js +1 -1
- package/dist/matter/StagedMatter.d.ts +82 -0
- package/dist/matter/index.cjs +17 -0
- package/dist/matter/index.d.ts +1 -0
- package/dist/matter/index.js +4 -0
- package/dist/{ml-dsa-Z7JDKW4L.js → ml-dsa-J6VKVT4K.js} +3 -3
- package/dist/{ml-dsa-FSKBTE3W.cjs → ml-dsa-MTIK4ZUQ.cjs} +23 -23
- package/dist/paper-0c-spike/index.cjs +1 -1
- package/dist/paper-0c-spike/index.js +1 -1
- package/dist/parameter-envelope/ParameterEnvelope.d.ts +128 -0
- package/dist/parameter-envelope/index.cjs +17 -0
- package/dist/parameter-envelope/index.d.ts +2 -0
- package/dist/parameter-envelope/index.js +4 -0
- package/dist/parser/HoloCompositionTypes.d.ts +2013 -0
- package/dist/parser/PipelineParser.d.ts +162 -0
- package/dist/parser.cjs +36 -20
- package/dist/parser.js +13 -9
- package/dist/plugin-manifest/ManifestAutoLoader.d.ts +35 -0
- package/dist/plugin-manifest/PluginManifest.d.ts +156 -0
- package/dist/plugin-manifest/index.cjs +25 -0
- package/dist/plugin-manifest/index.d.ts +2 -0
- package/dist/plugin-manifest/index.js +4 -0
- package/dist/plugin-solver-contract/PluginSolverContract.d.ts +288 -0
- package/dist/plugin-solver-contract/index.cjs +41 -0
- package/dist/plugin-solver-contract/index.d.ts +1 -0
- package/dist/plugin-solver-contract/index.js +4 -0
- package/dist/policy/ContentPolicyGate.d.ts +51 -0
- package/dist/policy/PolicyPack.d.ts +120 -0
- package/dist/policy/blocklist.d.ts +32 -0
- package/dist/policy/defaults.d.ts +44 -0
- package/dist/policy/index.cjs +106 -0
- package/dist/policy/index.d.ts +17 -0
- package/dist/policy/index.js +5 -0
- package/dist/policy/jsonLogic.d.ts +31 -0
- package/dist/policy/types.d.ts +174 -0
- package/dist/proof-composition/ProofCompositionLaw.d.ts +93 -0
- package/dist/proof-composition/index.cjs +25 -0
- package/dist/proof-composition/index.d.ts +1 -0
- package/dist/proof-composition/index.js +4 -0
- package/dist/receipts/hash-policy.d.ts +85 -0
- package/dist/reconstruction/index.cjs +75 -47
- package/dist/reconstruction/index.js +5 -5
- package/dist/runtime/plugin-trait-registrar.d.ts +36 -0
- package/dist/runtime.cjs +81 -79
- package/dist/runtime.js +9 -7
- package/dist/scene-presets-EDKYZ5GW.js +4 -0
- package/dist/scene-presets-NCW2CFRS.cjs +17 -0
- package/dist/self-improvement/index.cjs +1 -1
- package/dist/self-improvement/index.js +1 -1
- package/dist/{src-PT2FERDV.cjs → src-G3D7ZATQ.cjs} +545 -21
- package/dist/{src-J6CM4AUR.js → src-UXYA7HM6.js} +539 -16
- package/dist/storage/index.cjs +10 -10
- package/dist/storage/index.js +3 -3
- package/dist/testing.cjs +1 -1
- package/dist/testing.js +1 -1
- package/dist/tools/index.cjs +3631 -0
- package/dist/tools/index.js +3581 -0
- package/dist/traitDocs/traitDocs.cjs +9 -9
- package/dist/traitDocs/traitDocs.d.ts +1 -0
- package/dist/traitDocs/traitDocs.js +3 -3
- package/dist/traits/ControlLoopTrait.d.ts +154 -0
- package/dist/traits/KinematicChainTrait.d.ts +116 -0
- package/dist/traits/SensorSamplingTrait.d.ts +154 -0
- package/dist/traits/TraitTypes.d.ts +270 -0
- package/dist/traits/TransactionTrait.d.ts +121 -0
- package/dist/traits/botanical-lotus.cjs +54 -50
- package/dist/traits/botanical-lotus.js +2 -5
- package/dist/traits/control-loop.cjs +21 -0
- package/dist/traits/control-loop.d.ts +1 -0
- package/dist/traits/control-loop.js +4 -0
- package/dist/traits/engines/cloth-verlet.d.ts +65 -0
- package/dist/traits/engines/index.cjs +19 -19
- package/dist/traits/engines/index.d.ts +15 -275
- package/dist/traits/engines/index.js +3 -3
- package/dist/traits/engines/motion-data-schema.d.ts +119 -0
- package/dist/traits/engines/motion-matching.d.ts +102 -0
- package/dist/traits/engines/noise.d.ts +25 -0
- package/dist/traits/engines/onnx-adapter.d.ts +173 -0
- package/dist/traits/engines/onnx-motion-matching.d.ts +163 -0
- package/dist/traits/engines/pfnn-network.d.ts +92 -0
- package/dist/traits/engines/synthetic-walk-cycle.d.ts +38 -0
- package/dist/traits/engines/tensor-ops.d.ts +15 -0
- package/dist/traits/index.cjs +2789 -1259
- package/dist/traits/index.d.ts +35 -0
- package/dist/traits/index.js +1692 -411
- package/dist/traits/kinematic-chain.cjs +25 -0
- package/dist/traits/kinematic-chain.d.ts +1 -0
- package/dist/traits/kinematic-chain.js +4 -0
- package/dist/traits/sensor-sampling.cjs +33 -0
- package/dist/traits/sensor-sampling.d.ts +1 -0
- package/dist/traits/sensor-sampling.js +4 -0
- package/dist/traits/simulation-solver-factory.cjs +1 -1
- package/dist/traits/simulation-solver-factory.js +1 -1
- package/dist/traits/transaction.cjs +29 -0
- package/dist/traits/transaction.d.ts +1 -0
- package/dist/traits/transaction.js +4 -0
- package/dist/traits/webcam-gaze.cjs +1 -1
- package/dist/traits/webcam-gaze.js +1 -1
- package/dist/type-checker.cjs +7 -6
- package/dist/type-checker.js +5 -4
- package/dist/types/AdvancedTypeSystem.d.ts +489 -0
- package/dist/types/HoloScriptPlus.d.ts +810 -0
- package/dist/types/base.d.ts +248 -0
- package/dist/types.d.ts +799 -0
- package/dist/world/index.cjs +3 -4
- package/dist/world/index.js +3 -4
- package/dist/world-model/index.cjs +1 -1
- package/dist/world-model/index.js +1 -1
- package/dist/wot/index.cjs +1 -1
- package/dist/wot/index.js +1 -1
- package/package.json +113 -46
- package/dist/GLTFPipeline-3EJLL3TS.cjs +0 -38
- package/dist/GLTFPipeline-3OWJV2VK.js +0 -17
- package/dist/HoloScriptPlusParser-ADWRY5OS.cjs +0 -698
- package/dist/HoloScriptPlusParser-JLJDXHSC.js +0 -693
- package/dist/HoloScriptPlusParser-QCGFPWIL.cjs +0 -27
- package/dist/HoloScriptPlusParser-WENAFEFV.js +0 -10
- package/dist/HoloScriptRuntime-GGRVEU4T.cjs +0 -19
- package/dist/HoloScriptRuntime-GJK6VJPH.js +0 -10
- package/dist/chunk-22Q5A6RV.js +0 -979
- package/dist/chunk-4C57PR42.js +0 -468
- package/dist/chunk-4W5G5QVL.cjs +0 -847
- package/dist/chunk-5ET6L4NS.js +0 -487
- package/dist/chunk-C4GSLCHE.cjs +0 -7153
- package/dist/chunk-F2G6CWFT.js +0 -7089
- package/dist/chunk-G6PNEASF.cjs +0 -814
- package/dist/chunk-GTA4Q3A3.js +0 -1491
- package/dist/chunk-HCCQLAA4.cjs +0 -74
- package/dist/chunk-HFSVMKM3.cjs +0 -72
- package/dist/chunk-KAIVDEIG.cjs +0 -4539
- package/dist/chunk-KQU64CIX.cjs +0 -1508
- package/dist/chunk-MSYSQ2AJ.js +0 -4533
- package/dist/chunk-NHJLP37F.js +0 -70
- package/dist/chunk-NHYRRAGI.cjs +0 -490
- package/dist/chunk-OIQYIIO3.cjs +0 -473
- package/dist/chunk-OL46QLBJ.js +0 -61
- package/dist/chunk-SKZPC5AG.cjs +0 -984
- package/dist/chunk-SLHLXUMO.js +0 -445
- package/dist/chunk-UOIGFQXC.cjs +0 -9750
- package/dist/chunk-UOL6Y5TD.cjs +0 -759
- package/dist/chunk-UVFI7XIR.cjs +0 -452
- package/dist/chunk-VEPGBETF.js +0 -844
- package/dist/chunk-XQ5MWMP2.js +0 -756
- package/dist/chunk-XT6JY5W5.js +0 -9684
- package/dist/chunk-YRRAUB35.js +0 -811
- package/dist/compiler/GasOptimizationAnalyzer.d.ts +0 -73
- package/dist/compiler/NFTMarketplaceCompiler.d.ts +0 -23
- package/dist/compiler/ar.cjs +0 -23
- package/dist/compiler/ar.js +0 -11
- package/dist/compiler/babylon.cjs +0 -21
- package/dist/compiler/babylon.js +0 -15
- package/dist/compiler/multi-layer.cjs +0 -24
- package/dist/compiler/multi-layer.js +0 -15
- package/dist/compiler/playcanvas.cjs +0 -19
- package/dist/compiler/playcanvas.js +0 -13
- package/dist/compiler/r3f.cjs +0 -39
- package/dist/compiler/r3f.d.ts +0 -22
- package/dist/compiler/r3f.js +0 -17
- package/dist/compiler/vrr.cjs +0 -24
- package/dist/compiler/vrr.js +0 -12
- package/dist/parser/NFTMarketplaceTypes.d.ts +0 -191
- package/dist/playwright-3AT3AKTV.cjs +0 -98673
- package/dist/playwright-VZPDVUEQ.js +0 -98660
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
3
|
+
var chunkCFVK26P4_cjs = require('./chunk-CFVK26P4.cjs');
|
|
4
|
+
var chunkTZCFKZ6Z_cjs = require('./chunk-TZCFKZ6Z.cjs');
|
|
5
|
+
var chunkQEDMOGF3_cjs = require('./chunk-QEDMOGF3.cjs');
|
|
6
|
+
var chunkZK7KX5CD_cjs = require('./chunk-ZK7KX5CD.cjs');
|
|
7
|
+
var chunkZHPMP447_cjs = require('./chunk-ZHPMP447.cjs');
|
|
8
8
|
var ans = require('@holoscript/core-types/ans');
|
|
9
9
|
|
|
10
10
|
// src/compiler/AndroidXRTraitDispatch.ts
|
|
11
11
|
var WorldPhysicsConfig, PHYSICS_TRAIT_MAP, INTERACTION_TRAIT_MAP, AUDIO_TRAIT_MAP, AR_TRAIT_MAP, ACCESSIBILITY_TRAIT_MAP, UI_TRAIT_MAP, ENVIRONMENT_TRAIT_MAP, DP3_TRAIT_MAP, GLASSES_TRAIT_MAP, MULTIPLAYER_TRAIT_MAP;
|
|
12
|
-
var init_AndroidXRTraitDispatch =
|
|
12
|
+
var init_AndroidXRTraitDispatch = chunkZHPMP447_cjs.__esm({
|
|
13
13
|
"src/compiler/AndroidXRTraitDispatch.ts"() {
|
|
14
14
|
WorldPhysicsConfig = {
|
|
15
15
|
EARTH: { gravity: -9.81 },
|
|
@@ -2141,7 +2141,7 @@ var init_AndroidXRTraitDispatch = chunkHCCQLAA4_cjs.__esm({
|
|
|
2141
2141
|
|
|
2142
2142
|
// src/compiler/AndroidXRCodeTemplates.ts
|
|
2143
2143
|
var VISUAL_TRAIT_MAP, V43_TRAIT_MAP, AI_TRAIT_MAP;
|
|
2144
|
-
var init_AndroidXRCodeTemplates =
|
|
2144
|
+
var init_AndroidXRCodeTemplates = chunkZHPMP447_cjs.__esm({
|
|
2145
2145
|
"src/compiler/AndroidXRCodeTemplates.ts"() {
|
|
2146
2146
|
VISUAL_TRAIT_MAP = {
|
|
2147
2147
|
visible: {
|
|
@@ -3864,7 +3864,7 @@ function generateTraitCode(traitName, varName, config) {
|
|
|
3864
3864
|
return mapping.generate(varName, config);
|
|
3865
3865
|
}
|
|
3866
3866
|
exports.ANDROIDXR_TRAIT_MAP = void 0;
|
|
3867
|
-
var init_AndroidXRTraitMap =
|
|
3867
|
+
var init_AndroidXRTraitMap = chunkZHPMP447_cjs.__esm({
|
|
3868
3868
|
"src/compiler/AndroidXRTraitMap.ts"() {
|
|
3869
3869
|
init_AndroidXRTraitDispatch();
|
|
3870
3870
|
init_AndroidXRCodeTemplates();
|
|
@@ -4005,6 +4005,33 @@ function compileAction(compiler, action) {
|
|
|
4005
4005
|
compiler.emit("}");
|
|
4006
4006
|
compiler.emit("");
|
|
4007
4007
|
}
|
|
4008
|
+
function kotlinFloat(value) {
|
|
4009
|
+
return `${value}f`;
|
|
4010
|
+
}
|
|
4011
|
+
function isNumberArray(value) {
|
|
4012
|
+
return Array.isArray(value) && value.length > 0 && value.every((v) => typeof v === "number");
|
|
4013
|
+
}
|
|
4014
|
+
function toXRVector3(value) {
|
|
4015
|
+
if (isNumberArray(value)) {
|
|
4016
|
+
const [x, y = x, z = x] = value;
|
|
4017
|
+
return `Vector3(${kotlinFloat(x)}, ${kotlinFloat(y)}, ${kotlinFloat(z)})`;
|
|
4018
|
+
}
|
|
4019
|
+
if (typeof value === "number") {
|
|
4020
|
+
return `Vector3(${kotlinFloat(value)}, ${kotlinFloat(value)}, ${kotlinFloat(value)})`;
|
|
4021
|
+
}
|
|
4022
|
+
return "Vector3(0f, 0f, 0f)";
|
|
4023
|
+
}
|
|
4024
|
+
function toXRPose(value) {
|
|
4025
|
+
return `Pose(${toXRVector3(value)}, Quaternion.Identity)`;
|
|
4026
|
+
}
|
|
4027
|
+
function xrEntityCreate(compiler, sessionVar, name, poseValue) {
|
|
4028
|
+
return `Entity.create(${sessionVar}, "${compiler.escapeStringValue(name, "Kotlin")}", ${toXRPose(poseValue)})`;
|
|
4029
|
+
}
|
|
4030
|
+
function emitScale(compiler, target, scale) {
|
|
4031
|
+
if (isNumberArray(scale) || typeof scale === "number") {
|
|
4032
|
+
compiler.emit(`${target}.setScale(${toXRVector3(scale)})`);
|
|
4033
|
+
}
|
|
4034
|
+
}
|
|
4008
4035
|
function generateNodeFactoryFile(compiler, composition) {
|
|
4009
4036
|
compiler.lines = [];
|
|
4010
4037
|
compiler.indentLevel = 0;
|
|
@@ -4017,7 +4044,7 @@ function generateNodeFactoryFile(compiler, composition) {
|
|
|
4017
4044
|
compiler.emit(`package ${pkg}`);
|
|
4018
4045
|
compiler.emit("");
|
|
4019
4046
|
compiler.emit("import android.net.Uri");
|
|
4020
|
-
compiler.emit("import androidx.xr.
|
|
4047
|
+
compiler.emit("import androidx.xr.runtime.Session as XRSession");
|
|
4021
4048
|
compiler.emit("import androidx.xr.scenecore.Entity");
|
|
4022
4049
|
compiler.emit("import androidx.xr.scenecore.GltfModel");
|
|
4023
4050
|
compiler.emit("import androidx.xr.scenecore.GltfModelEntity");
|
|
@@ -4030,41 +4057,24 @@ function generateNodeFactoryFile(compiler, composition) {
|
|
|
4030
4057
|
compiler.emit("/**");
|
|
4031
4058
|
compiler.emit(" * Create a default entity in the XR scene.");
|
|
4032
4059
|
compiler.emit(" */");
|
|
4033
|
-
compiler.emit("fun createDefaultEntity(session: XRSession): Entity {");
|
|
4060
|
+
compiler.emit("suspend fun createDefaultEntity(session: XRSession): Entity {");
|
|
4034
4061
|
compiler.indent();
|
|
4035
4062
|
if (composition.objects?.length) {
|
|
4036
4063
|
const firstObj = composition.objects[0];
|
|
4037
4064
|
const modelSrc = compiler.findProp(firstObj, "model") ?? compiler.findProp(firstObj, "src");
|
|
4065
|
+
const pos = compiler.findProp(firstObj, "position");
|
|
4038
4066
|
if (modelSrc) {
|
|
4039
4067
|
compiler.emit(`val gltfModel = GltfModel.create(session, Uri.parse("${modelSrc}"))`);
|
|
4040
|
-
compiler.emit(
|
|
4041
|
-
|
|
4042
|
-
|
|
4043
|
-
const pos = compiler.findProp(firstObj, "position");
|
|
4044
|
-
if (pos && Array.isArray(pos)) {
|
|
4045
|
-
compiler.emit(
|
|
4046
|
-
`setPose(Pose(${compiler.toKotlinFloat3(pos)}, Quaternion.identity()))`
|
|
4047
|
-
);
|
|
4048
|
-
}
|
|
4049
|
-
compiler.dedent();
|
|
4050
|
-
compiler.emit("}");
|
|
4068
|
+
compiler.emit(
|
|
4069
|
+
`return GltfModelEntity.create(session, gltfModel, ${toXRPose(pos)})`
|
|
4070
|
+
);
|
|
4051
4071
|
} else {
|
|
4052
4072
|
compiler.emit(
|
|
4053
|
-
`
|
|
4073
|
+
`return ${xrEntityCreate(compiler, "session", firstObj.name, pos)}`
|
|
4054
4074
|
);
|
|
4055
|
-
compiler.emit("entity.parent = session.scene.activitySpace");
|
|
4056
|
-
const pos = compiler.findProp(firstObj, "position");
|
|
4057
|
-
if (pos && Array.isArray(pos)) {
|
|
4058
|
-
compiler.emit(
|
|
4059
|
-
`entity.setPose(Pose(${compiler.toKotlinFloat3(pos)}, Quaternion.identity()))`
|
|
4060
|
-
);
|
|
4061
|
-
}
|
|
4062
|
-
compiler.emit("return entity");
|
|
4063
4075
|
}
|
|
4064
4076
|
} else {
|
|
4065
|
-
compiler.emit(
|
|
4066
|
-
compiler.emit("entity.parent = session.scene.activitySpace");
|
|
4067
|
-
compiler.emit("return entity");
|
|
4077
|
+
compiler.emit(`return ${xrEntityCreate(compiler, "session", "default")}`);
|
|
4068
4078
|
}
|
|
4069
4079
|
compiler.dedent();
|
|
4070
4080
|
compiler.emit("}");
|
|
@@ -4072,7 +4082,7 @@ function generateNodeFactoryFile(compiler, composition) {
|
|
|
4072
4082
|
compiler.emit("/**");
|
|
4073
4083
|
compiler.emit(" * Load a glTF model and create a GltfModelEntity.");
|
|
4074
4084
|
compiler.emit(" */");
|
|
4075
|
-
compiler.emit("fun loadGltfModel(");
|
|
4085
|
+
compiler.emit("suspend fun loadGltfModel(");
|
|
4076
4086
|
compiler.indent();
|
|
4077
4087
|
compiler.emit("session: XRSession,");
|
|
4078
4088
|
compiler.emit("modelUri: String,");
|
|
@@ -4082,11 +4092,15 @@ function generateNodeFactoryFile(compiler, composition) {
|
|
|
4082
4092
|
compiler.emit("): GltfModelEntity {");
|
|
4083
4093
|
compiler.indent();
|
|
4084
4094
|
compiler.emit("val gltfModel = GltfModel.create(session, Uri.parse(modelUri))");
|
|
4085
|
-
compiler.emit("return GltfModelEntity.create(
|
|
4095
|
+
compiler.emit("return GltfModelEntity.create(");
|
|
4096
|
+
compiler.indent();
|
|
4097
|
+
compiler.emit("session,");
|
|
4098
|
+
compiler.emit("gltfModel,");
|
|
4099
|
+
compiler.emit("Pose(position, Quaternion.Identity)");
|
|
4100
|
+
compiler.dedent();
|
|
4101
|
+
compiler.emit(").apply {");
|
|
4086
4102
|
compiler.indent();
|
|
4087
|
-
compiler.emit("
|
|
4088
|
-
compiler.emit("setPose(Pose(position, Quaternion.identity()))");
|
|
4089
|
-
compiler.emit("setScale(com.google.android.filament.utils.Float3(scale, scale, scale))");
|
|
4103
|
+
compiler.emit("setScale(Vector3(scale, scale, scale))");
|
|
4090
4104
|
compiler.dedent();
|
|
4091
4105
|
compiler.emit("}");
|
|
4092
4106
|
compiler.dedent();
|
|
@@ -4102,48 +4116,26 @@ function generateNodeFactoryFile(compiler, composition) {
|
|
|
4102
4116
|
function compileObjectFactory(compiler, obj) {
|
|
4103
4117
|
const methodName = `create${compiler.sanitizeName(obj.name).charAt(0).toUpperCase() + compiler.sanitizeName(obj.name).slice(1)}`;
|
|
4104
4118
|
const modelSrc = compiler.findProp(obj, "model") ?? compiler.findProp(obj, "src");
|
|
4105
|
-
compiler.
|
|
4119
|
+
const pos = compiler.findProp(obj, "position");
|
|
4120
|
+
const scale = compiler.findProp(obj, "scale");
|
|
4121
|
+
compiler.emit(`${modelSrc ? "suspend " : ""}fun ${methodName}(session: XRSession): Entity {`);
|
|
4106
4122
|
compiler.indent();
|
|
4107
4123
|
if (modelSrc) {
|
|
4108
4124
|
compiler.emit(`val gltfModel = GltfModel.create(session, Uri.parse("${modelSrc}"))`);
|
|
4109
|
-
compiler.emit("return GltfModelEntity.create(
|
|
4125
|
+
compiler.emit("return GltfModelEntity.create(");
|
|
4110
4126
|
compiler.indent();
|
|
4111
|
-
compiler.emit("
|
|
4112
|
-
|
|
4113
|
-
|
|
4114
|
-
|
|
4115
|
-
|
|
4116
|
-
|
|
4117
|
-
|
|
4118
|
-
const scale = compiler.findProp(obj, "scale");
|
|
4119
|
-
if (scale && Array.isArray(scale)) {
|
|
4120
|
-
compiler.emit(`setScale(${compiler.toKotlinFloat3(scale)})`);
|
|
4121
|
-
} else if (typeof scale === "number") {
|
|
4122
|
-
compiler.emit(
|
|
4123
|
-
`setScale(com.google.android.filament.utils.Float3(${scale}f, ${scale}f, ${scale}f))`
|
|
4124
|
-
);
|
|
4125
|
-
}
|
|
4127
|
+
compiler.emit("session,");
|
|
4128
|
+
compiler.emit("gltfModel,");
|
|
4129
|
+
compiler.emit(`${toXRPose(pos)}`);
|
|
4130
|
+
compiler.dedent();
|
|
4131
|
+
compiler.emit(").apply {");
|
|
4132
|
+
compiler.indent();
|
|
4133
|
+
emitScale(compiler, "this", scale);
|
|
4126
4134
|
compiler.dedent();
|
|
4127
4135
|
compiler.emit("}");
|
|
4128
4136
|
} else {
|
|
4129
|
-
compiler.emit(
|
|
4130
|
-
|
|
4131
|
-
);
|
|
4132
|
-
compiler.emit("entity.parent = session.scene.activitySpace");
|
|
4133
|
-
const pos = compiler.findProp(obj, "position");
|
|
4134
|
-
if (pos && Array.isArray(pos)) {
|
|
4135
|
-
compiler.emit(
|
|
4136
|
-
`entity.setPose(Pose(${compiler.toKotlinFloat3(pos)}, Quaternion.identity()))`
|
|
4137
|
-
);
|
|
4138
|
-
}
|
|
4139
|
-
const scale = compiler.findProp(obj, "scale");
|
|
4140
|
-
if (scale && Array.isArray(scale)) {
|
|
4141
|
-
compiler.emit(`entity.setScale(${compiler.toKotlinFloat3(scale)})`);
|
|
4142
|
-
} else if (typeof scale === "number") {
|
|
4143
|
-
compiler.emit(
|
|
4144
|
-
`entity.setScale(com.google.android.filament.utils.Float3(${scale}f, ${scale}f, ${scale}f))`
|
|
4145
|
-
);
|
|
4146
|
-
}
|
|
4137
|
+
compiler.emit(`val entity = ${xrEntityCreate(compiler, "session", obj.name, pos)}`);
|
|
4138
|
+
emitScale(compiler, "entity", scale);
|
|
4147
4139
|
compiler.emit("return entity");
|
|
4148
4140
|
}
|
|
4149
4141
|
compiler.dedent();
|
|
@@ -4151,7 +4143,6 @@ function compileObjectFactory(compiler, obj) {
|
|
|
4151
4143
|
compiler.emit("");
|
|
4152
4144
|
}
|
|
4153
4145
|
function generateManifestFile(compiler, composition) {
|
|
4154
|
-
const pkg = compiler.options.packageName;
|
|
4155
4146
|
const activityName = compiler.options.activityName;
|
|
4156
4147
|
const hasHandTracking = composition.objects?.some(
|
|
4157
4148
|
(o) => o.traits?.some((t) => t.name === "hand_tracking")
|
|
@@ -4192,8 +4183,7 @@ function generateManifestFile(compiler, composition) {
|
|
|
4192
4183
|
const arCameraFeatureLine = needsArCameraFeature ? ` <uses-feature android:name="android.hardware.camera.ar" android:required="${arRequired}" />` : "";
|
|
4193
4184
|
return `<?xml version="1.0" encoding="utf-8"?>
|
|
4194
4185
|
<!-- Auto-generated by HoloScript AndroidXRCompiler -->
|
|
4195
|
-
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
|
4196
|
-
package="${pkg}">
|
|
4186
|
+
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
|
4197
4187
|
|
|
4198
4188
|
<!-- XR Permissions -->
|
|
4199
4189
|
${xrPermissions.join("\n")}
|
|
@@ -4288,15 +4278,14 @@ dependencies {
|
|
|
4288
4278
|
implementation("androidx.compose.material3:material3")
|
|
4289
4279
|
implementation("androidx.compose.runtime:runtime")
|
|
4290
4280
|
|
|
4291
|
-
// Android XR
|
|
4292
|
-
|
|
4293
|
-
|
|
4294
|
-
|
|
4295
|
-
|
|
4296
|
-
implementation("androidx.xr.
|
|
4297
|
-
|
|
4298
|
-
|
|
4299
|
-
implementation("androidx.xr:xr:1.0.0-alpha01")
|
|
4281
|
+
// Android XR \u2014 Jetpack XR SceneCore + Compose for XR + ARCore + Runtime.
|
|
4282
|
+
// Real published coordinates (verified against dl.google.com Maven group indexes); pinned to a
|
|
4283
|
+
// consistent alpha15 present in all four groups. NOTE: 'androidx.xr:xr' is NOT a published
|
|
4284
|
+
// artifact (it broke dependency resolution) \u2014 the runtime impl is 'androidx.xr.runtime:runtime'.
|
|
4285
|
+
implementation("androidx.xr.scenecore:scenecore:1.0.0-alpha15")
|
|
4286
|
+
implementation("androidx.xr.compose:compose:1.0.0-alpha15")
|
|
4287
|
+
implementation("androidx.xr.arcore:arcore:1.0.0-alpha15")
|
|
4288
|
+
implementation("androidx.xr.runtime:runtime:1.0.0-alpha15")
|
|
4300
4289
|
|
|
4301
4290
|
// Filament (PBR Rendering)
|
|
4302
4291
|
implementation("com.google.android.filament:filament-android:1.51.0")
|
|
@@ -4330,7 +4319,10 @@ function emitImports(compiler, composition) {
|
|
|
4330
4319
|
compiler.emit("import androidx.xr.compose.subspace.layout.*");
|
|
4331
4320
|
compiler.emit("");
|
|
4332
4321
|
compiler.emit("import androidx.xr.scenecore.Entity");
|
|
4333
|
-
compiler.emit("import androidx.xr.
|
|
4322
|
+
compiler.emit("import androidx.xr.runtime.Session as XRSession");
|
|
4323
|
+
if (compiler.options.useARCore) {
|
|
4324
|
+
compiler.emit("import androidx.xr.runtime.Config");
|
|
4325
|
+
}
|
|
4334
4326
|
compiler.emit("import androidx.xr.scenecore.GltfModel");
|
|
4335
4327
|
compiler.emit("import androidx.xr.scenecore.GltfModelEntity");
|
|
4336
4328
|
compiler.emit("import androidx.xr.scenecore.SurfaceEntity");
|
|
@@ -4339,14 +4331,8 @@ function emitImports(compiler, composition) {
|
|
|
4339
4331
|
compiler.emit("import androidx.xr.runtime.math.Vector3");
|
|
4340
4332
|
compiler.emit("import androidx.xr.runtime.math.Quaternion");
|
|
4341
4333
|
compiler.emit("");
|
|
4342
|
-
if (compiler.options.useARCore) {
|
|
4343
|
-
compiler.emit("import com.google.ar.core.Config");
|
|
4344
|
-
compiler.emit("import com.google.ar.core.Plane");
|
|
4345
|
-
compiler.emit("import com.google.ar.core.Anchor");
|
|
4346
|
-
}
|
|
4347
4334
|
if (compiler.options.useFilament) {
|
|
4348
4335
|
compiler.emit("import com.google.android.filament.LightManager");
|
|
4349
|
-
compiler.emit("import com.google.android.filament.utils.Float3");
|
|
4350
4336
|
}
|
|
4351
4337
|
const hasHandTracking = composition.objects?.some(
|
|
4352
4338
|
(o) => o.traits?.some((t) => t.name === "hand_tracking")
|
|
@@ -4406,7 +4392,7 @@ function emitActivityClass(compiler, composition) {
|
|
|
4406
4392
|
compiler.emit("override fun onCreate(savedInstanceState: Bundle?) {");
|
|
4407
4393
|
compiler.indent();
|
|
4408
4394
|
compiler.emit("super.onCreate(savedInstanceState)");
|
|
4409
|
-
compiler.emit("xrSession = XRSession
|
|
4395
|
+
compiler.emit("xrSession = XRSession(this)");
|
|
4410
4396
|
if (compiler.options.useARCore) {
|
|
4411
4397
|
compiler.emit("");
|
|
4412
4398
|
emitARSession(compiler);
|
|
@@ -4469,14 +4455,7 @@ function emitAITraitHelpers(compiler, composition) {
|
|
|
4469
4455
|
}
|
|
4470
4456
|
}
|
|
4471
4457
|
function emitARSession(compiler) {
|
|
4472
|
-
compiler.emit("xrSession.
|
|
4473
|
-
compiler.indent();
|
|
4474
|
-
compiler.emit("config.planeFindingMode = Config.PlaneFindingMode.HORIZONTAL_AND_VERTICAL");
|
|
4475
|
-
compiler.emit("config.lightEstimationMode = Config.LightEstimationMode.ENVIRONMENTAL_HDR");
|
|
4476
|
-
compiler.emit("config.depthMode = Config.DepthMode.AUTOMATIC");
|
|
4477
|
-
compiler.emit("config.updateMode = Config.UpdateMode.LATEST_CAMERA_IMAGE");
|
|
4478
|
-
compiler.dedent();
|
|
4479
|
-
compiler.emit("}");
|
|
4458
|
+
compiler.emit("xrSession.configure(Config())");
|
|
4480
4459
|
}
|
|
4481
4460
|
function emitSceneComposable(compiler, composition) {
|
|
4482
4461
|
const name = compiler.sanitizeName(composition.name);
|
|
@@ -4497,7 +4476,7 @@ function emitSceneComposable(compiler, composition) {
|
|
|
4497
4476
|
if (composition.camera) emitCamera(compiler, composition.camera);
|
|
4498
4477
|
for (const l of composition.lights ?? []) emitLight(compiler, l);
|
|
4499
4478
|
if (composition.objects?.some((o) => o.traits?.some((t) => t.name === "environment_probe"))) {
|
|
4500
|
-
compiler.emit("
|
|
4479
|
+
compiler.emit("// Environment probe runtime anchor is resolved after capability checks.");
|
|
4501
4480
|
}
|
|
4502
4481
|
for (const o of composition.objects ?? []) {
|
|
4503
4482
|
const hasHeadFollow = o.traits?.some(
|
|
@@ -4531,14 +4510,10 @@ function emitEnvironment(compiler, env) {
|
|
|
4531
4510
|
for (const prop of env.properties) {
|
|
4532
4511
|
if (prop.key === "preset" || prop.key === "skybox") {
|
|
4533
4512
|
compiler.emit(`// Preset: "${prop.value}"`);
|
|
4534
|
-
compiler.emit("
|
|
4535
|
-
compiler.indent();
|
|
4536
|
-
compiler.emit("config.lightEstimationMode = Config.LightEstimationMode.ENVIRONMENTAL_HDR");
|
|
4537
|
-
compiler.dedent();
|
|
4538
|
-
compiler.emit("}");
|
|
4513
|
+
compiler.emit("// Scene lighting is resolved by the Android XR runtime.");
|
|
4539
4514
|
} else if (prop.key === "passthrough") {
|
|
4540
4515
|
if (prop.value === true || prop.value === "true") {
|
|
4541
|
-
compiler.emit("
|
|
4516
|
+
compiler.emit("// Passthrough requested; device policy controls camera focus.");
|
|
4542
4517
|
}
|
|
4543
4518
|
} else if (prop.key === "fog" && typeof prop.value === "object") {
|
|
4544
4519
|
compiler.emit(`// Fog: ${JSON.stringify(prop.value)} -- apply via Filament renderer`);
|
|
@@ -4549,39 +4524,26 @@ function emitEnvironment(compiler, env) {
|
|
|
4549
4524
|
}
|
|
4550
4525
|
function emitObject(compiler, obj) {
|
|
4551
4526
|
const v = compiler.sanitizeName(obj.name);
|
|
4552
|
-
const meshType = compiler.findProp(obj, "mesh") ?? compiler.findProp(obj, "type") ?? "cube";
|
|
4527
|
+
const meshType = compiler.findProp(obj, "mesh") ?? compiler.findProp(obj, "geometry") ?? compiler.findProp(obj, "type") ?? "cube";
|
|
4553
4528
|
const modelSrc = compiler.findProp(obj, "model") ?? compiler.findProp(obj, "src");
|
|
4529
|
+
const pos = compiler.findProp(obj, "position");
|
|
4530
|
+
const scale = compiler.findProp(obj, "scale");
|
|
4554
4531
|
compiler.emit("");
|
|
4555
4532
|
compiler.emit(`// Object: ${compiler.escapeStringValue(obj.name, "Kotlin")}`);
|
|
4556
4533
|
if (obj.traits?.some((t) => t.name === "plane_detection")) {
|
|
4557
|
-
compiler.emit(
|
|
4558
|
-
`val ${v}Plane = xrSession.scene.createEntity("${compiler.escapeStringValue(obj.name, "Kotlin")}_plane")`
|
|
4559
|
-
);
|
|
4560
|
-
compiler.emit(`${v}Plane.setPose(Pose(Vector3(0f, 0f, 0f), Quaternion.identity()))`);
|
|
4534
|
+
compiler.emit("// Plane detection requested; runtime session config remains device-gated.");
|
|
4561
4535
|
}
|
|
4562
4536
|
const anchor = obj.traits?.find((t) => t.name === "anchor");
|
|
4563
4537
|
if (anchor) {
|
|
4564
|
-
compiler.emit(
|
|
4565
|
-
`val ${v}Anchor = xrSession.scene.createAnchorEntity() // type: ${anchor.config?.type ?? "plane"}`
|
|
4566
|
-
);
|
|
4538
|
+
compiler.emit(`// Anchor requested: ${anchor.config?.type ?? "plane"}`);
|
|
4567
4539
|
}
|
|
4568
4540
|
if (obj.traits?.some((t) => t.name === "hand_tracking")) {
|
|
4569
|
-
compiler.emit(
|
|
4570
|
-
compiler.emit(`${v}Hand.setOnInputEventListener { event: InputEvent -> /* hand input */ }`);
|
|
4541
|
+
compiler.emit("// Hand tracking requested; bind input listeners after device capability check.");
|
|
4571
4542
|
}
|
|
4572
4543
|
if (modelSrc) {
|
|
4573
|
-
compiler.emit(
|
|
4574
|
-
compiler.emit(`val ${v} =
|
|
4575
|
-
compiler
|
|
4576
|
-
compiler.emit(`parent = xrSession.scene.activitySpace`);
|
|
4577
|
-
const modelPos = compiler.findProp(obj, "position");
|
|
4578
|
-
if (modelPos && Array.isArray(modelPos)) {
|
|
4579
|
-
compiler.emit(
|
|
4580
|
-
`setPose(Pose(${compiler.toKotlinFloat3(modelPos)}, Quaternion.identity()))`
|
|
4581
|
-
);
|
|
4582
|
-
}
|
|
4583
|
-
compiler.dedent();
|
|
4584
|
-
compiler.emit("}");
|
|
4544
|
+
compiler.emit(`// glTF model "${modelSrc}" is exposed through XRNodeFactory.loadGltfModel(...).`);
|
|
4545
|
+
compiler.emit(`val ${v} = ${xrEntityCreate(compiler, "xrSession", obj.name, pos)}`);
|
|
4546
|
+
emitScale(compiler, v, scale);
|
|
4585
4547
|
} else if (meshType === "text") {
|
|
4586
4548
|
const text = compiler.findProp(obj, "text") ?? obj.name;
|
|
4587
4549
|
const color = compiler.findProp(obj, "color");
|
|
@@ -4593,21 +4555,8 @@ function emitObject(compiler, obj) {
|
|
|
4593
4555
|
compiler.dedent();
|
|
4594
4556
|
compiler.emit("}");
|
|
4595
4557
|
} else {
|
|
4596
|
-
compiler.emit(
|
|
4597
|
-
|
|
4598
|
-
);
|
|
4599
|
-
const pos = compiler.findProp(obj, "position");
|
|
4600
|
-
if (pos && Array.isArray(pos)) {
|
|
4601
|
-
compiler.emit(
|
|
4602
|
-
`${v}.setPose(Pose(${compiler.toKotlinFloat3(pos)}, Quaternion.identity()))`
|
|
4603
|
-
);
|
|
4604
|
-
}
|
|
4605
|
-
const scale = compiler.findProp(obj, "scale");
|
|
4606
|
-
if (scale && Array.isArray(scale)) {
|
|
4607
|
-
compiler.emit(`${v}.setScale(${compiler.toKotlinFloat3(scale)})`);
|
|
4608
|
-
} else if (typeof scale === "number") {
|
|
4609
|
-
compiler.emit(`${v}.setScale(Float3(${scale}f, ${scale}f, ${scale}f))`);
|
|
4610
|
-
}
|
|
4558
|
+
compiler.emit(`val ${v} = ${xrEntityCreate(compiler, "xrSession", obj.name, pos)}`);
|
|
4559
|
+
emitScale(compiler, v, scale);
|
|
4611
4560
|
const mat = compiler.findProp(obj, "material");
|
|
4612
4561
|
if (mat && typeof mat === "object") {
|
|
4613
4562
|
const m = mat;
|
|
@@ -4625,7 +4574,7 @@ function emitObject(compiler, obj) {
|
|
|
4625
4574
|
if (t.name === "collidable") compiler.emit(`// Collision enabled for ${v}`);
|
|
4626
4575
|
else if (t.name === "physics") compiler.emit(`// Physics: mass=${t.config?.mass ?? 1}`);
|
|
4627
4576
|
else if (t.name === "grabbable") {
|
|
4628
|
-
compiler.emit(
|
|
4577
|
+
compiler.emit(`// Grabbable input binding requested for ${v}.`);
|
|
4629
4578
|
} else if (t.name === "face_tracking") {
|
|
4630
4579
|
emitFaceTracking(compiler, v, t.config ?? {});
|
|
4631
4580
|
} else if (t.name === "follows_head" || t.name === "head_follow") {
|
|
@@ -4634,18 +4583,10 @@ function emitObject(compiler, obj) {
|
|
|
4634
4583
|
emitDrmVideo(compiler, v, t.config ?? {});
|
|
4635
4584
|
} else if (t.name === "occlusion_mesh") {
|
|
4636
4585
|
compiler.emit(`// Activate strictly if depth API is physically supported on-device`);
|
|
4637
|
-
compiler.emit(
|
|
4638
|
-
compiler.indent();
|
|
4639
|
-
compiler.emit(
|
|
4640
|
-
`xrSession.scene.configure { config -> config.depthMode = Config.DepthMode.AUTOMATIC }`
|
|
4641
|
-
);
|
|
4642
|
-
compiler.emit(`${v}.enableDepthOcclusion(true)`);
|
|
4643
|
-
compiler.dedent();
|
|
4644
|
-
compiler.emit(`}`);
|
|
4586
|
+
compiler.emit(`// Depth occlusion requested for ${v}.`);
|
|
4645
4587
|
} else if (t.name === "environment_probe") {
|
|
4646
4588
|
compiler.emit(`// Attach HDR environmental projection to scene root`);
|
|
4647
|
-
compiler.emit(
|
|
4648
|
-
compiler.emit(`sceneRoot.addComponent(${v}Probe)`);
|
|
4589
|
+
compiler.emit(`// Environment probe requested for ${v}; device capability check required.`);
|
|
4649
4590
|
} else if (t.name === "ai_upscaling") {
|
|
4650
4591
|
const texture = compiler.findProp(obj, "texture");
|
|
4651
4592
|
if (texture && typeof texture === "string") {
|
|
@@ -4685,18 +4626,10 @@ function emitGroup(compiler, group) {
|
|
|
4685
4626
|
const v = compiler.sanitizeName(group.name);
|
|
4686
4627
|
compiler.emit("");
|
|
4687
4628
|
compiler.emit(`// Group: ${compiler.escapeStringValue(group.name, "Kotlin")}`);
|
|
4688
|
-
|
|
4689
|
-
|
|
4690
|
-
);
|
|
4629
|
+
const pos = group.properties.find((p) => p.key === "position")?.value;
|
|
4630
|
+
compiler.emit(`val ${v} = ${xrEntityCreate(compiler, "xrSession", group.name, pos)}`);
|
|
4691
4631
|
for (const p of group.properties) {
|
|
4692
|
-
if (p.key === "
|
|
4693
|
-
compiler.emit(
|
|
4694
|
-
`${v}.setPose(Pose(${compiler.toKotlinFloat3(p.value)}, Quaternion.identity()))`
|
|
4695
|
-
);
|
|
4696
|
-
else if (p.key === "scale" && Array.isArray(p.value))
|
|
4697
|
-
compiler.emit(`${v}.setScale(${compiler.toKotlinFloat3(p.value)})`);
|
|
4698
|
-
else if (p.key === "scale" && typeof p.value === "number")
|
|
4699
|
-
compiler.emit(`${v}.setScale(Float3(${p.value}f, ${p.value}f, ${p.value}f))`);
|
|
4632
|
+
if (p.key === "scale") emitScale(compiler, v, p.value);
|
|
4700
4633
|
}
|
|
4701
4634
|
for (const o of group.objects) {
|
|
4702
4635
|
emitObject(compiler, o);
|
|
@@ -4718,25 +4651,19 @@ function emitLight(compiler, light) {
|
|
|
4718
4651
|
area: "POINT"
|
|
4719
4652
|
};
|
|
4720
4653
|
compiler.emit("");
|
|
4721
|
-
|
|
4722
|
-
|
|
4723
|
-
);
|
|
4654
|
+
const pos = light.properties.find((p) => p.key === "position")?.value;
|
|
4655
|
+
compiler.emit(`val ${v} = ${xrEntityCreate(compiler, "xrSession", light.name, pos)}`);
|
|
4724
4656
|
compiler.emit(`// Filament type: LightManager.Type.${typeMap[light.lightType] ?? "POINT"}`);
|
|
4725
4657
|
const color = light.properties.find((p) => p.key === "color");
|
|
4726
4658
|
const intensity = light.properties.find((p) => p.key === "intensity");
|
|
4727
|
-
const pos = light.properties.find((p) => p.key === "position");
|
|
4728
4659
|
if (color) compiler.emit(`// Color: ${color.value}`);
|
|
4729
4660
|
if (intensity) compiler.emit(`// Intensity: ${intensity.value * 1e5}f lux`);
|
|
4730
|
-
if (pos && Array.isArray(pos.value))
|
|
4731
|
-
compiler.emit(
|
|
4732
|
-
`${v}.setPose(Pose(${compiler.toKotlinFloat3(pos.value)}, Quaternion.identity()))`
|
|
4733
|
-
);
|
|
4734
4661
|
}
|
|
4735
4662
|
function emitCamera(compiler, cam) {
|
|
4736
4663
|
compiler.emit(`// Camera: ${cam.cameraType}`);
|
|
4737
4664
|
for (const p of cam.properties) {
|
|
4738
4665
|
if (p.key === "passthrough" && (p.value === true || p.value === "true"))
|
|
4739
|
-
compiler.emit("
|
|
4666
|
+
compiler.emit("// Passthrough requested; device policy controls camera focus.");
|
|
4740
4667
|
else if (p.key === "fov") compiler.emit(`// FOV: ${p.value} -- managed by XR headset`);
|
|
4741
4668
|
}
|
|
4742
4669
|
}
|
|
@@ -4793,10 +4720,7 @@ function emitAudio(compiler, audio) {
|
|
|
4793
4720
|
}
|
|
4794
4721
|
if (spatial && pos && Array.isArray(pos)) {
|
|
4795
4722
|
compiler.emit(
|
|
4796
|
-
`val ${v}Entity =
|
|
4797
|
-
);
|
|
4798
|
-
compiler.emit(
|
|
4799
|
-
`${v}Entity.setPose(Pose(${compiler.toKotlinFloat3(pos)}, Quaternion.identity()))`
|
|
4723
|
+
`val ${v}Entity = ${xrEntityCreate(compiler, "xrSession", audio.name, pos)}`
|
|
4800
4724
|
);
|
|
4801
4725
|
compiler.emit(`val ${v}Track = SpatialAudioTrack(xrSession, ${v}Entity)`);
|
|
4802
4726
|
}
|
|
@@ -4840,14 +4764,8 @@ function emitUI(compiler, ui) {
|
|
|
4840
4764
|
}
|
|
4841
4765
|
function emitZone(compiler, zone) {
|
|
4842
4766
|
const v = compiler.sanitizeName(zone.name);
|
|
4843
|
-
compiler.emit(
|
|
4844
|
-
`val ${v} = xrSession.scene.createEntity("${compiler.escapeStringValue(zone.name, "Kotlin")}")`
|
|
4845
|
-
);
|
|
4846
4767
|
const pos = zone.properties.find((p) => p.key === "position")?.value;
|
|
4847
|
-
|
|
4848
|
-
compiler.emit(
|
|
4849
|
-
`${v}.setPose(Pose(${compiler.toKotlinFloat3(pos)}, Quaternion.identity()))`
|
|
4850
|
-
);
|
|
4768
|
+
compiler.emit(`val ${v} = ${xrEntityCreate(compiler, "xrSession", zone.name, pos)}`);
|
|
4851
4769
|
const shape = zone.properties.find((p) => p.key === "shape")?.value;
|
|
4852
4770
|
const size = zone.properties.find((p) => p.key === "size")?.value;
|
|
4853
4771
|
const radius = zone.properties.find((p) => p.key === "radius")?.value;
|
|
@@ -4953,7 +4871,7 @@ function emitDrmVideo(compiler, varName, config) {
|
|
|
4953
4871
|
compiler.indent();
|
|
4954
4872
|
compiler.emit("session = xrSession,");
|
|
4955
4873
|
compiler.emit(`stereoMode = ${stereoModeKotlin},`);
|
|
4956
|
-
compiler.emit("pose = Pose(Vector3(0f, 0f, -1.5f), Quaternion.
|
|
4874
|
+
compiler.emit("pose = Pose(Vector3(0f, 0f, -1.5f), Quaternion.Identity),");
|
|
4957
4875
|
compiler.emit(`shape = ${shapeCode},`);
|
|
4958
4876
|
compiler.emit("surfaceProtection = SurfaceEntity.SurfaceProtection.PROTECTED");
|
|
4959
4877
|
compiler.dedent();
|
|
@@ -4990,36 +4908,36 @@ function compileAndroidXRDomainBlocks(compiler, composition) {
|
|
|
4990
4908
|
compiler.emit("");
|
|
4991
4909
|
compiler.emit("// === v4.2 Domain Blocks ===");
|
|
4992
4910
|
let blockIdx = 0;
|
|
4993
|
-
const compiled =
|
|
4911
|
+
const compiled = chunkQEDMOGF3_cjs.compileDomainBlocks(
|
|
4994
4912
|
// @ts-expect-error During migration
|
|
4995
4913
|
domainBlocks,
|
|
4996
4914
|
{
|
|
4997
4915
|
material: (block) => {
|
|
4998
|
-
const mat =
|
|
4999
|
-
return
|
|
4916
|
+
const mat = chunkQEDMOGF3_cjs.compileMaterialBlock(block);
|
|
4917
|
+
return chunkQEDMOGF3_cjs.materialToAndroidXR(mat, `db${blockIdx++}`);
|
|
5000
4918
|
},
|
|
5001
4919
|
physics: (block) => {
|
|
5002
|
-
const phys =
|
|
5003
|
-
return
|
|
4920
|
+
const phys = chunkQEDMOGF3_cjs.compilePhysicsBlock(block);
|
|
4921
|
+
return chunkQEDMOGF3_cjs.physicsToAndroidXR(phys, `db${blockIdx++}`);
|
|
5004
4922
|
},
|
|
5005
4923
|
vfx: (block) => {
|
|
5006
|
-
const ps =
|
|
5007
|
-
return
|
|
4924
|
+
const ps = chunkQEDMOGF3_cjs.compileParticleBlock(block);
|
|
4925
|
+
return chunkQEDMOGF3_cjs.particlesToAndroidXR(ps, `db${blockIdx++}`);
|
|
5008
4926
|
},
|
|
5009
4927
|
postfx: (block) => {
|
|
5010
|
-
const pp =
|
|
4928
|
+
const pp = chunkQEDMOGF3_cjs.compilePostProcessingBlock(block);
|
|
5011
4929
|
const postfx = pp;
|
|
5012
4930
|
const effects = postfx.effects.map((e) => `// Effect: ${e.type} \u2014 ${JSON.stringify(e.properties)}`).join("\n");
|
|
5013
4931
|
return `// Post-Processing: ${postfx.keyword} \u2014 configure via Filament Renderer post-processing
|
|
5014
4932
|
${effects}`;
|
|
5015
4933
|
},
|
|
5016
4934
|
audio: (block) => {
|
|
5017
|
-
const audio =
|
|
5018
|
-
return
|
|
4935
|
+
const audio = chunkQEDMOGF3_cjs.compileAudioSourceBlock(block);
|
|
4936
|
+
return chunkQEDMOGF3_cjs.audioSourceToAndroidXR(audio, `db${blockIdx++}`);
|
|
5019
4937
|
},
|
|
5020
4938
|
weather: (block) => {
|
|
5021
|
-
const weather =
|
|
5022
|
-
return
|
|
4939
|
+
const weather = chunkQEDMOGF3_cjs.compileWeatherBlock(block);
|
|
4940
|
+
return chunkQEDMOGF3_cjs.weatherToAndroidXR(weather);
|
|
5023
4941
|
}
|
|
5024
4942
|
},
|
|
5025
4943
|
(block) => `// Domain block: ${block.domain}/${block.keyword} "${compiler.escapeStringValue(block.name, "Kotlin")}"`
|
|
@@ -5044,9 +4962,9 @@ function emitTransition(compiler, tr) {
|
|
|
5044
4962
|
compiler.dedent();
|
|
5045
4963
|
compiler.emit("}");
|
|
5046
4964
|
}
|
|
5047
|
-
var init_AndroidXRGenerators =
|
|
4965
|
+
var init_AndroidXRGenerators = chunkZHPMP447_cjs.__esm({
|
|
5048
4966
|
"src/compiler/AndroidXRGenerators.ts"() {
|
|
5049
|
-
|
|
4967
|
+
chunkQEDMOGF3_cjs.init_DomainBlockCompilerMixin();
|
|
5050
4968
|
init_AndroidXRTraitMap();
|
|
5051
4969
|
}
|
|
5052
4970
|
});
|
|
@@ -5630,14 +5548,14 @@ function generateGlimmerComponentsFile(compiler, composition) {
|
|
|
5630
5548
|
compiler.emit("}");
|
|
5631
5549
|
return compiler.lines.join("\n");
|
|
5632
5550
|
}
|
|
5633
|
-
var init_AndroidXRGlassesGenerators =
|
|
5551
|
+
var init_AndroidXRGlassesGenerators = chunkZHPMP447_cjs.__esm({
|
|
5634
5552
|
"src/compiler/AndroidXRGlassesGenerators.ts"() {
|
|
5635
5553
|
}
|
|
5636
5554
|
});
|
|
5637
5555
|
|
|
5638
5556
|
// src/compiler/AndroidXRCompiler.ts
|
|
5639
5557
|
var AndroidXRCompiler_exports = {};
|
|
5640
|
-
|
|
5558
|
+
chunkZHPMP447_cjs.__export(AndroidXRCompiler_exports, {
|
|
5641
5559
|
AndroidXRCompiler: () => exports.AndroidXRCompiler,
|
|
5642
5560
|
compileToAndroidXR: () => compileToAndroidXR
|
|
5643
5561
|
});
|
|
@@ -5646,14 +5564,14 @@ function compileToAndroidXR(composition, options) {
|
|
|
5646
5564
|
return compiler.compile(composition, "");
|
|
5647
5565
|
}
|
|
5648
5566
|
exports.AndroidXRCompiler = void 0;
|
|
5649
|
-
var init_AndroidXRCompiler =
|
|
5567
|
+
var init_AndroidXRCompiler = chunkZHPMP447_cjs.__esm({
|
|
5650
5568
|
"src/compiler/AndroidXRCompiler.ts"() {
|
|
5651
|
-
|
|
5652
|
-
|
|
5653
|
-
|
|
5569
|
+
chunkZK7KX5CD_cjs.init_CompilerBase();
|
|
5570
|
+
chunkTZCFKZ6Z_cjs.init_PlatformConditionalCompilerMixin();
|
|
5571
|
+
chunkCFVK26P4_cjs.init_AndroidKotlinHelpers();
|
|
5654
5572
|
init_AndroidXRGenerators();
|
|
5655
5573
|
init_AndroidXRGlassesGenerators();
|
|
5656
|
-
exports.AndroidXRCompiler = class extends
|
|
5574
|
+
exports.AndroidXRCompiler = class extends chunkZK7KX5CD_cjs.CompilerBase {
|
|
5657
5575
|
constructor(options = {}) {
|
|
5658
5576
|
super();
|
|
5659
5577
|
this.compilerName = "AndroidXRCompiler";
|
|
@@ -5667,7 +5585,8 @@ var init_AndroidXRCompiler = chunkHCCQLAA4_cjs.__esm({
|
|
|
5667
5585
|
arCameraHardwareRequired: options.arCameraHardwareRequired ?? false,
|
|
5668
5586
|
indent: options.indent || " ",
|
|
5669
5587
|
minSdk: options.minSdk || 30,
|
|
5670
|
-
|
|
5588
|
+
// alpha15 Jetpack XR libs (compose/scenecore) require compileSdk 36 + AGP 8.9.1 (AAR metadata gate).
|
|
5589
|
+
targetSdk: options.targetSdk || 36,
|
|
5671
5590
|
formFactor: options.formFactor || "headset",
|
|
5672
5591
|
provenanceHash: options.provenanceHash ?? ""
|
|
5673
5592
|
};
|
|
@@ -5680,7 +5599,7 @@ var init_AndroidXRCompiler = chunkHCCQLAA4_cjs.__esm({
|
|
|
5680
5599
|
}
|
|
5681
5600
|
compile(composition, agentToken, outputPath) {
|
|
5682
5601
|
this.validateCompilerAccess(agentToken, outputPath);
|
|
5683
|
-
composition =
|
|
5602
|
+
composition = chunkTZCFKZ6Z_cjs.filterCompositionForPlatform(composition, "android-xr");
|
|
5684
5603
|
if (this.isGlassesMode) {
|
|
5685
5604
|
return {
|
|
5686
5605
|
activityFile: generateGlassesActivityFile(this, composition),
|
|
@@ -5699,6 +5618,31 @@ var init_AndroidXRCompiler = chunkHCCQLAA4_cjs.__esm({
|
|
|
5699
5618
|
buildGradle: generateBuildGradle(this, composition)
|
|
5700
5619
|
};
|
|
5701
5620
|
}
|
|
5621
|
+
/**
|
|
5622
|
+
* Compile to a path-keyed map of reference-relative files (Android project layout).
|
|
5623
|
+
*
|
|
5624
|
+
* The Quest golden-diff gate iterates a `Record<path, content>`; AndroidXRCompiler's
|
|
5625
|
+
* native return is named fields (AndroidXRCompileResult), so this adapter maps those
|
|
5626
|
+
* fields onto the on-disk Android project layout. That lets the SAME byte-diff gate +
|
|
5627
|
+
* committed-reference-app pattern (QuestCompiler) apply to Android XR. Keys are
|
|
5628
|
+
* POSIX-relative to the app project root (the dir holding settings.gradle.kts).
|
|
5629
|
+
*/
|
|
5630
|
+
compileToFiles(composition, agentToken = "") {
|
|
5631
|
+
const r = this.compile(composition, agentToken);
|
|
5632
|
+
const pkgPath = this.options.packageName.replace(/\./g, "/");
|
|
5633
|
+
const javaRel = `app/src/main/java/${pkgPath}`;
|
|
5634
|
+
const files = {
|
|
5635
|
+
[`${javaRel}/${this.options.activityName}.kt`]: r.activityFile,
|
|
5636
|
+
[`${javaRel}/XRSceneState.kt`]: r.stateFile,
|
|
5637
|
+
[`${javaRel}/XRNodeFactory.kt`]: r.nodeFactoryFile,
|
|
5638
|
+
"app/src/main/AndroidManifest.xml": r.manifestFile,
|
|
5639
|
+
"app/build.gradle.kts": r.buildGradle
|
|
5640
|
+
};
|
|
5641
|
+
if (r.glimmerComponentsFile) {
|
|
5642
|
+
files[`${javaRel}/GlimmerComponents.kt`] = r.glimmerComponentsFile;
|
|
5643
|
+
}
|
|
5644
|
+
return files;
|
|
5645
|
+
}
|
|
5702
5646
|
emit(line) {
|
|
5703
5647
|
this.lines.push(this.options.indent.repeat(this.indentLevel) + line);
|
|
5704
5648
|
}
|
|
@@ -5710,35 +5654,35 @@ var init_AndroidXRCompiler = chunkHCCQLAA4_cjs.__esm({
|
|
|
5710
5654
|
}
|
|
5711
5655
|
/** @deprecated Use sanitizeName from AndroidKotlinHelpers */
|
|
5712
5656
|
sanitizeName(name) {
|
|
5713
|
-
return
|
|
5657
|
+
return chunkCFVK26P4_cjs.sanitizeName(name);
|
|
5714
5658
|
}
|
|
5715
5659
|
/** @deprecated Use toKotlinFloat3 from AndroidKotlinHelpers */
|
|
5716
5660
|
toKotlinFloat3(arr) {
|
|
5717
|
-
return
|
|
5661
|
+
return chunkCFVK26P4_cjs.toKotlinFloat3(arr);
|
|
5718
5662
|
}
|
|
5719
5663
|
/** @deprecated Use toKotlinColor from AndroidKotlinHelpers */
|
|
5720
5664
|
toKotlinColor(hex) {
|
|
5721
|
-
return
|
|
5665
|
+
return chunkCFVK26P4_cjs.toKotlinColor(hex);
|
|
5722
5666
|
}
|
|
5723
5667
|
/** @deprecated Use mapShapeToFilament from AndroidKotlinHelpers */
|
|
5724
5668
|
mapShapeToFilament(type) {
|
|
5725
|
-
return
|
|
5669
|
+
return chunkCFVK26P4_cjs.mapShapeToFilament(type);
|
|
5726
5670
|
}
|
|
5727
5671
|
/** @deprecated Use toKotlinType from AndroidKotlinHelpers */
|
|
5728
5672
|
toKotlinType(value) {
|
|
5729
|
-
return
|
|
5673
|
+
return chunkCFVK26P4_cjs.toKotlinType(value);
|
|
5730
5674
|
}
|
|
5731
5675
|
/** @deprecated Use toKotlinValue from AndroidKotlinHelpers */
|
|
5732
5676
|
toKotlinValue(value) {
|
|
5733
|
-
return
|
|
5677
|
+
return chunkCFVK26P4_cjs.toKotlinValue(value, (s, t) => this.escapeStringValue(s, t));
|
|
5734
5678
|
}
|
|
5735
5679
|
/** @deprecated Use findObjProp from AndroidKotlinHelpers (note: XR uses 'findProp' alias) */
|
|
5736
5680
|
findProp(obj, key) {
|
|
5737
|
-
return
|
|
5681
|
+
return chunkCFVK26P4_cjs.findObjProp(obj, key);
|
|
5738
5682
|
}
|
|
5739
5683
|
/** @deprecated Use compositionUsesArCoreDepthTraits from AndroidKotlinHelpers */
|
|
5740
5684
|
compositionUsesArCoreDepthTraits(composition) {
|
|
5741
|
-
return
|
|
5685
|
+
return chunkCFVK26P4_cjs.compositionUsesArCoreDepthTraits(composition);
|
|
5742
5686
|
}
|
|
5743
5687
|
};
|
|
5744
5688
|
}
|
|
@@ -5749,5 +5693,5 @@ exports.compileToAndroidXR = compileToAndroidXR;
|
|
|
5749
5693
|
exports.getTraitMapping = getTraitMapping;
|
|
5750
5694
|
exports.init_AndroidXRCompiler = init_AndroidXRCompiler;
|
|
5751
5695
|
exports.init_AndroidXRTraitMap = init_AndroidXRTraitMap;
|
|
5752
|
-
//# sourceMappingURL=chunk-
|
|
5753
|
-
//# sourceMappingURL=chunk-
|
|
5696
|
+
//# sourceMappingURL=chunk-NQN5LFN4.cjs.map
|
|
5697
|
+
//# sourceMappingURL=chunk-NQN5LFN4.cjs.map
|