@cimplify/sdk 0.108.0 → 0.110.2
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/LICENSE +21 -0
- package/dist/advanced.d.mts +4 -3
- package/dist/advanced.d.ts +4 -3
- package/dist/advanced.js +24 -24
- package/dist/advanced.mjs +5 -5
- package/dist/animation-4EXBXRVX.js +27 -0
- package/dist/animation-6DICNWUP.mjs +6 -0
- package/dist/audio-DhvyjqdA.d.mts +249 -0
- package/dist/audio-m0w8cnxq.d.ts +249 -0
- package/dist/avatars.d.mts +110 -0
- package/dist/avatars.d.ts +110 -0
- package/dist/avatars.js +82 -0
- package/dist/avatars.mjs +5 -0
- package/dist/backend-gUCzs5Kg.d.mts +3866 -0
- package/dist/backend-gUCzs5Kg.d.ts +3866 -0
- package/dist/{catalogue-B4eLL8Mi.d.ts → catalogue-CPTMyBUz.d.mts} +109 -221
- package/dist/catalogue-DzrTXP3v.d.mts +541 -0
- package/dist/catalogue-DzrTXP3v.d.ts +541 -0
- package/dist/{catalogue-OT89_Ifs.d.mts → catalogue-OTuS5zp-.d.ts} +109 -221
- package/dist/chunk-22BD3RHN.mjs +1809 -0
- package/dist/chunk-25T4JHEA.mjs +21 -0
- package/dist/chunk-2AQ237Y4.js +508 -0
- package/dist/chunk-2IC4H6OV.mjs +48 -0
- package/dist/chunk-2LHLG4OB.mjs +71 -0
- package/dist/chunk-2O2CG465.js +1709 -0
- package/dist/chunk-2Q4DTHXK.js +316 -0
- package/dist/chunk-2QTQ6BUH.mjs +46 -0
- package/dist/chunk-2UN4SFLR.mjs +100 -0
- package/dist/chunk-2V75I7K3.js +454 -0
- package/dist/chunk-2V7IL4HC.js +10 -0
- package/dist/chunk-34XBXUMW.js +296 -0
- package/dist/chunk-3C4C654I.js +71 -0
- package/dist/chunk-3DAD2LDF.mjs +72 -0
- package/dist/chunk-3GXH2NFD.mjs +4 -0
- package/dist/chunk-3O47ZFW3.js +961 -0
- package/dist/chunk-3OY3VYNF.mjs +11 -0
- package/dist/chunk-3S6WPBZL.js +2936 -0
- package/dist/chunk-3TUOUP5T.js +399 -0
- package/dist/chunk-3VEH23I5.mjs +1380 -0
- package/dist/chunk-3ZYSAW2T.mjs +263 -0
- package/dist/chunk-4ANVF274.js +103 -0
- package/dist/chunk-4C7I3ELN.js +388 -0
- package/dist/chunk-4DYKAYFO.mjs +8 -0
- package/dist/chunk-4ZDR72SG.js +329 -0
- package/dist/chunk-52YS45RR.js +1066 -0
- package/dist/chunk-5325XSCH.js +107 -0
- package/dist/chunk-5AD5X6AV.js +13 -0
- package/dist/chunk-5BYDGGWO.mjs +197 -0
- package/dist/chunk-5C3C7VDM.mjs +55 -0
- package/dist/chunk-5HFMY3D7.js +660 -0
- package/dist/chunk-5LH2QN3T.js +1862 -0
- package/dist/chunk-5PJEXSOW.js +44 -0
- package/dist/chunk-5SXDH3Y7.js +90 -0
- package/dist/chunk-5YFBGGCK.mjs +502 -0
- package/dist/chunk-5YWN6H5Q.mjs +133 -0
- package/dist/chunk-66QP3SMN.js +402 -0
- package/dist/chunk-6DAEZKIG.mjs +385 -0
- package/dist/chunk-6DATW7TB.mjs +420 -0
- package/dist/{chunk-JRGK3NXR.mjs → chunk-6ETDAU62.mjs} +72 -212
- package/dist/chunk-6H254EVP.mjs +178 -0
- package/dist/chunk-6PFNJPBJ.mjs +820 -0
- package/dist/chunk-6PJWXIFX.mjs +357 -0
- package/dist/chunk-6SWKWCMS.js +80 -0
- package/dist/chunk-6VVXXX7S.js +808 -0
- package/dist/chunk-6WUBSMTX.js +1403 -0
- package/dist/chunk-73SGZLAQ.mjs +35 -0
- package/dist/chunk-76L2V6KD.mjs +4 -0
- package/dist/chunk-7AAIAVAA.js +1531 -0
- package/dist/chunk-7ARSJPV3.mjs +93 -0
- package/dist/chunk-7BHW5GTC.mjs +1234 -0
- package/dist/chunk-7DQSDKDU.js +6 -0
- package/dist/chunk-7IQQQENP.mjs +401 -0
- package/dist/chunk-7KFTYENS.js +11357 -0
- package/dist/chunk-7SM6XSPZ.js +3171 -0
- package/dist/chunk-7SXOHAIR.mjs +28 -0
- package/dist/chunk-A2MAX6S4.js +90 -0
- package/dist/chunk-A33OORT7.mjs +1530 -0
- package/dist/{chunk-U6ACF76H.mjs → chunk-A36JRXXH.mjs} +1075 -1845
- package/dist/chunk-A7BU3BK4.js +52 -0
- package/dist/chunk-A7MQSN2V.mjs +77 -0
- package/dist/chunk-A7V4L2IT.mjs +416 -0
- package/dist/chunk-AABEK6XU.js +226 -0
- package/dist/chunk-AGV33FWC.mjs +5005 -0
- package/dist/chunk-AHNR3BXI.js +108 -0
- package/dist/chunk-AQ5RLBU2.mjs +286 -0
- package/dist/chunk-AQOE6WCG.js +1270 -0
- package/dist/chunk-ATAWRACV.mjs +62 -0
- package/dist/chunk-ATCURNUV.js +14 -0
- package/dist/chunk-AWPV33OO.js +6 -0
- package/dist/chunk-AYJPHKYV.js +337 -0
- package/dist/chunk-AZ5BGWHB.js +162 -0
- package/dist/chunk-AZAXD44P.js +1373 -0
- package/dist/chunk-BBGKQIJJ.mjs +406 -0
- package/dist/chunk-BP4JLSUA.js +1453 -0
- package/dist/{chunk-SUCE7FWA.mjs → chunk-BTUSVHIE.mjs} +539 -978
- package/dist/chunk-BU6OK542.mjs +818 -0
- package/dist/chunk-CVSRWM6W.js +418 -0
- package/dist/chunk-CYBMFMJD.mjs +247 -0
- package/dist/chunk-DDJLDOUX.mjs +217 -0
- package/dist/{chunk-V32BCG7M.js → chunk-DFZWHNRG.js} +75 -215
- package/dist/chunk-DJ2C7AVG.js +644 -0
- package/dist/chunk-DS2VU4WW.mjs +102 -0
- package/dist/chunk-DSAG7T5P.js +7290 -0
- package/dist/chunk-E2QPPH7I.js +327 -0
- package/dist/chunk-E65WCTIG.mjs +1187 -0
- package/dist/{chunk-33VCYWVL.mjs → chunk-E6QQKDNE.mjs} +30 -42
- package/dist/chunk-ECDK6QBF.mjs +981 -0
- package/dist/chunk-EIB4OWVQ.mjs +620 -0
- package/dist/chunk-EQUZYCGO.js +250 -0
- package/dist/chunk-F3UJ6ZRM.mjs +313 -0
- package/dist/chunk-F63N2ZTQ.js +7023 -0
- package/dist/chunk-F6XRYEM3.mjs +26 -0
- package/dist/chunk-FE6VCE4K.js +5030 -0
- package/dist/chunk-FLWD6GRR.js +1372 -0
- package/dist/chunk-FQBFWJBS.mjs +110 -0
- package/dist/chunk-FXVJ2HFU.js +26 -0
- package/dist/chunk-FZMQMQBW.js +312 -0
- package/dist/chunk-G3EEC44R.js +53 -0
- package/dist/{chunk-KG3WT4PR.mjs → chunk-GCKWKLZF.mjs} +73 -104
- package/dist/chunk-GCX7TY4D.mjs +6826 -0
- package/dist/chunk-GDB6TCSD.js +450 -0
- package/dist/chunk-GDCV4IWO.mjs +21 -0
- package/dist/chunk-GDZT5LZ5.js +170 -0
- package/dist/chunk-GHPUYD4I.mjs +213 -0
- package/dist/chunk-GHS6MIL6.mjs +1432 -0
- package/dist/chunk-GPS2THCL.mjs +11 -0
- package/dist/{chunk-EV2EVOYS.js → chunk-GTJWQAGU.js} +31 -42
- package/dist/chunk-GVTI6UJQ.mjs +130 -0
- package/dist/chunk-GXKI64OT.mjs +1138 -0
- package/dist/chunk-GYDYF2WX.js +275 -0
- package/dist/chunk-GYLP6UG4.mjs +705 -0
- package/dist/chunk-H3OQKK6X.js +1158 -0
- package/dist/chunk-H5DFSCJ6.js +40 -0
- package/dist/chunk-HAGEIC2L.mjs +186 -0
- package/dist/chunk-HAJ4JRFO.js +293 -0
- package/dist/chunk-HDR72GB6.js +188 -0
- package/dist/chunk-HF5HPS4T.mjs +40 -0
- package/dist/chunk-HK6LOFDS.js +218 -0
- package/dist/chunk-HMWYTXCY.mjs +143 -0
- package/dist/chunk-HPCSRCMA.js +89 -0
- package/dist/chunk-HSEO6TPU.js +247 -0
- package/dist/chunk-I5FOHCLH.js +132 -0
- package/dist/chunk-IDLW4NWA.mjs +85 -0
- package/dist/chunk-IIDZ5WUX.js +61 -0
- package/dist/chunk-IR74FJHU.js +2332 -0
- package/dist/chunk-IRVFYAKP.mjs +100 -0
- package/dist/{chunk-XBL3TMPC.mjs → chunk-IZDWAL53.mjs} +1795 -3287
- package/dist/chunk-J2KZXIU3.js +51 -0
- package/dist/chunk-J2U6PJSO.js +91 -0
- package/dist/chunk-J5AJNY2N.js +283 -0
- package/dist/chunk-J6KQZ4FO.mjs +821 -0
- package/dist/{chunk-OWW5GUSB.js → chunk-JGBCIKJV.js} +7 -6
- package/dist/chunk-JKGTBMU7.mjs +25 -0
- package/dist/chunk-JR3TNEQC.js +422 -0
- package/dist/chunk-JURRXY2J.mjs +29 -0
- package/dist/chunk-K3HW5I2A.mjs +317 -0
- package/dist/chunk-K46SMZ66.mjs +103 -0
- package/dist/chunk-K4UDGE3Z.mjs +6 -0
- package/dist/chunk-KDQOR4QQ.mjs +350 -0
- package/dist/chunk-KDTVOLHI.mjs +288 -0
- package/dist/chunk-KGHJH5KJ.mjs +35 -0
- package/dist/chunk-KIZOA5LX.mjs +140 -0
- package/dist/chunk-KK6HYVBI.mjs +242 -0
- package/dist/chunk-KMKWGXMK.js +856 -0
- package/dist/chunk-KPA6K5IB.js +80 -0
- package/dist/chunk-KU7O4IXU.mjs +260 -0
- package/dist/chunk-KVFNRJOR.mjs +11142 -0
- package/dist/chunk-KZJRSXHK.js +2432 -0
- package/dist/chunk-LHWPRUJL.js +79 -0
- package/dist/chunk-LIV3KXJG.mjs +369 -0
- package/dist/chunk-LKV4LACG.js +21 -0
- package/dist/chunk-LUY45X3U.mjs +263 -0
- package/dist/chunk-LYEZZEEF.mjs +17 -0
- package/dist/chunk-M5EXQZYY.mjs +1519 -0
- package/dist/chunk-ME6HGG4I.mjs +1338 -0
- package/dist/chunk-MEXP6DA6.js +31 -0
- package/dist/chunk-MG52AW3H.js +902 -0
- package/dist/chunk-MIPO6F72.js +334 -0
- package/dist/{chunk-5QW7CQBA.js → chunk-MKIJQL5Q.js} +211 -321
- package/dist/chunk-MN3YETVN.mjs +17 -0
- package/dist/chunk-MOBSBXVE.mjs +2391 -0
- package/dist/chunk-MOMOZEUM.mjs +88 -0
- package/dist/chunk-MRFUNRAP.js +62 -0
- package/dist/chunk-MTIHEW2M.js +433 -0
- package/dist/chunk-N4RGGDEL.mjs +73 -0
- package/dist/chunk-NH654HAT.js +10 -0
- package/dist/chunk-NHJUGZUR.mjs +253 -0
- package/dist/chunk-NMQT4HG3.mjs +757 -0
- package/dist/chunk-NPSYB6DC.mjs +906 -0
- package/dist/chunk-NW2GPMSO.js +857 -0
- package/dist/chunk-NXKQOQ6L.js +76 -0
- package/dist/chunk-NXLAZIJZ.js +309 -0
- package/dist/chunk-NYWNA5CF.js +148 -0
- package/dist/chunk-NZTKLY2W.js +1442 -0
- package/dist/chunk-O2ICABUD.js +36 -0
- package/dist/chunk-OIVVQQ22.js +862 -0
- package/dist/chunk-OKC2B4O3.mjs +312 -0
- package/dist/chunk-OLWFPDBK.js +2220 -0
- package/dist/chunk-OMTVH334.js +3779 -0
- package/dist/chunk-OQRVEM56.mjs +362 -0
- package/dist/chunk-OXMIBOD4.js +337 -0
- package/dist/chunk-PBL6YL5L.mjs +288 -0
- package/dist/chunk-PDOELNNQ.js +97 -0
- package/dist/chunk-PDQJY2GZ.js +136 -0
- package/dist/chunk-PKOZXD2Q.js +1274 -0
- package/dist/chunk-PPF2BYFL.mjs +2191 -0
- package/dist/chunk-PQTQKNKD.js +539 -0
- package/dist/chunk-PRSR4FAV.mjs +81 -0
- package/dist/chunk-PTRNO5UD.js +95 -0
- package/dist/chunk-Q2Y3VMKH.js +2000 -0
- package/dist/chunk-QCZOE65N.js +96 -0
- package/dist/chunk-QDYFLATW.mjs +52 -0
- package/dist/chunk-QQABGCMM.js +22 -0
- package/dist/chunk-QS6TRHMR.js +345 -0
- package/dist/chunk-R56P64LB.mjs +208 -0
- package/dist/chunk-RCQ2MPBV.js +428 -0
- package/dist/chunk-RFVRPYR2.mjs +856 -0
- package/dist/chunk-RKBLPGPV.js +11521 -0
- package/dist/chunk-RM2V4IND.mjs +327 -0
- package/dist/chunk-RQXN5A34.mjs +613 -0
- package/dist/chunk-RUVGVNOF.mjs +2687 -0
- package/dist/chunk-SAFJIGYB.mjs +165 -0
- package/dist/chunk-SKQFLBDD.js +263 -0
- package/dist/chunk-SMK6JU2F.mjs +2092 -0
- package/dist/{chunk-UVRPC2P7.js → chunk-SNNEOS5Z.js} +1984 -3476
- package/dist/chunk-SPCRQ6NO.mjs +1246 -0
- package/dist/chunk-SWX4SALA.mjs +19 -0
- package/dist/{chunk-JVODCGFP.mjs → chunk-SYEO2WV4.mjs} +128 -238
- package/dist/chunk-T2QQMX2N.js +10 -0
- package/dist/chunk-T3AFF3L7.mjs +57 -0
- package/dist/chunk-T6Z2EXYL.js +712 -0
- package/dist/chunk-T7LOXGYX.js +118 -0
- package/dist/chunk-TJCAE7RC.mjs +1315 -0
- package/dist/chunk-TJI3K6RP.js +137 -0
- package/dist/chunk-TL2SVO4P.mjs +55 -0
- package/dist/chunk-TM63CYGN.mjs +399 -0
- package/dist/chunk-TU5RYTYU.mjs +13 -0
- package/dist/chunk-TVJZ4GPS.js +1553 -0
- package/dist/chunk-TWM6DLYF.js +371 -0
- package/dist/chunk-U63OC4TQ.js +30 -0
- package/dist/{chunk-L5GKVQVJ.js → chunk-U6BVSJZ6.js} +25 -57
- package/dist/chunk-U6UVWEAK.mjs +792 -0
- package/dist/chunk-UCEPNO6N.mjs +11048 -0
- package/dist/{chunk-ANT574FD.js → chunk-UCR5HRYM.js} +74 -105
- package/dist/chunk-UG5BTOTF.mjs +334 -0
- package/dist/chunk-UGH37BQW.mjs +157 -0
- package/dist/chunk-V7ZRH3PY.mjs +271 -0
- package/dist/chunk-VBGHBL3E.mjs +1394 -0
- package/dist/chunk-VRBDAS5I.js +920 -0
- package/dist/chunk-VVE3Y76O.js +230 -0
- package/dist/chunk-W65JIRI4.mjs +1182 -0
- package/dist/chunk-WHYKAT7G.js +62 -0
- package/dist/{chunk-YOIVZ6OA.mjs → chunk-WIZRUIZB.mjs} +25 -57
- package/dist/chunk-WKWTDZS7.js +385 -0
- package/dist/chunk-WLMINRC4.mjs +78 -0
- package/dist/chunk-WOF3AD3J.js +22 -0
- package/dist/chunk-WWKMOA76.js +1262 -0
- package/dist/chunk-X5A5FOWW.js +615 -0
- package/dist/chunk-X6CN6KQF.mjs +192 -0
- package/dist/chunk-XD2PMH46.mjs +517 -0
- package/dist/chunk-XJA2NGTI.mjs +88 -0
- package/dist/chunk-XJIHN3BY.mjs +8 -0
- package/dist/chunk-XK6UDWJS.js +203 -0
- package/dist/chunk-XPG3N5CF.mjs +415 -0
- package/dist/chunk-XVZ2NKSU.mjs +74 -0
- package/dist/chunk-XYP45OLE.js +117 -0
- package/dist/chunk-XZSDGZX6.mjs +301 -0
- package/dist/chunk-Y2EMGN4T.mjs +120 -0
- package/dist/chunk-Y3XWP5XW.mjs +298 -0
- package/dist/chunk-Y4K22JL6.js +228 -0
- package/dist/chunk-Y65LXQGA.mjs +3164 -0
- package/dist/chunk-Y66WVMO5.mjs +87 -0
- package/dist/chunk-Y7JWLB25.mjs +7280 -0
- package/dist/chunk-YCDXAJKU.js +175 -0
- package/dist/chunk-YRDQCCIS.js +152 -0
- package/dist/chunk-YV52DGSA.js +111 -0
- package/dist/chunk-YXGZQPUD.js +94 -0
- package/dist/chunk-Z3A3AFVU.mjs +102 -0
- package/dist/chunk-ZCY6YKKP.mjs +475 -0
- package/dist/chunk-ZEQHXVU5.js +215 -0
- package/dist/chunk-ZF7JCXCI.js +284 -0
- package/dist/chunk-ZJBRUH6V.js +29 -0
- package/dist/chunk-ZMIL4ZOA.js +365 -0
- package/dist/chunk-ZR5ULMN2.mjs +337 -0
- package/dist/chunk-ZXREOYOW.js +87 -0
- package/dist/{client-BSP9U1O1.d.mts → client-CX_WR0-J.d.mts} +2 -2
- package/dist/client-Dytx_ZTC.d.ts +230 -0
- package/dist/{client-B878xeAP.d.ts → client-dqOhP9Nc.d.ts} +2 -2
- package/dist/client-hTKbCuhG.d.mts +230 -0
- package/dist/clock-B-UAjkKa.d.mts +5 -0
- package/dist/clock-B-UAjkKa.d.ts +5 -0
- package/dist/config-BlXQluJR.d.mts +36 -0
- package/dist/config-BlXQluJR.d.ts +36 -0
- package/dist/courier-Cnn-edJ4.d.ts +95 -0
- package/dist/courier-FmGfkvIN.d.mts +95 -0
- package/dist/crowd-DdHFbqKK.d.ts +186 -0
- package/dist/crowd-hOVSAmA3.d.mts +186 -0
- package/dist/danfo-BEBapFlX.d.mts +146 -0
- package/dist/danfo-UQ_PTIIx.d.ts +146 -0
- package/dist/{elements-Bty6Qs_N.d.mts → elements-DdsRig-2.d.mts} +1548 -257
- package/dist/{elements-Bty6Qs_N.d.ts → elements-DdsRig-2.d.ts} +1548 -257
- package/dist/engines/godot.d.mts +56 -0
- package/dist/engines/godot.d.ts +56 -0
- package/dist/engines/godot.js +28 -0
- package/dist/engines/godot.mjs +3 -0
- package/dist/engines/wasm.d.mts +11 -0
- package/dist/engines/wasm.d.ts +11 -0
- package/dist/engines/wasm.js +178 -0
- package/dist/engines/wasm.mjs +176 -0
- package/dist/fallback-CrG_lTFk.d.mts +270 -0
- package/dist/fallback-CrG_lTFk.d.ts +270 -0
- package/dist/fallback-KDB4Y2CE.mjs +6 -0
- package/dist/fallback-Y26TQENE.js +19 -0
- package/dist/features-CZB4rmcD.d.mts +118 -0
- package/dist/features-CZB4rmcD.d.ts +118 -0
- package/dist/fit-BWiE7rgA.d.mts +44 -0
- package/dist/fit-DK0oT7zO.d.ts +44 -0
- package/dist/five-a-side-Bv1AOUy3.d.mts +115 -0
- package/dist/five-a-side-EC51SJY1.d.ts +115 -0
- package/dist/fluid-ARr0qUIL.d.ts +939 -0
- package/dist/fluid-DLlEj2cs.d.mts +939 -0
- package/dist/game/conformance.d.mts +84 -0
- package/dist/game/conformance.d.ts +84 -0
- package/dist/game/conformance.js +1025 -0
- package/dist/game/conformance.mjs +994 -0
- package/dist/game/heap.d.mts +40 -0
- package/dist/game/heap.d.ts +40 -0
- package/dist/game/heap.js +48 -0
- package/dist/game/heap.mjs +7 -0
- package/dist/game/kit/canvas.d.mts +240 -0
- package/dist/game/kit/canvas.d.ts +240 -0
- package/dist/game/kit/canvas.js +3566 -0
- package/dist/game/kit/canvas.mjs +1039 -0
- package/dist/game/kit/courier.d.mts +17 -0
- package/dist/game/kit/courier.d.ts +17 -0
- package/dist/game/kit/courier.js +66 -0
- package/dist/game/kit/courier.mjs +49 -0
- package/dist/game/kit/danfo.d.mts +11 -0
- package/dist/game/kit/danfo.d.ts +11 -0
- package/dist/game/kit/danfo.js +109 -0
- package/dist/game/kit/danfo.mjs +44 -0
- package/dist/game/kit/engine.d.mts +29 -0
- package/dist/game/kit/engine.d.ts +29 -0
- package/dist/game/kit/engine.js +183 -0
- package/dist/game/kit/engine.mjs +30 -0
- package/dist/game/kit/five-a-side.d.mts +11 -0
- package/dist/game/kit/five-a-side.d.ts +11 -0
- package/dist/game/kit/five-a-side.js +86 -0
- package/dist/game/kit/five-a-side.mjs +41 -0
- package/dist/game/kit/frontier.d.mts +344 -0
- package/dist/game/kit/frontier.d.ts +344 -0
- package/dist/game/kit/frontier.js +435 -0
- package/dist/game/kit/frontier.mjs +14 -0
- package/dist/game/kit/genesis.d.mts +752 -0
- package/dist/game/kit/genesis.d.ts +752 -0
- package/dist/game/kit/genesis.js +380 -0
- package/dist/game/kit/genesis.mjs +15 -0
- package/dist/game/kit/ludo.d.mts +15 -0
- package/dist/game/kit/ludo.d.ts +15 -0
- package/dist/game/kit/ludo.js +87 -0
- package/dist/game/kit/ludo.mjs +42 -0
- package/dist/game/kit/runner.d.mts +12 -0
- package/dist/game/kit/runner.d.ts +12 -0
- package/dist/game/kit/runner.js +83 -0
- package/dist/game/kit/runner.mjs +46 -0
- package/dist/game/kit/shootout.d.mts +13 -0
- package/dist/game/kit/shootout.d.ts +13 -0
- package/dist/game/kit/shootout.js +122 -0
- package/dist/game/kit/shootout.mjs +57 -0
- package/dist/game/kit/slots.d.mts +392 -0
- package/dist/game/kit/slots.d.ts +392 -0
- package/dist/game/kit/slots.js +215 -0
- package/dist/game/kit/slots.mjs +6 -0
- package/dist/game/kit/tycoon.d.mts +16 -0
- package/dist/game/kit/tycoon.d.ts +16 -0
- package/dist/game/kit/tycoon.js +145 -0
- package/dist/game/kit/tycoon.mjs +44 -0
- package/dist/game/kit/word.d.mts +11 -0
- package/dist/game/kit/word.d.ts +11 -0
- package/dist/game/kit/word.js +78 -0
- package/dist/game/kit/word.mjs +41 -0
- package/dist/game/kit/worlds.d.mts +18 -0
- package/dist/game/kit/worlds.d.ts +18 -0
- package/dist/game/kit/worlds.js +74 -0
- package/dist/game/kit/worlds.mjs +49 -0
- package/dist/game/kit.d.mts +53 -0
- package/dist/game/kit.d.ts +53 -0
- package/dist/game/kit.js +2610 -0
- package/dist/game/kit.mjs +101 -0
- package/dist/game/prepared.d.mts +14 -0
- package/dist/game/prepared.d.ts +14 -0
- package/dist/game/prepared.js +81 -0
- package/dist/game/prepared.mjs +32 -0
- package/dist/game-Bx8onkhX.d.mts +1451 -0
- package/dist/game-fgQy2YIm.d.ts +1451 -0
- package/dist/game-theme-CBTw1b_d.d.mts +35 -0
- package/dist/game-theme-Dg-ict5A.d.ts +35 -0
- package/dist/game.d.mts +3546 -0
- package/dist/game.d.ts +3546 -0
- package/dist/game.js +4455 -0
- package/dist/game.mjs +50 -0
- package/dist/graphics-C6YjWYvP.d.ts +5 -0
- package/dist/graphics-Dk2yQnYN.d.mts +5 -0
- package/dist/guest-DrsA00XD.d.mts +732 -0
- package/dist/guest-wIdfoT05.d.ts +732 -0
- package/dist/hit-stop-BKkVwTq7.d.mts +43 -0
- package/dist/hit-stop-D-8pPYnM.d.ts +43 -0
- package/dist/hot-Crn9XpHJ.d.ts +29 -0
- package/dist/hot-DH3nOhQD.d.mts +29 -0
- package/dist/{index-CQStGb3B.d.mts → index-6gkHMGAq.d.mts} +2 -2
- package/dist/index-B8ybCKJI.d.ts +41 -0
- package/dist/{index-DJwXmoaP.d.ts → index-B98Xac8e.d.ts} +2 -2
- package/dist/{index-B7oA_1XI.d.ts → index-B_ByTtIT.d.ts} +2 -2
- package/dist/index-DHjNHb1c.d.mts +41 -0
- package/dist/{index-DhUSTAhT.d.mts → index-DbAN_VQE.d.mts} +2 -2
- package/dist/index.d.mts +134 -24
- package/dist/index.d.ts +134 -24
- package/dist/index.js +407 -248
- package/dist/index.mjs +184 -58
- package/dist/interactives-authoring.d.mts +231 -0
- package/dist/interactives-authoring.d.ts +231 -0
- package/dist/interactives-authoring.js +1743 -0
- package/dist/interactives-authoring.mjs +1704 -0
- package/dist/interactives-canvas.global.js +148 -0
- package/dist/interactives-guest.d.mts +20 -0
- package/dist/interactives-guest.d.ts +20 -0
- package/dist/interactives-guest.js +63 -0
- package/dist/interactives-guest.json +1 -0
- package/dist/interactives-guest.mjs +61 -0
- package/dist/interactives-jsc.global.js +9357 -0
- package/dist/interactives-meters.d.mts +93 -0
- package/dist/interactives-meters.d.ts +93 -0
- package/dist/interactives-meters.js +252 -0
- package/dist/interactives-meters.mjs +68 -0
- package/dist/interactives-production.d.mts +430 -0
- package/dist/interactives-production.d.ts +430 -0
- package/dist/interactives-production.js +1231 -0
- package/dist/interactives-production.mjs +1170 -0
- package/dist/interactives-record.d.mts +112 -0
- package/dist/interactives-record.d.ts +112 -0
- package/dist/interactives-record.js +302 -0
- package/dist/interactives-record.mjs +295 -0
- package/dist/interactives-runtime.d.mts +61 -0
- package/dist/interactives-runtime.d.ts +61 -0
- package/dist/interactives-runtime.js +442 -0
- package/dist/interactives-runtime.mjs +25 -0
- package/dist/interactives-studio-kernel.global.js +1 -0
- package/dist/interactives-studio.d.mts +806 -0
- package/dist/interactives-studio.d.ts +806 -0
- package/dist/interactives-studio.js +5741 -0
- package/dist/interactives-studio.mjs +5651 -0
- package/dist/interactives-tick.d.mts +90 -0
- package/dist/interactives-tick.d.ts +90 -0
- package/dist/interactives-tick.js +203 -0
- package/dist/interactives-tick.mjs +6 -0
- package/dist/interactives-web.d.mts +762 -0
- package/dist/interactives-web.d.ts +762 -0
- package/dist/interactives-web.js +5000 -0
- package/dist/interactives-web.mjs +4628 -0
- package/dist/interactives.d.mts +2430 -0
- package/dist/interactives.d.ts +2430 -0
- package/dist/interactives.js +5723 -0
- package/dist/interactives.mjs +4333 -0
- package/dist/juice-CoHxlpKA.d.ts +42 -0
- package/dist/juice-DQztFS43.d.mts +42 -0
- package/dist/launch-T2f4_Di4.d.mts +151 -0
- package/dist/launch-d6oreMzR.d.ts +151 -0
- package/dist/library-DXYaMFhi.d.mts +69 -0
- package/dist/library-DXYaMFhi.d.ts +69 -0
- package/dist/link-BUTqGmyi.d.mts +38 -0
- package/dist/link-BUTqGmyi.d.ts +38 -0
- package/dist/lint.js +104 -204
- package/dist/lint.mjs +103 -203
- package/dist/local-D8_I6UeL.d.mts +6967 -0
- package/dist/local-VZkqsCzR.d.ts +6967 -0
- package/dist/lockstep-BLf6dglI.d.mts +321 -0
- package/dist/lockstep-D50Ia0JW.d.ts +321 -0
- package/dist/ludo-B8ClkDqr.d.ts +205 -0
- package/dist/ludo-BOuohQ-M.d.mts +205 -0
- package/dist/mock/cli.mjs +200 -56
- package/dist/mock/library.js +200 -56
- package/dist/mock/library.mjs +200 -56
- package/dist/mock/msw.js +200 -56
- package/dist/mock/msw.mjs +200 -56
- package/dist/native-BodxSh03.d.mts +16 -0
- package/dist/native-DUHMT8gA.d.ts +16 -0
- package/dist/network-ZXLD7l1b.d.mts +19 -0
- package/dist/network-ZXLD7l1b.d.ts +19 -0
- package/dist/online-XeymeM9s.d.ts +381 -0
- package/dist/online-d7W_Al9a.d.mts +381 -0
- package/dist/params-DxFb5G_U.d.mts +155 -0
- package/dist/params-DxFb5G_U.d.ts +155 -0
- package/dist/play-BRRlfLhX.d.ts +940 -0
- package/dist/play-ClrMd_e8.d.mts +940 -0
- package/dist/policy-CCw8tXLm.d.mts +3078 -0
- package/dist/policy-CMqOSQIu.d.ts +3078 -0
- package/dist/ports-B_0v_P3A.d.mts +13 -0
- package/dist/ports-CGU_3e_0.d.ts +13 -0
- package/dist/prefetch-BHnicOQj.d.ts +117 -0
- package/dist/prefetch-CBXgYacv.d.mts +117 -0
- package/dist/{price-CSztR02F.d.mts → price-BOzexBww.d.mts} +1 -1
- package/dist/{price-C_vasx9A.d.ts → price-C1h9sPxE.d.ts} +1 -1
- package/dist/protocol-C8qbpUbT.d.mts +242 -0
- package/dist/protocol-C8qbpUbT.d.ts +242 -0
- package/dist/rapier-AZHT4YI7.js +7886 -0
- package/dist/rapier-ODEPCQA6.mjs +7792 -0
- package/dist/react.d.mts +157 -15
- package/dist/react.d.ts +157 -15
- package/dist/react.js +5564 -5904
- package/dist/react.mjs +5451 -5808
- package/dist/runner-CQcLL7By.d.ts +189 -0
- package/dist/runner-D46Yj-wE.d.mts +189 -0
- package/dist/runtime-BRWfkf_q.d.mts +51 -0
- package/dist/runtime-DyuBMkKM.d.ts +51 -0
- package/dist/scheduling-D2ajXpMC.d.ts +224 -0
- package/dist/scheduling-DSRbbaZb.d.mts +224 -0
- package/dist/schema-BrWxzKp6.d.mts +63 -0
- package/dist/schema-BrWxzKp6.d.ts +63 -0
- package/dist/server/evict.js +34 -37
- package/dist/server/evict.mjs +34 -37
- package/dist/server/tanstack.d.mts +49 -3
- package/dist/server/tanstack.d.ts +49 -3
- package/dist/server/tanstack.js +169 -117
- package/dist/server/tanstack.mjs +166 -118
- package/dist/{server-Dckg4Vdr.d.ts → server-D29IIuDV.d.ts} +136 -130
- package/dist/{server-B6dW7-Lj.d.mts → server-DQMWPnc8.d.mts} +136 -130
- package/dist/server.d.mts +45 -5
- package/dist/server.d.ts +45 -5
- package/dist/server.js +171 -227
- package/dist/server.mjs +165 -225
- package/dist/session-grant-CJ27DwrT.d.mts +19 -0
- package/dist/session-grant-CJ27DwrT.d.ts +19 -0
- package/dist/shootout-BJZeX6FG.d.ts +140 -0
- package/dist/shootout-tcZd1Rxt.d.mts +140 -0
- package/dist/state-replica-stMtdkVD.d.mts +42 -0
- package/dist/state-replica-stMtdkVD.d.ts +42 -0
- package/dist/studio-CowqWqez.d.mts +14 -0
- package/dist/studio-CowqWqez.d.ts +14 -0
- package/dist/styles.css +1 -1
- package/dist/template-AhCdB1kW.d.mts +190 -0
- package/dist/template-BkEGVTQj.d.ts +190 -0
- package/dist/terrain-BMxEc6Oc.d.ts +429 -0
- package/dist/terrain-C-XC1Oui.d.mts +429 -0
- package/dist/testing/msw.d.mts +28 -4
- package/dist/testing/msw.d.ts +28 -4
- package/dist/testing/msw.js +15 -21
- package/dist/testing/msw.mjs +15 -21
- package/dist/testing/suite.d.mts +6 -5
- package/dist/testing/suite.d.ts +6 -5
- package/dist/testing/suite.js +89 -124
- package/dist/testing/suite.mjs +81 -116
- package/dist/testing.d.mts +27 -1227
- package/dist/testing.d.ts +27 -1227
- package/dist/testing.js +127 -131
- package/dist/testing.mjs +19 -23
- package/dist/tick-transport-C8QEh8Uw.d.mts +50 -0
- package/dist/tick-transport-UjHY3xK1.d.ts +50 -0
- package/dist/timeline-protocol-hp6e8zFB.d.mts +47 -0
- package/dist/timeline-protocol-hp6e8zFB.d.ts +47 -0
- package/dist/tokens-DhanQRQS.d.mts +21 -0
- package/dist/tokens-K8yxwd6G.d.ts +21 -0
- package/dist/tree-C-Io2Hbx.d.mts +35 -0
- package/dist/tree-CP_qSW4H.d.ts +35 -0
- package/dist/tycoon-B5KHk2Xx.d.mts +255 -0
- package/dist/tycoon-hmHo-3HX.d.ts +255 -0
- package/dist/types-BQkxPwZP.d.mts +219 -0
- package/dist/types-D_f6UUxM.d.ts +219 -0
- package/dist/ui-DwHicuFv.d.mts +563 -0
- package/dist/ui-hi7S2YcH.d.ts +563 -0
- package/dist/{sign-in-DQlIdqsi.d.mts → url-52ndUruG.d.mts} +15 -1
- package/dist/{sign-in-DQlIdqsi.d.ts → url-52ndUruG.d.ts} +15 -1
- package/dist/utils.d.mts +3 -3
- package/dist/utils.d.ts +3 -3
- package/dist/utils.js +37 -37
- package/dist/utils.mjs +4 -4
- package/dist/vars-Dc_PrhBK.d.mts +511 -0
- package/dist/vars-Dc_PrhBK.d.ts +511 -0
- package/dist/vm-IUARFFAI.mjs +63 -0
- package/dist/vm-N7L6MGGH.js +65 -0
- package/dist/weave-delivery-CW-Kstut.d.mts +360 -0
- package/dist/weave-delivery-CW-Kstut.d.ts +360 -0
- package/dist/web-Dss74a7v.d.ts +883 -0
- package/dist/web-f9ZQPoyw.d.mts +883 -0
- package/dist/web-transport-C7MkBL0a.d.ts +19 -0
- package/dist/web-transport-aYEqXMd9.d.mts +19 -0
- package/dist/weight-CPGjsgjV.d.ts +92 -0
- package/dist/weight-tF1ODR1p.d.mts +92 -0
- package/dist/word-BcX9Jcmv.d.mts +70 -0
- package/dist/word-C7sVPLHm.d.ts +70 -0
- package/dist/world-PvILHDR1.d.ts +2285 -0
- package/dist/world-qekkXjJv.d.mts +2285 -0
- package/dist/worlds-Br2Pb0Cs.d.ts +109 -0
- package/dist/worlds-D5ydYr7d.d.mts +109 -0
- package/engines/c/cimplify.h +108 -0
- package/engines/c/cimplify.lib.js +11 -0
- package/engines/godot/addons/cimplify/cimplify.gd +97 -0
- package/engines/rust/interactives-ctx/Cargo.toml +9 -0
- package/engines/rust/interactives-ctx/src/lib.rs +189 -0
- package/package.json +189 -3
- package/vendor/rapier3d-compat/LICENSE +201 -0
- package/vendor/rapier3d-compat/PATCHES.md +61 -0
- package/dist/chunk-2P4KXFB6.js +0 -274
- package/dist/chunk-3G6RQLXK.mjs +0 -21
- package/dist/chunk-3V4DVXV3.mjs +0 -254
- package/dist/chunk-EDK3LNM6.js +0 -2436
- package/dist/chunk-F7J3HK27.js +0 -4549
- package/dist/chunk-U4MW6PYU.mjs +0 -23
- package/dist/chunk-XREIZ56K.js +0 -26
package/dist/index.mjs
CHANGED
|
@@ -1,37 +1,179 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
import './chunk-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
export {
|
|
9
|
-
export {
|
|
10
|
-
import './chunk-
|
|
1
|
+
export { SHOPPER_RESCHEDULE_TYPE } from './chunk-76L2V6KD.mjs';
|
|
2
|
+
export { BOUNDARY_KIND, CIMPLIFY_CDN_HOSTS, DEFAULT_CDN_BASE_URL, DURATION_UNIT, INPUT_FIELD_TYPE, PRODUCT_TYPE, RENDER_HINT, allGalleryImages, assetUrl, chatMessageCards, displaysGrossPrices, getVariantDisplayName, isCimplifyAsset, isMultiDayService, priceBasisLabel, resolveGallery, serviceBillingMultiplier, stayLength, stayPeriods, transformToCheckoutCart } from './chunk-LUY45X3U.mjs';
|
|
3
|
+
export { isValidPhoneForContext, normalizePhoneToE164, resolvePhoneCountryCode } from './chunk-WIZRUIZB.mjs';
|
|
4
|
+
import { isTransientPurchaseIntentError } from './chunk-BTUSVHIE.mjs';
|
|
5
|
+
export { ActivityService, CONTENT_SHA256_HEADER, CimplifyClient, DeliveryService, HostedPurchaseIntentService, PURCHASE_INTENT_ROUTE, PlacesService, PurchaseIntentResolver, PurchaseIntentService, SESSION_CHANGE_SOURCE, SessionService, StoreCreditQueries, SubscriptionService, SupportService, UploadService, contentSha256, createCimplifyClient, isTransientPurchaseIntentError } from './chunk-BTUSVHIE.mjs';
|
|
6
|
+
import './chunk-SWX4SALA.mjs';
|
|
7
|
+
import { getAuthorizationEndpoint, DEFAULT_ISSUER, generatePkce, generateState } from './chunk-A36JRXXH.mjs';
|
|
8
|
+
export { AuthService, BusinessService, CartOperations, CatalogueQueries, CheckoutService as CheckoutOperations, CheckoutService, CimplifyElement, CimplifyElements, ELEMENTS_AUTH_CONTACT_TYPES, ELEMENTS_AUTH_MODES, ELEMENTS_AUTH_PROMPTS, ELEMENT_TYPES, EVENT_TYPES, FxService, InventoryService, LinkService, LiteService, MESSAGE_TYPES, OrderQueries, PAYMENT_AUTHORIZATION_OUTCOME_STATUS, PAYMENT_AUTHORIZATION_PROVIDER, PaymentAuthorizationAdapterRegistry, PaystackAuthorizationAdapter, SchedulingService, StripeAuthorizationAdapter, clearIntentIdempotencyKey as clearPurchaseIntentIdempotencyKey, combine, combineObject, confirmationForUnchangedReplacement, createDefaultPaymentAuthorizationAdapterRegistry, createElements, createPurchaseIntentConfirmation, err, flatMap, fromPromise, generateIdempotencyKey, getOrElse, isErr, isOk, mapError, mapResult, ok, intentIdempotencyKey as purchaseIntentIdempotencyKey, purchaseIntentRequiresPaymentOption, selectPurchaseIntentPaymentOption, startSignIn, toNullable, tryCatch, unwrap } from './chunk-A36JRXXH.mjs';
|
|
9
|
+
export { AUTHORIZATION_TYPE, AUTH_MUTATION, CHECKOUT_MODE, CHECKOUT_MUTATION, CHECKOUT_NEXT_ACTION, CHECKOUT_ORDER_RESULT_STATUS, CHECKOUT_STATUS, CHECKOUT_STEP, CONTACT_TYPE, DEFAULT_COUNTRY, DEFAULT_CURRENCY, DEVICE_TYPE, LINK_MUTATION, LINK_QUERY, MAX_PAYMENT_AUTHORIZATION_STEPS, MOBILE_MONEY_PROVIDER, ORDER_MUTATION, ORDER_TYPE, PAYMENT_METHOD, PAYMENT_MUTATION, PAYMENT_STATE, PICKUP_TIME_TYPE, SAVE_DETAILS_CONSENT } from './chunk-E6QQKDNE.mjs';
|
|
10
|
+
import { parsePrice } from './chunk-6ETDAU62.mjs';
|
|
11
|
+
export { CURRENCY_SYMBOLS, MOBILE_MONEY_PROVIDERS, PAYMENT_TERMINAL_FAILURE_STATUSES, canonicalMobileMoneyProvider, categorizePaymentError, detectMobileMoneyProvider, formatMoney, formatNumberCompact, formatPrice, formatPriceAdjustment, formatPriceCompact, formatPriceRange, formatPriceWithTax, formatProductPrice, getBasePrice, getCurrencySymbol, getDiscountPercentage, getDisplayPrice, getMarkupPercentage, getPriceRange, getProductCurrency, getTaxAmount, getUnitPriceAtQuantity, hasTaxInfo, isOnSale, isPaymentStatusFailure, isPaymentStatusRequiresAction, isPaymentStatusSuccess, isTaxInclusive, normalizePaymentResponse, normalizeStatusResponse, parsePrice, paymentAuthorizationUrl, purchaseIntentMobileMoneyNetwork } from './chunk-6ETDAU62.mjs';
|
|
12
|
+
import { ErrorCode, PURCHASE_INTENT_RESOLUTION_KIND } from './chunk-GCKWKLZF.mjs';
|
|
13
|
+
export { CHECKOUT_COMPLIANCE_LANE, CHECKOUT_COMPLIANCE_REASON, CHECKOUT_INVALIDATION_REASON, CHECKOUT_MATERIAL_TERMS_COMPONENT, CHECKOUT_PROTECTION_STATUS, CHECKOUT_PURCHASE_SURFACE, CHECKOUT_TERMS_COMPONENT, CHECKOUT_TERMS_DELTA_KIND, CimplifyError, ERROR_HINTS, ErrorCode, IdempotencyMismatchError, LEGACY_CHECKOUT_PAYMENT_METHOD_ALIAS, LEGACY_CHECKOUT_PAYMENT_STATUS, MOBILE_MONEY_TENDER_AUTHORITY_KIND, NATIVE_PURCHASE_PLATFORM, PAYMENT_COLLECTION_MODE, PAYMENT_INSTRUMENT_DISPLAY_KIND, PAYMENT_OPTION_NEXT_ACTION, PAYMENT_OPTION_STATUS, PURCHASE_DISPOSITION, PURCHASE_INTENT_ACTION_DECISION, PURCHASE_INTENT_CONFIRM_STATUS, PURCHASE_INTENT_ERROR_CODE, PURCHASE_INTENT_LINE_CONFIGURATION_KIND, PURCHASE_INTENT_MOBILE_MONEY_NETWORK, PURCHASE_INTENT_OFFER_KIND, PURCHASE_INTENT_PAYMENT_METHOD, PURCHASE_INTENT_PAYMENT_PROVIDER, PURCHASE_INTENT_RESOLUTION_KIND, PURCHASE_INTENT_RESOLVE_STATUS, PURCHASE_INTENT_SELLABLE_KIND, PURCHASE_INTENT_SOURCE_KIND, PURCHASE_INTENT_STATUS, PURCHASE_SURFACE, PURCHASING_PRINCIPAL_KIND, SOURCE_REFUSAL, ZERO, currencyCode, enrichError, getErrorHint, isCimplifyError, isIdempotencyMismatchError, isQuoteConflictRequiringConsent, isQuoteError, isRetryableError, isSupportedCurrency, money, moneyFromNumber } from './chunk-GCKWKLZF.mjs';
|
|
14
|
+
import './chunk-25T4JHEA.mjs';
|
|
15
|
+
|
|
16
|
+
// src/checkout-controller.ts
|
|
17
|
+
var MONEY_TOLERANCE = 5e-3;
|
|
18
|
+
function transientValuesEqual(left, right) {
|
|
19
|
+
if (Object.is(left, right)) return true;
|
|
20
|
+
if (Array.isArray(left) || Array.isArray(right))
|
|
21
|
+
return Array.isArray(left) && Array.isArray(right) && left.length === right.length && left.every((value, index) => transientValuesEqual(value, right[index]));
|
|
22
|
+
if (left === null || right === null || typeof left != "object" || typeof right != "object")
|
|
23
|
+
return false;
|
|
24
|
+
let leftRecord = left, rightRecord = right, leftKeys = Object.keys(leftRecord);
|
|
25
|
+
return leftKeys.length === Object.keys(rightRecord).length && leftKeys.every(
|
|
26
|
+
(key) => Object.prototype.hasOwnProperty.call(rightRecord, key) && transientValuesEqual(leftRecord[key], rightRecord[key])
|
|
27
|
+
);
|
|
28
|
+
}
|
|
29
|
+
function paymentOptionReviewFingerprint(intentId, terms, option) {
|
|
30
|
+
return JSON.stringify([
|
|
31
|
+
intentId,
|
|
32
|
+
terms.intent_revision,
|
|
33
|
+
terms.terms_version,
|
|
34
|
+
option.id,
|
|
35
|
+
option.customer_debit_amount
|
|
36
|
+
]);
|
|
37
|
+
}
|
|
38
|
+
function purchaseConfirmationFingerprint(intentId, terms, option) {
|
|
39
|
+
return JSON.stringify({
|
|
40
|
+
intentId,
|
|
41
|
+
intentRevision: terms.intent_revision,
|
|
42
|
+
termsVersion: terms.terms_version,
|
|
43
|
+
paymentOptionId: option?.id ?? null
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
function sameAmount(left, right) {
|
|
47
|
+
return Math.abs(parsePrice(left) - parsePrice(right)) < (5e-3);
|
|
48
|
+
}
|
|
49
|
+
function paymentOptionFee(option) {
|
|
50
|
+
return parsePrice(option.fee_amount);
|
|
51
|
+
}
|
|
52
|
+
function paymentOptionNeedsReview({
|
|
53
|
+
terms,
|
|
54
|
+
option,
|
|
55
|
+
displayedTotal
|
|
56
|
+
}) {
|
|
57
|
+
return paymentOptionFee(option) >= (5e-3) || !sameAmount(option.customer_debit_amount, terms.money.due_now) ? true : displayedTotal != null ? !sameAmount(option.customer_debit_amount, displayedTotal) : false;
|
|
58
|
+
}
|
|
59
|
+
var CHECKOUT_RECOVERY_MATCH = {
|
|
60
|
+
CURRENT: "current",
|
|
61
|
+
OTHER: "other",
|
|
62
|
+
NONE: "none"
|
|
63
|
+
};
|
|
64
|
+
function createCheckoutRecoveryStore({
|
|
65
|
+
storage,
|
|
66
|
+
namespace,
|
|
67
|
+
ttlMs,
|
|
68
|
+
now = Date.now
|
|
69
|
+
}) {
|
|
70
|
+
let keyFor = (businessId) => `${namespace}:${businessId}`;
|
|
71
|
+
function remove(businessId) {
|
|
72
|
+
try {
|
|
73
|
+
storage()?.removeItem(keyFor(businessId));
|
|
74
|
+
} catch {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
function read(businessId) {
|
|
79
|
+
let serialized = null;
|
|
80
|
+
try {
|
|
81
|
+
serialized = storage()?.getItem(keyFor(businessId)) ?? null;
|
|
82
|
+
} catch {
|
|
83
|
+
return null;
|
|
84
|
+
}
|
|
85
|
+
if (!serialized) return null;
|
|
86
|
+
let parsed = null;
|
|
87
|
+
try {
|
|
88
|
+
parsed = JSON.parse(serialized);
|
|
89
|
+
} catch {
|
|
90
|
+
parsed = null;
|
|
91
|
+
}
|
|
92
|
+
return !parsed || typeof parsed != "object" || parsed.business_id !== businessId || typeof parsed.timestamp != "number" || now() - parsed.timestamp > ttlMs ? (remove(businessId), null) : parsed;
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
save(record) {
|
|
96
|
+
try {
|
|
97
|
+
storage()?.setItem(keyFor(record.business_id), JSON.stringify(record));
|
|
98
|
+
} catch {
|
|
99
|
+
return;
|
|
100
|
+
}
|
|
101
|
+
},
|
|
102
|
+
read,
|
|
103
|
+
find(businessId, scope) {
|
|
104
|
+
let record = read(businessId);
|
|
105
|
+
if (!record) return { kind: CHECKOUT_RECOVERY_MATCH.NONE };
|
|
106
|
+
let intentMatches = !!scope.intentId && record.intent_id === scope.intentId, cartMatches = !!scope.cartId && record.cart_id === scope.cartId;
|
|
107
|
+
return intentMatches || cartMatches ? { kind: CHECKOUT_RECOVERY_MATCH.CURRENT, record } : { kind: CHECKOUT_RECOVERY_MATCH.OTHER, record };
|
|
108
|
+
},
|
|
109
|
+
clear: remove
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
var CHECKOUT_OUTCOME = {
|
|
113
|
+
COMPLETED: "completed",
|
|
114
|
+
FAILED: "failed",
|
|
115
|
+
PENDING: "pending",
|
|
116
|
+
REVIEW: "review"
|
|
117
|
+
}, CHECKOUT_COPY = {
|
|
118
|
+
DECLINED: "The payment didn't go through. Check the payment method and try again.",
|
|
119
|
+
PENDING: "We're still checking your payment. You can check again without paying twice.",
|
|
120
|
+
CHECKING: "Checking your payment\u2026",
|
|
121
|
+
UNREACHABLE: "We couldn't reach the payment service. Your payment may still go through, so check again before paying.",
|
|
122
|
+
GENERIC: "Something went wrong. Try again.",
|
|
123
|
+
CANCELLED: "Payment was cancelled.",
|
|
124
|
+
APPROVE_ON_PHONE: "Approve the prompt on your phone.",
|
|
125
|
+
COMPLETE_WITH_BANK: "Finish paying in the window that opened."
|
|
126
|
+
};
|
|
127
|
+
function checkoutOutcome(resolution) {
|
|
128
|
+
switch (resolution.kind) {
|
|
129
|
+
case PURCHASE_INTENT_RESOLUTION_KIND.COMPLETED:
|
|
130
|
+
return { kind: CHECKOUT_OUTCOME.COMPLETED, resolution };
|
|
131
|
+
case PURCHASE_INTENT_RESOLUTION_KIND.FAILED:
|
|
132
|
+
return { kind: CHECKOUT_OUTCOME.FAILED, message: CHECKOUT_COPY.DECLINED };
|
|
133
|
+
case PURCHASE_INTENT_RESOLUTION_KIND.REVIEW_REQUIRED:
|
|
134
|
+
return { kind: CHECKOUT_OUTCOME.REVIEW, resolution };
|
|
135
|
+
case PURCHASE_INTENT_RESOLUTION_KIND.OUTCOME_UNKNOWN:
|
|
136
|
+
case PURCHASE_INTENT_RESOLUTION_KIND.TIMED_OUT:
|
|
137
|
+
case PURCHASE_INTENT_RESOLUTION_KIND.ACTION_REQUIRED:
|
|
138
|
+
return { kind: CHECKOUT_OUTCOME.PENDING, message: CHECKOUT_COPY.PENDING };
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
var PLAIN_ERROR_COPY = {
|
|
142
|
+
[ErrorCode.NETWORK_ERROR]: "You seem to be offline. Check your connection and try again.",
|
|
143
|
+
[ErrorCode.TIMEOUT]: "The connection is slow. Try again.",
|
|
144
|
+
[ErrorCode.SERVER_ERROR]: "The payment service is busy. Try again in a moment.",
|
|
145
|
+
[ErrorCode.PRICE_CHANGED]: "Prices changed since you started. Review your cart and try again.",
|
|
146
|
+
[ErrorCode.QUOTE_VALIDATION_FAILED]: "Your cart was updated. Review the changes and try again.",
|
|
147
|
+
[ErrorCode.QUOTE_CONSUMED]: "This order was already placed. Refresh to start a new one.",
|
|
148
|
+
[ErrorCode.PAYMENT_CANCELLED]: CHECKOUT_COPY.CANCELLED,
|
|
149
|
+
[ErrorCode.POPUP_BLOCKED]: "Your browser blocked the payment window. Tap Continue to open it.",
|
|
150
|
+
[ErrorCode.TIP_NOT_SUPPORTED]: "Tips can't be added to this checkout.",
|
|
151
|
+
[ErrorCode.ORIGIN_NOT_ALLOWED]: "Checkout isn't available on this site.",
|
|
152
|
+
[ErrorCode.CANCELLED]: CHECKOUT_COPY.CANCELLED,
|
|
153
|
+
[ErrorCode.PAYMENT_OUTCOME_UNKNOWN]: CHECKOUT_COPY.PENDING,
|
|
154
|
+
PAYMENT_METHOD_UNAVAILABLE: "That payment method isn't available right now. Choose another.",
|
|
155
|
+
PAYMENT_METHOD_REQUIRED: "Choose how you'd like to pay.",
|
|
156
|
+
DELIVERY_QUOTE_REQUIRED: "Add a delivery address so we can work out delivery."
|
|
157
|
+
};
|
|
158
|
+
function checkoutErrorMessage(error) {
|
|
159
|
+
let code = error.code ?? "", known = PLAIN_ERROR_COPY[code];
|
|
160
|
+
return known || (code.startsWith("HTTP_5") ? PLAIN_ERROR_COPY[ErrorCode.SERVER_ERROR] : CHECKOUT_COPY.GENERIC);
|
|
161
|
+
}
|
|
162
|
+
function checkoutErrorIsTransient(error) {
|
|
163
|
+
return isTransientPurchaseIntentError(error);
|
|
164
|
+
}
|
|
11
165
|
|
|
12
166
|
// src/silent-sign-in.ts
|
|
13
|
-
var DEFAULT_SCOPE = "openid email phone profile";
|
|
14
|
-
var DEFAULT_TIMEOUT_MS = 12e3;
|
|
15
|
-
var RESPONSE_TYPE_CODE = "code";
|
|
16
|
-
var RESPONSE_MODE_WEB_MESSAGE = "web_message";
|
|
17
|
-
var PROMPT_NONE = "none";
|
|
18
|
-
var AUTHORIZATION_RESPONSE_MESSAGE_TYPE = "authorization_response";
|
|
19
|
-
var ERROR_LOGIN_REQUIRED = "login_required";
|
|
167
|
+
var DEFAULT_SCOPE = "openid email phone profile", DEFAULT_TIMEOUT_MS = 12e3, RESPONSE_TYPE_CODE = "code", RESPONSE_MODE_WEB_MESSAGE = "web_message", PROMPT_NONE = "none", AUTHORIZATION_RESPONSE_MESSAGE_TYPE = "authorization_response", ERROR_LOGIN_REQUIRED = "login_required";
|
|
20
168
|
async function signInSilent(opts) {
|
|
21
|
-
|
|
169
|
+
let sessionUri = opts.sessionUri ?? "/auth/session";
|
|
22
170
|
try {
|
|
23
|
-
|
|
24
|
-
if (sess.ok)
|
|
25
|
-
|
|
26
|
-
if (body?.sub) return { ok: true, reason: "already_signed_in" };
|
|
27
|
-
}
|
|
171
|
+
let sess = await fetch(sessionUri, { credentials: "include" });
|
|
172
|
+
if (sess.ok && (await sess.json().catch(() => null))?.sub)
|
|
173
|
+
return { ok: !0, reason: "already_signed_in" };
|
|
28
174
|
} catch {
|
|
29
175
|
}
|
|
30
|
-
|
|
31
|
-
const authorizeEndpoint = opts.authUrl ? `${opts.authUrl.replace(/\/$/, "")}/oauth/authorize` : await getAuthorizationEndpoint(opts.issuer ?? DEFAULT_ISSUER);
|
|
32
|
-
const pkce = await generatePkce();
|
|
33
|
-
const state = generateState();
|
|
34
|
-
const params = new URLSearchParams({
|
|
176
|
+
let callbackUri = opts.callbackUri ?? "/auth/callback", authorizeEndpoint = opts.authUrl ? `${opts.authUrl.replace(/\/$/, "")}/oauth/authorize` : await getAuthorizationEndpoint(opts.issuer ?? DEFAULT_ISSUER), pkce = await generatePkce(), state = generateState(), params = new URLSearchParams({
|
|
35
177
|
response_type: RESPONSE_TYPE_CODE,
|
|
36
178
|
response_mode: RESPONSE_MODE_WEB_MESSAGE,
|
|
37
179
|
prompt: PROMPT_NONE,
|
|
@@ -41,35 +183,19 @@ async function signInSilent(opts) {
|
|
|
41
183
|
state,
|
|
42
184
|
code_challenge: pkce.challenge,
|
|
43
185
|
code_challenge_method: pkce.method
|
|
44
|
-
});
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
const iframe = document.createElement("iframe");
|
|
48
|
-
iframe.style.display = "none";
|
|
49
|
-
iframe.setAttribute("aria-hidden", "true");
|
|
50
|
-
iframe.setAttribute("sandbox", "allow-scripts allow-same-origin");
|
|
51
|
-
iframe.src = src;
|
|
52
|
-
document.body.appendChild(iframe);
|
|
53
|
-
const timeoutMs = opts.timeoutMs ?? DEFAULT_TIMEOUT_MS;
|
|
186
|
+
}), src = `${authorizeEndpoint}?${params.toString()}`, expectedOrigin = new URL(authorizeEndpoint).origin, iframe = document.createElement("iframe");
|
|
187
|
+
iframe.style.display = "none", iframe.setAttribute("aria-hidden", "true"), iframe.setAttribute("sandbox", "allow-scripts allow-same-origin"), iframe.src = src, document.body.appendChild(iframe);
|
|
188
|
+
let timeoutMs = opts.timeoutMs ?? (12e3);
|
|
54
189
|
return new Promise((resolve) => {
|
|
55
|
-
let settled = false
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
};
|
|
61
|
-
const finish = (result) => {
|
|
62
|
-
if (settled) return;
|
|
63
|
-
settled = true;
|
|
64
|
-
cleanup();
|
|
65
|
-
resolve(result);
|
|
66
|
-
};
|
|
67
|
-
const timer = setTimeout(() => finish({ ok: false, reason: "timeout" }), timeoutMs);
|
|
68
|
-
const handler = async (event) => {
|
|
190
|
+
let settled = false, cleanup = () => {
|
|
191
|
+
window.removeEventListener("message", handler), iframe.remove(), clearTimeout(timer);
|
|
192
|
+
}, finish = (result) => {
|
|
193
|
+
settled || (settled = true, cleanup(), resolve(result));
|
|
194
|
+
}, timer = setTimeout(() => finish({ ok: false, reason: "timeout" }), timeoutMs), handler = async (event) => {
|
|
69
195
|
if (event.origin !== expectedOrigin) return;
|
|
70
|
-
|
|
71
|
-
if (!data || typeof data
|
|
72
|
-
|
|
196
|
+
let data = event.data;
|
|
197
|
+
if (!data || typeof data != "object" || data.type !== AUTHORIZATION_RESPONSE_MESSAGE_TYPE) return;
|
|
198
|
+
let response = data.response;
|
|
73
199
|
if (response.error === ERROR_LOGIN_REQUIRED) {
|
|
74
200
|
finish({ ok: false, reason: ERROR_LOGIN_REQUIRED });
|
|
75
201
|
return;
|
|
@@ -83,13 +209,13 @@ async function signInSilent(opts) {
|
|
|
83
209
|
return;
|
|
84
210
|
}
|
|
85
211
|
try {
|
|
86
|
-
|
|
212
|
+
let res = await fetch(callbackUri, {
|
|
87
213
|
method: "POST",
|
|
88
214
|
credentials: "include",
|
|
89
215
|
headers: { "Content-Type": "application/json" },
|
|
90
216
|
body: JSON.stringify({ code: response.code, codeVerifier: pkce.verifier, state })
|
|
91
217
|
});
|
|
92
|
-
finish(res.ok ? { ok:
|
|
218
|
+
finish(res.ok ? { ok: !0 } : { ok: !1, reason: "callback_failed" });
|
|
93
219
|
} catch {
|
|
94
220
|
finish({ ok: false, reason: "exception" });
|
|
95
221
|
}
|
|
@@ -98,4 +224,4 @@ async function signInSilent(opts) {
|
|
|
98
224
|
});
|
|
99
225
|
}
|
|
100
226
|
|
|
101
|
-
export { signInSilent };
|
|
227
|
+
export { CHECKOUT_COPY, CHECKOUT_OUTCOME, CHECKOUT_RECOVERY_MATCH, checkoutErrorIsTransient, checkoutErrorMessage, checkoutOutcome, createCheckoutRecoveryStore, paymentOptionFee, paymentOptionNeedsReview, paymentOptionReviewFingerprint, purchaseConfirmationFingerprint, signInSilent, transientValuesEqual };
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
interface AuthoringTopic {
|
|
2
|
+
readonly id: string;
|
|
3
|
+
readonly title: string;
|
|
4
|
+
readonly summary: string;
|
|
5
|
+
readonly body: string;
|
|
6
|
+
}
|
|
7
|
+
declare const AUTHORING_RULES = "Cimplify Interactives authoring rules\n\nProject layout. An Interactive is a folder: interactive.toml (manifest), cimplify.lock (pinned SDK, ctx and library versions; never edit it), package.json, tsconfig.json, src/client.ts (client entry, default export async function main(ctx: Ctx): Promise<void>), optional src/room.ts (shared rules), src/worker.ts (jobs) and src/tick.ts (an authoritative real-time tick room, [entries] tick; read the tick-rooms topic), src/conformance.ts for games (default export a frame hook factory used by the publication gates), tests/ (vitest), assets/ (models, textures, sounds, data).\n\nManifest (interactive.toml). Tables: [interactive] name, description, category (\"games\" or \"everyday\"), id (assigned on first publish, never invent one); [profile] kind (\"native\" for GenUI trees, \"canvas\" for games and creative surfaces), game (\"game_api\" for the Cimplify game API, \"wasm\" or \"godot\" for engine profiles), engine_features (list from: particles, raw_compute, raw_render, text, pick, post_shaders, audio, physics, models, images, ai, ui); [entries] client, room, worker, conformance, channels; [capabilities] each ctx scope with the reason shown to the player (for example share = \"Share your score with friends\"); [[providers]] every external destination with id, destination, data_use, purpose; [economy] currencies, items, odds, offers, rules; [ai] payer, budgets, characters, prompts, schemas, actions, styles; [rating] violence, sexuality, language, fear (each \"none\", \"mild\", \"moderate\" or \"strong\") and simulated_gambling (bool); [delivery] min_device_tier (\"low\", \"mid\", \"high\"), download_size (the brotli-compressed bytes a device transfers for what the package itself owns; the engine and SDK runtimes are shared platform code a device downloads once, and no package is billed for them), [[delivery.groups]] name, before_play, assets globs; [[content]] Workshop items (item, version, group).\n\nProfiles. Native profile code emits GenUI trees through ctx.ui and has no DOM. Canvas profile code runs in an isolated iframe; games use the Cimplify game API (@cimplify/sdk/game and @cimplify/sdk/game/kit, with @cimplify/sdk/game/kit/canvas for runCanvasGame). A game_api game never imports three, phaser or @dimforge/rapier3d-compat directly and never imports engine backends; the platform picks the engine.\n\nAllowed imports. Only @cimplify/sdk/interactives, @cimplify/sdk/game, @cimplify/sdk/game/kit, @cimplify/sdk/game/kit/canvas, @cimplify/sdk/game/kit/engine, @cimplify/sdk/game/kit/slots (typed template slots and remix manifests), the kit template entries (@cimplify/sdk/game/kit/shootout, runner, five-a-side, ludo, word, tycoon, danfo, courier, worlds, frontier, genesis), and relative imports inside the project. Node built-ins, URLs and unlisted npm packages are refused.\n\nAdmission refuses: eval, new Function, string timers, dynamic import(), require, fetch or XMLHttpRequest or WebSocket (network goes through ctx and declared providers only), raw DOM outside the canvas surface in the native profile, hard-coded URLs, minified or obfuscated code, binaries and prebuilt wasm, catastrophic regular expressions, text that collects passwords, card numbers or other credentials, payment wording outside ctx.wallet and host checkout, and any ctx scope used without a [capabilities] entry. TypeScript is checked in strict mode; every error blocks the build.\n\nPerformance doctrine. Frame and fixed-step code allocates nothing: create typed arrays, Vec3 and Quat scratch objects, materials, geometries and batches once in enter() or constructors, then reuse them. No array literals, closures, string building or object spreads inside fixedUpdate or update. Keep simulation in fixedUpdate (deterministic, fixed step) and presentation in update. Use game.random (seeded) for gameplay randomness, never Math.random. Use the detSin, detCos, detLog and detExp helpers inside simulation that must replay bit for bit. For hundreds or thousands of similar entities use an entity table (game.table, see the entity-tables topic): bulk op first, kernel second, cols or each third, cursor forEach last (on iOS, per-row JS above a few thousand rows is not viable: use bulk ops or kernels).\n\nStyle. Write clear TypeScript without comments. Name constants instead of repeating numbers. Keep the game playable on touch (virtual controls or pointer) and keyboard.\n\nSize. A template-scale game is a few hundred lines. Before writing your own inventory, shop, quest tracker, enemy waves, score and timer HUD, NPC daily routine, collectibles, checkpoints, arena or playtest bot, read the blocks topic and use the kit building blocks; they are allocation free and deterministic already.";
|
|
8
|
+
declare const AUTHORING_TOPICS: readonly AuthoringTopic[];
|
|
9
|
+
|
|
10
|
+
declare function authoringTopic(id: string): AuthoringTopic | null;
|
|
11
|
+
declare function authoringGuide(ids?: readonly string[]): string;
|
|
12
|
+
|
|
13
|
+
interface FileLines {
|
|
14
|
+
readonly path: string;
|
|
15
|
+
readonly lines: number;
|
|
16
|
+
}
|
|
17
|
+
interface GameLines {
|
|
18
|
+
readonly total: number;
|
|
19
|
+
readonly files: readonly FileLines[];
|
|
20
|
+
}
|
|
21
|
+
interface SourceText {
|
|
22
|
+
readonly path: string;
|
|
23
|
+
readonly source: string;
|
|
24
|
+
}
|
|
25
|
+
interface LineSource {
|
|
26
|
+
list(): Promise<readonly string[]>;
|
|
27
|
+
read(path: string): Promise<string | null>;
|
|
28
|
+
}
|
|
29
|
+
declare const EMPTY_GAME_LINES: GameLines;
|
|
30
|
+
declare function countSourceLines(source: string): number;
|
|
31
|
+
declare function isGameSourcePath(path: string): boolean;
|
|
32
|
+
declare function countGameLines(files: Iterable<SourceText>): GameLines;
|
|
33
|
+
declare function measureGameLines(project: LineSource): Promise<GameLines>;
|
|
34
|
+
declare const TEMPLATE_LINE_CEILINGS: Readonly<Record<string, number>>;
|
|
35
|
+
|
|
36
|
+
interface AuthoringToolSpec {
|
|
37
|
+
readonly name: string;
|
|
38
|
+
readonly description: string;
|
|
39
|
+
readonly input_schema: Readonly<Record<string, unknown>>;
|
|
40
|
+
}
|
|
41
|
+
interface AuthoringToolCall {
|
|
42
|
+
readonly id: string;
|
|
43
|
+
readonly name: string;
|
|
44
|
+
readonly input: Readonly<Record<string, unknown>>;
|
|
45
|
+
}
|
|
46
|
+
type AuthoringStop = "done" | "tools" | "truncated" | "refused";
|
|
47
|
+
interface AuthoringReply {
|
|
48
|
+
readonly text: string;
|
|
49
|
+
readonly calls: readonly AuthoringToolCall[];
|
|
50
|
+
readonly stop: AuthoringStop;
|
|
51
|
+
readonly echo: unknown;
|
|
52
|
+
}
|
|
53
|
+
interface AuthoringToolResult {
|
|
54
|
+
readonly id: string;
|
|
55
|
+
readonly content: string;
|
|
56
|
+
readonly error: boolean;
|
|
57
|
+
}
|
|
58
|
+
type AuthoringMessage = {
|
|
59
|
+
readonly role: "user";
|
|
60
|
+
readonly text: string;
|
|
61
|
+
} | {
|
|
62
|
+
readonly role: "assistant";
|
|
63
|
+
readonly reply: AuthoringReply;
|
|
64
|
+
} | {
|
|
65
|
+
readonly role: "tool_results";
|
|
66
|
+
readonly results: readonly AuthoringToolResult[];
|
|
67
|
+
};
|
|
68
|
+
interface AuthoringModelRequest {
|
|
69
|
+
readonly system: string;
|
|
70
|
+
readonly messages: readonly AuthoringMessage[];
|
|
71
|
+
readonly tools: readonly AuthoringToolSpec[];
|
|
72
|
+
}
|
|
73
|
+
interface AuthoringModel {
|
|
74
|
+
send(request: AuthoringModelRequest): Promise<AuthoringReply>;
|
|
75
|
+
}
|
|
76
|
+
interface AuthoringProject {
|
|
77
|
+
list(): Promise<readonly string[]>;
|
|
78
|
+
read(path: string): Promise<string | null>;
|
|
79
|
+
write(path: string, content: string): Promise<void>;
|
|
80
|
+
remove(path: string): Promise<boolean>;
|
|
81
|
+
}
|
|
82
|
+
interface AuthoringDiagnostic {
|
|
83
|
+
readonly severity: "error" | "warning";
|
|
84
|
+
readonly code: string;
|
|
85
|
+
readonly message: string;
|
|
86
|
+
readonly file: string | null;
|
|
87
|
+
readonly line: number | null;
|
|
88
|
+
}
|
|
89
|
+
type AuthoringCheck = () => Promise<readonly AuthoringDiagnostic[]>;
|
|
90
|
+
interface AuthoringChange {
|
|
91
|
+
readonly path: string;
|
|
92
|
+
readonly kind: "write" | "delete";
|
|
93
|
+
}
|
|
94
|
+
type AuthoringEvent = {
|
|
95
|
+
readonly kind: "text";
|
|
96
|
+
readonly text: string;
|
|
97
|
+
} | {
|
|
98
|
+
readonly kind: "tool";
|
|
99
|
+
readonly name: string;
|
|
100
|
+
readonly path: string | null;
|
|
101
|
+
} | {
|
|
102
|
+
readonly kind: "check";
|
|
103
|
+
readonly errors: number;
|
|
104
|
+
readonly round: number;
|
|
105
|
+
};
|
|
106
|
+
interface AuthoringTurnOptions {
|
|
107
|
+
readonly model: AuthoringModel;
|
|
108
|
+
readonly project: AuthoringProject;
|
|
109
|
+
readonly check: AuthoringCheck;
|
|
110
|
+
readonly request: string;
|
|
111
|
+
readonly history?: readonly AuthoringMessage[];
|
|
112
|
+
readonly maxSteps?: number;
|
|
113
|
+
readonly repairRounds?: number;
|
|
114
|
+
readonly onEvent?: (event: AuthoringEvent) => void;
|
|
115
|
+
}
|
|
116
|
+
type AuthoringEnd = "done" | "steps" | "truncated" | "refused";
|
|
117
|
+
interface AuthoringOutcome {
|
|
118
|
+
readonly changed: readonly AuthoringChange[];
|
|
119
|
+
readonly summary: string;
|
|
120
|
+
readonly diagnostics: readonly AuthoringDiagnostic[];
|
|
121
|
+
readonly repairs: number;
|
|
122
|
+
readonly end: AuthoringEnd;
|
|
123
|
+
readonly messages: readonly AuthoringMessage[];
|
|
124
|
+
readonly lines: GameLines;
|
|
125
|
+
readonly lineDelta: number;
|
|
126
|
+
}
|
|
127
|
+
declare const DEFAULT_MAX_STEPS = 40;
|
|
128
|
+
declare const DEFAULT_REPAIR_ROUNDS = 3;
|
|
129
|
+
declare const MAX_READ_BYTES = 200000;
|
|
130
|
+
declare const MAX_WRITE_BYTES = 400000;
|
|
131
|
+
declare const AUTHORING_TOOLS: readonly AuthoringToolSpec[];
|
|
132
|
+
declare function authoringSystemPrompt(): string;
|
|
133
|
+
declare function normalizeProjectPath(raw: string): string | null;
|
|
134
|
+
declare function writablePath(raw: string): string | null;
|
|
135
|
+
declare function readablePath(raw: string): string | null;
|
|
136
|
+
declare function formatDiagnostics(diagnostics: readonly AuthoringDiagnostic[]): string;
|
|
137
|
+
declare function runAuthoringTurn(options: AuthoringTurnOptions): Promise<AuthoringOutcome>;
|
|
138
|
+
|
|
139
|
+
declare const ANTHROPIC_AUTHORING_MODEL = "claude-opus-5-5";
|
|
140
|
+
type AuthoringEffort = "low" | "medium" | "high" | "xhigh" | "max";
|
|
141
|
+
interface AnthropicAuthoringOptions {
|
|
142
|
+
readonly apiKey: string;
|
|
143
|
+
readonly model?: string;
|
|
144
|
+
readonly baseUrl?: string;
|
|
145
|
+
readonly maxTokens?: number;
|
|
146
|
+
readonly effort?: AuthoringEffort;
|
|
147
|
+
readonly fallbacks?: boolean;
|
|
148
|
+
readonly fetch?: typeof fetch;
|
|
149
|
+
}
|
|
150
|
+
interface ContentBlock {
|
|
151
|
+
readonly type: string;
|
|
152
|
+
readonly text?: string;
|
|
153
|
+
readonly id?: string;
|
|
154
|
+
readonly name?: string;
|
|
155
|
+
readonly input?: unknown;
|
|
156
|
+
}
|
|
157
|
+
interface MessageResponse {
|
|
158
|
+
readonly content?: readonly ContentBlock[];
|
|
159
|
+
readonly stop_reason?: string | null;
|
|
160
|
+
}
|
|
161
|
+
declare function parseAnthropicReply(body: MessageResponse): AuthoringReply;
|
|
162
|
+
declare function anthropicAuthoringModel(options: AnthropicAuthoringOptions): AuthoringModel;
|
|
163
|
+
|
|
164
|
+
type ThreePortStatus = "auto" | "assisted" | "manual";
|
|
165
|
+
type ThreePortArea = "scene" | "object" | "geometry" | "material" | "light" | "camera" | "renderer" | "loader" | "animation" | "controls" | "loop" | "input" | "math" | "dom" | "audio" | "picking";
|
|
166
|
+
interface ThreePortMapping {
|
|
167
|
+
readonly three: string;
|
|
168
|
+
readonly area: ThreePortArea;
|
|
169
|
+
readonly status: ThreePortStatus;
|
|
170
|
+
readonly sdk: string;
|
|
171
|
+
readonly note: string;
|
|
172
|
+
}
|
|
173
|
+
interface ThreeGeometryRule {
|
|
174
|
+
readonly fn: string;
|
|
175
|
+
readonly defaults: readonly number[];
|
|
176
|
+
readonly simpleArgs: number;
|
|
177
|
+
readonly extendedFn: string | null;
|
|
178
|
+
}
|
|
179
|
+
type ThreeMaterialKind = "standard" | "physical" | "unlit" | "toon" | "matcap";
|
|
180
|
+
interface ThreeMaterialRule {
|
|
181
|
+
readonly kind: ThreeMaterialKind;
|
|
182
|
+
readonly shininessToRoughness: boolean;
|
|
183
|
+
readonly roughness: number | null;
|
|
184
|
+
}
|
|
185
|
+
type ThreeLightKind = "directional" | "point" | "spot" | "ambient" | "hemisphere" | "rectArea";
|
|
186
|
+
interface ThreeLightRule {
|
|
187
|
+
readonly light: ThreeLightKind;
|
|
188
|
+
readonly params: readonly string[];
|
|
189
|
+
}
|
|
190
|
+
declare const THREE_GEOMETRIES: Readonly<Record<string, ThreeGeometryRule>>;
|
|
191
|
+
declare const THREE_MATERIALS: Readonly<Record<string, ThreeMaterialRule>>;
|
|
192
|
+
declare const THREE_LIGHTS: Readonly<Record<string, ThreeLightRule>>;
|
|
193
|
+
declare const THREE_MATERIAL_PROPERTIES: readonly string[];
|
|
194
|
+
declare const THREE_TEXTURE_SLOTS: readonly string[];
|
|
195
|
+
declare const THREE_SIDES: Readonly<Record<string, string>>;
|
|
196
|
+
declare const THREE_CONTROLS: Readonly<Record<string, string>>;
|
|
197
|
+
declare const THREE_MATH_HELPERS: Readonly<Record<string, string>>;
|
|
198
|
+
declare const THREE_VECTOR_METHODS: Readonly<Record<string, string>>;
|
|
199
|
+
declare const THREEJS_PORT_MAP: readonly ThreePortMapping[];
|
|
200
|
+
type ThreePortResidueKind = "unconverted" | "advisory";
|
|
201
|
+
interface ThreePortResidue {
|
|
202
|
+
readonly id: string;
|
|
203
|
+
readonly kind: ThreePortResidueKind;
|
|
204
|
+
readonly area: ThreePortArea;
|
|
205
|
+
readonly construct: string;
|
|
206
|
+
readonly file: string;
|
|
207
|
+
readonly line: number;
|
|
208
|
+
readonly column: number;
|
|
209
|
+
readonly source: string;
|
|
210
|
+
readonly hint: string;
|
|
211
|
+
}
|
|
212
|
+
interface ThreePortFileLines {
|
|
213
|
+
readonly path: string;
|
|
214
|
+
readonly lines: number;
|
|
215
|
+
}
|
|
216
|
+
interface ThreePortReport {
|
|
217
|
+
readonly source: readonly ThreePortFileLines[];
|
|
218
|
+
readonly output: readonly ThreePortFileLines[];
|
|
219
|
+
readonly linesBefore: number;
|
|
220
|
+
readonly linesAfter: number;
|
|
221
|
+
readonly gameLinesAfter: number;
|
|
222
|
+
readonly converted: number;
|
|
223
|
+
readonly convertedByArea: Readonly<Partial<Record<ThreePortArea, number>>>;
|
|
224
|
+
readonly residue: readonly ThreePortResidue[];
|
|
225
|
+
}
|
|
226
|
+
declare const THREEJS_PORT_TOPIC_ID = "porting-threejs";
|
|
227
|
+
declare function threejsPortGuide(): string;
|
|
228
|
+
declare const THREEJS_PORT_TOPIC: AuthoringTopic;
|
|
229
|
+
declare function threejsPortRequest(report: ThreePortReport): string;
|
|
230
|
+
|
|
231
|
+
export { ANTHROPIC_AUTHORING_MODEL, AUTHORING_RULES, AUTHORING_TOOLS, AUTHORING_TOPICS, type AnthropicAuthoringOptions, type AuthoringChange, type AuthoringCheck, type AuthoringDiagnostic, type AuthoringEffort, type AuthoringEnd, type AuthoringEvent, type AuthoringMessage, type AuthoringModel, type AuthoringModelRequest, type AuthoringOutcome, type AuthoringProject, type AuthoringReply, type AuthoringStop, type AuthoringToolCall, type AuthoringToolResult, type AuthoringToolSpec, type AuthoringTopic, type AuthoringTurnOptions, DEFAULT_MAX_STEPS, DEFAULT_REPAIR_ROUNDS, EMPTY_GAME_LINES, type FileLines, type GameLines, type LineSource, MAX_READ_BYTES, MAX_WRITE_BYTES, type SourceText, TEMPLATE_LINE_CEILINGS, THREEJS_PORT_MAP, THREEJS_PORT_TOPIC, THREEJS_PORT_TOPIC_ID, THREE_CONTROLS, THREE_GEOMETRIES, THREE_LIGHTS, THREE_MATERIALS, THREE_MATERIAL_PROPERTIES, THREE_MATH_HELPERS, THREE_SIDES, THREE_TEXTURE_SLOTS, THREE_VECTOR_METHODS, type ThreeGeometryRule, type ThreeLightKind, type ThreeLightRule, type ThreeMaterialKind, type ThreeMaterialRule, type ThreePortArea, type ThreePortFileLines, type ThreePortMapping, type ThreePortReport, type ThreePortResidue, type ThreePortResidueKind, type ThreePortStatus, anthropicAuthoringModel, authoringGuide, authoringSystemPrompt, authoringTopic, countGameLines, countSourceLines, formatDiagnostics, isGameSourcePath, measureGameLines, normalizeProjectPath, parseAnthropicReply, readablePath, runAuthoringTurn, threejsPortGuide, threejsPortRequest, writablePath };
|