@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,7 +1,7 @@
|
|
|
1
|
-
import { init_traitDocs, getTraitDoc, formatTraitDocCompact } from './chunk-
|
|
2
|
-
import { init_AgentRiskRegistry, getAgentRiskRegistry, TIER_COMPOSITION_RISK_CAP, isDangerousOperation } from './chunk-
|
|
3
|
-
import { init_safeJsonParse, safeJsonParse, readJson } from './chunk-
|
|
4
|
-
import { __esm } from './chunk-
|
|
1
|
+
import { init_traitDocs, getTraitDoc, formatTraitDocCompact } from './chunk-B3CWTCK2.js';
|
|
2
|
+
import { init_AgentRiskRegistry, getAgentRiskRegistry, TIER_COMPOSITION_RISK_CAP, isDangerousOperation } from './chunk-5CURIYGT.js';
|
|
3
|
+
import { init_safeJsonParse, safeJsonParse, readJson } from './chunk-RAN3ECAS.js';
|
|
4
|
+
import { __esm } from './chunk-W4GABFCR.js';
|
|
5
5
|
import * as crypto3 from 'crypto';
|
|
6
6
|
import { createHash } from 'crypto';
|
|
7
7
|
import { promisify } from 'util';
|
|
@@ -3878,7 +3878,9 @@ var init_ANSNamespace = __esm({
|
|
|
3878
3878
|
AI: "ai",
|
|
3879
3879
|
NEUROMORPHIC: "neuromorphic",
|
|
3880
3880
|
META: "meta",
|
|
3881
|
-
MIXIN: "mixin"
|
|
3881
|
+
MIXIN: "mixin",
|
|
3882
|
+
EDGE: "edge",
|
|
3883
|
+
WEB2D: "web2d"
|
|
3882
3884
|
};
|
|
3883
3885
|
ANSRiskTier = {
|
|
3884
3886
|
STANDARD: "STANDARD",
|
|
@@ -3900,7 +3902,9 @@ var init_ANSNamespace = __esm({
|
|
|
3900
3902
|
[ANSDomain.AI]: ANSRiskTier.HIGH,
|
|
3901
3903
|
[ANSDomain.NEUROMORPHIC]: ANSRiskTier.HIGH,
|
|
3902
3904
|
[ANSDomain.META]: ANSRiskTier.STANDARD,
|
|
3903
|
-
[ANSDomain.MIXIN]: ANSRiskTier.STANDARD
|
|
3905
|
+
[ANSDomain.MIXIN]: ANSRiskTier.STANDARD,
|
|
3906
|
+
[ANSDomain.EDGE]: ANSRiskTier.HIGH,
|
|
3907
|
+
[ANSDomain.WEB2D]: ANSRiskTier.STANDARD
|
|
3904
3908
|
});
|
|
3905
3909
|
ANSCapabilityPath = {
|
|
3906
3910
|
// ── gamedev ──────────────────────────────────────────────────────────
|
|
@@ -3914,23 +3918,21 @@ var init_ANSNamespace = __esm({
|
|
|
3914
3918
|
OPENXR: "/compile/xr/openxr",
|
|
3915
3919
|
OPENXR_SPATIAL_ENTITIES: "/compile/xr/openxr-spatial-entities",
|
|
3916
3920
|
VISIONOS: "/compile/xr/visionos",
|
|
3917
|
-
AR:
|
|
3921
|
+
// AR: retired as apex-poison 2026-06-17
|
|
3918
3922
|
ANDROID_XR: "/compile/xr/android-xr",
|
|
3923
|
+
QUEST: "/compile/xr/quest",
|
|
3919
3924
|
AI_GLASSES: "/compile/xr/ai-glasses",
|
|
3920
3925
|
QUILT: "/compile/xr/quilt",
|
|
3921
3926
|
MV_HEVC: "/compile/xr/mv-hevc",
|
|
3922
3927
|
// ── mobile ───────────────────────────────────────────────────────────
|
|
3923
3928
|
ANDROID: "/compile/mobile/android",
|
|
3924
3929
|
IOS: "/compile/mobile/ios",
|
|
3925
|
-
// ── web3d
|
|
3926
|
-
BABYLON: "/compile/web3d/babylon",
|
|
3930
|
+
// ── web3d (babylon, r3f, playcanvas, threejs retired as apex-poison 2026-06-17) ──
|
|
3927
3931
|
WEBGPU: "/compile/web3d/webgpu",
|
|
3928
|
-
R3F: "/compile/web3d/r3f",
|
|
3929
|
-
PLAYCANVAS: "/compile/web3d/playcanvas",
|
|
3930
|
-
THREEJS: "/compile/web3d/threejs",
|
|
3931
3932
|
// ── runtime ──────────────────────────────────────────────────────────
|
|
3932
3933
|
WASM: "/compile/runtime/wasm",
|
|
3933
3934
|
NODE_SERVICE: "/compile/runtime/node-service",
|
|
3935
|
+
SDK: "/compile/runtime/sdk",
|
|
3934
3936
|
NEXTJS_API: "/compile/runtime/nextjs-api",
|
|
3935
3937
|
// ── shader ───────────────────────────────────────────────────────────
|
|
3936
3938
|
TSL: "/compile/shader/tsl",
|
|
@@ -3945,11 +3947,14 @@ var init_ANSNamespace = __esm({
|
|
|
3945
3947
|
DTDL: "/compile/iot/dtdl",
|
|
3946
3948
|
// ── web3 ─────────────────────────────────────────────────────────────
|
|
3947
3949
|
NFT_MARKETPLACE: "/compile/web3/nft-marketplace",
|
|
3948
|
-
// ── ai
|
|
3950
|
+
// ── ai (vrr retired as apex-poison 2026-06-17) ───────────────────────
|
|
3949
3951
|
SCM: "/compile/ai/scm",
|
|
3950
|
-
VRR: "/compile/ai/vrr",
|
|
3951
3952
|
A2A_AGENT_CARD: "/compile/ai/a2a-agent-card",
|
|
3952
3953
|
AGENT_INFERENCE: "/compile/ai/agent-inference",
|
|
3954
|
+
OMNIGENT_AGENT_YAML: "/compile/ai/omnigent-agent-yaml",
|
|
3955
|
+
DAIMON_SEED: "/compile/ai/daimon-seed",
|
|
3956
|
+
MCP_CONFIG: "/compile/ai/mcp-config",
|
|
3957
|
+
MCP_SERVER: "/compile/ai/mcp-server",
|
|
3953
3958
|
// ── neuromorphic ─────────────────────────────────────────────────────
|
|
3954
3959
|
NIR: "/compile/neuromorphic/nir",
|
|
3955
3960
|
// ── meta ─────────────────────────────────────────────────────────────
|
|
@@ -3959,8 +3964,12 @@ var init_ANSNamespace = __esm({
|
|
|
3959
3964
|
TRAIT_COMPOSITION: "/compile/meta/trait-composition",
|
|
3960
3965
|
// ── mixin ────────────────────────────────────────────────────────────
|
|
3961
3966
|
DOMAIN_BLOCK: "/compile/mixin/domain-block",
|
|
3962
|
-
// ── studio
|
|
3963
|
-
CODE_EDITOR: "/compile/
|
|
3967
|
+
// ── studio (meta domain) ─────────────────────────────────────────────
|
|
3968
|
+
CODE_EDITOR: "/compile/meta/code-editor",
|
|
3969
|
+
// ── web2d ────────────────────────────────────────────────────────────
|
|
3970
|
+
SVG: "/compile/web2d/svg",
|
|
3971
|
+
// ── edge ─────────────────────────────────────────────────────────────
|
|
3972
|
+
EDGE: "/compile/edge/edge"
|
|
3964
3973
|
};
|
|
3965
3974
|
COMPILER_DOMAIN_MAP = {
|
|
3966
3975
|
// gamedev
|
|
@@ -3970,27 +3979,24 @@ var init_ANSNamespace = __esm({
|
|
|
3970
3979
|
"canvas2d-game": ANSDomain.GAMEDEV,
|
|
3971
3980
|
// social-vr
|
|
3972
3981
|
vrchat: ANSDomain.SOCIAL_VR,
|
|
3973
|
-
// xr
|
|
3982
|
+
// xr (ar retired as apex-poison 2026-06-17)
|
|
3974
3983
|
openxr: ANSDomain.XR,
|
|
3975
3984
|
"openxr-spatial-entities": ANSDomain.XR,
|
|
3976
3985
|
visionos: ANSDomain.XR,
|
|
3977
|
-
ar: ANSDomain.XR,
|
|
3978
3986
|
"android-xr": ANSDomain.XR,
|
|
3987
|
+
quest: ANSDomain.XR,
|
|
3979
3988
|
"ai-glasses": ANSDomain.XR,
|
|
3980
3989
|
quilt: ANSDomain.XR,
|
|
3981
3990
|
"mv-hevc": ANSDomain.XR,
|
|
3982
3991
|
// mobile
|
|
3983
3992
|
android: ANSDomain.MOBILE,
|
|
3984
3993
|
ios: ANSDomain.MOBILE,
|
|
3985
|
-
// web3d
|
|
3986
|
-
babylon: ANSDomain.WEB3D,
|
|
3994
|
+
// web3d (babylon, r3f, playcanvas, threejs retired as apex-poison 2026-06-17)
|
|
3987
3995
|
webgpu: ANSDomain.WEB3D,
|
|
3988
|
-
r3f: ANSDomain.WEB3D,
|
|
3989
|
-
playcanvas: ANSDomain.WEB3D,
|
|
3990
|
-
threejs: ANSDomain.WEB3D,
|
|
3991
3996
|
// runtime
|
|
3992
3997
|
wasm: ANSDomain.RUNTIME,
|
|
3993
3998
|
"node-service": ANSDomain.RUNTIME,
|
|
3999
|
+
sdk: ANSDomain.RUNTIME,
|
|
3994
4000
|
"nextjs-api": ANSDomain.RUNTIME,
|
|
3995
4001
|
// shader
|
|
3996
4002
|
tsl: ANSDomain.SHADER,
|
|
@@ -4005,11 +4011,14 @@ var init_ANSNamespace = __esm({
|
|
|
4005
4011
|
dtdl: ANSDomain.IOT,
|
|
4006
4012
|
// web3
|
|
4007
4013
|
"nft-marketplace": ANSDomain.WEB3,
|
|
4008
|
-
// ai
|
|
4014
|
+
// ai (vrr retired as apex-poison 2026-06-17)
|
|
4009
4015
|
scm: ANSDomain.AI,
|
|
4010
|
-
vrr: ANSDomain.AI,
|
|
4011
4016
|
"a2a-agent-card": ANSDomain.AI,
|
|
4012
4017
|
"agent-inference": ANSDomain.AI,
|
|
4018
|
+
"omnigent-agent-yaml": ANSDomain.AI,
|
|
4019
|
+
"daimon-seed": ANSDomain.AI,
|
|
4020
|
+
"mcp-config": ANSDomain.AI,
|
|
4021
|
+
"mcp-server": ANSDomain.AI,
|
|
4013
4022
|
// neuromorphic
|
|
4014
4023
|
nir: ANSDomain.NEUROMORPHIC,
|
|
4015
4024
|
// meta
|
|
@@ -4020,7 +4029,11 @@ var init_ANSNamespace = __esm({
|
|
|
4020
4029
|
// mixin
|
|
4021
4030
|
"domain-block": ANSDomain.MIXIN,
|
|
4022
4031
|
// studio
|
|
4023
|
-
"code-editor": ANSDomain.META
|
|
4032
|
+
"code-editor": ANSDomain.META,
|
|
4033
|
+
// web2d — sovereign 2D vector output; no third-party engine required
|
|
4034
|
+
svg: ANSDomain.WEB2D,
|
|
4035
|
+
// edge — Ollama-capable edge device deployment bundle
|
|
4036
|
+
edge: ANSDomain.EDGE
|
|
4024
4037
|
};
|
|
4025
4038
|
COMPILER_ANS_MAP = {
|
|
4026
4039
|
unity: ANSCapabilityPath.UNITY,
|
|
@@ -4031,20 +4044,19 @@ var init_ANSNamespace = __esm({
|
|
|
4031
4044
|
openxr: ANSCapabilityPath.OPENXR,
|
|
4032
4045
|
"openxr-spatial-entities": ANSCapabilityPath.OPENXR_SPATIAL_ENTITIES,
|
|
4033
4046
|
visionos: ANSCapabilityPath.VISIONOS,
|
|
4034
|
-
ar:
|
|
4047
|
+
// ar: retired as apex-poison 2026-06-17
|
|
4035
4048
|
"android-xr": ANSCapabilityPath.ANDROID_XR,
|
|
4049
|
+
quest: ANSCapabilityPath.QUEST,
|
|
4036
4050
|
"ai-glasses": ANSCapabilityPath.AI_GLASSES,
|
|
4037
4051
|
quilt: ANSCapabilityPath.QUILT,
|
|
4038
4052
|
"mv-hevc": ANSCapabilityPath.MV_HEVC,
|
|
4039
4053
|
android: ANSCapabilityPath.ANDROID,
|
|
4040
4054
|
ios: ANSCapabilityPath.IOS,
|
|
4041
|
-
babylon:
|
|
4055
|
+
// babylon, r3f, playcanvas, threejs: retired as apex-poison 2026-06-17
|
|
4042
4056
|
webgpu: ANSCapabilityPath.WEBGPU,
|
|
4043
|
-
r3f: ANSCapabilityPath.R3F,
|
|
4044
|
-
playcanvas: ANSCapabilityPath.PLAYCANVAS,
|
|
4045
|
-
threejs: ANSCapabilityPath.THREEJS,
|
|
4046
4057
|
wasm: ANSCapabilityPath.WASM,
|
|
4047
4058
|
"node-service": ANSCapabilityPath.NODE_SERVICE,
|
|
4059
|
+
sdk: ANSCapabilityPath.SDK,
|
|
4048
4060
|
"nextjs-api": ANSCapabilityPath.NEXTJS_API,
|
|
4049
4061
|
tsl: ANSCapabilityPath.TSL,
|
|
4050
4062
|
urdf: ANSCapabilityPath.URDF,
|
|
@@ -4055,16 +4067,22 @@ var init_ANSNamespace = __esm({
|
|
|
4055
4067
|
dtdl: ANSCapabilityPath.DTDL,
|
|
4056
4068
|
"nft-marketplace": ANSCapabilityPath.NFT_MARKETPLACE,
|
|
4057
4069
|
scm: ANSCapabilityPath.SCM,
|
|
4058
|
-
vrr:
|
|
4070
|
+
// vrr: retired as apex-poison 2026-06-17
|
|
4059
4071
|
"a2a-agent-card": ANSCapabilityPath.A2A_AGENT_CARD,
|
|
4060
4072
|
"agent-inference": ANSCapabilityPath.AGENT_INFERENCE,
|
|
4073
|
+
"omnigent-agent-yaml": ANSCapabilityPath.OMNIGENT_AGENT_YAML,
|
|
4074
|
+
"daimon-seed": ANSCapabilityPath.DAIMON_SEED,
|
|
4075
|
+
"mcp-config": ANSCapabilityPath.MCP_CONFIG,
|
|
4076
|
+
"mcp-server": ANSCapabilityPath.MCP_SERVER,
|
|
4061
4077
|
nir: ANSCapabilityPath.NIR,
|
|
4062
4078
|
"multi-layer": ANSCapabilityPath.MULTI_LAYER,
|
|
4063
4079
|
incremental: ANSCapabilityPath.INCREMENTAL,
|
|
4064
4080
|
state: ANSCapabilityPath.STATE,
|
|
4065
4081
|
"trait-composition": ANSCapabilityPath.TRAIT_COMPOSITION,
|
|
4066
4082
|
"domain-block": ANSCapabilityPath.DOMAIN_BLOCK,
|
|
4067
|
-
"code-editor": ANSCapabilityPath.CODE_EDITOR
|
|
4083
|
+
"code-editor": ANSCapabilityPath.CODE_EDITOR,
|
|
4084
|
+
svg: ANSCapabilityPath.SVG,
|
|
4085
|
+
edge: ANSCapabilityPath.EDGE
|
|
4068
4086
|
};
|
|
4069
4087
|
ALL_COMPILER_NAMES = Object.keys(
|
|
4070
4088
|
COMPILER_DOMAIN_MAP
|
|
@@ -5476,16 +5494,13 @@ var init_CompilerBase = __esm({
|
|
|
5476
5494
|
OpenXRCompiler: "openxr",
|
|
5477
5495
|
OpenXRSpatialEntitiesCompiler: "openxr-spatial-entities",
|
|
5478
5496
|
VisionOSCompiler: "visionos",
|
|
5479
|
-
ARCompiler: "ar",
|
|
5480
5497
|
AndroidXRCompiler: "android-xr",
|
|
5498
|
+
QuestCompiler: "quest",
|
|
5481
5499
|
AIGlassesCompiler: "ai-glasses",
|
|
5482
5500
|
AndroidCompiler: "android",
|
|
5483
5501
|
IOSCompiler: "ios",
|
|
5484
|
-
BabylonCompiler
|
|
5502
|
+
// ARCompiler, BabylonCompiler, PlayCanvasCompiler, ThreeJSCompiler, R3FCompiler — retired (apex-poison, 2026-06-17)
|
|
5485
5503
|
WebGPUCompiler: "webgpu",
|
|
5486
|
-
R3FCompiler: "r3f",
|
|
5487
|
-
PlayCanvasCompiler: "playcanvas",
|
|
5488
|
-
ThreeJSCompiler: "threejs",
|
|
5489
5504
|
WASMCompiler: "wasm",
|
|
5490
5505
|
TSLCompiler: "tsl",
|
|
5491
5506
|
URDFCompiler: "urdf",
|
|
@@ -5496,7 +5511,7 @@ var init_CompilerBase = __esm({
|
|
|
5496
5511
|
DTDLCompiler: "dtdl",
|
|
5497
5512
|
NFTMarketplaceCompiler: "nft-marketplace",
|
|
5498
5513
|
SCMCompiler: "scm",
|
|
5499
|
-
VRRCompiler
|
|
5514
|
+
// VRRCompiler — retired (apex-poison, 2026-06-17)
|
|
5500
5515
|
A2AAgentCardCompiler: "a2a-agent-card",
|
|
5501
5516
|
MultiLayerCompiler: "multi-layer",
|
|
5502
5517
|
IncrementalCompiler: "incremental",
|
|
@@ -5508,10 +5523,15 @@ var init_CompilerBase = __esm({
|
|
|
5508
5523
|
QuiltCompiler: "quilt",
|
|
5509
5524
|
MVHEVCCompiler: "mv-hevc",
|
|
5510
5525
|
NodeServiceCompiler: "node-service",
|
|
5526
|
+
SDKCompiler: "sdk",
|
|
5511
5527
|
NextJSAPICompiler: "nextjs-api",
|
|
5512
|
-
MCPConfigCompiler: "
|
|
5528
|
+
MCPConfigCompiler: "mcp-config",
|
|
5529
|
+
HoloMCPCompiler: "mcp-server",
|
|
5513
5530
|
AgentInferenceCompiler: "agent-inference",
|
|
5514
|
-
|
|
5531
|
+
OmnigentAgentYamlCompiler: "omnigent-agent-yaml",
|
|
5532
|
+
DaimonSeedCompiler: "daimon-seed",
|
|
5533
|
+
CodeEditorCompiler: "code-editor",
|
|
5534
|
+
SVGCompiler: "svg"
|
|
5515
5535
|
};
|
|
5516
5536
|
UnauthorizedCompilerAccessError = class extends Error {
|
|
5517
5537
|
constructor(decision, operation, compilerName) {
|
|
@@ -5555,6 +5575,49 @@ Required Permission: ${decision.requiredPermission || "unknown"}`
|
|
|
5555
5575
|
escapeStringValue(value, target) {
|
|
5556
5576
|
return escapeStringValue(value, target);
|
|
5557
5577
|
}
|
|
5578
|
+
/**
|
|
5579
|
+
* Compile to a path-keyed file map: relative output path → file contents.
|
|
5580
|
+
*
|
|
5581
|
+
* This is the standardized "emits buildable source" contract every target
|
|
5582
|
+
* shares — the byte-diff golden gates and the build-verify runner both consume
|
|
5583
|
+
* a `Record<string, string>`, so any target that implements this can be
|
|
5584
|
+
* gate-enforced and build-verified without bespoke per-target plumbing.
|
|
5585
|
+
*
|
|
5586
|
+
* The default handles two shapes: a single `string` (wrapped under
|
|
5587
|
+
* `defaultOutputFileName()`) and a string-valued object map (passed through).
|
|
5588
|
+
* A `compile()` result with no string output (binary/typed objects, e.g.
|
|
5589
|
+
* GLTFExportResult) THROWS rather than emit `"[object Object]"` garbage — those
|
|
5590
|
+
* targets must override. Multi-file targets (Android, AndroidXR) already override
|
|
5591
|
+
* to emit a full project layout. Auth is delegated to `compile()`, which each
|
|
5592
|
+
* subclass already gates; this method does not re-validate.
|
|
5593
|
+
*
|
|
5594
|
+
* @param composition - HoloScript AST
|
|
5595
|
+
* @param agentToken - JWT token proving agent identity (default '' bypasses RBAC)
|
|
5596
|
+
* @returns Map of relative output path → file contents
|
|
5597
|
+
*/
|
|
5598
|
+
compileToFiles(composition, agentToken = "") {
|
|
5599
|
+
const result = this.compile(composition, agentToken);
|
|
5600
|
+
if (typeof result === "string") {
|
|
5601
|
+
return { [this.defaultOutputFileName()]: result };
|
|
5602
|
+
}
|
|
5603
|
+
if (result && typeof result === "object") {
|
|
5604
|
+
const out = {};
|
|
5605
|
+
for (const [k, v] of Object.entries(result)) {
|
|
5606
|
+
if (typeof v === "string") out[k] = v;
|
|
5607
|
+
}
|
|
5608
|
+
if (Object.keys(out).length > 0) return out;
|
|
5609
|
+
}
|
|
5610
|
+
throw new Error(
|
|
5611
|
+
`${this.constructor.name}.compileToFiles(): compile() produced no string output (binary/object result); this target must override compileToFiles() to emit a path-keyed source map.`
|
|
5612
|
+
);
|
|
5613
|
+
}
|
|
5614
|
+
/**
|
|
5615
|
+
* Default single-file output name for the wrapping `compileToFiles()` default.
|
|
5616
|
+
* Override to name a single-file target's emit (e.g. `index.ts`, `Main.kt`).
|
|
5617
|
+
*/
|
|
5618
|
+
defaultOutputFileName() {
|
|
5619
|
+
return "output.txt";
|
|
5620
|
+
}
|
|
5558
5621
|
// =========================================================================
|
|
5559
5622
|
// P3 Migration Bridge: Dual-mode token support
|
|
5560
5623
|
// =========================================================================
|
|
@@ -5965,5 +6028,5 @@ Required Permission: ${decision.requiredPermission || "unknown"}`
|
|
|
5965
6028
|
});
|
|
5966
6029
|
|
|
5967
6030
|
export { ANSCapabilityPath, BUILTIN_NORMS, BUILTIN_NORM_PROVENANCE, CompilerBase, CompilerDocumentationGenerator, UNKNOWN_NORM_PROVENANCE, UnauthorizedCompilerAccessError, createTestCompilerToken, criticalMassForChange, deserializeNormProvenance, escapeStringValue, getBuiltinNorm, getRBAC, init_ANSNamespace, init_AgentRBAC, init_CompilerBase, init_CompilerDocumentationGenerator, init_CultureTraits, isCapabilityTokenCredential, normalizeNormProvenance, normsByCategory, serializeNormProvenance };
|
|
5968
|
-
//# sourceMappingURL=chunk-
|
|
5969
|
-
//# sourceMappingURL=chunk-
|
|
6031
|
+
//# sourceMappingURL=chunk-DUG3OQAS.js.map
|
|
6032
|
+
//# sourceMappingURL=chunk-DUG3OQAS.js.map
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// src/plugin-solver-contract/PluginSolverContract.ts
|
|
4
|
+
var PluginSolverContractRegistry = class {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.contracts = /* @__PURE__ */ new Map();
|
|
7
|
+
this.evaluators = /* @__PURE__ */ new Map();
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Register a solver contract declaration.
|
|
11
|
+
*
|
|
12
|
+
* @throws If a contract with the same `id` is already registered by a
|
|
13
|
+
* different plugin.
|
|
14
|
+
*/
|
|
15
|
+
registerContract(contract) {
|
|
16
|
+
const existing = this.contracts.get(contract.id);
|
|
17
|
+
if (existing) {
|
|
18
|
+
if (existing.pluginId === contract.pluginId) return;
|
|
19
|
+
throw new Error(
|
|
20
|
+
`[PluginSolverContractRegistry] Contract "${contract.id}" already registered by plugin "${existing.pluginId}". Cannot re-register from "${contract.pluginId}".`
|
|
21
|
+
);
|
|
22
|
+
}
|
|
23
|
+
this.contracts.set(contract.id, contract);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Register a clause evaluator function for a specific clause within a contract.
|
|
27
|
+
*
|
|
28
|
+
* @param contractId The contract's `id`.
|
|
29
|
+
* @param clauseId The clause's `id` within that contract.
|
|
30
|
+
* @param evaluator Returns true when the clause holds.
|
|
31
|
+
*/
|
|
32
|
+
registerEvaluator(contractId, clauseId, evaluator) {
|
|
33
|
+
if (!this.evaluators.has(contractId)) {
|
|
34
|
+
this.evaluators.set(contractId, /* @__PURE__ */ new Map());
|
|
35
|
+
}
|
|
36
|
+
this.evaluators.get(contractId).set(clauseId, evaluator);
|
|
37
|
+
}
|
|
38
|
+
/** Look up a registered contract by id. Returns undefined if not found. */
|
|
39
|
+
getContract(id) {
|
|
40
|
+
return this.contracts.get(id);
|
|
41
|
+
}
|
|
42
|
+
/** Look up a clause evaluator. Returns undefined if not registered. */
|
|
43
|
+
getEvaluator(contractId, clauseId) {
|
|
44
|
+
return this.evaluators.get(contractId)?.get(clauseId);
|
|
45
|
+
}
|
|
46
|
+
/** All registered contracts (for introspection). */
|
|
47
|
+
allContracts() {
|
|
48
|
+
return [...this.contracts.values()];
|
|
49
|
+
}
|
|
50
|
+
/** Count of registered contracts. */
|
|
51
|
+
get size() {
|
|
52
|
+
return this.contracts.size;
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
var SolverReceiptSchemaRegistry = class {
|
|
56
|
+
constructor() {
|
|
57
|
+
this.schemas = /* @__PURE__ */ new Map();
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Register a receipt schema.
|
|
61
|
+
*
|
|
62
|
+
* @throws If a schema with the same `id` is registered by a different plugin.
|
|
63
|
+
*/
|
|
64
|
+
registerSchema(entry) {
|
|
65
|
+
const existing = this.schemas.get(entry.id);
|
|
66
|
+
if (existing) {
|
|
67
|
+
if (existing.pluginId === entry.pluginId) return;
|
|
68
|
+
throw new Error(
|
|
69
|
+
`[SolverReceiptSchemaRegistry] Schema "${entry.id}" already registered by "${existing.pluginId}". Cannot re-register from "${entry.pluginId}".`
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
this.schemas.set(entry.id, entry);
|
|
73
|
+
}
|
|
74
|
+
/** Look up a schema by id. Returns undefined → caller labels receipt freeform. */
|
|
75
|
+
getSchema(id) {
|
|
76
|
+
return this.schemas.get(id);
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Validate `result` against the schema registered under `schemaId`.
|
|
80
|
+
* Returns `null` if no schema is registered (freeform).
|
|
81
|
+
*/
|
|
82
|
+
validate(schemaId, result) {
|
|
83
|
+
const schema = this.schemas.get(schemaId);
|
|
84
|
+
if (!schema) return null;
|
|
85
|
+
return schema.validate(result);
|
|
86
|
+
}
|
|
87
|
+
/** All registered schemas (for introspection). */
|
|
88
|
+
allSchemas() {
|
|
89
|
+
return [...this.schemas.values()];
|
|
90
|
+
}
|
|
91
|
+
/** Count of registered schemas. */
|
|
92
|
+
get size() {
|
|
93
|
+
return this.schemas.size;
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
var globalContractRegistry = new PluginSolverContractRegistry();
|
|
97
|
+
var globalSchemaRegistry = new SolverReceiptSchemaRegistry();
|
|
98
|
+
function registerPluginContract(contract) {
|
|
99
|
+
globalContractRegistry.registerContract(contract);
|
|
100
|
+
}
|
|
101
|
+
function registerContractClauseEvaluator(contractId, clauseId, evaluator) {
|
|
102
|
+
globalContractRegistry.registerEvaluator(contractId, clauseId, evaluator);
|
|
103
|
+
}
|
|
104
|
+
function registerReceiptSchema(entry) {
|
|
105
|
+
globalSchemaRegistry.registerSchema(entry);
|
|
106
|
+
}
|
|
107
|
+
function wrapSolverInContract(solver, contractId, schemaId, registry = globalContractRegistry, schemaReg = globalSchemaRegistry) {
|
|
108
|
+
return (config) => {
|
|
109
|
+
const contract = contractId ? registry.getContract(contractId) : void 0;
|
|
110
|
+
const clauseViolations = [];
|
|
111
|
+
if (contract) {
|
|
112
|
+
for (const clause of contract.preconditions) {
|
|
113
|
+
const evaluator = registry.getEvaluator(contract.id, clause.id);
|
|
114
|
+
if (!evaluator) continue;
|
|
115
|
+
const ctx = {
|
|
116
|
+
config,
|
|
117
|
+
result: void 0,
|
|
118
|
+
pluginId: contract.pluginId
|
|
119
|
+
};
|
|
120
|
+
const holds = evaluator(ctx);
|
|
121
|
+
if (!holds) {
|
|
122
|
+
clauseViolations.push({
|
|
123
|
+
clauseId: clause.id,
|
|
124
|
+
kind: "precondition",
|
|
125
|
+
severity: clause.severity ?? "error",
|
|
126
|
+
message: `Precondition "${clause.id}" violated: ${clause.description}`,
|
|
127
|
+
pluginId: contract.pluginId
|
|
128
|
+
});
|
|
129
|
+
if ((clause.severity ?? "error") === "error") {
|
|
130
|
+
return {
|
|
131
|
+
result: void 0,
|
|
132
|
+
contractVerified: false,
|
|
133
|
+
schemaValid: null,
|
|
134
|
+
schemaId: schemaId ?? null,
|
|
135
|
+
clauseViolations,
|
|
136
|
+
schemaViolations: [],
|
|
137
|
+
contractId: contractId ?? null,
|
|
138
|
+
pluginId: contract.pluginId
|
|
139
|
+
};
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
const result = solver(config);
|
|
145
|
+
if (contract) {
|
|
146
|
+
for (const clause of contract.postconditions) {
|
|
147
|
+
const evaluator = registry.getEvaluator(contract.id, clause.id);
|
|
148
|
+
if (!evaluator) continue;
|
|
149
|
+
const ctx = {
|
|
150
|
+
config,
|
|
151
|
+
result,
|
|
152
|
+
pluginId: contract.pluginId
|
|
153
|
+
};
|
|
154
|
+
const holds = evaluator(ctx);
|
|
155
|
+
if (!holds) {
|
|
156
|
+
clauseViolations.push({
|
|
157
|
+
clauseId: clause.id,
|
|
158
|
+
kind: "postcondition",
|
|
159
|
+
severity: clause.severity ?? "error",
|
|
160
|
+
message: `Postcondition "${clause.id}" violated: ${clause.description}`,
|
|
161
|
+
pluginId: contract.pluginId
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
const hasErrorViolation = clauseViolations.some((v) => v.severity === "error");
|
|
167
|
+
const contractVerified = !hasErrorViolation;
|
|
168
|
+
let schemaValid = null;
|
|
169
|
+
let schemaViolations = [];
|
|
170
|
+
if (schemaId) {
|
|
171
|
+
const schemaResult = schemaReg.validate(schemaId, result);
|
|
172
|
+
if (schemaResult !== null) {
|
|
173
|
+
schemaValid = schemaResult.valid;
|
|
174
|
+
schemaViolations = schemaResult.violations;
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
return {
|
|
178
|
+
result,
|
|
179
|
+
contractVerified,
|
|
180
|
+
schemaValid,
|
|
181
|
+
schemaId: schemaId ?? null,
|
|
182
|
+
clauseViolations,
|
|
183
|
+
schemaViolations,
|
|
184
|
+
contractId: contractId ?? null,
|
|
185
|
+
pluginId: contract?.pluginId ?? null
|
|
186
|
+
};
|
|
187
|
+
};
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
exports.PluginSolverContractRegistry = PluginSolverContractRegistry;
|
|
191
|
+
exports.SolverReceiptSchemaRegistry = SolverReceiptSchemaRegistry;
|
|
192
|
+
exports.globalContractRegistry = globalContractRegistry;
|
|
193
|
+
exports.globalSchemaRegistry = globalSchemaRegistry;
|
|
194
|
+
exports.registerContractClauseEvaluator = registerContractClauseEvaluator;
|
|
195
|
+
exports.registerPluginContract = registerPluginContract;
|
|
196
|
+
exports.registerReceiptSchema = registerReceiptSchema;
|
|
197
|
+
exports.wrapSolverInContract = wrapSolverInContract;
|
|
198
|
+
//# sourceMappingURL=chunk-ECUYJOJ2.cjs.map
|
|
199
|
+
//# sourceMappingURL=chunk-ECUYJOJ2.cjs.map
|
|
@@ -0,0 +1,182 @@
|
|
|
1
|
+
// src/traits/KinematicChainTrait.ts
|
|
2
|
+
function mat4Identity() {
|
|
3
|
+
return [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];
|
|
4
|
+
}
|
|
5
|
+
function dhTransform(a, alpha, d, theta) {
|
|
6
|
+
const ct = Math.cos(theta);
|
|
7
|
+
const st = Math.sin(theta);
|
|
8
|
+
const ca = Math.cos(alpha);
|
|
9
|
+
const sa = Math.sin(alpha);
|
|
10
|
+
return [
|
|
11
|
+
ct,
|
|
12
|
+
-st * ca,
|
|
13
|
+
st * sa,
|
|
14
|
+
a * ct,
|
|
15
|
+
st,
|
|
16
|
+
ct * ca,
|
|
17
|
+
-ct * sa,
|
|
18
|
+
a * st,
|
|
19
|
+
0,
|
|
20
|
+
sa,
|
|
21
|
+
ca,
|
|
22
|
+
d,
|
|
23
|
+
0,
|
|
24
|
+
0,
|
|
25
|
+
0,
|
|
26
|
+
1
|
|
27
|
+
];
|
|
28
|
+
}
|
|
29
|
+
function mat4Mul(a, b) {
|
|
30
|
+
const r = new Array(16).fill(0);
|
|
31
|
+
for (let i = 0; i < 4; i++) {
|
|
32
|
+
for (let j = 0; j < 4; j++) {
|
|
33
|
+
for (let k = 0; k < 4; k++) {
|
|
34
|
+
r[i * 4 + j] += a[i * 4 + k] * b[k * 4 + j];
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return r;
|
|
39
|
+
}
|
|
40
|
+
function extractFrame(T) {
|
|
41
|
+
return {
|
|
42
|
+
z: { x: T[2], y: T[6], z: T[10] },
|
|
43
|
+
p: { x: T[3], y: T[7], z: T[11] }
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function computeAllFrames(links, q) {
|
|
47
|
+
const frames = [];
|
|
48
|
+
let T = mat4Identity();
|
|
49
|
+
frames.push(extractFrame(T));
|
|
50
|
+
for (let i = 0; i < links.length; i++) {
|
|
51
|
+
const { a, alpha, d, theta: off } = links[i];
|
|
52
|
+
T = mat4Mul(T, dhTransform(a, alpha, d, off + q[i]));
|
|
53
|
+
frames.push(extractFrame(T));
|
|
54
|
+
}
|
|
55
|
+
return frames;
|
|
56
|
+
}
|
|
57
|
+
function solve3x3(A, b) {
|
|
58
|
+
const a = A.map((row) => [...row]);
|
|
59
|
+
const x = [...b];
|
|
60
|
+
for (let k = 0; k < 3; k++) {
|
|
61
|
+
let maxVal = Math.abs(a[k][k]);
|
|
62
|
+
let maxRow = k;
|
|
63
|
+
for (let i = k + 1; i < 3; i++) {
|
|
64
|
+
if (Math.abs(a[i][k]) > maxVal) {
|
|
65
|
+
maxVal = Math.abs(a[i][k]);
|
|
66
|
+
maxRow = i;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
[a[k], a[maxRow]] = [a[maxRow], a[k]];
|
|
70
|
+
[x[k], x[maxRow]] = [x[maxRow], x[k]];
|
|
71
|
+
for (let i = k + 1; i < 3; i++) {
|
|
72
|
+
if (Math.abs(a[k][k]) < 1e-12) continue;
|
|
73
|
+
const f = a[i][k] / a[k][k];
|
|
74
|
+
for (let j = k; j < 3; j++) a[i][j] -= f * a[k][j];
|
|
75
|
+
x[i] -= f * x[k];
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
const result = [0, 0, 0];
|
|
79
|
+
for (let i = 2; i >= 0; i--) {
|
|
80
|
+
if (Math.abs(a[i][i]) < 1e-12) {
|
|
81
|
+
result[i] = 0;
|
|
82
|
+
continue;
|
|
83
|
+
}
|
|
84
|
+
result[i] = x[i];
|
|
85
|
+
for (let j = i + 1; j < 3; j++) result[i] -= a[i][j] * result[j];
|
|
86
|
+
result[i] /= a[i][i];
|
|
87
|
+
}
|
|
88
|
+
return result;
|
|
89
|
+
}
|
|
90
|
+
function solveFk(links, jointAngles) {
|
|
91
|
+
const frameTransforms = [];
|
|
92
|
+
let T = mat4Identity();
|
|
93
|
+
for (let i = 0; i < links.length; i++) {
|
|
94
|
+
const { a, alpha, d, theta: off } = links[i];
|
|
95
|
+
T = mat4Mul(T, dhTransform(a, alpha, d, off + jointAngles[i]));
|
|
96
|
+
frameTransforms.push([...T]);
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
endEffectorPosition: { x: T[3], y: T[7], z: T[11] },
|
|
100
|
+
endEffectorTransform: T,
|
|
101
|
+
frameTransforms
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
function solveIk(req) {
|
|
105
|
+
const { links, target, maxIterations = 100, tolerance = 1e-4, damping = 0.01 } = req;
|
|
106
|
+
const n = links.length;
|
|
107
|
+
const q = [...req.initialAngles ?? new Array(n).fill(0)];
|
|
108
|
+
const lam2 = damping * damping;
|
|
109
|
+
for (let iter = 0; iter < maxIterations; iter++) {
|
|
110
|
+
const frames = computeAllFrames(links, q);
|
|
111
|
+
const ee = frames[n].p;
|
|
112
|
+
const dx = target.x - ee.x;
|
|
113
|
+
const dy = target.y - ee.y;
|
|
114
|
+
const dz = target.z - ee.z;
|
|
115
|
+
const error = Math.sqrt(dx * dx + dy * dy + dz * dz);
|
|
116
|
+
if (error < tolerance) {
|
|
117
|
+
return { jointAngles: [...q], converged: true, finalError: error, iterations: iter };
|
|
118
|
+
}
|
|
119
|
+
const J = [
|
|
120
|
+
new Array(n).fill(0),
|
|
121
|
+
new Array(n).fill(0),
|
|
122
|
+
new Array(n).fill(0)
|
|
123
|
+
];
|
|
124
|
+
for (let j = 0; j < n; j++) {
|
|
125
|
+
const { z, p } = frames[j];
|
|
126
|
+
const dpx = ee.x - p.x;
|
|
127
|
+
const dpy = ee.y - p.y;
|
|
128
|
+
const dpz = ee.z - p.z;
|
|
129
|
+
J[0][j] = z.y * dpz - z.z * dpy;
|
|
130
|
+
J[1][j] = z.z * dpx - z.x * dpz;
|
|
131
|
+
J[2][j] = z.x * dpy - z.y * dpx;
|
|
132
|
+
}
|
|
133
|
+
const JJT = [[0, 0, 0], [0, 0, 0], [0, 0, 0]];
|
|
134
|
+
for (let r = 0; r < 3; r++) {
|
|
135
|
+
for (let c = 0; c < 3; c++) {
|
|
136
|
+
for (let j = 0; j < n; j++) JJT[r][c] += J[r][j] * J[c][j];
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
for (let i = 0; i < 3; i++) JJT[i][i] += lam2;
|
|
140
|
+
const y = solve3x3(JJT, [dx, dy, dz]);
|
|
141
|
+
for (let j = 0; j < n; j++) {
|
|
142
|
+
q[j] += J[0][j] * y[0] + J[1][j] * y[1] + J[2][j] * y[2];
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
const finalEe = computeAllFrames(links, q)[n].p;
|
|
146
|
+
const finalError = Math.sqrt(
|
|
147
|
+
(target.x - finalEe.x) ** 2 + (target.y - finalEe.y) ** 2 + (target.z - finalEe.z) ** 2
|
|
148
|
+
);
|
|
149
|
+
return { jointAngles: [...q], converged: false, finalError, iterations: maxIterations };
|
|
150
|
+
}
|
|
151
|
+
var kinematicChainHandler = {
|
|
152
|
+
name: "kinematic_chain",
|
|
153
|
+
defaultConfig: { links: [], jointAngles: [] },
|
|
154
|
+
onAttach(node, config) {
|
|
155
|
+
if (config.links.length > 0 && config.jointAngles.length === config.links.length) {
|
|
156
|
+
node.__kinematic_fk = solveFk(config.links, config.jointAngles);
|
|
157
|
+
}
|
|
158
|
+
},
|
|
159
|
+
onEvent(node, config, _ctx, event) {
|
|
160
|
+
if (event.type === "kinematic_chain.solve_fk") {
|
|
161
|
+
const e = event;
|
|
162
|
+
const links = e.links ?? config.links;
|
|
163
|
+
const angles = e.jointAngles ?? config.jointAngles;
|
|
164
|
+
node.__kinematic_fk = solveFk(links, angles);
|
|
165
|
+
}
|
|
166
|
+
if (event.type === "kinematic_chain.solve_ik") {
|
|
167
|
+
const req = event;
|
|
168
|
+
node.__kinematic_ik = solveIk({
|
|
169
|
+
links: req.links ?? config.links,
|
|
170
|
+
target: req.target ?? { x: 0, y: 0, z: 0 },
|
|
171
|
+
initialAngles: req.initialAngles,
|
|
172
|
+
maxIterations: req.maxIterations,
|
|
173
|
+
tolerance: req.tolerance,
|
|
174
|
+
damping: req.damping
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
export { dhTransform, kinematicChainHandler, solveFk, solveIk };
|
|
181
|
+
//# sourceMappingURL=chunk-EEMTCAK7.js.map
|
|
182
|
+
//# sourceMappingURL=chunk-EEMTCAK7.js.map
|