@poe-platform/safe-bash 0.1.800 → 0.1.802
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 +122 -76
- package/dist/image-ast/index.js +122 -76
- package/dist/pdf-ast/index.js +4 -3
- package/dist/safe-bash/chunks/chunk-3HQU4OJO.js +13 -0
- 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-K4YMYFRJ.js → chunk-44ALJ4QG.js} +5809 -7424
- package/dist/safe-bash/chunks/{chunk-KHMGTPD6.js → chunk-46Z5E5EV.js} +2 -2
- package/dist/safe-bash/chunks/chunk-4BSJLKNM.js +14 -0
- package/dist/safe-bash/chunks/chunk-4D4N7IU2.js +47 -0
- package/dist/safe-bash/chunks/chunk-55YJASTN.js +14 -0
- 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-7ZBU7KYV.js +14 -0
- 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-QVSRRNZT.js → chunk-BJA5XNP6.js} +6 -6
- 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-DQP3VHSB.js +15 -0
- 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-FZE4HW6G.js +11 -0
- package/dist/safe-bash/chunks/chunk-GEG3BWGE.js +14 -0
- package/dist/safe-bash/chunks/{chunk-HHW7MGS2.js → chunk-GETUOD5D.js} +4 -4
- package/dist/safe-bash/chunks/chunk-HBCN24ZA.js +50 -0
- package/dist/safe-bash/chunks/chunk-HZ7BWKQ3.js +13 -0
- package/dist/safe-bash/chunks/{chunk-JJSTTIEZ.js → chunk-HZAMGT5I.js} +3 -3
- package/dist/safe-bash/chunks/{chunk-KCVSVD65.js → chunk-I5HZ4FGE.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-KDNSPLII.js +83 -0
- 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-KW24TAIU.js → chunk-NQCM3TYR.js} +922 -658
- 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-TYD7EVUJ.js → chunk-PH63PLPZ.js} +8 -8
- package/dist/safe-bash/chunks/chunk-QGUV42T5.js +44 -0
- package/dist/safe-bash/chunks/chunk-R3NAKOED.js +51 -0
- package/dist/safe-bash/chunks/chunk-RRR7AQ24.js +38 -0
- package/dist/safe-bash/chunks/{chunk-RKKRJ54E.js → chunk-RSTHLAF3.js} +30 -23
- package/dist/safe-bash/chunks/{chunk-RMWLWH7Q.js → chunk-SHEMU2Z7.js} +378 -1148
- 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-6HZYFL3H.js → chunk-VKNVHEX3.js} +2 -7
- package/dist/safe-bash/chunks/chunk-VSAJ4OTM.js +962 -0
- package/dist/safe-bash/chunks/{chunk-46UISJCK.js → chunk-VTH3MLDU.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-JTLSUJ7V.js → chunk-WDLGKIHD.js} +56 -39
- package/dist/safe-bash/chunks/chunk-XAQMU6OY.js +14 -0
- package/dist/safe-bash/chunks/{chunk-LLZCZ24K.js → chunk-XVOSKJE2.js} +1 -1
- package/dist/safe-bash/chunks/chunk-ZVD5IS4V.js +49 -0
- 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-SAMH7SQE.js → chunk-6GWJUQAV.js} +237 -145
- 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-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-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-EFANWIHL.js → chunk-GY3BWK7K.js} +1 -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-WBNZ4PRE.js → chunk-NGG2XL56.js} +7 -4
- 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-GLOZX57Y.js → chunk-OQKC5ZU2.js} +23 -114
- 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-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-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-N2F74VRO.js → chunk-VT6MJBEI.js} +1 -1
- 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-HLGKIZ25.js → chunk-X54L3DBL.js} +6 -9
- 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-T5H5UJQ3.js → chunk-YVNGTIJO.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/apply-patch/index.browser.js +14 -0
- package/dist/safe-bash/commands/archive/index.browser.js +36 -0
- package/dist/safe-bash/commands/bytes/compression/index.js +3 -2
- package/dist/safe-bash/commands/column/index.browser.js +12 -0
- 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/du/index.browser.js +14 -0
- package/dist/safe-bash/commands/execution.js +19 -13
- package/dist/safe-bash/commands/expr/index.browser.js +12 -0
- package/dist/safe-bash/commands/factor/index.browser.js +2 -2
- package/dist/safe-bash/commands/file/index.browser.js +14 -0
- package/dist/safe-bash/commands/filesystem.d.ts +1 -1
- package/dist/safe-bash/commands/filesystem.js +26 -15
- package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
- package/dist/safe-bash/commands/grep-aliases/index.browser.js +14 -0
- package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
- package/dist/safe-bash/commands/html-to-markdown/index.browser.js +16 -0
- 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/metadata/index.browser.js +21 -0
- 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 +8 -6
- package/dist/safe-bash/commands/safejs/runtime.js +16 -7
- package/dist/safe-bash/commands/split/index.browser.js +14 -0
- package/dist/safe-bash/commands/standard.d.ts +1 -0
- package/dist/safe-bash/commands/standard.js +2 -1
- package/dist/safe-bash/commands/stream-format/index.browser.js +11 -0
- package/dist/safe-bash/commands/stream-inspection/index.browser.js +11 -0
- package/dist/safe-bash/commands/streams.js +11 -29
- package/dist/safe-bash/commands/table-text/index.browser.js +11 -0
- package/dist/safe-bash/commands/text.js +269 -496
- package/dist/safe-bash/commands/time-env/index.browser.js +15 -0
- package/dist/safe-bash/commands/tree/index.browser.js +14 -0
- 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 +308 -295
- 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 +15 -15
- 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 +41 -27
- package/dist/safe-bash/registry-entry.browser.js +42 -28
- package/dist/safe-bash/search.browser.js +48 -0
- 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 -13
- package/dist/safe-bash/shell/runtime.js +334 -1049
- package/dist/safe-bash/shell/shell.js +2 -54
- package/dist/safe-bash/shell-entry.browser.js +35 -26
- 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-nl/index.js +1 -1
- package/dist/safe-bash-command-nl/nl.js +1 -1
- 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-rg/index.js +1 -1
- package/dist/safe-bash-command-rg/rg-command.d.ts +0 -1
- package/dist/safe-bash-command-rg/rg-command.js +3 -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-unexpand/index.js +1 -1
- package/dist/safe-bash-command-unexpand/unexpand.js +1 -1
- 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 +286 -90
- 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 -1
- 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 +68 -12
- 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
|
@@ -4,6 +4,7 @@ import {
|
|
|
4
4
|
|
|
5
5
|
// packages/safe-bash-command-bc/src/index.ts
|
|
6
6
|
init_buffer();
|
|
7
|
+
import { Decimal } from "decimal.js";
|
|
7
8
|
import {
|
|
8
9
|
commandRuntimeIdentity,
|
|
9
10
|
readBytes,
|
|
@@ -58,7 +59,8 @@ function settings(options = {}) {
|
|
|
58
59
|
maxSteps: options.limits?.maxSteps ?? options.maxSteps ?? Infinity,
|
|
59
60
|
maxScale: options.limits?.maxScale ?? options.maxScale ?? Infinity,
|
|
60
61
|
maxExponent: options.limits?.maxExponent ?? options.maxExponent ?? Infinity,
|
|
61
|
-
maxRecursionDepth: options.limits?.maxRecursionDepth ?? options.maxRecursionDepth ?? Infinity
|
|
62
|
+
maxRecursionDepth: options.limits?.maxRecursionDepth ?? options.maxRecursionDepth ?? Infinity,
|
|
63
|
+
maxObase: options.limits?.maxObase ?? options.maxObase ?? Infinity
|
|
62
64
|
};
|
|
63
65
|
for (const [name, value] of Object.entries(limits)) {
|
|
64
66
|
if (value !== Infinity && (!Number.isSafeInteger(value) || value < 1)) throw new RangeError(`Invalid bc limit: ${name}`);
|
|
@@ -176,10 +178,7 @@ function parseLiteralInBase(raw, ibase) {
|
|
|
176
178
|
if (code >= 65 && code <= 70) return BigInt(code - 55);
|
|
177
179
|
return 0n;
|
|
178
180
|
};
|
|
179
|
-
if (
|
|
180
|
-
const combined = intPart + fracPart || "0";
|
|
181
|
-
return { coeff: BigInt(combined), scale };
|
|
182
|
-
}
|
|
181
|
+
if (raw.length === 1 && dot < 0) return { coeff: digitVal(raw), scale: 0 };
|
|
183
182
|
let intVal = 0n;
|
|
184
183
|
for (const ch of intPart) {
|
|
185
184
|
const d = digitVal(ch);
|
|
@@ -200,7 +199,7 @@ function formatDecimalInBase(val, obase) {
|
|
|
200
199
|
const neg = val.coeff < 0n;
|
|
201
200
|
const absCoeff = neg ? -val.coeff : val.coeff;
|
|
202
201
|
if (absCoeff === 0n) return "0";
|
|
203
|
-
if (obase ===
|
|
202
|
+
if (obase === 10n) {
|
|
204
203
|
if (val.scale <= 0) {
|
|
205
204
|
return (neg && absCoeff !== 0n ? "-" : "") + absCoeff.toString(10);
|
|
206
205
|
}
|
|
@@ -210,67 +209,84 @@ function formatDecimalInBase(val, obase) {
|
|
|
210
209
|
const prefix = intStr === "0" ? "" : intStr;
|
|
211
210
|
return (neg && absCoeff !== 0n ? "-" : "") + (prefix || (fracStr.length > 0 ? "" : "0")) + "." + fracStr;
|
|
212
211
|
}
|
|
213
|
-
const baseBig = BigInt(obase);
|
|
214
212
|
const scaleFactor = pow10(val.scale);
|
|
215
213
|
let intPart = absCoeff / scaleFactor;
|
|
216
214
|
let rem = absCoeff % scaleFactor;
|
|
217
215
|
const digits = "0123456789ABCDEF";
|
|
216
|
+
const digitWidth = (obase - 1n).toString(10).length;
|
|
218
217
|
let intOut = "";
|
|
219
218
|
if (intPart === 0n) intOut = "0";
|
|
220
219
|
else {
|
|
221
220
|
while (intPart > 0n) {
|
|
222
|
-
const d =
|
|
223
|
-
intOut = (obase <=
|
|
224
|
-
intPart /=
|
|
221
|
+
const d = intPart % obase;
|
|
222
|
+
intOut = (obase <= 16n ? digits[Number(d)] : ` ${d.toString(10).padStart(digitWidth, "0")}`) + intOut;
|
|
223
|
+
intPart /= obase;
|
|
225
224
|
}
|
|
226
225
|
}
|
|
227
226
|
if (val.scale <= 0) {
|
|
228
|
-
return (neg && absCoeff !== 0n ? "-" : "") + intOut
|
|
227
|
+
return (neg && absCoeff !== 0n ? "-" : "") + intOut;
|
|
229
228
|
}
|
|
230
229
|
let fracOut = "";
|
|
231
|
-
for (let
|
|
232
|
-
rem *=
|
|
233
|
-
const d =
|
|
230
|
+
for (let place = 1n; place < scaleFactor; place *= obase) {
|
|
231
|
+
rem *= obase;
|
|
232
|
+
const d = rem / scaleFactor;
|
|
234
233
|
rem %= scaleFactor;
|
|
235
|
-
fracOut += obase <=
|
|
234
|
+
fracOut += obase <= 16n ? digits[Number(d)] : `${fracOut ? " " : ""}${d.toString(10).padStart(digitWidth, "0")}`;
|
|
236
235
|
}
|
|
237
236
|
return (neg && absCoeff !== 0n ? "-" : "") + (intOut === "0" ? "" : intOut) + "." + fracOut;
|
|
238
237
|
}
|
|
239
|
-
function
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
const
|
|
243
|
-
const
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
238
|
+
async function mathValue(name, args, scale, tick) {
|
|
239
|
+
if (!["s", "c", "a", "l", "e", "j"].includes(name)) return void 0;
|
|
240
|
+
const decimal = (value) => `${value.coeff}e-${value.scale}`;
|
|
241
|
+
const raw = args[name === "j" ? 1 : 0] ?? ZERO;
|
|
242
|
+
const magnitude = new Decimal(decimal(raw)).abs();
|
|
243
|
+
const extra = name === "e" || name === "j" ? magnitude.ceil().toNumber() : Math.max(0, magnitude.e + 1);
|
|
244
|
+
const D = Decimal.clone({ precision: scale + extra + 32, rounding: Decimal.ROUND_DOWN });
|
|
245
|
+
const x = new D(decimal(raw));
|
|
246
|
+
let result;
|
|
247
|
+
switch (name) {
|
|
248
|
+
case "s":
|
|
249
|
+
result = x.sin();
|
|
250
|
+
break;
|
|
251
|
+
case "c":
|
|
252
|
+
result = x.cos();
|
|
253
|
+
break;
|
|
254
|
+
case "a":
|
|
255
|
+
result = x.atan();
|
|
256
|
+
break;
|
|
257
|
+
case "l":
|
|
258
|
+
if (x.lte(0)) throw new Error("Runtime error: l(x) domain error");
|
|
259
|
+
result = x.ln();
|
|
260
|
+
break;
|
|
261
|
+
case "e":
|
|
262
|
+
result = x.exp();
|
|
263
|
+
break;
|
|
264
|
+
default: {
|
|
265
|
+
const n = truncToInt(args[0] ?? ZERO);
|
|
266
|
+
const order = n < 0n ? -n : n;
|
|
267
|
+
const half = x.div(2);
|
|
268
|
+
let term = new D(1);
|
|
269
|
+
for (let i = 1n; i <= order; i++) {
|
|
270
|
+
const pending = tick();
|
|
271
|
+
if (pending) await pending;
|
|
272
|
+
term = term.mul(half).div(i.toString());
|
|
273
|
+
}
|
|
274
|
+
result = term;
|
|
275
|
+
const factor = half.mul(half).neg();
|
|
276
|
+
const epsilon = new D(10).pow(-scale - 16);
|
|
277
|
+
for (let k = 1n; !term.isZero(); k++) {
|
|
278
|
+
const pending = tick();
|
|
279
|
+
if (pending) await pending;
|
|
280
|
+
term = term.mul(factor).div((k * (order + k)).toString());
|
|
281
|
+
result = result.add(term);
|
|
282
|
+
if (term.abs().lt(epsilon) && new D((k * (order + k)).toString()).gt(factor.abs())) break;
|
|
283
|
+
}
|
|
284
|
+
if (n < 0n && order % 2n === 1n) result = result.neg();
|
|
285
|
+
}
|
|
252
286
|
}
|
|
253
|
-
if (
|
|
254
|
-
|
|
255
|
-
}
|
|
256
|
-
function fromNumber(num, scale) {
|
|
257
|
-
if (!Number.isFinite(num)) throw new Error("math domain/range error");
|
|
258
|
-
const clampedScale = Math.min(scale, 30);
|
|
259
|
-
const fixed = num.toFixed(Math.min(clampedScale + 4, 20));
|
|
260
|
-
const dot = fixed.indexOf(".");
|
|
261
|
-
const neg = fixed.startsWith("-");
|
|
262
|
-
const clean = neg ? fixed.slice(1) : fixed;
|
|
263
|
-
const cleanDot = clean.indexOf(".");
|
|
264
|
-
const intPart = cleanDot >= 0 ? clean.slice(0, cleanDot) : clean;
|
|
265
|
-
let fracPart = cleanDot >= 0 ? clean.slice(cleanDot + 1) : "";
|
|
266
|
-
if (fracPart.length < scale) fracPart = fracPart.padEnd(scale, "0");
|
|
267
|
-
else if (fracPart.length > scale) fracPart = fracPart.slice(0, scale);
|
|
268
|
-
void dot;
|
|
269
|
-
const coeff = BigInt(intPart + fracPart || "0");
|
|
270
|
-
return { coeff: neg ? -coeff : coeff, scale };
|
|
271
|
-
}
|
|
272
|
-
function toNumber(val) {
|
|
273
|
-
return Number(formatDecimalInBase(val, 10));
|
|
287
|
+
if (!result.isFinite()) throw new Error("math domain/range error");
|
|
288
|
+
const fixed = result.toFixed(scale, Decimal.ROUND_DOWN);
|
|
289
|
+
return { coeff: BigInt(fixed.split(".").join("")), scale };
|
|
274
290
|
}
|
|
275
291
|
function tokenizeBc(source) {
|
|
276
292
|
const clean = source.replace(/\\\r?\n/gu, "");
|
|
@@ -455,10 +471,9 @@ var BcParser = class {
|
|
|
455
471
|
while (true) {
|
|
456
472
|
const p = this.next();
|
|
457
473
|
if (p?.type !== "id") throw new Error("expected variable name in auto");
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
}
|
|
461
|
-
names.push(p.name ?? "");
|
|
474
|
+
const array = this.matchPunct("[");
|
|
475
|
+
if (array && !this.matchPunct("]")) throw new Error("expected ']' in auto");
|
|
476
|
+
names.push({ name: p.name ?? "", array });
|
|
462
477
|
if (!this.matchPunct(",")) break;
|
|
463
478
|
}
|
|
464
479
|
return { kind: "auto", names };
|
|
@@ -616,7 +631,7 @@ var BcParser = class {
|
|
|
616
631
|
if (t.type === "punct" && (t.value ?? "") === "(") {
|
|
617
632
|
const expr = this.parseExpr();
|
|
618
633
|
if (!this.matchPunct(")")) throw new Error("expected ')'");
|
|
619
|
-
return expr;
|
|
634
|
+
return expr.kind === "assign" ? { ...expr, parenthesized: true } : expr;
|
|
620
635
|
}
|
|
621
636
|
if (t.type === "id") {
|
|
622
637
|
if (this.matchPunct("(")) {
|
|
@@ -658,6 +673,7 @@ function createBcCommand(options = {}) {
|
|
|
658
673
|
description: "Arbitrary-precision calculator language",
|
|
659
674
|
runtimeIdentity: commandRuntimeIdentity,
|
|
660
675
|
async execute(context) {
|
|
676
|
+
context.signal.throwIfAborted();
|
|
661
677
|
try {
|
|
662
678
|
let mathlib = false;
|
|
663
679
|
const files = [];
|
|
@@ -712,6 +728,7 @@ function createBcCommand(options = {}) {
|
|
|
712
728
|
sources.push(decoder.decode(await collectSourceBytes(context.stdin, context.signal, maxInputBytes)));
|
|
713
729
|
} else {
|
|
714
730
|
const raw = await context.fs.readFile(pathPosix.resolve(context.cwd, file));
|
|
731
|
+
context.signal.throwIfAborted();
|
|
715
732
|
if (raw.byteLength > maxInputBytes) throw new Error(`bc program exceeds maximum input size (${maxInputBytes} bytes)`);
|
|
716
733
|
sources.push(decoder.decode(raw));
|
|
717
734
|
}
|
|
@@ -724,7 +741,7 @@ function createBcCommand(options = {}) {
|
|
|
724
741
|
const stmts = new BcParser(tokenizeBc(fullProgram)).parseProgram();
|
|
725
742
|
let scale = mathlib ? 20 : 0;
|
|
726
743
|
let ibase = 10;
|
|
727
|
-
let obase =
|
|
744
|
+
let obase = 10n;
|
|
728
745
|
let last = ZERO;
|
|
729
746
|
const globals = /* @__PURE__ */ new Map();
|
|
730
747
|
const arrays = /* @__PURE__ */ new Map();
|
|
@@ -732,25 +749,48 @@ function createBcCommand(options = {}) {
|
|
|
732
749
|
const callStack = [];
|
|
733
750
|
let steps = 0;
|
|
734
751
|
let outBuffer = "";
|
|
752
|
+
let outputBytes = 0;
|
|
753
|
+
const appendOutput = (text) => {
|
|
754
|
+
if (limits.maxOutputBytes !== Infinity) {
|
|
755
|
+
outputBytes += encoder.encode(text).byteLength;
|
|
756
|
+
if (outputBytes > limits.maxOutputBytes) {
|
|
757
|
+
throw new Error(`output exceeds maximum size (${limits.maxOutputBytes} bytes)`);
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
outBuffer += text;
|
|
761
|
+
};
|
|
735
762
|
const tick = () => {
|
|
763
|
+
context.signal.throwIfAborted();
|
|
736
764
|
if (++steps > maxSteps) throw new Error(`bc execution exceeded maximum step limit (${maxSteps})`);
|
|
737
765
|
if ((steps & 4095) === 0) {
|
|
738
766
|
return yieldTurn(context.signal);
|
|
739
767
|
}
|
|
740
768
|
return void 0;
|
|
741
769
|
};
|
|
770
|
+
const getArray = (name) => {
|
|
771
|
+
for (let i = callStack.length - 1; i >= 0; i--) {
|
|
772
|
+
const local = callStack[i].arrays.get(name);
|
|
773
|
+
if (local) return local;
|
|
774
|
+
}
|
|
775
|
+
let array = arrays.get(name);
|
|
776
|
+
if (!array) {
|
|
777
|
+
array = /* @__PURE__ */ new Map();
|
|
778
|
+
arrays.set(name, array);
|
|
779
|
+
}
|
|
780
|
+
return array;
|
|
781
|
+
};
|
|
742
782
|
const getVar = async (name, indexExpr) => {
|
|
743
783
|
if (indexExpr) {
|
|
744
784
|
const idxVal = await evalExpr(indexExpr);
|
|
745
785
|
const key = truncToInt(idxVal).toString(10);
|
|
746
|
-
return
|
|
786
|
+
return getArray(name).get(key) ?? ZERO;
|
|
747
787
|
}
|
|
748
788
|
if (name === "scale") return { coeff: BigInt(scale), scale: 0 };
|
|
749
789
|
if (name === "ibase") return { coeff: BigInt(ibase), scale: 0 };
|
|
750
|
-
if (name === "obase") return { coeff:
|
|
790
|
+
if (name === "obase") return { coeff: obase, scale: 0 };
|
|
751
791
|
if (name === "last") return last;
|
|
752
792
|
for (let i = callStack.length - 1; i >= 0; i--) {
|
|
753
|
-
const frame = callStack[i];
|
|
793
|
+
const frame = callStack[i].scalars;
|
|
754
794
|
if (frame.has(name)) return frame.get(name);
|
|
755
795
|
}
|
|
756
796
|
return globals.get(name) ?? ZERO;
|
|
@@ -759,12 +799,7 @@ function createBcCommand(options = {}) {
|
|
|
759
799
|
if (indexExpr) {
|
|
760
800
|
const idxVal = await evalExpr(indexExpr);
|
|
761
801
|
const key = truncToInt(idxVal).toString(10);
|
|
762
|
-
|
|
763
|
-
if (!map) {
|
|
764
|
-
map = /* @__PURE__ */ new Map();
|
|
765
|
-
arrays.set(name, map);
|
|
766
|
-
}
|
|
767
|
-
map.set(key, val);
|
|
802
|
+
getArray(name).set(key, val);
|
|
768
803
|
return val;
|
|
769
804
|
}
|
|
770
805
|
if (name === "scale") {
|
|
@@ -780,17 +815,19 @@ function createBcCommand(options = {}) {
|
|
|
780
815
|
return { coeff: BigInt(ibase), scale: 0 };
|
|
781
816
|
}
|
|
782
817
|
if (name === "obase") {
|
|
783
|
-
const b =
|
|
784
|
-
if (b <
|
|
818
|
+
const b = truncToInt(val);
|
|
819
|
+
if (b < 2n || limits.maxObase !== Infinity && b > BigInt(limits.maxObase)) {
|
|
820
|
+
throw new Error(`obase (${b}) out of bounds [2, ${limits.maxObase}]`);
|
|
821
|
+
}
|
|
785
822
|
obase = b;
|
|
786
|
-
return { coeff:
|
|
823
|
+
return { coeff: obase, scale: 0 };
|
|
787
824
|
}
|
|
788
825
|
if (name === "last") {
|
|
789
826
|
last = val;
|
|
790
827
|
return val;
|
|
791
828
|
}
|
|
792
829
|
for (let i = callStack.length - 1; i >= 0; i--) {
|
|
793
|
-
const frame = callStack[i];
|
|
830
|
+
const frame = callStack[i].scalars;
|
|
794
831
|
if (frame.has(name)) {
|
|
795
832
|
frame.set(name, val);
|
|
796
833
|
return val;
|
|
@@ -808,7 +845,7 @@ function createBcCommand(options = {}) {
|
|
|
808
845
|
case "num":
|
|
809
846
|
return parseLiteralInBase(expr.raw, ibase);
|
|
810
847
|
case "str":
|
|
811
|
-
|
|
848
|
+
appendOutput(expr.value);
|
|
812
849
|
return ZERO;
|
|
813
850
|
case "var":
|
|
814
851
|
return getVar(expr.name, expr.index);
|
|
@@ -891,21 +928,8 @@ function createBcCommand(options = {}) {
|
|
|
891
928
|
if (expr.name === "length") return lengthDec(arg0);
|
|
892
929
|
if (expr.name === "abs") return { coeff: arg0.coeff < 0n ? -arg0.coeff : arg0.coeff, scale: arg0.scale };
|
|
893
930
|
if (mathlib) {
|
|
894
|
-
|
|
895
|
-
if (
|
|
896
|
-
if (expr.name === "a") return fromNumber(Math.atan(toNumber(arg0)), scale);
|
|
897
|
-
if (expr.name === "l") {
|
|
898
|
-
const x = toNumber(arg0);
|
|
899
|
-
if (x <= 0) throw new Error("Runtime error: l(x) domain error");
|
|
900
|
-
return fromNumber(Math.log(x), scale);
|
|
901
|
-
}
|
|
902
|
-
if (expr.name === "e") return fromNumber(Math.exp(toNumber(arg0)), scale);
|
|
903
|
-
if (expr.name === "j") {
|
|
904
|
-
const nVal = Math.trunc(toNumber(arg0));
|
|
905
|
-
const xVal = toNumber(args[1] ?? ZERO);
|
|
906
|
-
if (xVal === 0) return nVal === 0 ? fromNumber(1, scale) : { coeff: 0n, scale };
|
|
907
|
-
return fromNumber(besselJ(nVal, xVal), scale);
|
|
908
|
-
}
|
|
931
|
+
const result = await mathValue(expr.name, args, scale, tick);
|
|
932
|
+
if (result) return result;
|
|
909
933
|
}
|
|
910
934
|
const fn = funcs.get(expr.name);
|
|
911
935
|
if (!fn) throw new Error(`Function ${expr.name} not defined.`);
|
|
@@ -914,7 +938,7 @@ function createBcCommand(options = {}) {
|
|
|
914
938
|
for (let i = 0; i < fn.params.length; i++) {
|
|
915
939
|
frame.set(fn.params[i], args[i] ?? ZERO);
|
|
916
940
|
}
|
|
917
|
-
callStack.push(frame);
|
|
941
|
+
callStack.push({ scalars: frame, arrays: /* @__PURE__ */ new Map() });
|
|
918
942
|
try {
|
|
919
943
|
await execStmt(fn.body);
|
|
920
944
|
return ZERO;
|
|
@@ -941,8 +965,10 @@ function createBcCommand(options = {}) {
|
|
|
941
965
|
case "auto": {
|
|
942
966
|
const frame = callStack.at(-1);
|
|
943
967
|
if (frame) {
|
|
944
|
-
for (const name of stmt.names) {
|
|
945
|
-
if (
|
|
968
|
+
for (const { name, array } of stmt.names) {
|
|
969
|
+
if (array) {
|
|
970
|
+
if (!frame.arrays.has(name)) frame.arrays.set(name, /* @__PURE__ */ new Map());
|
|
971
|
+
} else if (!frame.scalars.has(name)) frame.scalars.set(name, ZERO);
|
|
946
972
|
}
|
|
947
973
|
}
|
|
948
974
|
return;
|
|
@@ -991,11 +1017,11 @@ function createBcCommand(options = {}) {
|
|
|
991
1017
|
case "print":
|
|
992
1018
|
for (const item of stmt.items) {
|
|
993
1019
|
if (item.kind === "str") {
|
|
994
|
-
|
|
1020
|
+
appendOutput(item.value);
|
|
995
1021
|
} else {
|
|
996
1022
|
const v = await evalExpr(item);
|
|
997
1023
|
last = v;
|
|
998
|
-
|
|
1024
|
+
appendOutput(formatDecimalInBase(v, obase));
|
|
999
1025
|
}
|
|
1000
1026
|
}
|
|
1001
1027
|
return;
|
|
@@ -1009,13 +1035,13 @@ function createBcCommand(options = {}) {
|
|
|
1009
1035
|
throw new FlowSignal("halt");
|
|
1010
1036
|
case "expr": {
|
|
1011
1037
|
if (stmt.expr.kind === "str") {
|
|
1012
|
-
|
|
1038
|
+
appendOutput(stmt.expr.value);
|
|
1013
1039
|
return;
|
|
1014
1040
|
}
|
|
1015
1041
|
const val = await evalExpr(stmt.expr);
|
|
1016
|
-
if (stmt.expr.kind !== "assign") {
|
|
1042
|
+
if (stmt.expr.kind !== "assign" || stmt.expr.parenthesized) {
|
|
1017
1043
|
last = val;
|
|
1018
|
-
|
|
1044
|
+
appendOutput(formatDecimalInBase(val, obase) + "\n");
|
|
1019
1045
|
}
|
|
1020
1046
|
return;
|
|
1021
1047
|
}
|
|
@@ -1030,15 +1056,20 @@ function createBcCommand(options = {}) {
|
|
|
1030
1056
|
throw sig;
|
|
1031
1057
|
}
|
|
1032
1058
|
}
|
|
1059
|
+
context.signal.throwIfAborted();
|
|
1033
1060
|
if (outBuffer.length > 0) {
|
|
1034
1061
|
await writeText(context.stdout, outBuffer);
|
|
1062
|
+
context.signal.throwIfAborted();
|
|
1035
1063
|
}
|
|
1036
1064
|
return { exitCode: 0 };
|
|
1037
1065
|
} catch (err) {
|
|
1066
|
+
context.signal.throwIfAborted();
|
|
1067
|
+
if (err instanceof Error && err.name === "AbortError") throw err;
|
|
1038
1068
|
const msg = err instanceof Error ? err.message : String(err);
|
|
1039
1069
|
const code = err instanceof UsageError ? 2 : 1;
|
|
1040
1070
|
await writeText(context.stderr, `bc: ${msg}
|
|
1041
1071
|
`);
|
|
1072
|
+
context.signal.throwIfAborted();
|
|
1042
1073
|
return { exitCode: code };
|
|
1043
1074
|
}
|
|
1044
1075
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createColumnCommand
|
|
3
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
4
|
-
import "../safe-bash/command-chunks/chunk-
|
|
5
|
-
import "../safe-bash/command-chunks/chunk-
|
|
6
|
-
import "../safe-bash/command-chunks/chunk-
|
|
3
|
+
} from "../safe-bash/command-chunks/chunk-FZTK4MFI.js";
|
|
4
|
+
import "../safe-bash/command-chunks/chunk-LAOM65EE.js";
|
|
5
|
+
import "../safe-bash/command-chunks/chunk-4OOUQTQO.js";
|
|
6
|
+
import "../safe-bash/command-chunks/chunk-G66QUHIZ.js";
|
|
7
7
|
import "../safe-bash/command-chunks/chunk-AHEQ2THG.js";
|
|
8
|
-
import "../safe-bash/command-chunks/chunk-
|
|
8
|
+
import "../safe-bash/command-chunks/chunk-MTQH74CF.js";
|
|
9
9
|
import "../safe-bash/command-chunks/chunk-HX3SHTCE.js";
|
|
10
10
|
export {
|
|
11
11
|
createColumnCommand
|
|
@@ -8,4 +8,4 @@ export declare function widthOf(point: number): number;
|
|
|
8
8
|
export declare function validateScalar(character: string, allowTab?: boolean): void;
|
|
9
9
|
export declare function cell(text: string, budget: ColumnBudget): Cell | Promise<Cell>;
|
|
10
10
|
export declare function decode(bytes: Uint8Array): string;
|
|
11
|
-
export declare function fields(text: string, separator: Set<string> | undefined, budget: ColumnBudget, remainingCells: number, columnLimit?: number, outputSeparatorBytes?: number):
|
|
11
|
+
export declare function fields(text: string, separator: Set<string> | undefined, budget: ColumnBudget, remainingCells: number, columnLimit?: number, outputSeparatorBytes?: number): Promise<string[]>;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
createColumnCommand
|
|
3
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
4
|
-
import "../safe-bash/command-chunks/chunk-
|
|
5
|
-
import "../safe-bash/command-chunks/chunk-
|
|
6
|
-
import "../safe-bash/command-chunks/chunk-
|
|
3
|
+
} from "../safe-bash/command-chunks/chunk-FZTK4MFI.js";
|
|
4
|
+
import "../safe-bash/command-chunks/chunk-LAOM65EE.js";
|
|
5
|
+
import "../safe-bash/command-chunks/chunk-4OOUQTQO.js";
|
|
6
|
+
import "../safe-bash/command-chunks/chunk-G66QUHIZ.js";
|
|
7
7
|
import "../safe-bash/command-chunks/chunk-AHEQ2THG.js";
|
|
8
|
-
import "../safe-bash/command-chunks/chunk-
|
|
8
|
+
import "../safe-bash/command-chunks/chunk-MTQH74CF.js";
|
|
9
9
|
import {
|
|
10
10
|
init_buffer
|
|
11
11
|
} from "../safe-bash/command-chunks/chunk-HX3SHTCE.js";
|
|
@@ -10,8 +10,6 @@ export declare class ColumnBudget extends Budget {
|
|
|
10
10
|
private emittedBytes;
|
|
11
11
|
private retainedBytes;
|
|
12
12
|
private projectedBytes;
|
|
13
|
-
private aborted;
|
|
14
|
-
private readonly pollSignal;
|
|
15
13
|
constructor(context: CommandContext, columnLimits: ColumnLimits);
|
|
16
14
|
check(value: number, maximum: number, label: string): void;
|
|
17
15
|
step(): void | Promise<void>;
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
ColumnBudget,
|
|
3
3
|
ColumnInputs,
|
|
4
4
|
diagnostics
|
|
5
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
5
|
+
} from "../safe-bash/command-chunks/chunk-G66QUHIZ.js";
|
|
6
6
|
import "../safe-bash/command-chunks/chunk-AHEQ2THG.js";
|
|
7
7
|
import "../safe-bash/command-chunks/chunk-HX3SHTCE.js";
|
|
8
8
|
export {
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import {
|
|
2
2
|
configuredTable
|
|
3
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
4
|
-
import "../safe-bash/command-chunks/chunk-
|
|
5
|
-
import "../safe-bash/command-chunks/chunk-
|
|
3
|
+
} from "../safe-bash/command-chunks/chunk-LAOM65EE.js";
|
|
4
|
+
import "../safe-bash/command-chunks/chunk-4OOUQTQO.js";
|
|
5
|
+
import "../safe-bash/command-chunks/chunk-G66QUHIZ.js";
|
|
6
6
|
import "../safe-bash/command-chunks/chunk-AHEQ2THG.js";
|
|
7
|
-
import "../safe-bash/command-chunks/chunk-
|
|
7
|
+
import "../safe-bash/command-chunks/chunk-MTQH74CF.js";
|
|
8
8
|
import "../safe-bash/command-chunks/chunk-HX3SHTCE.js";
|
|
9
9
|
export {
|
|
10
10
|
configuredTable
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import {
|
|
2
2
|
jsonOutput,
|
|
3
3
|
tableOutput
|
|
4
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
5
|
-
import "../safe-bash/command-chunks/chunk-
|
|
4
|
+
} from "../safe-bash/command-chunks/chunk-4OOUQTQO.js";
|
|
5
|
+
import "../safe-bash/command-chunks/chunk-G66QUHIZ.js";
|
|
6
6
|
import "../safe-bash/command-chunks/chunk-AHEQ2THG.js";
|
|
7
7
|
import "../safe-bash/command-chunks/chunk-HX3SHTCE.js";
|
|
8
8
|
export {
|
|
@@ -3,3 +3,4 @@ export { cutCsv, type CsvcutOptions, type CsvcutRunOptions } from "./behavior.js
|
|
|
3
3
|
export { CsvBudget, CsvParser, CsvError, defaultCsvLimits, resolveColumns, serializeRow, generatedHeaders, type CsvLimits, type CsvDialect, type CsvRow, type CsvSelection } from "../safe-bash-csv-engine/index.js";
|
|
4
4
|
export { csvcut, csvcutCommand, createCsvcutCommand, csvcutCommands, parseCsvcutArguments, type CsvcutInvocation, type CsvcutCommandOptions, type CsvcutResult } from "./command.js";
|
|
5
5
|
export { createCsvcutCommands, type CsvcutCommandsOptions } from "./command.js";
|
|
6
|
+
export type { CsvLimits as CsvcutLimits } from "../safe-bash-csv-engine/index.js";
|
|
@@ -190,6 +190,7 @@ function cutCsv(source, options, configuration) {
|
|
|
190
190
|
const output = [];
|
|
191
191
|
let pendingBatch = "";
|
|
192
192
|
const chargeEncoded = (text) => {
|
|
193
|
+
b.charge("work", text.length);
|
|
193
194
|
let length = 0;
|
|
194
195
|
for (let i = 0; i < text.length; i++) {
|
|
195
196
|
const code = text.charCodeAt(i);
|
|
@@ -2,3 +2,4 @@ export { csvgrep, csvgrepCommand, createCsvgrepCommand, csvgrepCommands, parseCs
|
|
|
2
2
|
export { createMatcher, matchesRow, type MatchOptions } from "./match.js";
|
|
3
3
|
export { CsvBudget, CsvError, CsvParser, generatedHeaders, selectColumns, serializeRow, type CsvLimits, type CsvDialect, type CsvRow } from "../safe-bash-csv-engine/index.js";
|
|
4
4
|
export { createCsvgrepCommands, type CsvgrepCommandsOptions } from "./command.js";
|
|
5
|
+
export type { CsvLimits as CsvgrepLimits } from "../safe-bash-csv-engine/index.js";
|
|
@@ -525,7 +525,7 @@ async function csvgrep(context, invocation, configuration = {}) {
|
|
|
525
525
|
let stdoutWrites = 0;
|
|
526
526
|
const flushStdout = async () => {
|
|
527
527
|
if (outBatchUsed > 0) {
|
|
528
|
-
const slice = outBatch.
|
|
528
|
+
const slice = outBatch.slice(0, outBatchUsed);
|
|
529
529
|
outBatchUsed = 0;
|
|
530
530
|
stdoutWrites++;
|
|
531
531
|
await writeBytes(stdout.output, slice, signal);
|
|
@@ -778,8 +778,8 @@ async function csvgrep(context, invocation, configuration = {}) {
|
|
|
778
778
|
await flushStdout();
|
|
779
779
|
return { exitCode: 0, accounting: Object.freeze({ ...b.accounting, retainedBytes: 0 }) };
|
|
780
780
|
} catch (error) {
|
|
781
|
-
outBatchUsed = 0;
|
|
782
781
|
signal.throwIfAborted();
|
|
782
|
+
await flushStdout();
|
|
783
783
|
if (!(error instanceof CsvError2) && !(error instanceof FsError)) throw error;
|
|
784
784
|
await write(`error: ${error.message}
|
|
785
785
|
`, true);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import "../safe-bash/command-chunks/chunk-
|
|
2
|
-
import "../safe-bash/command-chunks/chunk-
|
|
1
|
+
import "../safe-bash/command-chunks/chunk-DZCY63VJ.js";
|
|
2
|
+
import "../safe-bash/command-chunks/chunk-75OFBY5R.js";
|
|
3
3
|
import "../safe-bash/command-chunks/chunk-6X2OX6IJ.js";
|
|
4
4
|
import {
|
|
5
5
|
BiffStrings,
|
|
@@ -8,17 +8,17 @@ import {
|
|
|
8
8
|
isCfb,
|
|
9
9
|
readBiffRecords,
|
|
10
10
|
readCfb
|
|
11
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
12
|
-
import "../safe-bash/command-chunks/chunk-
|
|
13
|
-
import "../safe-bash/command-chunks/chunk-
|
|
11
|
+
} from "../safe-bash/command-chunks/chunk-6ZVI7LUY.js";
|
|
12
|
+
import "../safe-bash/command-chunks/chunk-RO62EWX6.js";
|
|
13
|
+
import "../safe-bash/command-chunks/chunk-3NV3HYT2.js";
|
|
14
14
|
import "../safe-bash/command-chunks/chunk-KOM3FNCE.js";
|
|
15
|
-
import "../safe-bash/command-chunks/chunk-
|
|
16
|
-
import "../safe-bash/command-chunks/chunk-
|
|
15
|
+
import "../safe-bash/command-chunks/chunk-VA5ZHYYA.js";
|
|
16
|
+
import "../safe-bash/command-chunks/chunk-JV7LBUTP.js";
|
|
17
17
|
import {
|
|
18
18
|
SsconvertError,
|
|
19
19
|
formatA1,
|
|
20
20
|
parseA1
|
|
21
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
21
|
+
} from "../safe-bash/command-chunks/chunk-CCRHMAU5.js";
|
|
22
22
|
import {
|
|
23
23
|
normalizeEncoding,
|
|
24
24
|
pythonCodecAliases,
|
|
@@ -63,7 +63,7 @@ import {
|
|
|
63
63
|
upperText,
|
|
64
64
|
warningText,
|
|
65
65
|
writeCsvRow
|
|
66
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
66
|
+
} from "../safe-bash/command-chunks/chunk-5UBXNSFZ.js";
|
|
67
67
|
import {
|
|
68
68
|
PythonException
|
|
69
69
|
} from "../safe-bash/command-chunks/chunk-JLZPB7NB.js";
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
readCsv,
|
|
10
10
|
sniff,
|
|
11
11
|
writeCsvRow
|
|
12
|
-
} from "../safe-bash/command-chunks/chunk-
|
|
12
|
+
} from "../safe-bash/command-chunks/chunk-5UBXNSFZ.js";
|
|
13
13
|
import "../safe-bash/command-chunks/chunk-JLZPB7NB.js";
|
|
14
14
|
import "../safe-bash/command-chunks/chunk-LVCOWETH.js";
|
|
15
15
|
import "../safe-bash/command-chunks/chunk-2Z22PHMV.js";
|
|
@@ -552,6 +552,8 @@ export function createDdCommands(options = {}) {
|
|
|
552
552
|
export function ddCommands(options = {}) {
|
|
553
553
|
const command = createDdCommand(options);
|
|
554
554
|
return { name: "dd-commands", setup(host) {
|
|
555
|
+
if (!options.replace && host.commands.has(command.name))
|
|
556
|
+
throw new Error(`Command already registered: ${command.name}`);
|
|
555
557
|
host.commands.register(command, { replace: options.replace ?? false });
|
|
556
558
|
} };
|
|
557
559
|
}
|