@qitqode/qitqode-android-arm64 0.2.2 → 0.2.3
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/bun +0 -0
- package/bundle/{chunk-2hv2c8d5.js → chunk-0428v6mw.js} +1 -1
- package/bundle/{chunk-0f3ft9dh.js → chunk-05ck7acg.js} +1 -1
- package/bundle/{chunk-3888asr7.js → chunk-083wpv6r.js} +1 -1
- package/bundle/{chunk-j5ymkhry.js → chunk-0cnwsf8p.js} +1 -1
- package/bundle/{chunk-7z884mz2.js → chunk-0nbteyb0.js} +2 -2
- package/bundle/chunk-0nqf1k20.js +2 -0
- package/bundle/chunk-0ppnq3a4.js +2 -0
- package/bundle/{chunk-6kf4vw2g.js → chunk-0qd3567w.js} +1 -1
- package/bundle/{chunk-jw114bbt.js → chunk-0smnwqk6.js} +2 -2
- package/bundle/chunk-0te0vcdn.js +2 -0
- package/bundle/{chunk-xmjntwjc.js → chunk-0vakk88p.js} +2 -2
- package/bundle/{chunk-45fyv9f1.js → chunk-0vxnkstz.js} +2 -2
- package/bundle/{chunk-q4fn41ex.js → chunk-0xrb12s8.js} +2 -2
- package/bundle/chunk-11h06z17.js +2 -0
- package/bundle/chunk-16w710kf.js +3 -0
- package/bundle/{chunk-6dfjtzqb.js → chunk-21rq4592.js} +2 -2
- package/bundle/{chunk-y3dfk6n5.js → chunk-24rkf2gk.js} +1 -1
- package/bundle/{chunk-rdwma0de.js → chunk-24ygjbpf.js} +2 -2
- package/bundle/chunk-262s2yz2.js +2 -0
- package/bundle/chunk-28yv4fqe.js +2 -0
- package/bundle/{chunk-3tmq81kq.js → chunk-2drzgtv3.js} +2 -2
- package/bundle/{chunk-xd3xc1vv.js → chunk-2md6sx8d.js} +1 -1
- package/bundle/{chunk-v9rg0a8g.js → chunk-313zqzc1.js} +1 -1
- package/bundle/{chunk-zfd70p01.js → chunk-32j0q58h.js} +1 -1
- package/bundle/chunk-34a52hyr.js +2 -0
- package/bundle/{chunk-86jsqc7d.js → chunk-39z96pc6.js} +3 -3
- package/bundle/{chunk-t1475j9f.js → chunk-3atcc483.js} +1 -1
- package/bundle/{chunk-e6wp96vm.js → chunk-3jf3jhrs.js} +1 -1
- package/bundle/{chunk-4sxg9cgr.js → chunk-3kpse7zy.js} +1 -1
- package/bundle/chunk-3n3gb3vd.js +2 -0
- package/bundle/chunk-3sq60y9f.js +2 -0
- package/bundle/{chunk-2qwmrp16.js → chunk-3vvd7j14.js} +1 -1
- package/bundle/chunk-4086z5ys.js +2 -0
- package/bundle/{chunk-rcyzqa3g.js → chunk-450fef7h.js} +2 -2
- package/bundle/{chunk-kxjrrdj0.js → chunk-45a4n21f.js} +1 -1
- package/bundle/{chunk-xny5ecn0.js → chunk-47k5jy1p.js} +2 -2
- package/bundle/{chunk-6f8qqbac.js → chunk-47z3x3dp.js} +166 -205
- package/bundle/{chunk-0gab4v98.js → chunk-48r70n4s.js} +1 -1
- package/bundle/chunk-49mbnqvc.js +2 -0
- package/bundle/{chunk-ssdw9zre.js → chunk-49xhybc2.js} +1 -1
- package/bundle/{chunk-t9zbp2qw.js → chunk-4agaj51z.js} +1 -1
- package/bundle/{chunk-mrn44msr.js → chunk-4dnntf9k.js} +2 -2
- package/bundle/chunk-4fr6kae9.js +2 -0
- package/bundle/chunk-4websxrs.js +2 -0
- package/bundle/chunk-516w1nc4.js +2 -0
- package/bundle/chunk-52w60e1f.js +2 -0
- package/bundle/chunk-535nm66j.js +2 -0
- package/bundle/{chunk-1p6jjrea.js → chunk-55fcmswd.js} +2 -2
- package/bundle/{chunk-n7kqdqkh.js → chunk-55ykn8nz.js} +4 -4
- package/bundle/chunk-565855py.js +2 -0
- package/bundle/chunk-56v352f8.js +2 -0
- package/bundle/chunk-5bjtq8t2.js +2 -0
- package/bundle/{chunk-as845ya4.js → chunk-5c2438af.js} +1 -1
- package/bundle/chunk-5kpxpm8e.js +2 -0
- package/bundle/chunk-5nm5s0h2.js +2 -0
- package/bundle/{chunk-07s30fpb.js → chunk-5nrc5rhh.js} +1 -1
- package/bundle/{chunk-jwph7tpc.js → chunk-5pwv2p3s.js} +1 -1
- package/bundle/{chunk-q5abwn50.js → chunk-5pzs51sp.js} +1 -1
- package/bundle/{chunk-r0s28gnb.js → chunk-5tky3csh.js} +1 -1
- package/bundle/{chunk-yajd975f.js → chunk-5w76kdjr.js} +1 -1
- package/bundle/{chunk-wcqfr8vr.js → chunk-5ysbwr4x.js} +1 -1
- package/bundle/{chunk-85xh72hk.js → chunk-5zkj5xv9.js} +2 -2
- package/bundle/{chunk-fgn83bs7.js → chunk-65bmsp2t.js} +1 -1
- package/bundle/chunk-65t9b9eq.js +3 -0
- package/bundle/{chunk-9jrxrjzt.js → chunk-68v3b6ns.js} +2 -2
- package/bundle/{chunk-7ntw4rrn.js → chunk-6ar91jvd.js} +1 -1
- package/bundle/{chunk-bbbh69ys.js → chunk-6evh2ke8.js} +1 -1
- package/bundle/chunk-6gpf2bjs.js +2 -0
- package/bundle/{chunk-a2dz9nqh.js → chunk-6m9jb0s9.js} +2 -2
- package/bundle/{chunk-yvjke593.js → chunk-6scf311w.js} +1 -1
- package/bundle/{chunk-e374shb8.js → chunk-6tstcwxp.js} +2 -2
- package/bundle/{chunk-5wwd40t3.js → chunk-70q8qcb2.js} +1 -1
- package/bundle/{chunk-pfkm3j8g.js → chunk-73r8bjjz.js} +2 -2
- package/bundle/{chunk-9bm9z52r.js → chunk-78pt314g.js} +1 -1
- package/bundle/{chunk-hs3vfhar.js → chunk-7bcm7gg1.js} +1 -1
- package/bundle/chunk-7bgzcpdw.js +2 -0
- package/bundle/{chunk-ezfzb8qc.js → chunk-7g66qc1v.js} +2 -2
- package/bundle/{chunk-fd7fmvyw.js → chunk-7hvf9dgx.js} +1 -1
- package/bundle/chunk-7kjvcbwa.js +2 -0
- package/bundle/chunk-7knnz5f1.js +2 -0
- package/bundle/{chunk-6j339s7a.js → chunk-7mppvhv9.js} +2 -2
- package/bundle/{chunk-kmwy6c9g.js → chunk-7vmx8bg9.js} +2 -2
- package/bundle/{chunk-7njz51r4.js → chunk-7x6yrtzn.js} +1 -1
- package/bundle/{chunk-skv9ww0s.js → chunk-804vmbcd.js} +1 -1
- package/bundle/{chunk-7zc04q43.js → chunk-88q0mtgp.js} +2 -2
- package/bundle/chunk-8jma2btf.js +2 -0
- package/bundle/{chunk-dbztxdea.js → chunk-8mm92zn2.js} +2 -2
- package/bundle/{chunk-kdcnder5.js → chunk-8wwdrwf2.js} +1 -1
- package/bundle/{chunk-4fk46ngj.js → chunk-920z7g7j.js} +1 -1
- package/bundle/chunk-93e0w75z.js +2 -0
- package/bundle/{chunk-pzefsndd.js → chunk-953pqp3w.js} +1 -1
- package/bundle/chunk-96wwns35.js +2 -0
- package/bundle/chunk-97gp818s.js +2 -0
- package/bundle/chunk-9epf2zbh.js +2 -0
- package/bundle/chunk-9fyz4sxa.js +2 -0
- package/bundle/{chunk-4hd3v58j.js → chunk-9hz56z6a.js} +1 -1
- package/bundle/{chunk-rk2bk4s7.js → chunk-9zm6r55d.js} +2 -2
- package/bundle/chunk-a7wmadf1.js +2 -0
- package/bundle/{chunk-w7em72p8.js → chunk-ac7482n2.js} +2 -2
- package/bundle/chunk-agv04nt7.js +2 -0
- package/bundle/{chunk-cbmwhvxw.js → chunk-at22twxx.js} +2 -2
- package/bundle/{chunk-frsd6e1h.js → chunk-avefgbjg.js} +2 -2
- package/bundle/chunk-azpnrnv9.js +8251 -0
- package/bundle/{chunk-z2h1gxyx.js → chunk-bbng1cea.js} +1 -1
- package/bundle/{chunk-5az84brc.js → chunk-bd21p9zz.js} +2 -2
- package/bundle/chunk-be7smmar.js +2 -0
- package/bundle/{chunk-y4e7e42x.js → chunk-bne5w117.js} +4 -4
- package/bundle/{chunk-j3jqk62r.js → chunk-bqn6bqws.js} +1 -1
- package/bundle/{chunk-yhsnmpzv.js → chunk-brws2aht.js} +1 -1
- package/bundle/chunk-bryx5cx9.js +2 -0
- package/bundle/{chunk-vtw0wwch.js → chunk-bvf2dcq4.js} +3 -3
- package/bundle/{chunk-tge53d52.js → chunk-bwbqkfv0.js} +1 -1
- package/bundle/chunk-c13rrw41.js +2 -0
- package/bundle/chunk-c2kkv619.js +2 -0
- package/bundle/{chunk-64c8q9zg.js → chunk-c36p881g.js} +3 -3
- package/bundle/chunk-c5xj1y5v.js +2 -0
- package/bundle/chunk-c74cxhjb.js +2 -0
- package/bundle/chunk-cejyed1j.js +2 -0
- package/bundle/chunk-ckpm4dvv.js +2 -0
- package/bundle/{chunk-732yr6qq.js → chunk-cmb62jkt.js} +2 -2
- package/bundle/chunk-ct8twng1.js +2 -0
- package/bundle/{chunk-1q1cddy4.js → chunk-cz5vta94.js} +1 -1
- package/bundle/{chunk-fpm2vgz6.js → chunk-d0x5pbkm.js} +1 -1
- package/bundle/chunk-d38y7bvh.js +2 -0
- package/bundle/chunk-d6hxsfm6.js +2 -0
- package/bundle/{chunk-29zm623f.js → chunk-d6jhs818.js} +2 -2
- package/bundle/chunk-descb9jz.js +2 -0
- package/bundle/{chunk-mswx4k75.js → chunk-dnnkq5y4.js} +2 -2
- package/bundle/{chunk-6pcmv8vs.js → chunk-dnsh1v42.js} +2 -2
- package/bundle/{chunk-vk88jj60.js → chunk-dqp4nmxs.js} +1 -1
- package/bundle/chunk-dvr2b9r1.js +2 -0
- package/bundle/{chunk-s0ty36qg.js → chunk-dxdggn90.js} +1 -1
- package/bundle/{chunk-w30b563s.js → chunk-e8p92vz4.js} +2 -2
- package/bundle/chunk-ea5fktnn.js +2 -0
- package/bundle/{chunk-t1jgx17a.js → chunk-eg3syjtv.js} +2 -2
- package/bundle/{chunk-2a9rzgk6.js → chunk-ehb4hd9c.js} +1 -1
- package/bundle/{chunk-9jsgs71h.js → chunk-ejqzcdcx.js} +1 -1
- package/bundle/chunk-enmsp09e.js +3 -0
- package/bundle/chunk-epgcsjfp.js +2 -0
- package/bundle/{chunk-5t0w9ecw.js → chunk-et3804wr.js} +1 -1
- package/bundle/{chunk-yd8bzhv6.js → chunk-ezrqhqkp.js} +1 -1
- package/bundle/chunk-f0t7rryn.js +3 -0
- package/bundle/{chunk-p635phfw.js → chunk-f31yvp20.js} +1 -1
- package/bundle/chunk-f4mf6tpp.js +2 -0
- package/bundle/chunk-f97k17t8.js +2 -0
- package/bundle/{chunk-yx1h0b5v.js → chunk-faee8zgc.js} +1 -1
- package/bundle/{chunk-p9mj4zyk.js → chunk-ff548b0j.js} +2 -2
- package/bundle/{chunk-bgng3rdj.js → chunk-fhqfqd5v.js} +2 -2
- package/bundle/{chunk-zek5c15t.js → chunk-fjbv3jht.js} +1 -1
- package/bundle/{chunk-epa576pa.js → chunk-fsahzvd5.js} +3 -3
- package/bundle/chunk-g06a4chw.js +2 -0
- package/bundle/{chunk-hq9bgnqb.js → chunk-g22e4gw7.js} +1 -1
- package/bundle/{chunk-s0ptrw0z.js → chunk-g3wvtyw3.js} +1 -1
- package/bundle/{chunk-x4pdpka8.js → chunk-g42krp0z.js} +1 -1
- package/bundle/chunk-g4ehhdzp.js +2 -0
- package/bundle/{chunk-a9y27zd2.js → chunk-gbkz04ke.js} +1 -1
- package/bundle/chunk-gd6qpdjw.js +2 -0
- package/bundle/chunk-gehn9fd9.js +2 -0
- package/bundle/{chunk-0zxwjsvz.js → chunk-ggxzf22k.js} +1 -1
- package/bundle/{chunk-kzvvvj79.js → chunk-gszvgz76.js} +2 -2
- package/bundle/{chunk-g3kd4957.js → chunk-gy21fw82.js} +2 -2
- package/bundle/{chunk-cbf1y12x.js → chunk-h62chdmw.js} +1 -1
- package/bundle/{chunk-et5dnymk.js → chunk-h823m51m.js} +2 -2
- package/bundle/{chunk-5js6a6gf.js → chunk-h99tj1e4.js} +1 -1
- package/bundle/{chunk-c1g8n10t.js → chunk-ha1w0xzh.js} +1 -1
- package/bundle/chunk-ha8b2n4x.js +2 -0
- package/bundle/{chunk-rpfhgncs.js → chunk-has2rz35.js} +1 -1
- package/bundle/chunk-hbyrwmne.js +2 -0
- package/bundle/chunk-hhax4mxw.js +2 -0
- package/bundle/{chunk-087tnr8a.js → chunk-hwrrrbqd.js} +1 -1
- package/bundle/chunk-hzrxmdqm.js +2 -0
- package/bundle/{chunk-yd2emszh.js → chunk-j0bwa5dk.js} +2 -2
- package/bundle/{chunk-9b4aqcde.js → chunk-j164q40b.js} +2 -2
- package/bundle/{chunk-qhnpq5gb.js → chunk-j8fcfhr2.js} +2 -2
- package/bundle/{chunk-9ea1n338.js → chunk-j9h1sp4g.js} +2 -2
- package/bundle/{chunk-yrfq22a5.js → chunk-jg1ccs3j.js} +1 -1
- package/bundle/{chunk-d307vb2d.js → chunk-jqk3v8d6.js} +1 -1
- package/bundle/chunk-jrwnz64e.js +3 -0
- package/bundle/chunk-jvkzdap1.js +2 -0
- package/bundle/chunk-jvybgsz5.js +5 -0
- package/bundle/{chunk-pp9neaaz.js → chunk-jww55nk9.js} +1 -1
- package/bundle/{chunk-fvy24yhq.js → chunk-k1nh5sd2.js} +1 -1
- package/bundle/{chunk-wfggztm4.js → chunk-k4gsktts.js} +1 -1
- package/bundle/{chunk-qaz100ht.js → chunk-k5q9px67.js} +1 -1
- package/bundle/chunk-kg8fcv91.js +2 -0
- package/bundle/chunk-kgptyf7n.js +3 -0
- package/bundle/{chunk-b50t4jc5.js → chunk-khzzmyk2.js} +1 -1
- package/bundle/chunk-kjjjrjnb.js +2 -0
- package/bundle/{chunk-jvjq554f.js → chunk-ksme3gj1.js} +1 -1
- package/bundle/chunk-m5cfmhwh.js +2 -0
- package/bundle/{chunk-4v61ysex.js → chunk-m5dm7a1t.js} +1 -1
- package/bundle/{chunk-yr35q7q1.js → chunk-m7ganre7.js} +1 -1
- package/bundle/chunk-m7qxxbns.js +2 -0
- package/bundle/{chunk-y287zwkr.js → chunk-mh19kwzw.js} +1 -1
- package/bundle/{chunk-7my2231h.js → chunk-mhhtf0v3.js} +1 -1
- package/bundle/{chunk-grw4gg9j.js → chunk-mjjaezwq.js} +2 -2
- package/bundle/{chunk-03mbn7nj.js → chunk-mmjgf680.js} +2 -2
- package/bundle/{chunk-jv4th87b.js → chunk-mn9end71.js} +1 -1
- package/bundle/{chunk-543pt030.js → chunk-msdypt5f.js} +2 -2
- package/bundle/chunk-n0b0dfqk.js +2 -0
- package/bundle/{chunk-3h49k2ck.js → chunk-n23d0q00.js} +1 -1
- package/bundle/{chunk-mpe8zxc0.js → chunk-n78f8hfk.js} +1 -1
- package/bundle/chunk-n8wg5h5p.js +2 -0
- package/bundle/{chunk-9s785py4.js → chunk-nbd13scz.js} +1 -1
- package/bundle/{chunk-sjreby6e.js → chunk-nftgx6bz.js} +1 -1
- package/bundle/{chunk-gr4bctqj.js → chunk-nj1ntakd.js} +2 -2
- package/bundle/{chunk-wdaf713t.js → chunk-nrat6ncm.js} +1 -1
- package/bundle/{chunk-rm5ntsvn.js → chunk-nty5z2cj.js} +1 -1
- package/bundle/chunk-nvwzam7a.js +2 -0
- package/bundle/{chunk-rp8asmq7.js → chunk-p169ee92.js} +1 -1
- package/bundle/chunk-p27a88vp.js +7 -0
- package/bundle/{chunk-h10wjk96.js → chunk-p3rd2q47.js} +2 -2
- package/bundle/{chunk-fbm6qczy.js → chunk-p4027t94.js} +1 -1
- package/bundle/{chunk-94qhpkfx.js → chunk-p54bzjtv.js} +1 -1
- package/bundle/{chunk-cp39f96a.js → chunk-p5be5ddp.js} +1 -1
- package/bundle/{chunk-ngvp6zc2.js → chunk-p6crzjtf.js} +2 -2
- package/bundle/chunk-p6hcj3kv.js +2 -0
- package/bundle/{chunk-p4ewy9xh.js → chunk-pb30kkbs.js} +6 -6
- package/bundle/chunk-pexmns0j.js +2 -0
- package/bundle/{chunk-my3cswnp.js → chunk-ph8hn1wt.js} +2 -2
- package/bundle/{chunk-99148b1k.js → chunk-pmg53fdd.js} +1 -1
- package/bundle/{chunk-wf4x5cjc.js → chunk-pr7z5dj8.js} +1 -1
- package/bundle/chunk-pt603np4.js +2 -0
- package/bundle/{chunk-4mvg7jt1.js → chunk-ptqk1j2r.js} +1 -1
- package/bundle/{chunk-a92hh67a.js → chunk-pxm4qvqk.js} +2 -2
- package/bundle/{chunk-3qfpw8f6.js → chunk-qey1efpx.js} +1 -1
- package/bundle/chunk-qk5bfcv8.js +2 -0
- package/bundle/{chunk-91z7azf7.js → chunk-qktzz0sy.js} +1 -1
- package/bundle/{chunk-ks1cs80p.js → chunk-qnvsqnz5.js} +2 -2
- package/bundle/{chunk-bcx2vkv4.js → chunk-qp1n7kwe.js} +1 -1
- package/bundle/{chunk-zcp0wx4j.js → chunk-qqrc1h5b.js} +2 -2
- package/bundle/{chunk-vyh300ac.js → chunk-qqxrvyx0.js} +2 -2
- package/bundle/chunk-qr06byhp.js +2 -0
- package/bundle/{chunk-8v6x712g.js → chunk-qrxqfp59.js} +2 -2
- package/bundle/{chunk-gtjn3yc4.js → chunk-qxcyz5hc.js} +2 -2
- package/bundle/{chunk-a550vst5.js → chunk-qznr1emx.js} +9 -9
- package/bundle/{chunk-tj3rem3q.js → chunk-r5zy4za0.js} +2 -2
- package/bundle/chunk-r7sq3maz.js +2 -0
- package/bundle/{chunk-f83wv08n.js → chunk-r9w0thdk.js} +1 -1
- package/bundle/chunk-rmgs9nmj.js +2 -0
- package/bundle/{chunk-p887g1xj.js → chunk-rn83r0js.js} +1 -1
- package/bundle/{chunk-8d6e4jg7.js → chunk-rp9r3cvt.js} +2 -2
- package/bundle/{chunk-n90eh3e7.js → chunk-rrv0n73b.js} +1 -1
- package/bundle/chunk-rscfes01.js +2 -0
- package/bundle/chunk-rytavefg.js +2 -0
- package/bundle/{chunk-g7k6ecb2.js → chunk-s2gg38y0.js} +1 -1
- package/bundle/{chunk-yz0pwv2m.js → chunk-s4vx9x1v.js} +1 -1
- package/bundle/{chunk-x2cavpa9.js → chunk-sfw5qddj.js} +1 -1
- package/bundle/chunk-sh9vjnsh.js +2 -0
- package/bundle/{chunk-6avjq7my.js → chunk-smznrv7k.js} +1 -1
- package/bundle/chunk-snbw69t6.js +2 -0
- package/bundle/chunk-st0c5wwc.js +2 -0
- package/bundle/{chunk-vqss3e48.js → chunk-t0761rhq.js} +2 -2
- package/bundle/{chunk-vqpfpmha.js → chunk-t239rvej.js} +2 -2
- package/bundle/{chunk-bggybm9k.js → chunk-t8c4cs6z.js} +1 -1
- package/bundle/chunk-tdyvps17.js +35 -0
- package/bundle/chunk-teb3k2sf.js +2 -0
- package/bundle/{chunk-ve3np791.js → chunk-tg226j37.js} +1 -1
- package/bundle/{chunk-73fz0cf4.js → chunk-tkrwcjkr.js} +2 -2
- package/bundle/{chunk-v5z6sx6j.js → chunk-tm34qp8j.js} +1 -1
- package/bundle/chunk-tr6rdr6h.js +4 -0
- package/bundle/chunk-ts798jvf.js +2 -0
- package/bundle/chunk-tx5aj02v.js +2 -0
- package/bundle/{chunk-3jms025t.js → chunk-tza09w2q.js} +1 -1
- package/bundle/chunk-v1t51rrq.js +2 -0
- package/bundle/{chunk-7ab3yw9j.js → chunk-v6h3nes1.js} +2 -2
- package/bundle/{chunk-e586sjb0.js → chunk-vcygx6hs.js} +2 -2
- package/bundle/{chunk-h2bmss2m.js → chunk-vdxar0ct.js} +1 -1
- package/bundle/{chunk-86yk21g4.js → chunk-venprxdp.js} +1 -1
- package/bundle/{chunk-ywkvq7zb.js → chunk-vf492zs6.js} +1 -1
- package/bundle/chunk-vh9ptqn0.js +2 -0
- package/bundle/{chunk-w79jzf8w.js → chunk-vnrjk2be.js} +1 -1
- package/bundle/{chunk-8q5ns61h.js → chunk-vshycswk.js} +1 -1
- package/bundle/{chunk-8e6gx3gg.js → chunk-vsz4s6zt.js} +1 -1
- package/bundle/{chunk-vhe92p7a.js → chunk-vygkwwjd.js} +2 -2
- package/bundle/{chunk-9rxyq6f9.js → chunk-w46g7kdq.js} +2 -2
- package/bundle/{chunk-q128vfc6.js → chunk-w4brava0.js} +1 -1
- package/bundle/{chunk-drwqag0f.js → chunk-w4synhfg.js} +1 -1
- package/bundle/chunk-w72rctxz.js +2 -0
- package/bundle/{chunk-mxhb5adq.js → chunk-w9gzfsy7.js} +2 -2
- package/bundle/chunk-wbw9zv3h.js +2 -0
- package/bundle/{chunk-q46pzk9z.js → chunk-wg55bwqh.js} +2 -2
- package/bundle/{chunk-1sfcxdbw.js → chunk-wkg3c643.js} +2 -2
- package/bundle/{chunk-2bgqy6z7.js → chunk-wwdpw27v.js} +1 -1
- package/bundle/{chunk-km1n4ttr.js → chunk-wy3a4cab.js} +1 -1
- package/bundle/{chunk-tczbhj0e.js → chunk-wyj8cpx5.js} +1 -1
- package/bundle/chunk-x6mw98c2.js +2 -0
- package/bundle/chunk-x9ptmxt7.js +2 -0
- package/bundle/{chunk-8rh0femq.js → chunk-xdd3553a.js} +1 -1
- package/bundle/{chunk-2jpmxt4v.js → chunk-xdteq9bd.js} +1 -1
- package/bundle/{chunk-9y15zjxa.js → chunk-xe69cnsk.js} +1 -1
- package/bundle/{chunk-s77qktcn.js → chunk-xq2kcar4.js} +2 -2
- package/bundle/{chunk-bk3z400e.js → chunk-y0527cg0.js} +1 -1
- package/bundle/{chunk-hrw5rmj1.js → chunk-y29ejqg2.js} +1 -1
- package/bundle/{chunk-42r7z6sq.js → chunk-y67kaj0b.js} +1 -1
- package/bundle/chunk-y6p57wgh.js +2 -0
- package/bundle/chunk-y6xs8v17.js +2 -0
- package/bundle/{chunk-zdzxsyxs.js → chunk-y7hgevfv.js} +2 -2
- package/bundle/{chunk-k1gddnkm.js → chunk-ybane1en.js} +1 -1
- package/bundle/{chunk-k6cbfrzc.js → chunk-yhj01dz9.js} +2 -2
- package/bundle/{chunk-2xqqkf86.js → chunk-ypdt9mmr.js} +2 -2
- package/bundle/chunk-yvn8dmah.js +2 -0
- package/bundle/{chunk-vm1ek7yf.js → chunk-yz25607t.js} +1 -1
- package/bundle/{chunk-ypcc3cnb.js → chunk-z1932c3f.js} +1 -1
- package/bundle/chunk-z3xsfpc6.js +2 -0
- package/bundle/chunk-z4kjxtjq.js +2 -0
- package/bundle/{chunk-6ypafpg8.js → chunk-z6sbjvtv.js} +1 -1
- package/bundle/chunk-z8mj4z6e.js +2 -0
- package/bundle/{chunk-ta7mfkms.js → chunk-zc0cdvcv.js} +2 -2
- package/bundle/chunk-zgv1e250.js +2 -0
- package/bundle/chunk-zn5pw733.js +2 -0
- package/bundle/{chunk-ywdtp534.js → chunk-ztyy3ga3.js} +2 -2
- package/bundle/chunk-zxwvnmea.js +2 -0
- package/bundle/index.js +3 -3
- package/bundle/parser.worker.js +2 -2
- package/bundle/qffi-compat.so +0 -0
- package/bundle/qffi.node +0 -0
- package/bundle/worker.js +1 -1
- package/package.json +1 -1
- package/bundle/chunk-0cdtq1r3.js +0 -2
- package/bundle/chunk-0ych0f5w.js +0 -2
- package/bundle/chunk-0yjdatm6.js +0 -3
- package/bundle/chunk-0ykeedfm.js +0 -2
- package/bundle/chunk-22hr3ndh.js +0 -2
- package/bundle/chunk-23tyxyyj.js +0 -2
- package/bundle/chunk-2517cev8.js +0 -2
- package/bundle/chunk-28g1ndpx.js +0 -2
- package/bundle/chunk-2avxtbv3.js +0 -2
- package/bundle/chunk-2faah8w1.js +0 -2
- package/bundle/chunk-2qk0k2eb.js +0 -2
- package/bundle/chunk-3c3xzz0g.js +0 -3
- package/bundle/chunk-42wdfks8.js +0 -2
- package/bundle/chunk-44y6dffe.js +0 -2
- package/bundle/chunk-4f19vqxf.js +0 -2
- package/bundle/chunk-4m3k1atq.js +0 -2
- package/bundle/chunk-4n2ytddp.js +0 -2
- package/bundle/chunk-4yg42p6y.js +0 -2
- package/bundle/chunk-4zx3ze68.js +0 -2
- package/bundle/chunk-637sjdzq.js +0 -2
- package/bundle/chunk-6h8f89tt.js +0 -2
- package/bundle/chunk-6sjj203r.js +0 -2
- package/bundle/chunk-79aka9xe.js +0 -2
- package/bundle/chunk-7nqdhe7x.js +0 -2
- package/bundle/chunk-7q003wdd.js +0 -4
- package/bundle/chunk-7x88b2n2.js +0 -2
- package/bundle/chunk-8apeexas.js +0 -3
- package/bundle/chunk-8mthftwc.js +0 -2
- package/bundle/chunk-8wdara3b.js +0 -2
- package/bundle/chunk-8xhzpnph.js +0 -2
- package/bundle/chunk-96sqbyvf.js +0 -2
- package/bundle/chunk-9akz8w0d.js +0 -2
- package/bundle/chunk-9etpppyv.js +0 -3
- package/bundle/chunk-9pnpmtb2.js +0 -2
- package/bundle/chunk-a5pbvp1f.js +0 -7
- package/bundle/chunk-a7p0x4sw.js +0 -2
- package/bundle/chunk-ae0a496j.js +0 -2
- package/bundle/chunk-aq1j9y18.js +0 -2
- package/bundle/chunk-aq8nz9hp.js +0 -2
- package/bundle/chunk-b4zy78be.js +0 -2
- package/bundle/chunk-basjzwqp.js +0 -2
- package/bundle/chunk-bhetpmgq.js +0 -3
- package/bundle/chunk-bm7xpjh6.js +0 -2
- package/bundle/chunk-c1bw1q75.js +0 -2
- package/bundle/chunk-c2k556rk.js +0 -2
- package/bundle/chunk-c47vp7ne.js +0 -2
- package/bundle/chunk-cbhgf058.js +0 -2
- package/bundle/chunk-d41mg7at.js +0 -2
- package/bundle/chunk-d50kpss6.js +0 -2
- package/bundle/chunk-day0rb5p.js +0 -2
- package/bundle/chunk-dp7cww4v.js +0 -2
- package/bundle/chunk-dy31mchw.js +0 -3
- package/bundle/chunk-e5rda9mx.js +0 -2
- package/bundle/chunk-e999xtfj.js +0 -2
- package/bundle/chunk-ehfxypks.js +0 -7610
- package/bundle/chunk-eyr0vf92.js +0 -2
- package/bundle/chunk-gbmmbhy4.js +0 -2
- package/bundle/chunk-gp877cq5.js +0 -2
- package/bundle/chunk-h4f582d6.js +0 -2
- package/bundle/chunk-h57c6ne3.js +0 -2
- package/bundle/chunk-hk8vvc10.js +0 -2
- package/bundle/chunk-hnrqhcgq.js +0 -2
- package/bundle/chunk-hwavzxdm.js +0 -2
- package/bundle/chunk-hwnc2sa5.js +0 -2
- package/bundle/chunk-hy86wfad.js +0 -2
- package/bundle/chunk-j17421hz.js +0 -2
- package/bundle/chunk-j2gvpa15.js +0 -2
- package/bundle/chunk-j7n8khk7.js +0 -2
- package/bundle/chunk-jkh98wby.js +0 -2
- package/bundle/chunk-k5a652s4.js +0 -2
- package/bundle/chunk-k6w32q2p.js +0 -2
- package/bundle/chunk-kghwk0yh.js +0 -2
- package/bundle/chunk-kh8de8re.js +0 -2
- package/bundle/chunk-mce8aa9y.js +0 -2
- package/bundle/chunk-me1ja46g.js +0 -2
- package/bundle/chunk-mgadsp7r.js +0 -2
- package/bundle/chunk-n0k0pp4k.js +0 -2
- package/bundle/chunk-n393nnh5.js +0 -2
- package/bundle/chunk-n5vyed7w.js +0 -2
- package/bundle/chunk-pasm65wq.js +0 -2
- package/bundle/chunk-phpmxjf8.js +0 -2
- package/bundle/chunk-q2q3dmg3.js +0 -2
- package/bundle/chunk-qvzvxsjw.js +0 -2
- package/bundle/chunk-racrb1b3.js +0 -2
- package/bundle/chunk-s0c0t6qr.js +0 -5
- package/bundle/chunk-sghy9s7m.js +0 -2
- package/bundle/chunk-skpkjnyy.js +0 -2
- package/bundle/chunk-skxhg212.js +0 -2
- package/bundle/chunk-snt4kwab.js +0 -2
- package/bundle/chunk-sq47t8f1.js +0 -2
- package/bundle/chunk-sqhgnvvs.js +0 -2
- package/bundle/chunk-t114r59h.js +0 -2
- package/bundle/chunk-t1f56k0j.js +0 -2
- package/bundle/chunk-t69jx6fz.js +0 -2
- package/bundle/chunk-tsb3jsx4.js +0 -2
- package/bundle/chunk-ttpbpzbh.js +0 -2
- package/bundle/chunk-v667egp5.js +0 -2
- package/bundle/chunk-vrv67tt0.js +0 -2
- package/bundle/chunk-wcx7hc2p.js +0 -635
- package/bundle/chunk-wv8qx8sa.js +0 -2
- package/bundle/chunk-xxrtr6sd.js +0 -2
- package/bundle/chunk-y2ptjam9.js +0 -3
- package/bundle/chunk-y6h35v4a.js +0 -2
- package/bundle/chunk-y72p79v2.js +0 -2
- package/bundle/chunk-y8eggnrr.js +0 -2
- package/bundle/chunk-y9q0f9qz.js +0 -2
- package/bundle/chunk-yck5h49c.js +0 -2
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{gO as a,hO as b,iO as c,jO as d,kO as e,lO as f,mO as g,nO as h,oO as i,pO as j}from"./chunk-pxm4qvqk.js";import"./chunk-r9w0thdk.js";export{c as TreeCursor,b as Tree,f as Query,j as Parser,d as Node,i as MIN_COMPATIBLE_VERSION,a as LookaheadIterator,g as Language,h as LANGUAGE_VERSION,e as CaptureQuantifier};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Je as M}from"./chunk-68v3b6ns.js";import{Me as D}from"./chunk-bne5w117.js";import{Ne as B}from"./chunk-j0bwa5dk.js";import{Hf as d,Jf as w}from"./chunk-2drzgtv3.js";import{sO as n}from"./chunk-r9w0thdk.js";var R=n(D(),1),i=n(d(),1),A=n(M(),1);import N from"fs/promises";var S=n(d(),1);var _="169.254.170.2",p="169.254.170.23",u="[fd00:ec2::23]",g=(e,c)=>{if(e.protocol==="https:")return;if(e.hostname===_||e.hostname===p||e.hostname===u)return;if(e.hostname.includes("[")){if(e.hostname==="[::1]"||e.hostname==="[0000:0000:0000:0000:0000:0000:0000:0001]")return}else{if(e.hostname==="localhost")return;let a=e.hostname.split("."),r=(t)=>{let s=parseInt(t,10);return 0<=s&&s<=255};if(a[0]==="127"&&r(a[1])&&r(a[2])&&r(a[3])&&a.length===4)return}throw new S.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following:
|
|
3
3
|
- loopback CIDR 127.0.0.0/8 or [::1/128]
|
|
4
4
|
- ECS container host 169.254.170.2
|
|
5
5
|
- EKS container host 169.254.170.23 or [fd00:ec2::23]`,{logger:c})};var f=n(d(),1),I=n(B(),1),P=n(w(),1),K=n(w(),1);function x(e){return new I.HttpRequest({protocol:e.protocol,hostname:e.hostname,port:Number(e.port),path:e.pathname,query:Array.from(e.searchParams.entries()).reduce((c,[a,r])=>{return c[a]=r,c},{}),fragment:e.hash})}async function E(e,c){let r=await K.sdkStreamMixin(e.body).transformToString();if(e.statusCode===200){let t=JSON.parse(r);if(typeof t.AccessKeyId!=="string"||typeof t.SecretAccessKey!=="string"||typeof t.Token!=="string"||typeof t.Expiration!=="string")throw new f.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }",{logger:c});return{accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretAccessKey,sessionToken:t.Token,expiration:P.parseRfc3339DateTime(t.Expiration)}}if(e.statusCode>=400&&e.statusCode<500){let t={};try{t=JSON.parse(r)}catch(s){}throw Object.assign(new f.CredentialsProviderError(`Server responded with status: ${e.statusCode}`,{logger:c}),{Code:t.Code,Message:t.Message})}throw new f.CredentialsProviderError(`Server responded with status: ${e.statusCode}`,{logger:c})}var T=(e,c,a)=>{return async()=>{for(let r=0;r<c;++r)try{return await e()}catch(t){await new Promise((s)=>setTimeout(s,a))}return await e()}};var j="AWS_CONTAINER_CREDENTIALS_RELATIVE_URI",J="http://169.254.170.2",$="AWS_CONTAINER_CREDENTIALS_FULL_URI",G="AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE",H="AWS_CONTAINER_AUTHORIZATION_TOKEN",k=(e={})=>{e.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");let c,a=e.awsContainerCredentialsRelativeUri??process.env[j],r=e.awsContainerCredentialsFullUri??process.env[$],t=e.awsContainerAuthorizationToken??process.env[H],s=e.awsContainerAuthorizationTokenFile??process.env[G],m=e.logger?.constructor?.name==="NoOpLogger"||!e.logger?.warn?console.warn:e.logger.warn.bind(e.logger);if(a&&r)m("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri."),m("awsContainerCredentialsFullUri will take precedence.");if(t&&s)m("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile."),m("awsContainerAuthorizationToken will take precedence.");if(r)c=r;else if(a)c=`${J}${a}`;else throw new i.CredentialsProviderError(`No HTTP credential provider host provided.
|
|
6
|
-
Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`,{logger:e.logger});let y=new URL(c);g(y,e.logger);let C=A.NodeHttpHandler.create({connectionTimeout:e.timeout??1000}),O=e.timeout??1000,b=T(async()=>{let o=x(y);if(t)o.headers.Authorization=t;else if(s)o.headers.Authorization=(await N.readFile(s)).toString();try{let h=await C.handle(o,{requestTimeout:O});return E(h.response).then((v)=>R.setCredentialFeature(v,"CREDENTIALS_HTTP","z"))}catch(h){throw new i.CredentialsProviderError(String(h),{logger:e.logger})}},e.maxRetries??3,e.timeout??1000);return async()=>{try{return await b()}finally{C.destroy?.()}}};export{k as
|
|
6
|
+
Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`,{logger:e.logger});let y=new URL(c);g(y,e.logger);let C=A.NodeHttpHandler.create({connectionTimeout:e.timeout??1000}),O=e.timeout??1000,b=T(async()=>{let o=x(y);if(t)o.headers.Authorization=t;else if(s)o.headers.Authorization=(await N.readFile(s)).toString();try{let h=await C.handle(o,{requestTimeout:O});return E(h.response).then((v)=>R.setCredentialFeature(v,"CREDENTIALS_HTTP","z"))}catch(h){throw new i.CredentialsProviderError(String(h),{logger:e.logger})}},e.maxRetries??3,e.timeout??1000);return async()=>{try{return await b()}finally{C.destroy?.()}}};export{k as ke};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
import x from"crypto";function B(q=43){let w=x.randomBytes(q);return z(w)}function C(q){let w=x.createHash("sha256").update(q).digest();return z(w)}function z(q){return q.toString("base64").replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}
|
|
3
|
-
export{B as
|
|
3
|
+
export{B as hq,C as iq};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{Pd as b}from"./chunk-65t9b9eq.js";import{ae as f}from"./chunk-5w76kdjr.js";import{Bh as S}from"./chunk-azpnrnv9.js";import"./chunk-w46g7kdq.js";import"./chunk-bd21p9zz.js";import"./chunk-p54bzjtv.js";import"./chunk-ha1w0xzh.js";import"./chunk-6m9jb0s9.js";import"./chunk-vygkwwjd.js";import{cl as v}from"./chunk-qznr1emx.js";import"./chunk-6tstcwxp.js";import{Dl as R,Nl as k,vl as U}from"./chunk-qqrc1h5b.js";import"./chunk-fsahzvd5.js";import"./chunk-mh19kwzw.js";import"./chunk-88q0mtgp.js";import"./chunk-bvf2dcq4.js";import"./chunk-9zm6r55d.js";import"./chunk-vcygx6hs.js";import"./chunk-khzzmyk2.js";import"./chunk-y7hgevfv.js";import"./chunk-47k5jy1p.js";import"./chunk-rp9r3cvt.js";import"./chunk-ph8hn1wt.js";import"./chunk-ptqk1j2r.js";import"./chunk-cqtkxwd8.js";import"./chunk-pr7z5dj8.js";import"./chunk-dnnkq5y4.js";import"./chunk-t239rvej.js";import"./chunk-yz25607t.js";import"./chunk-7hvf9dgx.js";import"./chunk-wkg3c643.js";import"./chunk-fhqfqd5v.js";import"./chunk-xq2kcar4.js";import"./chunk-qrxqfp59.js";import"./chunk-73r8bjjz.js";import{Er as Z}from"./chunk-vdxar0ct.js";import"./chunk-ztyy3ga3.js";import"./chunk-mmjgf680.js";import"./chunk-nj1ntakd.js";import"./chunk-cmb62jkt.js";import"./chunk-tkrwcjkr.js";import"./chunk-x9ptmxt7.js";import"./chunk-0vakk88p.js";import"./chunk-r5zy4za0.js";import"./chunk-tr6rdr6h.js";import"./chunk-at22twxx.js";import"./chunk-kgptyf7n.js";import"./chunk-j9h1sp4g.js";import"./chunk-p6crzjtf.js";import"./chunk-55fcmswd.js";import"./chunk-qnvsqnz5.js";import"./chunk-pxm4qvqk.js";import"./chunk-j8fcfhr2.js";import"./chunk-r9w0thdk.js";var i=f({command:"stats",describe:"show token usage and cost statistics",builder:(z)=>{return z.option("days",{describe:"show stats for the last N days (default: all time)",type:"number"}).option("tools",{describe:"number of tools to show (default: all)",type:"number"}).option("models",{describe:"show model statistics (default: hidden). Pass a number to show top N, otherwise shows all"}).option("project",{describe:"filter by project (default: all projects, empty string: current project)",type:"string"})},handler:async(z)=>{await b(process.cwd(),async()=>{let E=await y(z.days,z.project),_;if(z.models===!0)_=1/0;else if(typeof z.models==="number")_=z.models;u(E,z.tools,_)})}});async function w(){return k.project}async function p(){return R.use((E)=>E.select().from(U).all()).map((E)=>v.fromRow(E))}async function y(z,E){let _=await p(),L=86400000,J=(()=>{if(z===void 0)return 0;if(z===0){let V=new Date;return V.setHours(0,0,0,0),V.getTime()}return Date.now()-z*86400000})(),K=(()=>{if(z===void 0)return;if(z===0)return 1;return z})(),Y=J>0?_.filter((V)=>V.time.updated>=J):_;if(E!==void 0)if(E===""){let V=await w();Y=Y.filter((F)=>F.projectID===V.id)}else Y=Y.filter((V)=>V.projectID===E);let G={totalSessions:Y.length,totalMessages:0,totalCost:0,totalTokens:{input:0,output:0,reasoning:0,cache:{read:0,write:0}},toolUsage:{},modelUsage:{},dateRange:{earliest:Date.now(),latest:Date.now()},days:0,costPerDay:0,tokensPerSession:0,medianTokensPerSession:0};if(Y.length>1000)console.log(`Large dataset detected (${Y.length} sessions). This may take a while...`);if(Y.length===0)return G.days=K??0,G;let C=Date.now(),x=0,X=[],h=20;for(let V=0;V<Y.length;V+=h){let D=Y.slice(V,V+h).map(async(Q)=>{let W=await S.runPromise(v.Service.use((O)=>O.messages({sessionID:Q.id,agentID:"*"}))),N=0,H={input:0,output:0,reasoning:0,cache:{read:0,write:0}},j={},A={};for(let O of W){if(O.info.role==="assistant"){N+=O.info.cost||0;let B=`${O.info.providerID}/${O.info.modelID}`;if(!A[B])A[B]={messages:0,tokens:{input:0,output:0,cache:{read:0,write:0}},cost:0};if(A[B].messages++,A[B].cost+=O.info.cost||0,O.info.tokens)H.input+=O.info.tokens.input||0,H.output+=O.info.tokens.output||0,H.reasoning+=O.info.tokens.reasoning||0,H.cache.read+=O.info.tokens.cache?.read||0,H.cache.write+=O.info.tokens.cache?.write||0,A[B].tokens.input+=O.info.tokens.input||0,A[B].tokens.output+=(O.info.tokens.output||0)+(O.info.tokens.reasoning||0),A[B].tokens.cache.read+=O.info.tokens.cache?.read||0,A[B].tokens.cache.write+=O.info.tokens.cache?.write||0}for(let B of O.parts)if(B.type==="tool"&&B.tool)j[B.tool]=(j[B.tool]||0)+1}return{messageCount:W.length,sessionCost:N,sessionTokens:H,sessionTotalTokens:H.input+H.output+H.reasoning+H.cache.read+H.cache.write,sessionToolUsage:j,sessionModelUsage:A,earliestTime:J>0?Q.time.updated:Q.time.created,latestTime:Q.time.updated}}),M=await Promise.all(D);for(let Q of M){C=Math.min(C,Q.earliestTime),x=Math.max(x,Q.latestTime),X.push(Q.sessionTotalTokens),G.totalMessages+=Q.messageCount,G.totalCost+=Q.sessionCost,G.totalTokens.input+=Q.sessionTokens.input,G.totalTokens.output+=Q.sessionTokens.output,G.totalTokens.reasoning+=Q.sessionTokens.reasoning,G.totalTokens.cache.read+=Q.sessionTokens.cache.read,G.totalTokens.cache.write+=Q.sessionTokens.cache.write;for(let[W,N]of Object.entries(Q.sessionToolUsage))G.toolUsage[W]=(G.toolUsage[W]||0)+N;for(let[W,N]of Object.entries(Q.sessionModelUsage)){if(!G.modelUsage[W])G.modelUsage[W]={messages:0,tokens:{input:0,output:0,cache:{read:0,write:0}},cost:0};G.modelUsage[W].messages+=N.messages,G.modelUsage[W].tokens.input+=N.tokens.input,G.modelUsage[W].tokens.output+=N.tokens.output,G.modelUsage[W].tokens.cache.read+=N.tokens.cache.read,G.modelUsage[W].tokens.cache.write+=N.tokens.cache.write,G.modelUsage[W].cost+=N.cost}}}let $=Math.max(1,Math.ceil((x-C)/86400000)),q=K??$;G.dateRange={earliest:C,latest:x},G.days=q,G.costPerDay=G.totalCost/q;let I=G.totalTokens.input+G.totalTokens.output+G.totalTokens.reasoning+G.totalTokens.cache.read+G.totalTokens.cache.write;G.tokensPerSession=Y.length>0?I/Y.length:0,X.sort((V,F)=>V-F);let P=Math.floor(X.length/2);return G.medianTokensPerSession=X.length===0?0:X.length%2===0?(X[P-1]+X[P])/2:X[P],G}function u(z,E,_){function J(x,X){let $=55-x.length-X.length,q=Math.max(0,$);return`\u2502${x}${" ".repeat(q)}${X} \u2502`}console.log("\u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510"),console.log("\u2502 OVERVIEW \u2502"),console.log("\u251C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524"),console.log(J("Sessions",z.totalSessions.toLocaleString())),console.log(J("Messages",z.totalMessages.toLocaleString())),console.log(J("Days",z.days.toString())),console.log("\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518"),console.log(),console.log("\u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510"),console.log("\u2502 COST & TOKENS \u2502"),console.log("\u251C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524");let K=isNaN(z.totalCost)?0:z.totalCost,Y=isNaN(z.costPerDay)?0:z.costPerDay,G=isNaN(z.tokensPerSession)?0:z.tokensPerSession;console.log(J("Total Cost",`$${K.toFixed(2)}`)),console.log(J("Avg Cost/Day",`$${Y.toFixed(2)}`)),console.log(J("Avg Tokens/Session",Z.number(Math.round(G))));let C=isNaN(z.medianTokensPerSession)?0:z.medianTokensPerSession;if(console.log(J("Median Tokens/Session",Z.number(Math.round(C)))),console.log(J("Input",Z.number(z.totalTokens.input))),console.log(J("Output",Z.number(z.totalTokens.output))),console.log(J("Cache Read",Z.number(z.totalTokens.cache.read))),console.log(J("Cache Write",Z.number(z.totalTokens.cache.write))),console.log("\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518"),console.log(),_!==void 0&&Object.keys(z.modelUsage).length>0){let x=Object.entries(z.modelUsage).sort(([,h],[,$])=>$.messages-h.messages),X=_===1/0?x:x.slice(0,_);console.log("\u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510"),console.log("\u2502 MODEL USAGE \u2502"),console.log("\u251C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524");for(let[h,$]of X)console.log(`\u2502 ${h.padEnd(54)} \u2502`),console.log(J(" Messages",$.messages.toLocaleString())),console.log(J(" Input Tokens",Z.number($.tokens.input))),console.log(J(" Output Tokens",Z.number($.tokens.output))),console.log(J(" Cache Read",Z.number($.tokens.cache.read))),console.log(J(" Cache Write",Z.number($.tokens.cache.write))),console.log(J(" Cost",`$${$.cost.toFixed(4)}`)),console.log("\u251C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524");process.stdout.write("\x1B[1A"),console.log("\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518")}if(console.log(),Object.keys(z.toolUsage).length>0){let x=Object.entries(z.toolUsage).sort(([,q],[,I])=>I-q),X=E?x.slice(0,E):x;console.log("\u250C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510"),console.log("\u2502 TOOL USAGE \u2502"),console.log("\u251C\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524");let h=Math.max(...X.map(([,q])=>q)),$=Object.values(z.toolUsage).reduce((q,I)=>q+I,0);for(let[q,I]of X){let P=Math.max(1,Math.floor(I/h*20)),V="\u2588".repeat(P),F=(I/$*100).toFixed(1),D=18,W=` ${(q.length>18?q.substring(0,16)+"..":q).padEnd(18)} ${V.padEnd(20)} ${I.toString().padStart(3)} (${F.padStart(4)}%)`,N=Math.max(0,56-W.length-1);console.log(`\u2502${W}${" ".repeat(N)} \u2502`)}console.log("\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518")}console.log()}export{u as displayStats,y as aggregateSessionStats,i as StatsCommand};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Ip as j,Jp as M,Kp as f,Mp as N,Pp as H,Qp as z,Rp as A,Up as I,Zp as t}from"./chunk-ptqk1j2r.js";import{_p as U}from"./chunk-pr7z5dj8.js";import{nt as n}from"./chunk-j9h1sp4g.js";import{xy as d}from"./chunk-p6crzjtf.js";function NJ(...F){return F.reduce((J,Q)=>({...J,...Q!=null?Q:{}}),{})}function VJ({tools:F=[],providerToolNames:J,resolveProviderToolName:Q}){var W;let X={},Y={};for(let Z of F)if(Z.type==="provider"){let $=(W=Q==null?void 0:Q(Z))!=null?W:(Z.id in J)?J[Z.id]:void 0;if($==null)continue;X[Z.name]=$,Y[$]=Z.name}return{toProviderToolName:(Z)=>{var $;return($=X[Z])!=null?$:Z},toCustomToolName:(Z)=>{var $;return($=Y[Z])!=null?$:Z}}}function B(F){return Object.fromEntries([...F.headers])}var{btoa:$F,atob:LF}=globalThis;function TJ(F){let J=F.replace(/-/g,"+").replace(/_/g,"/"),Q=LF(J);return Uint8Array.from(Q,(W)=>W.codePointAt(0))}function o(F){let J="";for(let Q=0;Q<F.length;Q++)J+=String.fromCodePoint(F[Q]);return $F(J)}function _J(F){return F instanceof Uint8Array?o(F):F}function jJ(F){if(F.type==="url")return F.url;return`data:${F.mediaType};base64,${typeof F.data==="string"?F.data:o(F.data)}`}function kJ(F,J={}){let{useArrayBrackets:Q=!0}=J,W=new FormData;for(let[X,Y]of Object.entries(F)){if(Y==null)continue;if(Array.isArray(Y)){if(Y.length===1){W.append(X,Y[0]);continue}let Z=Q?`${X}[]`:X;for(let $ of Y)W.append(Z,$);continue}W.append(X,Y)}return W}var a="AI_DownloadError",s=`vercel.ai.error.${a}`,UF=Symbol.for(s),m,u,O=class extends(u=j,m=UF,u){constructor({url:F,statusCode:J,statusText:Q,cause:W,message:X=W==null?`Failed to download ${F}: ${J} ${Q}`:`Failed to download ${F}: ${W}`}){super({name:a,message:X,cause:W});this[m]=!0,this.url=F,this.statusCode=J,this.statusText=Q}static isInstance(F){return j.hasMarker(F,s)}},r=2147483648;async function wF({response:F,url:J,maxBytes:Q=r}){let W=F.headers.get("content-length");if(W!=null){let G=parseInt(W,10);if(!isNaN(G)&&G>Q)throw new O({url:J,message:`Download of ${J} exceeded maximum size of ${Q} bytes (Content-Length: ${G}).`})}let X=F.body;if(X==null)return new Uint8Array(0);let Y=X.getReader(),Z=[],$=0;try{while(!0){let{done:G,value:R}=await Y.read();if(G)break;if($+=R.length,$>Q)throw new O({url:J,message:`Download of ${J} exceeded maximum size of ${Q} bytes.`});Z.push(R)}}finally{try{await Y.cancel()}finally{Y.releaseLock()}}let w=new Uint8Array($),L=0;for(let G of Z)w.set(G,L),L+=G.length;return w}function i(F){let J;try{J=new URL(F)}catch(W){throw new O({url:F,message:`Invalid URL: ${F}`})}if(J.protocol!=="http:"&&J.protocol!=="https:")throw new O({url:F,message:`URL scheme must be http or https, got ${J.protocol}`});let Q=J.hostname;if(!Q)throw new O({url:F,message:"URL must have a hostname"});if(Q==="localhost"||Q.endsWith(".local")||Q.endsWith(".localhost"))throw new O({url:F,message:`URL with hostname ${Q} is not allowed`});if(Q.startsWith("[")&&Q.endsWith("]")){let W=Q.slice(1,-1);if(EF(W))throw new O({url:F,message:`URL with IPv6 address ${Q} is not allowed`});return}if(e(Q)){if(k(Q))throw new O({url:F,message:`URL with IP address ${Q} is not allowed`});return}}function e(F){let J=F.split(".");if(J.length!==4)return!1;return J.every((Q)=>{let W=Number(Q);return Number.isInteger(W)&&W>=0&&W<=255&&String(W)===Q})}function k(F){let J=F.split(".").map(Number),[Q,W]=J;if(Q===0)return!0;if(Q===10)return!0;if(Q===127)return!0;if(Q===169&&W===254)return!0;if(Q===172&&W>=16&&W<=31)return!0;if(Q===192&&W===168)return!0;return!1}function EF(F){let J=F.toLowerCase();if(J==="::1")return!0;if(J==="::")return!0;if(J.startsWith("::ffff:")){let Q=J.slice(7);if(e(Q))return k(Q);let W=Q.split(":");if(W.length===2){let X=parseInt(W[0],16),Y=parseInt(W[1],16);if(!isNaN(X)&&!isNaN(Y)){let Z=X>>8&255,$=X&255,w=Y>>8&255,L=Y&255;return k(`${Z}.${$}.${w}.${L}`)}}}if(J.startsWith("fc")||J.startsWith("fd"))return!0;if(J.startsWith("fe80"))return!0;return!1}async function SJ(F,J){var Q,W;i(F);try{let X=await fetch(F,{signal:J==null?void 0:J.abortSignal});if(X.redirected)i(X.url);if(!X.ok)throw new O({url:F,statusCode:X.status,statusText:X.statusText});let Y=await wF({response:X,url:F,maxBytes:(Q=J==null?void 0:J.maxBytes)!=null?Q:r}),Z=(W=X.headers.get("content-type"))!=null?W:void 0;return new Blob([Y],Z?{type:Z}:void 0)}catch(X){if(O.isInstance(X))throw X;throw new O({url:F,cause:X})}}var GF=({prefix:F,size:J=16,alphabet:Q="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",separator:W="-"}={})=>{let X=()=>{let Y=Q.length,Z=Array(J);for(let $=0;$<J;$++)Z[$]=Q[Math.random()*Y|0];return Z.join("")};if(F==null)return X;if(Q.includes(W))throw new N({argument:"separator",message:`The separator "${W}" must not be part of the alphabet "${Q}".`});return()=>`${F}${W}${X()}`},xJ=GF();function b(F){return(F instanceof Error||F instanceof DOMException)&&(F.name==="AbortError"||F.name==="ResponseAborted"||F.name==="TimeoutError")}var CF=["fetch failed","failed to fetch"],MF=["ConnectionRefused","ConnectionClosed","FailedToOpenSocket","ECONNRESET","ECONNREFUSED","ETIMEDOUT","EPIPE"];function KF(F){if(!(F instanceof Error))return!1;let J=F.code;if(typeof J==="string"&&MF.includes(J))return!0;return!1}function qF({error:F,url:J,requestBodyValues:Q}){if(b(F))return F;if(F instanceof TypeError&&CF.includes(F.message.toLowerCase())){let W=F.cause;if(W!=null)return new M({message:`Cannot connect to API: ${W.message}`,cause:W,url:J,requestBodyValues:Q,isRetryable:!0})}if(KF(F))return new M({message:`Cannot connect to API: ${F.message}`,cause:F,url:J,requestBodyValues:Q,isRetryable:!0});return F}function DF(F=globalThis){var J,Q,W;if(F.window)return"runtime/browser";if((J=F.navigator)==null?void 0:J.userAgent)return`runtime/${F.navigator.userAgent.toLowerCase()}`;if((W=(Q=F.process)==null?void 0:Q.versions)==null?void 0:W.node)return`runtime/node.js/${F.process.version.substring(0)}`;if(F.EdgeRuntime)return"runtime/vercel-edge";return"runtime/unknown"}function OF(F){if(F==null)return{};let J={};if(F instanceof Headers)F.forEach((Q,W)=>{J[W.toLowerCase()]=Q});else{if(!Array.isArray(F))F=Object.entries(F);for(let[Q,W]of F)if(W!=null)J[Q.toLowerCase()]=W}return J}function IF(F,...J){let Q=new Headers(OF(F)),W=Q.get("user-agent")||"";return Q.set("user-agent",[W,...J].filter(Boolean).join(" ")),Object.fromEntries(Q.entries())}var PF="4.0.21";var zF="JSON schema:",AF="You MUST answer with a JSON object that matches the JSON schema above.",HF="You MUST answer with JSON.";function BF({prompt:F,schema:J,schemaPrefix:Q=J!=null?zF:void 0,schemaSuffix:W=J!=null?AF:HF}){return[F!=null&&F.length>0?F:void 0,F!=null&&F.length>0?"":void 0,Q,J!=null?JSON.stringify(J):void 0,W].filter((X)=>X!=null).join(`
|
|
3
3
|
`)}function yJ({messages:F,schema:J,schemaPrefix:Q,schemaSuffix:W}){var X,Y;let Z=((X=F[0])==null?void 0:X.role)==="system"?{...F[0]}:{role:"system",content:""};return Z.content=BF({prompt:Z.content,schema:J,schemaPrefix:Q,schemaSuffix:W}),[Z,...((Y=F[0])==null?void 0:Y.role)==="system"?F.slice(1):F]}function hJ(F){return F!=null}function uJ({apiKey:F,environmentVariableName:J,apiKeyParameterName:Q="apiKey",description:W}){if(typeof F==="string")return F;if(F!=null)throw new z({message:`${W} API key must be a string.`});if(typeof process>"u")throw new z({message:`${W} API key is missing. Pass it using the '${Q}' parameter. Environment variables is not supported in this environment.`});if(F=process.env[J],F==null)throw new z({message:`${W} API key is missing. Pass it using the '${Q}' parameter or the ${J} environment variable.`});if(typeof F!=="string")throw new z({message:`${W} API key must be a string. The value of the ${J} environment variable is not a string.`});return F}function pJ({settingValue:F,environmentVariableName:J,settingName:Q,description:W}){if(typeof F==="string")return F;if(F!=null)throw new A({message:`${W} setting must be a string.`});if(typeof process>"u")throw new A({message:`${W} setting is missing. Pass it using the '${Q}' parameter. Environment variables is not supported in this environment.`});if(F=process.env[J],F==null)throw new A({message:`${W} setting is missing. Pass it using the '${Q}' parameter or the ${J} environment variable.`});if(typeof F!=="string")throw new A({message:`${W} setting must be a string. The value of the ${J} environment variable is not a string.`});return F}function lJ(F){var J;let[Q,W=""]=F.toLowerCase().split("/");return(J={mpeg:"mp3","x-wav":"wav",opus:"ogg",mp4:"m4a","x-m4a":"m4a"}[W])!=null?J:W}var RF=/"(?:_|\\u005[Ff])(?:_|\\u005[Ff])(?:p|\\u0070)(?:r|\\u0072)(?:o|\\u006[Ff])(?:t|\\u0074)(?:o|\\u006[Ff])(?:_|\\u005[Ff])(?:_|\\u005[Ff])"\s*:/,NF=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/;function p(F){let J=JSON.parse(F);if(J===null||typeof J!=="object")return J;if(RF.test(F)===!1&&NF.test(F)===!1)return J;return VF(J)}function VF(F){let J=[F];while(J.length){let Q=J;J=[];for(let W of Q){if(Object.prototype.hasOwnProperty.call(W,"__proto__"))throw SyntaxError("Object contains forbidden prototype property");if(Object.prototype.hasOwnProperty.call(W,"constructor")&&W.constructor!==null&&typeof W.constructor==="object"&&Object.prototype.hasOwnProperty.call(W.constructor,"prototype"))throw SyntaxError("Object contains forbidden prototype property");for(let X in W){let Y=W[X];if(Y&&typeof Y==="object")J.push(Y)}}}return F}function x(F){let{stackTraceLimit:J}=Error;try{Error.stackTraceLimit=0}catch(Q){return p(F)}try{return p(F)}finally{Error.stackTraceLimit=J}}function v(F){if(F.type==="object"||Array.isArray(F.type)&&F.type.includes("object")){F.additionalProperties=!1;let{properties:Q}=F;if(Q!=null)for(let W of Object.keys(Q))Q[W]=P(Q[W])}if(F.items!=null)F.items=Array.isArray(F.items)?F.items.map(P):P(F.items);if(F.anyOf!=null)F.anyOf=F.anyOf.map(P);if(F.allOf!=null)F.allOf=F.allOf.map(P);if(F.oneOf!=null)F.oneOf=F.oneOf.map(P);let{definitions:J}=F;if(J!=null)for(let Q of Object.keys(J))J[Q]=P(J[Q]);return F}function P(F){if(typeof F==="boolean")return F;return v(F)}var TF=Symbol("Let zodToJsonSchema decide on which parser to use"),l={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",strictUnions:!1,definitions:{},errorMessages:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref"},_F=(F)=>typeof F==="string"?{...l,name:F}:{...l,...F};function K(){return{}}function jF(F,J){var Q,W,X;let Y={type:"array"};if(((Q=F.type)==null?void 0:Q._def)&&((X=(W=F.type)==null?void 0:W._def)==null?void 0:X.typeName)!==U.ZodAny)Y.items=E(F.type._def,{...J,currentPath:[...J.currentPath,"items"]});if(F.minLength)Y.minItems=F.minLength.value;if(F.maxLength)Y.maxItems=F.maxLength.value;if(F.exactLength)Y.minItems=F.exactLength.value,Y.maxItems=F.exactLength.value;return Y}function kF(F){let J={type:"integer",format:"int64"};if(!F.checks)return J;for(let Q of F.checks)switch(Q.kind){case"min":if(Q.inclusive)J.minimum=Q.value;else J.exclusiveMinimum=Q.value;break;case"max":if(Q.inclusive)J.maximum=Q.value;else J.exclusiveMaximum=Q.value;break;case"multipleOf":J.multipleOf=Q.value;break}return J}function bF(){return{type:"boolean"}}function FF(F,J){return E(F.type._def,J)}var SF=(F,J)=>{return E(F.innerType._def,J)};function JF(F,J,Q){let W=Q!=null?Q:J.dateStrategy;if(Array.isArray(W))return{anyOf:W.map((X,Y)=>JF(F,J,X))};switch(W){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return gF(F)}}var gF=(F)=>{let J={type:"integer",format:"unix-time"};for(let Q of F.checks)switch(Q.kind){case"min":J.minimum=Q.value;break;case"max":J.maximum=Q.value;break}return J};function xF(F,J){return{...E(F.innerType._def,J),default:F.defaultValue()}}function vF(F,J){return J.effectStrategy==="input"?E(F.schema._def,J):K()}function yF(F){return{type:"string",enum:Array.from(F.values)}}var hF=(F)=>{if("type"in F&&F.type==="string")return!1;return"allOf"in F};function mF(F,J){let Q=[E(F.left._def,{...J,currentPath:[...J.currentPath,"allOf","0"]}),E(F.right._def,{...J,currentPath:[...J.currentPath,"allOf","1"]})].filter((X)=>!!X),W=[];return Q.forEach((X)=>{if(hF(X))W.push(...X.allOf);else{let Y=X;if("additionalProperties"in X&&X.additionalProperties===!1){let{additionalProperties:Z,...$}=X;Y=$}W.push(Y)}}),W.length?{allOf:W}:void 0}function uF(F){let J=typeof F.value;if(J!=="bigint"&&J!=="number"&&J!=="boolean"&&J!=="string")return{type:Array.isArray(F.value)?"array":"object"};return{type:J==="bigint"?"integer":J,const:F.value}}var T=void 0,q={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(T===void 0)T=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return T},uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function QF(F,J){let Q={type:"string"};if(F.checks)for(let W of F.checks)switch(W.kind){case"min":Q.minLength=typeof Q.minLength==="number"?Math.max(Q.minLength,W.value):W.value;break;case"max":Q.maxLength=typeof Q.maxLength==="number"?Math.min(Q.maxLength,W.value):W.value;break;case"email":switch(J.emailStrategy){case"format:email":D(Q,"email",W.message,J);break;case"format:idn-email":D(Q,"idn-email",W.message,J);break;case"pattern:zod":C(Q,q.email,W.message,J);break}break;case"url":D(Q,"uri",W.message,J);break;case"uuid":D(Q,"uuid",W.message,J);break;case"regex":C(Q,W.regex,W.message,J);break;case"cuid":C(Q,q.cuid,W.message,J);break;case"cuid2":C(Q,q.cuid2,W.message,J);break;case"startsWith":C(Q,RegExp(`^${_(W.value,J)}`),W.message,J);break;case"endsWith":C(Q,RegExp(`${_(W.value,J)}$`),W.message,J);break;case"datetime":D(Q,"date-time",W.message,J);break;case"date":D(Q,"date",W.message,J);break;case"time":D(Q,"time",W.message,J);break;case"duration":D(Q,"duration",W.message,J);break;case"length":Q.minLength=typeof Q.minLength==="number"?Math.max(Q.minLength,W.value):W.value,Q.maxLength=typeof Q.maxLength==="number"?Math.min(Q.maxLength,W.value):W.value;break;case"includes":{C(Q,RegExp(_(W.value,J)),W.message,J);break}case"ip":{if(W.version!=="v6")D(Q,"ipv4",W.message,J);if(W.version!=="v4")D(Q,"ipv6",W.message,J);break}case"base64url":C(Q,q.base64url,W.message,J);break;case"jwt":C(Q,q.jwt,W.message,J);break;case"cidr":{if(W.version!=="v6")C(Q,q.ipv4Cidr,W.message,J);if(W.version!=="v4")C(Q,q.ipv6Cidr,W.message,J);break}case"emoji":C(Q,q.emoji(),W.message,J);break;case"ulid":{C(Q,q.ulid,W.message,J);break}case"base64":{switch(J.base64Strategy){case"format:binary":{D(Q,"binary",W.message,J);break}case"contentEncoding:base64":{Q.contentEncoding="base64";break}case"pattern:zod":{C(Q,q.base64,W.message,J);break}}break}case"nanoid":C(Q,q.nanoid,W.message,J);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return Q}function _(F,J){return J.patternStrategy==="escape"?pF(F):F}var iF=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function pF(F){let J="";for(let Q=0;Q<F.length;Q++){if(!iF.has(F[Q]))J+="\\";J+=F[Q]}return J}function D(F,J,Q,W){var X;if(F.format||((X=F.anyOf)==null?void 0:X.some((Y)=>Y.format))){if(!F.anyOf)F.anyOf=[];if(F.format)F.anyOf.push({format:F.format}),delete F.format;F.anyOf.push({format:J,...Q&&W.errorMessages&&{errorMessage:{format:Q}}})}else F.format=J}function C(F,J,Q,W){var X;if(F.pattern||((X=F.allOf)==null?void 0:X.some((Y)=>Y.pattern))){if(!F.allOf)F.allOf=[];if(F.pattern)F.allOf.push({pattern:F.pattern}),delete F.pattern;F.allOf.push({pattern:c(J,W),...Q&&W.errorMessages&&{errorMessage:{pattern:Q}}})}else F.pattern=c(J,W)}function c(F,J){var Q;if(!J.applyRegexFlags||!F.flags)return F.source;let W={i:F.flags.includes("i"),m:F.flags.includes("m"),s:F.flags.includes("s")},X=W.i?F.source.toLowerCase():F.source,Y="",Z=!1,$=!1,w=!1;for(let L=0;L<X.length;L++){if(Z){Y+=X[L],Z=!1;continue}if(W.i){if($){if(X[L].match(/[a-z]/)){if(w)Y+=X[L],Y+=`${X[L-2]}-${X[L]}`.toUpperCase(),w=!1;else if(X[L+1]==="-"&&((Q=X[L+2])==null?void 0:Q.match(/[a-z]/)))Y+=X[L],w=!0;else Y+=`${X[L]}${X[L].toUpperCase()}`;continue}}else if(X[L].match(/[a-z]/)){Y+=`[${X[L]}${X[L].toUpperCase()}]`;continue}}if(W.m){if(X[L]==="^"){Y+=`(^|(?<=[\r
|
|
4
4
|
]))`;continue}else if(X[L]==="$"){Y+=`($|(?=[\r
|
|
5
5
|
]))`;continue}}if(W.s&&X[L]==="."){Y+=$?`${X[L]}\r
|
|
6
6
|
`:`[${X[L]}\r
|
|
7
7
|
]`;continue}if(Y+=X[L],X[L]==="\\")Z=!0;else if($&&X[L]==="]")$=!1;else if(!$&&X[L]==="[")$=!0}try{new RegExp(Y)}catch(L){return console.warn(`Could not convert regex pattern at ${J.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),F.source}return Y}function WF(F,J){var Q,W,X,Y,Z,$;let w={type:"object",additionalProperties:(Q=E(F.valueType._def,{...J,currentPath:[...J.currentPath,"additionalProperties"]}))!=null?Q:J.allowedAdditionalProperties};if(((W=F.keyType)==null?void 0:W._def.typeName)===U.ZodString&&((X=F.keyType._def.checks)==null?void 0:X.length)){let{type:L,...G}=QF(F.keyType._def,J);return{...w,propertyNames:G}}else if(((Y=F.keyType)==null?void 0:Y._def.typeName)===U.ZodEnum)return{...w,propertyNames:{enum:F.keyType._def.values}};else if(((Z=F.keyType)==null?void 0:Z._def.typeName)===U.ZodBranded&&F.keyType._def.type._def.typeName===U.ZodString&&(($=F.keyType._def.type._def.checks)==null?void 0:$.length)){let{type:L,...G}=FF(F.keyType._def,J);return{...w,propertyNames:G}}return w}function lF(F,J){if(J.mapStrategy==="record")return WF(F,J);let Q=E(F.keyType._def,{...J,currentPath:[...J.currentPath,"items","items","0"]})||K(),W=E(F.valueType._def,{...J,currentPath:[...J.currentPath,"items","items","1"]})||K();return{type:"array",maxItems:125,items:{type:"array",items:[Q,W],minItems:2,maxItems:2}}}function cF(F){let J=F.values,W=Object.keys(F.values).filter((Y)=>{return typeof J[J[Y]]!=="number"}).map((Y)=>J[Y]),X=Array.from(new Set(W.map((Y)=>typeof Y)));return{type:X.length===1?X[0]==="string"?"string":"number":["string","number"],enum:W}}function dF(){return{not:K()}}function nF(){return{type:"null"}}var S={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function fF(F,J){let Q=F.options instanceof Map?Array.from(F.options.values()):F.options;if(Q.every((W)=>(W._def.typeName in S)&&(!W._def.checks||!W._def.checks.length))){let W=Q.reduce((X,Y)=>{let Z=S[Y._def.typeName];return Z&&!X.includes(Z)?[...X,Z]:X},[]);return{type:W.length>1?W:W[0]}}else if(Q.every((W)=>W._def.typeName==="ZodLiteral"&&!W.description)){let W=Q.reduce((X,Y)=>{let Z=typeof Y._def.value;switch(Z){case"string":case"number":case"boolean":return[...X,Z];case"bigint":return[...X,"integer"];case"object":if(Y._def.value===null)return[...X,"null"];case"symbol":case"undefined":case"function":default:return X}},[]);if(W.length===Q.length){let X=W.filter((Y,Z,$)=>$.indexOf(Y)===Z);return{type:X.length>1?X:X[0],enum:Q.reduce((Y,Z)=>{return Y.includes(Z._def.value)?Y:[...Y,Z._def.value]},[])}}}else if(Q.every((W)=>W._def.typeName==="ZodEnum"))return{type:"string",enum:Q.reduce((W,X)=>[...W,...X._def.values.filter((Y)=>!W.includes(Y))],[])};return tF(F,J)}var tF=(F,J)=>{let Q=(F.options instanceof Map?Array.from(F.options.values()):F.options).map((W,X)=>E(W._def,{...J,currentPath:[...J.currentPath,"anyOf",`${X}`]})).filter((W)=>!!W&&(!J.strictUnions||typeof W==="object"&&Object.keys(W).length>0));return Q.length?{anyOf:Q}:void 0};function oF(F,J){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(F.innerType._def.typeName)&&(!F.innerType._def.checks||!F.innerType._def.checks.length))return{type:[S[F.innerType._def.typeName],"null"]};let Q=E(F.innerType._def,{...J,currentPath:[...J.currentPath,"anyOf","0"]});return Q&&{anyOf:[Q,{type:"null"}]}}function aF(F){let J={type:"number"};if(!F.checks)return J;for(let Q of F.checks)switch(Q.kind){case"int":J.type="integer";break;case"min":if(Q.inclusive)J.minimum=Q.value;else J.exclusiveMinimum=Q.value;break;case"max":if(Q.inclusive)J.maximum=Q.value;else J.exclusiveMaximum=Q.value;break;case"multipleOf":J.multipleOf=Q.value;break}return J}function sF(F,J){let Q={type:"object",properties:{}},W=[],X=F.shape();for(let Z in X){let $=X[Z];if($===void 0||$._def===void 0)continue;let w=eF($),L=E($._def,{...J,currentPath:[...J.currentPath,"properties",Z],propertyPath:[...J.currentPath,"properties",Z]});if(L===void 0)continue;if(Q.properties[Z]=L,!w)W.push(Z)}if(W.length)Q.required=W;let Y=rF(F,J);if(Y!==void 0)Q.additionalProperties=Y;return Q}function rF(F,J){if(F.catchall._def.typeName!=="ZodNever")return E(F.catchall._def,{...J,currentPath:[...J.currentPath,"additionalProperties"]});switch(F.unknownKeys){case"passthrough":return J.allowedAdditionalProperties;case"strict":return J.rejectedAdditionalProperties;case"strip":return J.removeAdditionalStrategy==="strict"?J.allowedAdditionalProperties:J.rejectedAdditionalProperties}}function eF(F){try{return F.isOptional()}catch(J){return!0}}var FJ=(F,J)=>{var Q;if(J.currentPath.toString()===((Q=J.propertyPath)==null?void 0:Q.toString()))return E(F.innerType._def,J);let W=E(F.innerType._def,{...J,currentPath:[...J.currentPath,"anyOf","1"]});return W?{anyOf:[{not:K()},W]}:K()},JJ=(F,J)=>{if(J.pipeStrategy==="input")return E(F.in._def,J);else if(J.pipeStrategy==="output")return E(F.out._def,J);let Q=E(F.in._def,{...J,currentPath:[...J.currentPath,"allOf","0"]}),W=E(F.out._def,{...J,currentPath:[...J.currentPath,"allOf",Q?"1":"0"]});return{allOf:[Q,W].filter((X)=>X!==void 0)}};function QJ(F,J){return E(F.type._def,J)}function WJ(F,J){let W={type:"array",uniqueItems:!0,items:E(F.valueType._def,{...J,currentPath:[...J.currentPath,"items"]})};if(F.minSize)W.minItems=F.minSize.value;if(F.maxSize)W.maxItems=F.maxSize.value;return W}function XJ(F,J){if(F.rest)return{type:"array",minItems:F.items.length,items:F.items.map((Q,W)=>E(Q._def,{...J,currentPath:[...J.currentPath,"items",`${W}`]})).reduce((Q,W)=>W===void 0?Q:[...Q,W],[]),additionalItems:E(F.rest._def,{...J,currentPath:[...J.currentPath,"additionalItems"]})};else return{type:"array",minItems:F.items.length,maxItems:F.items.length,items:F.items.map((Q,W)=>E(Q._def,{...J,currentPath:[...J.currentPath,"items",`${W}`]})).reduce((Q,W)=>W===void 0?Q:[...Q,W],[])}}function YJ(){return{not:K()}}function ZJ(){return K()}var $J=(F,J)=>{return E(F.innerType._def,J)},LJ=(F,J,Q)=>{switch(J){case U.ZodString:return QF(F,Q);case U.ZodNumber:return aF(F);case U.ZodObject:return sF(F,Q);case U.ZodBigInt:return kF(F);case U.ZodBoolean:return bF();case U.ZodDate:return JF(F,Q);case U.ZodUndefined:return YJ();case U.ZodNull:return nF();case U.ZodArray:return jF(F,Q);case U.ZodUnion:case U.ZodDiscriminatedUnion:return fF(F,Q);case U.ZodIntersection:return mF(F,Q);case U.ZodTuple:return XJ(F,Q);case U.ZodRecord:return WF(F,Q);case U.ZodLiteral:return uF(F);case U.ZodEnum:return yF(F);case U.ZodNativeEnum:return cF(F);case U.ZodNullable:return oF(F,Q);case U.ZodOptional:return FJ(F,Q);case U.ZodMap:return lF(F,Q);case U.ZodSet:return WJ(F,Q);case U.ZodLazy:return()=>F.getter()._def;case U.ZodPromise:return QJ(F,Q);case U.ZodNaN:case U.ZodNever:return dF();case U.ZodEffects:return vF(F,Q);case U.ZodAny:return K();case U.ZodUnknown:return ZJ();case U.ZodDefault:return xF(F,Q);case U.ZodBranded:return FF(F,Q);case U.ZodReadonly:return $J(F,Q);case U.ZodCatch:return SF(F,Q);case U.ZodPipeline:return JJ(F,Q);case U.ZodFunction:case U.ZodVoid:case U.ZodSymbol:return;default:return((W)=>{return})(J)}},UJ=(F,J)=>{let Q=0;for(;Q<F.length&&Q<J.length;Q++)if(F[Q]!==J[Q])break;return[(F.length-Q).toString(),...J.slice(Q)].join("/")};function E(F,J,Q=!1){var W;let X=J.seen.get(F);if(J.override){let w=(W=J.override)==null?void 0:W.call(J,F,J,X,Q);if(w!==TF)return w}if(X&&!Q){let w=wJ(X,J);if(w!==void 0)return w}let Y={def:F,path:J.currentPath,jsonSchema:void 0};J.seen.set(F,Y);let Z=LJ(F,F.typeName,J),$=typeof Z==="function"?E(Z(),J):Z;if($)EJ(F,J,$);if(J.postProcess){let w=J.postProcess($,F,J);return Y.jsonSchema=$,w}return Y.jsonSchema=$,$}var wJ=(F,J)=>{switch(J.$refStrategy){case"root":return{$ref:F.path.join("/")};case"relative":return{$ref:UJ(J.currentPath,F.path)};case"none":case"seen":{if(F.path.length<J.currentPath.length&&F.path.every((Q,W)=>J.currentPath[W]===Q))return console.warn(`Recursive reference detected at ${J.currentPath.join("/")}! Defaulting to any`),K();return J.$refStrategy==="seen"?K():void 0}}},EJ=(F,J,Q)=>{if(F.description)Q.description=F.description;return Q},GJ=(F)=>{let J=_F(F),Q=J.name!==void 0?[...J.basePath,J.definitionPath,J.name]:J.basePath;return{...J,currentPath:Q,propertyPath:void 0,seen:new Map(Object.entries(J.definitions).map(([W,X])=>[X._def,{def:X._def,path:[...J.basePath,J.definitionPath,W],jsonSchema:void 0}]))}},CJ=(F,J)=>{var Q;let W=GJ(J),X=typeof J==="object"&&J.definitions?Object.entries(J.definitions).reduce((L,[G,R])=>{var h;return{...L,[G]:(h=E(R._def,{...W,currentPath:[...W.basePath,W.definitionPath,G]},!0))!=null?h:K()}},{}):void 0,Y=typeof J==="string"?J:(J==null?void 0:J.nameStrategy)==="title"?void 0:J==null?void 0:J.name,Z=(Q=E(F._def,Y===void 0?W:{...W,currentPath:[...W.basePath,W.definitionPath,Y]},!1))!=null?Q:K(),$=typeof J==="object"&&J.name!==void 0&&J.nameStrategy==="title"?J.name:void 0;if($!==void 0)Z.title=$;let w=Y===void 0?X?{...Z,[W.definitionPath]:X}:Z:{$ref:[...W.$refStrategy==="relative"?[]:W.basePath,W.definitionPath,Y].join("/"),[W.definitionPath]:{...X,[Y]:Z}};return w.$schema="http://json-schema.org/draft-07/schema#",w},g=Symbol.for("vercel.ai.schema");function aJ(F){let J;return()=>{if(J==null)J=F();return J}}function V(F,{validate:J}={}){return{[g]:!0,_type:void 0,get jsonSchema(){if(typeof F==="function")F=F();return F},validate:J}}function MJ(F){return typeof F==="object"&&F!==null&&g in F&&F[g]===!0&&"jsonSchema"in F&&"validate"in F}function KJ(F){return F==null?V({properties:{},additionalProperties:!1}):MJ(F)?F:("~standard"in F)?F["~standard"].vendor==="zod"?PJ(F):qJ(F):F()}function qJ(F){return V(()=>v(F["~standard"].jsonSchema.input({target:"draft-07"})),{validate:async(J)=>{let Q=await F["~standard"].validate(J);return"value"in Q?{success:!0,value:Q.value}:{success:!1,error:new I({value:J,cause:Q.issues})}}})}function DJ(F,J){var Q;let W=(Q=J==null?void 0:J.useReferences)!=null?Q:!1;return V(()=>CJ(F,{$refStrategy:W?"root":"none"}),{validate:async(X)=>{let Y=await F.safeParseAsync(X);return Y.success?{success:!0,value:Y.data}:{success:!1,error:Y.error}}})}function OJ(F,J){var Q;let W=(Q=J==null?void 0:J.useReferences)!=null?Q:!1;return V(()=>v(d(F,{target:"draft-7",io:"input",reused:W?"ref":"inline"})),{validate:async(X)=>{let Y=await n(F,X);return Y.success?{success:!0,value:Y.data}:{success:!1,error:Y.error}}})}function IJ(F){return"_zod"in F}function PJ(F,J){if(IJ(F))return OJ(F,J);else return DJ(F,J)}async function zJ({value:F,schema:J,context:Q}){let W=await y({value:F,schema:J,context:Q});if(!W.success)throw I.wrap({value:F,cause:W.error,context:Q});return W.value}async function y({value:F,schema:J,context:Q}){let W=KJ(J);try{if(W.validate==null)return{success:!0,value:F,rawValue:F};let X=await W.validate(F);if(X.success)return{success:!0,value:X.value,rawValue:F};return{success:!1,error:I.wrap({value:F,cause:X.error,context:Q}),rawValue:F}}catch(X){return{success:!1,error:I.wrap({value:F,cause:X,context:Q}),rawValue:F}}}async function AJ({text:F,schema:J}){try{let Q=x(F);if(J==null)return Q;return zJ({value:Q,schema:J})}catch(Q){if(H.isInstance(Q)||I.isInstance(Q))throw Q;throw new H({text:F,cause:Q})}}async function XF({text:F,schema:J}){try{let Q=x(F);if(J==null)return{success:!0,value:Q,rawValue:Q};return await y({value:Q,schema:J})}catch(Q){return{success:!1,error:H.isInstance(Q)?Q:new H({text:F,cause:Q}),rawValue:void 0}}}function sJ(F){try{return x(F),!0}catch(J){return!1}}function HJ({stream:F,schema:J}){return F.pipeThrough(new TextDecoderStream).pipeThrough(new t).pipeThrough(new TransformStream({async transform({data:Q},W){if(Q==="[DONE]")return;W.enqueue(await XF({text:Q,schema:J}))}}))}async function FQ({provider:F,providerOptions:J,schema:Q}){if((J==null?void 0:J[F])==null)return;let W=await y({value:J[F],schema:Q});if(!W.success)throw new N({argument:"providerOptions",message:`invalid ${F} provider options`,cause:W.error});return W.value}var BJ=()=>globalThis.fetch,QQ=async({url:F,headers:J,body:Q,failedResponseHandler:W,successfulResponseHandler:X,abortSignal:Y,fetch:Z})=>YF({url:F,headers:{"Content-Type":"application/json",...J},body:{content:JSON.stringify(Q),values:Q},failedResponseHandler:W,successfulResponseHandler:X,abortSignal:Y,fetch:Z}),WQ=async({url:F,headers:J,formData:Q,failedResponseHandler:W,successfulResponseHandler:X,abortSignal:Y,fetch:Z})=>YF({url:F,headers:J,body:{content:Q,values:Object.fromEntries(Q.entries())},failedResponseHandler:W,successfulResponseHandler:X,abortSignal:Y,fetch:Z}),YF=async({url:F,headers:J={},body:Q,successfulResponseHandler:W,failedResponseHandler:X,abortSignal:Y,fetch:Z=BJ()})=>{try{let $=await Z(F,{method:"POST",headers:IF(J,`ai-sdk/provider-utils/${PF}`,DF()),body:Q.content,signal:Y}),w=B($);if(!$.ok){let L;try{L=await X({response:$,url:F,requestBodyValues:Q.values})}catch(G){if(b(G)||M.isInstance(G))throw G;throw new M({message:"Failed to process error response",cause:G,statusCode:$.status,url:F,responseHeaders:w,requestBodyValues:Q.values})}throw L.value}try{return await W({response:$,url:F,requestBodyValues:Q.values})}catch(L){if(L instanceof Error){if(b(L)||M.isInstance(L))throw L}throw new M({message:"Failed to process successful response",cause:L,statusCode:$.status,url:F,responseHeaders:w,requestBodyValues:Q.values})}}catch($){throw qF({error:$,url:F,requestBodyValues:Q.values})}};function ZF(F){return F}function XQ({id:F,inputSchema:J}){return({execute:Q,outputSchema:W,needsApproval:X,toModelOutput:Y,onInputStart:Z,onInputDelta:$,onInputAvailable:w,...L})=>ZF({type:"provider",id:F,args:L,inputSchema:J,outputSchema:W,execute:Q,needsApproval:X,toModelOutput:Y,onInputStart:Z,onInputDelta:$,onInputAvailable:w})}function YQ({id:F,inputSchema:J,outputSchema:Q,supportsDeferredResults:W}){return({execute:X,needsApproval:Y,toModelOutput:Z,onInputStart:$,onInputDelta:w,onInputAvailable:L,...G})=>ZF({type:"provider",id:F,args:G,inputSchema:J,outputSchema:Q,execute:X,needsApproval:Y,toModelOutput:Z,onInputStart:$,onInputDelta:w,onInputAvailable:L,supportsDeferredResults:W})}var $Q=({errorSchema:F,errorToMessage:J,isRetryable:Q})=>async({response:W,url:X,requestBodyValues:Y})=>{let Z=await W.text(),$=B(W);if(Z.trim()==="")return{responseHeaders:$,value:new M({message:W.statusText,url:X,requestBodyValues:Y,statusCode:W.status,responseHeaders:$,responseBody:Z,isRetryable:Q==null?void 0:Q(W)})};try{let w=await AJ({text:Z,schema:F});return{responseHeaders:$,value:new M({message:J(w),url:X,requestBodyValues:Y,statusCode:W.status,responseHeaders:$,responseBody:Z,data:w,isRetryable:Q==null?void 0:Q(W,w)})}}catch(w){return{responseHeaders:$,value:new M({message:W.statusText,url:X,requestBodyValues:Y,statusCode:W.status,responseHeaders:$,responseBody:Z,isRetryable:Q==null?void 0:Q(W)})}}},LQ=(F)=>async({response:J})=>{let Q=B(J);if(J.body==null)throw new f({});return{responseHeaders:Q,value:HJ({stream:J.body,schema:F})}},UQ=(F)=>async({response:J,url:Q,requestBodyValues:W})=>{let X=await J.text(),Y=await XF({text:X,schema:F}),Z=B(J);if(!Y.success)throw new M({message:"Invalid JSON response",cause:Y.error,statusCode:J.status,responseHeaders:Z,responseBody:X,url:Q,requestBodyValues:W});return{responseHeaders:Z,value:Y.value,rawValue:Y.rawValue}},wQ=()=>async({response:F,url:J,requestBodyValues:Q})=>{let W=B(F);if(!F.body)throw new M({message:"Response body is empty",url:J,requestBodyValues:Q,statusCode:F.status,responseHeaders:W,responseBody:void 0});try{let X=await F.arrayBuffer();return{responseHeaders:W,value:new Uint8Array(X)}}catch(X){throw new M({message:"Failed to read response as array buffer",url:J,requestBodyValues:Q,statusCode:F.status,responseHeaders:W,responseBody:void 0,cause:X})}};function EQ(F){return F==null?void 0:F.replace(/\/$/,"")}
|
|
8
|
-
export{NJ as
|
|
8
|
+
export{NJ as Re,VJ as Se,TJ as Te,o as Ue,_J as Ve,jJ as We,kJ as Xe,SJ as Ye,xJ as Ze,IF as _e,yJ as $e,hJ as af,uJ as bf,pJ as cf,lJ as df,aJ as ef,PJ as ff,zJ as gf,AJ as hf,sJ as if,FQ as jf,QQ as kf,WQ as lf,XQ as mf,YQ as nf,$Q as of,LQ as pf,UQ as qf,wQ as rf,EQ as sf};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{Y as
|
|
2
|
+
import{Hs as B}from"./chunk-r5zy4za0.js";import{Qs as A,Ts as K}from"./chunk-tr6rdr6h.js";var C=new Set,O=!1;function Y(q){return C.add(q),()=>{C.delete(q)}}function Z(){return O}function _(q){let D=!1,F=(z,J)=>{if(D)return;D=!0,O=!0,process.exitCode=1,A.error(z,{error:B(J),process_role:q});let Q=setTimeout(()=>process.exit(1),5000),S=[...C].map((U)=>Promise.resolve().then(()=>U(J)).catch((V)=>{A.error("fatal teardown failed",{error:B(V),process_role:q})}));Promise.all([K(),...S]).finally(()=>{clearTimeout(Q),process.exit(1)})},G=(z)=>F("unhandled rejection",z),H=(z)=>F("uncaught exception",z);return process.on("unhandledRejection",G),process.on("uncaughtException",H),()=>{process.off("unhandledRejection",G),process.off("uncaughtException",H)}}
|
|
3
|
+
export{Y as Zr,Z as _r,_ as $r};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import"./chunk-tczbhj0e.js";import"./chunk-f83wv08n.js";var f={"language.en":"English","language.zh":"\u7B80\u4F53\u4E2D\u6587","language.zht":"\u7E41\u9AD4\u4E2D\u6587","language.ko":"\uD55C\uAD6D\uC5B4","language.de":"Deutsch","language.es":"Espa\xF1ol","language.fr":"Fran\xE7ais","language.da":"Dansk","language.ja":"\u65E5\u672C\u8A9E","language.pl":"Polski","language.ru":"\u0420\u0443\u0441\u0441\u043A\u0438\u0439","language.ar":"\u0627\u0644\u0639\u0631\u0628\u064A\u0629","language.no":"Norsk","language.br":"Portugu\xEAs (Brasil)","language.pt":"Portugu\xEAs","language.bs":"Bosanski","language.th":"\u0E44\u0E17\u0E22","language.tr":"T\xFCrk\xE7e","tui.prompt.placeholder.normal":"Escreva a sua mensagem... (escreva / para comandos)","tui.prompt.placeholder.shell":'Execute um comando... "{{example}}"',"tui.prompt.ghost":"{{prediction}} (Tab para aceitar)","tui.home.placeholder.example.todo":"Corrigir um TODO no c\xF3digo","tui.home.placeholder.example.stack":"Qual \xE9 a stack tecnol\xF3gica deste projeto?","tui.home.placeholder.example.tests":"Corrigir testes falhados","tui.home.agreement.prefix":"Ao usar o QitQode, concorda com os nossos ","tui.home.agreement.terms":"Termos de Servi\xE7o","tui.home.agreement.separator":" e a ","tui.home.agreement.privacy":"Pol\xEDtica de Privacidade","tui.home.agreement.suffix":"","tui.prompt.hint.attach_file":"anexar ficheiro","tui.prompt.hint.subagent":"subagente","tui.prompt.hint.commands":"comandos","tui.prompt.hint.switch_mode":"mudar modo","tui.prompt.hint.settings":"defini\xE7\xF5es","tui.tips.label":"Dica","tui.tips.plain_terminal":"Recomendamos usar o iTerm ou o terminal do VS Code","tui.tips.attach_file":"Escreva {highlight}@{/highlight} seguido do nome do ficheiro para pesquisar e anexar ficheiros","tui.tips.shell_prefix":"Inicie uma mensagem com {highlight}!{/highlight} para executar comandos de shell diretamente (ex.: {highlight}!ls -la{/highlight})","tui.tips.tab_agent":"Prima {highlight}Tab{/highlight} ou {highlight}Shift+Tab{/highlight} para alternar entre os agentes Build, Plan e Compose","tui.tips.theme_mode":"Execute {highlight}/dark{/highlight} para o modo escuro ou {highlight}/light{/highlight} para o modo claro","tui.tips.doc":"Execute {highlight}/doc{/highlight} para abrir a documenta\xE7\xE3o do utilizador","tui.tips.undo":"Use {highlight}/undo{/highlight} para reverter a \xFAltima mensagem e altera\xE7\xF5es em ficheiros","tui.tips.redo":"Use {highlight}/redo{/highlight} para restaurar mensagens e altera\xE7\xF5es desfeitas anteriormente","tui.tips.drag_drop":"Arraste e solte imagens ou PDFs no terminal para os adicionar como contexto","tui.tips.paste_image":"Prima {highlight}Ctrl+V{/highlight} para colar imagens da \xE1rea de transfer\xEAncia na entrada","tui.tips.editor":"Prima {highlight}Ctrl+X E{/highlight} ou {highlight}/editor{/highlight} para compor mensagens no seu editor externo","tui.tips.init":"Execute {highlight}/init{/highlight} para gerar automaticamente regras do projeto a partir do seu c\xF3digo","tui.tips.models":"Execute {highlight}/models{/highlight} ou {highlight}Ctrl+X M{/highlight} para alternar entre os modelos dispon\xEDveis","tui.tips.theme":'Trave o modo de tema contra o fundo do seu terminal \u2014 abra a paleta de comandos ({highlight}Ctrl+P{/highlight}) e busque "lock"',"tui.tips.new_session":"Prima {highlight}Ctrl+X N{/highlight} ou {highlight}/new{/highlight} para iniciar uma nova sess\xE3o","tui.tips.sessions":"Use {highlight}/sessions{/highlight} ou {highlight}Ctrl+X L{/highlight} para listar e continuar conversas anteriores","tui.tips.compact":"Execute {highlight}/compact{/highlight} para resumir sess\xF5es longas pr\xF3ximas dos limites de contexto","tui.tips.export":"Prima {highlight}Ctrl+X X{/highlight} ou {highlight}/export{/highlight} para guardar a conversa como Markdown","tui.tips.copy_last":"Prima {highlight}Ctrl+X Y{/highlight} para copiar a \xFAltima mensagem do assistente para a \xE1rea de transfer\xEAncia","tui.tips.command_palette":"Prima {highlight}Ctrl+P{/highlight} para ver todas as a\xE7\xF5es e comandos dispon\xEDveis","tui.tips.leader":"A tecla l\xEDder \xE9 {highlight}Ctrl+X{/highlight}; combine-a com outras teclas para a\xE7\xF5es r\xE1pidas","tui.tips.f2":"Prima {highlight}F2{/highlight} para alternar rapidamente entre os modelos usados recentemente","tui.tips.sidebar":"Prima {highlight}Ctrl+X B{/highlight} para mostrar/ocultar o painel lateral","tui.tips.history":"Use {highlight}PageUp{/highlight}/{highlight}PageDown{/highlight} para navegar no hist\xF3rico da conversa","tui.tips.jump_first":"Prima {highlight}Ctrl+G{/highlight} ou {highlight}Home{/highlight} para ir ao in\xEDcio da conversa","tui.tips.jump_last":"Prima {highlight}Ctrl+Alt+G{/highlight} ou {highlight}End{/highlight} para ir \xE0 mensagem mais recente","tui.tips.newline":"Prima {highlight}Shift+Enter{/highlight} ou {highlight}Ctrl+J{/highlight} para adicionar novas linhas na entrada","tui.tips.clear_input":"Prima {highlight}Ctrl+C{/highlight} ao escrever para limpar o campo de entrada","tui.tips.escape":"Prima {highlight}Escape{/highlight} para parar a resposta da IA a meio","tui.tips.plan_agent":"Mude para o agente {highlight}Plan{/highlight} para obter sugest\xF5es sem efetuar altera\xE7\xF5es reais","tui.tips.subagent":"Use {highlight}@agent-name{/highlight} nas entradas para invocar subagentes especializados","tui.tips.cycle_sessions":"Prima {highlight}Ctrl+X Right/Left{/highlight} para alternar entre sess\xF5es pai e filho","tui.tips.config_files":"Crie {highlight}qitqode.json{/highlight} para defini\xE7\xF5es do servidor e {highlight}tui.json{/highlight} para a TUI","tui.tips.global_config":"Coloque as defini\xE7\xF5es da TUI em {highlight}~/.config/qitqode/tui.json{/highlight} para configura\xE7\xE3o global","tui.tips.schema":"Adicione {highlight}$schema{/highlight} \xE0 sua configura\xE7\xE3o para autocompletar no editor","tui.tips.default_model":"Configure {highlight}model{/highlight} na configura\xE7\xE3o para definir o seu modelo predefinido","tui.tips.keybinds":"Substitua qualquer atalho em {highlight}tui.json{/highlight} atrav\xE9s da sec\xE7\xE3o {highlight}keybinds{/highlight}","tui.tips.disable_keybind":"Defina qualquer atalho como {highlight}none{/highlight} para o desativar completamente","tui.tips.mcp_config":"Configure servidores MCP locais ou remotos na sec\xE7\xE3o de configura\xE7\xE3o {highlight}mcp{/highlight}","tui.tips.mcp_oauth":"O QitQode gere automaticamente o OAuth para servidores MCP remotos que requerem autentica\xE7\xE3o","tui.tips.custom_command":"Adicione ficheiros {highlight}.md{/highlight} a {highlight}.qitqode/command/{/highlight} para definir prompts personalizados reutiliz\xE1veis","tui.tips.command_args":"Use {highlight}$ARGUMENTS{/highlight}, {highlight}$1{/highlight}, {highlight}$2{/highlight} em comandos personalizados para entrada din\xE2mica","tui.tips.command_backticks":"Use acentos graves em comandos para injetar sa\xEDda de shell (ex.: {highlight}`git status`{/highlight})","tui.tips.custom_agent":"Adicione ficheiros {highlight}.md{/highlight} a {highlight}.qitqode/agent/{/highlight} para personas de IA especializadas","tui.tips.agent_perms":"Configure permiss\xF5es por agente para as ferramentas {highlight}edit{/highlight}, {highlight}bash{/highlight} e {highlight}webfetch{/highlight}","tui.tips.bash_allow":'Use padr\xF5es como {highlight}"git *": "allow"{/highlight} para permiss\xF5es de bash mais granulares',"tui.tips.bash_deny":'Defina {highlight}"rm -rf *": "deny"{/highlight} para bloquear comandos destrutivos',"tui.tips.bash_ask":'Configure {highlight}"git push": "ask"{/highlight} para exigir aprova\xE7\xE3o antes de fazer push',"tui.tips.formatter":"O QitQode formata ficheiros automaticamente com prettier, gofmt, ruff e mais","tui.tips.disable_formatter":'Defina {highlight}"formatter": false{/highlight} na configura\xE7\xE3o para desativar toda a formata\xE7\xE3o autom\xE1tica',"tui.tips.custom_formatter":"Defina comandos de formata\xE7\xE3o personalizados com extens\xF5es de ficheiro na configura\xE7\xE3o","tui.tips.lsp":"O QitQode usa servidores LSP para an\xE1lise de c\xF3digo inteligente","tui.tips.custom_tool":"Crie ficheiros {highlight}.ts{/highlight} em {highlight}.qitqode/tools/{/highlight} para definir novas ferramentas LLM","tui.tips.tool_scripts":"As defini\xE7\xF5es de ferramentas podem invocar scripts escritos em Python, Go, etc.","tui.tips.plugins":"Adicione ficheiros {highlight}.ts{/highlight} a {highlight}.qitqode/plugin/{/highlight} para ganchos de eventos","tui.tips.plugin_notify":"Use plugins para enviar notifica\xE7\xF5es do sistema operativo quando as sess\xF5es terminam","tui.tips.plugin_protect":"Crie um plugin para impedir que o QitQode leia ficheiros sens\xEDveis","tui.tips.run":"Use {highlight}qitqode run{/highlight} para scripting n\xE3o interativo","tui.tips.continue":"Use {highlight}qitqode --continue{/highlight} para retomar a \xFAltima sess\xE3o","tui.tips.attach_cli":"Use {highlight}qitqode run -f file.ts{/highlight} para anexar ficheiros via CLI","tui.tips.format_json":"Use {highlight}--format json{/highlight} para sa\xEDda leg\xEDvel por m\xE1quina em scripts","tui.tips.auth_list":"Execute {highlight}qitqode auth status{/highlight} para ver seu status de login atual","tui.tips.agent_create":"Execute {highlight}qitqode agent create{/highlight} para cria\xE7\xE3o guiada de agentes","tui.tips.theme_system":'Use {highlight}"theme": "system"{/highlight} para corresponder \xE0s cores do seu terminal',"tui.tips.theme_files":"Crie ficheiros de tema JSON no diret\xF3rio {highlight}.qitqode/themes/{/highlight}","tui.tips.theme_variants":"Os temas suportam variantes escura/clara para ambos os modos","tui.tips.theme_ansi":"Referencie cores ANSI 0-255 em temas personalizados","tui.tips.env_var":"Use a sintaxe {highlight}{env:VAR_NAME}{/highlight} para referenciar vari\xE1veis de ambiente na configura\xE7\xE3o","tui.tips.file_var":"Use {highlight}{file:path}{/highlight} para incluir conte\xFAdo de ficheiros em valores de configura\xE7\xE3o","tui.tips.instructions":"Use {highlight}instructions{/highlight} na configura\xE7\xE3o para carregar ficheiros de regras adicionais","tui.tips.temperature":"Defina a {highlight}temperature{/highlight} do agente de 0.0 (focado) a 1.0 (criativo)","tui.tips.steps":"Configure {highlight}steps{/highlight} para limitar as itera\xE7\xF5es ag\xEAnticas por pedido","tui.tips.disable_tool":'Defina {highlight}"tools": {"bash": false}{/highlight} para desativar ferramentas espec\xEDficas',"tui.tips.disable_mcp_tools":'Defina {highlight}"mcp_*": false{/highlight} para desativar todas as ferramentas de um servidor MCP',"tui.tips.tool_override":"Substitua as defini\xE7\xF5es globais de ferramentas por configura\xE7\xE3o de agente","tui.tips.doom_loop":"A permiss\xE3o {highlight}doom_loop{/highlight} previne ciclos infinitos de chamadas a ferramentas","tui.tips.external_dir":"A permiss\xE3o {highlight}external_directory{/highlight} protege ficheiros fora do projeto","tui.tips.debug_config":"Execute {highlight}qitqode debug config{/highlight} para diagnosticar problemas de configura\xE7\xE3o","tui.tips.print_logs":"Use a op\xE7\xE3o {highlight}--print-logs{/highlight} para ver registos detalhados no stderr","tui.tips.timeline":"Prima {highlight}Ctrl+X G{/highlight} ou {highlight}/timeline{/highlight} para saltar para mensagens espec\xEDficas","tui.tips.toggle_code":"Prima {highlight}Ctrl+X H{/highlight} para alternar a visibilidade dos blocos de c\xF3digo nas mensagens","tui.tips.status":"Prima {highlight}Ctrl+X S{/highlight} ou {highlight}/status{/highlight} para ver informa\xE7\xF5es de estado do sistema","tui.tips.scroll_accel":"Ative {highlight}scroll_acceleration{/highlight} em {highlight}tui.json{/highlight} para deslocamento suave no estilo macOS","tui.tips.agents_md":"Fa\xE7a commit do ficheiro {highlight}AGENTS.md{/highlight} do seu projeto no Git para partilhar com a equipa","tui.tips.review":"Use {highlight}/review{/highlight} para rever altera\xE7\xF5es n\xE3o confirmadas, branches ou PRs","tui.tips.help":"Execute {highlight}/help{/highlight} ou {highlight}Ctrl+X H{/highlight} para mostrar o di\xE1logo de ajuda","tui.tips.rename":"Use {highlight}/rename{/highlight} para renomear a sess\xE3o atual","tui.tips.suspend.unix":"Prima {highlight}Ctrl+Z{/highlight} para suspender o terminal e regressar \xE0 sua shell","tui.tips.suspend.win":"Prima {highlight}Ctrl+Z{/highlight} para desfazer altera\xE7\xF5es na sua entrada","tui.command.palette.title":"Comandos","tui.command.palette.suggested":"Sugeridos","tui.command.category.session":"Sess\xE3o","tui.command.category.agent":"Agente","tui.command.category.provider":"Fornecedor","tui.command.category.system":"Sistema","tui.command.category.prompt":"Entrada","tui.command.category.internal":"Interno","tui.command.category.external":"Externo","tui.slash.init.description":"configura\xE7\xE3o guiada de AGENTS.md","tui.slash.review.description":"rever altera\xE7\xF5es [commit|branch|pr], por defeito n\xE3o confirmadas","tui.slash.dream.description":"consolidar manualmente a mem\xF3ria do projeto a partir de ficheiros de mem\xF3ria e trajet\xF3ria bruta","tui.slash.distill.description":"encontrar fluxos repetidos no trabalho recente e empacot\xE1-los em skills, subagentes ou comandos","tui.slash.goal.description":"definir um objetivo com condi\xE7\xE3o de paragem; executa at\xE9 um juiz confirmar. /goal clear para abortar","tui.slash.deep-research.description":"relat\xF3rio de investiga\xE7\xE3o profunda multi-fonte e verificado (executa o workflow deep-research)","tui.command.language.switch.title":"Mudar idioma","tui.command.language.switch.description":"Alterar o idioma de apresenta\xE7\xE3o","tui.command.language.dialog.title":"Mudar idioma","tui.language.auto":"Auto (sistema)","tui.language.current":"Atual","tui.command.session.list.title":"Mudar sess\xE3o","tui.command.session.new.title":"Nova sess\xE3o","tui.command.workflow.list.title":"Fluxos de trabalho","tui.command.model.list.title":"Mudar modelo","tui.command.model.cycle_recent.title":"Ciclo de modelos","tui.command.model.cycle_recent_reverse.title":"Ciclo de modelos (inverso)","tui.command.model.cycle_favorite.title":"Ciclo de favoritos","tui.command.model.cycle_favorite_reverse.title":"Ciclo de favoritos (inverso)","tui.command.agent.list.title":"Mudar agente","tui.command.mcp.list.title":"Alternar MCPs","tui.command.never_ask.title_on":"Sem perguntas: ATIVO (decidir automaticamente, permiss\xF5es exclu\xEDdas) \u2014 clique para desativar","tui.command.never_ask.title_off":"Sem perguntas: INATIVO \u2014 clique para ativar (decidir automaticamente, permiss\xF5es exclu\xEDdas)","tui.command.never_ask.toast_on":"Sem perguntas ATIVO \u2014 n\xE3o lhe perguntarei; escolherei a melhor op\xE7\xE3o at\xE9 desativar (/never-ask). Os pedidos de permiss\xE3o ainda requerem a sua aprova\xE7\xE3o.","tui.command.never_ask.toast_off":"Sem perguntas INATIVO \u2014 voltarei a perguntar nos pontos de decis\xE3o.","tui.command.never_ask.title_on_fullauto":"Sem perguntas: ATIVO (decidir automaticamente; o modo full-auto tamb\xE9m aprova as permiss\xF5es) \u2014 clique para desativar","tui.command.never_ask.title_off_fullauto":"Sem perguntas: INATIVO \u2014 clique para ativar (decidir automaticamente; o modo full-auto continua a aprovar as permiss\xF5es)","tui.command.never_ask.toast_on_fullauto":"Sem perguntas ATIVO \u2014 n\xE3o lhe perguntarei; escolherei a melhor op\xE7\xE3o at\xE9 desativar (/never-ask). O modo full-auto est\xE1 ligado, por isso os pedidos de permiss\xE3o tamb\xE9m s\xE3o aprovados automaticamente.","tui.command.agent.cycle.title":"Ciclo de agentes","tui.command.variant.cycle.title":"Ciclo de variantes","tui.command.variant.list.title":"Mudar variante de modelo","tui.command.agent.cycle.reverse.title":"Ciclo de agentes (inverso)","tui.command.provider.login.title":"Iniciar sess\xE3o","tui.command.provider.logout.title":"Terminar sess\xE3o","tui.command.console.org.switch.title":"Mudar organiza\xE7\xE3o","tui.command.qitqode.status.title":"Ver estado","tui.command.worktree.list.title":"\xC1rvores de trabalho","tui.command.theme.switch.title":"Mudar tema","tui.command.theme.switch_mode.to_light":"Mudar para modo claro","tui.command.theme.switch_mode.to_dark":"Mudar para modo escuro","tui.command.theme.mode.unlock":"Desbloquear modo do tema","tui.command.theme.mode.lock":"Bloquear modo do tema","tui.command.help.show.title":"Ajuda","tui.dialog.help.close_hint":"esc/enter/space","tui.dialog.help.accessibility":"Acessibilidade: alterne anima\xE7\xF5es e som na lista de comandos. Vari\xE1veis de ambiente: NO_COLOR, QITQODE_TUI_ACCESSIBLE, QITQODE_REDUCE_MOTION, QITQODE_TUI_SOUND.","tui.dialog.help.announcements":"An\xFAncios: no modo acess\xEDvel, escolha o n\xEDvel de detalhe dos an\xFAncios para leitores de tela (silencioso, normal, detalhado) na lista de comandos ou com QITQODE_TUI_ANNOUNCEMENTS. Erros s\xE3o sempre anunciados.","tui.dialog.help.dialog_keys":"Di\xE1logos: todos os di\xE1logos funcionam apenas com o teclado \u2014 Esc fecha, Tab ou as setas movem o foco, Enter ou Espa\xE7o ativa o controle em foco.","tui.command.app.announcements.cycle":"An\xFAncios: {{level}} (selecione para alterar)","tui.announcements.level.quiet":"silencioso","tui.announcements.level.normal":"normal","tui.announcements.level.verbose":"detalhado","tui.app.terminal_too_small":"Terminal muito pequeno ({{width}}x{{height}}). Redimensione para pelo menos 40x8.","tui.dialog.help.command_list":"Prima {{keybind}} para ver todas as a\xE7\xF5es e comandos dispon\xEDveis em qualquer contexto.","tui.dialog.help.ok":"ok","tui.dialog.close_hint":"esc","tui.dialog.document.scroll_hint":"\u2191/\u2193 rolar \xB7 PgUp/PgDn p\xE1gina \xB7 esc fechar","tui.dialog.ok":"ok","tui.dialog.confirm.cancel":"Cancelar","tui.dialog.confirm.confirm":"Confirmar","tui.dialog.agreement.title":"Termos e Privacidade","tui.dialog.agreement.message":"Por favor reveja e aceite para continuar.","tui.dialog.agreement.confirm":"Aceitar e Continuar","tui.command.docs.terms.title":"Ver os termos de servi\xE7o","tui.command.docs.privacy.title":"Ver a pol\xEDtica de privacidade","tui.command.consent.revoke.title":"Revogar o acordo de modelo gratuito","tui.consent.revoked":"Acordo de modelo gratuito revogado \u2014 ser-lhe-\xE1 pedido que aceite novamente","tui.dialog.select.placeholder":"Pesquisar","tui.dialog.select.no_results":"Sem resultados","tui.dialog.prompt.placeholder":"Introduza texto","tui.dialog.prompt.busy":"A trabalhar...","tui.dialog.prompt.processing":"a processar...","tui.dialog.prompt.submit_key":"enter","tui.dialog.prompt.submit_action":"enviar","tui.dialog.export.title":"Op\xE7\xF5es de Exporta\xE7\xE3o","tui.dialog.export.filename":"Nome do ficheiro:","tui.dialog.export.filename_placeholder":"Introduza o nome do ficheiro","tui.dialog.export.include_thinking":"Incluir racioc\xEDnio","tui.dialog.export.include_tool_details":"Incluir detalhes das ferramentas","tui.dialog.export.include_assistant_metadata":"Incluir metadados do assistente","tui.dialog.export.open_without_saving":"Abrir sem guardar","tui.dialog.export.hint.toggle_prefix":"Prima","tui.dialog.export.hint.toggle_action":"para alternar","tui.dialog.export.hint.confirm_action":"para confirmar","tui.dialog.export.hint.options_action":"para op\xE7\xF5es","tui.toast.copied_to_clipboard":"Copiado para a \xE1rea de transfer\xEAncia","tui.toast.instructions_loaded":"Carregado {{files}}","tui.toast.update_available.title":"Atualiza\xE7\xE3o Dispon\xEDvel","tui.toast.update_available.confirm":"Uma nova vers\xE3o v{{version}} est\xE1 dispon\xEDvel. Deseja atualizar agora?","tui.toast.update_available.updating":"A atualizar para v{{version}}...","tui.toast.update_available.failed":"A atualiza\xE7\xE3o falhou","tui.toast.update_available.success":"Atualizado com sucesso para QitQode v{{version}}. Por favor reinicie a aplica\xE7\xE3o.","tui.toast.updated.title":"Atualizado automaticamente","tui.toast.updated.message":"Atualiza\xE7\xE3o de patch aplicada: v{{version}}. Reinicie para usar a nova vers\xE3o. Desative com autoupdate: false na configura\xE7\xE3o.","tui.sidebar.instructions":"Instru\xE7\xF5es","tui.sidebar.cwd":"Diret\xF3rio de Trabalho","tui.toast.unknown_error":"Ocorreu um erro desconhecido","tui.command.docs.open.title":"Abrir documenta\xE7\xE3o","tui.command.app.exit.title":"Sair da aplica\xE7\xE3o","tui.command.app.debug.title":"Alternar painel de depura\xE7\xE3o","tui.command.app.console.title":"Alternar consola","tui.command.app.heap_snapshot.title":"Escrever snapshot do heap","tui.command.terminal.suspend.title":"Suspender terminal","tui.command.terminal.title.disable":"Desativar t\xEDtulo do terminal","tui.command.terminal.title.enable":"Ativar t\xEDtulo do terminal","tui.command.app.toggle.animations.disable":"Desativar anima\xE7\xF5es","tui.command.app.toggle.animations.enable":"Ativar anima\xE7\xF5es","tui.command.app.toggle.diffwrap.disable":"Desativar quebra de diff","tui.command.app.toggle.diffwrap.enable":"Ativar quebra de diff","tui.command.app.toggle.sound.disable":"Desativar som","tui.command.app.toggle.sound.enable":"Ativar som","tui.command.logout.toast":"Sess\xE3o terminada","tui.command.session.share.title":"Partilhar sess\xE3o","tui.command.session.share.copy_link":"Copiar liga\xE7\xE3o de partilha","tui.command.session.rename.title":"Renomear sess\xE3o","tui.command.session.timeline.title":"Saltar para mensagem","tui.command.session.fork.title":"Bifurcar sess\xE3o","tui.command.session.compact.title":"Compactar sess\xE3o","tui.command.session.unshare.title":"Deixar de partilhar","tui.command.session.undo.title":"Desfazer mensagem anterior","tui.command.session.redo.title":"Refazer","tui.command.session.sidebar.show":"Mostrar painel lateral","tui.command.session.sidebar.hide":"Ocultar painel lateral","tui.command.session.conceal.disable":"Desativar oculta\xE7\xE3o de c\xF3digo","tui.command.session.conceal.enable":"Ativar oculta\xE7\xE3o de c\xF3digo","tui.command.session.timestamps.show":"Mostrar marcas temporais","tui.command.session.timestamps.hide":"Ocultar marcas temporais","tui.command.session.thinking.expand":"Expandir racioc\xEDnio","tui.command.session.thinking.collapse":"Recolher racioc\xEDnio","tui.command.session.tool_details.show":"Mostrar detalhes das ferramentas","tui.command.session.tool_details.hide":"Ocultar detalhes das ferramentas","tui.command.session.scrollbar.toggle":"Alternar barra de deslocamento da sess\xE3o","tui.command.session.generic_tool_output.show":"Mostrar sa\xEDda de ferramenta gen\xE9rica","tui.command.session.generic_tool_output.hide":"Ocultar sa\xEDda de ferramenta gen\xE9rica","tui.command.session.page_up.title":"P\xE1gina acima","tui.command.session.page_down.title":"P\xE1gina abaixo","tui.command.session.line_up.title":"Linha acima","tui.command.session.line_down.title":"Linha abaixo","tui.command.session.half_page_up.title":"Meia p\xE1gina acima","tui.command.session.half_page_down.title":"Meia p\xE1gina abaixo","tui.command.session.first.title":"Primeira mensagem","tui.command.session.last.title":"\xDAltima mensagem","tui.command.session.last_user.title":"Saltar para \xFAltima mensagem do utilizador","tui.command.session.message_next.title":"Mensagem seguinte","tui.command.session.message_previous.title":"Mensagem anterior","tui.command.messages.copy.title":"Copiar \xFAltima mensagem do assistente","tui.command.session.copy.title":"Copiar transcri\xE7\xE3o da sess\xE3o","tui.command.session.export.title":"Exportar transcri\xE7\xE3o da sess\xE3o","tui.command.session.child_first.title":"Ir para sess\xE3o filho","tui.command.session.parent.title":"Ir para sess\xE3o pai","tui.command.session.child_next.title":"Pr\xF3xima sess\xE3o filho","tui.command.session.child_previous.title":"Sess\xE3o filho anterior","tui.command.prompt.clear.title":"Limpar entrada","tui.command.prompt.submit.title":"Enviar prompt","tui.command.prompt.paste.title":"Colar","tui.command.session.interrupt.title":"Interromper sess\xE3o","tui.command.prompt.editor.title":"Abrir editor","tui.command.prompt.skills.title":"Skills","tui.command.voice.toggle.title":"Alternar entrada de voz","tui.command.voice.toggle.title_on":"Entrada de voz: ATIVA \u2014 clique para desativar","tui.command.voice.toggle.title_off":"Entrada de voz: INATIVA \u2014 clique para ativar","tui.command.voice.send.title":"Alternar envio por voz","tui.command.voice.send.title_on":"Envio por voz: ATIVO \u2014 clique para desativar","tui.command.voice.send.title_off":"Envio por voz: INATIVO \u2014 clique para ativar","tui.voice.enabled":"Entrada de voz ativa (Chin\xEAs/Ingl\xEAs) \u2014 clique em [Voice] para gravar","tui.voice.disabled":"Entrada de voz desativada","tui.voice.send.enabled":'Envio por voz ativo \u2014 ap\xF3s uma pausa, diga claramente "send it" para enviar',"tui.voice.send.disabled":"Envio por voz desativado","tui.voice.control.enabled":"Controlo por voz ativo \u2014 usa modelo multimodal para edi\xE7\xE3o inteligente (mais lento)","tui.voice.control.disabled":"Controlo por voz inativo \u2014 usa transcri\xE7\xE3o ASR r\xE1pida","tui.command.voice.control.title":"Alternar controlo por voz (multimodal)","tui.command.voice.control.title_on":"Controlo por voz: ATIVO (multimodal) \u2014 clique para desativar","tui.command.voice.control.title_off":"Controlo por voz: INATIVO (ASR r\xE1pido) \u2014 clique para ativar","tui.voice.error.no_auth":"Use /connect para iniciar sess\xE3o no QitQode, ou configure voice.asr_model para outro fornecedor","tui.voice.error.no_auth_provider":'O fornecedor de voz "{{provider}}" n\xE3o est\xE1 autenticado, verifique a sua apiKey',"tui.voice.error.provider_not_found":'Fornecedor "{{provider}}" n\xE3o dispon\xEDvel \u2014 /connect para autenticar, ou declare models na configura\xE7\xE3o para endpoints personalizados',"tui.voice.error.no_url":'O fornecedor "{{provider}}" n\xE3o tem baseURL configurada \u2014 defina options.baseURL na configura\xE7\xE3o do fornecedor',"tui.voice.error.no_device":"Nenhum microfone/dispositivo de \xE1udio encontrado \u2014 verifique as defini\xE7\xF5es de \xE1udio do sistema","tui.voice.error.recorder_failed":"A grava\xE7\xE3o falhou","tui.voice.error.no_recorder":"Nenhuma ferramenta de grava\xE7\xE3o encontrada, instale sox","tui.voice.error.too_short":"Grava\xE7\xE3o demasiado curta","tui.voice.error.network":"A transcri\xE7\xE3o falhou, verifique a sua rede","tui.voice.error.empty_send":"Nada para enviar","tui.voice.error.unknown_agent":'Agente "{{name}}" n\xE3o encontrado',"tui.command.prompt.stash.title":"Guardar prompt","tui.command.prompt.stash.pop.title":"Recuperar prompt","tui.command.prompt.stash.list.title":"Lista de prompts guardados","tui.command.tips.toggle.show":"Mostrar dicas","tui.command.tips.toggle.hide":"Ocultar dicas","tui.command.plugins.list.title":"Plugins","tui.command.plugins.install.title":"Instalar plugin","tui.dialog.login.title":"In\xEDcio de Sess\xE3o QitQode","cli.providers.select":"Selecionar fornecedor","cli.providers.other":"Outro fornecedor","tui.dialog.login.import_claude":"Importar do Claude Code","tui.dialog.login.other":"Outro Fornecedor","tui.dialog.login.import_claude.no_key":"Chave API do Claude Code n\xE3o encontrada","tui.dialog.login.import_claude.read_failed":"Falha ao ler ~/.claude/settings.json","tui.dialog.login.import_claude.success":"Importado do Claude Code","tui.question.plan_enter.question":"Deseja mudar para o modo plan para planeamento estruturado?","tui.question.plan_enter.header":"Entrar no plan","tui.question.plan_enter.option.0.label":"Sim","tui.question.plan_enter.option.0.description":"Mudar para o agente plan para planeamento s\xF3 de leitura","tui.question.plan_enter.option.1.label":"N\xE3o","tui.question.plan_enter.option.1.description":"Permanecer no modo atual","tui.question.plan_exit.question":"O plan em {{plan}} est\xE1 completo. Deseja mudar para o agente build e come\xE7ar a implementa\xE7\xE3o?","tui.question.plan_exit.header":"Sair do plan","tui.question.plan_exit.option.0.label":"Sim","tui.question.plan_exit.option.0.description":"Mudar para o agente build e come\xE7ar a implementa\xE7\xE3o do plan","tui.question.plan_exit.option.1.label":"N\xE3o","tui.question.plan_exit.option.1.description":"Permanecer com o agente plan para continuar a refinar","tui.session.badge.auto":"Auto","trust.title":"A aceder ao espa\xE7o de trabalho:","trust.safety_check":"Verifica\xE7\xE3o r\xE1pida de seguran\xE7a: Este \xE9 um projeto que criou ou em que confia? (Como o seu pr\xF3prio c\xF3digo, um projeto open source conhecido ou trabalho da sua equipa). Se n\xE3o, reserve um momento para rever o que est\xE1 nesta pasta.","trust.capabilities":"O QitQode poder\xE1 ler, editar e executar ficheiros aqui.","trust.plugin_warn":"Se existirem plugins maliciosos neste diret\xF3rio, podem executar c\xF3digo arbitr\xE1rio, ler, modificar ou exfiltrar os seus ficheiros.","trust.option.yes":"Sim, confio nesta pasta","trust.option.no":"N\xE3o, sair","trust.dangerous.title_home":"AVISO: Est\xE1 prestes a abrir o seu DIRET\xD3RIO PESSOAL.","trust.dangerous.title_root":"AVISO: Est\xE1 prestes a abrir a RAIZ DO SISTEMA DE FICHEIROS.","trust.dangerous.body_home":"O modelo ter\xE1 acesso a TODOS os seus ficheiros pessoais \u2014 chaves SSH, credenciais, perfis de navegador e tudo o resto sob a sua pasta pessoal.","trust.dangerous.body_root":"O modelo ter\xE1 acesso ao SISTEMA DE FICHEIROS INTEIRO \u2014 ficheiros do sistema, todos os dados de utilizador, credenciais e tudo nesta m\xE1quina.","trust.dangerous.advice_home":"A menos que tenha uma raz\xE3o muito espec\xEDfica, N\xC3O confie em todo o seu diret\xF3rio pessoal.","trust.dangerous.advice_root":"A menos que tenha uma raz\xE3o muito espec\xEDfica, N\xC3O confie na raiz do sistema de ficheiros.","trust.dangerous.option.yes":"Compreendo os riscos, confiar apenas nesta sess\xE3o","trust.dangerous.option.no":"Sair (recomendado)"};export{f as dict};
|
|
2
|
+
import"./chunk-wyj8cpx5.js";import"./chunk-r9w0thdk.js";var f={"language.en":"English","language.zh":"\u7B80\u4F53\u4E2D\u6587","language.zht":"\u7E41\u9AD4\u4E2D\u6587","language.ko":"\uD55C\uAD6D\uC5B4","language.de":"Deutsch","language.es":"Espa\xF1ol","language.fr":"Fran\xE7ais","language.da":"Dansk","language.ja":"\u65E5\u672C\u8A9E","language.pl":"Polski","language.ru":"\u0420\u0443\u0441\u0441\u043A\u0438\u0439","language.ar":"\u0627\u0644\u0639\u0631\u0628\u064A\u0629","language.no":"Norsk","language.br":"Portugu\xEAs (Brasil)","language.pt":"Portugu\xEAs","language.bs":"Bosanski","language.th":"\u0E44\u0E17\u0E22","language.tr":"T\xFCrk\xE7e","tui.prompt.placeholder.normal":"Escreva a sua mensagem... (escreva / para comandos)","tui.prompt.placeholder.shell":'Execute um comando... "{{example}}"',"tui.prompt.ghost":"{{prediction}} (Tab para aceitar)","tui.home.placeholder.example.todo":"Corrigir um TODO no c\xF3digo","tui.home.placeholder.example.stack":"Qual \xE9 a stack tecnol\xF3gica deste projeto?","tui.home.placeholder.example.tests":"Corrigir testes falhados","tui.home.agreement.prefix":"Ao usar o QitQode, concorda com os nossos ","tui.home.agreement.terms":"Termos de Servi\xE7o","tui.home.agreement.separator":" e a ","tui.home.agreement.privacy":"Pol\xEDtica de Privacidade","tui.home.agreement.suffix":"","tui.prompt.hint.attach_file":"anexar ficheiro","tui.prompt.hint.subagent":"subagente","tui.prompt.hint.commands":"comandos","tui.prompt.hint.switch_mode":"mudar modo","tui.prompt.hint.settings":"defini\xE7\xF5es","tui.tips.label":"Dica","tui.tips.plain_terminal":"Recomendamos usar o iTerm ou o terminal do VS Code","tui.tips.attach_file":"Escreva {highlight}@{/highlight} seguido do nome do ficheiro para pesquisar e anexar ficheiros","tui.tips.shell_prefix":"Inicie uma mensagem com {highlight}!{/highlight} para executar comandos de shell diretamente (ex.: {highlight}!ls -la{/highlight})","tui.tips.tab_agent":"Prima {highlight}Tab{/highlight} ou {highlight}Shift+Tab{/highlight} para alternar entre os agentes Build, Plan e Compose","tui.tips.theme_mode":"Execute {highlight}/dark{/highlight} para o modo escuro ou {highlight}/light{/highlight} para o modo claro","tui.tips.doc":"Execute {highlight}/doc{/highlight} para abrir a documenta\xE7\xE3o do utilizador","tui.tips.undo":"Use {highlight}/undo{/highlight} para reverter a \xFAltima mensagem e altera\xE7\xF5es em ficheiros","tui.tips.redo":"Use {highlight}/redo{/highlight} para restaurar mensagens e altera\xE7\xF5es desfeitas anteriormente","tui.tips.drag_drop":"Arraste e solte imagens ou PDFs no terminal para os adicionar como contexto","tui.tips.paste_image":"Prima {highlight}Ctrl+V{/highlight} para colar imagens da \xE1rea de transfer\xEAncia na entrada","tui.tips.editor":"Prima {highlight}Ctrl+X E{/highlight} ou {highlight}/editor{/highlight} para compor mensagens no seu editor externo","tui.tips.init":"Execute {highlight}/init{/highlight} para gerar automaticamente regras do projeto a partir do seu c\xF3digo","tui.tips.models":"Execute {highlight}/models{/highlight} ou {highlight}Ctrl+X M{/highlight} para alternar entre os modelos dispon\xEDveis","tui.tips.theme":'Trave o modo de tema contra o fundo do seu terminal \u2014 abra a paleta de comandos ({highlight}Ctrl+P{/highlight}) e busque "lock"',"tui.tips.new_session":"Prima {highlight}Ctrl+X N{/highlight} ou {highlight}/new{/highlight} para iniciar uma nova sess\xE3o","tui.tips.sessions":"Use {highlight}/sessions{/highlight} ou {highlight}Ctrl+X L{/highlight} para listar e continuar conversas anteriores","tui.tips.compact":"Execute {highlight}/compact{/highlight} para resumir sess\xF5es longas pr\xF3ximas dos limites de contexto","tui.tips.export":"Prima {highlight}Ctrl+X X{/highlight} ou {highlight}/export{/highlight} para guardar a conversa como Markdown","tui.tips.copy_last":"Prima {highlight}Ctrl+X Y{/highlight} para copiar a \xFAltima mensagem do assistente para a \xE1rea de transfer\xEAncia","tui.tips.command_palette":"Prima {highlight}Ctrl+P{/highlight} para ver todas as a\xE7\xF5es e comandos dispon\xEDveis","tui.tips.leader":"A tecla l\xEDder \xE9 {highlight}Ctrl+X{/highlight}; combine-a com outras teclas para a\xE7\xF5es r\xE1pidas","tui.tips.f2":"Prima {highlight}F2{/highlight} para alternar rapidamente entre os modelos usados recentemente","tui.tips.sidebar":"Prima {highlight}Ctrl+X B{/highlight} para mostrar/ocultar o painel lateral","tui.tips.history":"Use {highlight}PageUp{/highlight}/{highlight}PageDown{/highlight} para navegar no hist\xF3rico da conversa","tui.tips.jump_first":"Prima {highlight}Ctrl+G{/highlight} ou {highlight}Home{/highlight} para ir ao in\xEDcio da conversa","tui.tips.jump_last":"Prima {highlight}Ctrl+Alt+G{/highlight} ou {highlight}End{/highlight} para ir \xE0 mensagem mais recente","tui.tips.newline":"Prima {highlight}Shift+Enter{/highlight} ou {highlight}Ctrl+J{/highlight} para adicionar novas linhas na entrada","tui.tips.clear_input":"Prima {highlight}Ctrl+C{/highlight} ao escrever para limpar o campo de entrada","tui.tips.escape":"Prima {highlight}Escape{/highlight} para parar a resposta da IA a meio","tui.tips.plan_agent":"Mude para o agente {highlight}Plan{/highlight} para obter sugest\xF5es sem efetuar altera\xE7\xF5es reais","tui.tips.subagent":"Use {highlight}@agent-name{/highlight} nas entradas para invocar subagentes especializados","tui.tips.cycle_sessions":"Prima {highlight}Ctrl+X Right/Left{/highlight} para alternar entre sess\xF5es pai e filho","tui.tips.config_files":"Crie {highlight}qitqode.json{/highlight} para defini\xE7\xF5es do servidor e {highlight}tui.json{/highlight} para a TUI","tui.tips.global_config":"Coloque as defini\xE7\xF5es da TUI em {highlight}~/.config/qitqode/tui.json{/highlight} para configura\xE7\xE3o global","tui.tips.schema":"Adicione {highlight}$schema{/highlight} \xE0 sua configura\xE7\xE3o para autocompletar no editor","tui.tips.default_model":"Configure {highlight}model{/highlight} na configura\xE7\xE3o para definir o seu modelo predefinido","tui.tips.keybinds":"Substitua qualquer atalho em {highlight}tui.json{/highlight} atrav\xE9s da sec\xE7\xE3o {highlight}keybinds{/highlight}","tui.tips.disable_keybind":"Defina qualquer atalho como {highlight}none{/highlight} para o desativar completamente","tui.tips.mcp_config":"Configure servidores MCP locais ou remotos na sec\xE7\xE3o de configura\xE7\xE3o {highlight}mcp{/highlight}","tui.tips.mcp_oauth":"O QitQode gere automaticamente o OAuth para servidores MCP remotos que requerem autentica\xE7\xE3o","tui.tips.custom_command":"Adicione ficheiros {highlight}.md{/highlight} a {highlight}.qitqode/command/{/highlight} para definir prompts personalizados reutiliz\xE1veis","tui.tips.command_args":"Use {highlight}$ARGUMENTS{/highlight}, {highlight}$1{/highlight}, {highlight}$2{/highlight} em comandos personalizados para entrada din\xE2mica","tui.tips.command_backticks":"Use acentos graves em comandos para injetar sa\xEDda de shell (ex.: {highlight}`git status`{/highlight})","tui.tips.custom_agent":"Adicione ficheiros {highlight}.md{/highlight} a {highlight}.qitqode/agent/{/highlight} para personas de IA especializadas","tui.tips.agent_perms":"Configure permiss\xF5es por agente para as ferramentas {highlight}edit{/highlight}, {highlight}bash{/highlight} e {highlight}webfetch{/highlight}","tui.tips.bash_allow":'Use padr\xF5es como {highlight}"git *": "allow"{/highlight} para permiss\xF5es de bash mais granulares',"tui.tips.bash_deny":'Defina {highlight}"rm -rf *": "deny"{/highlight} para bloquear comandos destrutivos',"tui.tips.bash_ask":'Configure {highlight}"git push": "ask"{/highlight} para exigir aprova\xE7\xE3o antes de fazer push',"tui.tips.formatter":"O QitQode formata ficheiros automaticamente com prettier, gofmt, ruff e mais","tui.tips.disable_formatter":'Defina {highlight}"formatter": false{/highlight} na configura\xE7\xE3o para desativar toda a formata\xE7\xE3o autom\xE1tica',"tui.tips.custom_formatter":"Defina comandos de formata\xE7\xE3o personalizados com extens\xF5es de ficheiro na configura\xE7\xE3o","tui.tips.lsp":"O QitQode usa servidores LSP para an\xE1lise de c\xF3digo inteligente","tui.tips.custom_tool":"Crie ficheiros {highlight}.ts{/highlight} em {highlight}.qitqode/tools/{/highlight} para definir novas ferramentas LLM","tui.tips.tool_scripts":"As defini\xE7\xF5es de ferramentas podem invocar scripts escritos em Python, Go, etc.","tui.tips.plugins":"Adicione ficheiros {highlight}.ts{/highlight} a {highlight}.qitqode/plugin/{/highlight} para ganchos de eventos","tui.tips.plugin_notify":"Use plugins para enviar notifica\xE7\xF5es do sistema operativo quando as sess\xF5es terminam","tui.tips.plugin_protect":"Crie um plugin para impedir que o QitQode leia ficheiros sens\xEDveis","tui.tips.run":"Use {highlight}qitqode run{/highlight} para scripting n\xE3o interativo","tui.tips.continue":"Use {highlight}qitqode --continue{/highlight} para retomar a \xFAltima sess\xE3o","tui.tips.attach_cli":"Use {highlight}qitqode run -f file.ts{/highlight} para anexar ficheiros via CLI","tui.tips.format_json":"Use {highlight}--format json{/highlight} para sa\xEDda leg\xEDvel por m\xE1quina em scripts","tui.tips.auth_list":"Execute {highlight}qitqode auth status{/highlight} para ver seu status de login atual","tui.tips.agent_create":"Execute {highlight}qitqode agent create{/highlight} para cria\xE7\xE3o guiada de agentes","tui.tips.theme_system":'Use {highlight}"theme": "system"{/highlight} para corresponder \xE0s cores do seu terminal',"tui.tips.theme_files":"Crie ficheiros de tema JSON no diret\xF3rio {highlight}.qitqode/themes/{/highlight}","tui.tips.theme_variants":"Os temas suportam variantes escura/clara para ambos os modos","tui.tips.theme_ansi":"Referencie cores ANSI 0-255 em temas personalizados","tui.tips.env_var":"Use a sintaxe {highlight}{env:VAR_NAME}{/highlight} para referenciar vari\xE1veis de ambiente na configura\xE7\xE3o","tui.tips.file_var":"Use {highlight}{file:path}{/highlight} para incluir conte\xFAdo de ficheiros em valores de configura\xE7\xE3o","tui.tips.instructions":"Use {highlight}instructions{/highlight} na configura\xE7\xE3o para carregar ficheiros de regras adicionais","tui.tips.temperature":"Defina a {highlight}temperature{/highlight} do agente de 0.0 (focado) a 1.0 (criativo)","tui.tips.steps":"Configure {highlight}steps{/highlight} para limitar as itera\xE7\xF5es ag\xEAnticas por pedido","tui.tips.disable_tool":'Defina {highlight}"tools": {"bash": false}{/highlight} para desativar ferramentas espec\xEDficas',"tui.tips.disable_mcp_tools":'Defina {highlight}"mcp_*": false{/highlight} para desativar todas as ferramentas de um servidor MCP',"tui.tips.tool_override":"Substitua as defini\xE7\xF5es globais de ferramentas por configura\xE7\xE3o de agente","tui.tips.doom_loop":"A permiss\xE3o {highlight}doom_loop{/highlight} previne ciclos infinitos de chamadas a ferramentas","tui.tips.external_dir":"A permiss\xE3o {highlight}external_directory{/highlight} protege ficheiros fora do projeto","tui.tips.debug_config":"Execute {highlight}qitqode debug config{/highlight} para diagnosticar problemas de configura\xE7\xE3o","tui.tips.print_logs":"Use a op\xE7\xE3o {highlight}--print-logs{/highlight} para ver registos detalhados no stderr","tui.tips.timeline":"Prima {highlight}Ctrl+X G{/highlight} ou {highlight}/timeline{/highlight} para saltar para mensagens espec\xEDficas","tui.tips.toggle_code":"Prima {highlight}Ctrl+X H{/highlight} para alternar a visibilidade dos blocos de c\xF3digo nas mensagens","tui.tips.status":"Prima {highlight}Ctrl+X S{/highlight} ou {highlight}/status{/highlight} para ver informa\xE7\xF5es de estado do sistema","tui.tips.scroll_accel":"Ative {highlight}scroll_acceleration{/highlight} em {highlight}tui.json{/highlight} para deslocamento suave no estilo macOS","tui.tips.agents_md":"Fa\xE7a commit do ficheiro {highlight}AGENTS.md{/highlight} do seu projeto no Git para partilhar com a equipa","tui.tips.review":"Use {highlight}/review{/highlight} para rever altera\xE7\xF5es n\xE3o confirmadas, branches ou PRs","tui.tips.help":"Execute {highlight}/help{/highlight} ou {highlight}Ctrl+X H{/highlight} para mostrar o di\xE1logo de ajuda","tui.tips.rename":"Use {highlight}/rename{/highlight} para renomear a sess\xE3o atual","tui.tips.suspend.unix":"Prima {highlight}Ctrl+Z{/highlight} para suspender o terminal e regressar \xE0 sua shell","tui.tips.suspend.win":"Prima {highlight}Ctrl+Z{/highlight} para desfazer altera\xE7\xF5es na sua entrada","tui.command.palette.title":"Comandos","tui.command.palette.suggested":"Sugeridos","tui.command.category.session":"Sess\xE3o","tui.command.category.agent":"Agente","tui.command.category.provider":"Fornecedor","tui.command.category.system":"Sistema","tui.command.category.prompt":"Entrada","tui.command.category.internal":"Interno","tui.command.category.external":"Externo","tui.slash.init.description":"configura\xE7\xE3o guiada de AGENTS.md","tui.slash.review.description":"rever altera\xE7\xF5es [commit|branch|pr], por defeito n\xE3o confirmadas","tui.slash.dream.description":"consolidar manualmente a mem\xF3ria do projeto a partir de ficheiros de mem\xF3ria e trajet\xF3ria bruta","tui.slash.distill.description":"encontrar fluxos repetidos no trabalho recente e empacot\xE1-los em skills, subagentes ou comandos","tui.slash.goal.description":"definir um objetivo com condi\xE7\xE3o de paragem; executa at\xE9 um juiz confirmar. /goal clear para abortar","tui.slash.deep-research.description":"relat\xF3rio de investiga\xE7\xE3o profunda multi-fonte e verificado (executa o workflow deep-research)","tui.command.language.switch.title":"Mudar idioma","tui.command.language.switch.description":"Alterar o idioma de apresenta\xE7\xE3o","tui.command.language.dialog.title":"Mudar idioma","tui.language.auto":"Auto (sistema)","tui.language.current":"Atual","tui.command.session.list.title":"Mudar sess\xE3o","tui.command.session.new.title":"Nova sess\xE3o","tui.command.workflow.list.title":"Fluxos de trabalho","tui.command.model.list.title":"Mudar modelo","tui.command.model.cycle_recent.title":"Ciclo de modelos","tui.command.model.cycle_recent_reverse.title":"Ciclo de modelos (inverso)","tui.command.model.cycle_favorite.title":"Ciclo de favoritos","tui.command.model.cycle_favorite_reverse.title":"Ciclo de favoritos (inverso)","tui.command.agent.list.title":"Mudar agente","tui.command.mcp.list.title":"Alternar MCPs","tui.command.never_ask.title_on":"Sem perguntas: ATIVO (decidir automaticamente, permiss\xF5es exclu\xEDdas) \u2014 clique para desativar","tui.command.never_ask.title_off":"Sem perguntas: INATIVO \u2014 clique para ativar (decidir automaticamente, permiss\xF5es exclu\xEDdas)","tui.command.never_ask.toast_on":"Sem perguntas ATIVO \u2014 n\xE3o lhe perguntarei; escolherei a melhor op\xE7\xE3o at\xE9 desativar (/never-ask). Os pedidos de permiss\xE3o ainda requerem a sua aprova\xE7\xE3o.","tui.command.never_ask.toast_off":"Sem perguntas INATIVO \u2014 voltarei a perguntar nos pontos de decis\xE3o.","tui.command.never_ask.title_on_fullauto":"Sem perguntas: ATIVO (decidir automaticamente; o modo full-auto tamb\xE9m aprova as permiss\xF5es) \u2014 clique para desativar","tui.command.never_ask.title_off_fullauto":"Sem perguntas: INATIVO \u2014 clique para ativar (decidir automaticamente; o modo full-auto continua a aprovar as permiss\xF5es)","tui.command.never_ask.toast_on_fullauto":"Sem perguntas ATIVO \u2014 n\xE3o lhe perguntarei; escolherei a melhor op\xE7\xE3o at\xE9 desativar (/never-ask). O modo full-auto est\xE1 ligado, por isso os pedidos de permiss\xE3o tamb\xE9m s\xE3o aprovados automaticamente.","tui.command.agent.cycle.title":"Ciclo de agentes","tui.command.variant.cycle.title":"Ciclo de variantes","tui.command.variant.list.title":"Mudar variante de modelo","tui.command.agent.cycle.reverse.title":"Ciclo de agentes (inverso)","tui.command.provider.login.title":"Iniciar sess\xE3o","tui.command.provider.logout.title":"Terminar sess\xE3o","tui.command.console.org.switch.title":"Mudar organiza\xE7\xE3o","tui.command.qitqode.status.title":"Ver estado","tui.command.worktree.list.title":"\xC1rvores de trabalho","tui.command.theme.switch.title":"Mudar tema","tui.command.theme.switch_mode.to_light":"Mudar para modo claro","tui.command.theme.switch_mode.to_dark":"Mudar para modo escuro","tui.command.theme.mode.unlock":"Desbloquear modo do tema","tui.command.theme.mode.lock":"Bloquear modo do tema","tui.command.help.show.title":"Ajuda","tui.dialog.help.close_hint":"esc/enter/space","tui.dialog.help.accessibility":"Acessibilidade: alterne anima\xE7\xF5es e som na lista de comandos. Vari\xE1veis de ambiente: NO_COLOR, QITQODE_TUI_ACCESSIBLE, QITQODE_REDUCE_MOTION, QITQODE_TUI_SOUND.","tui.dialog.help.announcements":"An\xFAncios: no modo acess\xEDvel, escolha o n\xEDvel de detalhe dos an\xFAncios para leitores de tela (silencioso, normal, detalhado) na lista de comandos ou com QITQODE_TUI_ANNOUNCEMENTS. Erros s\xE3o sempre anunciados.","tui.dialog.help.dialog_keys":"Di\xE1logos: todos os di\xE1logos funcionam apenas com o teclado \u2014 Esc fecha, Tab ou as setas movem o foco, Enter ou Espa\xE7o ativa o controle em foco.","tui.command.app.announcements.cycle":"An\xFAncios: {{level}} (selecione para alterar)","tui.announcements.level.quiet":"silencioso","tui.announcements.level.normal":"normal","tui.announcements.level.verbose":"detalhado","tui.app.terminal_too_small":"Terminal muito pequeno ({{width}}x{{height}}). Redimensione para pelo menos 40x8.","tui.dialog.help.command_list":"Prima {{keybind}} para ver todas as a\xE7\xF5es e comandos dispon\xEDveis em qualquer contexto.","tui.dialog.help.ok":"ok","tui.dialog.close_hint":"esc","tui.dialog.document.scroll_hint":"\u2191/\u2193 rolar \xB7 PgUp/PgDn p\xE1gina \xB7 esc fechar","tui.dialog.ok":"ok","tui.dialog.confirm.cancel":"Cancelar","tui.dialog.confirm.confirm":"Confirmar","tui.dialog.agreement.title":"Termos e Privacidade","tui.dialog.agreement.message":"Por favor reveja e aceite para continuar.","tui.dialog.agreement.confirm":"Aceitar e Continuar","tui.command.docs.terms.title":"Ver os termos de servi\xE7o","tui.command.docs.privacy.title":"Ver a pol\xEDtica de privacidade","tui.command.consent.revoke.title":"Revogar o acordo de modelo gratuito","tui.consent.revoked":"Acordo de modelo gratuito revogado \u2014 ser-lhe-\xE1 pedido que aceite novamente","tui.dialog.select.placeholder":"Pesquisar","tui.dialog.select.no_results":"Sem resultados","tui.dialog.prompt.placeholder":"Introduza texto","tui.dialog.prompt.busy":"A trabalhar...","tui.dialog.prompt.processing":"a processar...","tui.dialog.prompt.submit_key":"enter","tui.dialog.prompt.submit_action":"enviar","tui.dialog.export.title":"Op\xE7\xF5es de Exporta\xE7\xE3o","tui.dialog.export.filename":"Nome do ficheiro:","tui.dialog.export.filename_placeholder":"Introduza o nome do ficheiro","tui.dialog.export.include_thinking":"Incluir racioc\xEDnio","tui.dialog.export.include_tool_details":"Incluir detalhes das ferramentas","tui.dialog.export.include_assistant_metadata":"Incluir metadados do assistente","tui.dialog.export.open_without_saving":"Abrir sem guardar","tui.dialog.export.hint.toggle_prefix":"Prima","tui.dialog.export.hint.toggle_action":"para alternar","tui.dialog.export.hint.confirm_action":"para confirmar","tui.dialog.export.hint.options_action":"para op\xE7\xF5es","tui.toast.copied_to_clipboard":"Copiado para a \xE1rea de transfer\xEAncia","tui.toast.instructions_loaded":"Carregado {{files}}","tui.toast.update_available.title":"Atualiza\xE7\xE3o Dispon\xEDvel","tui.toast.update_available.confirm":"Uma nova vers\xE3o v{{version}} est\xE1 dispon\xEDvel. Deseja atualizar agora?","tui.toast.update_available.updating":"A atualizar para v{{version}}...","tui.toast.update_available.failed":"A atualiza\xE7\xE3o falhou","tui.toast.update_available.success":"Atualizado com sucesso para QitQode v{{version}}. Por favor reinicie a aplica\xE7\xE3o.","tui.toast.updated.title":"Atualizado automaticamente","tui.toast.updated.message":"Atualiza\xE7\xE3o de patch aplicada: v{{version}}. Reinicie para usar a nova vers\xE3o. Desative com autoupdate: false na configura\xE7\xE3o.","tui.sidebar.instructions":"Instru\xE7\xF5es","tui.sidebar.cwd":"Diret\xF3rio de Trabalho","tui.toast.unknown_error":"Ocorreu um erro desconhecido","tui.command.docs.open.title":"Abrir documenta\xE7\xE3o","tui.command.app.exit.title":"Sair da aplica\xE7\xE3o","tui.command.app.debug.title":"Alternar painel de depura\xE7\xE3o","tui.command.app.console.title":"Alternar consola","tui.command.app.heap_snapshot.title":"Escrever snapshot do heap","tui.command.terminal.suspend.title":"Suspender terminal","tui.command.terminal.title.disable":"Desativar t\xEDtulo do terminal","tui.command.terminal.title.enable":"Ativar t\xEDtulo do terminal","tui.command.app.toggle.animations.disable":"Desativar anima\xE7\xF5es","tui.command.app.toggle.animations.enable":"Ativar anima\xE7\xF5es","tui.command.app.toggle.diffwrap.disable":"Desativar quebra de diff","tui.command.app.toggle.diffwrap.enable":"Ativar quebra de diff","tui.command.app.toggle.sound.disable":"Desativar som","tui.command.app.toggle.sound.enable":"Ativar som","tui.command.logout.toast":"Sess\xE3o terminada","tui.command.session.share.title":"Partilhar sess\xE3o","tui.command.session.share.copy_link":"Copiar liga\xE7\xE3o de partilha","tui.command.session.rename.title":"Renomear sess\xE3o","tui.command.session.timeline.title":"Saltar para mensagem","tui.command.session.fork.title":"Bifurcar sess\xE3o","tui.command.session.compact.title":"Compactar sess\xE3o","tui.command.session.unshare.title":"Deixar de partilhar","tui.command.session.undo.title":"Desfazer mensagem anterior","tui.command.session.redo.title":"Refazer","tui.command.session.sidebar.show":"Mostrar painel lateral","tui.command.session.sidebar.hide":"Ocultar painel lateral","tui.command.session.conceal.disable":"Desativar oculta\xE7\xE3o de c\xF3digo","tui.command.session.conceal.enable":"Ativar oculta\xE7\xE3o de c\xF3digo","tui.command.session.timestamps.show":"Mostrar marcas temporais","tui.command.session.timestamps.hide":"Ocultar marcas temporais","tui.command.session.thinking.expand":"Expandir racioc\xEDnio","tui.command.session.thinking.collapse":"Recolher racioc\xEDnio","tui.command.session.tool_details.show":"Mostrar detalhes das ferramentas","tui.command.session.tool_details.hide":"Ocultar detalhes das ferramentas","tui.command.session.scrollbar.toggle":"Alternar barra de deslocamento da sess\xE3o","tui.command.session.generic_tool_output.show":"Mostrar sa\xEDda de ferramenta gen\xE9rica","tui.command.session.generic_tool_output.hide":"Ocultar sa\xEDda de ferramenta gen\xE9rica","tui.command.session.page_up.title":"P\xE1gina acima","tui.command.session.page_down.title":"P\xE1gina abaixo","tui.command.session.line_up.title":"Linha acima","tui.command.session.line_down.title":"Linha abaixo","tui.command.session.half_page_up.title":"Meia p\xE1gina acima","tui.command.session.half_page_down.title":"Meia p\xE1gina abaixo","tui.command.session.first.title":"Primeira mensagem","tui.command.session.last.title":"\xDAltima mensagem","tui.command.session.last_user.title":"Saltar para \xFAltima mensagem do utilizador","tui.command.session.message_next.title":"Mensagem seguinte","tui.command.session.message_previous.title":"Mensagem anterior","tui.command.messages.copy.title":"Copiar \xFAltima mensagem do assistente","tui.command.session.copy.title":"Copiar transcri\xE7\xE3o da sess\xE3o","tui.command.session.export.title":"Exportar transcri\xE7\xE3o da sess\xE3o","tui.command.session.child_first.title":"Ir para sess\xE3o filho","tui.command.session.parent.title":"Ir para sess\xE3o pai","tui.command.session.child_next.title":"Pr\xF3xima sess\xE3o filho","tui.command.session.child_previous.title":"Sess\xE3o filho anterior","tui.command.prompt.clear.title":"Limpar entrada","tui.command.prompt.submit.title":"Enviar prompt","tui.command.prompt.paste.title":"Colar","tui.command.session.interrupt.title":"Interromper sess\xE3o","tui.command.prompt.editor.title":"Abrir editor","tui.command.prompt.skills.title":"Skills","tui.command.voice.toggle.title":"Alternar entrada de voz","tui.command.voice.toggle.title_on":"Entrada de voz: ATIVA \u2014 clique para desativar","tui.command.voice.toggle.title_off":"Entrada de voz: INATIVA \u2014 clique para ativar","tui.command.voice.send.title":"Alternar envio por voz","tui.command.voice.send.title_on":"Envio por voz: ATIVO \u2014 clique para desativar","tui.command.voice.send.title_off":"Envio por voz: INATIVO \u2014 clique para ativar","tui.voice.enabled":"Entrada de voz ativa (Chin\xEAs/Ingl\xEAs) \u2014 clique em [Voice] para gravar","tui.voice.disabled":"Entrada de voz desativada","tui.voice.send.enabled":'Envio por voz ativo \u2014 ap\xF3s uma pausa, diga claramente "send it" para enviar',"tui.voice.send.disabled":"Envio por voz desativado","tui.voice.control.enabled":"Controlo por voz ativo \u2014 usa modelo multimodal para edi\xE7\xE3o inteligente (mais lento)","tui.voice.control.disabled":"Controlo por voz inativo \u2014 usa transcri\xE7\xE3o ASR r\xE1pida","tui.command.voice.control.title":"Alternar controlo por voz (multimodal)","tui.command.voice.control.title_on":"Controlo por voz: ATIVO (multimodal) \u2014 clique para desativar","tui.command.voice.control.title_off":"Controlo por voz: INATIVO (ASR r\xE1pido) \u2014 clique para ativar","tui.voice.error.no_auth":"Use /connect para iniciar sess\xE3o no QitQode, ou configure voice.asr_model para outro fornecedor","tui.voice.error.no_auth_provider":'O fornecedor de voz "{{provider}}" n\xE3o est\xE1 autenticado, verifique a sua apiKey',"tui.voice.error.provider_not_found":'Fornecedor "{{provider}}" n\xE3o dispon\xEDvel \u2014 /connect para autenticar, ou declare models na configura\xE7\xE3o para endpoints personalizados',"tui.voice.error.no_url":'O fornecedor "{{provider}}" n\xE3o tem baseURL configurada \u2014 defina options.baseURL na configura\xE7\xE3o do fornecedor',"tui.voice.error.no_device":"Nenhum microfone/dispositivo de \xE1udio encontrado \u2014 verifique as defini\xE7\xF5es de \xE1udio do sistema","tui.voice.error.recorder_failed":"A grava\xE7\xE3o falhou","tui.voice.error.no_recorder":"Nenhuma ferramenta de grava\xE7\xE3o encontrada, instale sox","tui.voice.error.too_short":"Grava\xE7\xE3o demasiado curta","tui.voice.error.network":"A transcri\xE7\xE3o falhou, verifique a sua rede","tui.voice.error.empty_send":"Nada para enviar","tui.voice.error.unknown_agent":'Agente "{{name}}" n\xE3o encontrado',"tui.command.prompt.stash.title":"Guardar prompt","tui.command.prompt.stash.pop.title":"Recuperar prompt","tui.command.prompt.stash.list.title":"Lista de prompts guardados","tui.command.tips.toggle.show":"Mostrar dicas","tui.command.tips.toggle.hide":"Ocultar dicas","tui.command.plugins.list.title":"Plugins","tui.command.plugins.install.title":"Instalar plugin","tui.dialog.login.title":"In\xEDcio de Sess\xE3o QitQode","cli.providers.select":"Selecionar fornecedor","cli.providers.other":"Outro fornecedor","tui.dialog.login.import_claude":"Importar do Claude Code","tui.dialog.login.other":"Outro Fornecedor","tui.dialog.login.import_claude.no_key":"Chave API do Claude Code n\xE3o encontrada","tui.dialog.login.import_claude.read_failed":"Falha ao ler ~/.claude/settings.json","tui.dialog.login.import_claude.success":"Importado do Claude Code","tui.question.plan_enter.question":"Deseja mudar para o modo plan para planeamento estruturado?","tui.question.plan_enter.header":"Entrar no plan","tui.question.plan_enter.option.0.label":"Sim","tui.question.plan_enter.option.0.description":"Mudar para o agente plan para planeamento s\xF3 de leitura","tui.question.plan_enter.option.1.label":"N\xE3o","tui.question.plan_enter.option.1.description":"Permanecer no modo atual","tui.question.plan_exit.question":"O plan em {{plan}} est\xE1 completo. Deseja mudar para o agente build e come\xE7ar a implementa\xE7\xE3o?","tui.question.plan_exit.header":"Sair do plan","tui.question.plan_exit.option.0.label":"Sim","tui.question.plan_exit.option.0.description":"Mudar para o agente build e come\xE7ar a implementa\xE7\xE3o do plan","tui.question.plan_exit.option.1.label":"N\xE3o","tui.question.plan_exit.option.1.description":"Permanecer com o agente plan para continuar a refinar","tui.session.badge.auto":"Auto","trust.title":"A aceder ao espa\xE7o de trabalho:","trust.safety_check":"Verifica\xE7\xE3o r\xE1pida de seguran\xE7a: Este \xE9 um projeto que criou ou em que confia? (Como o seu pr\xF3prio c\xF3digo, um projeto open source conhecido ou trabalho da sua equipa). Se n\xE3o, reserve um momento para rever o que est\xE1 nesta pasta.","trust.capabilities":"O QitQode poder\xE1 ler, editar e executar ficheiros aqui.","trust.plugin_warn":"Se existirem plugins maliciosos neste diret\xF3rio, podem executar c\xF3digo arbitr\xE1rio, ler, modificar ou exfiltrar os seus ficheiros.","trust.option.yes":"Sim, confio nesta pasta","trust.option.no":"N\xE3o, sair","trust.dangerous.title_home":"AVISO: Est\xE1 prestes a abrir o seu DIRET\xD3RIO PESSOAL.","trust.dangerous.title_root":"AVISO: Est\xE1 prestes a abrir a RAIZ DO SISTEMA DE FICHEIROS.","trust.dangerous.body_home":"O modelo ter\xE1 acesso a TODOS os seus ficheiros pessoais \u2014 chaves SSH, credenciais, perfis de navegador e tudo o resto sob a sua pasta pessoal.","trust.dangerous.body_root":"O modelo ter\xE1 acesso ao SISTEMA DE FICHEIROS INTEIRO \u2014 ficheiros do sistema, todos os dados de utilizador, credenciais e tudo nesta m\xE1quina.","trust.dangerous.advice_home":"A menos que tenha uma raz\xE3o muito espec\xEDfica, N\xC3O confie em todo o seu diret\xF3rio pessoal.","trust.dangerous.advice_root":"A menos que tenha uma raz\xE3o muito espec\xEDfica, N\xC3O confie na raiz do sistema de ficheiros.","trust.dangerous.option.yes":"Compreendo os riscos, confiar apenas nesta sess\xE3o","trust.dangerous.option.no":"Sair (recomendado)"};export{f as dict};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{Oe as F}from"./chunk-t0761rhq.js";import{_e as B,bf as D,sf as E}from"./chunk-7mppvhv9.js";import{Sp as w}from"./chunk-ptqk1j2r.js";import"./chunk-cqtkxwd8.js";import"./chunk-pr7z5dj8.js";import"./chunk-j9h1sp4g.js";import"./chunk-p6crzjtf.js";import"./chunk-r9w0thdk.js";var P="2.0.39";function Q(q={}){var x;let G=E((x=q.baseURL)!=null?x:"https://api.v0.dev/v1"),J=()=>B({Authorization:`Bearer ${D({apiKey:q.apiKey,environmentVariableName:"VERCEL_API_KEY",description:"Vercel"})}`,...q.headers},`ai-sdk/vercel/${P}`),K=(j)=>({provider:`vercel.${j}`,url:({path:N})=>`${G}${N}`,headers:J,fetch:q.fetch}),z=(j)=>{return new F(j,{...K("chat")})},k=(j)=>z(j);return k.specificationVersion="v3",k.languageModel=z,k.embeddingModel=(j)=>{throw new w({modelId:j,modelType:"embeddingModel"})},k.textEmbeddingModel=k.embeddingModel,k.imageModel=(j)=>{throw new w({modelId:j,modelType:"imageModel"})},k}var X=Q();export{X as vercel,Q as createVercel,P as VERSION};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{jn as D,kn as m,nn as R,on as X,sn as v,un as x,vn as S}from"./chunk-bvf2dcq4.js";import{Kn as A,On as L}from"./chunk-vcygx6hs.js";import{Es as U}from"./chunk-r5zy4za0.js";import{at as P,ft as F}from"./chunk-at22twxx.js";import{SD as s,TN as B,eH as k}from"./chunk-qnvsqnz5.js";import{uO as E}from"./chunk-r9w0thdk.js";var V={};E(V,{schema:()=>c,jsonc:()=>g,ConfigParse:()=>V});function g($,T){let J=[],j=D($,J,{allowTrailingComma:!0});if(J.length){let C=$.split(`
|
|
3
3
|
`),y=J.map((H)=>{let I=$.substring(0,H.offset).split(`
|
|
4
4
|
`),Q=I.length,Z=I[I.length-1].length+1,K=C[Q-1],z=`${m(H.error)} at line ${Q}, column ${Z}`;if(!K)return z;return`${z}
|
|
5
5
|
Line ${Q}: ${K}
|
|
@@ -11,4 +11,4 @@ ${$}
|
|
|
11
11
|
${y}
|
|
12
12
|
--- End ---`})}return j}function c($,T,J){let j=$.safeParse(T);if(j.success)return j.data;throw new X({path:J,issues:j.error.issues})}var Y={};E(Y,{substitute:()=>u,ConfigVariable:()=>Y});import G from"path";import h from"os";function a($){return $.type==="path"?$.path:$.source}function n($){return $.type==="path"?G.dirname($.path):$.dir}async function u($){let T=$.missing??"error",J=$.text.replace(/\{env:([^}]+)\}/g,(Q,Z)=>{return process.env[Z]||""}),j=Array.from(J.matchAll(/\{file:[^}]+\}/g));if(!j.length)return J;let C=n($),y=a($),H="",I=0;for(let Q of j){let Z=Q[0],K=Q.index;H+=J.slice(I,K);let z=J.lastIndexOf(`
|
|
13
13
|
`,K-1)+1;if(J.slice(z,K).trimStart().startsWith("//")){H+=Z,I=K+Z.length;continue}let W=Z.replace(/^\{file:/,"").replace(/\}$/,"");if(W.startsWith("~/"))W=G.join(h.homedir(),W.slice(2));let N=G.isAbsolute(W)?W:G.resolve(C,W),d=(await F.readText(N).catch((O)=>{if(T==="empty")return"";let r=`bad file reference: "${Z}"`;if(O.code==="ENOENT")throw new X({path:y,message:r+` ${N} does not exist`},{cause:O});throw new X({path:y,message:r},{cause:O})})).trim();H+=JSON.stringify(d).slice(1,-1),I=K+Z.length}return H+=J.slice(I),H}var w={};E(w,{resolvePluginSpec:()=>e,pluginSpecifier:()=>b,pluginOptions:()=>t,load:()=>p,deduplicatePluginOrigins:()=>i,Spec:()=>l,Options:()=>o,ConfigPlugin:()=>w});import{pathToFileURL as q}from"url";import _ from"path";var o=B.Record(B.String,B.Unknown).pipe(A(($)=>({zod:L($)}))),l=B.Union([B.String,B.mutable(B.Tuple([B.String,o]))]).pipe(A(($)=>({zod:L($)})));async function p($){let T=[];for(let J of await P.scan("{plugin,plugins}/*.{ts,js}",{cwd:$,absolute:!0,dot:!0,symlink:!0}))T.push(q(J).href);return T}function b($){return Array.isArray($)?$[0]:$}function t($){return Array.isArray($)?$[1]:void 0}async function e($,T){let J=b($);if(!x(J))return $;let j=_.dirname(T),C=(()=>{if(J.startsWith("file://"))return J;if(_.isAbsolute(J)||/^[A-Za-z]:[\\/]/.test(J))return q(J).href;return q(_.resolve(j,J)).href})(),y=await S(C).catch(()=>C);if(Array.isArray($))return[y,$[1]];return y}function i($){let T=new Set,J=[];for(let j of $.toReversed()){let C=b(j.spec),y=C.startsWith("file://")?C:v(C).pkg;if(T.has(y))continue;T.add(y),J.push(j)}return J.toReversed()}var M={};E(M,{install:()=>T$,declaresDependencies:()=>f,ConfigDependencies:()=>M});import $$ from"path";var J$=["dependencies","devDependencies","optionalDependencies","peerDependencies"];function f($){if(!U($))return!1;return J$.some((T)=>{let J=$[T];return U(J)&&Object.keys(J).length>0})}var T$=k.fn("Config.installDependencies")(function*($){let T=yield*$.fs.readJson($$.join($.dir,"package.json")).pipe(k.exit),J=s.isSuccess(T)?T.value:void 0;if(!f(J))return;yield*$.npm.install($.dir)});
|
|
14
|
-
export{V as
|
|
14
|
+
export{V as en,Y as fn,w as gn,M as hn};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
3
|
-
export{S as
|
|
2
|
+
import{dh as r}from"./chunk-azpnrnv9.js";import{Mj as e}from"./chunk-qznr1emx.js";import{Zl as t}from"./chunk-fsahzvd5.js";import{On as l}from"./chunk-vcygx6hs.js";import{lt as a}from"./chunk-kgptyf7n.js";import{TN as o}from"./chunk-qnvsqnz5.js";var S={PromptAppend:t.define("tui.prompt.append",a.object({text:a.string()})),CommandExecute:t.define("tui.command.execute",a.object({command:a.union([a.enum(["session.list","session.new","session.share","session.interrupt","session.compact","session.page.up","session.page.down","session.line.up","session.line.down","session.half.page.up","session.half.page.down","session.first","session.last","prompt.clear","prompt.submit","agent.cycle"]),a.string()])})),ToastShow:t.define("tui.toast.show",a.object({title:a.string().optional(),message:a.string(),variant:a.enum(["info","success","warning","error"]),duration:a.number().default(5000).optional().describe("Duration in milliseconds")})),SessionSelect:t.define("tui.session.select",a.object({sessionID:e.zod.describe("Session ID to navigate to")})),InstructionsLoaded:r};class m extends o.Class("ConsoleState")({consoleManagedProviders:o.mutable(o.Array(o.String)),activeOrgName:o.optional(o.String),switchableOrgCount:o.Number}){static zod=l(this)}var f=m.make({consoleManagedProviders:[],activeOrgName:void 0,switchableOrgCount:0});
|
|
3
|
+
export{S as zg,m as Ag,f as Bg};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
// @bun
|
|
2
2
|
var e={"ui.sessionReview.title":"Session changes","ui.sessionReview.title.git":"Git changes","ui.sessionReview.title.branch":"Branch changes","ui.sessionReview.title.lastTurn":"Last turn changes","ui.sessionReview.diffStyle.unified":"Unified","ui.sessionReview.diffStyle.split":"Split","ui.sessionReview.expandAll":"Expand all","ui.sessionReview.collapseAll":"Collapse all","ui.sessionReview.change.added":"Added","ui.sessionReview.change.removed":"Removed","ui.sessionReview.change.modified":"Modified","ui.sessionReview.image.loading":"Loading...","ui.sessionReview.image.placeholder":"Image","ui.sessionReview.largeDiff.title":"Diff too large to render","ui.sessionReview.largeDiff.meta":"Limit: {{limit}} changed lines. Current: {{current}} changed lines.","ui.sessionReview.largeDiff.renderAnyway":"Render anyway","ui.sessionReview.openFile":"Open file","ui.sessionReview.selection.line":"line {{line}}","ui.sessionReview.selection.lines":"lines {{start}}-{{end}}","ui.fileMedia.kind.image":"image","ui.fileMedia.kind.audio":"audio","ui.fileMedia.state.removed":"Removed {{kind}} file.","ui.fileMedia.state.loading":"Loading {{kind}}...","ui.fileMedia.state.error":"Unable to load {{kind}}.","ui.fileMedia.state.unavailable":"{{kind}} preview unavailable.","ui.fileMedia.binary.title":"Binary file","ui.fileMedia.binary.description.path":"{{path}} is binary.","ui.fileMedia.binary.description.default":"Binary content","ui.lineComment.label.prefix":"Comment on ","ui.lineComment.label.suffix":"","ui.lineComment.editorLabel.prefix":"Commenting on ","ui.lineComment.editorLabel.suffix":"","ui.lineComment.placeholder":"Add comment","ui.lineComment.submit":"Comment","ui.sessionTurn.steps.show":"Show steps","ui.sessionTurn.steps.hide":"Hide steps","ui.sessionTurn.summary.response":"Response","ui.sessionTurn.diff.showMore":"Show more changes ({{count}})","ui.sessionTurn.diffs.changed":"Changed","ui.sessionTurn.diffs.showAll":"Show all","ui.sessionTurn.diffs.showLess":"Show less","ui.sessionTurn.diffs.more":"+{{count}} more files","ui.sessionTurn.retry.retrying":"retrying","ui.sessionTurn.retry.inSeconds":"in {{seconds}}s","ui.sessionTurn.retry.attempt":"attempt #{{attempt}}","ui.sessionTurn.retry.attemptLine":"{{line}} - attempt #{{attempt}}","ui.sessionTurn.retry.geminiHot":"gemini is way too hot right now","ui.sessionTurn.error.freeUsageExceeded":"Free usage exceeded","ui.sessionTurn.error.addQredits":"Add qredits","ui.sessionTurn.status.delegating":"Delegating work","ui.sessionTurn.status.planning":"Planning next steps","ui.sessionTurn.status.gatheringContext":"Exploring","ui.sessionTurn.status.gatheredContext":"Explored","ui.sessionTurn.status.searchingCodebase":"Searching the codebase","ui.sessionTurn.status.searchingWeb":"Searching the web","ui.sessionTurn.status.makingEdits":"Making edits","ui.sessionTurn.status.runningCommands":"Running commands","ui.sessionTurn.status.thinking":"Thinking","ui.sessionTurn.status.thinkingWithTopic":"Thinking - {{topic}}","ui.sessionTurn.status.gatheringThoughts":"Gathering thoughts","ui.sessionTurn.status.consideringNextSteps":"Considering next steps","ui.messagePart.diagnostic.error":"Error","ui.messagePart.title.edit":"Edit","ui.messagePart.title.write":"Write","ui.messagePart.option.typeOwnAnswer":"Type your own answer","ui.messagePart.review.title":"Review your answers","ui.messagePart.questions.dismissed":"Questions dismissed","ui.messagePart.compaction":"Session compacted","ui.messagePart.context.read.one":"{{count}} read","ui.messagePart.context.read.other":"{{count}} reads","ui.messagePart.context.search.one":"{{count}} search","ui.messagePart.context.search.other":"{{count}} searches","ui.messagePart.context.list.one":"{{count}} list","ui.messagePart.context.list.other":"{{count}} lists","ui.list.loading":"Loading","ui.list.empty":"No results","ui.list.clearFilter":"Clear filter","ui.list.emptyWithFilter.prefix":"No results for","ui.list.emptyWithFilter.suffix":"","ui.fileSearch.placeholder":"Find","ui.fileSearch.previousMatch":"Previous match","ui.fileSearch.nextMatch":"Next match","ui.fileSearch.close":"Close search","ui.messageNav.newMessage":"New message","ui.textField.copyToClipboard":"Copy to clipboard","ui.textField.copyLink":"Copy link","ui.textField.copied":"Copied","ui.imagePreview.alt":"Image preview","ui.scrollView.ariaLabel":"scrollable content","ui.tool.read":"Read","ui.tool.loaded":"Loaded","ui.tool.list":"List","ui.tool.glob":"Glob","ui.tool.grep":"Grep","ui.tool.task":"Task","ui.tool.webfetch":"Webfetch","ui.tool.websearch":"Web Search","ui.tool.codesearch":"Code Search","ui.tool.shell":"Shell","ui.tool.patch":"Patch","ui.tool.todos":"To-dos","ui.tool.todos.read":"Read to-dos","ui.tool.questions":"Questions","ui.tool.agent":"{{type}} Agent","ui.tool.agent.default":"Agent","ui.tool.skill":"Skill","ui.basicTool.called":"Called `{{tool}}`","ui.toolErrorCard.failed":"Failed","ui.toolErrorCard.copyError":"Copy error","ui.common.file.one":"file","ui.common.file.other":"files","ui.common.question.one":"question","ui.common.question.other":"questions","ui.common.add":"Add","ui.common.back":"Back","ui.common.cancel":"Cancel","ui.common.confirm":"Confirm","ui.common.dismiss":"Dismiss","ui.common.close":"Close","ui.common.next":"Next","ui.common.submit":"Submit","ui.permission.deny":"Deny","ui.permission.allowAlways":"Allow always","ui.permission.allowOnce":"Allow once","ui.message.expand":"Expand message","ui.message.collapse":"Collapse message","ui.message.copy":"Copy","ui.message.copyMessage":"Copy message","ui.message.forkMessage":"Fork to new session","ui.message.revertMessage":"Revert message","ui.message.copyResponse":"Copy response","ui.message.copied":"Copied","ui.message.duration.seconds":"{{count}}s","ui.message.duration.minutesSeconds":"{{minutes}}m {{seconds}}s","ui.message.interrupted":"Interrupted","ui.message.queued":"Queued","ui.message.attachment.alt":"attachment","ui.patch.action.deleted":"Deleted","ui.patch.action.created":"Created","ui.patch.action.moved":"Moved","ui.patch.action.patched":"Patched","ui.question.subtitle.answered":"{{count}} answered","ui.question.answer.none":"(no answer)","ui.question.review.notAnswered":"(not answered)","ui.question.multiHint":"Select all answers that apply","ui.question.singleHint":"Select one answer","ui.question.custom.placeholder":"Type your answer..."};
|
|
3
|
-
export{e as
|
|
3
|
+
export{e as Md};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import"./chunk-
|
|
2
|
+
import"./chunk-8wwdrwf2.js";import"./chunk-r9w0thdk.js";var e={"ui.sessionReview.title":"Promjene sesije","ui.sessionReview.title.lastTurn":"Promjene u posljednjem potezu","ui.sessionReview.diffStyle.unified":"Ujedinjeno","ui.sessionReview.diffStyle.split":"Podijeljeno","ui.sessionReview.openFile":"Otvori fajl","ui.sessionReview.selection.line":"linija {{line}}","ui.sessionReview.selection.lines":"linije {{start}}-{{end}}","ui.sessionReview.expandAll":"Pro\u0161iri sve","ui.sessionReview.collapseAll":"Sa\u017Emi sve","ui.sessionReview.change.added":"Dodano","ui.sessionReview.change.removed":"Uklonjeno","ui.sessionReview.change.modified":"Izmijenjeno","ui.sessionReview.image.loading":"U\u010Ditavanje...","ui.sessionReview.image.placeholder":"Slika","ui.sessionReview.largeDiff.title":"Diff je prevelik za prikaz","ui.sessionReview.largeDiff.meta":"Limit: {{limit}} izmijenjenih linija. Trenutno: {{current}} izmijenjenih linija.","ui.sessionReview.largeDiff.renderAnyway":"Prika\u017Ei svejedno","ui.fileMedia.kind.image":"slika","ui.fileMedia.kind.audio":"audio","ui.fileMedia.state.removed":"Uklonjeno: {{kind}}","ui.fileMedia.state.loading":"U\u010Ditavanje: {{kind}}...","ui.fileMedia.state.error":"Gre\u0161ka pri u\u010Ditavanju: {{kind}}","ui.fileMedia.state.unavailable":"Nedostupno: {{kind}}","ui.fileMedia.binary.title":"Binarni fajl","ui.fileMedia.binary.description.path":"{{path}} se ne mo\u017Ee prikazati jer je binarni fajl.","ui.fileMedia.binary.description.default":"Ovaj fajl se ne mo\u017Ee prikazati jer je binarni.","ui.lineComment.label.prefix":"Komentar na ","ui.lineComment.label.suffix":"","ui.lineComment.editorLabel.prefix":"Komentari\u0161e\u0161 ","ui.lineComment.editorLabel.suffix":"","ui.lineComment.placeholder":"Dodaj komentar","ui.lineComment.submit":"Komentari\u0161i","ui.sessionTurn.steps.show":"Prika\u017Ei korake","ui.sessionTurn.steps.hide":"Sakrij korake","ui.sessionTurn.summary.response":"Odgovor","ui.sessionTurn.diff.showMore":"Prika\u017Ei jo\u0161 izmjena ({{count}})","ui.sessionTurn.retry.retrying":"ponovni poku\u0161aj","ui.sessionTurn.retry.inSeconds":"za {{seconds}}s","ui.sessionTurn.retry.attempt":"poku\u0161aj #{{attempt}}","ui.sessionTurn.retry.attemptLine":"{{line}} - poku\u0161aj #{{attempt}}","ui.sessionTurn.retry.geminiHot":"gemini je trenutno preoptere\u0107en","ui.sessionTurn.error.freeUsageExceeded":"Besplatna upotreba prema\u0161ena","ui.sessionTurn.error.addQredits":"Dodaj kredite","ui.sessionTurn.status.delegating":"Delegiranje posla","ui.sessionTurn.status.planning":"Planiranje sljede\u0107ih koraka","ui.sessionTurn.status.gatheringContext":"Istra\u017Eivanje","ui.sessionTurn.status.gatheredContext":"Istra\u017Eeno","ui.sessionTurn.status.searchingCodebase":"Pretra\u017Eivanje baze koda","ui.sessionTurn.status.searchingWeb":"Pretra\u017Eivanje weba","ui.sessionTurn.status.makingEdits":"Pravljenje izmjena","ui.sessionTurn.status.runningCommands":"Pokretanje komandi","ui.sessionTurn.status.thinking":"Razmi\u0161ljanje","ui.sessionTurn.status.thinkingWithTopic":"Razmi\u0161ljanje - {{topic}}","ui.sessionTurn.status.gatheringThoughts":"Sre\u0111ivanje misli","ui.sessionTurn.status.consideringNextSteps":"Razmatranje sljede\u0107ih koraka","ui.messagePart.questions.dismissed":"Pitanja odba\u010Dena","ui.messagePart.compaction":"Sesija sa\u017Eeta","ui.messagePart.context.read.one":"{{count}} \u010Ditanje","ui.messagePart.context.read.other":"{{count}} \u010Ditanja","ui.messagePart.context.search.one":"{{count}} pretraga","ui.messagePart.context.search.other":"{{count}} pretrage","ui.messagePart.context.list.one":"{{count}} lista","ui.messagePart.context.list.other":"{{count}} liste","ui.messagePart.diagnostic.error":"Gre\u0161ka","ui.messagePart.title.edit":"Uredi","ui.messagePart.title.write":"Napi\u0161i","ui.messagePart.option.typeOwnAnswer":"Unesi svoj odgovor","ui.messagePart.review.title":"Pregledaj svoje odgovore","ui.list.loading":"U\u010Ditavanje","ui.list.empty":"Nema rezultata","ui.list.clearFilter":"O\u010Disti filter","ui.list.emptyWithFilter.prefix":"Nema rezultata za","ui.list.emptyWithFilter.suffix":"","ui.messageNav.newMessage":"Nova poruka","ui.textField.copyToClipboard":"Kopiraj u me\u0111uspremnik","ui.textField.copyLink":"Kopiraj link","ui.textField.copied":"Kopirano","ui.imagePreview.alt":"Pregled slike","ui.scrollView.ariaLabel":"sadr\u017Eaj za pomjeranje","ui.tool.read":"\u010Citanje","ui.tool.loaded":"U\u010Ditano","ui.tool.list":"Listanje","ui.tool.glob":"Glob","ui.tool.grep":"Grep","ui.tool.webfetch":"Web preuzimanje","ui.tool.websearch":"Pretraga weba","ui.tool.codesearch":"Pretraga koda","ui.tool.shell":"Shell","ui.tool.patch":"Patch","ui.tool.todos":"Lista zadataka","ui.tool.todos.read":"\u010Citanje liste zadataka","ui.tool.questions":"Pitanja","ui.tool.agent":"{{type}} agent","ui.tool.agent.default":"agent","ui.common.file.one":"datoteka","ui.common.file.other":"datoteke","ui.common.question.one":"pitanje","ui.common.question.other":"pitanja","ui.common.add":"Dodaj","ui.common.back":"Nazad","ui.common.cancel":"Otka\u017Ei","ui.common.confirm":"Potvrdi","ui.common.dismiss":"Odbaci","ui.common.close":"Zatvori","ui.common.next":"Dalje","ui.common.submit":"Po\u0161alji","ui.permission.deny":"Zabrani","ui.permission.allowAlways":"Uvijek dozvoli","ui.permission.allowOnce":"Dozvoli jednom","ui.message.expand":"Pro\u0161iri poruku","ui.message.collapse":"Sa\u017Emi poruku","ui.message.copy":"Kopiraj","ui.message.copyMessage":"Kopiraj poruku","ui.message.forkMessage":"Forkaj u novu sesiju","ui.message.revertMessage":"Resetuj na ovu ta\u010Dku","ui.message.copyResponse":"Kopiraj odgovor","ui.message.copied":"Kopirano!","ui.message.interrupted":"Prekinuto","ui.message.queued":"U redu","ui.message.attachment.alt":"prilog","ui.patch.action.deleted":"Obrisano","ui.patch.action.created":"Kreirano","ui.patch.action.moved":"Premje\u0161teno","ui.patch.action.patched":"Primijenjeno","ui.question.subtitle.answered":"{{count}} odgovoreno","ui.question.answer.none":"(nema odgovora)","ui.question.review.notAnswered":"(nije odgovoreno)","ui.question.multiHint":"Odaberi sve \u0161to va\u017Ei","ui.question.singleHint":"Odaberi jedan odgovor","ui.question.custom.placeholder":"Unesi svoj odgovor...","ui.fileSearch.placeholder":"Prona\u0111i","ui.fileSearch.previousMatch":"Prethodno","ui.fileSearch.nextMatch":"Sljede\u0107e","ui.fileSearch.close":"Zatvori pretragu","ui.tool.task":"Zadatak","ui.tool.skill":"Vje\u0161tina","ui.basicTool.called":"Pozvan `{{tool}}`","ui.toolErrorCard.failed":"Neuspje\u0161no","ui.toolErrorCard.copyError":"Kopiraj gre\u0161ku","ui.message.duration.seconds":"{{count}}s","ui.message.duration.minutesSeconds":"{{minutes}}m {{seconds}}s"};export{e as dict};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import"./chunk-f83wv08n.js";function K(Q,Z,H){return typeof Q.default==="function"?Q.default(Z,H):Q.default}function J(Q,Z){if(Q)return Q.push(Z),Q;return[Z]}var q=/[.*+?^${}()|[\]\\]/g;function X(Q){return Q.replace(q,"\\$&")}function T(Q,Z){switch(Z?.errorMode){case"ignore":break;case"warn":console.warn(Q);break;default:throw Error(Q)}}function V(Q){return typeof Q==="boolean"||typeof Q==="number"&&Number.isFinite(Q)||typeof Q==="string"}function w(Q){return Q.every(V)}function x(Q,Z,H){if(H?.ignoreActions?.includes(Z.type))return Q;let Y;switch(Z.type){case"base64":Q.contentEncoding="base64";break;case"bic":case"cuid2":case"decimal":case"digits":case"domain":case"emoji":case"hash":case"hexadecimal":case"hex_color":case"isrc":case"iso_time_second":case"iso_week":case"mac":case"mac48":case"mac64":case"nanoid":case"octal":case"slug":case"ulid":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=Z.requirement.source;break;case"description":Q.description=Z.description;break;case"email":case"rfc_email":Q.format="email";break;case"ends_with":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=`${X(Z.requirement)}$`;break;case"empty":if(Q.type==="array")Q.maxItems=0;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.maxLength=0}break;case"entries":Q.minProperties=Z.requirement,Q.maxProperties=Z.requirement;break;case"examples":if(Array.isArray(Q.examples))Q.examples=[...Q.examples,...Z.examples];else Q.examples=Z.examples;break;case"gt_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "gt_value" action is not supported on type "${Q.type}".`);if(H?.target==="openapi-3.0"){Y=J(Y,'The "gt_value" action is not supported for OpenAPI 3.0.');break}Q.exclusiveMinimum=Z.requirement;break;case"includes":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=X(Z.requirement);break;case"integer":Q.type="integer";break;case"ipv4":Q.format="ipv4";break;case"ipv6":Q.format="ipv6";break;case"iso_date":Q.format="date";break;case"iso_date_time":case"iso_timestamp":Q.format="date-time";break;case"iso_time":Q.format="time";break;case"jws_compact":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=Z.requirement.source;break;case"length":if(Q.type==="array")Q.minItems=Z.requirement,Q.maxItems=Z.requirement;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.minLength=Z.requirement,Q.maxLength=Z.requirement}break;case"lt_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "lt_value" action is not supported on type "${Q.type}".`);if(H?.target==="openapi-3.0"){Y=J(Y,'The "lt_value" action is not supported for OpenAPI 3.0.');break}Q.exclusiveMaximum=Z.requirement;break;case"max_entries":Q.maxProperties=Z.requirement;break;case"max_length":if(Q.type==="array")Q.maxItems=Z.requirement;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.maxLength=Z.requirement}break;case"max_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "max_value" action is not supported on type "${Q.type}".`);Q.maximum=Z.requirement;break;case"metadata":if(typeof Z.metadata.title==="string")Q.title=Z.metadata.title;if(typeof Z.metadata.description==="string")Q.description=Z.metadata.description;if(Array.isArray(Z.metadata.examples))if(Array.isArray(Q.examples))Q.examples=[...Q.examples,...Z.metadata.examples];else Q.examples=Z.metadata.examples;break;case"min_entries":Q.minProperties=Z.requirement;break;case"min_length":if(Q.type==="array")Q.minItems=Z.requirement;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.minLength=Z.requirement}break;case"min_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "min_value" action is not supported on type "${Q.type}".`);Q.minimum=Z.requirement;break;case"multiple_of":Q.multipleOf=Z.requirement;break;case"non_empty":if(Q.type==="array")Q.minItems=1;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.minLength=1}break;case"not_value":if(!V(Z.requirement)){Y=J(Y,'The requirement of the "not_value" action is not JSON compatible.');break}if(H?.target==="openapi-3.0")Q.not={enum:[Z.requirement]};else Q.not={const:Z.requirement};break;case"not_values":if(!w(Z.requirement)){Y=J(Y,'A requirement of the "not_values" action is not JSON compatible.');break}Q.not={enum:Z.requirement};break;case"regex":if(Z.requirement.flags)Y=J(Y,"RegExp flags are not supported by JSON Schema.");if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=Z.requirement.source;break;case"safe_integer":if(Q.type="integer",typeof Q.minimum!=="number"||Q.minimum<Number.MIN_SAFE_INTEGER)Q.minimum=Number.MIN_SAFE_INTEGER;if(typeof Q.maximum!=="number"||Q.maximum>Number.MAX_SAFE_INTEGER)Q.maximum=Number.MAX_SAFE_INTEGER;break;case"starts_with":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=`^${X(Z.requirement)}`;break;case"title":Q.title=Z.title;break;case"url":Q.format="uri";break;case"uuid":Q.format="uuid";break;case"value":if(!V(Z.requirement)){Y=J(Y,'The requirement of the "value" action is not JSON compatible.');break}if(H?.target==="openapi-3.0")Q.enum=[Z.requirement];else Q.const=Z.requirement;break;case"values":if(!w(Z.requirement)){Y=J(Y,'A requirement of the "values" action is not JSON compatible.');break}Q.enum=Z.requirement;break;default:Y=J(Y,`The "${Z.type}" action cannot be converted to JSON Schema.`)}if(H?.overrideAction){let F=H.overrideAction({valibotAction:Z,jsonSchema:Q,errors:Y});if(F)return{...F}}if(Y)for(let F of Y)T(F,H);return Q}function R(Q){return Q.flatMap((Z)=>("pipe"in Z)?R(Z.pipe):Z)}var A=0;function B(Q,Z,H,Y,F=!1){if(!F){let U=Y.referenceMap.get(Z);if(U){if(Q.$ref=`#/$defs/${U}`,H?.overrideRef){let z=H.overrideRef({...Y,referenceId:U,valibotSchema:Z,jsonSchema:Q});if(z)Q.$ref=z}return Q}}if("pipe"in Z){let U=R(Z.pipe),z=0,M=U.length-1;if(H?.typeMode==="input"){let L=U.slice(1).findIndex((W)=>W.kind==="schema"||W.kind==="transformation"&&(W.type==="find_item"||W.type==="parse_json"||W.type==="raw_transform"||W.type==="reduce_items"||W.type==="stringify_json"||W.type==="to_bigint"||W.type==="to_boolean"||W.type==="to_date"||W.type==="to_number"||W.type==="to_string"||W.type==="transform"));if(L!==-1)M=L}else if(H?.typeMode==="output"){let L=U.findLastIndex((W)=>W.kind==="schema");if(L!==-1)z=L}for(let L=z;L<=M;L++){let W=U[L];if(W.kind==="schema"){if(L>z)T('Set the "typeMode" config to "input" or "output" to convert pipelines with multiple schemas.',H);Q=B(Q,W,H,Y,!0)}else Q=x(Q,W,H)}return Q}let N;switch(Z.type){case"boolean":Q.type="boolean";break;case"null":if(H?.target==="openapi-3.0")Q.enum=[null];else Q.type="null";break;case"number":Q.type="number";break;case"string":Q.type="string";break;case"array":Q.type="array",Q.items=B({},Z.item,H,Y);break;case"tuple":case"tuple_with_rest":case"loose_tuple":case"strict_tuple":if(Q.type="array",H?.target==="openapi-3.0"){Q.items={anyOf:[]},Q.minItems=Z.items.length;for(let U of Z.items)Q.items.anyOf.push(B({},U,H,Y));if(Z.type==="tuple_with_rest")Q.items.anyOf.push(B({},Z.rest,H,Y));else if(Z.type==="strict_tuple"||Z.type==="tuple")Q.maxItems=Z.items.length}else if(H?.target==="draft-2020-12"){Q.prefixItems=[],Q.minItems=Z.items.length;for(let U of Z.items)Q.prefixItems.push(B({},U,H,Y));if(Z.type==="tuple_with_rest")Q.items=B({},Z.rest,H,Y);else if(Z.type==="strict_tuple")Q.items=!1}else{Q.items=[],Q.minItems=Z.items.length;for(let U of Z.items)Q.items.push(B({},U,H,Y));if(Z.type==="tuple_with_rest")Q.additionalItems=B({},Z.rest,H,Y);else if(Z.type==="strict_tuple")Q.additionalItems=!1}break;case"object":case"object_with_rest":case"loose_object":case"strict_object":Q.type="object",Q.properties={},Q.required=[];for(let U in Z.entries){let z=Z.entries[U];if(Q.properties[U]=B({},z,H,Y),z.type!=="exact_optional"&&z.type!=="nullish"&&z.type!=="optional")Q.required.push(U)}if(Z.type==="object_with_rest")Q.additionalProperties=B({},Z.rest,H,Y);else if(Z.type==="strict_object")Q.additionalProperties=!1;break;case"record":if(H?.target==="openapi-3.0"&&"pipe"in Z.key)N=J(N,'The "record" schema with a schema for the key that contains a "pipe" cannot be converted to JSON Schema.');if(Z.key.type!=="string")N=J(N,`The "record" schema with the "${Z.key.type}" schema for the key cannot be converted to JSON Schema.`);if(Q.type="object",H?.target!=="openapi-3.0")Q.propertyNames=B({},Z.key,H,Y);Q.additionalProperties=B({},Z.value,H,Y);break;case"any":case"unknown":break;case"never":Q.not={};break;case"nullable":case"nullish":if(H?.target==="openapi-3.0"){let U=B({},Z.wrapped,H,Y);Object.assign(Q,U),Q.nullable=!0}else Q.anyOf=[B({},Z.wrapped,H,Y),{type:"null"}];if(Z.default!==void 0)Q.default=K(Z);break;case"exact_optional":case"optional":case"undefinedable":if(Q=B(Q,Z.wrapped,H,Y),Z.default!==void 0)Q.default=K(Z);break;case"literal":if(typeof Z.literal!=="boolean"&&typeof Z.literal!=="number"&&typeof Z.literal!=="string")N=J(N,'The value of the "literal" schema is not JSON compatible.');if(H?.target==="openapi-3.0")Q.enum=[Z.literal];else Q.const=Z.literal;break;case"enum":if(Q.enum=Z.options,Z.options.every((U)=>typeof U==="string"))Q.type="string";else if(Z.options.every((U)=>typeof U==="number"))Q.type="number";else if(H?.target!=="openapi-3.0")Q.type=["string","number"];break;case"picklist":{let U=Z.options.some((z)=>typeof z!=="number"&&typeof z!=="string");if(U)N=J(N,'An option of the "picklist" schema is not JSON compatible.');if(Q.enum=Z.options,Z.options.every((z)=>typeof z==="string"))Q.type="string";else if(Z.options.every((z)=>typeof z==="number"))Q.type="number";else if(!U&&H?.target!=="openapi-3.0")Q.type=["string","number"];break}case"union":Q.anyOf=Z.options.map((U)=>B({},U,H,Y));break;case"variant":Q.oneOf=Z.options.map((U)=>B({},U,H,Y));break;case"intersect":Q.allOf=Z.options.map((U)=>B({},U,H,Y));break;case"lazy":{let U=Y.getterMap.get(Z.getter);if(!U)U=Z.getter(void 0),Y.getterMap.set(Z.getter,U);let z=Y.referenceMap.get(U);if(!z)z=`${A++}`,Y.referenceMap.set(U,z),Y.definitions[z]=B({},U,H,Y,!0);if(Q.$ref=`#/$defs/${z}`,H?.overrideRef){let M=H.overrideRef({...Y,referenceId:z,valibotSchema:U,jsonSchema:Q});if(M)Q.$ref=M}break}default:N=J(N,`The "${Z.type}" schema cannot be converted to JSON Schema.`)}if(H?.overrideSchema){let U=H.overrideSchema({...Y,referenceId:Y.referenceMap.get(Z),valibotSchema:Z,jsonSchema:Q,errors:N});if(U)return{...U}}if(N)for(let U of N)T(U,H);return Q}var O;function b(Q){O={...O??{},...Q}}function E(){return O}function G(Q,Z){let H={definitions:{},referenceMap:new Map,getterMap:new Map},Y=Z?.definitions??E();if(Y){for(let U in Y)H.referenceMap.set(Y[U],U);for(let U in Y)H.definitions[U]=B({},Y[U],Z,H,!0)}let F=B({},Q,Z,H),N=Z?.target??"draft-07";if(N==="draft-2020-12")F.$schema="https://json-schema.org/draft/2020-12/schema";else if(N==="draft-07")F.$schema="http://json-schema.org/draft-07/schema#";if(H.referenceMap.size)F.$defs=H.definitions;return F}function I(Q,Z){let H={definitions:{},referenceMap:new Map,getterMap:new Map};for(let Y in Q)H.referenceMap.set(Q[Y],Y);for(let Y in Q)H.definitions[Y]=B({},Q[Y],Z,H,!0);return H.definitions}var C=["draft-07","draft-2020-12","openapi-3.0"];function j(Q){return{"~standard":{...Q["~standard"],jsonSchema:{input(Z){if(C.includes(Z.target))return G(Q,{typeMode:"input",target:Z.target,...Z.libraryOptions});throw Error(`Unsupported target: ${Z.target}`)},output(Z){if(C.includes(Z.target))return G(Q,{typeMode:"output",target:Z.target,...Z.libraryOptions});throw Error(`Unsupported target: ${Z.target}`)}}}}}export{j as toStandardJsonSchema,I as toJsonSchemaDefs,G as toJsonSchema,E as getGlobalDefs,b as addGlobalDefs};
|
|
2
|
+
import"./chunk-r9w0thdk.js";function K(Q,Z,H){return typeof Q.default==="function"?Q.default(Z,H):Q.default}function J(Q,Z){if(Q)return Q.push(Z),Q;return[Z]}var q=/[.*+?^${}()|[\]\\]/g;function X(Q){return Q.replace(q,"\\$&")}function T(Q,Z){switch(Z?.errorMode){case"ignore":break;case"warn":console.warn(Q);break;default:throw Error(Q)}}function V(Q){return typeof Q==="boolean"||typeof Q==="number"&&Number.isFinite(Q)||typeof Q==="string"}function w(Q){return Q.every(V)}function x(Q,Z,H){if(H?.ignoreActions?.includes(Z.type))return Q;let Y;switch(Z.type){case"base64":Q.contentEncoding="base64";break;case"bic":case"cuid2":case"decimal":case"digits":case"domain":case"emoji":case"hash":case"hexadecimal":case"hex_color":case"isrc":case"iso_time_second":case"iso_week":case"mac":case"mac48":case"mac64":case"nanoid":case"octal":case"slug":case"ulid":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=Z.requirement.source;break;case"description":Q.description=Z.description;break;case"email":case"rfc_email":Q.format="email";break;case"ends_with":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=`${X(Z.requirement)}$`;break;case"empty":if(Q.type==="array")Q.maxItems=0;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.maxLength=0}break;case"entries":Q.minProperties=Z.requirement,Q.maxProperties=Z.requirement;break;case"examples":if(Array.isArray(Q.examples))Q.examples=[...Q.examples,...Z.examples];else Q.examples=Z.examples;break;case"gt_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "gt_value" action is not supported on type "${Q.type}".`);if(H?.target==="openapi-3.0"){Y=J(Y,'The "gt_value" action is not supported for OpenAPI 3.0.');break}Q.exclusiveMinimum=Z.requirement;break;case"includes":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=X(Z.requirement);break;case"integer":Q.type="integer";break;case"ipv4":Q.format="ipv4";break;case"ipv6":Q.format="ipv6";break;case"iso_date":Q.format="date";break;case"iso_date_time":case"iso_timestamp":Q.format="date-time";break;case"iso_time":Q.format="time";break;case"jws_compact":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=Z.requirement.source;break;case"length":if(Q.type==="array")Q.minItems=Z.requirement,Q.maxItems=Z.requirement;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.minLength=Z.requirement,Q.maxLength=Z.requirement}break;case"lt_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "lt_value" action is not supported on type "${Q.type}".`);if(H?.target==="openapi-3.0"){Y=J(Y,'The "lt_value" action is not supported for OpenAPI 3.0.');break}Q.exclusiveMaximum=Z.requirement;break;case"max_entries":Q.maxProperties=Z.requirement;break;case"max_length":if(Q.type==="array")Q.maxItems=Z.requirement;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.maxLength=Z.requirement}break;case"max_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "max_value" action is not supported on type "${Q.type}".`);Q.maximum=Z.requirement;break;case"metadata":if(typeof Z.metadata.title==="string")Q.title=Z.metadata.title;if(typeof Z.metadata.description==="string")Q.description=Z.metadata.description;if(Array.isArray(Z.metadata.examples))if(Array.isArray(Q.examples))Q.examples=[...Q.examples,...Z.metadata.examples];else Q.examples=Z.metadata.examples;break;case"min_entries":Q.minProperties=Z.requirement;break;case"min_length":if(Q.type==="array")Q.minItems=Z.requirement;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.minLength=Z.requirement}break;case"min_value":if(Q.type!=="number"&&Q.type!=="integer")Y=J(Y,`The "min_value" action is not supported on type "${Q.type}".`);Q.minimum=Z.requirement;break;case"multiple_of":Q.multipleOf=Z.requirement;break;case"non_empty":if(Q.type==="array")Q.minItems=1;else{if(Q.type!=="string")Y=J(Y,`The "${Z.type}" action is not supported on type "${Q.type}".`);Q.minLength=1}break;case"not_value":if(!V(Z.requirement)){Y=J(Y,'The requirement of the "not_value" action is not JSON compatible.');break}if(H?.target==="openapi-3.0")Q.not={enum:[Z.requirement]};else Q.not={const:Z.requirement};break;case"not_values":if(!w(Z.requirement)){Y=J(Y,'A requirement of the "not_values" action is not JSON compatible.');break}Q.not={enum:Z.requirement};break;case"regex":if(Z.requirement.flags)Y=J(Y,"RegExp flags are not supported by JSON Schema.");if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=Z.requirement.source;break;case"safe_integer":if(Q.type="integer",typeof Q.minimum!=="number"||Q.minimum<Number.MIN_SAFE_INTEGER)Q.minimum=Number.MIN_SAFE_INTEGER;if(typeof Q.maximum!=="number"||Q.maximum>Number.MAX_SAFE_INTEGER)Q.maximum=Number.MAX_SAFE_INTEGER;break;case"starts_with":if(Q.pattern)Y=J(Y,`The "${Z.type}" action is not supported in combination with another regex action.`);else Q.pattern=`^${X(Z.requirement)}`;break;case"title":Q.title=Z.title;break;case"url":Q.format="uri";break;case"uuid":Q.format="uuid";break;case"value":if(!V(Z.requirement)){Y=J(Y,'The requirement of the "value" action is not JSON compatible.');break}if(H?.target==="openapi-3.0")Q.enum=[Z.requirement];else Q.const=Z.requirement;break;case"values":if(!w(Z.requirement)){Y=J(Y,'A requirement of the "values" action is not JSON compatible.');break}Q.enum=Z.requirement;break;default:Y=J(Y,`The "${Z.type}" action cannot be converted to JSON Schema.`)}if(H?.overrideAction){let F=H.overrideAction({valibotAction:Z,jsonSchema:Q,errors:Y});if(F)return{...F}}if(Y)for(let F of Y)T(F,H);return Q}function R(Q){return Q.flatMap((Z)=>("pipe"in Z)?R(Z.pipe):Z)}var A=0;function B(Q,Z,H,Y,F=!1){if(!F){let U=Y.referenceMap.get(Z);if(U){if(Q.$ref=`#/$defs/${U}`,H?.overrideRef){let z=H.overrideRef({...Y,referenceId:U,valibotSchema:Z,jsonSchema:Q});if(z)Q.$ref=z}return Q}}if("pipe"in Z){let U=R(Z.pipe),z=0,M=U.length-1;if(H?.typeMode==="input"){let L=U.slice(1).findIndex((W)=>W.kind==="schema"||W.kind==="transformation"&&(W.type==="find_item"||W.type==="parse_json"||W.type==="raw_transform"||W.type==="reduce_items"||W.type==="stringify_json"||W.type==="to_bigint"||W.type==="to_boolean"||W.type==="to_date"||W.type==="to_number"||W.type==="to_string"||W.type==="transform"));if(L!==-1)M=L}else if(H?.typeMode==="output"){let L=U.findLastIndex((W)=>W.kind==="schema");if(L!==-1)z=L}for(let L=z;L<=M;L++){let W=U[L];if(W.kind==="schema"){if(L>z)T('Set the "typeMode" config to "input" or "output" to convert pipelines with multiple schemas.',H);Q=B(Q,W,H,Y,!0)}else Q=x(Q,W,H)}return Q}let N;switch(Z.type){case"boolean":Q.type="boolean";break;case"null":if(H?.target==="openapi-3.0")Q.enum=[null];else Q.type="null";break;case"number":Q.type="number";break;case"string":Q.type="string";break;case"array":Q.type="array",Q.items=B({},Z.item,H,Y);break;case"tuple":case"tuple_with_rest":case"loose_tuple":case"strict_tuple":if(Q.type="array",H?.target==="openapi-3.0"){Q.items={anyOf:[]},Q.minItems=Z.items.length;for(let U of Z.items)Q.items.anyOf.push(B({},U,H,Y));if(Z.type==="tuple_with_rest")Q.items.anyOf.push(B({},Z.rest,H,Y));else if(Z.type==="strict_tuple"||Z.type==="tuple")Q.maxItems=Z.items.length}else if(H?.target==="draft-2020-12"){Q.prefixItems=[],Q.minItems=Z.items.length;for(let U of Z.items)Q.prefixItems.push(B({},U,H,Y));if(Z.type==="tuple_with_rest")Q.items=B({},Z.rest,H,Y);else if(Z.type==="strict_tuple")Q.items=!1}else{Q.items=[],Q.minItems=Z.items.length;for(let U of Z.items)Q.items.push(B({},U,H,Y));if(Z.type==="tuple_with_rest")Q.additionalItems=B({},Z.rest,H,Y);else if(Z.type==="strict_tuple")Q.additionalItems=!1}break;case"object":case"object_with_rest":case"loose_object":case"strict_object":Q.type="object",Q.properties={},Q.required=[];for(let U in Z.entries){let z=Z.entries[U];if(Q.properties[U]=B({},z,H,Y),z.type!=="exact_optional"&&z.type!=="nullish"&&z.type!=="optional")Q.required.push(U)}if(Z.type==="object_with_rest")Q.additionalProperties=B({},Z.rest,H,Y);else if(Z.type==="strict_object")Q.additionalProperties=!1;break;case"record":if(H?.target==="openapi-3.0"&&"pipe"in Z.key)N=J(N,'The "record" schema with a schema for the key that contains a "pipe" cannot be converted to JSON Schema.');if(Z.key.type!=="string")N=J(N,`The "record" schema with the "${Z.key.type}" schema for the key cannot be converted to JSON Schema.`);if(Q.type="object",H?.target!=="openapi-3.0")Q.propertyNames=B({},Z.key,H,Y);Q.additionalProperties=B({},Z.value,H,Y);break;case"any":case"unknown":break;case"never":Q.not={};break;case"nullable":case"nullish":if(H?.target==="openapi-3.0"){let U=B({},Z.wrapped,H,Y);Object.assign(Q,U),Q.nullable=!0}else Q.anyOf=[B({},Z.wrapped,H,Y),{type:"null"}];if(Z.default!==void 0)Q.default=K(Z);break;case"exact_optional":case"optional":case"undefinedable":if(Q=B(Q,Z.wrapped,H,Y),Z.default!==void 0)Q.default=K(Z);break;case"literal":if(typeof Z.literal!=="boolean"&&typeof Z.literal!=="number"&&typeof Z.literal!=="string")N=J(N,'The value of the "literal" schema is not JSON compatible.');if(H?.target==="openapi-3.0")Q.enum=[Z.literal];else Q.const=Z.literal;break;case"enum":if(Q.enum=Z.options,Z.options.every((U)=>typeof U==="string"))Q.type="string";else if(Z.options.every((U)=>typeof U==="number"))Q.type="number";else if(H?.target!=="openapi-3.0")Q.type=["string","number"];break;case"picklist":{let U=Z.options.some((z)=>typeof z!=="number"&&typeof z!=="string");if(U)N=J(N,'An option of the "picklist" schema is not JSON compatible.');if(Q.enum=Z.options,Z.options.every((z)=>typeof z==="string"))Q.type="string";else if(Z.options.every((z)=>typeof z==="number"))Q.type="number";else if(!U&&H?.target!=="openapi-3.0")Q.type=["string","number"];break}case"union":Q.anyOf=Z.options.map((U)=>B({},U,H,Y));break;case"variant":Q.oneOf=Z.options.map((U)=>B({},U,H,Y));break;case"intersect":Q.allOf=Z.options.map((U)=>B({},U,H,Y));break;case"lazy":{let U=Y.getterMap.get(Z.getter);if(!U)U=Z.getter(void 0),Y.getterMap.set(Z.getter,U);let z=Y.referenceMap.get(U);if(!z)z=`${A++}`,Y.referenceMap.set(U,z),Y.definitions[z]=B({},U,H,Y,!0);if(Q.$ref=`#/$defs/${z}`,H?.overrideRef){let M=H.overrideRef({...Y,referenceId:z,valibotSchema:U,jsonSchema:Q});if(M)Q.$ref=M}break}default:N=J(N,`The "${Z.type}" schema cannot be converted to JSON Schema.`)}if(H?.overrideSchema){let U=H.overrideSchema({...Y,referenceId:Y.referenceMap.get(Z),valibotSchema:Z,jsonSchema:Q,errors:N});if(U)return{...U}}if(N)for(let U of N)T(U,H);return Q}var O;function b(Q){O={...O??{},...Q}}function E(){return O}function G(Q,Z){let H={definitions:{},referenceMap:new Map,getterMap:new Map},Y=Z?.definitions??E();if(Y){for(let U in Y)H.referenceMap.set(Y[U],U);for(let U in Y)H.definitions[U]=B({},Y[U],Z,H,!0)}let F=B({},Q,Z,H),N=Z?.target??"draft-07";if(N==="draft-2020-12")F.$schema="https://json-schema.org/draft/2020-12/schema";else if(N==="draft-07")F.$schema="http://json-schema.org/draft-07/schema#";if(H.referenceMap.size)F.$defs=H.definitions;return F}function I(Q,Z){let H={definitions:{},referenceMap:new Map,getterMap:new Map};for(let Y in Q)H.referenceMap.set(Q[Y],Y);for(let Y in Q)H.definitions[Y]=B({},Q[Y],Z,H,!0);return H.definitions}var C=["draft-07","draft-2020-12","openapi-3.0"];function j(Q){return{"~standard":{...Q["~standard"],jsonSchema:{input(Z){if(C.includes(Z.target))return G(Q,{typeMode:"input",target:Z.target,...Z.libraryOptions});throw Error(`Unsupported target: ${Z.target}`)},output(Z){if(C.includes(Z.target))return G(Q,{typeMode:"output",target:Z.target,...Z.libraryOptions});throw Error(`Unsupported target: ${Z.target}`)}}}}}export{j as toStandardJsonSchema,I as toJsonSchemaDefs,G as toJsonSchema,E as getGlobalDefs,b as addGlobalDefs};
|