@poe-platform/safe-bash 0.1.800 → 0.1.801
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/README.md +16 -5
- package/dist/image-ast/index.browser.js +119 -75
- package/dist/image-ast/index.js +119 -75
- package/dist/pdf-ast/index.js +4 -3
- package/dist/safe-bash/chunks/{chunk-LUOFIVNI.js → chunk-3NDIFSNM.js} +3 -3
- package/dist/safe-bash/chunks/{chunk-4SEW2Q6H.js → chunk-3R3AANOR.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-HHW7MGS2.js → chunk-45PK3NWI.js} +4 -4
- package/dist/safe-bash/chunks/{chunk-KHMGTPD6.js → chunk-46Z5E5EV.js} +2 -2
- package/dist/safe-bash/chunks/{chunk-XB3B7KMM.js → chunk-6O77NL2S.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-T3JTVIEP.js → chunk-6PAVEFT3.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-PYVEAFJM.js → chunk-74GHTNJA.js} +3 -2
- package/dist/safe-bash/chunks/{chunk-LQHGH25W.js → chunk-7R5BDCG7.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-RMWLWH7Q.js → chunk-7VNF5BFF.js} +300 -737
- package/dist/safe-bash/chunks/{chunk-QVSRRNZT.js → chunk-A7XEHALN.js} +4 -4
- package/dist/safe-bash/chunks/{chunk-MHZ24KEI.js → chunk-AM5ESLPH.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-3L3T6LYV.js → chunk-AUSNDQTJ.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-YG5WAHK7.js → chunk-B7TAL7S5.js} +1 -3
- package/dist/safe-bash/chunks/{chunk-K7IQZE7D.js → chunk-C5OWC2TL.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-F3RV2F72.js → chunk-CHYGPFVM.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-M4CFCXHN.js → chunk-CS4MNM6I.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-H6JW3E4F.js → chunk-CTVWDACF.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-BHJE5LPZ.js → chunk-D3ANYGMC.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-NLAW7KDI.js → chunk-E7OYNDGL.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-SOZK5JVX.js → chunk-FBUCWVTE.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-RKKRJ54E.js → chunk-FNDNHAGE.js} +30 -23
- package/dist/safe-bash/chunks/{chunk-KCVSVD65.js → chunk-I5HZ4FGE.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-JJSTTIEZ.js → chunk-ICFDYV64.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-TYD7EVUJ.js → chunk-IVRQ4BXL.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-KV7PKOHV.js → chunk-IWDICZVK.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-I4OAEOP6.js → chunk-J42RIHHJ.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-K2VCOJ2B.js → chunk-K6VCD7IY.js} +7 -12
- package/dist/safe-bash/chunks/{chunk-63FXVDGF.js → chunk-LVOBFF4D.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-U5NUZPCC.js → chunk-MHMMRCYC.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-6HZYFL3H.js → chunk-NR3EM4LS.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-VYZTG3GV.js → chunk-NZQXYWA3.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-TFGRKY43.js → chunk-OQRVVGR6.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-PPYM75Z3.js → chunk-OV6IHKO6.js} +2 -2
- package/dist/safe-bash/chunks/{chunk-KW24TAIU.js → chunk-PQRAK7HU.js} +920 -432
- package/dist/safe-bash/chunks/{chunk-K4YMYFRJ.js → chunk-SZH7EJLD.js} +116 -697
- package/dist/safe-bash/chunks/{chunk-7YSRXFEG.js → chunk-TFIBK2GI.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-I7L3G3NX.js → chunk-UE5KZDEK.js} +2 -2
- package/dist/safe-bash/chunks/{chunk-QU3BVQ53.js → chunk-UTBUUFDM.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-JTLSUJ7V.js → chunk-VQDD3G76.js} +42 -25
- package/dist/safe-bash/chunks/{chunk-46UISJCK.js → chunk-VTH3MLDU.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-LLZCZ24K.js → chunk-XVOSKJE2.js} +1 -1
- package/dist/safe-bash/chunks/{csvkit-QGP3GAOB.js → csvkit-TACDU7FC.js} +3 -3
- package/dist/safe-bash/chunks/{ffmpeg-JTVH26MK.js → ffmpeg-WTC3TEFI.js} +2 -2
- package/dist/safe-bash/chunks/{gh-I7QX7N5C.js → gh-6WU6PXL4.js} +2 -2
- package/dist/safe-bash/chunks/{git-MA7NKYVP.js → git-EFZIGJW4.js} +2 -2
- package/dist/safe-bash/chunks/{imagemagick-Y4NPWX2Q.js → imagemagick-EIEYGWPF.js} +2 -2
- package/dist/safe-bash/chunks/{implementation-BWDKOVQJ.js → implementation-MLFHUQ5M.js} +2 -2
- package/dist/safe-bash/chunks/{mmdc-44PELHDG.js → mmdc-ROQJT5HQ.js} +2 -2
- package/dist/safe-bash/chunks/{pdfimages-635TRW4Q.js → pdfimages-DW7LWXFI.js} +2 -2
- package/dist/safe-bash/chunks/{pdfinfo-FSDAA2KY.js → pdfinfo-TIP6XLUQ.js} +2 -2
- package/dist/safe-bash/chunks/{pdftk-GQ5UH3VG.js → pdftk-DMG22ITZ.js} +2 -2
- package/dist/safe-bash/chunks/{pdftoppm-YTXQCAYT.js → pdftoppm-WNDYR72T.js} +2 -2
- package/dist/safe-bash/chunks/{pdftotext-CVA2G7FY.js → pdftotext-5IPZ4NI7.js} +2 -2
- package/dist/safe-bash/chunks/{qpdf-HZMIFG4A.js → qpdf-TTX2DIUA.js} +2 -2
- package/dist/safe-bash/chunks/{sips-E7UBDP33.js → sips-XYS46JPJ.js} +2 -2
- package/dist/safe-bash/chunks/{soffice-ELASUWUK.js → soffice-TU73E5KL.js} +2 -2
- package/dist/safe-bash/chunks/{wkhtmltopdf-EPO6YCMG.js → wkhtmltopdf-FSZ2CHGE.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-QBGA56UH.js → chunk-2ELYGJDD.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-52PCQXD2.js → chunk-2NHI5F5S.js} +2 -1
- package/dist/safe-bash/command-chunks/{chunk-HDKVO47G.js → chunk-2SQEIUGJ.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-5LSGEIZY.js → chunk-3HHCU5YU.js} +4 -3
- package/dist/safe-bash/command-chunks/{chunk-TF6OA2GK.js → chunk-3NV3HYT2.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-2QHG43WJ.js → chunk-4BB2SWJ5.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IEXHHNOF.js → chunk-4J5CZ2DP.js} +2 -7
- package/dist/safe-bash/command-chunks/{chunk-WDHI3S6Y.js → chunk-4OOUQTQO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-YMONDXET.js → chunk-4ZQWGOZB.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-L6DVEBW3.js → chunk-5BSTFCXG.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-Q3DII3Q7.js → chunk-5PWJG2UK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-JMPP4TCW.js → chunk-5UBXNSFZ.js} +3 -2
- package/dist/safe-bash/command-chunks/{chunk-3NG75MOB.js → chunk-67GQA75T.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-L6SU4S26.js → chunk-6B7WQIKB.js} +0 -7
- package/dist/safe-bash/command-chunks/{chunk-V6MSPQLA.js → chunk-6BNTBWIK.js} +4 -39
- package/dist/safe-bash/command-chunks/{chunk-JN7WIP6S.js → chunk-6KJ3LPI2.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-HLDTOR7M.js → chunk-6ZVI7LUY.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-X6NJC3IC.js → chunk-75OFBY5R.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-MRW5HD2D.js → chunk-7O3E4LPT.js} +4 -22
- package/dist/safe-bash/command-chunks/{chunk-TEVJJPTC.js → chunk-7U7EXOXX.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-6CYTRQ24.js → chunk-7VTKQUA5.js} +20 -17
- package/dist/safe-bash/command-chunks/{chunk-BZPAWTUL.js → chunk-AEF5BA3D.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-63R3FEZJ.js → chunk-AIV5BF5W.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-AYUTO323.js → chunk-AKJG2XD3.js} +2 -18
- package/dist/safe-bash/command-chunks/{chunk-J34TZVMW.js → chunk-ALDC4XP4.js} +0 -5
- package/dist/safe-bash/command-chunks/{chunk-CKXV2CLD.js → chunk-ARBYOQUZ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-44AHAB5O.js → chunk-BDSMROQZ.js} +1 -4
- package/dist/safe-bash/command-chunks/{chunk-53P53XFM.js → chunk-BPE5INLI.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-OT4LZMLB.js → chunk-BR73BIOW.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WB5SVIG7.js → chunk-C5YYCQHW.js} +498 -88
- package/dist/safe-bash/command-chunks/{chunk-EUSPTFAX.js → chunk-CAP7ZJSY.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-DWFLVJC6.js → chunk-CCRHMAU5.js} +2 -1
- package/dist/safe-bash/command-chunks/{chunk-GI4CJED2.js → chunk-CQTRW45K.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-N2F74VRO.js → chunk-CZ7EN3JG.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-KKG4BAFZ.js → chunk-DIEPXUM4.js} +6 -0
- package/dist/safe-bash/command-chunks/{chunk-QJAFJP2G.js → chunk-DZCY63VJ.js} +12 -10
- package/dist/safe-bash/command-chunks/{chunk-QUENU6GM.js → chunk-E55UKBIE.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-HLGKIZ25.js → chunk-F6OYH562.js} +2 -0
- package/dist/safe-bash/command-chunks/{chunk-MC3VWLIZ.js → chunk-FDBUV4HJ.js} +28 -19
- package/dist/safe-bash/command-chunks/{chunk-7FKUC34S.js → chunk-FPVUD6TH.js} +6 -3
- package/dist/safe-bash/command-chunks/{chunk-E2LB7FRT.js → chunk-FXOA7RBK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QWIDNAAK.js → chunk-FZTK4MFI.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-K543PB3I.js → chunk-G66QUHIZ.js} +6 -35
- package/dist/safe-bash/command-chunks/{chunk-YJDV76GL.js → chunk-GFQZCKO6.js} +29 -19
- package/dist/safe-bash/command-chunks/{chunk-FKKB5X5V.js → chunk-GOB777HR.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IYPAQ7PH.js → chunk-GRBWW4SG.js} +6 -0
- package/dist/safe-bash/command-chunks/{chunk-PPNBNFAU.js → chunk-GYQ2HAKQ.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-PJJUYO3R.js → chunk-II77KPZN.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-VL67NWNS.js → chunk-JDYXY44P.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-4QJOYXVB.js → chunk-JV7LBUTP.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IKS2YXZQ.js → chunk-K67MWWWH.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-BKCNF5U3.js → chunk-KQLD3AED.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-UMDIOL3O.js → chunk-KXU3IRUO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QZF3SINC.js → chunk-LAOM65EE.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-HFII3QYO.js → chunk-LWS62ISU.js} +46 -32
- package/dist/safe-bash/command-chunks/{chunk-BZDDAPSV.js → chunk-LWSBAWLT.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-U6G67N23.js → chunk-MIXBO6U7.js} +18 -5
- package/dist/safe-bash/command-chunks/{chunk-JQ74HC37.js → chunk-MQFIPHIQ.js} +23 -50
- package/dist/safe-bash/command-chunks/{chunk-ZJBR5Q5I.js → chunk-MSFXC3OC.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-NI7MKJPN.js → chunk-MTQH74CF.js} +3 -55
- package/dist/safe-bash/command-chunks/chunk-MWUZZWXK.js +354 -0
- package/dist/safe-bash/command-chunks/{chunk-RVLO4DYT.js → chunk-N4PFUSRM.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-D4OP2BR3.js → chunk-NKFYQSES.js} +1 -2
- package/dist/safe-bash/command-chunks/{chunk-NGWB2YBL.js → chunk-O4JQSB7O.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-7L24L4UO.js → chunk-OQU6UT6X.js} +2 -20
- package/dist/safe-bash/command-chunks/{chunk-TYCGMRLM.js → chunk-OYYV7ZAF.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-SVULUDOP.js → chunk-P2N33UMN.js} +20 -81
- package/dist/safe-bash/command-chunks/{chunk-Q7Q5GM5S.js → chunk-P5APDEFB.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-SAMH7SQE.js → chunk-PCEFOYA3.js} +237 -145
- package/dist/safe-bash/command-chunks/{chunk-3HXDA5PT.js → chunk-PMBFZXTK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-4Y3WVMK4.js → chunk-PV66YWHB.js} +1 -0
- package/dist/safe-bash/command-chunks/{chunk-AXK3H4PX.js → chunk-QJ33BHI4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-3LSOYLNV.js → chunk-QKFSRZGQ.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-JZSNU2MY.js → chunk-QKJLP53H.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-LC2MFKT4.js → chunk-RMWQAAO5.js} +24 -25
- package/dist/safe-bash/command-chunks/{chunk-QDTBMSBE.js → chunk-RO62EWX6.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-4C6QI5BQ.js → chunk-RZZI24ZE.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-PFAADCB5.js → chunk-SDNBCQ3X.js} +10 -24
- package/dist/safe-bash/command-chunks/{chunk-36O5OT7E.js → chunk-T35Y7YQD.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-6HMX4CQS.js → chunk-TGSNCQSR.js} +44 -16
- package/dist/safe-bash/command-chunks/{chunk-5T7CRJHW.js → chunk-TIOCQVUQ.js} +4 -7
- package/dist/safe-bash/command-chunks/{chunk-T5H5UJQ3.js → chunk-TNOA7FCQ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-GN2TKLE7.js → chunk-TS65BJHG.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-7RGB363W.js → chunk-TSCGT46G.js} +3 -2
- package/dist/safe-bash/command-chunks/{chunk-KBEURXFF.js → chunk-UN6WS55J.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-SX2X3IH4.js → chunk-V2V5OCL3.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-ERYJLO6G.js → chunk-V7A7DRTU.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-5SHGJ7NO.js → chunk-VA5ZHYYA.js} +73 -33
- package/dist/safe-bash/command-chunks/{chunk-XETLEHZP.js → chunk-VPR5LQYX.js} +3 -2
- package/dist/safe-bash/command-chunks/{chunk-3DT2YOGW.js → chunk-VSRGNQCP.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-J5SN3PZ3.js → chunk-VXSLJH7G.js} +53 -3
- package/dist/safe-bash/command-chunks/{chunk-PXYOWWMV.js → chunk-W7RAD4EW.js} +4 -3
- package/dist/safe-bash/command-chunks/{chunk-YGC6OS5O.js → chunk-WECIOOQB.js} +5 -8
- package/dist/safe-bash/command-chunks/{chunk-HHP343KT.js → chunk-WTECBRU4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-AO6Z5EQ7.js → chunk-WVE64WM2.js} +6 -5
- package/dist/safe-bash/command-chunks/{chunk-Z7RVSD5K.js → chunk-WVHONVZ4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QNIMV57G.js → chunk-XNLFHHOC.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-XAFSZDY2.js → chunk-XS72HTMA.js} +11 -0
- package/dist/safe-bash/command-chunks/{chunk-KYSPGS33.js → chunk-YIQACGEW.js} +2 -0
- package/dist/safe-bash/command-chunks/{chunk-NAY27PXB.js → chunk-YOFC45RK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-QI7LGHJJ.js → chunk-Z45N42QC.js} +21 -6
- package/dist/safe-bash/command-chunks/{chunk-67IQF5GC.js → chunk-ZYHTWNAE.js} +23 -9
- package/dist/safe-bash/command-chunks/{chunk-STC3LEWJ.js → chunk-ZYXH3B66.js} +5 -3
- package/dist/safe-bash/commands/bytes/compression/index.js +3 -2
- package/dist/safe-bash/commands/copy-preserve.d.ts +1 -0
- package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
- package/dist/safe-bash/commands/docx/index.browser.js +1 -1
- package/dist/safe-bash/commands/execution.js +19 -13
- package/dist/safe-bash/commands/factor/index.browser.js +2 -2
- package/dist/safe-bash/commands/filesystem.d.ts +1 -1
- package/dist/safe-bash/commands/filesystem.js +17 -13
- package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
- package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
- package/dist/safe-bash/commands/htmlq/index.d.ts +1 -1
- package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
- package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
- package/dist/safe-bash/commands/llm/index.browser.js +2 -2
- package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
- package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
- package/dist/safe-bash/commands/media/index.browser.js +1 -1
- package/dist/safe-bash/commands/network/curl.d.ts +1 -1
- package/dist/safe-bash/commands/network/curl.js +1 -3
- package/dist/safe-bash/commands/network/index.browser.js +4 -4
- package/dist/safe-bash/commands/network/platform-portable.d.ts +1 -5
- package/dist/safe-bash/commands/network/platform-portable.js +1 -26
- package/dist/safe-bash/commands/network/public.d.ts +2 -2
- package/dist/safe-bash/commands/network/public.js +2 -2
- package/dist/safe-bash/commands/network/transport.js +2 -2
- package/dist/safe-bash/commands/network/wget.d.ts +1 -1
- package/dist/safe-bash/commands/network/wget.js +1 -3
- package/dist/safe-bash/commands/node/filesystem.js +3 -2
- package/dist/safe-bash/commands/node/index.browser.js +8 -8
- package/dist/safe-bash/commands/node/types.js +1 -1
- package/dist/safe-bash/commands/op/index.browser.js +3 -3
- package/dist/safe-bash/commands/pr/index.browser.js +2 -2
- package/dist/safe-bash/commands/python/host-capabilities.js +31 -14
- package/dist/safe-bash/commands/python/index.browser.js +11 -11
- package/dist/safe-bash/commands/python/manifest.d.ts +1 -0
- package/dist/safe-bash/commands/python/manifest.js +6 -3
- package/dist/safe-bash/commands/python/shell-capability.d.ts +1 -0
- package/dist/safe-bash/commands/python/shell-capability.js +3 -2
- package/dist/safe-bash/commands/python/worker.browser.js +3 -3
- package/dist/safe-bash/commands/regex-execution/public.browser.js +4 -4
- package/dist/safe-bash/commands/safejs/runtime.js +16 -7
- package/dist/safe-bash/commands/standard.d.ts +1 -0
- package/dist/safe-bash/commands/standard.js +2 -1
- package/dist/safe-bash/commands/streams.js +6 -24
- package/dist/safe-bash/commands/text.js +268 -364
- package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
- package/dist/safe-bash/commands/xml/index.browser.js +2 -2
- package/dist/safe-bash/commands/yq/index.browser.js +2 -2
- package/dist/safe-bash/core.browser.js +1 -1
- package/dist/safe-bash/core.d.ts +6 -1
- package/dist/safe-bash/core.js +1 -1
- package/dist/safe-bash/full-core.browser.js +108 -104
- package/dist/safe-bash/jobs.browser.js +5 -5
- package/dist/safe-bash/opt-in/commands/dd/index.js +2 -0
- package/dist/safe-bash/opt-in/optional/commands/shuf/options.d.ts +1 -0
- package/dist/safe-bash/opt-in/optional/commands/shuf/options.js +2 -4
- package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +2 -1
- package/dist/safe-bash/optional-host.browser.js +11 -11
- package/dist/safe-bash/plugins/composition.d.ts +1 -0
- package/dist/safe-bash/plugins/composition.js +3 -8
- package/dist/safe-bash/plugins/index.browser.js +27 -27
- package/dist/safe-bash/registry-entry.browser.js +28 -28
- package/dist/safe-bash/shell/arrays/bindings.js +1 -1
- package/dist/safe-bash/shell/arrays/state.js +4 -0
- package/dist/safe-bash/shell/brace-expansion.js +1 -1
- package/dist/safe-bash/shell/dynamic-variables.d.ts +10 -0
- package/dist/safe-bash/shell/dynamic-variables.js +25 -0
- package/dist/safe-bash/shell/parser.js +8 -1
- package/dist/safe-bash/shell/runtime.d.ts +4 -4
- package/dist/safe-bash/shell/runtime.js +291 -741
- package/dist/safe-bash/shell/shell.js +2 -31
- package/dist/safe-bash/shell-entry.browser.js +25 -25
- package/dist/safe-bash/trap.browser.js +4 -4
- package/dist/safe-bash/yq-browser/index.js +1 -1
- package/dist/safe-bash-base-encoding-engine/base.js +2 -2
- package/dist/safe-bash-base-encoding-engine/shared.js +1 -1
- package/dist/safe-bash-byte-input-engine/index.d.ts +3 -2
- package/dist/safe-bash-byte-input-engine/index.js +4 -1
- package/dist/safe-bash-checksum-engine/index.js +13 -6
- package/dist/safe-bash-command-apply-patch/apply.d.ts +1 -1
- package/dist/safe-bash-command-apply-patch/apply.js +4 -3
- package/dist/safe-bash-command-apply-patch/index.js +3 -3
- package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
- package/dist/safe-bash-command-apply-patch/parser.js +1 -1
- package/dist/safe-bash-command-awk/awk-inspection.js +2 -2
- package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
- package/dist/safe-bash-command-awk/awk-syntax.d.ts +1 -1
- package/dist/safe-bash-command-awk/awk-syntax.js +2 -2
- package/dist/safe-bash-command-awk/awk-values.js +1 -1
- package/dist/safe-bash-command-awk/awk.js +5 -5
- package/dist/safe-bash-command-awk/index.js +5 -5
- package/dist/safe-bash-command-bc/index.d.ts +2 -0
- package/dist/safe-bash-command-bc/index.js +123 -92
- package/dist/safe-bash-command-column/column.js +5 -5
- package/dist/safe-bash-command-column/display.d.ts +1 -1
- package/dist/safe-bash-command-column/display.js +1 -1
- package/dist/safe-bash-command-column/index.js +5 -5
- package/dist/safe-bash-command-column/internal.d.ts +0 -2
- package/dist/safe-bash-command-column/internal.js +1 -1
- package/dist/safe-bash-command-column/layout.js +4 -4
- package/dist/safe-bash-command-column/table.js +2 -2
- package/dist/safe-bash-command-comm/comm.js +1 -1
- package/dist/safe-bash-command-comm/index.js +1 -1
- package/dist/safe-bash-command-csvcut/index.d.ts +1 -0
- package/dist/safe-bash-command-csvcut/index.js +1 -0
- package/dist/safe-bash-command-csvgrep/index.d.ts +1 -0
- package/dist/safe-bash-command-csvgrep/index.js +2 -2
- package/dist/safe-bash-command-csvkit/index.js +9 -9
- package/dist/safe-bash-command-csvkit/sync-support.js +1 -1
- package/dist/safe-bash-command-curl/curl.js +1 -1
- package/dist/safe-bash-command-curl/index.js +1 -1
- package/dist/safe-bash-command-dd/index.js +2 -0
- package/dist/safe-bash-command-diff/diff.js +1 -1
- package/dist/safe-bash-command-diff/index.js +1 -1
- package/dist/safe-bash-command-exiftool/index.d.ts +1 -0
- package/dist/safe-bash-command-fd/index.js +9 -9
- package/dist/safe-bash-command-ffmpeg/index.js +31 -8
- package/dist/safe-bash-command-file/index.js +1 -1
- package/dist/safe-bash-command-file/shared.js +1 -1
- package/dist/safe-bash-command-find/find.js +1 -1
- package/dist/safe-bash-command-find/index.js +1 -1
- package/dist/safe-bash-command-gzip/index.js +3 -2
- package/dist/safe-bash-command-hexdump/command.js +4 -4
- package/dist/safe-bash-command-hexdump/custom.d.ts +24 -0
- package/dist/safe-bash-command-hexdump/index.js +4 -4
- package/dist/safe-bash-command-hexdump/internal.d.ts +2 -0
- package/dist/safe-bash-command-hexdump/internal.js +1 -1
- package/dist/safe-bash-command-hexdump/io.js +2 -2
- package/dist/safe-bash-command-hexdump/options.d.ts +3 -0
- package/dist/safe-bash-command-hexdump/options.js +2 -2
- package/dist/safe-bash-command-hostname/index.js +1 -1
- package/dist/safe-bash-command-html-to-markdown/budget.js +1 -1
- package/dist/safe-bash-command-html-to-markdown/entities.js +3 -3
- package/dist/safe-bash-command-html-to-markdown/index.js +6 -6
- package/dist/safe-bash-command-html-to-markdown/input.js +5 -5
- package/dist/safe-bash-command-html-to-markdown/parser.d.ts +1 -0
- package/dist/safe-bash-command-html-to-markdown/parser.js +4 -4
- package/dist/safe-bash-command-html-to-markdown/render.js +5 -5
- package/dist/safe-bash-command-html-to-markdown/text.js +2 -2
- package/dist/safe-bash-command-htmlq/index.d.ts +1 -0
- package/dist/safe-bash-command-htmlq/index.js +27 -9
- package/dist/safe-bash-command-iconv/codec.js +1 -1
- package/dist/safe-bash-command-iconv/command.js +2 -2
- package/dist/safe-bash-command-iconv/index.js +2 -2
- package/dist/safe-bash-command-imagemagick/index.js +24 -6
- package/dist/safe-bash-command-join/index.js +1 -1
- package/dist/safe-bash-command-join/join.js +1 -1
- package/dist/safe-bash-command-jq/index.js +1 -1
- package/dist/safe-bash-command-jq/jq.js +1 -1
- package/dist/safe-bash-command-less/index.js +43 -28
- package/dist/safe-bash-command-mmdc/index.d.ts +1 -0
- package/dist/safe-bash-command-numfmt/index.js +0 -11
- package/dist/safe-bash-command-od/index.js +101 -68
- package/dist/safe-bash-command-pandoc/command.js +1 -1
- package/dist/safe-bash-command-pandoc/index.js +1 -1
- package/dist/safe-bash-command-paste/index.js +1 -1
- package/dist/safe-bash-command-paste/paste.js +1 -1
- package/dist/safe-bash-command-pathchk/index.js +3 -13
- package/dist/safe-bash-command-pdfimages/index.js +27 -11
- package/dist/safe-bash-command-pdfinfo/index.js +19 -10
- package/dist/safe-bash-command-pdftk/index.js +3 -3
- package/dist/safe-bash-command-pdftoppm/index.js +26 -10
- package/dist/safe-bash-command-pdftotext/index.js +27 -13
- package/dist/safe-bash-command-qpdf/index.js +5 -5
- package/dist/safe-bash-command-sed/index.js +1 -1
- package/dist/safe-bash-command-sed/sed.js +1 -1
- package/dist/safe-bash-command-shuf/options.d.ts +1 -0
- package/dist/safe-bash-command-shuf/options.js +2 -4
- package/dist/safe-bash-command-shuf/shuf.js +2 -1
- package/dist/safe-bash-command-soffice/index.js +20 -16
- package/dist/safe-bash-command-split/index.js +3 -3
- package/dist/safe-bash-command-split/io.js +1 -1
- package/dist/safe-bash-command-split/outputs.js +2 -2
- package/dist/safe-bash-command-split/split.js +3 -3
- package/dist/safe-bash-command-sqlite3/btree.d.ts +1 -0
- package/dist/safe-bash-command-sqlite3/engine.d.ts +6 -0
- package/dist/safe-bash-command-sqlite3/index.js +284 -85
- package/dist/safe-bash-command-ssconvert/commands.js +9 -9
- package/dist/safe-bash-command-ssconvert/core.js +8 -8
- package/dist/safe-bash-command-ssconvert/formats/csv.js +9 -9
- package/dist/safe-bash-command-ssconvert/formats/ods.js +8 -8
- package/dist/safe-bash-command-ssconvert/formats/spreadsheetml.js +2 -2
- package/dist/safe-bash-command-ssconvert/formats/xls.js +9 -9
- package/dist/safe-bash-command-ssconvert/formats/xlsx.js +8 -8
- package/dist/safe-bash-command-ssconvert/index.js +20 -20
- package/dist/safe-bash-command-tar/extract.js +1 -1
- package/dist/safe-bash-command-tar/index.js +5 -4
- package/dist/safe-bash-command-tar/modes.js +2 -2
- package/dist/safe-bash-command-tree/arguments.js +3 -3
- package/dist/safe-bash-command-tree/charset.js +1 -1
- package/dist/safe-bash-command-tree/index.js +4 -4
- package/dist/safe-bash-command-tree/io.js +1 -1
- package/dist/safe-bash-command-tree/pattern.js +2 -2
- package/dist/safe-bash-command-tree/tree.js +4 -4
- package/dist/safe-bash-command-unrtf/index.js +14 -7
- package/dist/safe-bash-command-unzip/index.js +1 -1
- package/dist/safe-bash-command-unzip/unzip.js +1 -1
- package/dist/safe-bash-command-wget/index.js +1 -1
- package/dist/safe-bash-command-wget/wget.js +1 -1
- package/dist/safe-bash-command-xan/argv.d.ts +1 -1
- package/dist/safe-bash-command-xan/argv.js +1 -1
- package/dist/safe-bash-command-xan/commands.js +5 -3
- package/dist/safe-bash-command-xan/csv.d.ts +1 -1
- package/dist/safe-bash-command-xan/csv.js +1 -1
- package/dist/safe-bash-command-xan/index.js +7 -7
- package/dist/safe-bash-command-xan/io.js +3 -3
- package/dist/safe-bash-command-xmllint/index.js +1 -1
- package/dist/safe-bash-command-xxd/index.js +105 -91
- package/dist/safe-bash-command-xz/command.d.ts +2 -0
- package/dist/safe-bash-command-xz/index.d.ts +1 -1
- package/dist/safe-bash-command-xz/index.js +8 -0
- package/dist/safe-bash-command-yq/query.js +1 -1
- package/dist/safe-bash-command-zip/index.js +1 -1
- package/dist/safe-bash-command-zip/zip.js +1 -1
- package/dist/safe-bash-contracts/escaping.js +3 -3
- package/dist/safe-bash-contracts/filesystem-output.js +2 -2
- package/dist/safe-bash-contracts/index.d.ts +1 -0
- package/dist/safe-bash-contracts/index.js +7 -3
- package/dist/safe-bash-contracts/io.d.ts +4 -1
- package/dist/safe-bash-contracts/io.js +3 -1
- package/dist/safe-bash-contracts/managed-abort.d.ts +10 -0
- package/dist/safe-bash-contracts/output.js +2 -2
- package/dist/safe-bash-diff-engine/index.js +1 -1
- package/dist/safe-bash-diff-engine/shared.d.ts +3 -2
- package/dist/safe-bash-diff-engine/shared.js +1 -1
- package/dist/safe-bash-io-engine/commands/archive/internal.js +5 -23
- package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
- package/dist/safe-bash-io-engine/commands/text-programs/shared.js +33 -44
- package/dist/safe-bash-io-engine/internal.js +1 -1
- package/dist/safe-bash-io-engine/shell/pattern.js +1 -1
- package/dist/safe-bash-io-engine/shell/string-operations.js +1 -1
- package/dist/safe-bash-mcp/index.browser.d.ts +155 -35
- package/dist/safe-bash-mcp/index.browser.js +416 -0
- package/dist/safe-bash-mcp/index.d.ts +54 -2
- package/dist/safe-bash-mcp/index.js +283 -89
- package/dist/safe-bash-network-engine/aggregate.js +2 -2
- package/dist/safe-bash-network-engine/args.js +4 -4
- package/dist/safe-bash-network-engine/authorizer.js +1 -1
- package/dist/safe-bash-network-engine/body.js +6 -6
- package/dist/safe-bash-network-engine/decode.d.ts +1 -1
- package/dist/safe-bash-network-engine/decode.js +3 -4
- package/dist/safe-bash-network-engine/fetch-transport.js +3 -3
- package/dist/safe-bash-network-engine/form-content-type.js +2 -2
- package/dist/safe-bash-network-engine/form-headers.js +2 -2
- package/dist/safe-bash-network-engine/glob.js +1 -1
- package/dist/safe-bash-network-engine/index.js +4 -4
- package/dist/safe-bash-network-engine/input.js +6 -6
- package/dist/safe-bash-network-engine/output.js +2 -2
- package/dist/safe-bash-network-engine/platform-portable.js +3 -3
- package/dist/safe-bash-network-engine/shared.js +2 -2
- package/dist/safe-bash-network-engine/types.d.ts +7 -2
- package/dist/safe-bash-network-engine/types.js +1 -1
- package/dist/safe-bash-network-engine/url.js +2 -2
- package/dist/safe-bash-query-engine/capture.js +3 -3
- package/dist/safe-bash-query-engine/delpaths.js +3 -3
- package/dist/safe-bash-query-engine/formats.js +2 -2
- package/dist/safe-bash-query-engine/index.js +11 -11
- package/dist/safe-bash-query-engine/indices.js +3 -3
- package/dist/safe-bash-query-engine/input.js +1 -1
- package/dist/safe-bash-query-engine/interpreter.js +9 -9
- package/dist/safe-bash-query-engine/parser.js +1 -1
- package/dist/safe-bash-query-engine/query-core.js +11 -11
- package/dist/safe-bash-query-engine/regex.js +4 -4
- package/dist/safe-bash-query-engine/splits.js +5 -5
- package/dist/safe-bash-query-engine/values.js +2 -2
- package/dist/safe-bash-regex-engine/ere/matcher.js +102 -30
- package/dist/safe-bash-regex-engine/execution/bounded-provider.js +55 -67
- package/dist/safe-bash-regex-engine/execution/portable.d.ts +0 -1
- package/dist/safe-bash-regex-engine/execution/portable.js +6 -10
- package/dist/safe-bash-regex-engine/execution/protocol.d.ts +0 -5
- package/dist/safe-bash-regex-engine/execution/protocol.js +1 -3
- package/dist/safe-bash-regex-engine/index.js +6 -4
- package/dist/safe-bash-regex-engine/text/budget.d.ts +1 -0
- package/dist/safe-bash-regex-engine/text/budget.js +1 -1
- package/dist/safe-bash-regex-engine/text/regex.d.ts +14 -0
- package/dist/safe-bash-regex-engine/text/regex.js +6 -4
- package/dist/safe-bash-regex-engine/text/replacement-buffer.js +2 -2
- package/dist/safe-bash-regex-engine/text/rust-syntax.js +2 -2
- package/dist/safe-bash-search-engine/grep.js +189 -227
- package/dist/safe-bash-table-text-engine/table-text/internal.d.ts +7 -5
- package/dist/safe-bash-table-text-engine/table-text/internal.js +39 -21
- package/dist/safe-playwright-cloudflare/browser-trace-budget.js +6 -2
- package/dist/spreadsheet-engine/codecs/odf-hyperlinks.js +8 -2
- package/dist/spreadsheet-engine/formulas/functions/captured-bessel-phase.js +2 -2
- package/dist/spreadsheet-engine/formulas/label-references.js +54 -33
- package/dist/spreadsheet-engine/formulas/parser.js +3 -1
- package/dist/spreadsheet-engine/formulas/rewriting.js +13 -3
- package/dist/spreadsheet-format-xls/biff-data-tables.js +4 -6
- package/dist/spreadsheet-format-xls/biff-formulas.js +3 -0
- package/dist/spreadsheet-format-xls/biff-label-ranges.js +9 -6
- package/dist/spreadsheet-format-xls/biff.js +1 -1
- package/dist/xlsx-ast/xlsx.js +8 -5
- package/package.json +9 -8
- package/dist/safe-bash/command-chunks/chunk-KAGBORIC.js +0 -88
- /package/dist/safe-bash/command-chunks/{chunk-BWNXWI33.js → chunk-2LMZVE3I.js} +0 -0
|
@@ -67,7 +67,8 @@ function parseUrl(text, redirect = false) {
|
|
|
67
67
|
function requestHeaders(args, contentType, user, scoped, maxBytes, previous) {
|
|
68
68
|
const json = args.data[0]?.kind === "json";
|
|
69
69
|
if (json) contentType = "application/json";
|
|
70
|
-
const defaults = [["Accept", json ? "application/json" : "*/*"]
|
|
70
|
+
const defaults = [["Accept", json ? "application/json" : "*/*"]];
|
|
71
|
+
if (args.agent !== "") defaults.push(["User-Agent", args.agent ?? "virtual-bash-curl/0.0"]);
|
|
71
72
|
if (contentType !== void 0) defaults.push(["Content-Type", contentType]);
|
|
72
73
|
if (args.compressed) defaults.push(["Accept-Encoding", "gzip, deflate"]);
|
|
73
74
|
const referer = args.autoReferer && previous !== void 0 ? previous : args.referer;
|
|
@@ -372,10 +373,12 @@ async function transfer(context, args, input, limits, transport, authorize, star
|
|
|
372
373
|
values.method = method;
|
|
373
374
|
let denyPrivateNetworks = false;
|
|
374
375
|
let allowed;
|
|
376
|
+
const headers = requestHeaders(resumeOffset ? { ...args, range: `${resumeOffset}-` } : args, currentBody?.contentType, args.user ?? parsed.user, credentialsInScope, limits.maxHeaderBytes, previous);
|
|
375
377
|
try {
|
|
376
378
|
allowed = await withSignal(() => authorize({
|
|
377
379
|
url: currentUrl,
|
|
378
380
|
method,
|
|
381
|
+
headers,
|
|
379
382
|
attempt,
|
|
380
383
|
signal,
|
|
381
384
|
requirePrivateNetworkDeny() {
|
|
@@ -393,7 +396,6 @@ async function transfer(context, args, input, limits, transport, authorize, star
|
|
|
393
396
|
if (policy.denyPrivateNetworks && transport.supportsPrivateNetworkDeny !== true) {
|
|
394
397
|
throw new CurlError(7, "Transport cannot enforce private network policy");
|
|
395
398
|
}
|
|
396
|
-
const headers = requestHeaders(resumeOffset ? { ...args, range: `${resumeOffset}-` } : args, currentBody?.contentType, args.user ?? parsed.user, credentialsInScope, limits.maxHeaderBytes, previous);
|
|
397
399
|
if (args.verbose) await writeBytes(context.stderr, encode(`> ${method} ${current.origin}
|
|
398
400
|
${headers.map(([name]) => `> ${name}: [redacted]
|
|
399
401
|
`).join("")}`), signal);
|
|
@@ -545,7 +547,7 @@ ${headers.map(([name]) => `> ${name}: [redacted]
|
|
|
545
547
|
}
|
|
546
548
|
if (!final.contentDecoded && length && /^\d+$/.test(length) && downloaded !== Number(length)) throw new CurlError(18, "Partial HTTP response body");
|
|
547
549
|
})();
|
|
548
|
-
const decoded = args.compressed && !args.raw && !final.contentDecoded && encoding ? decodeContent(encoded, encoding, bodySignal, args.maxFileSize) : encoded;
|
|
550
|
+
const decoded = args.compressed && !args.raw && !final.contentDecoded && encoding ? decodeContent(encoded, encoding, bodySignal, args.maxFileSize, limits.maxEncodingLayers) : encoded;
|
|
549
551
|
let outputBytes = 0;
|
|
550
552
|
try {
|
|
551
553
|
for await (const chunk of decoded) {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { withInputByteBudget } from "../../../../safe-bash-contracts/index.js";
|
|
1
2
|
import { createGzipCommands } from "../../../../safe-bash-command-gzip/index.js";
|
|
2
3
|
import { gzip as pakoGzip, ungzip as pakoUngzip } from "pako";
|
|
3
4
|
import bz2Factory from "../../../../safe-bash-compression-engine/native/bz2.js";
|
|
@@ -22,7 +23,7 @@ export function createCompressionCommands(config = {}) {
|
|
|
22
23
|
if (maxDecodedBytes !== undefined && maxDecodedBytes !== Infinity && (!Number.isSafeInteger(maxDecodedBytes) || maxDecodedBytes < 0)) {
|
|
23
24
|
throw new RangeError("maxDecodedBytes must be a nonnegative safe integer or Infinity");
|
|
24
25
|
}
|
|
25
|
-
const commands = profiles.flatMap(profile => profile.format === "gzip" ? createGzipCommands(config) : profile.format === "bzip2" ? createBzip2Commands(config) : profile.names.map((name) => define(name, async (context) => {
|
|
26
|
+
const commands = profiles.flatMap(profile => profile.format === "gzip" ? createGzipCommands(config) : profile.format === "bzip2" ? createBzip2Commands(config) : profile.names.map((name) => define(name, withInputByteBudget(async (context) => {
|
|
26
27
|
const options = parseOptions(name, context.args);
|
|
27
28
|
if (options.help) {
|
|
28
29
|
await output(context, `Usage: ${name} [OPTION]... [FILE]...\n-c, --stdout, --to-stdout\n-d, --decompress, --uncompress\n-k, --keep\n-f, --force\n-t, --test\n${options.format === "zstd" ? "-1..-9, --best\nHigher levels and --fast[=NUM] are unsupported by the bounded codec.\n" : "-1..-9, --fast, --best\n"}${options.format === "zstd" ? "-q, --quiet (repeat to suppress errors)\n" : ""}${options.format === "gzip" ? "-q, --quiet (suppress warnings)\n-r, --recursive (traverse directories without following symlinks)\n-n, --no-name (always enabled)\n" : `Default compression level: ${options.level}.\n`}-h, --help\nNo FILE or FILE '-' uses stdin; file output uses private VFS staging.\n`);
|
|
@@ -80,7 +81,7 @@ export function createCompressionCommands(config = {}) {
|
|
|
80
81
|
}
|
|
81
82
|
}
|
|
82
83
|
return { exitCode };
|
|
83
|
-
})));
|
|
84
|
+
}))));
|
|
84
85
|
const xzCmds = createXzCommands(config);
|
|
85
86
|
if (maxDecodedBytes === undefined || maxDecodedBytes === Infinity) {
|
|
86
87
|
for (const c of [...commands, ...xzCmds])
|
|
@@ -2,6 +2,7 @@ import { type CommandContext, type FileStat } from "../contracts/index.js";
|
|
|
2
2
|
import type { copyOptions } from "./copy-backup.js";
|
|
3
3
|
export type CopyAttribute = "mode" | "ownership" | "timestamps" | "links";
|
|
4
4
|
export type CopyOptions = ReturnType<typeof copyOptions> & {
|
|
5
|
+
readonly maxRecursiveDirectoryDepth?: number;
|
|
5
6
|
readonly confirmOverwrite?: (operand: string) => Promise<boolean>;
|
|
6
7
|
};
|
|
7
8
|
export declare function admitCopyPreservation(context: CommandContext, preserve: ReadonlySet<CopyAttribute>, source: FileStat, target: string, existing?: FileStat): Promise<void>;
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createCsplitCommands,
|
|
4
4
|
csplitCommands,
|
|
5
5
|
evalSyncCsplit
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-UTBUUFDM.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createCsplitCommand,
|
|
10
10
|
createCsplitCommands,
|
|
@@ -166,8 +166,8 @@ export function executionCommands(execute, configuration = {}) {
|
|
|
166
166
|
let lastDelimMode;
|
|
167
167
|
const longOptions = { "arg-file": "a", "max-lines": "L", null: "0", "no-run-if-empty": "r", "max-args": "n", "max-chars": "s", replace: "I", delimiter: "d", verbose: "t", "max-procs": "P", exit: "x", eof: "E", "process-slot-var": "process-slot-var:" };
|
|
168
168
|
const parsed = options(argumentValues.args, shortOptions, longOptions, true, index => { operandIndices.push(index); }, (key, index, offset) => { if (key === "I")
|
|
169
|
-
replacementOrigin = { index, offset }; }, key => {
|
|
170
|
-
if (key === "I" || key === "L" || key === "n")
|
|
169
|
+
replacementOrigin = { index, offset }; }, (key, optionValue) => {
|
|
170
|
+
if (key === "I" || key === "L" || key === "n" && !(batching === "I" && integer(optionValue, 1) === 1))
|
|
171
171
|
batching = key;
|
|
172
172
|
if (key === "0" || key === "d")
|
|
173
173
|
lastDelimMode = key;
|
|
@@ -189,7 +189,7 @@ export function executionCommands(execute, configuration = {}) {
|
|
|
189
189
|
const argumentFile = value(parsed, "a");
|
|
190
190
|
const childInput = argumentFile === undefined ? emptyInput() : context.stdin;
|
|
191
191
|
const childInputIsDefault = argumentFile === undefined ? true : context.stdinIsDefault;
|
|
192
|
-
const maxArgs = replacement
|
|
192
|
+
const maxArgs = replacement !== undefined ? 1 : batching === "n" ? integer(value(parsed, "n"), 1) : Infinity;
|
|
193
193
|
const size = value(parsed, "s");
|
|
194
194
|
const maxBytes = size === undefined || size === "Infinity" ? Infinity : integer(size, 1);
|
|
195
195
|
let delimiter = parsed.flags.has("0") ? "\0" : undefined;
|
|
@@ -703,9 +703,11 @@ export function evalSyncXargs(inBytes, opArgs, readFileSync) {
|
|
|
703
703
|
const v = a.slice(11);
|
|
704
704
|
if (!/^[1-9][0-9]*$/.test(v))
|
|
705
705
|
return undefined;
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
706
|
+
if (replaceStr === undefined || Number(v) !== 1) {
|
|
707
|
+
maxArgs = Number(v);
|
|
708
|
+
replaceStr = undefined;
|
|
709
|
+
maxLines = undefined;
|
|
710
|
+
}
|
|
709
711
|
i++;
|
|
710
712
|
continue;
|
|
711
713
|
}
|
|
@@ -733,9 +735,11 @@ export function evalSyncXargs(inBytes, opArgs, readFileSync) {
|
|
|
733
735
|
const v = a.startsWith("-n") && a.length > 2 ? a.slice(2) : opArgs[++i];
|
|
734
736
|
if (!v || !/^[1-9][0-9]*$/.test(v))
|
|
735
737
|
return undefined;
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
738
|
+
if (replaceStr === undefined || Number(v) !== 1) {
|
|
739
|
+
maxArgs = Number(v);
|
|
740
|
+
replaceStr = undefined;
|
|
741
|
+
maxLines = undefined;
|
|
742
|
+
}
|
|
739
743
|
i++;
|
|
740
744
|
continue;
|
|
741
745
|
}
|
|
@@ -796,9 +800,11 @@ export function evalSyncXargs(inBytes, opArgs, readFileSync) {
|
|
|
796
800
|
ok = false;
|
|
797
801
|
break;
|
|
798
802
|
}
|
|
799
|
-
|
|
800
|
-
|
|
801
|
-
|
|
803
|
+
if (replaceStr === undefined || Number(v) !== 1) {
|
|
804
|
+
maxArgs = Number(v);
|
|
805
|
+
replaceStr = undefined;
|
|
806
|
+
maxLines = undefined;
|
|
807
|
+
}
|
|
802
808
|
break;
|
|
803
809
|
}
|
|
804
810
|
else if (ch === "L") {
|
|
@@ -1120,7 +1126,7 @@ export function evalSyncXargs(inBytes, opArgs, readFileSync) {
|
|
|
1120
1126
|
runEcho(batch);
|
|
1121
1127
|
}
|
|
1122
1128
|
else {
|
|
1123
|
-
const limit = maxArgs ??
|
|
1129
|
+
const limit = maxArgs ?? Infinity;
|
|
1124
1130
|
for (let k = 0; k < tokens.length; k += limit) {
|
|
1125
1131
|
runEcho(tokens.slice(k, k + limit));
|
|
1126
1132
|
}
|
|
@@ -2,8 +2,8 @@ import {
|
|
|
2
2
|
createFactorCommand,
|
|
3
3
|
createFactorCommands,
|
|
4
4
|
factorCommands
|
|
5
|
-
} from "../../chunks/chunk-
|
|
6
|
-
import "../../chunks/chunk-
|
|
5
|
+
} from "../../chunks/chunk-AM5ESLPH.js";
|
|
6
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
7
7
|
export {
|
|
8
8
|
createFactorCommand,
|
|
9
9
|
createFactorCommands,
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type CommandDefinition, type CommandHandler } from "../contracts/index.js";
|
|
2
2
|
export declare const defaultMkdirExecutors: WeakSet<CommandHandler>;
|
|
3
3
|
export declare const defaultRmExecutors: WeakSet<CommandHandler>;
|
|
4
|
-
export declare function filesystemCommands(maxDirectoryEntries?: number): CommandDefinition[];
|
|
4
|
+
export declare function filesystemCommands(maxDirectoryEntries?: number, maxRecursiveDirectoryDepth?: number): CommandDefinition[];
|
|
5
5
|
export interface SyncFsStatNode {
|
|
6
6
|
readonly type: "file" | "directory" | "symlink";
|
|
7
7
|
readonly size: number;
|
|
@@ -27,7 +27,6 @@ import { backupCopyTarget, copyOptions, matchBackupMode, normalizeBackupSuffix }
|
|
|
27
27
|
import { admitCopyPreservation, preserveCopyMetadata } from "./copy-preserve.js";
|
|
28
28
|
// Operand directories start at depth zero; files inside the last admitted
|
|
29
29
|
// directory do not consume another directory-recursion level.
|
|
30
|
-
const MAX_RECURSIVE_DIRECTORY_DEPTH = 1024;
|
|
31
30
|
const MKDIR_LONG_OPTIONS = Object.freeze({ parents: "p", mode: "m", verbose: "v" });
|
|
32
31
|
const TOUCH_LONG_OPTIONS = Object.freeze({ "no-create": "c", "no-dereference": "h", reference: "r", date: "d", time: "time:" });
|
|
33
32
|
const MV_LONG_OPTIONS = Object.freeze({
|
|
@@ -312,8 +311,8 @@ async function copy(context, source, target, settings, readDirectory, top = true
|
|
|
312
311
|
if (targetStat && targetStat.type !== "directory")
|
|
313
312
|
throw new FsError("ENOTDIR", { path: target });
|
|
314
313
|
context.signal.throwIfAborted();
|
|
315
|
-
if (ancestors.size >
|
|
316
|
-
throw new FsError("ELOOP", { path: source, message: `cp directory depth limit exceeded (${
|
|
314
|
+
if (ancestors.size > (settings.maxRecursiveDirectoryDepth ?? Infinity)) {
|
|
315
|
+
throw new FsError("ELOOP", { path: source, message: `cp directory depth limit exceeded (${settings.maxRecursiveDirectoryDepth})` });
|
|
317
316
|
}
|
|
318
317
|
await admitFilesystemModes(context, "cp", [attributesOnly ? "attributes-recursive" : "recursive"], [target]);
|
|
319
318
|
const capabilities = await context.fs.capabilitiesFor?.(target, { signal: context.signal }) ?? context.fs.capabilities;
|
|
@@ -511,7 +510,10 @@ function modeText(stat) {
|
|
|
511
510
|
}
|
|
512
511
|
export const defaultMkdirExecutors = new WeakSet();
|
|
513
512
|
export const defaultRmExecutors = new WeakSet();
|
|
514
|
-
export function filesystemCommands(maxDirectoryEntries) {
|
|
513
|
+
export function filesystemCommands(maxDirectoryEntries, maxRecursiveDirectoryDepth = Infinity) {
|
|
514
|
+
if (maxRecursiveDirectoryDepth !== Infinity && (!Number.isSafeInteger(maxRecursiveDirectoryDepth) || maxRecursiveDirectoryDepth < 0)) {
|
|
515
|
+
throw new RangeError("maxRecursiveDirectoryDepth must be a nonnegative safe integer or Infinity");
|
|
516
|
+
}
|
|
515
517
|
const readDirectory = createDirectoryReader(maxDirectoryEntries);
|
|
516
518
|
const commands = [
|
|
517
519
|
define("mkdir", context => {
|
|
@@ -702,7 +704,7 @@ export function filesystemCommands(maxDirectoryEntries) {
|
|
|
702
704
|
}),
|
|
703
705
|
createTouchCommand(),
|
|
704
706
|
define("cp", async (context) => {
|
|
705
|
-
const parsed = copyOptions(context);
|
|
707
|
+
const parsed = { ...copyOptions(context), maxRecursiveDirectoryDepth };
|
|
706
708
|
if ((parsed.values.get("t")?.length ?? 0) > 1)
|
|
707
709
|
throw new UsageError("multiple target directories specified");
|
|
708
710
|
const destination = await destinations(context, parsed.operands, value(parsed, "t"), parsed.flags.has("T"));
|
|
@@ -1044,9 +1046,11 @@ export function filesystemCommands(maxDirectoryEntries) {
|
|
|
1044
1046
|
if (!parsed.flags.has("f"))
|
|
1045
1047
|
requireOperands(parsed.operands);
|
|
1046
1048
|
const recursive = parsed.flags.has("r") || parsed.flags.has("R");
|
|
1049
|
+
const recursiveTraversal = recursive && (interactive === "always" || maxRecursiveDirectoryDepth !== Infinity);
|
|
1047
1050
|
const backingMem = getRuntimeBackingFileSystem(context.fs);
|
|
1048
1051
|
const caps = context.fs.capabilities;
|
|
1049
1052
|
const fastStockMemory = interactive === "never" &&
|
|
1053
|
+
!recursiveTraversal &&
|
|
1050
1054
|
backingMem !== undefined &&
|
|
1051
1055
|
backingMem.capabilitiesFor === undefined &&
|
|
1052
1056
|
backingMem.symlinkCount === 0 &&
|
|
@@ -1132,14 +1136,14 @@ export function filesystemCommands(maxDirectoryEntries) {
|
|
|
1132
1136
|
}
|
|
1133
1137
|
if (stat.type === "directory" && !recursive && !parsed.flags.has("d"))
|
|
1134
1138
|
throw new FsError("EISDIR", { path });
|
|
1135
|
-
if (interactive === "always") {
|
|
1139
|
+
if (interactive === "always" || recursiveTraversal) {
|
|
1136
1140
|
const display = escapeText(operand, "display");
|
|
1137
1141
|
if (stat.type === "directory" && recursive) {
|
|
1138
|
-
if (depth >
|
|
1142
|
+
if (depth > maxRecursiveDirectoryDepth)
|
|
1139
1143
|
throw new FsError("ELOOP", { path });
|
|
1140
1144
|
const entries = await readDirectory(context, path, true);
|
|
1141
1145
|
if (entries.length) {
|
|
1142
|
-
if (!await confirm(`descend into directory '${display}'`))
|
|
1146
|
+
if (interactive === "always" && !await confirm(`descend into directory '${display}'`))
|
|
1143
1147
|
return false;
|
|
1144
1148
|
let removed = true;
|
|
1145
1149
|
for (const entry of entries)
|
|
@@ -1150,10 +1154,10 @@ export function filesystemCommands(maxDirectoryEntries) {
|
|
|
1150
1154
|
}
|
|
1151
1155
|
}
|
|
1152
1156
|
const type = stat.type === "file" ? stat.size === 0 ? "regular empty file" : "regular file" : stat.type === "symlink" ? "symbolic link" : "directory";
|
|
1153
|
-
if (!await confirm(`remove ${type} '${display}'`))
|
|
1157
|
+
if (interactive === "always" && !await confirm(`remove ${type} '${display}'`))
|
|
1154
1158
|
return false;
|
|
1155
1159
|
}
|
|
1156
|
-
if (stat.type === "directory" && (!recursive ||
|
|
1160
|
+
if (stat.type === "directory" && (!recursive || recursiveTraversal)) {
|
|
1157
1161
|
try {
|
|
1158
1162
|
await removeEmptyDirectory(context, path, readDirectory);
|
|
1159
1163
|
}
|
|
@@ -1633,8 +1637,8 @@ export function filesystemCommands(maxDirectoryEntries) {
|
|
|
1633
1637
|
if (ancestors.has(physical))
|
|
1634
1638
|
throw new FsError("ELOOP", { path });
|
|
1635
1639
|
context.signal.throwIfAborted();
|
|
1636
|
-
if (ancestors.size >
|
|
1637
|
-
throw new FsError("ELOOP", { path, message: `ls directory depth limit exceeded (${
|
|
1640
|
+
if (ancestors.size > maxRecursiveDirectoryDepth) {
|
|
1641
|
+
throw new FsError("ELOOP", { path, message: `ls directory depth limit exceeded (${maxRecursiveDirectoryDepth})` });
|
|
1638
1642
|
}
|
|
1639
1643
|
ancestors.add(physical);
|
|
1640
1644
|
try {
|
|
@@ -1712,7 +1716,7 @@ export function filesystemCommands(maxDirectoryEntries) {
|
|
|
1712
1716
|
for (const command of commands) {
|
|
1713
1717
|
if (command.name === "mkdir")
|
|
1714
1718
|
defaultMkdirExecutors.add(command.execute);
|
|
1715
|
-
else if (command.name === "rm")
|
|
1719
|
+
else if (command.name === "rm" && maxRecursiveDirectoryDepth === Infinity)
|
|
1716
1720
|
defaultRmExecutors.add(command.execute);
|
|
1717
1721
|
}
|
|
1718
1722
|
return commands;
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createGetoptCommands,
|
|
4
4
|
evalSyncGetopt,
|
|
5
5
|
getoptCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-AUSNDQTJ.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createGetoptCommand,
|
|
10
10
|
createGetoptCommands,
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createHexdumpCommand,
|
|
4
4
|
createHexdumpCommands,
|
|
5
5
|
hexdumpCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-CS4MNM6I.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createHdCommand,
|
|
10
10
|
createHexdumpCommand,
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { HtmlError, detachHtmlNode, htmlText, htmlq, htmlqBaseline, htmlqBytes, inclusiveHtmlDescendants, parseHtml, parseHtmlSync, parseHtmlqArguments, selectHtml, serializeHtml, serializeHtmlBytes } from "../../../safe-bash-command-htmlq/index.js";
|
|
2
2
|
export { selectHtml, parseHtmlqArguments, htmlqBytes, htmlq, parseHtml, parseHtmlSync, inclusiveHtmlDescendants, serializeHtml, serializeHtmlBytes, htmlText, detachHtmlNode, HtmlError, htmlqBaseline, };
|
|
3
|
-
export type { HtmlqArguments, HtmlqCommandOptions, HtmlqCommandsOptions, HtmlqRunOptions, HtmlqResult, HtmlAccounting, HtmlOptions, HtmlLimits, HtmlNode, HtmlNamespace, HtmlAttribute, HtmlErrorCode, } from "../../../safe-bash-command-htmlq/index.js";
|
|
3
|
+
export type { HtmlqArguments, HtmlqCommandOptions, HtmlqCommandsOptions, HtmlqLimits, HtmlqRunOptions, HtmlqResult, HtmlAccounting, HtmlOptions, HtmlLimits, HtmlNode, HtmlNamespace, HtmlAttribute, HtmlErrorCode, } from "../../../safe-bash-command-htmlq/index.js";
|
|
4
4
|
export { createHtmlqCommand, createHtmlqCommands, htmlqCommand, htmlqCommands } from "../../../safe-bash-command-htmlq/index.js";
|
|
5
5
|
export declare function evalSyncHtmlq(inBytes: Uint8Array | undefined, opArgs: readonly string[], readFileSync?: (filePath: string) => Uint8Array | undefined, writeFileSync?: (filePath: string, bytes: Uint8Array) => boolean): string | undefined;
|
|
6
6
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createIconvCommands,
|
|
4
4
|
evalSyncIconv,
|
|
5
5
|
iconvCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-CTVWDACF.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createIconvCommand,
|
|
10
10
|
createIconvCommands,
|
|
@@ -6,8 +6,8 @@ import {
|
|
|
6
6
|
dos2unixCommands,
|
|
7
7
|
dos2unixCommands2,
|
|
8
8
|
evalSyncLineEndings
|
|
9
|
-
} from "../../chunks/chunk-
|
|
10
|
-
import "../../chunks/chunk-
|
|
9
|
+
} from "../../chunks/chunk-3R3AANOR.js";
|
|
10
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
11
11
|
export {
|
|
12
12
|
createDos2unixCommand,
|
|
13
13
|
createDos2unixCommands,
|
|
@@ -22,8 +22,8 @@ import {
|
|
|
22
22
|
templateYaml,
|
|
23
23
|
validateLlmTemplateParameters,
|
|
24
24
|
validateModelOptions
|
|
25
|
-
} from "../../chunks/chunk-
|
|
26
|
-
import "../../chunks/chunk-
|
|
25
|
+
} from "../../chunks/chunk-OQRVVGR6.js";
|
|
26
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
27
27
|
export {
|
|
28
28
|
createElevenLabsProvider,
|
|
29
29
|
createLlmCommand,
|
|
@@ -7,9 +7,9 @@ import {
|
|
|
7
7
|
mdqCommand,
|
|
8
8
|
mdqCommands,
|
|
9
9
|
parseMdqArguments
|
|
10
|
-
} from "../../chunks/chunk-
|
|
11
|
-
import "../../chunks/chunk-
|
|
12
|
-
import "../../chunks/chunk-
|
|
10
|
+
} from "../../chunks/chunk-OV6IHKO6.js";
|
|
11
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
12
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
13
13
|
export {
|
|
14
14
|
MdqError,
|
|
15
15
|
createMdqCommand,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { NetworkCommandsOptions } from "./types.js";
|
|
2
2
|
export * from "../../../safe-bash-command-curl/curl.js";
|
|
3
|
-
export declare function createCurlCommand(options
|
|
3
|
+
export declare function createCurlCommand(options?: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
|
|
4
4
|
//# sourceMappingURL=curl.d.ts.map
|
|
@@ -2,9 +2,7 @@ import { createCurlCommand as createPortableCommand } from "../../../safe-bash-c
|
|
|
2
2
|
import { createDefaultHttpTransport, requiresFiniteUrlLimits } from "#safe-bash-network-platform";
|
|
3
3
|
import { limitsFor } from "./shared.js";
|
|
4
4
|
export * from "../../../safe-bash-command-curl/curl.js";
|
|
5
|
-
export function createCurlCommand(options) {
|
|
6
|
-
if (typeof options?.authorize !== "function")
|
|
7
|
-
throw new TypeError("curl requires an explicit network authorizer");
|
|
5
|
+
export function createCurlCommand(options = {}) {
|
|
8
6
|
const limits = limitsFor(options.limits);
|
|
9
7
|
if (requiresFiniteUrlLimits && (!Number.isFinite(limits.maxUrls) || !Number.isFinite(limits.maxBufferBytes)))
|
|
10
8
|
throw new TypeError("Portable network commands require finite maxUrls and maxBufferBytes limits");
|
|
@@ -12,10 +12,10 @@ import {
|
|
|
12
12
|
evalSyncCurl,
|
|
13
13
|
evalSyncWget,
|
|
14
14
|
networkCommands
|
|
15
|
-
} from "../../chunks/chunk-
|
|
16
|
-
import "../../chunks/chunk-
|
|
17
|
-
import "../../chunks/chunk-
|
|
18
|
-
import "../../chunks/chunk-
|
|
15
|
+
} from "../../chunks/chunk-K6VCD7IY.js";
|
|
16
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
17
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
18
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
19
19
|
export {
|
|
20
20
|
CurlError,
|
|
21
21
|
cloudflareWorkerNetworkLimits,
|
|
@@ -1,6 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
export declare function createDefaultHttpTransport(): never;
|
|
3
|
-
export declare function randomBytes(length: number): Uint8Array;
|
|
4
|
-
export declare function validateHeaderName(name: string): void;
|
|
5
|
-
export declare function validateHeaderValue(_name: string, value: string): void;
|
|
1
|
+
export * from "../../../safe-bash-network-engine/platform-portable.js";
|
|
6
2
|
//# sourceMappingURL=platform-portable.d.ts.map
|
|
@@ -1,27 +1,2 @@
|
|
|
1
|
-
export
|
|
2
|
-
export function createDefaultHttpTransport() {
|
|
3
|
-
throw new TypeError("Portable network commands require an explicit HTTP transport; inject createFetchTransport() or a host transport");
|
|
4
|
-
}
|
|
5
|
-
export function randomBytes(length) {
|
|
6
|
-
const bytes = new Uint8Array(length);
|
|
7
|
-
globalThis.crypto.getRandomValues(bytes);
|
|
8
|
-
return bytes;
|
|
9
|
-
}
|
|
10
|
-
export function validateHeaderName(name) {
|
|
11
|
-
if (!name.length)
|
|
12
|
-
throw new TypeError("Invalid HTTP header name");
|
|
13
|
-
for (const character of name) {
|
|
14
|
-
const code = character.charCodeAt(0);
|
|
15
|
-
if (!(code >= 48 && code <= 57 || code >= 65 && code <= 90 || code >= 97 && code <= 122 || "!#$%&'*+-.^_`|~".includes(character))) {
|
|
16
|
-
throw new TypeError("Invalid HTTP header name");
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
export function validateHeaderValue(_name, value) {
|
|
21
|
-
for (const character of value) {
|
|
22
|
-
const code = character.charCodeAt(0);
|
|
23
|
-
if (code !== 9 && (code < 32 || code === 127 || code > 255))
|
|
24
|
-
throw new TypeError("Invalid HTTP header value");
|
|
25
|
-
}
|
|
26
|
-
}
|
|
1
|
+
export * from "../../../safe-bash-network-engine/platform-portable.js";
|
|
27
2
|
//# sourceMappingURL=platform-portable.js.map
|
|
@@ -6,8 +6,8 @@ export { createFetchTransport, type FetchTransportOptions } from "./fetch-transp
|
|
|
6
6
|
export { createOriginAuthorizer, type OriginAllowlist, type OriginAuthorizerOptions } from "./authorizer.js";
|
|
7
7
|
export { createCurlCommand } from "./curl.js";
|
|
8
8
|
export { createWgetCommand } from "./wget.js";
|
|
9
|
-
export declare function createNetworkCommands(options
|
|
10
|
-
export declare function networkCommands(options
|
|
9
|
+
export declare function createNetworkCommands(options?: NetworkCommandsOptions): readonly CommandDefinition[];
|
|
10
|
+
export declare function networkCommands(options?: NetworkCommandsOptions): VirtualShellPlugin;
|
|
11
11
|
export declare const createCurlCommands: typeof createNetworkCommands;
|
|
12
12
|
export declare const curlCommands: typeof networkCommands;
|
|
13
13
|
export declare function evalSyncCurl(opArgs: readonly string[]): string | undefined;
|
|
@@ -7,10 +7,10 @@ export { createFetchTransport } from "./fetch-transport.js";
|
|
|
7
7
|
export { createOriginAuthorizer } from "./authorizer.js";
|
|
8
8
|
export { createCurlCommand } from "./curl.js";
|
|
9
9
|
export { createWgetCommand } from "./wget.js";
|
|
10
|
-
export function createNetworkCommands(options) {
|
|
10
|
+
export function createNetworkCommands(options = {}) {
|
|
11
11
|
return [createCurlCommand(options), createWgetCommand(options)];
|
|
12
12
|
}
|
|
13
|
-
export function networkCommands(options) {
|
|
13
|
+
export function networkCommands(options = {}) {
|
|
14
14
|
const definitions = createNetworkCommands(options);
|
|
15
15
|
return {
|
|
16
16
|
name: "network-commands",
|
|
@@ -102,12 +102,12 @@ export function createNodeHttpTransport(options = {}) {
|
|
|
102
102
|
request = (url.protocol === "https:" ? httpsRequest : httpRequest)(url, {
|
|
103
103
|
method: input.method,
|
|
104
104
|
path: curlRequestTarget(input.url),
|
|
105
|
-
headers:
|
|
105
|
+
headers: headers.host?.length === 1 ? { ...headers, host: headers.host[0] } : headers,
|
|
106
106
|
signal, maxHeaderSize: Number.isFinite(maxHeaderSize) ? maxHeaderSize : Number.MAX_SAFE_INTEGER, agent: false,
|
|
107
107
|
...(requestCa === undefined ? {} : { ca: requestCa }),
|
|
108
108
|
...(input.ca === undefined ? {} : { rejectUnauthorized: true }),
|
|
109
109
|
...pinned,
|
|
110
|
-
...(
|
|
110
|
+
...(url.protocol === "https:" ? {
|
|
111
111
|
servername: isIP(hostname) ? "" : hostname,
|
|
112
112
|
rejectUnauthorized: true,
|
|
113
113
|
checkServerIdentity: (_servername, certificate) => checkServerIdentity(hostname, certificate),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { NetworkCommandsOptions } from "./types.js";
|
|
2
2
|
export * from "../../../safe-bash-command-wget/wget.js";
|
|
3
|
-
export declare function createWgetCommand(options
|
|
3
|
+
export declare function createWgetCommand(options?: NetworkCommandsOptions): import("../../../safe-bash-contracts/index.js").CommandDefinition;
|
|
4
4
|
//# sourceMappingURL=wget.d.ts.map
|
|
@@ -2,9 +2,7 @@ import { createWgetCommand as createPortableCommand } from "../../../safe-bash-c
|
|
|
2
2
|
import { createDefaultHttpTransport, requiresFiniteUrlLimits } from "#safe-bash-network-platform";
|
|
3
3
|
import { limitsFor } from "./shared.js";
|
|
4
4
|
export * from "../../../safe-bash-command-wget/wget.js";
|
|
5
|
-
export function createWgetCommand(options) {
|
|
6
|
-
if (typeof options?.authorize !== "function")
|
|
7
|
-
throw new TypeError("wget requires an explicit network authorizer");
|
|
5
|
+
export function createWgetCommand(options = {}) {
|
|
8
6
|
const limits = limitsFor(options.limits);
|
|
9
7
|
if (requiresFiniteUrlLimits && (!Number.isFinite(limits.maxUrls) || !Number.isFinite(limits.maxBufferBytes)))
|
|
10
8
|
throw new TypeError("Portable network commands require finite maxUrls and maxBufferBytes limits");
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { commandLimits } from "../safejs/options.js";
|
|
2
|
+
import { yieldTurn } from "../../../safe-bash-contracts/yield.js";
|
|
2
3
|
import { SafeJsCommandLimitError } from "../safejs/types.js";
|
|
3
4
|
export function nodeReadFile(options, fs, signal, fail, pending) {
|
|
4
5
|
const read = fs.readFile;
|
|
@@ -21,11 +22,11 @@ export function nodeReadFile(options, fs, signal, fail, pending) {
|
|
|
21
22
|
}
|
|
22
23
|
const done = callback;
|
|
23
24
|
const completion = Promise.resolve().then(() => read(path, encoding)).then(async (text) => {
|
|
24
|
-
await
|
|
25
|
+
await yieldTurn(signal);
|
|
25
26
|
signal.throwIfAborted();
|
|
26
27
|
return done(null, text);
|
|
27
28
|
}, async (error) => {
|
|
28
|
-
await
|
|
29
|
+
await yieldTurn(signal);
|
|
29
30
|
signal.throwIfAborted();
|
|
30
31
|
return done(error);
|
|
31
32
|
}).then(() => undefined).catch(fail).finally(() => pending.delete(completion));
|
|
@@ -2,14 +2,14 @@ import {
|
|
|
2
2
|
createSafeJsNodeCommand,
|
|
3
3
|
createSafeJsNodeCommands,
|
|
4
4
|
safeJsNodeCommands
|
|
5
|
-
} from "../../chunks/chunk-
|
|
6
|
-
import "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
8
|
-
import "../../chunks/chunk-
|
|
9
|
-
import "../../chunks/chunk-
|
|
10
|
-
import "../../chunks/chunk-
|
|
11
|
-
import "../../chunks/chunk-
|
|
12
|
-
import "../../chunks/chunk-
|
|
5
|
+
} from "../../chunks/chunk-FNDNHAGE.js";
|
|
6
|
+
import "../../chunks/chunk-IVRQ4BXL.js";
|
|
7
|
+
import "../../chunks/chunk-D3ANYGMC.js";
|
|
8
|
+
import "../../chunks/chunk-NZQXYWA3.js";
|
|
9
|
+
import "../../chunks/chunk-74GHTNJA.js";
|
|
10
|
+
import "../../chunks/chunk-IWDICZVK.js";
|
|
11
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
12
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
13
13
|
export {
|
|
14
14
|
createSafeJsNodeCommand as createNodeCommand,
|
|
15
15
|
createSafeJsNodeCommands as createNodeCommands,
|
|
@@ -5,7 +5,7 @@ export function resolveNodeLimits(options = {}) {
|
|
|
5
5
|
for (const [name, value] of Object.entries(options)) {
|
|
6
6
|
if (name === "sabBytes" || !Object.hasOwn(nodeLimits, name))
|
|
7
7
|
throw new TypeError(`Unknown Node limit: ${name}`);
|
|
8
|
-
if (!Number.isSafeInteger(value) || value < 0 || ["admissionMs", "oldGenerationMiB", "youngGenerationMiB", "codeMiB", "stackMiB"].includes(name) && value < 1)
|
|
8
|
+
if (value !== Infinity && (!Number.isSafeInteger(value) || value < 0 || ["admissionMs", "oldGenerationMiB", "youngGenerationMiB", "codeMiB", "stackMiB"].includes(name) && value < 1))
|
|
9
9
|
throw new RangeError(`Invalid Node limit: ${name}`);
|
|
10
10
|
}
|
|
11
11
|
return Object.freeze({ ...nodeLimits, ...options });
|
|
@@ -19,9 +19,9 @@ import {
|
|
|
19
19
|
restoreEnvironment,
|
|
20
20
|
selectOpBackendContext,
|
|
21
21
|
selectOpGlobalFlags
|
|
22
|
-
} from "../../chunks/chunk-
|
|
23
|
-
import "../../chunks/chunk-
|
|
24
|
-
import "../../chunks/chunk-
|
|
22
|
+
} from "../../chunks/chunk-UE5KZDEK.js";
|
|
23
|
+
import "../../chunks/chunk-E7OYNDGL.js";
|
|
24
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
25
25
|
export {
|
|
26
26
|
captureEnvironment,
|
|
27
27
|
createDocumentHandlers,
|
|
@@ -3,8 +3,8 @@ import {
|
|
|
3
3
|
createPrCommands,
|
|
4
4
|
evalSyncPr,
|
|
5
5
|
prCommands
|
|
6
|
-
} from "../../chunks/chunk-
|
|
7
|
-
import "../../chunks/chunk-
|
|
6
|
+
} from "../../chunks/chunk-CHYGPFVM.js";
|
|
7
|
+
import "../../chunks/chunk-B7TAL7S5.js";
|
|
8
8
|
export {
|
|
9
9
|
createPrCommand,
|
|
10
10
|
createPrCommands,
|