@jerryan/just-bash 3.5.0
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/CHANGELOG.md +308 -0
- package/LICENSE +201 -0
- package/README.md +827 -0
- package/dist/AGENTS.md +383 -0
- package/dist/Bash.d.ts +317 -0
- package/dist/abort-signals.d.ts +10 -0
- package/dist/agent-sandbox.d.ts +104 -0
- package/dist/ast/types.d.ts +612 -0
- package/dist/banned-patterns-test.d.ts +1 -0
- package/dist/bin/chunks/alias-3R4G6HQY.js +3 -0
- package/dist/bin/chunks/awk2-KO7ZE3P7.js +3 -0
- package/dist/bin/chunks/base64-TQ5KOCNW.js +3 -0
- package/dist/bin/chunks/basename-C4CRGDXP.js +3 -0
- package/dist/bin/chunks/bash-CFCBBWVH.js +3 -0
- package/dist/bin/chunks/cat-BQ7FQTN5.js +3 -0
- package/dist/bin/chunks/chmod-WYYTXGVB.js +3 -0
- package/dist/bin/chunks/chunk-23OI2XDJ.js +20 -0
- package/dist/bin/chunks/chunk-2ETT4ELS.js +4 -0
- package/dist/bin/chunks/chunk-2UV6ZFHK.js +4 -0
- package/dist/bin/chunks/chunk-2YLY6FJA.js +10 -0
- package/dist/bin/chunks/chunk-3FQBUEB6.js +3 -0
- package/dist/bin/chunks/chunk-3MRB66F4.js +3 -0
- package/dist/bin/chunks/chunk-3PCPQIUD.js +3 -0
- package/dist/bin/chunks/chunk-42AMF6EE.js +3 -0
- package/dist/bin/chunks/chunk-43E7AR6A.js +3 -0
- package/dist/bin/chunks/chunk-45DUHCXR.js +7 -0
- package/dist/bin/chunks/chunk-472JZJ2D.js +22 -0
- package/dist/bin/chunks/chunk-47IFMQYS.js +3 -0
- package/dist/bin/chunks/chunk-4JF56A3P.js +15 -0
- package/dist/bin/chunks/chunk-5SKEZPTU.js +12 -0
- package/dist/bin/chunks/chunk-67XYNGRV.js +9 -0
- package/dist/bin/chunks/chunk-6ESRNSO7.js +7 -0
- package/dist/bin/chunks/chunk-6KHZX4HU.js +12 -0
- package/dist/bin/chunks/chunk-7FGDUBSN.js +14 -0
- package/dist/bin/chunks/chunk-7JZKVC3F.js +2 -0
- package/dist/bin/chunks/chunk-7PPAWLUI.js +12 -0
- package/dist/bin/chunks/chunk-7PUOS2OO.js +143 -0
- package/dist/bin/chunks/chunk-7VWOECJ3.js +101 -0
- package/dist/bin/chunks/chunk-7WBCA2BB.js +3 -0
- package/dist/bin/chunks/chunk-AGKL4LDL.js +4 -0
- package/dist/bin/chunks/chunk-AI7JUA46.js +13 -0
- package/dist/bin/chunks/chunk-AJF3OBTR.js +4 -0
- package/dist/bin/chunks/chunk-B2DRBHGQ.js +3 -0
- package/dist/bin/chunks/chunk-B2GCIQI2.js +16 -0
- package/dist/bin/chunks/chunk-B6WWC6K3.js +9 -0
- package/dist/bin/chunks/chunk-BIJXTWZ4.js +3 -0
- package/dist/bin/chunks/chunk-CC2AQ6B7.js +15 -0
- package/dist/bin/chunks/chunk-CL7IYCGG.js +20 -0
- package/dist/bin/chunks/chunk-CMTQFWZK.js +5 -0
- package/dist/bin/chunks/chunk-CPKBPQ2C.js +3 -0
- package/dist/bin/chunks/chunk-DJAX3ZRG.js +8 -0
- package/dist/bin/chunks/chunk-DN2YCFOR.js +3 -0
- package/dist/bin/chunks/chunk-DYIBFLS3.js +17 -0
- package/dist/bin/chunks/chunk-DZAFUADN.js +36 -0
- package/dist/bin/chunks/chunk-F3UDTTI7.js +13 -0
- package/dist/bin/chunks/chunk-FHMIEBRM.js +6 -0
- package/dist/bin/chunks/chunk-FONAGXRJ.js +17 -0
- package/dist/bin/chunks/chunk-FPWHWWXO.js +8 -0
- package/dist/bin/chunks/chunk-FUT3X2GJ.js +9 -0
- package/dist/bin/chunks/chunk-G4AUMZUY.js +4 -0
- package/dist/bin/chunks/chunk-GA5TPRMF.js +34 -0
- package/dist/bin/chunks/chunk-GOWX7VPU.js +7 -0
- package/dist/bin/chunks/chunk-GQKQEK5N.js +11 -0
- package/dist/bin/chunks/chunk-GR4ZHKXI.js +3 -0
- package/dist/bin/chunks/chunk-HDWHYM2T.js +18 -0
- package/dist/bin/chunks/chunk-HQ63MFHG.js +34 -0
- package/dist/bin/chunks/chunk-HW2VJKFH.js +4 -0
- package/dist/bin/chunks/chunk-HWI42GQO.js +7 -0
- package/dist/bin/chunks/chunk-HZGHQZSY.js +10 -0
- package/dist/bin/chunks/chunk-I4IRHQDW.js +3 -0
- package/dist/bin/chunks/chunk-I57EACSL.js +3 -0
- package/dist/bin/chunks/chunk-JELR4642.js +21 -0
- package/dist/bin/chunks/chunk-JQM3DKCH.js +12 -0
- package/dist/bin/chunks/chunk-K27FY3ES.js +3 -0
- package/dist/bin/chunks/chunk-KG2KXL4Y.js +3 -0
- package/dist/bin/chunks/chunk-KI54R2QB.js +3 -0
- package/dist/bin/chunks/chunk-KP2UH5CJ.js +22 -0
- package/dist/bin/chunks/chunk-KUMHQGUR.js +3 -0
- package/dist/bin/chunks/chunk-LE2XKKGQ.js +7 -0
- package/dist/bin/chunks/chunk-LJQIAFWS.js +5 -0
- package/dist/bin/chunks/chunk-LXFMIXGA.js +3 -0
- package/dist/bin/chunks/chunk-M7SIPZZZ.js +22 -0
- package/dist/bin/chunks/chunk-MF3GVFLC.js +11 -0
- package/dist/bin/chunks/chunk-MROECM42.js +3 -0
- package/dist/bin/chunks/chunk-MUFNRCMY.js +24 -0
- package/dist/bin/chunks/chunk-MVBK66TR.js +22 -0
- package/dist/bin/chunks/chunk-MYTNZ7MA.js +7 -0
- package/dist/bin/chunks/chunk-N26Y42L6.js +10 -0
- package/dist/bin/chunks/chunk-NE4R2FVV.js +5 -0
- package/dist/bin/chunks/chunk-NLU5LALY.js +37 -0
- package/dist/bin/chunks/chunk-NXUXZWS5.js +7 -0
- package/dist/bin/chunks/chunk-O2BCKSMK.js +3 -0
- package/dist/bin/chunks/chunk-OLEQNRKX.js +8 -0
- package/dist/bin/chunks/chunk-OUQKFRVR.js +6 -0
- package/dist/bin/chunks/chunk-OXLC2WWX.js +26 -0
- package/dist/bin/chunks/chunk-OYXHOZZ4.js +15 -0
- package/dist/bin/chunks/chunk-PBOVSFTJ.js +3 -0
- package/dist/bin/chunks/chunk-PPVF2N6C.js +3 -0
- package/dist/bin/chunks/chunk-PQ2INDRF.js +87 -0
- package/dist/bin/chunks/chunk-PXP4YYZA.js +13 -0
- package/dist/bin/chunks/chunk-PZQVSQX6.js +4 -0
- package/dist/bin/chunks/chunk-Q2GOPGDA.js +6 -0
- package/dist/bin/chunks/chunk-Q3LE3Y66.js +13 -0
- package/dist/bin/chunks/chunk-QES5OSUC.js +3 -0
- package/dist/bin/chunks/chunk-QFTZKD5O.js +13 -0
- package/dist/bin/chunks/chunk-QL33F2W6.js +8 -0
- package/dist/bin/chunks/chunk-QMPZXXEK.js +8 -0
- package/dist/bin/chunks/chunk-QYZN33JA.js +3 -0
- package/dist/bin/chunks/chunk-R2J5MJOM.js +20 -0
- package/dist/bin/chunks/chunk-RPUFEP5O.js +65 -0
- package/dist/bin/chunks/chunk-RVPTAYDS.js +4 -0
- package/dist/bin/chunks/chunk-SC5TEGMM.js +12 -0
- package/dist/bin/chunks/chunk-SDGPS6XI.js +10 -0
- package/dist/bin/chunks/chunk-TW2IJRUF.js +3 -0
- package/dist/bin/chunks/chunk-TYBXHT6W.js +10 -0
- package/dist/bin/chunks/chunk-V2XF3TTW.js +276 -0
- package/dist/bin/chunks/chunk-V4U26ZWL.js +16 -0
- package/dist/bin/chunks/chunk-VTAMGD42.js +3 -0
- package/dist/bin/chunks/chunk-WAJVRK5B.js +16 -0
- package/dist/bin/chunks/chunk-WEHA3JFD.js +3 -0
- package/dist/bin/chunks/chunk-WFHYGSLJ.js +6 -0
- package/dist/bin/chunks/chunk-WFVCEB5T.js +3 -0
- package/dist/bin/chunks/chunk-YERKK5B3.js +4 -0
- package/dist/bin/chunks/chunk-YIANER7Y.js +8 -0
- package/dist/bin/chunks/chunk-YJ5OCPSK.js +7 -0
- package/dist/bin/chunks/chunk-YOIFOOGX.js +9 -0
- package/dist/bin/chunks/chunk-YQEKKZTU.js +12 -0
- package/dist/bin/chunks/chunk-YUZRUF5F.js +10 -0
- package/dist/bin/chunks/chunk-ZMGLTHSU.js +15 -0
- package/dist/bin/chunks/clear-OE52K3TM.js +3 -0
- package/dist/bin/chunks/column-AJFK3TWF.js +3 -0
- package/dist/bin/chunks/comm-URDMZCXL.js +3 -0
- package/dist/bin/chunks/cp-OMVKM35F.js +3 -0
- package/dist/bin/chunks/curl-NHNZ46BU.js +31 -0
- package/dist/bin/chunks/cut-42X6363P.js +3 -0
- package/dist/bin/chunks/date-6MQGVWDY.js +3 -0
- package/dist/bin/chunks/diff-YXZZCUSQ.js +3 -0
- package/dist/bin/chunks/dirname-TPUFCYF6.js +3 -0
- package/dist/bin/chunks/dist-5MWO25Y4.js +141 -0
- package/dist/bin/chunks/du-LUFPVLNW.js +3 -0
- package/dist/bin/chunks/echo-NYDCCFWB.js +3 -0
- package/dist/bin/chunks/env-2TSVF4W7.js +3 -0
- package/dist/bin/chunks/expand-IQRKKT7D.js +3 -0
- package/dist/bin/chunks/expr-NNMDHOCN.js +3 -0
- package/dist/bin/chunks/file-4T64QNLS.js +3 -0
- package/dist/bin/chunks/find-AWH2KOY7.js +3 -0
- package/dist/bin/chunks/flag-coverage-J2ZHA465.js +3 -0
- package/dist/bin/chunks/fold-YEY7X54W.js +3 -0
- package/dist/bin/chunks/grep-CVU5V66H.js +3 -0
- package/dist/bin/chunks/gzip-FDPA6EKG.js +3 -0
- package/dist/bin/chunks/head-QKVY3SIO.js +3 -0
- package/dist/bin/chunks/help-HVIDHJ6M.js +3 -0
- package/dist/bin/chunks/history-3HAU45KT.js +3 -0
- package/dist/bin/chunks/hostname-2I76DUQL.js +3 -0
- package/dist/bin/chunks/html-to-markdown-XUMA42ZC.js +3 -0
- package/dist/bin/chunks/join-34DX7YK5.js +3 -0
- package/dist/bin/chunks/jq-V7OTAVU5.js +3 -0
- package/dist/bin/chunks/js-exec-DJQLXWCS.js +99 -0
- package/dist/bin/chunks/js-exec-worker.js +4809 -0
- package/dist/bin/chunks/ln-B35EKC2Q.js +3 -0
- package/dist/bin/chunks/ls-Q6ZZ6SQ2.js +3 -0
- package/dist/bin/chunks/md5sum-Z6KAYGDK.js +3 -0
- package/dist/bin/chunks/mkdir-74BP5NTG.js +3 -0
- package/dist/bin/chunks/mv-76LAHXFR.js +3 -0
- package/dist/bin/chunks/nl-4IZRRT7U.js +3 -0
- package/dist/bin/chunks/od-2GXD4D5K.js +3 -0
- package/dist/bin/chunks/paste-DWWA3JTW.js +3 -0
- package/dist/bin/chunks/printf-YXCSED2H.js +3 -0
- package/dist/bin/chunks/pwd-YKLNXWZI.js +3 -0
- package/dist/bin/chunks/python3-JCJHSX4Z.js +14 -0
- package/dist/bin/chunks/readlink-EHXJNW62.js +3 -0
- package/dist/bin/chunks/rev-CZTQCNOZ.js +3 -0
- package/dist/bin/chunks/rg-PXNKNIMY.js +3 -0
- package/dist/bin/chunks/rm-3PLW4O4B.js +3 -0
- package/dist/bin/chunks/rmdir-7ZIVFZJX.js +3 -0
- package/dist/bin/chunks/sed-4LVDFHIJ.js +3 -0
- package/dist/bin/chunks/seq-X2EAOGV5.js +3 -0
- package/dist/bin/chunks/sha1sum-CATBXX76.js +3 -0
- package/dist/bin/chunks/sha256sum-YGSNBVY3.js +3 -0
- package/dist/bin/chunks/sleep-DVFE2GSF.js +3 -0
- package/dist/bin/chunks/sort-HBOCBBJQ.js +3 -0
- package/dist/bin/chunks/split-ZNNNHKSP.js +3 -0
- package/dist/bin/chunks/sqlite3-KP42NNIY.js +3 -0
- package/dist/bin/chunks/sqlite3-worker.js +1928 -0
- package/dist/bin/chunks/stat-LROLDXHH.js +3 -0
- package/dist/bin/chunks/strings-CNUK76JL.js +3 -0
- package/dist/bin/chunks/tac-DG4BMYM5.js +3 -0
- package/dist/bin/chunks/tail-UOTUV25D.js +3 -0
- package/dist/bin/chunks/tar-7HGZIMZD.js +3 -0
- package/dist/bin/chunks/tee-L4HKV5PD.js +3 -0
- package/dist/bin/chunks/time-LF7BTSK5.js +3 -0
- package/dist/bin/chunks/timeout-YGFHQJKX.js +3 -0
- package/dist/bin/chunks/touch-TVQAUQOG.js +3 -0
- package/dist/bin/chunks/tr-PVFO6FRY.js +3 -0
- package/dist/bin/chunks/tree-ZGP6NPGS.js +3 -0
- package/dist/bin/chunks/true-KFTJGQLQ.js +3 -0
- package/dist/bin/chunks/unexpand-JPOQORZF.js +3 -0
- package/dist/bin/chunks/uniq-JMHDIJXT.js +3 -0
- package/dist/bin/chunks/wc-3KLVOCI2.js +3 -0
- package/dist/bin/chunks/which-4TPGVSBZ.js +3 -0
- package/dist/bin/chunks/whoami-B5HDVKW6.js +3 -0
- package/dist/bin/chunks/worker.js +3330 -0
- package/dist/bin/chunks/xan-WW53ETXT.js +3 -0
- package/dist/bin/chunks/xan-view-PD26QEFN.js +3 -0
- package/dist/bin/chunks/xargs-4AMMXFXL.js +3 -0
- package/dist/bin/chunks/yq-MYZOS2WN.js +3 -0
- package/dist/bin/just-bash.js +858 -0
- package/dist/bin/shell/chunks/alias-3R4G6HQY.js +3 -0
- package/dist/bin/shell/chunks/awk2-KO7ZE3P7.js +3 -0
- package/dist/bin/shell/chunks/base64-TQ5KOCNW.js +3 -0
- package/dist/bin/shell/chunks/basename-C4CRGDXP.js +3 -0
- package/dist/bin/shell/chunks/bash-CFCBBWVH.js +3 -0
- package/dist/bin/shell/chunks/cat-BQ7FQTN5.js +3 -0
- package/dist/bin/shell/chunks/chmod-WYYTXGVB.js +3 -0
- package/dist/bin/shell/chunks/chunk-23OI2XDJ.js +20 -0
- package/dist/bin/shell/chunks/chunk-2ETT4ELS.js +4 -0
- package/dist/bin/shell/chunks/chunk-2UV6ZFHK.js +4 -0
- package/dist/bin/shell/chunks/chunk-2YLY6FJA.js +10 -0
- package/dist/bin/shell/chunks/chunk-3FQBUEB6.js +3 -0
- package/dist/bin/shell/chunks/chunk-3MRB66F4.js +3 -0
- package/dist/bin/shell/chunks/chunk-3PCPQIUD.js +3 -0
- package/dist/bin/shell/chunks/chunk-42AMF6EE.js +3 -0
- package/dist/bin/shell/chunks/chunk-43E7AR6A.js +3 -0
- package/dist/bin/shell/chunks/chunk-45DUHCXR.js +7 -0
- package/dist/bin/shell/chunks/chunk-472JZJ2D.js +22 -0
- package/dist/bin/shell/chunks/chunk-47IFMQYS.js +3 -0
- package/dist/bin/shell/chunks/chunk-4JF56A3P.js +15 -0
- package/dist/bin/shell/chunks/chunk-5SKEZPTU.js +12 -0
- package/dist/bin/shell/chunks/chunk-67XYNGRV.js +9 -0
- package/dist/bin/shell/chunks/chunk-6ESRNSO7.js +7 -0
- package/dist/bin/shell/chunks/chunk-6KHZX4HU.js +12 -0
- package/dist/bin/shell/chunks/chunk-7FGDUBSN.js +14 -0
- package/dist/bin/shell/chunks/chunk-7JZKVC3F.js +2 -0
- package/dist/bin/shell/chunks/chunk-7PPAWLUI.js +12 -0
- package/dist/bin/shell/chunks/chunk-7PUOS2OO.js +143 -0
- package/dist/bin/shell/chunks/chunk-7VWOECJ3.js +101 -0
- package/dist/bin/shell/chunks/chunk-7WBCA2BB.js +3 -0
- package/dist/bin/shell/chunks/chunk-AGKL4LDL.js +4 -0
- package/dist/bin/shell/chunks/chunk-AI7JUA46.js +13 -0
- package/dist/bin/shell/chunks/chunk-AJF3OBTR.js +4 -0
- package/dist/bin/shell/chunks/chunk-B2DRBHGQ.js +3 -0
- package/dist/bin/shell/chunks/chunk-B2GCIQI2.js +16 -0
- package/dist/bin/shell/chunks/chunk-B6WWC6K3.js +9 -0
- package/dist/bin/shell/chunks/chunk-BIJXTWZ4.js +3 -0
- package/dist/bin/shell/chunks/chunk-CC2AQ6B7.js +15 -0
- package/dist/bin/shell/chunks/chunk-CL7IYCGG.js +20 -0
- package/dist/bin/shell/chunks/chunk-CMTQFWZK.js +5 -0
- package/dist/bin/shell/chunks/chunk-CPKBPQ2C.js +3 -0
- package/dist/bin/shell/chunks/chunk-DJAX3ZRG.js +8 -0
- package/dist/bin/shell/chunks/chunk-DN2YCFOR.js +3 -0
- package/dist/bin/shell/chunks/chunk-DYIBFLS3.js +17 -0
- package/dist/bin/shell/chunks/chunk-DZAFUADN.js +36 -0
- package/dist/bin/shell/chunks/chunk-F3UDTTI7.js +13 -0
- package/dist/bin/shell/chunks/chunk-FHMIEBRM.js +6 -0
- package/dist/bin/shell/chunks/chunk-FONAGXRJ.js +17 -0
- package/dist/bin/shell/chunks/chunk-FPWHWWXO.js +8 -0
- package/dist/bin/shell/chunks/chunk-FUT3X2GJ.js +9 -0
- package/dist/bin/shell/chunks/chunk-G4AUMZUY.js +4 -0
- package/dist/bin/shell/chunks/chunk-GA5TPRMF.js +34 -0
- package/dist/bin/shell/chunks/chunk-GOWX7VPU.js +7 -0
- package/dist/bin/shell/chunks/chunk-GQKQEK5N.js +11 -0
- package/dist/bin/shell/chunks/chunk-GR4ZHKXI.js +3 -0
- package/dist/bin/shell/chunks/chunk-HDWHYM2T.js +18 -0
- package/dist/bin/shell/chunks/chunk-HQ63MFHG.js +34 -0
- package/dist/bin/shell/chunks/chunk-HW2VJKFH.js +4 -0
- package/dist/bin/shell/chunks/chunk-HWI42GQO.js +7 -0
- package/dist/bin/shell/chunks/chunk-HZGHQZSY.js +10 -0
- package/dist/bin/shell/chunks/chunk-I4IRHQDW.js +3 -0
- package/dist/bin/shell/chunks/chunk-I57EACSL.js +3 -0
- package/dist/bin/shell/chunks/chunk-JELR4642.js +21 -0
- package/dist/bin/shell/chunks/chunk-JQM3DKCH.js +12 -0
- package/dist/bin/shell/chunks/chunk-K27FY3ES.js +3 -0
- package/dist/bin/shell/chunks/chunk-KG2KXL4Y.js +3 -0
- package/dist/bin/shell/chunks/chunk-KI54R2QB.js +3 -0
- package/dist/bin/shell/chunks/chunk-KP2UH5CJ.js +22 -0
- package/dist/bin/shell/chunks/chunk-KUMHQGUR.js +3 -0
- package/dist/bin/shell/chunks/chunk-LE2XKKGQ.js +7 -0
- package/dist/bin/shell/chunks/chunk-LJQIAFWS.js +5 -0
- package/dist/bin/shell/chunks/chunk-LXFMIXGA.js +3 -0
- package/dist/bin/shell/chunks/chunk-M7SIPZZZ.js +22 -0
- package/dist/bin/shell/chunks/chunk-MF3GVFLC.js +11 -0
- package/dist/bin/shell/chunks/chunk-MROECM42.js +3 -0
- package/dist/bin/shell/chunks/chunk-MUFNRCMY.js +24 -0
- package/dist/bin/shell/chunks/chunk-MVBK66TR.js +22 -0
- package/dist/bin/shell/chunks/chunk-MYTNZ7MA.js +7 -0
- package/dist/bin/shell/chunks/chunk-N26Y42L6.js +10 -0
- package/dist/bin/shell/chunks/chunk-NE4R2FVV.js +5 -0
- package/dist/bin/shell/chunks/chunk-NLU5LALY.js +37 -0
- package/dist/bin/shell/chunks/chunk-NXUXZWS5.js +7 -0
- package/dist/bin/shell/chunks/chunk-O2BCKSMK.js +3 -0
- package/dist/bin/shell/chunks/chunk-OLEQNRKX.js +8 -0
- package/dist/bin/shell/chunks/chunk-OUQKFRVR.js +6 -0
- package/dist/bin/shell/chunks/chunk-OXLC2WWX.js +26 -0
- package/dist/bin/shell/chunks/chunk-OYXHOZZ4.js +15 -0
- package/dist/bin/shell/chunks/chunk-PBOVSFTJ.js +3 -0
- package/dist/bin/shell/chunks/chunk-PPVF2N6C.js +3 -0
- package/dist/bin/shell/chunks/chunk-PQ2INDRF.js +87 -0
- package/dist/bin/shell/chunks/chunk-PXP4YYZA.js +13 -0
- package/dist/bin/shell/chunks/chunk-PZQVSQX6.js +4 -0
- package/dist/bin/shell/chunks/chunk-Q2GOPGDA.js +6 -0
- package/dist/bin/shell/chunks/chunk-Q3LE3Y66.js +13 -0
- package/dist/bin/shell/chunks/chunk-QES5OSUC.js +3 -0
- package/dist/bin/shell/chunks/chunk-QFTZKD5O.js +13 -0
- package/dist/bin/shell/chunks/chunk-QL33F2W6.js +8 -0
- package/dist/bin/shell/chunks/chunk-QMPZXXEK.js +8 -0
- package/dist/bin/shell/chunks/chunk-QYZN33JA.js +3 -0
- package/dist/bin/shell/chunks/chunk-R2J5MJOM.js +20 -0
- package/dist/bin/shell/chunks/chunk-RPUFEP5O.js +65 -0
- package/dist/bin/shell/chunks/chunk-RVPTAYDS.js +4 -0
- package/dist/bin/shell/chunks/chunk-SC5TEGMM.js +12 -0
- package/dist/bin/shell/chunks/chunk-SDGPS6XI.js +10 -0
- package/dist/bin/shell/chunks/chunk-TW2IJRUF.js +3 -0
- package/dist/bin/shell/chunks/chunk-TYBXHT6W.js +10 -0
- package/dist/bin/shell/chunks/chunk-V2XF3TTW.js +276 -0
- package/dist/bin/shell/chunks/chunk-V4U26ZWL.js +16 -0
- package/dist/bin/shell/chunks/chunk-VTAMGD42.js +3 -0
- package/dist/bin/shell/chunks/chunk-WAJVRK5B.js +16 -0
- package/dist/bin/shell/chunks/chunk-WEHA3JFD.js +3 -0
- package/dist/bin/shell/chunks/chunk-WFHYGSLJ.js +6 -0
- package/dist/bin/shell/chunks/chunk-WFVCEB5T.js +3 -0
- package/dist/bin/shell/chunks/chunk-YERKK5B3.js +4 -0
- package/dist/bin/shell/chunks/chunk-YIANER7Y.js +8 -0
- package/dist/bin/shell/chunks/chunk-YJ5OCPSK.js +7 -0
- package/dist/bin/shell/chunks/chunk-YOIFOOGX.js +9 -0
- package/dist/bin/shell/chunks/chunk-YQEKKZTU.js +12 -0
- package/dist/bin/shell/chunks/chunk-YUZRUF5F.js +10 -0
- package/dist/bin/shell/chunks/chunk-ZMGLTHSU.js +15 -0
- package/dist/bin/shell/chunks/clear-OE52K3TM.js +3 -0
- package/dist/bin/shell/chunks/column-AJFK3TWF.js +3 -0
- package/dist/bin/shell/chunks/comm-URDMZCXL.js +3 -0
- package/dist/bin/shell/chunks/cp-OMVKM35F.js +3 -0
- package/dist/bin/shell/chunks/curl-NHNZ46BU.js +31 -0
- package/dist/bin/shell/chunks/cut-42X6363P.js +3 -0
- package/dist/bin/shell/chunks/date-6MQGVWDY.js +3 -0
- package/dist/bin/shell/chunks/diff-YXZZCUSQ.js +3 -0
- package/dist/bin/shell/chunks/dirname-TPUFCYF6.js +3 -0
- package/dist/bin/shell/chunks/dist-5MWO25Y4.js +141 -0
- package/dist/bin/shell/chunks/du-LUFPVLNW.js +3 -0
- package/dist/bin/shell/chunks/echo-NYDCCFWB.js +3 -0
- package/dist/bin/shell/chunks/env-2TSVF4W7.js +3 -0
- package/dist/bin/shell/chunks/expand-IQRKKT7D.js +3 -0
- package/dist/bin/shell/chunks/expr-NNMDHOCN.js +3 -0
- package/dist/bin/shell/chunks/file-4T64QNLS.js +3 -0
- package/dist/bin/shell/chunks/find-AWH2KOY7.js +3 -0
- package/dist/bin/shell/chunks/flag-coverage-J2ZHA465.js +3 -0
- package/dist/bin/shell/chunks/fold-YEY7X54W.js +3 -0
- package/dist/bin/shell/chunks/grep-CVU5V66H.js +3 -0
- package/dist/bin/shell/chunks/gzip-FDPA6EKG.js +3 -0
- package/dist/bin/shell/chunks/head-QKVY3SIO.js +3 -0
- package/dist/bin/shell/chunks/help-HVIDHJ6M.js +3 -0
- package/dist/bin/shell/chunks/history-3HAU45KT.js +3 -0
- package/dist/bin/shell/chunks/hostname-2I76DUQL.js +3 -0
- package/dist/bin/shell/chunks/html-to-markdown-XUMA42ZC.js +3 -0
- package/dist/bin/shell/chunks/join-34DX7YK5.js +3 -0
- package/dist/bin/shell/chunks/jq-V7OTAVU5.js +3 -0
- package/dist/bin/shell/chunks/js-exec-DJQLXWCS.js +99 -0
- package/dist/bin/shell/chunks/ln-B35EKC2Q.js +3 -0
- package/dist/bin/shell/chunks/ls-Q6ZZ6SQ2.js +3 -0
- package/dist/bin/shell/chunks/md5sum-Z6KAYGDK.js +3 -0
- package/dist/bin/shell/chunks/mkdir-74BP5NTG.js +3 -0
- package/dist/bin/shell/chunks/mv-76LAHXFR.js +3 -0
- package/dist/bin/shell/chunks/nl-4IZRRT7U.js +3 -0
- package/dist/bin/shell/chunks/od-2GXD4D5K.js +3 -0
- package/dist/bin/shell/chunks/paste-DWWA3JTW.js +3 -0
- package/dist/bin/shell/chunks/printf-YXCSED2H.js +3 -0
- package/dist/bin/shell/chunks/pwd-YKLNXWZI.js +3 -0
- package/dist/bin/shell/chunks/python3-JCJHSX4Z.js +14 -0
- package/dist/bin/shell/chunks/readlink-EHXJNW62.js +3 -0
- package/dist/bin/shell/chunks/rev-CZTQCNOZ.js +3 -0
- package/dist/bin/shell/chunks/rg-PXNKNIMY.js +3 -0
- package/dist/bin/shell/chunks/rm-3PLW4O4B.js +3 -0
- package/dist/bin/shell/chunks/rmdir-7ZIVFZJX.js +3 -0
- package/dist/bin/shell/chunks/sed-4LVDFHIJ.js +3 -0
- package/dist/bin/shell/chunks/seq-X2EAOGV5.js +3 -0
- package/dist/bin/shell/chunks/sha1sum-CATBXX76.js +3 -0
- package/dist/bin/shell/chunks/sha256sum-YGSNBVY3.js +3 -0
- package/dist/bin/shell/chunks/sleep-DVFE2GSF.js +3 -0
- package/dist/bin/shell/chunks/sort-HBOCBBJQ.js +3 -0
- package/dist/bin/shell/chunks/split-ZNNNHKSP.js +3 -0
- package/dist/bin/shell/chunks/sqlite3-KP42NNIY.js +3 -0
- package/dist/bin/shell/chunks/stat-LROLDXHH.js +3 -0
- package/dist/bin/shell/chunks/strings-CNUK76JL.js +3 -0
- package/dist/bin/shell/chunks/tac-DG4BMYM5.js +3 -0
- package/dist/bin/shell/chunks/tail-UOTUV25D.js +3 -0
- package/dist/bin/shell/chunks/tar-7HGZIMZD.js +3 -0
- package/dist/bin/shell/chunks/tee-L4HKV5PD.js +3 -0
- package/dist/bin/shell/chunks/time-LF7BTSK5.js +3 -0
- package/dist/bin/shell/chunks/timeout-YGFHQJKX.js +3 -0
- package/dist/bin/shell/chunks/touch-TVQAUQOG.js +3 -0
- package/dist/bin/shell/chunks/tr-PVFO6FRY.js +3 -0
- package/dist/bin/shell/chunks/tree-ZGP6NPGS.js +3 -0
- package/dist/bin/shell/chunks/true-KFTJGQLQ.js +3 -0
- package/dist/bin/shell/chunks/unexpand-JPOQORZF.js +3 -0
- package/dist/bin/shell/chunks/uniq-JMHDIJXT.js +3 -0
- package/dist/bin/shell/chunks/wc-3KLVOCI2.js +3 -0
- package/dist/bin/shell/chunks/which-4TPGVSBZ.js +3 -0
- package/dist/bin/shell/chunks/whoami-B5HDVKW6.js +3 -0
- package/dist/bin/shell/chunks/xan-WW53ETXT.js +3 -0
- package/dist/bin/shell/chunks/xan-view-PD26QEFN.js +3 -0
- package/dist/bin/shell/chunks/xargs-4AMMXFXL.js +3 -0
- package/dist/bin/shell/chunks/yq-MYZOS2WN.js +3 -0
- package/dist/bin/shell/shell.js +834 -0
- package/dist/bounded-builder.d.ts +37 -0
- package/dist/browser.d.ts +23 -0
- package/dist/bundle/browser.js +1576 -0
- package/dist/bundle/chunks/alias-T5TO5GWK.js +2 -0
- package/dist/bundle/chunks/awk2-W6BNZEJN.js +2 -0
- package/dist/bundle/chunks/base64-MHVQ5XHI.js +2 -0
- package/dist/bundle/chunks/basename-SJZQ5W65.js +2 -0
- package/dist/bundle/chunks/bash-HIEWVHJ2.js +2 -0
- package/dist/bundle/chunks/cat-VZBWBIJB.js +2 -0
- package/dist/bundle/chunks/chmod-WM2JFFQC.js +2 -0
- package/dist/bundle/chunks/chunk-24NLAR7R.js +36 -0
- package/dist/bundle/chunks/chunk-26GP3ACY.js +12 -0
- package/dist/bundle/chunks/chunk-2KNTH3KH.js +9 -0
- package/dist/bundle/chunks/chunk-2SMD2AUA.js +3 -0
- package/dist/bundle/chunks/chunk-2TSZPVPI.js +21 -0
- package/dist/bundle/chunks/chunk-2VWG4LDT.js +11 -0
- package/dist/bundle/chunks/chunk-3WASQYTF.js +11 -0
- package/dist/bundle/chunks/chunk-44YCJWNC.js +6 -0
- package/dist/bundle/chunks/chunk-4EDQZIAN.js +5 -0
- package/dist/bundle/chunks/chunk-4MJ7VJG4.js +21 -0
- package/dist/bundle/chunks/chunk-4MZPEZTU.js +3 -0
- package/dist/bundle/chunks/chunk-57LGFT4S.js +3 -0
- package/dist/bundle/chunks/chunk-5I5U6IYI.js +142 -0
- package/dist/bundle/chunks/chunk-6DDRR56B.js +33 -0
- package/dist/bundle/chunks/chunk-6QF3PCMO.js +8 -0
- package/dist/bundle/chunks/chunk-6RK4AAB7.js +21 -0
- package/dist/bundle/chunks/chunk-6WGIZV3E.js +13 -0
- package/dist/bundle/chunks/chunk-73JQKNZT.js +33 -0
- package/dist/bundle/chunks/chunk-7AISL3XV.js +12 -0
- package/dist/bundle/chunks/chunk-7EUWTCWK.js +2 -0
- package/dist/bundle/chunks/chunk-7IJWBG4I.js +2 -0
- package/dist/bundle/chunks/chunk-7O2RDO2R.js +14 -0
- package/dist/bundle/chunks/chunk-A4R2GWRF.js +9 -0
- package/dist/bundle/chunks/chunk-AGH5UJJI.js +4 -0
- package/dist/bundle/chunks/chunk-ANCQ4SCV.js +2 -0
- package/dist/bundle/chunks/chunk-ASE6AYV3.js +17 -0
- package/dist/bundle/chunks/chunk-AYSZ5MAE.js +2 -0
- package/dist/bundle/chunks/chunk-BKUWXPEM.js +2 -0
- package/dist/bundle/chunks/chunk-BRJERIF4.js +2 -0
- package/dist/bundle/chunks/chunk-DAKEIWT3.js +21 -0
- package/dist/bundle/chunks/chunk-DLL7UR66.js +2 -0
- package/dist/bundle/chunks/chunk-DMWNBCXJ.js +10 -0
- package/dist/bundle/chunks/chunk-DVSA72LH.js +2 -0
- package/dist/bundle/chunks/chunk-EJFBIRMD.js +6 -0
- package/dist/bundle/chunks/chunk-EZNS4GF7.js +9 -0
- package/dist/bundle/chunks/chunk-F6XU52K3.js +35 -0
- package/dist/bundle/chunks/chunk-FHC24QSK.js +7 -0
- package/dist/bundle/chunks/chunk-FIMF2TLE.js +20 -0
- package/dist/bundle/chunks/chunk-FOCWZZDE.js +2 -0
- package/dist/bundle/chunks/chunk-FQUVK4Q5.js +11 -0
- package/dist/bundle/chunks/chunk-FSJ6TTCC.js +19 -0
- package/dist/bundle/chunks/chunk-FT6ODGOU.js +2 -0
- package/dist/bundle/chunks/chunk-FTET43KM.js +2 -0
- package/dist/bundle/chunks/chunk-FX4RBUYU.js +5 -0
- package/dist/bundle/chunks/chunk-FZRQOL3C.js +7 -0
- package/dist/bundle/chunks/chunk-FZZL53S2.js +275 -0
- package/dist/bundle/chunks/chunk-GN6CQ3J4.js +2 -0
- package/dist/bundle/chunks/chunk-HDRAUQK2.js +2 -0
- package/dist/bundle/chunks/chunk-HP7HWZ2S.js +15 -0
- package/dist/bundle/chunks/chunk-HRIJVWZS.js +14 -0
- package/dist/bundle/chunks/chunk-HXWB4Z5X.js +7 -0
- package/dist/bundle/chunks/chunk-ICLA3MUR.js +3 -0
- package/dist/bundle/chunks/chunk-IXFQXNL4.js +7 -0
- package/dist/bundle/chunks/chunk-KIGPB52X.js +2 -0
- package/dist/bundle/chunks/chunk-L2UW7DWF.js +2 -0
- package/dist/bundle/chunks/chunk-LI6PTSPD.js +9 -0
- package/dist/bundle/chunks/chunk-LPJEKUCB.js +8 -0
- package/dist/bundle/chunks/chunk-LSLPJOYM.js +3 -0
- package/dist/bundle/chunks/chunk-LVDUF74R.js +7 -0
- package/dist/bundle/chunks/chunk-MLIO3BK2.js +7 -0
- package/dist/bundle/chunks/chunk-MQKGGNPS.js +16 -0
- package/dist/bundle/chunks/chunk-N3A4JVFJ.js +2 -0
- package/dist/bundle/chunks/chunk-NBNI7G66.js +8 -0
- package/dist/bundle/chunks/chunk-NCUTH6QL.js +2 -0
- package/dist/bundle/chunks/chunk-OQ7C4FYO.js +2 -0
- package/dist/bundle/chunks/chunk-P57S6Z6R.js +6 -0
- package/dist/bundle/chunks/chunk-PCPW54JH.js +7 -0
- package/dist/bundle/chunks/chunk-PJM5C3HZ.js +25 -0
- package/dist/bundle/chunks/chunk-PPEXVPHR.js +19 -0
- package/dist/bundle/chunks/chunk-Q4JSJ3KQ.js +4 -0
- package/dist/bundle/chunks/chunk-QAYAQNCG.js +23 -0
- package/dist/bundle/chunks/chunk-QHDBQA5N.js +9 -0
- package/dist/bundle/chunks/chunk-QIQMJJZ4.js +4 -0
- package/dist/bundle/chunks/chunk-QJ7OXJAZ.js +6 -0
- package/dist/bundle/chunks/chunk-QJFYYEFV.js +11 -0
- package/dist/bundle/chunks/chunk-R2FBRMDU.js +14 -0
- package/dist/bundle/chunks/chunk-ROAWFE6V.js +5 -0
- package/dist/bundle/chunks/chunk-RPKJJFGZ.js +14 -0
- package/dist/bundle/chunks/chunk-S3ENGQML.js +15 -0
- package/dist/bundle/chunks/chunk-SBBYKIYU.js +3 -0
- package/dist/bundle/chunks/chunk-SGX4WOAM.js +2 -0
- package/dist/bundle/chunks/chunk-SHKOQWO4.js +3 -0
- package/dist/bundle/chunks/chunk-SIOONII3.js +2 -0
- package/dist/bundle/chunks/chunk-STHBFACM.js +1 -0
- package/dist/bundle/chunks/chunk-SX2HC7SO.js +2 -0
- package/dist/bundle/chunks/chunk-T6DNSPYO.js +100 -0
- package/dist/bundle/chunks/chunk-TBVD66LC.js +10 -0
- package/dist/bundle/chunks/chunk-TDD4NFYE.js +2 -0
- package/dist/bundle/chunks/chunk-TVCZIH6M.js +8 -0
- package/dist/bundle/chunks/chunk-U4K5ZDWK.js +9 -0
- package/dist/bundle/chunks/chunk-UC76ZOWM.js +15 -0
- package/dist/bundle/chunks/chunk-UIJUTQPH.js +3 -0
- package/dist/bundle/chunks/chunk-ULXTDFQC.js +2 -0
- package/dist/bundle/chunks/chunk-UTKGYVUZ.js +7 -0
- package/dist/bundle/chunks/chunk-UUIYAOD4.js +2 -0
- package/dist/bundle/chunks/chunk-VJ6UXG2R.js +64 -0
- package/dist/bundle/chunks/chunk-W2Z6LYL6.js +11 -0
- package/dist/bundle/chunks/chunk-W5DWRFSU.js +2 -0
- package/dist/bundle/chunks/chunk-WN54B5NQ.js +12 -0
- package/dist/bundle/chunks/chunk-WNH3HOQA.js +2 -0
- package/dist/bundle/chunks/chunk-WXPNKIIH.js +2 -0
- package/dist/bundle/chunks/chunk-WZQNMEQW.js +2 -0
- package/dist/bundle/chunks/chunk-XV2V56NQ.js +12 -0
- package/dist/bundle/chunks/chunk-XVSR5HHH.js +6 -0
- package/dist/bundle/chunks/chunk-XXBIOG4R.js +5 -0
- package/dist/bundle/chunks/chunk-Y62SXZKJ.js +12 -0
- package/dist/bundle/chunks/chunk-YEYSCLSJ.js +3 -0
- package/dist/bundle/chunks/chunk-YJKHREBZ.js +11 -0
- package/dist/bundle/chunks/chunk-YUSFCOM7.js +2 -0
- package/dist/bundle/chunks/chunk-ZBUZKIPX.js +6 -0
- package/dist/bundle/chunks/chunk-ZDPFA4L3.js +6 -0
- package/dist/bundle/chunks/chunk-ZT3WF5R7.js +16 -0
- package/dist/bundle/chunks/chunk-ZXFELXJH.js +6 -0
- package/dist/bundle/chunks/clear-KPIUNI6K.js +2 -0
- package/dist/bundle/chunks/column-QJI65SH2.js +2 -0
- package/dist/bundle/chunks/comm-DTWKU2MC.js +2 -0
- package/dist/bundle/chunks/cp-2KZIPZJS.js +2 -0
- package/dist/bundle/chunks/curl-K4WT7UPN.js +30 -0
- package/dist/bundle/chunks/cut-FMDNVWQN.js +2 -0
- package/dist/bundle/chunks/date-7OEDRA27.js +2 -0
- package/dist/bundle/chunks/diff-CSARC7WF.js +2 -0
- package/dist/bundle/chunks/dirname-Z2ZMOOW2.js +2 -0
- package/dist/bundle/chunks/du-7AZCLKR6.js +2 -0
- package/dist/bundle/chunks/echo-PLLZYM2L.js +2 -0
- package/dist/bundle/chunks/env-VUUMB47B.js +2 -0
- package/dist/bundle/chunks/expand-J3VOSOMK.js +2 -0
- package/dist/bundle/chunks/expr-XSBELPAC.js +2 -0
- package/dist/bundle/chunks/file-URNAD6FQ.js +2 -0
- package/dist/bundle/chunks/find-END3EAHV.js +2 -0
- package/dist/bundle/chunks/flag-coverage-DPSAPFXA.js +2 -0
- package/dist/bundle/chunks/fold-QJBPHRFJ.js +2 -0
- package/dist/bundle/chunks/grep-4AYF3A5J.js +2 -0
- package/dist/bundle/chunks/gzip-RQOBR22H.js +2 -0
- package/dist/bundle/chunks/head-6UIPFWVJ.js +2 -0
- package/dist/bundle/chunks/help-QDDMBDU7.js +2 -0
- package/dist/bundle/chunks/history-3N762S3K.js +2 -0
- package/dist/bundle/chunks/hostname-CESD3CQR.js +2 -0
- package/dist/bundle/chunks/html-to-markdown-PE6BPRPA.js +2 -0
- package/dist/bundle/chunks/join-C2B6NGXH.js +2 -0
- package/dist/bundle/chunks/jq-NY7PCVMH.js +2 -0
- package/dist/bundle/chunks/js-exec-XKF2B7C3.js +98 -0
- package/dist/bundle/chunks/js-exec-worker.js +4809 -0
- package/dist/bundle/chunks/ln-OPY2ZVGQ.js +2 -0
- package/dist/bundle/chunks/ls-ZPXGZX63.js +2 -0
- package/dist/bundle/chunks/md5sum-JEDX55KS.js +2 -0
- package/dist/bundle/chunks/mkdir-WDDKK2P3.js +2 -0
- package/dist/bundle/chunks/mv-ZF6UBVRB.js +2 -0
- package/dist/bundle/chunks/nl-IELOWYJG.js +2 -0
- package/dist/bundle/chunks/od-Z4AIL3P4.js +2 -0
- package/dist/bundle/chunks/paste-ZNHNSRBW.js +2 -0
- package/dist/bundle/chunks/printf-B2NSYQ3N.js +2 -0
- package/dist/bundle/chunks/pwd-76BPYV5F.js +2 -0
- package/dist/bundle/chunks/python3-F5S5TYGS.js +13 -0
- package/dist/bundle/chunks/readlink-U5OM5A3M.js +2 -0
- package/dist/bundle/chunks/rev-EPOS3MFH.js +2 -0
- package/dist/bundle/chunks/rg-NAMXBYKS.js +2 -0
- package/dist/bundle/chunks/rm-JQ4GDKDD.js +2 -0
- package/dist/bundle/chunks/rmdir-YJKPQVCK.js +2 -0
- package/dist/bundle/chunks/sed-LIRH26EA.js +2 -0
- package/dist/bundle/chunks/seq-B6KDLMYQ.js +2 -0
- package/dist/bundle/chunks/sha1sum-BLPZJ6MP.js +2 -0
- package/dist/bundle/chunks/sha256sum-VJZ4PHQ4.js +2 -0
- package/dist/bundle/chunks/sleep-PPRBTSVR.js +2 -0
- package/dist/bundle/chunks/sort-CB5GO7XH.js +2 -0
- package/dist/bundle/chunks/split-JICLAMP6.js +2 -0
- package/dist/bundle/chunks/sqlite3-4EZ4GXVD.js +2 -0
- package/dist/bundle/chunks/sqlite3-worker.js +1928 -0
- package/dist/bundle/chunks/stat-LXFZND2P.js +2 -0
- package/dist/bundle/chunks/strings-VLFTYX2Z.js +2 -0
- package/dist/bundle/chunks/tac-YXC4HBTR.js +2 -0
- package/dist/bundle/chunks/tail-UBGSN4JF.js +2 -0
- package/dist/bundle/chunks/tar-B72KU357.js +2 -0
- package/dist/bundle/chunks/tee-OOWSWHRQ.js +2 -0
- package/dist/bundle/chunks/time-NERE2JJ2.js +2 -0
- package/dist/bundle/chunks/timeout-C6WDYPLV.js +2 -0
- package/dist/bundle/chunks/touch-W4DF6Z4T.js +2 -0
- package/dist/bundle/chunks/tr-UI2LA3GA.js +2 -0
- package/dist/bundle/chunks/tree-7OOL2MH6.js +2 -0
- package/dist/bundle/chunks/true-QUBPEGGU.js +2 -0
- package/dist/bundle/chunks/unexpand-YD5BWFH4.js +2 -0
- package/dist/bundle/chunks/uniq-PAEPA27E.js +2 -0
- package/dist/bundle/chunks/wc-7WVM7GV4.js +2 -0
- package/dist/bundle/chunks/which-UWVKETYW.js +2 -0
- package/dist/bundle/chunks/whoami-KR6E7UIR.js +2 -0
- package/dist/bundle/chunks/worker.js +3330 -0
- package/dist/bundle/chunks/xan-UIGVJCMA.js +2 -0
- package/dist/bundle/chunks/xan-view-FOCYCKZQ.js +2 -0
- package/dist/bundle/chunks/xargs-VQEXRD3C.js +2 -0
- package/dist/bundle/chunks/yq-FGNXZCGX.js +2 -0
- package/dist/bundle/index.cjs +2237 -0
- package/dist/bundle/index.js +809 -0
- package/dist/commands/alias/alias.d.ts +6 -0
- package/dist/commands/awk/ast.d.ts +202 -0
- package/dist/commands/awk/awk2.d.ts +9 -0
- package/dist/commands/awk/builtins.d.ts +17 -0
- package/dist/commands/awk/interpreter/context.d.ts +88 -0
- package/dist/commands/awk/interpreter/expressions.d.ts +17 -0
- package/dist/commands/awk/interpreter/fields.d.ts +25 -0
- package/dist/commands/awk/interpreter/index.d.ts +8 -0
- package/dist/commands/awk/interpreter/interpreter.d.ts +54 -0
- package/dist/commands/awk/interpreter/statements.d.ts +11 -0
- package/dist/commands/awk/interpreter/type-coercion.d.ts +32 -0
- package/dist/commands/awk/interpreter/types.d.ts +13 -0
- package/dist/commands/awk/interpreter/variables.d.ts +35 -0
- package/dist/commands/awk/lexer.d.ts +101 -0
- package/dist/commands/awk/parser2-print.d.ts +38 -0
- package/dist/commands/awk/parser2.d.ts +96 -0
- package/dist/commands/base64/base64.d.ts +7 -0
- package/dist/commands/basename/basename.d.ts +4 -0
- package/dist/commands/bash/bash.d.ts +6 -0
- package/dist/commands/browser-excluded.d.ts +16 -0
- package/dist/commands/cat/cat.d.ts +4 -0
- package/dist/commands/chmod/chmod.d.ts +4 -0
- package/dist/commands/clear/clear.d.ts +4 -0
- package/dist/commands/column/column.d.ts +11 -0
- package/dist/commands/comm/comm.d.ts +12 -0
- package/dist/commands/compression/codec-budget.d.ts +35 -0
- package/dist/commands/cp/cp.d.ts +4 -0
- package/dist/commands/curl/curl.d.ts +8 -0
- package/dist/commands/curl/form.d.ts +23 -0
- package/dist/commands/curl/help.d.ts +9 -0
- package/dist/commands/curl/parse.d.ts +9 -0
- package/dist/commands/curl/response-formatting.d.ts +20 -0
- package/dist/commands/curl/types.d.ts +70 -0
- package/dist/commands/cut/cut.d.ts +4 -0
- package/dist/commands/date/date.d.ts +7 -0
- package/dist/commands/diff/diff.d.ts +7 -0
- package/dist/commands/dirname/dirname.d.ts +4 -0
- package/dist/commands/du/du.d.ts +4 -0
- package/dist/commands/duration.d.ts +5 -0
- package/dist/commands/echo/echo.d.ts +4 -0
- package/dist/commands/env/env.d.ts +6 -0
- package/dist/commands/expand/expand.d.ts +12 -0
- package/dist/commands/expand/unexpand.d.ts +12 -0
- package/dist/commands/expr/expr.d.ts +9 -0
- package/dist/commands/file/file.d.ts +9 -0
- package/dist/commands/find/find.d.ts +4 -0
- package/dist/commands/find/matcher.d.ts +53 -0
- package/dist/commands/find/parser.d.ts +2 -0
- package/dist/commands/find/types.d.ts +89 -0
- package/dist/commands/flag-coverage.d.ts +2 -0
- package/dist/commands/fold/fold.d.ts +12 -0
- package/dist/commands/format-mode.d.ts +4 -0
- package/dist/commands/fuzz-flags-types.d.ts +17 -0
- package/dist/commands/fuzz-flags.d.ts +8 -0
- package/dist/commands/grep/grep.d.ts +8 -0
- package/dist/commands/gzip/gzip.d.ts +13 -0
- package/dist/commands/head/head-tail-shared.d.ts +38 -0
- package/dist/commands/head/head.d.ts +4 -0
- package/dist/commands/help/help.d.ts +4 -0
- package/dist/commands/help.d.ts +16 -0
- package/dist/commands/history/history.d.ts +4 -0
- package/dist/commands/hostname/hostname.d.ts +11 -0
- package/dist/commands/html-to-markdown/html-to-markdown.d.ts +9 -0
- package/dist/commands/join/join.d.ts +12 -0
- package/dist/commands/jq/jq.d.ts +9 -0
- package/dist/commands/js-exec/fetch-polyfill.d.ts +6 -0
- package/dist/commands/js-exec/js-exec-worker.d.ts +33 -0
- package/dist/commands/js-exec/js-exec.d.ts +13 -0
- package/dist/commands/js-exec/module-shims.d.ts +29 -0
- package/dist/commands/js-exec/path-polyfill.d.ts +6 -0
- package/dist/commands/ln/ln.d.ts +4 -0
- package/dist/commands/ls/ls.d.ts +4 -0
- package/dist/commands/md5sum/checksum.d.ts +7 -0
- package/dist/commands/md5sum/md5sum.d.ts +4 -0
- package/dist/commands/md5sum/sha1sum.d.ts +4 -0
- package/dist/commands/md5sum/sha256sum.d.ts +4 -0
- package/dist/commands/mkdir/mkdir.d.ts +4 -0
- package/dist/commands/mv/mv.d.ts +4 -0
- package/dist/commands/nl/nl.d.ts +12 -0
- package/dist/commands/od/od.d.ts +12 -0
- package/dist/commands/paste/paste.d.ts +4 -0
- package/dist/commands/printf/escapes.d.ts +27 -0
- package/dist/commands/printf/printf.d.ts +4 -0
- package/dist/commands/printf/strftime.d.ts +14 -0
- package/dist/commands/pwd/pwd.d.ts +4 -0
- package/dist/commands/python3/python3.d.ts +16 -0
- package/dist/commands/python3/worker.d.ts +31 -0
- package/dist/commands/query-engine/builtins/array-builtins.d.ts +20 -0
- package/dist/commands/query-engine/builtins/control-builtins.d.ts +18 -0
- package/dist/commands/query-engine/builtins/date-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/format-builtins.d.ts +11 -0
- package/dist/commands/query-engine/builtins/index-builtins.d.ts +16 -0
- package/dist/commands/query-engine/builtins/index.d.ts +17 -0
- package/dist/commands/query-engine/builtins/math-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/navigation-builtins.d.ts +18 -0
- package/dist/commands/query-engine/builtins/object-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/path-builtins.d.ts +20 -0
- package/dist/commands/query-engine/builtins/sql-builtins.d.ts +16 -0
- package/dist/commands/query-engine/builtins/string-builtins.d.ts +15 -0
- package/dist/commands/query-engine/builtins/type-builtins.d.ts +11 -0
- package/dist/commands/query-engine/evaluator.d.ts +62 -0
- package/dist/commands/query-engine/index.d.ts +8 -0
- package/dist/commands/query-engine/json-output.d.ts +11 -0
- package/dist/commands/query-engine/parser-types.d.ts +171 -0
- package/dist/commands/query-engine/parser.d.ts +14 -0
- package/dist/commands/query-engine/path-operations.d.ts +15 -0
- package/dist/commands/query-engine/safe-object.d.ts +84 -0
- package/dist/commands/query-engine/value-operations.d.ts +44 -0
- package/dist/commands/readlink/readlink.d.ts +4 -0
- package/dist/commands/registry.d.ts +56 -0
- package/dist/commands/rev/rev.d.ts +13 -0
- package/dist/commands/rg/file-types.d.ts +49 -0
- package/dist/commands/rg/gitignore.d.ts +98 -0
- package/dist/commands/rg/rg-options.d.ts +61 -0
- package/dist/commands/rg/rg-parser.d.ts +20 -0
- package/dist/commands/rg/rg-search.d.ts +15 -0
- package/dist/commands/rg/rg.d.ts +14 -0
- package/dist/commands/rm/rm.d.ts +4 -0
- package/dist/commands/rmdir/rmdir.d.ts +4 -0
- package/dist/commands/search-engine/index.d.ts +10 -0
- package/dist/commands/search-engine/matcher.d.ts +72 -0
- package/dist/commands/search-engine/regex.d.ts +46 -0
- package/dist/commands/sed/executor.d.ts +7 -0
- package/dist/commands/sed/lexer.d.ts +88 -0
- package/dist/commands/sed/parser.d.ts +21 -0
- package/dist/commands/sed/sed-regex.d.ts +23 -0
- package/dist/commands/sed/sed.d.ts +4 -0
- package/dist/commands/sed/types.d.ts +216 -0
- package/dist/commands/seq/seq.d.ts +16 -0
- package/dist/commands/sleep/sleep.d.ts +4 -0
- package/dist/commands/sort/comparator.d.ts +9 -0
- package/dist/commands/sort/parser.d.ts +11 -0
- package/dist/commands/sort/sort.d.ts +4 -0
- package/dist/commands/sort/types.d.ts +30 -0
- package/dist/commands/split/split.d.ts +12 -0
- package/dist/commands/sqlite3/formatters.d.ts +17 -0
- package/dist/commands/sqlite3/sqlite3.d.ts +24 -0
- package/dist/commands/sqlite3/worker.d.ts +50 -0
- package/dist/commands/sqlite3/worker.js +1928 -0
- package/dist/commands/stat/stat.d.ts +4 -0
- package/dist/commands/strings/strings.d.ts +12 -0
- package/dist/commands/tac/tac.d.ts +11 -0
- package/dist/commands/tail/tail.d.ts +4 -0
- package/dist/commands/tar/archive.d.ts +150 -0
- package/dist/commands/tar/bzip2-compress.d.ts +18 -0
- package/dist/commands/tar/tar-options.d.ts +37 -0
- package/dist/commands/tar/tar.d.ts +10 -0
- package/dist/commands/tee/tee.d.ts +4 -0
- package/dist/commands/time/time.d.ts +27 -0
- package/dist/commands/timeout/timeout.d.ts +4 -0
- package/dist/commands/touch/touch.d.ts +4 -0
- package/dist/commands/tr/tr.d.ts +4 -0
- package/dist/commands/tree/tree.d.ts +4 -0
- package/dist/commands/true/true.d.ts +6 -0
- package/dist/commands/uniq/uniq.d.ts +4 -0
- package/dist/commands/wc/wc.d.ts +4 -0
- package/dist/commands/which/which.d.ts +4 -0
- package/dist/commands/whoami/whoami.d.ts +11 -0
- package/dist/commands/worker-bridge/bridge-handler.d.ts +73 -0
- package/dist/commands/worker-bridge/protocol.d.ts +141 -0
- package/dist/commands/worker-bridge/sync-backend.d.ts +86 -0
- package/dist/commands/worker-request-controller.d.ts +36 -0
- package/dist/commands/xan/aggregation.d.ts +30 -0
- package/dist/commands/xan/bounded-output.d.ts +4 -0
- package/dist/commands/xan/column-selection.d.ts +20 -0
- package/dist/commands/xan/csv.d.ts +62 -0
- package/dist/commands/xan/moonblade-parser.d.ts +89 -0
- package/dist/commands/xan/moonblade-to-jq.d.ts +12 -0
- package/dist/commands/xan/moonblade-tokenizer.d.ts +32 -0
- package/dist/commands/xan/subcommands.d.ts +15 -0
- package/dist/commands/xan/xan-agg.d.ts +8 -0
- package/dist/commands/xan/xan-columns.d.ts +8 -0
- package/dist/commands/xan/xan-core.d.ts +10 -0
- package/dist/commands/xan/xan-data.d.ts +52 -0
- package/dist/commands/xan/xan-filter.d.ts +8 -0
- package/dist/commands/xan/xan-map.d.ts +11 -0
- package/dist/commands/xan/xan-reshape.d.ts +40 -0
- package/dist/commands/xan/xan-simple.d.ts +40 -0
- package/dist/commands/xan/xan-view.d.ts +12 -0
- package/dist/commands/xan/xan.d.ts +10 -0
- package/dist/commands/xargs/xargs.d.ts +4 -0
- package/dist/commands/yq/formats.d.ts +65 -0
- package/dist/commands/yq/yq.d.ts +13 -0
- package/dist/custom-commands.d.ts +65 -0
- package/dist/encoding.d.ts +131 -0
- package/dist/execution-output.d.ts +28 -0
- package/dist/execution-scope.d.ts +110 -0
- package/dist/fatal-execution-error.d.ts +27 -0
- package/dist/fs/encoding.d.ts +17 -0
- package/dist/fs/identity.d.ts +9 -0
- package/dist/fs/in-memory-fs/in-memory-fs.d.ts +98 -0
- package/dist/fs/in-memory-fs/index.d.ts +1 -0
- package/dist/fs/init.d.ts +22 -0
- package/dist/fs/interface.d.ts +255 -0
- package/dist/fs/mountable-fs/index.d.ts +1 -0
- package/dist/fs/mountable-fs/mountable-fs.d.ts +118 -0
- package/dist/fs/overlay-fs/apply.d.ts +22 -0
- package/dist/fs/overlay-fs/index.d.ts +1 -0
- package/dist/fs/overlay-fs/overlay-fs.d.ts +360 -0
- package/dist/fs/overlay-fs/overlay-tree.d.ts +188 -0
- package/dist/fs/path-utils.d.ts +48 -0
- package/dist/fs/read-write-fs/index.d.ts +1 -0
- package/dist/fs/read-write-fs/read-write-fs.d.ts +150 -0
- package/dist/fs/real-fs-utils.d.ts +90 -0
- package/dist/fs/sanitize-error.d.ts +19 -0
- package/dist/fs/traversal.d.ts +98 -0
- package/dist/index.d.cts +30 -0
- package/dist/index.d.ts +30 -0
- package/dist/interpreter/alias-expansion.d.ts +27 -0
- package/dist/interpreter/arithmetic.d.ts +24 -0
- package/dist/interpreter/assignment-expansion.d.ts +24 -0
- package/dist/interpreter/builtin-dispatch.d.ts +46 -0
- package/dist/interpreter/builtins/break.d.ts +6 -0
- package/dist/interpreter/builtins/cd.d.ts +6 -0
- package/dist/interpreter/builtins/compgen.d.ts +26 -0
- package/dist/interpreter/builtins/complete.d.ts +17 -0
- package/dist/interpreter/builtins/compopt.d.ts +28 -0
- package/dist/interpreter/builtins/continue.d.ts +6 -0
- package/dist/interpreter/builtins/declare-array-parsing.d.ts +18 -0
- package/dist/interpreter/builtins/declare-print.d.ts +39 -0
- package/dist/interpreter/builtins/declare.d.ts +35 -0
- package/dist/interpreter/builtins/dirs.d.ts +29 -0
- package/dist/interpreter/builtins/eval.d.ts +15 -0
- package/dist/interpreter/builtins/exit.d.ts +5 -0
- package/dist/interpreter/builtins/export.d.ts +14 -0
- package/dist/interpreter/builtins/getopts.d.ts +18 -0
- package/dist/interpreter/builtins/hash.d.ts +19 -0
- package/dist/interpreter/builtins/help.d.ts +12 -0
- package/dist/interpreter/builtins/index.d.ts +44 -0
- package/dist/interpreter/builtins/let.d.ts +18 -0
- package/dist/interpreter/builtins/local.d.ts +6 -0
- package/dist/interpreter/builtins/mapfile.d.ts +17 -0
- package/dist/interpreter/builtins/read.d.ts +6 -0
- package/dist/interpreter/builtins/return.d.ts +6 -0
- package/dist/interpreter/builtins/set.d.ts +9 -0
- package/dist/interpreter/builtins/shift.d.ts +15 -0
- package/dist/interpreter/builtins/shopt.d.ts +7 -0
- package/dist/interpreter/builtins/source.d.ts +6 -0
- package/dist/interpreter/builtins/unset.d.ts +16 -0
- package/dist/interpreter/builtins/variable-assignment.d.ts +69 -0
- package/dist/interpreter/command-analysis.d.ts +30 -0
- package/dist/interpreter/command-resolution.d.ts +43 -0
- package/dist/interpreter/conditionals.d.ts +17 -0
- package/dist/interpreter/control-flow.d.ts +21 -0
- package/dist/interpreter/defense-aware-command-context.d.ts +6 -0
- package/dist/interpreter/errors.d.ts +161 -0
- package/dist/interpreter/expansion/analysis.d.ts +37 -0
- package/dist/interpreter/expansion/arith-text-expansion.d.ts +20 -0
- package/dist/interpreter/expansion/array-pattern-ops.d.ts +21 -0
- package/dist/interpreter/expansion/array-prefix-suffix.d.ts +46 -0
- package/dist/interpreter/expansion/array-slice-transform.d.ts +36 -0
- package/dist/interpreter/expansion/array-word-expansion.d.ts +39 -0
- package/dist/interpreter/expansion/brace-range.d.ts +24 -0
- package/dist/interpreter/expansion/command-substitution.d.ts +23 -0
- package/dist/interpreter/expansion/glob-escape.d.ts +32 -0
- package/dist/interpreter/expansion/indirect-expansion.d.ts +42 -0
- package/dist/interpreter/expansion/parameter-ops.d.ts +113 -0
- package/dist/interpreter/expansion/pattern-expansion.d.ts +23 -0
- package/dist/interpreter/expansion/pattern-removal.d.ts +17 -0
- package/dist/interpreter/expansion/pattern-replacement.d.ts +4 -0
- package/dist/interpreter/expansion/pattern.d.ts +23 -0
- package/dist/interpreter/expansion/positional-params.d.ts +59 -0
- package/dist/interpreter/expansion/prompt.d.ts +39 -0
- package/dist/interpreter/expansion/quoting.d.ts +13 -0
- package/dist/interpreter/expansion/tilde.d.ts +14 -0
- package/dist/interpreter/expansion/unquoted-expansion.d.ts +76 -0
- package/dist/interpreter/expansion/variable-attrs.d.ts +19 -0
- package/dist/interpreter/expansion/variable.d.ts +36 -0
- package/dist/interpreter/expansion/word-glob-expansion.d.ts +33 -0
- package/dist/interpreter/expansion/word-split.d.ts +29 -0
- package/dist/interpreter/expansion.d.ts +53 -0
- package/dist/interpreter/fd-table.d.ts +130 -0
- package/dist/interpreter/functions.d.ts +14 -0
- package/dist/interpreter/helpers/array.d.ts +56 -0
- package/dist/interpreter/helpers/bounded-array.d.ts +2 -0
- package/dist/interpreter/helpers/condition.d.ts +19 -0
- package/dist/interpreter/helpers/errors.d.ts +8 -0
- package/dist/interpreter/helpers/file-tests.d.ts +33 -0
- package/dist/interpreter/helpers/ifs.d.ts +104 -0
- package/dist/interpreter/helpers/loop.d.ts +24 -0
- package/dist/interpreter/helpers/nameref.d.ts +65 -0
- package/dist/interpreter/helpers/numeric-compare.d.ts +13 -0
- package/dist/interpreter/helpers/quoting.d.ts +26 -0
- package/dist/interpreter/helpers/readonly.d.ts +45 -0
- package/dist/interpreter/helpers/regex.d.ts +8 -0
- package/dist/interpreter/helpers/result.d.ts +60 -0
- package/dist/interpreter/helpers/shell-constants.d.ts +41 -0
- package/dist/interpreter/helpers/shellopts.d.ts +28 -0
- package/dist/interpreter/helpers/string-compare.d.ts +24 -0
- package/dist/interpreter/helpers/string-tests.d.ts +13 -0
- package/dist/interpreter/helpers/variable-tests.d.ts +9 -0
- package/dist/interpreter/helpers/word-matching.d.ts +16 -0
- package/dist/interpreter/helpers/word-parts.d.ts +22 -0
- package/dist/interpreter/helpers/xtrace.d.ts +18 -0
- package/dist/interpreter/index.d.ts +3 -0
- package/dist/interpreter/interpreter.d.ts +82 -0
- package/dist/interpreter/numeric-fd-redirects.d.ts +8 -0
- package/dist/interpreter/pipeline-execution.d.ts +16 -0
- package/dist/interpreter/process-substitution.d.ts +62 -0
- package/dist/interpreter/redirections.d.ts +50 -0
- package/dist/interpreter/simple-command-assignments.d.ts +36 -0
- package/dist/interpreter/state-transaction.d.ts +7 -0
- package/dist/interpreter/subshell-group.d.ts +40 -0
- package/dist/interpreter/type-command.d.ts +37 -0
- package/dist/interpreter/types.d.ts +402 -0
- package/dist/limits.d.ts +111 -0
- package/dist/network/allow-list/shared.d.ts +49 -0
- package/dist/network/allow-list.d.ts +59 -0
- package/dist/network/dns-pin.d.ts +42 -0
- package/dist/network/fetch.d.ts +27 -0
- package/dist/network/index.d.ts +7 -0
- package/dist/network/types.d.ts +182 -0
- package/dist/parser/arithmetic-parser.d.ts +23 -0
- package/dist/parser/arithmetic-primaries.d.ts +45 -0
- package/dist/parser/command-parser.d.ts +10 -0
- package/dist/parser/compound-parser.d.ts +28 -0
- package/dist/parser/conditional-parser.d.ts +8 -0
- package/dist/parser/expansion-parser.d.ts +18 -0
- package/dist/parser/lexer.d.ts +195 -0
- package/dist/parser/parser-substitution.d.ts +85 -0
- package/dist/parser/parser.d.ts +152 -0
- package/dist/parser/types.d.ts +40 -0
- package/dist/parser/word-parser.d.ts +35 -0
- package/dist/sandbox/Command.d.ts +35 -0
- package/dist/sandbox/Sandbox.d.ts +121 -0
- package/dist/sandbox/index.d.ts +2 -0
- package/dist/security/blocked-globals.d.ts +60 -0
- package/dist/security/defense-context.d.ts +13 -0
- package/dist/security/defense-in-depth-box.d.ts +354 -0
- package/dist/security/index.d.ts +33 -0
- package/dist/security/safe-timestamp.d.ts +1 -0
- package/dist/security/security-violation-logger.d.ts +99 -0
- package/dist/security/trusted-globals.d.ts +17 -0
- package/dist/security/types.d.ts +151 -0
- package/dist/security/violation-error-message.d.ts +3 -0
- package/dist/security/wasm-callback.d.ts +6 -0
- package/dist/security/worker-defense-in-depth.d.ts +228 -0
- package/dist/shell-metadata.d.ts +25 -0
- package/dist/source-limit.d.ts +2 -0
- package/dist/timers.d.ts +16 -0
- package/dist/transform/pipeline.d.ts +8 -0
- package/dist/transform/plugins/command-collector.d.ts +8 -0
- package/dist/transform/plugins/tee-plugin.d.ts +40 -0
- package/dist/transform/serialize.d.ts +4 -0
- package/dist/transform/types.d.ts +18 -0
- package/dist/types.d.ts +319 -0
- package/dist/utils/args.d.ts +55 -0
- package/dist/utils/constants.d.ts +15 -0
- package/dist/utils/file-reader.d.ts +76 -0
- package/dist/utils/glob.d.ts +25 -0
- package/dist/vitest-setup.d.ts +1 -0
- package/package.json +136 -0
- package/vendor/cpython-emscripten/python.cjs +2 -0
- package/vendor/cpython-emscripten/python.wasm +0 -0
- package/vendor/cpython-emscripten/python313.zip +0 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{l as f}from"./chunk-TVCZIH6M.js";import{a as u,d as h}from"./chunk-GN6CQ3J4.js";import{a as x,b as m,c as g}from"./chunk-QAYAQNCG.js";var w={name:"expand",summary:"convert tabs to spaces",usage:"expand [OPTION]... [FILE]...",description:"Convert TABs in each FILE to spaces, writing to standard output. If no FILE is specified, standard input is read.",options:["-t N Use N spaces per tab (default: 8)","-t LIST Use comma-separated list of tab stops","-i Only convert leading tabs on each line"],examples:["expand file.txt # Convert all tabs to 8 spaces","expand -t 4 file.txt # Use 4-space tabs","expand -t 4,8,12 file.txt # Custom tab stops"]};function c(s,i,t){let a=s.split(",").map(o=>o.trim());if(a.length>t)return null;let l=[];for(let o of a){let n=/^\d+$/.test(o)?Number(o):NaN;if(!Number.isSafeInteger(n)||n<1||n>i)return null;l.push(n)}for(let o=1;o<l.length;o++)if(l[o]<=l[o-1])return null;return l}function z(s,i){if(i.length===1){let t=i[0];return t-s%t}for(let t of i)if(t>s)return t-s;if(i.length>=2){let t=i[i.length-1]-i[i.length-2],a=i[i.length-1],l=Math.floor((s-a)/t)+1;return a+l*t-s}return 1}function y(s,i,t){let{tabStops:a,leadingOnly:l}=i,o="",n=0,p=!0,e=0;for(let r of s)if(r===" ")if(l&&!p){if(e+1>t)throw new f(`expand: output size limit exceeded (${t} bytes)`,"output_size");o+=r,e++,n++}else{let d=z(n,a);if(d>t-e)throw new f(`expand: output size limit exceeded (${t} bytes)`,"output_size");o+=" ".repeat(d),e+=d,n+=d}else{r!==" "&&r!==" "&&(p=!1);let d=u(r);if(d>t-e)throw new f(`expand: output size limit exceeded (${t} bytes)`,"output_size");o+=r,e+=d,n++}return o}function b(s,i,t){if(s==="")return"";let a=s.split(`
|
|
3
|
+
`),l=s.endsWith(`
|
|
4
|
+
`)&&a[a.length-1]==="";l&&a.pop();let o=[],n=0;for(let p of a){let e=o.length>0?1:0,r=y(p,i,t-n-e);n+=e+u(r),o.push(r)}if(l&&n+1>t)throw new f(`expand: output size limit exceeded (${t} bytes)`,"output_size");return o.join(`
|
|
5
|
+
`)+(l?`
|
|
6
|
+
`:"")}var N={name:"expand",execute:async(s,i)=>{if(m(s))return x(w);let t={tabStops:[8],leadingOnly:!1},a=[],l=Math.min(i.limits.maxStringLength,i.limits.maxOutputSize),o=i.limits.maxArrayElements,n=0;for(;n<s.length;){let e=s[n];if(e==="-t"&&n+1<s.length){let r=c(s[n+1],l,o);if(!r)return{exitCode:1,stdout:"",stderr:`expand: invalid tab size: '${s[n+1]}'
|
|
7
|
+
`};t.tabStops=r,n+=2}else if(e.startsWith("-t")&&e.length>2){let r=c(e.slice(2),l,o);if(!r)return{exitCode:1,stdout:"",stderr:`expand: invalid tab size: '${e.slice(2)}'
|
|
8
|
+
`};t.tabStops=r,n++}else if(e==="--tabs"&&n+1<s.length){let r=c(s[n+1],l,o);if(!r)return{exitCode:1,stdout:"",stderr:`expand: invalid tab size: '${s[n+1]}'
|
|
9
|
+
`};t.tabStops=r,n+=2}else if(e.startsWith("--tabs=")){let r=c(e.slice(7),l,o);if(!r)return{exitCode:1,stdout:"",stderr:`expand: invalid tab size: '${e.slice(7)}'
|
|
10
|
+
`};t.tabStops=r,n++}else if(e==="-i"||e==="--initial")t.leadingOnly=!0,n++;else if(e==="--"){a.push(...s.slice(n+1));break}else{if(e.startsWith("-")&&e!=="-")return g("expand",e);a.push(e),n++}}let p="";if(a.length===0){let e=h(i.stdin)??"";p=b(e,t,l)}else for(let e of a){let r=i.fs.resolvePath(i.cwd,e),d=await i.fs.readFile(r);if(d===null)return{exitCode:1,stdout:p,stderr:`expand: ${e}: No such file or directory
|
|
11
|
+
`};p+=b(d,t,l-u(p))}return{exitCode:0,stdout:p,stderr:""}}},T={name:"expand",flags:[{flag:"-t",type:"value",valueHint:"number"},{flag:"-i",type:"boolean"}],stdinType:"text",needsFiles:!0};export{N as a,T as b};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{b as T}from"./chunk-YEYSCLSJ.js";import{d as b}from"./chunk-GN6CQ3J4.js";import{a as M}from"./chunk-QIQMJJZ4.js";import{a as S,b as F}from"./chunk-QAYAQNCG.js";var H={name:"wc",summary:"print newline, word, and byte counts for each file",usage:"wc [OPTION]... [FILE]...",options:["-c, --bytes print the byte counts","-m, --chars print the character counts","-l, --lines print the newline counts","-w, --words print the word counts"," --help display this help and exit"]},O={lines:{short:"l",long:"lines",type:"boolean"},words:{short:"w",long:"words",type:"boolean"},bytes:{short:"c",long:"bytes",type:"boolean"},chars:{short:"m",long:"chars",type:"boolean"}},N={name:"wc",async execute(a,f){if(F(a))return S(H);let s=M("wc",a,O);if(!s.ok)return s.error;let{lines:o,words:n}=s.result.flags,l=s.result.flags.bytes,e=s.result.flags.chars,t=s.result.positional;!o&&!n&&!l&&!e&&(o=n=l=!0);let c=l||e,i=await T(f,t,{cmdName:"wc",stopOnError:!1});if(t.length===0){let r=C(i.files[0].content,e);return{stdout:`${x(r,o,n,c,"",0)}
|
|
3
|
+
`,stderr:"",exitCode:0}}let d=[],m=0,g=0,u=0;for(let{filename:r,content:y}of i.files){let p=C(y,e);m+=p.lines,g+=p.words,u+=p.third,d.push({filename:r,stats:p})}let L=t.length>1?m:Math.max(...d.map(r=>r.stats.lines)),$=t.length>1?g:Math.max(...d.map(r=>r.stats.words)),B=t.length>1?u:Math.max(...d.map(r=>r.stats.third)),h=t.length>1?3:0;o&&(h=Math.max(h,String(L).length)),n&&(h=Math.max(h,String($).length)),c&&(h=Math.max(h,String(B).length));let w="";for(let{filename:r,stats:y}of d)w+=`${x(y,o,n,c,r,h)}
|
|
4
|
+
`;return t.length>1&&(w+=`${x({lines:m,words:g,third:u},o,n,c,"total",h)}
|
|
5
|
+
`),{stdout:w,stderr:i.stderr,exitCode:i.exitCode}}};function C(a,f){let s=a,o=s.length,n=f?Array.from(b(a)).length:o,l=0,e=0,t=!1;for(let c=0;c<o;c++){let i=s[c];i===`
|
|
6
|
+
`?(l++,t&&(e++,t=!1)):i===" "||i===" "||i==="\r"?t&&(e++,t=!1):t=!0}return t&&e++,{lines:l,words:e,third:n}}function x(a,f,s,o,n,l){let e=[];f&&e.push(String(a.lines).padStart(l)),s&&e.push(String(a.words).padStart(l)),o&&e.push(String(a.third).padStart(l));let t=e.join(" ");return n&&(t+=` ${n}`),t}var j={name:"wc",flags:[{flag:"-l",type:"boolean"},{flag:"-w",type:"boolean"},{flag:"-c",type:"boolean"},{flag:"-m",type:"boolean"}],stdinType:"text",needsFiles:!0};export{N as a,j as b};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{a as m}from"./chunk-73JQKNZT.js";import{b as x}from"./chunk-AYSZ5MAE.js";import{a as w}from"./chunk-FOCWZZDE.js";var k={name:"expr",async execute(i,a){if(i.length===0)return{stdout:"",stderr:`expr: missing operand
|
|
3
|
+
`,exitCode:2};try{let t=S(i,h=>a.executionScope?.consumeWork(h,"expr index")),f=t==="0"||t===""?1:0;return{stdout:`${t}
|
|
4
|
+
`,stderr:"",exitCode:f}}catch(t){return x(t),{stdout:"",stderr:`expr: ${w(t.message)}
|
|
5
|
+
`,exitCode:2}}}};function S(i,a){if(i.length===1)return i[0];let t=0;function f(){let e=h();for(;t<i.length&&i[t]==="|";){t++;let r=h();if(e!=="0"&&e!=="")return e;e=r}return e}function h(){let e=g();for(;t<i.length&&i[t]==="&";){t++;let r=g();(e==="0"||e===""||r==="0"||r==="")&&(e="0")}return e}function g(){let e=p();for(;t<i.length;){let r=i[t];if(["=","!=","<",">","<=",">="].includes(r)){t++;let s=p(),o=parseInt(e,10),n=parseInt(s,10),l=!Number.isNaN(o)&&!Number.isNaN(n),c;r==="="?c=l?o===n:e===s:r==="!="?c=l?o!==n:e!==s:r==="<"?c=l?o<n:e<s:r===">"?c=l?o>n:e>s:r==="<="?c=l?o<=n:e<=s:c=l?o>=n:e>=s,e=c?"1":"0"}else break}return e}function p(){let e=N();for(;t<i.length;){let r=i[t];if(r==="+"||r==="-"){t++;let s=N(),o=parseInt(e,10),n=parseInt(s,10);if(Number.isNaN(o)||Number.isNaN(n))throw new Error("non-integer argument");e=String(r==="+"?o+n:o-n)}else break}return e}function N(){let e=d();for(;t<i.length;){let r=i[t];if(r==="*"||r==="/"||r==="%"){t++;let s=d(),o=parseInt(e,10),n=parseInt(s,10);if(Number.isNaN(o)||Number.isNaN(n))throw new Error("non-integer argument");if((r==="/"||r==="%")&&n===0)throw new Error("division by zero");r==="*"?e=String(o*n):r==="/"?e=String(Math.trunc(o/n)):e=String(o%n)}else break}return e}function d(){let e=u();for(;t<i.length&&i[t]===":";){t++;let r=u(),o=m(`^${r}`).match(e);o?e=o[1]!==void 0?o[1]:String(o[0].length):e="0"}return e}function u(){if(t>=i.length)throw new Error("syntax error");let e=i[t];if(e==="match"){t++;let r=u(),s=u(),n=m(s).match(r);return n?n[1]!==void 0?n[1]:String(n[0].length):"0"}if(e==="substr"){t++;let r=u(),s=parseInt(u(),10),o=parseInt(u(),10);if(Number.isNaN(s)||Number.isNaN(o))throw new Error("non-integer argument");return r.substring(s-1,s-1+o)}if(e==="index"){t++;let r=u(),s=u();a(s.length+r.length);let o=new Set;for(let n=0;n<s.length;n++)o.add(s[n]);for(let n=0;n<r.length;n++)if(o.has(r[n]))return String(n+1);return"0"}if(e==="length"){t++;let r=u();return String(r.length)}if(e==="("){t++;let r=f();if(t>=i.length||i[t]!==")")throw new Error("syntax error");return t++,r}return t++,e}let b=f();if(t!==i.length)throw new Error("syntax error");return b}var C={name:"expr",flags:[],needsArgs:!0};export{k as a,C as b};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{b as A}from"./chunk-AYSZ5MAE.js";import{l as f}from"./chunk-TVCZIH6M.js";import{a as z,d as T}from"./chunk-GN6CQ3J4.js";import{a as _}from"./chunk-FOCWZZDE.js";import{a as B}from"./chunk-QIQMJJZ4.js";import{a as M,b as q}from"./chunk-QAYAQNCG.js";var L={name:"tr",summary:"translate or delete characters",usage:"tr [OPTION]... SET1 [SET2]",options:["-c, -C, --complement use the complement of SET1","-d, --delete delete characters in SET1","-s, --squeeze-repeats squeeze repeated characters"," --help display this help and exit"],description:`SET syntax:
|
|
3
|
+
a-z character range
|
|
4
|
+
[:alnum:] all letters and digits
|
|
5
|
+
[:alpha:] all letters
|
|
6
|
+
[:digit:] all digits
|
|
7
|
+
[:lower:] all lowercase letters
|
|
8
|
+
[:upper:] all uppercase letters
|
|
9
|
+
[:space:] all whitespace
|
|
10
|
+
[:blank:] horizontal whitespace
|
|
11
|
+
[:punct:] all punctuation
|
|
12
|
+
[:print:] all printable characters
|
|
13
|
+
[:graph:] all printable characters except space
|
|
14
|
+
[:cntrl:] all control characters
|
|
15
|
+
[:xdigit:] all hexadecimal digits
|
|
16
|
+
\\n, \\t, \\r escape sequences`},$=new Map([["[:alnum:]","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"],["[:alpha:]","ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"],["[:blank:]"," "],["[:cntrl:]",Array.from({length:32},(o,n)=>String.fromCharCode(n)).join("").concat("\x7F")],["[:digit:]","0123456789"],["[:graph:]",Array.from({length:94},(o,n)=>String.fromCharCode(33+n)).join("")],["[:lower:]","abcdefghijklmnopqrstuvwxyz"],["[:print:]",Array.from({length:95},(o,n)=>String.fromCharCode(32+n)).join("")],["[:punct:]","!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~"],["[:space:]",`
|
|
17
|
+
\r\f\v`],["[:upper:]","ABCDEFGHIJKLMNOPQRSTUVWXYZ"],["[:xdigit:]","0123456789ABCDEFabcdef"]]);function F(o,n,c,u){let g="",t=0,a=e=>{if(e.length>n-g.length)throw new f(`tr: expanded SET exceeds string length limit (${n})`,"string_length");g+=e},h=(e=1)=>{if(e>c-u.iterations)throw new f(`tr: SET expansion iteration limit exceeded (${c})`,"iterations");u.iterations+=e};for(;t<o.length;){if(h(),o[t]==="["&&o[t+1]===":"){let e=!1;for(let[l,d]of $)if(o.slice(t).startsWith(l)){a(d),t+=l.length,e=!0;break}if(e)continue}if(o[t]==="\\"&&t+1<o.length){let e=o[t+1];a(e==="n"?`
|
|
18
|
+
`:e==="t"?" ":e==="r"?"\r":e),t+=2;continue}if(t+2<o.length&&o[t+1]==="-"){let e=o.charCodeAt(t),l=o.charCodeAt(t+2),d=l>=e?l-e+1:0;if(h(d),d>n-g.length)throw new f(`tr: expanded SET exceeds string length limit (${n})`,"string_length");for(let m=e;m<=l;m++)g+=String.fromCharCode(m);t+=3;continue}a(o[t]),t++}return g}var k={complement:{short:"c",long:"complement",type:"boolean"},complementUpper:{short:"C",type:"boolean"},delete:{short:"d",long:"delete",type:"boolean"},squeeze:{short:"s",long:"squeeze-repeats",type:"boolean"}},v={name:"tr",async execute(o,n){if(q(o))return M(L);let c=B("tr",o,k);if(!c.ok)return c.error;let u=c.result.flags.complement||c.result.flags.complementUpper,g=c.result.flags.delete,t=c.result.flags.squeeze,a=c.result.positional;if(a.length<1)return{stdout:"",stderr:`tr: missing operand
|
|
19
|
+
`,exitCode:1};if(!g&&!t&&a.length<2)return{stdout:"",stderr:`tr: missing operand after SET1
|
|
20
|
+
`,exitCode:1};let h,e,l=Math.min(n.limits.maxInputBytes,n.limits.maxStringLength),d=n.limits.maxLoopIterations,m=n.limits.maxArrayElements,S=Math.min(n.limits.maxOutputSize,n.limits.maxStringLength);try{let r={iterations:0};h=F(a[0],l,d,r),e=a.length>1?F(a[1],l,d,r):""}catch(r){return A(r),{stdout:"",stderr:`${_(r.message)}
|
|
21
|
+
`,exitCode:1}}if(n.stdin.length>l)throw new f(`tr: input size limit exceeded (${l} bytes)`,"string_length");let y=T(n.stdin);if(h.length>m||e.length>m)throw new f(`tr: array element limit exceeded (${m})`,"array_elements");let w=new Set(h),I=new Set(e),C=r=>{let s=w.has(r);return u?!s:s},E="",b=0,x=r=>{let s=z(r);if(s>S-b)throw new f(`tr: output size limit exceeded (${S} bytes)`,"output_size");E+=r,b+=s};if(g)for(let r of y)C(r)||x(r);else if(t&&a.length===1){let r="";for(let s of y)C(s)&&s===r||(x(s),r=s)}else{let r="",s=p=>{t&&I.has(p)&&p===r||(x(p),r=p)};if(u){let p=e.length>0?e[e.length-1]:"";for(let i of y)w.has(i)?s(i):s(p)}else{let p=new Map;for(let i=0;i<h.length;i++){let O=i<e.length?e[i]:e[e.length-1];p.set(h[i],O)}for(let i of y)s(p.get(i)??i)}}return{stdout:E,stderr:"",exitCode:0}}},W={name:"tr",flags:[{flag:"-c",type:"boolean"},{flag:"-C",type:"boolean"},{flag:"-d",type:"boolean"},{flag:"-s",type:"boolean"}],stdinType:"text",needsArgs:!0};export{v as a,W as b};
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{l as r}from"./chunk-TVCZIH6M.js";import{a as c}from"./chunk-GN6CQ3J4.js";var f=10*1024*1024;function h(t,a,n){let e=n==="width"?Math.abs(t):t;if(!Number.isFinite(t)||!Number.isSafeInteger(t)||e<0||e>a)throw new r(`format ${n} limit exceeded (${a} bytes)`,"string_length")}function b(t,a,n,e=f){h(a,e,"width"),n!==-1&&h(n,e,"precision");let s=t;n>=0&&s.length>n&&(s=s.slice(0,n));let l=Math.abs(a);if(l>s.length){if(c(s)+l-s.length>e)throw new r(`formatted value size limit exceeded (${e} bytes)`,"string_length");a<0?s=s.padEnd(l," "):s=s.padStart(l," ")}if(c(s)>e)throw new r(`formatted value size limit exceeded (${e} bytes)`,"string_length");return s}function p(t,a,n=f){let e=a,s=0,l=-1,i=!1;for(e<t.length&&t[e]==="-"&&(i=!0,e++);e<t.length&&/\d/.test(t[e]);)s=s*10+parseInt(t[e],10),e++;if(e<t.length&&t[e]===".")for(e++,l=0;e<t.length&&/\d/.test(t[e]);)l=l*10+parseInt(t[e],10),e++;return i&&s>0&&(s=-s),h(s,n,"width"),l!==-1&&h(l,n,"precision"),[s,l,e-a]}function u(t,a=f){if(c(t)>a)throw new r(`escaped string size limit exceeded (${a} bytes)`,"string_length");let n="",e=0;for(;e<t.length;)if(t[e]==="\\"&&e+1<t.length)switch(t[e+1]){case"n":n+=`
|
|
3
|
+
`,e+=2;break;case"t":n+=" ",e+=2;break;case"r":n+="\r",e+=2;break;case"\\":n+="\\",e+=2;break;case"a":n+="\x07",e+=2;break;case"b":n+="\b",e+=2;break;case"f":n+="\f",e+=2;break;case"v":n+="\v",e+=2;break;case"e":case"E":n+="\x1B",e+=2;break;case"0":case"1":case"2":case"3":case"4":case"5":case"6":case"7":{let l="",i=e+1;for(;i<t.length&&i<e+4&&/[0-7]/.test(t[i]);)l+=t[i],i++;n+=String.fromCharCode(parseInt(l,8)),e=i;break}case"x":{let l=[],i=e;for(;i+3<t.length&&t[i]==="\\"&&t[i+1]==="x"&&/[0-9a-fA-F]{2}/.test(t.slice(i+2,i+4));)l.push(parseInt(t.slice(i+2,i+4),16)),i+=4;if(l.length>0){try{let o=new TextDecoder("utf-8",{fatal:!0});n+=o.decode(new Uint8Array(l))}catch{for(let o of l)n+=String.fromCharCode(o)}e=i}else n+=t[e],e++;break}case"u":{let l="",i=e+2;for(;i<t.length&&i<e+6&&/[0-9a-fA-F]/.test(t[i]);)l+=t[i],i++;l?(n+=String.fromCodePoint(parseInt(l,16)),e=i):(n+="\\u",e+=2);break}case"U":{let l="",i=e+2;for(;i<t.length&&i<e+10&&/[0-9a-fA-F]/.test(t[i]);)l+=t[i],i++;l?(n+=String.fromCodePoint(parseInt(l,16)),e=i):(n+="\\U",e+=2);break}default:n+=t[e],e++}else n+=t[e],e++;return n}export{h as a,b,p as c,u as d};
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{a as $,b as F,c as b,d as j,e as Ze,f as et,g as C,h as tt,i as nt,j as k,k as ie,l as ae}from"./chunk-S3ENGQML.js";import{b as V,d as Qe}from"./chunk-26GP3ACY.js";import{d as Ge,f as Xe,g as oe}from"./chunk-UUIYAOD4.js";import{a as Z}from"./chunk-73JQKNZT.js";import{b as Ye}from"./chunk-YEYSCLSJ.js";import{b as q}from"./chunk-AYSZ5MAE.js";import{a as W,c as se,d as re}from"./chunk-FTET43KM.js";import{l as E}from"./chunk-TVCZIH6M.js";import{a as K,d as Y}from"./chunk-GN6CQ3J4.js";import{a as J,b as ne}from"./chunk-QAYAQNCG.js";var G=class{input;pos=0;tokens=[];maxSourceLength;maxTokens;constructor(t,n={}){this.input=t,this.maxSourceLength=n.maxSourceLength??1024*1024,this.maxTokens=n.maxTokens??1e5}tokenize(){if(this.input.length>this.maxSourceLength)throw new E(`xan: expression length limit exceeded (${this.maxSourceLength})`,"string_length");for(;this.pos<this.input.length&&(this.skipWhitespace(),!(this.pos>=this.input.length));){let t=this.nextToken();t&&(this.assertTokenCapacity(),this.tokens.push(t))}return this.assertTokenCapacity(),this.tokens.push({type:"eof",value:"",pos:this.pos}),this.tokens}assertTokenCapacity(){if(this.tokens.length>=this.maxTokens)throw new E(`xan: expression token limit exceeded (${this.maxTokens})`,"array_elements")}skipWhitespace(){for(;this.pos<this.input.length;){let t=this.input[this.pos];if(t===" "||t===" "||t===`
|
|
3
|
+
`||t==="\r")this.pos++;else if(t==="#")for(;this.pos<this.input.length&&this.input[this.pos]!==`
|
|
4
|
+
`;)this.pos++;else break}}nextToken(){let t=this.pos,n=this.input[this.pos];if(n>="0"&&n<="9")return this.readNumber();if(n==='"'||n==="'"||n==="`")return this.readString(n);if(n==="b"&&this.pos+1<this.input.length){let o=this.input[this.pos+1];if(o==='"'||o==="'"||o==="`")return this.pos++,this.readString(o)}if(n==="/"){let o=this.tokens[this.tokens.length-1];return o&&(o.type==="int"||o.type==="float"||o.type==="string"||o.type==="ident"||o.type===")"||o.type==="]")?this.input[this.pos+1]==="/"?(this.pos+=2,{type:"//",value:"//",pos:t}):(this.pos++,{type:"/",value:"/",pos:t}):this.readRegex()}if(this.match("not in"))return{type:"not in",value:"not in",pos:t};if(this.match("=>"))return{type:"=>",value:"=>",pos:t};if(this.match("**"))return{type:"**",value:"**",pos:t};if(this.match("++"))return{type:"++",value:"++",pos:t};if(this.match("//"))return{type:"//",value:"//",pos:t};if(this.match("=="))return{type:"==",value:"==",pos:t};if(this.match("!="))return{type:"!=",value:"!=",pos:t};if(this.match("<="))return{type:"<=",value:"<=",pos:t};if(this.match(">="))return{type:">=",value:">=",pos:t};if(this.match("&&"))return{type:"&&",value:"&&",pos:t};if(this.match("||"))return{type:"||",value:"||",pos:t};let r=new Map([["(","("],[")",")"],["[","["],["]","]"],["{","{"],["}","}"],[",",","],[":",":"],[";",";"],["+","+"],["-","-"],["*","*"],["%","%"],["<","<"],[">",">"],["!","!"],[".","."],["|","|"],["=","="]]).get(n);if(r!==void 0)return this.pos++,{type:r,value:n,pos:t};if(this.isIdentStart(n))return this.readIdentifier();throw new Error(`Unexpected character '${n}' at position ${this.pos}`)}match(t){if(this.input.slice(this.pos,this.pos+t.length)===t){if(/^[a-zA-Z]/.test(t)){let n=this.input[this.pos+t.length];if(n&&this.isIdentChar(n))return!1}return this.pos+=t.length,!0}return!1}isIdentStart(t){return t>="a"&&t<="z"||t>="A"&&t<="Z"||t==="_"}isIdentChar(t){return this.isIdentStart(t)||t>="0"&&t<="9"}readNumber(){let t=this.pos,n=!1,s=!1;for(;this.pos<this.input.length;){let o=this.input[this.pos];if(o>="0"&&o<="9")this.pos++;else if(o==="_")this.pos++;else if(o==="."&&!n&&!s)n=!0,this.pos++;else if((o==="e"||o==="E")&&!s)s=!0,n=!0,this.pos++,this.pos<this.input.length&&(this.input[this.pos]==="+"||this.input[this.pos]==="-")&&this.pos++;else break}let r=this.input.slice(t,this.pos).replace(/_/g,"");return{type:n?"float":"int",value:r,pos:t}}readString(t){let n=this.pos;this.pos++;let s="";for(;this.pos<this.input.length;){let r=this.input[this.pos];if(r===t)return this.pos++,{type:"string",value:s,pos:n};if(r==="\\"){if(this.pos++,this.pos<this.input.length){let o=this.input[this.pos];switch(o){case"n":s+=`
|
|
5
|
+
`;break;case"r":s+="\r";break;case"t":s+=" ";break;case"\\":s+="\\";break;case'"':s+='"';break;case"'":s+="'";break;case"`":s+="`";break;case"0":s+="\0";break;default:s+=o}this.pos++}}else s+=r,this.pos++}throw new Error(`Unterminated string starting at position ${n}`)}readRegex(){let t=this.pos;this.pos++;let n="",s="";for(;this.pos<this.input.length;){let r=this.input[this.pos];if(r==="/"){for(this.pos++;this.pos<this.input.length&&this.input[this.pos]==="i";)s+=this.input[this.pos],this.pos++;return{type:"regex",value:n+(s?`/${s}`:""),pos:t}}r==="\\"?(n+=r,this.pos++,this.pos<this.input.length&&(n+=this.input[this.pos],this.pos++)):(n+=r,this.pos++)}throw new Error(`Unterminated regex starting at position ${t}`)}readIdentifier(){let t=this.pos;for(;this.pos<this.input.length&&this.isIdentChar(this.input[this.pos]);)this.pos++;let n=!1;this.pos<this.input.length&&this.input[this.pos]==="?"&&(n=!0,this.pos++);let s=this.input.slice(t,n?this.pos-1:this.pos);n&&(s+="?");let r=new Map([["true","true"],["false","false"],["null","null"],["and","and"],["or","or"],["eq","eq"],["ne","ne"],["lt","lt"],["le","le"],["gt","gt"],["ge","ge"],["in","in"],["as","as"],["_","_"]]),o=s.replace(/\?$/,""),i=r.get(o);return i!==void 0&&!n?{type:i,value:o,pos:t}:{type:"ident",value:s,pos:t}}};function z(e){return{maxSourceLength:e.limits.maxStringLength,maxTokens:e.limits.maxQueryTokens,maxAstNodes:e.limits.maxQueryElements,maxOperations:e.limits.maxJqIterations,maxDepth:e.limits.maxQueryDepth}}var D={PIPE:1,OR:2,AND:3,EQUALITY:4,COMPARISON:5,ADDITIVE:6,MULTIPLICATIVE:7,POWER:8,UNARY:9,POSTFIX:10},ee=class{pos=0;tokens;depth=0;operations=0;astNodes=0;limits;constructor(t,n={}){this.tokens=t,this.limits={maxSourceLength:n.maxSourceLength??1024*1024,maxTokens:n.maxTokens??1e5,maxDepth:n.maxDepth??100,maxOperations:n.maxOperations??1e5,maxAstNodes:n.maxAstNodes??1e5};let s=0;for(let r of t)this.useOperation(),r.type==="("||r.type==="["||r.type==="{"?(s++,s>this.limits.maxDepth&&this.throwDepthLimit()):(r.type===")"||r.type==="]"||r.type==="}")&&(s=Math.max(0,s-1))}parse(){let t=this.parseExpr(0);if(this.peek().type!=="eof")throw new Error(`Unexpected token: ${this.peek().value}`);return t}parseExpr(t){return this.withDepth(()=>this.parseExprInner(t))}parseExprInner(t){let n=this.parsePrefix();for(;;){let s=this.peek(),r=this.getInfixPrec(s.type);if(r<t)break;n=this.parseInfix(n,r)}return n}useOperation(t=1){if(t>this.limits.maxOperations-this.operations)throw new E(`xan: expression parser operation limit exceeded (${this.limits.maxOperations})`,"iterations");this.operations+=t}withDepth(t){this.depth>=this.limits.maxDepth&&this.throwDepthLimit(),this.depth++;try{return t()}finally{this.depth--}}throwDepthLimit(){throw new E(`xan: expression parser depth limit exceeded (${this.limits.maxDepth})`,"recursion")}addAstNode(){if(this.astNodes>=this.limits.maxAstNodes)throw new E(`xan: expression AST node limit exceeded (${this.limits.maxAstNodes})`,"array_elements");this.astNodes++}parsePrefix(){let t=this.peek();switch(t.type){case"int":return this.advance(),{type:"int",value:Number.parseInt(t.value,10)};case"float":return this.advance(),{type:"float",value:Number.parseFloat(t.value)};case"string":return this.advance(),{type:"string",value:t.value};case"regex":{this.advance();let n=t.value.split("/"),s=n.length>1?n[n.length-1]:"";return{type:"regex",pattern:n.slice(0,-1).join("/")||t.value,caseInsensitive:s.includes("i")}}case"true":return this.advance(),{type:"bool",value:!0};case"false":return this.advance(),{type:"bool",value:!1};case"null":return this.advance(),{type:"null"};case"_":return this.advance(),{type:"underscore"};case"ident":{let n=t.value,s=n.endsWith("?"),r=s?n.slice(0,-1):n;if(this.advance(),this.peek().type==="(")return this.parseFunctionCall(r);if(this.peek().type==="=>"){this.advance();let o=this.parseExpr(0);return this.bindLambdaArgs({type:"lambda",params:[r],body:o},[r])}return{type:"identifier",name:r,unsure:s}}case"(":{this.advance();let n=this.pos;if(this.peek().type===")"){if(this.advance(),this.peek().type==="=>"){this.advance();let r=this.parseExpr(0);return{type:"lambda",params:[],body:r}}throw new Error("Empty parentheses not allowed")}if(this.peek().type==="ident"){let r=[this.peek().value];this.advance();let o=!0;for(;this.peek().type===",";)if(this.advance(),this.peek().type==="ident")r.push(this.peek().value),this.advance();else{o=!1;break}if(o&&this.peek().type===")"&&this.peekAt(1).type==="=>"){this.advance(),this.advance();let i=this.parseExpr(0);return this.bindLambdaArgs({type:"lambda",params:r,body:i},r)}this.pos=n}let s=this.parseExpr(0);return this.expect(")"),s}case"[":return this.parseList();case"{":return this.parseMap();case"-":{this.advance();let n=this.parseExpr(D.UNARY);return n.type==="int"?{type:"int",value:-n.value}:n.type==="float"?{type:"float",value:-n.value}:{type:"func",name:"neg",args:[{expr:n}]}}case"!":return this.advance(),{type:"func",name:"not",args:[{expr:this.parseExpr(D.UNARY)}]};default:throw new Error(`Unexpected token: ${t.type} (${t.value})`)}}parseFunctionCall(t){this.expect("(");let n=[];if(this.peek().type!==")")do{n.length>0&&this.peek().type===","&&this.advance();let s;if(this.peek().type==="ident"){let o=this.peek().value,i=this.pos+1;i<this.tokens.length&&this.tokens[i].type==="="&&(s=o,this.advance(),this.advance())}let r=this.parseExpr(0);n.push({name:s,expr:r})}while(this.peek().type===",");return this.expect(")"),{type:"func",name:t.toLowerCase(),args:n}}parseList(){this.expect("[");let t=[];if(this.peek().type!=="]")do t.length>0&&this.peek().type===","&&this.advance(),t.push(this.parseExpr(0));while(this.peek().type===",");return this.expect("]"),{type:"list",elements:t}}parseMap(){this.expect("{");let t=[];if(this.peek().type!=="}")do{t.length>0&&this.peek().type===","&&this.advance();let n;if(this.peek().type==="ident")n=this.peek().value,this.advance();else if(this.peek().type==="string")n=this.peek().value,this.advance();else throw new Error(`Expected map key, got ${this.peek().type}`);this.expect(":");let s=this.parseExpr(0);t.push({key:n,value:s})}while(this.peek().type===",");return this.expect("}"),{type:"map",entries:t}}parseInfix(t,n){let s=this.peek(),o=new Map([["+","add"],["-","sub"],["*","mul"],["/","div"],["//","idiv"],["%","mod"],["**","pow"],["++","concat"],["==","=="],["!=","!="],["<","<"],["<=","<="],[">",">"],[">=",">="],["eq","eq"],["ne","ne"],["lt","lt"],["le","le"],["gt","gt"],["ge","ge"],["&&","and"],["and","and"],["||","or"],["or","or"]]).get(s.type);if(o!==void 0){this.advance();let i=this.parseExpr(n+(this.isRightAssoc(s.type)?0:1));return{type:"func",name:o,args:[{expr:t},{expr:i}]}}if(s.type==="|"){this.advance();let i=this.parseExpr(n);return this.handlePipe(t,i)}if(s.type===".")return this.advance(),this.handleDot(t);if(s.type==="[")return this.advance(),this.handleIndexing(t);if(s.type==="in")return this.advance(),{type:"func",name:"contains",args:[{expr:this.parseExpr(n+1)},{expr:t}]};if(s.type==="not in")return this.advance(),{type:"func",name:"not",args:[{expr:{type:"func",name:"contains",args:[{expr:this.parseExpr(n+1)},{expr:t}]}}]};throw new Error(`Unexpected infix token: ${s.type}`)}handlePipe(t,n){if(n.type==="identifier")return{type:"func",name:n.name,args:[{expr:t}]};if(n.type==="func"){let s=this.countUnderscores(n);return s===0?n:s===1?this.fillUnderscore(n,t):{type:"pipeline",exprs:[t,n]}}return this.countUnderscores(n)===1?this.fillUnderscore(n,t):n}handleDot(t){let n=this.peek();if(n.type==="ident"){let s=n.value;if(this.advance(),this.peek().type==="("){let r=this.parseFunctionCall(s);return r.type==="func"&&r.args.unshift({expr:t}),r}return{type:"func",name:"get",args:[{expr:t},{expr:{type:"string",value:s}}]}}if(n.type==="int"){let s=Number.parseInt(n.value,10);return this.advance(),{type:"func",name:"get",args:[{expr:t},{expr:{type:"int",value:s}}]}}if(n.type==="string"){let s=n.value;return this.advance(),{type:"func",name:"get",args:[{expr:t},{expr:{type:"string",value:s}}]}}throw new Error(`Expected identifier, number, or string after dot, got ${n.type}`)}handleIndexing(t){if(this.peek().type===":"){if(this.advance(),this.peek().type==="]")return this.advance(),{type:"func",name:"slice",args:[{expr:t}]};let s=this.parseExpr(0);return this.expect("]"),{type:"func",name:"slice",args:[{expr:t},{expr:{type:"int",value:0}},{expr:s}]}}let n=this.parseExpr(0);if(this.peek().type===":"){if(this.advance(),this.peek().type==="]")return this.advance(),{type:"func",name:"slice",args:[{expr:t},{expr:n}]};let s=this.parseExpr(0);return this.expect("]"),{type:"func",name:"slice",args:[{expr:t},{expr:n},{expr:s}]}}return this.expect("]"),{type:"func",name:"get",args:[{expr:t},{expr:n}]}}countUnderscores(t){let n=[t],s=0;for(;n.length>0;){this.useOperation();let r=n.pop();if(!r)break;if(r.type==="underscore")s++;else if(r.type==="func")for(let o of r.args)n.push(o.expr);else if(r.type==="list")n.push(...r.elements);else if(r.type==="map")for(let o of r.entries)n.push(o.value);if(n.length>this.limits.maxAstNodes)throw new E(`xan: expression AST node limit exceeded (${this.limits.maxAstNodes})`,"array_elements")}return s}fillUnderscore(t,n){return this.withDepth(()=>this.fillUnderscoreInner(t,n))}fillUnderscoreInner(t,n){return this.useOperation(),t.type==="underscore"?n:t.type==="func"?{...t,args:t.args.map(s=>({...s,expr:this.fillUnderscore(s.expr,n)}))}:t.type==="list"?{...t,elements:t.elements.map(s=>this.fillUnderscore(s,n))}:t.type==="map"?{...t,entries:t.entries.map(s=>({...s,value:this.fillUnderscore(s.value,n)}))}:t}bindLambdaArgs(t,n){return{...t,body:this.bindLambdaArgsInExpr(t.body,n)}}bindLambdaArgsInExpr(t,n){return this.withDepth(()=>this.bindLambdaArgsInExprInner(t,n))}bindLambdaArgsInExprInner(t,n){return this.useOperation(),t.type==="identifier"&&n.includes(t.name)?{type:"lambdaBinding",name:t.name}:t.type==="func"?{...t,args:t.args.map(s=>({...s,expr:this.bindLambdaArgsInExpr(s.expr,n)}))}:t.type==="list"?{...t,elements:t.elements.map(s=>this.bindLambdaArgsInExpr(s,n))}:t.type==="map"?{...t,entries:t.entries.map(s=>({...s,value:this.bindLambdaArgsInExpr(s.value,n)}))}:t}getInfixPrec(t){switch(t){case"|":return D.PIPE;case"||":case"or":return D.OR;case"&&":case"and":return D.AND;case"==":case"!=":case"eq":case"ne":return D.EQUALITY;case"<":case"<=":case">":case">=":case"lt":case"le":case"gt":case"ge":case"in":case"not in":return D.COMPARISON;case"+":case"-":case"++":return D.ADDITIVE;case"*":case"/":case"//":case"%":return D.MULTIPLICATIVE;case"**":return D.POWER;case".":case"[":return D.POSTFIX;default:return-1}}isRightAssoc(t){return t==="**"}peek(){return this.tokens[this.pos]||{type:"eof",value:"",pos:0}}peekAt(t){return this.tokens[this.pos+t]||{type:"eof",value:"",pos:0}}advance(){return this.useOperation(),this.addAstNode(),this.tokens[this.pos++]}expect(t){let n=this.peek();if(n.type!==t)throw new Error(`Expected ${t}, got ${n.type}`);return this.advance()}};function X(e,t={}){let n=[],r=new G(e,{maxSourceLength:t.maxSourceLength,maxTokens:t.maxTokens}).tokenize(),o=0,i=()=>r[o]||{type:"eof",value:"",pos:0},p=()=>r[o++];for(;i().type!=="eof";){if(i().type===","&&n.length>0){p();continue}let h=[],m=0,c=o;for(;i().type!=="eof";){let l=i();if((l.type===","||l.type==="as")&&m===0)break;(l.type==="("||l.type==="["||l.type==="{")&&m++,(l.type===")"||l.type==="]"||l.type==="}")&&m--,h.push(p())}h.push({type:"eof",value:"",pos:0});let d=new ee(h,t).parse(),u;if(i().type==="as")if(p(),i().type==="("){p();let l=[];for(;i().type!==")"&&i().type!=="eof";)if((i().type==="ident"||i().type==="string")&&(l.push(i().value),p()),i().type===",")p();else if(i().type!==")"&&i().type!=="eof")throw new Error(`Expected tuple alias, got ${i().type}`);if(i().type!==")")throw new Error("Expected ')' after tuple alias");p(),u=l}else if(i().type==="ident"||i().type==="string")u=i().value,p();else throw new Error(`Expected name after 'as', got ${i().type}`);else u=e.slice(r[c].pos,r[o-1]?.pos||e.length).trim(),d.type==="identifier"&&(u=d.name);n.push({expr:d,name:u})}return n}function B(e,t={}){let s=new G(e,{maxSourceLength:t.maxSourceLength,maxTokens:t.maxTokens}).tokenize();return new ee(s,t).parse()}function R(e,t){return t.length===0?O(e,[]):t.length===1?{type:"Pipe",left:t[0],right:O(e,[])}:{type:"Pipe",left:t[0],right:O(e,t.slice(1))}}var le={add:e=>L("+",e[0],e[1]),sub:e=>L("-",e[0],e[1]),mul:e=>L("*",e[0],e[1]),div:e=>L("/",e[0],e[1]),mod:e=>L("%",e[0],e[1]),idiv:e=>O("floor",[L("/",e[0],e[1])]),pow:e=>R("pow",e),neg:e=>({type:"UnaryOp",op:"-",operand:e[0]}),"==":e=>L("==",e[0],e[1]),"!=":e=>L("!=",e[0],e[1]),"<":e=>L("<",e[0],e[1]),"<=":e=>L("<=",e[0],e[1]),">":e=>L(">",e[0],e[1]),">=":e=>L(">=",e[0],e[1]),eq:e=>L("==",M(e[0]),M(e[1])),ne:e=>L("!=",M(e[0]),M(e[1])),lt:e=>L("<",M(e[0]),M(e[1])),le:e=>L("<=",M(e[0]),M(e[1])),gt:e=>L(">",M(e[0]),M(e[1])),ge:e=>L(">=",M(e[0]),M(e[1])),and:e=>L("and",e[0],e[1]),or:e=>L("or",e[0],e[1]),not:e=>({type:"UnaryOp",op:"not",operand:e[0]}),len:e=>R("length",e),length:e=>R("length",e),upper:e=>R("ascii_upcase",e),lower:e=>R("ascii_downcase",e),trim:e=>R("trim",e),ltrim:e=>e.length===0?O("ltrimstr",[{type:"Literal",value:" "}]):{type:"Pipe",left:e[0],right:O("ltrimstr",[{type:"Literal",value:" "}])},rtrim:e=>e.length===0?O("rtrimstr",[{type:"Literal",value:" "}]):{type:"Pipe",left:e[0],right:O("rtrimstr",[{type:"Literal",value:" "}])},split:e=>R("split",e),join:e=>e.length===1?O("join",[{type:"Literal",value:""}]):R("join",e),concat:e=>L("+",e[0],e[1]),startswith:e=>R("startswith",e),endswith:e=>R("endswith",e),contains:e=>R("contains",e),replace:e=>R("gsub",e),substr:e=>e.length===2?{type:"Slice",base:e[0],start:e[1]}:{type:"Slice",base:e[0],start:e[1],end:L("+",e[1],e[2])},abs:e=>R("fabs",e),floor:e=>R("floor",e),ceil:e=>R("ceil",e),round:e=>R("round",e),sqrt:e=>R("sqrt",e),log:e=>R("log",e),log10:e=>R("log10",e),log2:e=>R("log2",e),exp:e=>R("exp",e),sin:e=>R("sin",e),cos:e=>R("cos",e),tan:e=>R("tan",e),asin:e=>R("asin",e),acos:e=>R("acos",e),atan:e=>R("atan",e),min:e=>R("min",e),max:e=>R("max",e),first:e=>e.length===0?{type:"Index",index:{type:"Literal",value:0}}:{type:"Index",index:{type:"Literal",value:0},base:e[0]},last:e=>e.length===0?{type:"Index",index:{type:"Literal",value:-1}}:{type:"Index",index:{type:"Literal",value:-1},base:e[0]},get:e=>e.length===1?{type:"Index",index:e[0]}:{type:"Index",index:e[1],base:e[0]},slice:e=>e.length===1?{type:"Slice",base:e[0]}:e.length===2?{type:"Slice",base:e[0],start:e[1]}:{type:"Slice",base:e[0],start:e[1],end:e[2]},keys:"keys",values:"values",entries:e=>O("to_entries",e),from_entries:"from_entries",reverse:"reverse",sort:"sort",sort_by:"sort_by",group_by:"group_by",unique:"unique",unique_by:"unique_by",flatten:"flatten",map:e=>({type:"Pipe",left:e[0],right:{type:"Array",elements:e[1]}}),select:e=>O("select",e),empty:()=>O("empty",[]),count:()=>O("length",[]),sum:e=>e.length===0?O("add",[]):{type:"Pipe",left:{type:"Array",elements:e[0]},right:O("add",[])},mean:e=>e.length===0?{type:"Pipe",left:{type:"Identity"},right:L("/",O("add",[]),O("length",[]))}:{type:"Pipe",left:{type:"Array",elements:e[0]},right:L("/",O("add",[]),O("length",[]))},avg:e=>e.length===0?{type:"Pipe",left:{type:"Identity"},right:L("/",O("add",[]),O("length",[]))}:{type:"Pipe",left:{type:"Array",elements:e[0]},right:L("/",O("add",[]),O("length",[]))},type:"type",isnull:e=>e.length===0?L("==",{type:"Identity"},{type:"Literal",value:null}):L("==",e[0],{type:"Literal",value:null}),isempty:e=>e.length===0?L("==",{type:"Identity"},{type:"Literal",value:""}):L("==",e[0],{type:"Literal",value:""}),tonumber:e=>e.length===0?O("tonumber",[]):O("tonumber",e),tostring:e=>e.length===0?O("tostring",[]):O("tostring",e),if:e=>st(e[0],e[1],e[2]),coalesce:e=>{if(e.length===0)return{type:"Literal",value:null};if(e.length===1)return e[0];let t=e[e.length-1];for(let n=e.length-2;n>=0;n--){let s=e[n],r=L("and",L("!=",s,{type:"Literal",value:null}),L("!=",s,{type:"Literal",value:""}));t=st(r,s,t)}return t},index:()=>({type:"Field",name:"_row_index"}),now:()=>O("now",[]),fmt:e=>O("tostring",e),format:e=>O("tostring",e)};Object.setPrototypeOf(le,null);function L(e,t,n){return{type:"BinaryOp",op:e,left:t,right:n}}function O(e,t){return{type:"Call",name:e,args:t}}var mt="then";function st(e,t,n){let s=Xe({type:"Cond",cond:e,elifs:[],else:n||{type:"Literal",value:null}});return s[mt]=t,s}function M(e){return{type:"Pipe",left:e,right:{type:"Call",name:"tostring",args:[]}}}function U(e,t=!0,n={}){let s={nodes:0,operations:0,maxNodes:n.maxAstNodes??1e5,maxOperations:n.maxOperations??1e5,maxDepth:n.maxDepth??100};return rt(e,t,s,0)}function rt(e,t,n,s){if(s>=n.maxDepth)throw new E(`xan: expression conversion depth limit exceeded (${n.maxDepth})`,"recursion");if(++n.nodes>n.maxNodes)throw new E(`xan: expression conversion AST limit exceeded (${n.maxNodes})`,"array_elements");if(++n.operations>n.maxOperations)throw new E(`xan: expression conversion operation limit exceeded (${n.maxOperations})`,"iterations");let r=o=>rt(o,t,n,s+1);switch(e.type){case"int":case"float":return{type:"Literal",value:e.value};case"string":return{type:"Literal",value:e.value};case"bool":return{type:"Literal",value:e.value};case"null":return{type:"Literal",value:null};case"underscore":return{type:"Index",base:{type:"Identity"},index:{type:"Literal",value:"_"}};case"identifier":return t?{type:"Field",name:e.name}:{type:"VarRef",name:e.name};case"lambdaBinding":return{type:"VarRef",name:e.name};case"func":{if(e.args.length>n.maxNodes-n.nodes)throw new E(`xan: expression conversion AST limit exceeded (${n.maxNodes})`,"array_elements");let o=e.args.map(p=>r(p.expr));if(e.name==="coalesce"){let p=Math.max(0,o.length-1)*7;if(p>n.maxNodes-n.nodes)throw new E(`xan: expression conversion AST limit exceeded (${n.maxNodes})`,"array_elements");if(n.nodes+=p,n.operations+=o.length,n.operations>n.maxOperations)throw new E(`xan: expression conversion operation limit exceeded (${n.maxOperations})`,"iterations")}let i=Object.hasOwn(le,e.name)?le[e.name]:void 0;return typeof i=="function"?i(o):O(typeof i=="string"?i:e.name,o)}case"list":return e.elements.length===0?{type:"Array"}:{type:"Array",elements:e.elements.reduce((o,i,p)=>{let h=r(i);return p===0?h:{type:"Comma",left:o,right:h}},null)};case"map":return{type:"Object",entries:e.entries.map(o=>({key:o.key,value:r(o.value)}))};case"regex":return{type:"Literal",value:e.pattern};case"slice":return{type:"Slice",start:e.start?r(e.start):void 0,end:e.end?r(e.end):void 0};case"lambda":return r(e.body);case"pipeline":return{type:"Identity"};default:throw new Error(`Unknown moonblade expression type: ${e.type}`)}}function Q(e){return e<2?0:Math.ceil(e*Math.log2(e))}function ue(e,t={}){let n=t.maxArrayElements??1e5,s=t.maxStringLength??10*1024*1024,r=t.maxIterations??1e5,o=t.maxDepth??100;if(K(e)>s)throw new E(`xan: aggregation expression length limit exceeded (${s} bytes)`,"string_length");let i=[],p=0,h=0,m=()=>{if(t.consumeWork?.(),++h>r)throw new E(`xan: aggregation parser operation limit exceeded (${r})`,"iterations")};for(;p<e.length;){for(m();p<e.length&&(e[p]===" "||e[p]===",");)p++;if(p>=e.length)break;let c=p;for(;p<e.length&&/\w/.test(e[p]);)p++;let a=e.slice(c,p);for(;p<e.length&&e[p]===" ";)p++;if(e[p]!=="(")break;p++;let d=1,u=p;for(;p<e.length&&d>0;){if(m(),e[p]==="("?d++:e[p]===")"&&d--,d>o)throw new E(`xan: aggregation parser depth limit exceeded (${o})`,"recursion");d>0&&p++}let l=e.slice(u,p).trim();for(p++;p<e.length&&e[p]===" ";)p++;let f="";if(e.slice(p,p+3).toLowerCase()==="as "){for(p+=3;p<e.length&&e[p]===" ";)p++;let x=p;for(;p<e.length&&/\w/.test(e[p]);)p++;f=e.slice(x,p)}if(f||(f=l?`${a}(${l})`:`${a}()`),i.length>=n)throw new E(`xan: aggregation specification limit exceeded (${n})`,"array_elements");i.push({func:a,expr:l,alias:f})}return i}function ft(e){return/^\w+$/.test(e)}function ht(e,t,n){let s=V(e,t,n);return s.length>0?s[0]:null}function ce(e,t,n={},s={}){let{func:r,expr:o}=t,i=s.maxArrayElements??1e5,p=s.maxStringLength??10*1024*1024,h=s.maxIterations??1e5,m={maxSourceLength:p,maxTokens:i,maxAstNodes:i,maxOperations:h,maxDepth:s.maxDepth??100};if(e.length>i)throw new E(`xan: aggregation input limit exceeded (${i})`,"array_elements");if(r==="count"&&!o)return e.length;let c=ft(o),a=c?null:U(B(o,m),!0,m),d;if(c)d=f=>f[o];else{if(a===null)throw new Error("xan: missing compiled aggregation expression");d=f=>ht(f,a,n)}if(r==="all"||r==="any"){let f=0;for(let x of e){if(s.consumeWork?.(),++f>h)throw new E(`xan: aggregation iteration limit exceeded (${h})`,"iterations");let g=!!d(x);if(r==="all"&&!g)return!1;if(r==="any"&&g)return!0}return r==="all"}let u=[],l=0;for(let f of e){if(s.consumeWork?.(),++l>h)throw new E(`xan: aggregation iteration limit exceeded (${h})`,"iterations");let x=d(f);if(x!=null){if(u.length>=i)throw new E(`xan: aggregation value limit exceeded (${i})`,"array_elements");u.push(x)}}switch(r){case"count":{if(c)return u.length;let f=0;for(let x of u)s.consumeWork?.(),x&&f++;return f}case"sum":{let f=0;for(let x of u)s.consumeWork?.(),f+=typeof x=="number"?x:Number.parseFloat(String(x));return f}case"mean":case"avg":{let f=0;for(let x of u)s.consumeWork?.(),f+=typeof x=="number"?x:Number.parseFloat(String(x));return u.length>0?f/u.length:0}case"min":{let f=null;for(let x of u){s.consumeWork?.();let g=typeof x=="number"?x:Number.parseFloat(String(x));f=f===null?g:Math.min(f,g)}return f}case"max":{let f=null;for(let x of u){s.consumeWork?.();let g=typeof x=="number"?x:Number.parseFloat(String(x));f=f===null?g:Math.max(f,g)}return f}case"first":return u.length>0?u[0]:null;case"last":return u.length>0?u[u.length-1]:null;case"median":{let f=[];for(let g of u){s.consumeWork?.();let y=typeof g=="number"?g:Number.parseFloat(String(g));Number.isNaN(y)||f.push(y)}if(s.consumeWork?.(Q(f.length)),f.sort((g,y)=>g-y),f.length===0)return null;let x=Math.floor(f.length/2);return f.length%2===0?(f[x-1]+f[x])/2:f[x]}case"mode":{let f=new Map;for(let y of u){s.consumeWork?.();let w=String(y);f.set(w,(f.get(w)||0)+1)}let x=0,g=null;for(let[y,w]of f)s.consumeWork?.(),w>x&&(x=w,g=y);return g}case"cardinality":{let f=new Set;for(let x of u)s.consumeWork?.(),f.add(String(x));return f.size}case"values":return ot(u,!1,p,s);case"distinct_values":return ot(u,!0,p,s);default:return null}}function it(e,t,n={},s={}){let r=F();for(let o of t)b(r,o.alias,ce(e,o,n,s));return r}function ot(e,t,n,s){let r=[],o=t?new Set:null,i=0;for(let p of e){s.consumeWork?.();let h=String(p);if(o?.has(h))continue;o?.add(h);let m=K(h)+(r.length>0?1:0);if(m>n-i)throw new E(`xan: aggregation string limit exceeded (${n} bytes)`,"string_length");r.push(h),i+=m}return t&&(s.consumeWork?.(Q(r.length)),r.sort()),r.join("|")}function lt(e,t){return{maxArrayElements:e.limits.maxArrayElements,maxStringLength:e.limits.maxStringLength,maxIterations:e.limits.maxJqIterations,maxDepth:e.limits.maxQueryDepth,consumeWork:(n=1)=>t.consumeWork(n)}}function at(e,t,n){let s=e.size-(t&&e.has("")?1:0);return n>0?Math.min(s,n):s}async function pe(e,t){let n="",s=[];for(let d of e)d.startsWith("-")||(n?s.push(d):n=d);if(!n)return{stdout:"",stderr:`xan agg: no aggregation expression
|
|
6
|
+
`,exitCode:1};let{data:r,error:o}=await k(s,t);if(o)return o;let i={limits:t.limits?{maxIterations:t.limits.maxJqIterations,maxStringLength:t.limits.maxStringLength}:void 0},p=new $(t,"xan agg"),h=lt(t,p),m=ue(n,h),c=m.map(d=>d.alias);p.addRow(c.length);let a=it(r,m,i,h);return{stdout:C(c,[a],t),stderr:"",exitCode:0}}async function de(e,t){let n="",s="",r=[];for(let x=0;x<e.length;x++){let g=e[x];g==="--sorted"||g.startsWith("-")||(n?s?r.push(g):s=g:n=g)}if(!n||!s)return{stdout:"",stderr:`xan groupby: usage: xan groupby COLS EXPR [FILE]
|
|
7
|
+
`,exitCode:1};let{data:o,error:i}=await k(r,t);if(i)return i;let p={limits:t.limits?{maxIterations:t.limits.maxJqIterations,maxStringLength:t.limits.maxStringLength}:void 0},h=n.split(","),m=new $(t,"xan groupby"),c=lt(t,m),a=ue(s,c),d=[...h,...a.map(x=>x.alias)],u=[],l=new Map;for(let x of o){m.consumeWork(h.length+1);let g=JSON.stringify(h.map(y=>String(x[y])));l.has(g)||(m.addRow(d.length),l.set(g,[]),u.push(g)),l.get(g)?.push(x)}let f=[];for(let x of u){let g=l.get(x);if(!g)continue;let y=F();for(let w of h)b(y,w,g[0][w]);for(let w of a)b(y,w.alias,ce(g,w,p,c));f.push(y)}return{stdout:C(d,f,t),stderr:"",exitCode:0}}async function me(e,t){let n=[],s="",r=10,o=!1,i=[];for(let l=0;l<e.length;l++){let f=e[l];(f==="-s"||f==="--select")&&l+1<e.length?n=e[++l].split(","):(f==="-g"||f==="--groupby")&&l+1<e.length?s=e[++l]:(f==="-l"||f==="--limit")&&l+1<e.length?r=Number.parseInt(e[++l],10):f==="--no-extra"?o=!0:f==="-A"||f==="--all"?r=0:f.startsWith("-")||i.push(f)}let{headers:p,data:h,error:m}=await k(i,t);if(m)return m;if(!Number.isSafeInteger(r)||r<0)return{stdout:"",stderr:`xan frequency: limit must be a non-negative safe integer
|
|
8
|
+
`,exitCode:1};let c=new $(t,"xan frequency"),a=n.length>0?n:p.filter(l=>l!==s);s&&n.length===0&&(a=p.filter(l=>l!==s));let d=[],u=s?["field",s,"value","count"]:["field","value","count"];if(s){let l=new Map;for(let f of h){c.consumeWork();let x=String(f[s]??"");l.has(x)||l.set(x,[]),l.get(x)?.push(f)}for(let f of a)for(let[x,g]of l){let y=new Map;for(let v of g){c.consumeWork();let I=v[f],S=I===""||I===null||I===void 0?"":String(I);y.set(S,(y.get(S)||0)+1)}c.addRows(at(y,o,r),u.length),c.consumeWork(Q(y.size));let w=[...y.entries()].sort((v,I)=>I[1]!==v[1]?I[1]-v[1]:v[0].localeCompare(I[0])),A=0;for(let[v,I]of w){if(o&&v==="")continue;if(r>0&&A>=r)break;let S=F();b(S,"field",f),b(S,s,x),b(S,"value",v===""?"<empty>":v),b(S,"count",I),d.push(S),A++}}}else for(let l of a){let f=new Map;for(let y of h){c.consumeWork();let w=y[l],A=w===""||w===null||w===void 0?"":String(w);f.set(A,(f.get(A)||0)+1)}c.addRows(at(f,o,r),u.length),c.consumeWork(Q(f.size));let x=[...f.entries()].sort((y,w)=>w[1]!==y[1]?w[1]-y[1]:y[0].localeCompare(w[0])),g=0;for(let[y,w]of x){if(o&&y==="")continue;if(r>0&&g>=r)break;let A=F();b(A,"field",l),b(A,"value",y===""?"<empty>":y),b(A,"count",w),d.push(A),g++}}return{stdout:C(u,d,t),stderr:"",exitCode:0}}async function fe(e,t){let n=[],s=[];for(let a=0;a<e.length;a++){let d=e[a];d==="-s"&&a+1<e.length?n=e[++a].split(","):d.startsWith("-")||s.push(d)}let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=n.length>0?n:r,h=["field","type","count","min","max","mean"];new $(t,"xan stats").addRows(p.length,h.length);let c=[];for(let a of p){let d=0,u=0,l=Number.POSITIVE_INFINITY,f=Number.NEGATIVE_INFINITY,x=0;for(let w of o){t.executionScope?.consumeWork(1,"xan stats rows");let A=w[a];if(A==null)continue;d++;let v=typeof A=="number"?A:Number.parseFloat(String(A));Number.isNaN(v)||(u++,l=Math.min(l,v),f=Math.max(f,v),x+=v)}let g=u===d&&u>0,y=F();b(y,"field",a),b(y,"type",g?"Number":"String"),b(y,"count",d),b(y,"min",g?l:""),b(y,"max",g?f:""),b(y,"mean",g?Math.round(x/u*1e10)/1e10:""),c.push(y)}return{stdout:C(h,c,t),stderr:"",exitCode:0}}function ut(e,t={}){let n=B(e,t);return U(n,!0,t)}function gt(e){let n=e.replace(/[.+?^${}()|[\]\\]/g,"\\$&").replace(/\*/g,".*");return Z(`^${n}$`)}function te(e,t){let n=[],s=new Set;for(let r of e.split(",")){let o=r.trim();if(o.startsWith("!")){let m=o.slice(1),c=te(m,t);for(let a of c)s.add(a);continue}if(o==="*"){for(let m of t)n.includes(m)||n.push(m);continue}if(o.includes("*")){let m=gt(o);for(let c of t)m.test(c)&&!n.includes(c)&&n.push(c);continue}let i=o.match(/^([^:]*):([^:]*)$/);if(i&&(i[1]||i[2])){let m=i[1],c=i[2],a=m?t.indexOf(m):0,d=c?t.indexOf(c):t.length-1;if(a!==-1&&d!==-1){let u=a<=d?1:-1;for(let l=a;u>0?l<=d:l>=d;l+=u)n.includes(t[l])||n.push(t[l])}continue}let p=o.match(/^(\d+)-(\d+)$/);if(p){let m=Number.parseInt(p[1],10),c=Number.parseInt(p[2],10);for(let a=m;a<=c&&a<t.length;a++)n.push(t[a]);continue}let h=Number.parseInt(o,10);if(!Number.isNaN(h)&&h>=0&&h<t.length){n.push(t[h]);continue}t.includes(o)&&n.push(o)}return s.size>0?n.filter(r=>!s.has(r)):n}async function he(e,t){let n="",s=[];for(let m of e)m.startsWith("-")||(n?s.push(m):n=m);if(!n)return{stdout:"",stderr:`xan select: no columns specified
|
|
9
|
+
`,exitCode:1};let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=te(n,r),h=o.map(m=>{let c=F();for(let a of p)b(c,a,m[a]);return c});return{stdout:C(p,h,t),stderr:"",exitCode:0}}async function ge(e,t){let n="",s=[];for(let c of e)c.startsWith("-")||(n?s.push(c):n=c);if(!n)return{stdout:"",stderr:`xan drop: no columns specified
|
|
10
|
+
`,exitCode:1};let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=new Set(te(n,r)),h=r.filter(c=>!p.has(c)),m=o.map(c=>{let a=F();for(let d of h)b(a,d,c[d]);return a});return{stdout:C(h,m,t),stderr:"",exitCode:0}}async function xe(e,t){let n="",s="",r=[];for(let c=0;c<e.length;c++){let a=e[c];a==="-s"&&c+1<e.length?s=e[++c]:a.startsWith("-")||(n?r.push(a):n=a)}if(!n)return{stdout:"",stderr:`xan rename: no new name(s) specified
|
|
11
|
+
`,exitCode:1};let{headers:o,data:i,error:p}=await k(r,t);if(p)return p;let h;if(s){let c=s.split(","),a=n.split(","),d=new Map;for(let u=0;u<c.length&&u<a.length;u++)d.set(c[u],a[u]);h=o.map(u=>d.get(u)||u)}else{let c=n.split(",");h=o.map((a,d)=>d<c.length?c[d]:a)}let m=i.map(c=>{let a=F();for(let d=0;d<o.length;d++)b(a,h[d],c[o[d]]);return a});return{stdout:C(h,m,t),stderr:"",exitCode:0}}async function ye(e,t){let n="index",s=[];for(let m=0;m<e.length;m++)e[m]==="-c"&&m+1<e.length?n=e[++m]:s.push(e[m]);let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=[n,...r],h=o.map((m,c)=>{let a=F();b(a,n,c);for(let d of r)b(a,d,m[d]);return a});return{stdout:C(p,h,t),stderr:"",exitCode:0}}async function we(e,t){let n=e.includes("-j")||e.includes("--just-names"),{headers:s,error:r}=await k(e.filter(i=>i!=="-j"&&i!=="--just-names"),t);return r||{stdout:n?`${s.map(i=>i).join(`
|
|
12
|
+
`)}
|
|
13
|
+
`:`${s.map((i,p)=>`${p} ${i}`).join(`
|
|
14
|
+
`)}
|
|
15
|
+
`,stderr:"",exitCode:0}}async function ve(e,t){let{data:n,error:s}=await k(e,t);return s||{stdout:`${n.length}
|
|
16
|
+
`,stderr:"",exitCode:0}}async function Se(e,t){let n=10,s=[];for(let h=0;h<e.length;h++)(e[h]==="-l"||e[h]==="-n")&&h+1<e.length?n=Number.parseInt(e[++h],10):s.push(e[h]);let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=o.slice(0,n);return{stdout:C(r,p,t),stderr:"",exitCode:0}}async function be(e,t){let n=10,s=[];for(let h=0;h<e.length;h++)(e[h]==="-l"||e[h]==="-n")&&h+1<e.length?n=Number.parseInt(e[++h],10):s.push(e[h]);let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=o.slice(-n);return{stdout:C(r,p,t),stderr:"",exitCode:0}}async function Ce(e,t){let n,s,r,o=[];for(let d=0;d<e.length;d++){let u=e[d];(u==="-s"||u==="--start")&&d+1<e.length?n=Number.parseInt(e[++d],10):(u==="-e"||u==="--end")&&d+1<e.length?s=Number.parseInt(e[++d],10):(u==="-l"||u==="--len")&&d+1<e.length?r=Number.parseInt(e[++d],10):u.startsWith("-")||o.push(u)}let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;let m=n??0,c;r!==void 0?c=m+r:s!==void 0?c=s:c=p.length;let a=p.slice(m,c);return{stdout:C(i,a,t),stderr:"",exitCode:0}}async function ke(e,t){let{headers:n,data:s,error:r}=await k(e,t);if(r)return r;let o=[...s].reverse();return{stdout:C(n,o,t),stderr:"",exitCode:0}}async function Ee(e,t){let n=e.filter(m=>!m.startsWith("-")),{headers:s,data:r,error:o}=await k(n,t);if(o)return o;if(r.length===0){let m=["column"],c=s.map(a=>({column:a}));return{stdout:C(m,c,t),stderr:"",exitCode:0}}let i=s[0],p=[i,...r.map((m,c)=>String(m[i]??`row_${c}`))];if(new Set(p).size!==p.length)return{stdout:"",stderr:`xan transpose: duplicate output headers
|
|
17
|
+
`,exitCode:1};let h=[];for(let m=1;m<s.length;m++){let c=s[m],a=F();b(a,i,c);for(let d=0;d<r.length;d++)b(a,p[d+1],r[d][c]);h.push(a)}return{stdout:C(p,h,t),stderr:"",exitCode:0}}async function Ie(e,t){let n=null,s=[];for(let c=0;c<e.length;c++){let a=e[c];a==="--seed"&&c+1<e.length?n=Number.parseInt(e[++c],10):a.startsWith("-")||s.push(a)}let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=n!==null?n:Date.now(),h=()=>(p=p*1103515245+12345&2147483647,p/2147483647),m=[...o];for(let c=m.length-1;c>0;c--){let a=Math.floor(h()*(c+1));[m[c],m[a]]=[m[a],m[c]]}return{stdout:C(r,m,t),stderr:"",exitCode:0}}async function Ne(e,t){let n=null,s="",r=[];for(let a=0;a<e.length;a++){let d=e[a];if((d==="-l"||d==="--length")&&a+1<e.length){let u=e[++a];if(!/^[1-9]\d*$/.test(u))return{stdout:"",stderr:`xan fixlengths: length must be a positive safe integer
|
|
18
|
+
`,exitCode:1};if(n=Number(u),!Number.isSafeInteger(n)||n>t.limits.maxArrayElements)throw new E(`xan fixlengths: column limit exceeded (${t.limits.maxArrayElements})`,"array_elements")}else(d==="-d"||d==="--default")&&a+1<e.length?s=e[++a]:d.startsWith("-")||r.push(d)}let o=r[0],i;if(!o||o==="-")i=Y(t.stdin);else try{let a=t.fs.resolvePath(t.cwd,o);i=await t.fs.readFile(a)}catch(a){return q(a),{stdout:"",stderr:`xan fixlengths: ${o}: No such file or directory
|
|
19
|
+
`,exitCode:1}}let p=et(i,{maxStringLength:Math.min(t.limits.maxInputBytes,t.limits.maxStringLength),maxArrayElements:t.limits.maxArrayElements,maxRows:t.limits.maxCsvRows,maxCells:t.limits.maxCsvCells});if(p.length===0)return{stdout:"",stderr:"",exitCode:0};let h=0;for(let a of p)h=Math.max(h,a.length);let m=n??h;new $(t,"xan fixlengths").addRows(p.length,m);for(let a of p)for(a.length>m&&(a.length=m);a.length<m;)a.push(s);return{stdout:nt(p,t),stderr:"",exitCode:0}}async function Ae(e,t){let n=null,s=null,r=".",o=[],i=u=>{if(!/^[1-9]\d*$/.test(u))return null;let l=Number(u);return Number.isSafeInteger(l)?l:null};for(let u=0;u<e.length;u++){let l=e[u];if((l==="-c"||l==="--chunks")&&u+1<e.length){if(n=i(e[++u]),n===null)return{stdout:"",stderr:`xan split: chunk count must be a positive safe integer
|
|
20
|
+
`,exitCode:1}}else if((l==="-S"||l==="--size")&&u+1<e.length){if(s=i(e[++u]),s===null)return{stdout:"",stderr:`xan split: chunk size must be a positive safe integer
|
|
21
|
+
`,exitCode:1}}else(l==="-o"||l==="--output")&&u+1<e.length?r=e[++u]:l.startsWith("-")||o.push(l)}if(!n&&!s)return{stdout:"",stderr:`xan split: must specify -c or -S
|
|
22
|
+
`,exitCode:1};let{headers:p,data:h,error:m}=await k(o,t);if(m)return m;let c=n?Math.ceil(h.length/n):s,a=c===0?0:Math.ceil(h.length/c);if(a>t.limits.maxArrayElements)throw new E(`xan split: output part limit exceeded (${t.limits.maxArrayElements})`,"array_elements");let d=o[0]?.replace(/\.csv$/,"")||"part";try{let u=t.fs.resolvePath(t.cwd,r);for(let l=0;l<a;l++){let f=l*c,x=Math.min(f+c,h.length);t.executionScope?.consumeWork(x-f,"xan split rows");let g=`${d}_${String(l+1).padStart(3,"0")}.csv`,y=t.fs.resolvePath(u,g);await t.fs.writeFile(y,C(p,h.slice(f,x),t))}return{stdout:`Split into ${a} parts
|
|
23
|
+
`,stderr:"",exitCode:0}}catch(u){q(u);let l=new re(t.limits.maxOutputSize,"xan split");for(let f=0;f<a;f++){let x=f*c,g=Math.min(x+c,h.length);l.append(`Part ${f+1}: ${g-x} rows
|
|
24
|
+
`)}return{stdout:l.build(),stderr:"",exitCode:0}}}function ct(e){return e.replace(/[^a-zA-Z0-9_-]/g,"_")||"empty"}function xt(e){let t=2166136261;for(let n=0;n<e.length;n++)t=(t^e.charCodeAt(n))*16777619>>>0;return t.toString(36).padStart(6,"0").slice(0,6)}async function Le(e,t){let n="",s=".",r=[];for(let u=0;u<e.length;u++){let l=e[u];(l==="-o"||l==="--output")&&u+1<e.length?s=e[++u]:l.startsWith("-")||(n?r.push(l):n=l)}if(!n)return{stdout:"",stderr:`xan partition: usage: xan partition COLUMN [FILE]
|
|
25
|
+
`,exitCode:1};let{headers:o,data:i,error:p}=await k(r,t);if(p)return p;if(!o.includes(n))return{stdout:"",stderr:`xan partition: column '${n}' not found
|
|
26
|
+
`,exitCode:1};let h=new Map,m=new $(t,"xan partition");for(let u of i){m.addRow(o.length);let l=String(u[n]??"");h.has(l)||h.set(l,[]),h.get(l)?.push(u)}let c=new Map;for(let u of h.keys()){let l=ct(u);c.set(l,(c.get(l)??0)+1)}let a=new Set,d=new Map;for(let u of h.keys()){let l=ct(u),x=(c.get(l)??0)>1?`${l}_${xt(u)}`:l,g=`${x}.csv`,y=1;for(;a.has(g);)g=`${x}_${y}.csv`,y++;a.add(g),d.set(u,g)}try{let u=t.fs.resolvePath(t.cwd,s);for(let[l,f]of h){let x=d.get(l);if(!x)continue;let g=t.fs.resolvePath(u,x);await t.fs.writeFile(g,C(o,f,t))}return{stdout:`Partitioned into ${h.size} files by '${n}'
|
|
27
|
+
`,stderr:"",exitCode:0}}catch(u){q(u);let l=new re(t.limits.maxOutputSize,"xan partition");for(let[f,x]of h)l.append(`${f}: ${x.length} rows
|
|
28
|
+
`);return{stdout:l.build(),stderr:"",exitCode:0}}}async function Oe(e,t){if(e.length===0)return{stdout:"",stderr:`xan to: usage: xan to <format> [FILE]
|
|
29
|
+
`,exitCode:1};let n=e[0],s=e.slice(1);return n==="json"?yt(s,t):{stdout:"",stderr:`xan to: unsupported format '${n}'
|
|
30
|
+
`,exitCode:1}}async function yt(e,t){let n=e.filter(h=>!h.startsWith("-")),{data:s,error:r}=await k(n,t);if(r)return r;if(new $(t,"xan to json").addRows(s.length,s.length>0?Object.keys(s[0]).length:0),t.limits.maxOutputSize<1)throw new E("xan to json: output size limit exceeded (0 bytes)","output_size");let i=t.limits.maxOutputSize-1;return{stdout:`${Qe(s,i)}
|
|
31
|
+
`,stderr:"",exitCode:0}}async function Re(e,t){let n="",s=[];for(let r=0;r<e.length;r++){let o=e[r];(o==="-f"||o==="--format")&&r+1<e.length?n=e[++r]:o.startsWith("-")||s.push(o)}return n?n==="json"?wt(s,t):{stdout:"",stderr:`xan from: unsupported format '${n}'
|
|
32
|
+
`,exitCode:1}:{stdout:"",stderr:`xan from: usage: xan from -f <format> [FILE]
|
|
33
|
+
`,exitCode:1}}async function wt(e,t){let n=e[0],s;if(!n||n==="-")s=Y(t.stdin);else try{let r=t.fs.resolvePath(t.cwd,n);s=await t.fs.readFile(r)}catch(r){return q(r),{stdout:"",stderr:`xan from: ${n}: No such file or directory
|
|
34
|
+
`,exitCode:1}}try{let r=Math.min(t.limits.maxInputBytes,t.limits.maxStringLength);if(K(s)>r)throw new E(`xan from: input size limit exceeded (${r} bytes)`,"string_length");let o=Ge(JSON.parse(s.trim()),{maxDepth:t.limits.maxQueryDepth,maxElements:t.limits.maxQueryElements});if(!Array.isArray(o))return{stdout:"",stderr:`xan from: JSON input must be an array
|
|
35
|
+
`,exitCode:1};if(o.length===0)return{stdout:`
|
|
36
|
+
`,stderr:"",exitCode:0};if(Array.isArray(o[0])){let m=o,c=m[0];if(c.length>t.limits.maxArrayElements)throw new E(`xan from: column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");let a=c.map(String);new $(t,"xan from json").addRows(m.length-1,a.length);let u=[];for(let l=1;l<m.length;l++){let f=m[l];if(!Array.isArray(f))return{stdout:"",stderr:`xan from: JSON rows must all have the same shape
|
|
37
|
+
`,exitCode:1};let x=F();for(let g=0;g<a.length;g++)b(x,a[g],f[g]);u.push(x)}return{stdout:C(a,u,t),stderr:"",exitCode:0}}let i=o[0];if(!i||typeof i!="object"||Array.isArray(i))return{stdout:"",stderr:`xan from: JSON rows must be arrays or objects
|
|
38
|
+
`,exitCode:1};let p=Object.keys(i).sort();new $(t,"xan from json").addRows(o.length,p.length);for(let m of o)if(!m||typeof m!="object"||Array.isArray(m))return{stdout:"",stderr:`xan from: JSON rows must all have the same shape
|
|
39
|
+
`,exitCode:1};return{stdout:C(p,o,t),stderr:"",exitCode:0}}catch(r){return q(r),{stdout:"",stderr:`xan from: invalid JSON input
|
|
40
|
+
`,exitCode:1}}}async function $e(e,t){let n=!1,s=0,r="",o=[];for(let d=0;d<e.length;d++){let u=e[d];if(u==="-v"||u==="--invert")n=!0;else if((u==="-l"||u==="--limit")&&d+1<e.length)s=Number.parseInt(e[++d],10);else{if(u==="--help")return J({name:"xan filter",summary:"Filter rows by expression",usage:"xan filter [OPTIONS] EXPR [FILE]",description:"Filter CSV rows using moonblade expressions.",options:["-v, --invert invert match","-l, --limit N limit output to N rows"," --help display help"]});u.startsWith("-")||(r?o.push(u):r=u)}}if(!r)return{stdout:"",stderr:`xan filter: no expression specified
|
|
41
|
+
`,exitCode:1};let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;let m={limits:t.limits?{maxIterations:t.limits.maxJqIterations,maxStringLength:t.limits.maxStringLength}:void 0},c=ut(r,z(t)),a=[];for(let d of p){if(s>0&&a.length>=s)break;let u=V(d,c,m),l=u.length>0&&u.some(f=>!!f);(n?!l:l)&&a.push(d)}return{stdout:C(i,a,t),stderr:"",exitCode:0}}async function Fe(e,t){let n="",s=!1,r=!1,o=[];for(let c=0;c<e.length;c++){let a=e[c];a==="-N"||a==="--numeric"?s=!0:a==="-R"||a==="-r"||a==="--reverse"?r=!0:a==="-s"&&c+1<e.length?n=e[++c]:a.startsWith("-")||o.push(a)}let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;!n&&i.length>0&&(n=i[0]);let m=[...p].sort((c,a)=>{let d=c[n],u=a[n],l;if(s){let f=typeof d=="number"?d:Number.parseFloat(String(d)),x=typeof u=="number"?u:Number.parseFloat(String(u));l=f-x}else l=String(d).localeCompare(String(u));return r?-l:l});return{stdout:C(i,m,t),stderr:"",exitCode:0}}async function Te(e,t){let n="",s=[];for(let m=0;m<e.length;m++){let c=e[m];c==="-s"&&m+1<e.length?n=e[++m]:c.startsWith("-")||s.push(c)}let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=new Set,h=o.filter(m=>{let c=n?String(m[n]):JSON.stringify(m);return p.has(c)?!1:(p.add(c),!0)});return{stdout:C(r,h,t),stderr:"",exitCode:0}}async function Me(e,t){let n=10,s="",r=!1,o=[];for(let a=0;a<e.length;a++){let d=e[a];(d==="-l"||d==="-n")&&a+1<e.length?n=Number.parseInt(e[++a],10):d==="-R"||d==="-r"||d==="--reverse"?r=!0:d.startsWith("-")||(s?o.push(d):s=d)}let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;!s&&i.length>0&&(s=i[0]);let c=[...p].sort((a,d)=>{let u=a[s],l=d[s],f=typeof u=="number"?u:Number.parseFloat(String(u)),x=typeof l=="number"?l:Number.parseFloat(String(l));return r?f-x:x-f}).slice(0,n);return{stdout:C(i,c,t),stderr:"",exitCode:0}}async function Pe(e,t){let n="",s=!1,r=!1,o=[];for(let x=0;x<e.length;x++){let g=e[x];g==="-O"||g==="--overwrite"?s=!0:g==="--filter"?r=!0:g.startsWith("-")||(n?o.push(g):n=g)}if(!n)return{stdout:"",stderr:`xan map: no expression specified
|
|
42
|
+
`,exitCode:1};let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;let m=z(t),a=X(n,m).map(({expr:x,name:g})=>({alias:typeof g=="string"?g:g[0],ast:U(x,!0,m)})),d={limits:t.limits?{maxIterations:t.limits.maxJqIterations,maxStringLength:t.limits.maxStringLength}:void 0},u;if(s){u=[...i];for(let x of a)if(!i.includes(x.alias)){if(u.length>=t.limits.maxArrayElements)throw new E(`xan map: output column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");u.push(x.alias)}}else{if(W(i.length,a.length,"xan map")>t.limits.maxArrayElements)throw new E(`xan map: output column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");u=[...i,...a.map(x=>x.alias)]}let l=[],f=new $(t,"xan map");r||f.addRows(p.length,u.length);for(let x=0;x<p.length;x++){let g=p[x],y=j(g),w=!1,A=Object.assign(oe(g),{_row_index:x});for(let v of a){f.consumeWork();let I=V(A,v.ast,d),S=I.length>0?I[0]:null;if(r&&S==null){w=!0;break}b(y,v.alias,S)}w||(r&&f.addRow(u.length),l.push(y))}return{stdout:C(u,l,t),stderr:"",exitCode:0}}async function De(e,t){let n="",s="",r="",o=[];for(let g=0;g<e.length;g++){let y=e[g];(y==="-r"||y==="--rename")&&g+1<e.length?r=e[++g]:y.startsWith("-")||(n?s?o.push(y):s=y:n=y)}if(!n||!s)return{stdout:"",stderr:`xan transform: usage: xan transform COLUMN EXPR [FILE]
|
|
43
|
+
`,exitCode:1};let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;let m=n.split(",").map(g=>g.trim()),c=r?r.split(",").map(g=>g.trim()):[];for(let g of m)if(!i.includes(g))return{stdout:"",stderr:`xan transform: column '${g}' not found
|
|
44
|
+
`,exitCode:1};let a=z(t),d=U(X(s,a)[0]?.expr||B(s,a),!0,a),u={limits:t.limits?{maxIterations:t.limits.maxJqIterations,maxStringLength:t.limits.maxStringLength}:void 0},l=i.map(g=>{let y=m.indexOf(g);return y!==-1&&c[y]?c[y]:g}),f=[],x=new $(t,"xan transform");x.addRows(p.length,l.length);for(let g of p){let y=j(g);for(let w=0;w<m.length;w++){x.consumeWork();let A=m[w],v=Object.assign(oe(g),{_:g[A]}),I=V(v,d,u),S=I.length>0?I[0]:null,N=c[w]||A;N!==A&&delete y[A],b(y,N,S)}f.push(y)}return{stdout:C(l,f,t),stderr:"",exitCode:0}}async function _e(e,t){let n="",s="|",r=!1,o="",i=[];for(let l=0;l<e.length;l++){let f=e[l];(f==="-s"||f==="--separator")&&l+1<e.length?s=e[++l]:f==="--drop-empty"?r=!0:(f==="-r"||f==="--rename")&&l+1<e.length?o=e[++l]:f.startsWith("-")||(n?i.push(f):n=f)}if(!n)return{stdout:"",stderr:`xan explode: usage: xan explode COLUMN [FILE]
|
|
45
|
+
`,exitCode:1};let{headers:p,data:h,error:m}=await k(i,t);if(m)return m;if(!p.includes(n))return{stdout:"",stderr:`xan explode: column '${n}' not found
|
|
46
|
+
`,exitCode:1};let c=o?p.map(l=>l===n?o:l):p,a=o||n,d=[],u=new $(t,"xan explode");for(let l of h){let f=l[n],x=f==null?"":String(f);if(x===""){if(!r){u.addRow(c.length);let g=j(l);o&&(delete g[n],b(g,a,"")),d.push(g)}}else{let g=0;for(;g<=x.length;){u.addRow(c.length);let y=s===""?g+1:x.indexOf(s,g),w=y===-1?x.length:y,A=x.slice(g,w),v=j(l);if(o&&delete v[n],b(v,a,A),d.push(v),y===-1||s===""&&g>=x.length-1)break;g=s===""?y:y+s.length}}}return{stdout:C(c,d,t),stderr:"",exitCode:0}}async function We(e,t){let n="",s="|",r="",o=[];for(let g=0;g<e.length;g++){let y=e[g];(y==="-s"||y==="--sep")&&g+1<e.length?s=e[++g]:(y==="-r"||y==="--rename")&&g+1<e.length?r=e[++g]:y.startsWith("-")||(n?o.push(y):n=y)}if(!n)return{stdout:"",stderr:`xan implode: usage: xan implode COLUMN [FILE]
|
|
47
|
+
`,exitCode:1};let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;if(!i.includes(n))return{stdout:"",stderr:`xan implode: column '${n}' not found
|
|
48
|
+
`,exitCode:1};let m=i.filter(g=>g!==n),c=r?i.map(g=>g===n?r:g):i,a=r||n,d=[],u=new $(t,"xan implode"),l=null,f=[],x=null;for(let g of p){u.consumeWork();let y=JSON.stringify(m.map(v=>String(g[v]??""))),w=g[n],A=w==null?"":String(w);if(y!==l){if(x!==null){let v=j(x);r&&delete v[n],b(v,a,se(f,s,Math.min(t.limits.maxStringLength,t.limits.maxOutputSize),"xan implode")),u.addRow(c.length),d.push(v)}l=y,f=[A],x=g}else f.push(A)}if(x!==null){let g=j(x);r&&delete g[n],b(g,a,se(f,s,Math.min(t.limits.maxStringLength,t.limits.maxOutputSize),"xan implode")),u.addRow(c.length),d.push(g)}return{stdout:C(c,d,t),stderr:"",exitCode:0}}async function je(e,t){let n="",s="",r="",o="",i="inner",p="",h=0;for(let S=0;S<e.length;S++){let N=e[S];N==="--left"?i="left":N==="--right"?i="right":N==="--full"?i="full":(N==="-D"||N==="--default")&&S+1<e.length?p=e[++S]:N.startsWith("-")||(h++,h===1?n=N:h===2?s=N:h===3?r=N:h===4&&(o=N))}if(!n||!s||!r||!o)return{stdout:"",stderr:`xan join: usage: xan join KEY1 FILE1 KEY2 FILE2 [OPTIONS]
|
|
49
|
+
`,exitCode:1};let m=await k([s],t);if(m.error)return m.error;let c=await k([o],t);if(c.error)return c.error;let{headers:a,data:d}=m,{headers:u,data:l}=c;if(!a.includes(n))return{stdout:"",stderr:`xan join: column '${n}' not found in first file
|
|
50
|
+
`,exitCode:1};if(!u.includes(r))return{stdout:"",stderr:`xan join: column '${r}' not found in second file
|
|
51
|
+
`,exitCode:1};let f=new Map;for(let S of l){t.executionScope?.consumeWork(1,"xan join index");let N=String(S[r]??"");f.has(N)||f.set(N,[]),f.get(N)?.push(S)}let x=new Set(a),g=u.filter(S=>!x.has(S));if(W(a.length,g.length,"xan join")>t.limits.maxArrayElements)throw new E(`xan join: output column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");let y=[...a,...g],w=[],A=new $(t,"xan join"),v=new Set,I=0;for(let S of d){t.executionScope?.consumeWork(1,"xan join cardinality");let N=f.get(String(S[n]??""));I=W(I,N?.length??(i==="left"||i==="full"?1:0),"xan join")}if(i==="right"||i==="full"){let S=new Set;for(let N of d)t.executionScope?.throwIfAborted("xan join cardinality"),S.add(String(N[n]??""));for(let N of l)t.executionScope?.throwIfAborted("xan join cardinality"),S.has(String(N[r]??""))||(I=W(I,1,"xan join"))}A.addRows(I,y.length);for(let S of d){t.executionScope?.throwIfAborted("xan join output");let N=String(S[n]??""),P=f.get(N);if(P&&P.length>0){v.add(N);for(let T of P){let _=F();for(let H of a)b(_,H,S[H]);for(let H of g)b(_,H,T[H]);w.push(_)}}else if(i==="left"||i==="full"){let T=F();for(let _ of a)b(T,_,S[_]);for(let _ of g)b(T,_,p);w.push(T)}}if(i==="right"||i==="full")for(let S of l){t.executionScope?.throwIfAborted("xan join output");let N=String(S[r]??"");if(!v.has(N)){let P=F();for(let T of a)b(P,T,u.includes(T)?S[T]:p);for(let T of g)b(P,T,S[T]);w.push(P)}}return{stdout:C(y,w,t),stderr:"",exitCode:0}}async function Ve(e,t){let n="",s="",r=[],o=[];for(let v=0;v<e.length;v++){let I=e[v];(I==="-g"||I==="--groupby")&&v+1<e.length?r=e[++v].split(",").map(S=>S.trim()):I.startsWith("-")||(n?s?o.push(I):s=I:n=I)}if(!n||!s)return{stdout:"",stderr:`xan pivot: usage: xan pivot COLUMN AGG_EXPR [OPTIONS] [FILE]
|
|
52
|
+
`,exitCode:1};let{headers:i,data:p,error:h}=await k(o,t);if(h)return h;if(!i.includes(n))return{stdout:"",stderr:`xan pivot: column '${n}' not found
|
|
53
|
+
`,exitCode:1};let m=s.match(/^(\w+)\((\w+)\)$/);if(!m)return{stdout:"",stderr:`xan pivot: invalid aggregation expression '${s}'
|
|
54
|
+
`,exitCode:1};let[,c,a]=m;r.length===0&&(r=i.filter(v=>v!==n&&v!==a));let d=[],u=new Set;for(let v of p){t.executionScope?.consumeWork(1,"xan pivot values");let I=String(v[n]??"");if(!u.has(I)){if(d.length>=t.limits.maxArrayElements)throw new E(`xan pivot: pivot value limit exceeded (${t.limits.maxArrayElements})`,"array_elements");u.add(I),d.push(I)}}let l=new Map,f=[];for(let v of p){t.executionScope?.consumeWork(1,"xan pivot groups");let I=r.map(_=>String(v[_]??"")),S=JSON.stringify(I),N=String(v[n]??""),P=v[a];l.has(S)||(l.set(S,{keyParts:I,pivots:new Map}),f.push(S));let T=l.get(S);T&&(T.pivots.has(N)||T.pivots.set(N,[]),T.pivots.get(N)?.push(P))}let x=d.find(v=>r.includes(v));if(x!==void 0)return{stdout:"",stderr:`xan pivot: duplicate output header '${x}'
|
|
55
|
+
`,exitCode:1};let g=W(r.length,d.length,"xan pivot");if(g>t.limits.maxArrayElements)throw new E(`xan pivot: output column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");new $(t,"xan pivot").addRows(f.length,g);let w=[...r,...d],A=[];for(let v of f){t.executionScope?.throwIfAborted("xan pivot output");let I=l.get(v);if(!I)continue;let S=F();for(let N=0;N<r.length;N++)b(S,r[N],I.keyParts[N]);for(let N of d){let P=I.pivots.get(N)||[];b(S,N,vt(c,P))}A.push(S)}return{stdout:C(w,A,t),stderr:"",exitCode:0}}function vt(e,t){let n=0,s=0,r=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY;for(let i of t){if(i==null)continue;let p=typeof i=="number"?i:Number.parseFloat(String(i));Number.isNaN(p)||(n++,s+=p,r=Math.min(r,p),o=Math.max(o,p))}switch(e){case"count":return t.length;case"sum":return s;case"mean":case"avg":return n>0?s/n:null;case"min":return n>0?r:null;case"max":return n>0?o:null;case"first":return t.length>0?String(t[0]??""):null;case"last":return t.length>0?String(t[t.length-1]??""):null;default:return null}}async function Ue(e,t){let n="",s=[];for(let m=0;m<e.length;m++){let c=e[m];(c==="-s"||c==="--sort")&&m+1<e.length?n=e[++m]:c.startsWith("-")||s.push(c)}if(s.length<2)return{stdout:"",stderr:`xan merge: usage: xan merge [OPTIONS] FILE1 FILE2 ...
|
|
56
|
+
`,exitCode:1};let r=[],o=null;for(let m of s){let c=await k([m],t);if(c.error)return c.error;if(o===null)o=c.headers;else if(JSON.stringify(o)!==JSON.stringify(c.headers))return{stdout:"",stderr:`xan merge: all files must have the same headers
|
|
57
|
+
`,exitCode:1};r.push({headers:c.headers,data:c.data})}if(!o)return{stdout:"",stderr:"",exitCode:0};let i=[],p=new $(t,"xan merge"),h=r.reduce((m,c)=>W(m,c.data.length,"xan merge"),0);p.addRows(h,o.length);for(let{data:m}of r)for(let c of m)t.executionScope?.throwIfAborted("xan merge output"),i.push(c);if(n){if(!o.includes(n))return{stdout:"",stderr:`xan merge: column '${n}' not found
|
|
58
|
+
`,exitCode:1};i.sort((m,c)=>{let a=m[n],d=c[n],u=typeof a=="number"?a:Number.parseFloat(String(a)),l=typeof d=="number"?d:Number.parseFloat(String(d));return!Number.isNaN(u)&&!Number.isNaN(l)?u-l:String(a??"").localeCompare(String(d??""))})}return{stdout:C(o,i,t),stderr:"",exitCode:0}}async function ze(e,t){let n=e.filter(p=>!p.startsWith("-")),{headers:s,data:r,error:o}=await k(n,t);return o||(r.length===0?{stdout:"",stderr:"",exitCode:0}:(new $(t,"xan behead").addRows(r.length,s.length),{stdout:tt(s,r,t),stderr:"",exitCode:0}))}async function qe(e,t){let n=null,s=null,r=[];for(let d=0;d<e.length;d++){let u=e[d];if(u==="--seed"&&d+1<e.length)s=Number.parseInt(e[++d],10);else if(!u.startsWith("-")){let l=Number.parseInt(u,10);n===null&&!Number.isNaN(l)&&l>0?n=l:r.push(u)}}if(n===null)return{stdout:"",stderr:`xan sample: usage: xan sample <sample-size> [FILE]
|
|
59
|
+
`,exitCode:1};let{headers:o,data:i,error:p}=await k(r,t);if(p)return p;if(i.length<=n)return{stdout:C(o,i,t),stderr:"",exitCode:0};let h=s!==null?s:Date.now(),m=()=>(h=h*1103515245+12345&2147483647,h/2147483647),c=i.map((d,u)=>u);for(let d=c.length-1;d>0;d--){let u=Math.floor(m()*(d+1));[c[d],c[u]]=[c[u],c[d]]}let a=c.slice(0,n).sort((d,u)=>d-u).map(d=>i[d]);return{stdout:C(o,a,t),stderr:"",exitCode:0}}async function Je(e,t){let n=!1,s=[];for(let c=0;c<e.length;c++){let a=e[c];a==="-p"||a==="--pad"?n=!0:a.startsWith("-")||s.push(a)}if(s.length===0)return{stdout:"",stderr:`xan cat: no files specified
|
|
60
|
+
`,exitCode:1};let r=await Ye(t,s,{cmdName:"xan cat",stopOnError:!0});if(r.exitCode!==0)return{stdout:"",stderr:r.stderr,exitCode:r.exitCode};let o=[],i=[],p=new $(t,"xan cat"),h=new Set;for(let{content:c}of r.files){let{headers:a,data:d}=Ze(Y(c),{maxStringLength:Math.min(t.limits.maxInputBytes,t.limits.maxStringLength),maxArrayElements:t.limits.maxArrayElements,maxRows:t.limits.maxCsvRows,maxCells:t.limits.maxCsvCells});p.addRows(d.length,a.length),o.push({headers:a,data:d});for(let u of a)if(!h.has(u)){if(h.add(u),h.size>t.limits.maxArrayElements)throw new E(`xan cat: output column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");i.push(u)}}if(!n){let c=JSON.stringify(o[0].headers);for(let a=1;a<o.length;a++)if(JSON.stringify(o[a].headers)!==c)return{stdout:"",stderr:`xan cat: headers do not match (use -p to pad)
|
|
61
|
+
`,exitCode:1};i=o[0].headers}let m=[];for(let{headers:c,data:a}of o)for(let d of a){let u=F();for(let l of i)b(u,l,c.includes(l)?d[l]:"");m.push(u)}return{stdout:C(i,m,t),stderr:"",exitCode:0}}async function Be(e,t){let n="",s=[],r=!1,o=!1,i=[];for(let u=0;u<e.length;u++){let l=e[u];(l==="-s"||l==="--select")&&u+1<e.length?s=e[++u].split(","):l==="-v"||l==="--invert"?r=!0:l==="-i"||l==="--ignore-case"?o=!0:l==="-r"||l==="--regex"||l.startsWith("-")||(n?i.push(l):n=l)}if(!n)return{stdout:"",stderr:`xan search: no pattern specified
|
|
62
|
+
`,exitCode:1};let{headers:p,data:h,error:m}=await k(i,t);if(m)return m;let c=s.length>0?s:p,a;try{a=Z(n,o?"i":"")}catch{return{stdout:"",stderr:`xan search: invalid regex pattern '${n}'
|
|
63
|
+
`,exitCode:1}}let d=h.filter(u=>{let l=c.some(f=>{let x=u[f];return x!=null&&a.test(String(x))});return r?!l:l});return{stdout:C(p,d,t),stderr:"",exitCode:0}}async function He(e,t){let n="",s=[];for(let l of e)l.startsWith("-")||(n?s.push(l):n=l);if(!n)return{stdout:"",stderr:`xan flatmap: no expression specified
|
|
64
|
+
`,exitCode:1};let{headers:r,data:o,error:i}=await k(s,t);if(i)return i;let p=z(t),m=X(n,p).map(({expr:l,name:f})=>({alias:typeof f=="string"?f:f[0],ast:U(l,!0,p)})),c={limits:t.limits?{maxIterations:t.limits.maxJqIterations,maxStringLength:t.limits.maxStringLength}:void 0};if(W(r.length,m.length,"xan flatmap")>t.limits.maxArrayElements)throw new E(`xan flatmap: output column limit exceeded (${t.limits.maxArrayElements})`,"array_elements");let a=[...r,...m.map(l=>l.alias)],d=[],u=new $(t,"xan flatmap");for(let l of o){let f=[],x=1;for(let g of m){u.consumeWork();let y=V(l,g.ast,c),w=y.length>0&&Array.isArray(y[0])?y[0]:y;if(w.length>t.limits.maxArrayElements)throw new E(`xan flatmap: expression result limit exceeded (${t.limits.maxArrayElements})`,"array_elements");f.push(w),x=Math.max(x,w.length)}for(let g=0;g<x;g++){u.addRow(a.length);let y=j(l);for(let w=0;w<m.length;w++){let A=f[w][g]??null;b(y,m[w].alias,A)}d.push(y)}}return{stdout:C(a,d,t),stderr:"",exitCode:0}}async function Ke(e,t){let{cmdView:n}=await import("./xan-view-FOCYCKZQ.js");return n(e,t)}var dt=new Set(["fuzzy-join","glob","hist","input","parallel","plot","progress","range","scrape","tokenize","union-find"]),St=new Set(["agg","behead","cat","count","dedup","drop","enum","explode","f","filter","fixlengths","flatmap","flatten","fmt","frequency","freq","from","groupby","head","headers","implode","join","map","merge","partition","pivot","rename","reverse","sample","search","select","shuffle","slice","sort","split","stats","tail","to","top","transform","transpose","view",...dt]),pt={name:"xan",summary:"CSV toolkit for data manipulation",usage:"xan <COMMAND> [OPTIONS] [FILE]",description:`xan is a collection of commands for working with CSV data.
|
|
65
|
+
It provides a simple, ergonomic interface for common data operations.
|
|
66
|
+
|
|
67
|
+
COMMANDS:
|
|
68
|
+
Core:
|
|
69
|
+
headers Show column names
|
|
70
|
+
count Count rows
|
|
71
|
+
head Show first N rows
|
|
72
|
+
tail Show last N rows
|
|
73
|
+
slice Extract row range
|
|
74
|
+
reverse Reverse row order
|
|
75
|
+
behead Remove header row
|
|
76
|
+
sample Random sample of rows
|
|
77
|
+
|
|
78
|
+
Column operations:
|
|
79
|
+
select Select columns (supports glob, ranges, negation)
|
|
80
|
+
drop Drop columns
|
|
81
|
+
rename Rename columns
|
|
82
|
+
enum Add row index column
|
|
83
|
+
|
|
84
|
+
Row operations:
|
|
85
|
+
filter Filter rows by expression
|
|
86
|
+
search Filter rows by regex match
|
|
87
|
+
sort Sort rows
|
|
88
|
+
dedup Remove duplicates
|
|
89
|
+
top Get top N by column
|
|
90
|
+
|
|
91
|
+
Transformations:
|
|
92
|
+
map Add computed columns
|
|
93
|
+
transform Modify existing columns
|
|
94
|
+
explode Split column into multiple rows
|
|
95
|
+
implode Combine rows, join column values
|
|
96
|
+
flatmap Map returning multiple rows
|
|
97
|
+
pivot Reshape rows into columns
|
|
98
|
+
transpose Swap rows and columns
|
|
99
|
+
|
|
100
|
+
Aggregation:
|
|
101
|
+
agg Aggregate values
|
|
102
|
+
groupby Group and aggregate
|
|
103
|
+
frequency Count value occurrences
|
|
104
|
+
stats Show column statistics
|
|
105
|
+
|
|
106
|
+
Multi-file:
|
|
107
|
+
cat Concatenate CSV files
|
|
108
|
+
join Join two CSV files on key
|
|
109
|
+
merge Merge sorted CSV files
|
|
110
|
+
split Split into multiple files
|
|
111
|
+
partition Split by column value
|
|
112
|
+
|
|
113
|
+
Data conversion:
|
|
114
|
+
to Convert CSV to other formats (json)
|
|
115
|
+
from Convert other formats to CSV (json)
|
|
116
|
+
shuffle Randomly reorder rows
|
|
117
|
+
fixlengths Fix ragged CSV files
|
|
118
|
+
|
|
119
|
+
Output:
|
|
120
|
+
view Pretty print as table
|
|
121
|
+
flatten Display records vertically (alias: f)
|
|
122
|
+
fmt Format output
|
|
123
|
+
|
|
124
|
+
EXAMPLES:
|
|
125
|
+
xan headers data.csv
|
|
126
|
+
xan count data.csv
|
|
127
|
+
xan head -n 5 data.csv
|
|
128
|
+
xan select name,email data.csv
|
|
129
|
+
xan select 'vec_*' data.csv # glob pattern
|
|
130
|
+
xan select 'a:c' data.csv # column range
|
|
131
|
+
xan filter 'age > 30' data.csv
|
|
132
|
+
xan search -r '^foo' data.csv
|
|
133
|
+
xan sort -N price data.csv
|
|
134
|
+
xan agg 'sum(amount) as total' data.csv
|
|
135
|
+
xan groupby region 'count() as n' data.csv
|
|
136
|
+
xan explode tags data.csv
|
|
137
|
+
xan join id file1.csv id file2.csv
|
|
138
|
+
xan pivot year 'sum(sales)' data.csv`,options:[" --help display this help and exit"]},bt={headers:{name:"xan headers",summary:"Show column names",usage:"xan headers [OPTIONS] [FILE]",description:"Display column names from a CSV file.",options:["-j, --just-names show names only (no index)"]},count:{name:"xan count",summary:"Count rows",usage:"xan count [FILE]",description:"Count the number of data rows (excluding header).",options:[]},filter:{name:"xan filter",summary:"Filter rows by expression",usage:"xan filter [OPTIONS] EXPR [FILE]",description:"Filter CSV rows using moonblade expressions.",options:["-v, --invert invert match","-l, --limit N limit output rows"]},search:{name:"xan search",summary:"Filter rows by regex",usage:"xan search [OPTIONS] PATTERN [FILE]",description:"Filter CSV rows by regex match on columns.",options:["-s, --select COLS search only these columns","-v, --invert invert match","-i, --ignore-case case insensitive"]},select:{name:"xan select",summary:"Select columns",usage:"xan select COLS [FILE]",description:"Select columns by name, index, glob, or range.",options:["Supports: col names, indices (0,1), ranges (a:c), globs (vec_*), negation (!col)"]},explode:{name:"xan explode",summary:"Split column into rows",usage:"xan explode COLUMN [OPTIONS] [FILE]",description:"Split delimited column values into multiple rows.",options:["-s, --separator SEP separator (default: |)","--drop-empty drop empty values","-r, --rename NAME rename column"]},implode:{name:"xan implode",summary:"Combine rows",usage:"xan implode COLUMN [OPTIONS] [FILE]",description:"Combine consecutive rows, joining column values.",options:["-s, --sep SEP separator (default: |)","-r, --rename NAME rename column"]},join:{name:"xan join",summary:"Join CSV files",usage:"xan join KEY1 FILE1 KEY2 FILE2 [OPTIONS]",description:"Join two CSV files on key columns.",options:["--left left outer join","--right right outer join","--full full outer join","-D, --default VAL default for missing"]},pivot:{name:"xan pivot",summary:"Reshape to columns",usage:"xan pivot COLUMN AGG_EXPR [OPTIONS] [FILE]",description:"Turn row values into columns.",options:["-g, --groupby COLS group by columns"]}},Jn={name:"xan",async execute(e,t){if(e.length===0||ne(e))return J(pt);let n=e[0],s=e.slice(1);if(ne(s)){let r=bt[n];return r?J(r):J(pt)}if(dt.has(n))return{stdout:"",stderr:`xan ${n}: not yet implemented
|
|
139
|
+
`,exitCode:1};switch(n){case"headers":return we(s,t);case"count":return ve(s,t);case"head":return Se(s,t);case"tail":return be(s,t);case"slice":return Ce(s,t);case"reverse":return ke(s,t);case"behead":return ze(s,t);case"sample":return qe(s,t);case"select":return he(s,t);case"drop":return ge(s,t);case"rename":return xe(s,t);case"enum":return ye(s,t);case"filter":return $e(s,t);case"search":return Be(s,t);case"sort":return Fe(s,t);case"dedup":return Te(s,t);case"top":return Me(s,t);case"map":return Pe(s,t);case"transform":return De(s,t);case"explode":return _e(s,t);case"implode":return We(s,t);case"flatmap":return He(s,t);case"pivot":return Ve(s,t);case"agg":return pe(s,t);case"groupby":return de(s,t);case"frequency":case"freq":return me(s,t);case"stats":return fe(s,t);case"cat":return Je(s,t);case"join":return je(s,t);case"merge":return Ue(s,t);case"split":return Ae(s,t);case"partition":return Le(s,t);case"to":return Oe(s,t);case"from":return Re(s,t);case"transpose":return Ee(s,t);case"shuffle":return Ie(s,t);case"fixlengths":return Ne(s,t);case"view":return ae(s,t);case"flatten":case"f":return ie(s,t);case"fmt":return Ke(s,t);default:return St.has(n)?{stdout:"",stderr:`xan ${n}: not yet implemented
|
|
140
|
+
`,exitCode:1}:{stdout:"",stderr:`xan: unknown command '${n}'
|
|
141
|
+
Run 'xan --help' for usage.
|
|
142
|
+
`,exitCode:1}}}},Bn={name:"xan",flags:[],stdinType:"text",needsArgs:!0};export{Jn as a,Bn as b};
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{a as w}from"./chunk-WZQNMEQW.js";import{b as m}from"./chunk-AYSZ5MAE.js";import{d as v}from"./chunk-FTET43KM.js";import{e as B}from"./chunk-7IJWBG4I.js";import{l as z}from"./chunk-TVCZIH6M.js";import{a as L}from"./chunk-QIQMJJZ4.js";import{a as F,b as E}from"./chunk-QAYAQNCG.js";import{constants as C,gunzipSync as _,gzipSync as A}from"node:zlib";var D={name:"gzip",summary:"compress or expand files",usage:"gzip [OPTION]... [FILE]...",description:`Compress FILEs (by default, in-place).
|
|
3
|
+
|
|
4
|
+
When no FILE is given, or when FILE is -, read from standard input.
|
|
5
|
+
|
|
6
|
+
With -d, decompress instead.`,options:["-c, --stdout write to standard output, keep original files","-d, --decompress decompress","-f, --force force overwrite of output file","-k, --keep keep (don't delete) input files","-l, --list list compressed file contents","-n, --no-name do not save or restore the original name and timestamp","-N, --name save or restore the original file name and timestamp","-q, --quiet suppress all warnings","-r, --recursive operate recursively on directories","-S, --suffix=SUF use suffix SUF on compressed files (default: .gz)","-t, --test test compressed file integrity","-v, --verbose verbose mode","-1, --fast compress faster","-9, --best compress better"," --help display this help and exit"]},H={name:"gunzip",summary:"decompress files",usage:"gunzip [OPTION]... [FILE]...",description:`Decompress FILEs (by default, in-place).
|
|
7
|
+
|
|
8
|
+
When no FILE is given, or when FILE is -, read from standard input.`,options:["-c, --stdout write to standard output, keep original files","-f, --force force overwrite of output file","-k, --keep keep (don't delete) input files","-l, --list list compressed file contents","-n, --no-name do not restore the original name and timestamp","-N, --name restore the original file name and timestamp","-q, --quiet suppress all warnings","-r, --recursive operate recursively on directories","-S, --suffix=SUF use suffix SUF on compressed files (default: .gz)","-t, --test test compressed file integrity","-v, --verbose verbose mode"," --help display this help and exit"]},R={name:"zcat",summary:"decompress files to stdout",usage:"zcat [OPTION]... [FILE]...",description:`Decompress FILEs to standard output.
|
|
9
|
+
|
|
10
|
+
When no FILE is given, or when FILE is -, read from standard input.`,options:["-f, --force force; read compressed data even from a terminal","-l, --list list compressed file contents","-q, --quiet suppress all warnings","-S, --suffix=SUF use suffix SUF on compressed files (default: .gz)","-t, --test test compressed file integrity","-v, --verbose verbose mode"," --help display this help and exit"]},G={stdout:{short:"c",long:"stdout",type:"boolean"},toStdout:{long:"to-stdout",type:"boolean"},decompress:{short:"d",long:"decompress",type:"boolean"},uncompress:{long:"uncompress",type:"boolean"},force:{short:"f",long:"force",type:"boolean"},keep:{short:"k",long:"keep",type:"boolean"},list:{short:"l",long:"list",type:"boolean"},noName:{short:"n",long:"no-name",type:"boolean"},name:{short:"N",long:"name",type:"boolean"},quiet:{short:"q",long:"quiet",type:"boolean"},recursive:{short:"r",long:"recursive",type:"boolean"},suffix:{short:"S",long:"suffix",type:"string",default:".gz"},test:{short:"t",long:"test",type:"boolean"},verbose:{short:"v",long:"verbose",type:"boolean"},fast:{short:"1",long:"fast",type:"boolean"},level2:{short:"2",type:"boolean"},level3:{short:"3",type:"boolean"},level4:{short:"4",type:"boolean"},level5:{short:"5",type:"boolean"},level6:{short:"6",type:"boolean"},level7:{short:"7",type:"boolean"},level8:{short:"8",type:"boolean"},best:{short:"9",long:"best",type:"boolean"}};function I(e){return e.best?C.Z_BEST_COMPRESSION:e.level8?8:e.level7?7:e.level6?6:e.level5?5:e.level4?4:e.level3?3:e.level2?2:e.fast?C.Z_BEST_SPEED:C.Z_DEFAULT_COMPRESSION}function k(e){if(e.length<10)return{originalName:null,mtime:null,headerSize:0};if(e[0]!==31||e[1]!==139)return{originalName:null,mtime:null,headerSize:0};let t=e[3],o=e[4]|e[5]<<8|e[6]<<16|e[7]<<24,r=10;if(t&4){if(r+2>e.length)return{originalName:null,mtime:null,headerSize:0};let n=e[r]|e[r+1]<<8;r+=2+n}let i=null;if(t&8){let n=r;for(;r<e.length&&e[r]!==0;)r++;r<e.length&&(i=new TextDecoder().decode(e.slice(n,r)),r++)}if(t&16){for(;r<e.length&&e[r]!==0;)r++;r++}return t&2&&(r+=2),{originalName:i,mtime:o>0?new Date(o*1e3):null,headerSize:r}}function Z(e){return e.length===0||e==="."||e===".."||e.includes("/")||e.includes("\\")||/[\0-\x1f\x7f]/.test(e)?null:e}function q(e){if(e.length<4)return 0;let t=e.length;return e[t-4]|e[t-3]<<8|e[t-2]<<16|e[t-1]<<24}function x(e){return e.length>=2&&e[0]===31&&e[1]===139}function b(e){return Buffer.from(e).toString("latin1")}function P(e){return e.limits.maxOutputSize}function $(e,t,o,r,i){if(t<=0)throw new Error("decompressed data exceeds limit (0 bytes)");let n=new w({maxInputBytes:o,maxOutputBytes:t,maxExpansionRatio:1e4,signal:r,label:"gzip"});if(n.acceptInput(e.length),q(e)>t)throw new Error(`decompressed data exceeds limit (${t} bytes)`);let a;try{let u=Math.min(t,Math.floor((i?.executionScope?.remainingLiveBytes??t*2)/2));if(u<=0)throw new Error("gzip: live byte limit exceeded");a=i?.executionScope?.reserveBytes("gzip output",u*2,"gzip");let p=_(e,{maxOutputLength:u});return n.acceptOutput(p.length),{data:p,lease:a}}catch(u){throw a?.release(),u}}function O(e,t,o){let r=new w({maxInputBytes:o.limits.maxInputBytes,maxOutputBytes:o.limits.maxOutputSize,signal:o.signal,label:"gzip"});r.acceptInput(e.length);let i;try{let n=Math.min(o.limits.maxOutputSize,Math.floor((o.executionScope?.remainingLiveBytes??o.limits.maxOutputSize*2)/2));if(n<=0)throw new Error("gzip: live byte limit exceeded");i=o.executionScope?.reserveBytes("gzip output",n*2,"gzip");let s=A(e,{level:t,maxOutputLength:n});return r.acceptOutput(s.length),{data:s,lease:i}}catch(n){throw i?.release(),n}}async function T(e,t,o){let r=await e.fs.stat(t);if(r.size>e.limits.maxInputBytes)throw new z(`input size limit exceeded (${e.limits.maxInputBytes} bytes)`,"string_length");let i=e.executionScope?.reserveBytes("gzip input",r.size,o);try{let n=await e.fs.readFileBuffer(t);if(n.byteLength>r.size)throw new z("gzip: input grew while being read","string_length");return e.executionScope?.consumeInput(n.byteLength,o),{data:n,lease:i}}catch(n){throw i?.release(),n}}async function W(e,t,o){if(t!=="-"&&t!=="")return T(e,e.fs.resolvePath(e.cwd,t),o);let r=e.stdin,i=e.executionScope?.reserveBytes("gzip input",r.length,o);try{return{data:Uint8Array.from(r,n=>n.charCodeAt(0)),lease:i}}catch(n){throw i?.release(),n}}async function M(e,t,o,r,i,n){let s=o.suffix,a,u,p,g=P(e);if(t==="-"||t===""){let l=e.stdin,d=e.executionScope?.reserveBytes("gzip input",l.length,r),f;try{if(p=Uint8Array.from(l,c=>c.charCodeAt(0)),i){if(!x(p))return o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: stdin: not in gzip format
|
|
11
|
+
`,exitCode:1};try{let c=$(p,g,e.limits.maxInputBytes,e.signal,e);return f=c.lease,{stdout:b(c.data),stderr:"",exitCode:0}}catch(c){m(c);let U=c instanceof Error?c.message:"unknown error";return{stdout:"",stderr:`${r}: stdin: ${U}
|
|
12
|
+
`,exitCode:1}}}else{let c=O(p,I(o),e);return f=c.lease,{stdout:b(c.data),stderr:"",exitCode:0}}}finally{f?.release(),d?.release()}}a=e.fs.resolvePath(e.cwd,t);try{let l=await e.fs.stat(a);if(l.size>e.limits.maxInputBytes)return{stdout:"",stderr:`${r}: ${t}: input size limit exceeded (${e.limits.maxInputBytes} bytes)
|
|
13
|
+
`,exitCode:1};if(l.isDirectory)return o.recursive?await K(e,a,o,r,i,n):o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: ${t}: is a directory -- ignored
|
|
14
|
+
`,exitCode:1}}catch{return{stdout:"",stderr:`${r}: ${t}: No such file or directory
|
|
15
|
+
`,exitCode:1}}let y,h;try{let l=await T(e,a,r);p=l.data,y=l.lease}catch(l){return m(l),{stdout:"",stderr:`${r}: ${t}: No such file or directory
|
|
16
|
+
`,exitCode:1}}try{if(i){if(!t.endsWith(s))return o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: ${t}: unknown suffix -- ignored
|
|
17
|
+
`,exitCode:1};if(!x(p))return o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: ${t}: not in gzip format
|
|
18
|
+
`,exitCode:1};let l;try{let d=$(p,g,e.limits.maxInputBytes,e.signal,e);l=d.data,h=d.lease}catch(d){m(d);let f=d instanceof Error?d.message:"unknown error";return{stdout:"",stderr:`${r}: ${t}: ${f}
|
|
19
|
+
`,exitCode:1}}if(n)return{stdout:b(l),stderr:"",exitCode:0};if(o.name){let d=k(p),f=d.originalName?Z(d.originalName):null;f?u=e.fs.resolvePath(e.cwd,f):u=a.slice(0,-s.length)}else u=a.slice(0,-s.length);if(!o.force)try{return await e.fs.stat(u),{stdout:"",stderr:`${r}: ${u} already exists; not overwritten
|
|
20
|
+
`,exitCode:1}}catch{}if(await e.fs.writeFile(u,l),!o.keep&&!n&&await e.fs.rm(a),o.verbose){let d=p.length>0?((1-p.length/l.length)*100).toFixed(1):"0.0";return{stdout:"",stderr:`${t}: ${d}% -- replaced with ${u.split("/").pop()}
|
|
21
|
+
`,exitCode:0}}return{stdout:"",stderr:"",exitCode:0}}else{if(t.endsWith(s))return o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: ${t} already has ${s} suffix -- unchanged
|
|
22
|
+
`,exitCode:1};let l=I(o),d;try{let f=O(p,l,e);d=f.data,h=f.lease}catch(f){m(f);let c=f instanceof Error?f.message:"unknown error";return{stdout:"",stderr:`${r}: ${t}: ${c}
|
|
23
|
+
`,exitCode:1}}if(n)return{stdout:b(d),stderr:"",exitCode:0};if(u=a+s,!o.force)try{return await e.fs.stat(u),{stdout:"",stderr:`${r}: ${u} already exists; not overwritten
|
|
24
|
+
`,exitCode:1}}catch{}if(await e.fs.writeFile(u,d),!o.keep&&!n&&await e.fs.rm(a),o.verbose){let f=p.length>0?((1-d.length/p.length)*100).toFixed(1):"0.0";return{stdout:"",stderr:`${t}: ${f}% -- replaced with ${u.split("/").pop()}
|
|
25
|
+
`,exitCode:0}}return{stdout:"",stderr:"",exitCode:0}}}finally{h?.release(),y?.release()}}async function K(e,t,o,r,i,n){let s=Math.min(e.limits.maxOutputSize,e.limits.maxStringLength),a=new v(s,r),u=new v(s,r),p=0;return await B({fs:e.fs,root:t,symlinks:"never",limits:e.limits,signal:e.signal,executionScope:e.executionScope,site:r},async g=>{if(g.depth===0||g.phase!=="enter"||!g.stat.isFile)return;let y=o.suffix;if(i&&!g.path.endsWith(y)||!i&&g.path.endsWith(y))return;let h=g.path.startsWith(`${e.cwd}/`)?g.path.slice(e.cwd.length+1):g.path,l=await M(e,h,o,r,i,n);a.append(l.stdout),u.append(l.stderr),l.exitCode!==0&&(p=l.exitCode)}),{stdout:a.build(),stderr:u.build(),exitCode:p}}async function j(e,t,o,r){let i,n;try{let s=await W(e,t,r);i=s.data,n=s.lease}catch(s){return m(s),{stdout:"",stderr:`${r}: ${t}: No such file or directory
|
|
26
|
+
`,exitCode:1}}try{if(!x(i))return o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: ${t}: not in gzip format
|
|
27
|
+
`,exitCode:1};let s=i.length,a=q(i),u=a>0?((1-s/a)*100).toFixed(1):"0.0",g=k(i).originalName||(t==="-"?"":t.replace(/\.gz$/,""));return{stdout:`${s.toString().padStart(10)} ${a.toString().padStart(10)} ${u.padStart(5)}% ${g}
|
|
28
|
+
`,stderr:"",exitCode:0}}finally{n?.release()}}async function J(e,t,o,r){let i,n;try{let s=await W(e,t,r);i=s.data,n=s.lease}catch(s){return m(s),{stdout:"",stderr:`${r}: ${t}: No such file or directory
|
|
29
|
+
`,exitCode:1}}try{if(!x(i))return o.quiet?{stdout:"",stderr:"",exitCode:1}:{stdout:"",stderr:`${r}: ${t}: not in gzip format
|
|
30
|
+
`,exitCode:1};try{return $(i,P(e),e.limits.maxInputBytes,e.signal,e).lease?.release(),o.verbose?{stdout:"",stderr:`${t}: OK
|
|
31
|
+
`,exitCode:0}:{stdout:"",stderr:"",exitCode:0}}catch(s){m(s);let a=s instanceof Error?s.message:"invalid";return{stdout:"",stderr:`${r}: ${t}: ${a}
|
|
32
|
+
`,exitCode:1}}}finally{n?.release()}}async function S(e,t,o){let r=o==="zcat"?R:o==="gunzip"?H:D;if(E(e))return F(r);let i=L(o,e,G);if(!i.ok)return i.error.stderr.includes("unrecognized option"),i.error;let n=i.result.flags,s=i.result.positional,a=o==="gunzip"||o==="zcat"||n.decompress||n.uncompress,u=o==="zcat"||n.stdout||n.toStdout;if(n.list){s.length===0&&(s=["-"]);let h=` compressed uncompressed ratio uncompressed_name
|
|
33
|
+
`,l="",d=0;for(let f of s){let c=await j(t,f,n,o);h+=c.stdout,l+=c.stderr,c.exitCode!==0&&(d=c.exitCode)}return{stdout:h,stderr:l,exitCode:d}}if(n.test){s.length===0&&(s=["-"]);let h="",l="",d=0;for(let f of s){let c=await J(t,f,n,o);h+=c.stdout,l+=c.stderr,c.exitCode!==0&&(d=c.exitCode)}return{stdout:h,stderr:l,exitCode:d}}s.length===0&&(s=["-"]);let p="",g="",y=0;for(let h of s){let l=await M(t,h,n,o,a,u);p+=l.stdout,g+=l.stderr,l.exitCode!==0&&(y=l.exitCode)}return{stdout:p,stderr:g,exitCode:y}}var se={name:"gzip",async execute(e,t){return{...await S(e,t,"gzip"),stdoutEncoding:"binary"}}},ie={name:"gunzip",async execute(e,t){return{...await S(e,t,"gunzip"),stdoutEncoding:"binary"}}},le={name:"zcat",async execute(e,t){return{...await S(e,t,"zcat"),stdoutEncoding:"binary"}}},ue={name:"gzip",flags:[{flag:"-c",type:"boolean"},{flag:"-d",type:"boolean"},{flag:"-f",type:"boolean"},{flag:"-k",type:"boolean"},{flag:"-l",type:"boolean"},{flag:"-n",type:"boolean"},{flag:"-q",type:"boolean"},{flag:"-r",type:"boolean"},{flag:"-t",type:"boolean"},{flag:"-v",type:"boolean"},{flag:"-1",type:"boolean"},{flag:"-9",type:"boolean"}],stdinType:"binary",needsFiles:!0},ae={name:"gunzip",flags:[{flag:"-c",type:"boolean"},{flag:"-f",type:"boolean"},{flag:"-k",type:"boolean"},{flag:"-q",type:"boolean"},{flag:"-v",type:"boolean"}],stdinType:"binary",needsFiles:!0},de={name:"zcat",flags:[{flag:"-f",type:"boolean"},{flag:"-q",type:"boolean"},{flag:"-v",type:"boolean"}],stdinType:"binary",needsFiles:!0};export{se as a,ie as b,le as c,ue as d,ae as e,de as f};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{b as E}from"./chunk-AYSZ5MAE.js";import{d as T}from"./chunk-FTET43KM.js";import{l as m}from"./chunk-TVCZIH6M.js";import{a as u,d as I}from"./chunk-GN6CQ3J4.js";import{a as S}from"./chunk-QIQMJJZ4.js";import{a as B,b as F}from"./chunk-QAYAQNCG.js";var $={name:"paste",summary:"merge lines of files",usage:"paste [OPTION]... [FILE]...",description:["Write lines consisting of the sequentially corresponding lines from","each FILE, separated by TABs, to standard output.","","With no FILE, or when FILE is -, read standard input."],options:["-d, --delimiters=LIST reuse characters from LIST instead of TABs","-s, --serial paste one file at a time instead of in parallel"," --help display this help and exit"],examples:["paste file1 file2 Merge file1 and file2 side by side","paste -d, file1 file2 Use comma as delimiter","paste -s file1 Paste all lines of file1 on one line","paste - - < file Paste pairs of lines from file"]},C={delimiter:{short:"d",long:"delimiters",type:"string",default:" "},serial:{short:"s",long:"serial",type:"boolean"}},M={name:"paste",async execute(n,e){if(F(n))return B($);let l=S("paste",n,C);if(!l.ok)return l.error;let r=l.result.flags.delimiter,h=l.result.flags.serial,p=l.result.positional;if(p.length>e.limits.maxArrayElements)throw new m(`paste: file operand limit exceeded (${e.limits.maxArrayElements})`,"array_elements");if(u(r)>e.limits.maxStringLength)throw new m(`paste: delimiter size limit exceeded (${e.limits.maxStringLength} bytes)`,"string_length");if(p.length===0)return{stdout:"",stderr:`usage: paste [-s] [-d delimiters] file ...
|
|
3
|
+
`,exitCode:1};let g=I(e.stdin),o=g?g.split(`
|
|
4
|
+
`):[""];o.length>0&&o[o.length-1]===""&&o.pop();let A=p.filter(t=>t==="-").length,f=[],y=0,x=u(g),L=t=>{if(t.length>e.limits.maxArrayElements-y)throw new m(`paste: line limit exceeded (${e.limits.maxArrayElements})`,"array_elements");y+=t.length,e.executionScope?.consumeWork(t.length,"paste lines")},w=0;for(let t of p)if(t==="-"){let i=[];for(let s=w;s<o.length;s+=A)i.push(o[s]);L(i),f.push(i),w++}else{let i=e.fs.resolvePath(e.cwd,t);try{let s=await e.fs.readFile(i),d=u(s);if(d>e.limits.maxInputBytes-x)throw new m(`paste: aggregate input size limit exceeded (${e.limits.maxInputBytes} bytes)`,"string_length");x+=d,e.executionScope?.consumeInput(d,"paste");let a=s.split(`
|
|
5
|
+
`);a.length>0&&a[a.length-1]===""&&a.pop(),L(a),f.push(a)}catch(s){return E(s),{stdout:"",stderr:`paste: ${t}: No such file or directory
|
|
6
|
+
`,exitCode:1}}}let c=new T(Math.min(e.limits.maxOutputSize,e.limits.maxStringLength),"paste");if(h)for(let t of f)t&&c.append(`${b(t,r)}
|
|
7
|
+
`);else{let t=0;for(let i of f)t=Math.max(t,i?.length??0);for(let i=0;i<t;i++){let s=[];for(let d of f)s.push(d?.[i]??"");c.append(`${b(s,r)}
|
|
8
|
+
`)}}return{stdout:c.build(),stderr:"",exitCode:0}}};function b(n,e){if(n.length===0)return"";if(n.length===1)return n[0];if(e.length===0)return n.join("");let l=n[0];for(let r=1;r<n.length;r++){let h=(r-1)%e.length;l+=e[h]+n[r]}return l}var O={name:"paste",flags:[{flag:"-d",type:"value",valueHint:"delimiter"},{flag:"-s",type:"boolean"}],stdinType:"text",needsFiles:!0};export{M as a,O as b};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{a as we,b as Oe}from"./chunk-NCUTH6QL.js";var xe=Oe((le,pe)=>{(function(he,w){typeof define=="function"&&define.amd?define([],w):typeof pe=="object"&&typeof le<"u"?pe.exports=w():he.Papa=w()})(le,function he(){"use strict";var w=(function(){return typeof self<"u"?self:typeof window<"u"?window:typeof w<"u"?w:{}})();function _e(){var t=w.URL||w.webkitURL||null,e=he.toString();return f.BLOB_URL||(f.BLOB_URL=t.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",e,")();"],{type:"text/javascript"})))}var Y=!w.document&&!!w.postMessage,ue=w.IS_PAPA_WORKER||!1,ne={},Re=0,f={};f.parse=ge,f.unparse=Ee,f.RECORD_SEP="",f.UNIT_SEP="",f.BYTE_ORDER_MARK="\uFEFF",f.BAD_DELIMITERS=["\r",`
|
|
3
|
+
`,'"',f.BYTE_ORDER_MARK],f.WORKERS_SUPPORTED=!Y&&!!w.Worker,f.NODE_STREAM_INPUT=1,f.LocalChunkSize=1024*1024*10,f.RemoteChunkSize=1024*1024*5,f.DefaultDelimiter=",",f.Parser=fe,f.ParserHandle=ce,f.NetworkStreamer=V,f.FileStreamer=G,f.StringStreamer=Q,f.ReadableStreamStreamer=ee,typeof PAPA_BROWSER_CONTEXT>"u"&&(f.DuplexStreamStreamer=te),ue&&(w.onmessage=be);function oe(t){return t.charCodeAt(0)===65279?t.slice(1):t}function ge(t,e){e=e||{};var r=e.dynamicTyping||!1;if(g(r)&&(e.dynamicTypingFunction=r,r={}),e.dynamicTyping=r,e.transform=g(e.transform)?e.transform:!1,e.worker&&f.WORKERS_SUPPORTED){var s=Ce();s.userStep=e.step,s.userChunk=e.chunk,s.userComplete=e.complete,s.userError=e.error,e.step=g(e.step),e.chunk=g(e.chunk),e.complete=g(e.complete),e.error=g(e.error),delete e.worker,s.postMessage({input:t,config:e,workerId:s.id});return}var i=null;return t===f.NODE_STREAM_INPUT&&typeof PAPA_BROWSER_CONTEXT>"u"?(i=new te(e),i.getStream()):(typeof t=="string"?(t=oe(t),e.download?i=new V(e):i=new Q(e)):t.readable===!0&&g(t.read)&&g(t.on)?i=new ee(e):(w.File&&t instanceof File||t instanceof Object)&&(i=new G(e)),i.stream(t))}function Ee(t,e){var r=!1,s=!0,i=",",c=`\r
|
|
4
|
+
`,m='"',h=m+m,_=!1,x=null,S=!1;P();var d=new RegExp(re(m),"g");if(typeof t=="string"&&(t=JSON.parse(t)),Array.isArray(t)){if(!t.length||Array.isArray(t[0]))return u(null,t,_);if(typeof t[0]=="object")return u(x||Object.keys(t[0]),t,_)}else if(typeof t=="object")return typeof t.data=="string"&&(t.data=JSON.parse(t.data)),Array.isArray(t.data)&&(t.fields||(t.fields=t.meta&&t.meta.fields||x),t.fields||(t.fields=Array.isArray(t.data[0])?t.fields:typeof t.data[0]=="object"?Object.keys(t.data[0]):[]),!Array.isArray(t.data[0])&&typeof t.data[0]!="object"&&(t.data=[t.data])),u(t.fields||[],t.data||[],_);throw new Error("Unable to serialize unrecognized input");function P(){if(typeof e=="object"){if(typeof e.delimiter=="string"&&!f.BAD_DELIMITERS.filter(function(y){return e.delimiter.indexOf(y)!==-1}).length&&(i=e.delimiter),(typeof e.quotes=="boolean"||typeof e.quotes=="function"||Array.isArray(e.quotes))&&(r=e.quotes),(typeof e.skipEmptyLines=="boolean"||typeof e.skipEmptyLines=="string")&&(_=e.skipEmptyLines),typeof e.newline=="string"&&(c=e.newline),typeof e.quoteChar=="string"&&(m=e.quoteChar,h=m+m),typeof e.header=="boolean"&&(s=e.header),Array.isArray(e.columns)){if(e.columns.length===0)throw new Error("Option columns is empty");x=e.columns}e.escapeChar!==void 0&&(h=e.escapeChar+m),e.escapeFormulae instanceof RegExp?S=e.escapeFormulae:typeof e.escapeFormulae=="boolean"&&e.escapeFormulae&&(S=/^[=+\-@\t\r].*$/)}}function u(y,v,C){var A="";typeof y=="string"&&(y=JSON.parse(y)),typeof v=="string"&&(v=JSON.parse(v));var b=Array.isArray(y)&&y.length>0,D=!Array.isArray(v[0]);if(b&&s){for(var q=0;q<y.length;q++)q>0&&(A+=i),A+=l(y[q],q);v.length>0&&(A+=c)}for(var k=0;k<v.length;k++){var N=b?y.length:v[k].length,W=!1,a=b?Object.keys(v[k]).length===0:v[k].length===0;if(C&&!b&&(W=C==="greedy"?v[k].join("").trim()==="":v[k].length===1&&v[k][0].length===0),C==="greedy"&&b){for(var o=[],p=0;p<N;p++){var E=D?y[p]:p;o.push(v[k][E])}W=o.join("").trim()===""}if(!W){for(var n=0;n<N;n++){n>0&&!a&&(A+=i);var R=b&&D?y[n]:n;A+=l(v[k][R],n)}k<v.length-1&&(!C||N>0&&!a)&&(A+=c)}}return A}function l(y,v){if(typeof y>"u"||y===null)return"";if(y.constructor===Date)return isNaN(y.getTime())?"":y.toISOString();var C=!1;S&&typeof y=="string"&&S.test(y)&&(y="'"+y,C=!0);var A=y.toString(),b=A.replace(d,h);return C=C||r===!0||typeof r=="function"&&r(y,v)||Array.isArray(r)&&r[v]||J(b,f.BAD_DELIMITERS)||b.indexOf(i)>-1||A.indexOf(m)>-1||b.charAt(0)===" "||b.charAt(b.length-1)===" ",C?m+b+m:b}function J(y,v){for(var C=0;C<v.length;C++)if(y.indexOf(v[C])>-1)return!0;return!1}}function z(t){this._handle=null,this._finished=!1,this._completed=!1,this._halted=!1,this._input=null,this._baseIndex=0,this._partialLine="",this._rowCount=0,this._start=0,this._nextChunk=null,this.isFirstChunk=!0,this._completeResults={data:[],errors:[],meta:{}},e.call(this,t),this.parseChunk=function(r,s){let i=parseInt(this._config.skipFirstNLines)||0;if(this.isFirstChunk&&i>0){let S=this._config.newline;if(!S){let P=this._config.quoteChar||'"';S=this._handle.guessLineEndings(r,P)}r=[...r.split(S).slice(i)].join(S)}if(this.isFirstChunk&&g(this._config.beforeFirstChunk)){var c=this._config.beforeFirstChunk(r);c!==void 0&&(r=c)}this.isFirstChunk=!1,this._halted=!1;var m=this._partialLine+r;this._partialLine="";var h=this._handle.parse(m,this._baseIndex,!this._finished);if(this._handle.paused()||this._handle.aborted()){this._halted=!0;return}var _=h.meta.cursor;this._finished||(this._partialLine=m.substring(_-this._baseIndex),this._baseIndex=_),h&&h.data&&(this._rowCount+=h.data.length);var x=this._finished||this._config.preview&&this._rowCount>=this._config.preview;if(ue)w.postMessage({results:h,workerId:f.WORKER_ID,finished:x});else if(g(this._config.chunk)&&!s){if(this._config.chunk(h,this._handle),this._handle.paused()||this._handle.aborted()){this._halted=!0;return}h=void 0,this._completeResults=void 0}return!this._config.step&&!this._config.chunk&&(this._completeResults.data=this._completeResults.data.concat(h.data),this._completeResults.errors=this._completeResults.errors.concat(h.errors),this._completeResults.meta=h.meta),!this._completed&&x&&g(this._config.complete)&&(!h||!h.meta.aborted)&&(this._config.complete(this._completeResults,this._input),this._completed=!0),!x&&(!h||!h.meta.paused)&&this._nextChunk(),h},this._sendError=function(r){g(this._config.error)?this._config.error(r):ue&&this._config.error&&w.postMessage({workerId:f.WORKER_ID,error:r,finished:!1})};function e(r){var s=ae(r);s.chunkSize=parseInt(s.chunkSize),!r.step&&!r.chunk&&(s.chunkSize=null),this._handle=new ce(s),this._handle.streamer=this,this._config=s}}function V(t){t=t||{},t.chunkSize||(t.chunkSize=f.RemoteChunkSize),z.call(this,t);var e;Y?this._nextChunk=function(){this._readChunk(),this._chunkLoaded()}:this._nextChunk=function(){this._readChunk()},this.stream=function(s){this._input=s,this._nextChunk()},this._readChunk=function(){if(this._finished){this._chunkLoaded();return}if(e=new XMLHttpRequest,this._config.withCredentials&&(e.withCredentials=this._config.withCredentials),Y||(e.onload=L(this._chunkLoaded,this),e.onerror=L(this._chunkError,this)),e.open(this._config.downloadRequestBody?"POST":"GET",this._input,!Y),this._config.downloadRequestHeaders){var s=this._config.downloadRequestHeaders;for(var i in s)e.setRequestHeader(i,s[i])}if(this._config.chunkSize){var c=this._start+this._config.chunkSize-1;e.setRequestHeader("Range","bytes="+this._start+"-"+c)}try{e.send(this._config.downloadRequestBody)}catch(m){this._chunkError(m.message)}Y&&e.status===0&&this._chunkError()},this._chunkLoaded=function(){if(e.readyState===4){if(e.status<200||e.status>=400){this._chunkError();return}this._start+=this._config.chunkSize?this._config.chunkSize:e.responseText.length,this._finished=!this._config.chunkSize||this._start>=r(e),this.parseChunk(e.responseText)}},this._chunkError=function(s){var i=e.statusText||s;this._sendError(new Error(i))};function r(s){var i=s.getResponseHeader("Content-Range");return i===null?-1:parseInt(i.substring(i.lastIndexOf("/")+1))}}V.prototype=Object.create(z.prototype),V.prototype.constructor=V;function G(t){t=t||{},t.chunkSize||(t.chunkSize=f.LocalChunkSize),z.call(this,t);var e,r,s=typeof FileReader<"u";this.stream=function(i){this._input=i,r=i.slice||i.webkitSlice||i.mozSlice,s?(e=new FileReader,e.onload=L(this._chunkLoaded,this),e.onerror=L(this._chunkError,this)):e=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){!this._finished&&(!this._config.preview||this._rowCount<this._config.preview)&&this._readChunk()},this._readChunk=function(){var i=this._input;if(this._config.chunkSize){var c=Math.min(this._start+this._config.chunkSize,this._input.size);i=r.call(i,this._start,c)}var m=e.readAsText(i,this._config.encoding);s||this._chunkLoaded({target:{result:m}})},this._chunkLoaded=function(i){this._start+=this._config.chunkSize,this._finished=!this._config.chunkSize||this._start>=this._input.size,this.parseChunk(i.target.result)},this._chunkError=function(){this._sendError(e.error)}}G.prototype=Object.create(z.prototype),G.prototype.constructor=G;function Q(t){t=t||{},z.call(this,t);var e;this.stream=function(r){return e=r,this._nextChunk()},this._nextChunk=function(){if(!this._finished){var r=this._config.chunkSize,s;return r?(s=e.substring(0,r),e=e.substring(r)):(s=e,e=""),this._finished=!e,this.parseChunk(s)}}}Q.prototype=Object.create(Q.prototype),Q.prototype.constructor=Q;function ee(t){t=t||{},z.call(this,t);var e=[],r=!0,s=!1;this.pause=function(){z.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){z.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(i){this._input=i,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){s&&e.length===1&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),e.length?this.parseChunk(e.shift()):r=!0},this._streamData=L(function(i){try{e.push(typeof i=="string"?i:i.toString(this._config.encoding)),r&&(r=!1,this._checkIsFinished(),this.parseChunk(e.shift()))}catch(c){this._streamError(c)}},this),this._streamError=L(function(i){this._streamCleanUp(),this._sendError(i)},this),this._streamEnd=L(function(){this._streamCleanUp(),s=!0,this._streamData("")},this),this._streamCleanUp=L(function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)},this)}ee.prototype=Object.create(z.prototype),ee.prototype.constructor=ee;function te(t){var e=we("stream").Duplex,r=ae(t),s=!0,i=!1,c=[],m=null;this._onCsvData=function(h){var _=h.data;!m.push(_)&&!this._handle.paused()&&this._handle.pause()},this._onCsvComplete=function(){m.push(null)},r.step=L(this._onCsvData,this),r.complete=L(this._onCsvComplete,this),z.call(this,r),this._nextChunk=function(){i&&c.length===1&&(this._finished=!0),c.length?c.shift()():s=!0},this._addToParseQueue=function(h,_){c.push(L(function(){if(this.parseChunk(typeof h=="string"?h:h.toString(r.encoding)),g(_))return _()},this)),s&&(s=!1,this._nextChunk())},this._onRead=function(){this._handle.paused()&&this._handle.resume()},this._onWrite=function(h,_,x){this._addToParseQueue(h,x)},this._onWriteComplete=function(){i=!0,this._addToParseQueue("")},this.getStream=function(){return m},m=new e({readableObjectMode:!0,decodeStrings:!1,read:L(this._onRead,this),write:L(this._onWrite,this)}),m.once("finish",L(this._onWriteComplete,this))}typeof PAPA_BROWSER_CONTEXT>"u"&&(te.prototype=Object.create(z.prototype),te.prototype.constructor=te);function ce(t){var e=Math.pow(2,53),r=-e,s=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,i=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,c=this,m=0,h=0,_,x,S=!1,d=!1,P,u=[],l={data:[],errors:[],meta:{}};if(g(t.step)){var J=t.step;t.step=function(a){if(l=a,A())C();else{if(C(),l.data.length===0)return;m+=a.data.length,t.preview&&m>t.preview?x.abort():(l.data=l.data[0],J(l,c))}}}this.parse=function(a,o,p){var E=t.quoteChar||'"';if(t.newline||(t.newline=this.guessLineEndings(a,E)),P=!1,t.delimiter)g(t.delimiter)&&(t.delimiter=t.delimiter(a),l.meta.delimiter=t.delimiter);else{var n=N(a,t.newline,t.skipEmptyLines,t.comments,t.delimitersToGuess);n.successful?t.delimiter=n.bestDelimiter:(P=!0,t.delimiter=f.DefaultDelimiter),l.meta.delimiter=t.delimiter}var R=ae(t);return t.preview&&t.header&&R.preview++,_=a,x=new fe(R),l=x.parse(_,o,p),C(),S?{meta:{paused:!0}}:l||{meta:{paused:!1}}},this.paused=function(){return S},this.pause=function(){S=!0,x.abort(),_=g(t.chunk)?"":_.substring(x.getCharIndex())},this.resume=function(){c.streamer._halted?(S=!1,c.streamer.parseChunk(_,!0)):setTimeout(c.resume,3)},this.aborted=function(){return d},this.abort=function(){d=!0,x.abort(),l.meta.aborted=!0,g(t.complete)&&t.complete(l),_=""},this.guessLineEndings=function(a,o){a=a.substring(0,1024*1024);var p=new RegExp(re(o)+"([^]*?)"+re(o),"gm");a=a.replace(p,"");var E=a.split("\r"),n=a.split(`
|
|
5
|
+
`),R=n.length>1&&n[0].length<E[0].length;if(E.length===1||R)return`
|
|
6
|
+
`;for(var T=0,O=0;O<E.length;O++)E[O][0]===`
|
|
7
|
+
`&&T++;return T>=E.length/2?`\r
|
|
8
|
+
`:"\r"};function y(a){return t.skipEmptyLines==="greedy"?a.join("").trim()==="":a.length===1&&a[0].length===0}function v(a){if(s.test(a)){var o=parseFloat(a);if(o>r&&o<e)return!0}return!1}function C(){return l&&P&&(W("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+f.DefaultDelimiter+"'"),P=!1),t.skipEmptyLines&&(l.data=l.data.filter(function(a){return!y(a)})),A()&&b(),k()}function A(){return t.header&&u.length===0}function b(){if(!l)return;function a(p,E){p=oe(p),g(t.transformHeader)&&(p=t.transformHeader(p,E)),u.push(p)}if(Array.isArray(l.data[0])){for(var o=0;A()&&o<l.data.length;o++)l.data[o].forEach(a);l.data.splice(0,1)}else l.data.forEach(a)}function D(a){return t.dynamicTypingFunction&&t.dynamicTyping[a]===void 0&&(t.dynamicTyping[a]=t.dynamicTypingFunction(a)),(t.dynamicTyping[a]||t.dynamicTyping)===!0}function q(a,o){return D(a)?o==="true"||o==="TRUE"?!0:o==="false"||o==="FALSE"?!1:v(o)?parseFloat(o):i.test(o)?new Date(o):o===""?null:o:o}function k(){if(!l||!t.header&&!t.dynamicTyping&&!t.transform)return l;function a(p,E){var n=t.header?{}:[],R;for(R=0;R<p.length;R++){var T=R,O=p[R];t.header&&(T=R>=u.length?"__parsed_extra":u[R]),t.transform&&(O=t.transform(O,T)),O=q(T,O),T==="__parsed_extra"?(n[T]=n[T]||[],n[T].push(O)):n[T]=O}return t.header&&(R>u.length?W("FieldMismatch","TooManyFields","Too many fields: expected "+u.length+" fields but parsed "+R,h+E):R<u.length&&W("FieldMismatch","TooFewFields","Too few fields: expected "+u.length+" fields but parsed "+R,h+E)),n}var o=1;return!l.data.length||Array.isArray(l.data[0])?(l.data=l.data.map(a),o=l.data.length):l.data=a(l.data,0),t.header&&l.meta&&(l.meta.fields=u),h+=o,l}function N(a,o,p,E,n){var R,T,O,X;n=n||[","," ","|",";",f.RECORD_SEP,f.UNIT_SEP];for(var j=0;j<n.length;j++){var se=n[j],K=0,B=0,F=0;O=void 0;for(var H=new fe({comments:E,delimiter:se,newline:o,preview:10}).parse(a),I=0;I<H.data.length;I++){if(p&&y(H.data[I])){F++;continue}var M=H.data[I].length;if(B+=M,typeof O>"u"){O=M;continue}else M>0&&(K+=Math.abs(M-O),O=M)}H.data.length>0&&(B/=H.data.length-F),B>1.99&&(typeof T>"u"||K<T||K===T&&B>X)&&(T=K,R=se,X=B)}return t.delimiter=R,{successful:!!R,bestDelimiter:R}}function W(a,o,p,E){var n={type:a,code:o,message:p};E!==void 0&&(n.row=E),l.errors.push(n)}}function re(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function fe(t){t=t||{};var e=t.delimiter,r=t.newline,s=t.comments,i=t.step,c=t.preview,m=t.fastMode,h,_=null,x=!1;t.quoteChar===void 0||t.quoteChar===null?h='"':h=t.quoteChar;var S=h;if(t.escapeChar!==void 0&&(S=t.escapeChar),(typeof e!="string"||f.BAD_DELIMITERS.indexOf(e)>-1)&&(e=","),s===e)throw new Error("Comment character same as delimiter");s===!0?s="#":(typeof s!="string"||f.BAD_DELIMITERS.indexOf(s)>-1)&&(s=!1),r!==`
|
|
9
|
+
`&&r!=="\r"&&r!==`\r
|
|
10
|
+
`&&(r=`
|
|
11
|
+
`);var d=0,P=!1;this.parse=function(u,l,J){if(typeof u!="string")throw new Error("Input must be a string");var y=u.length,v=e.length,C=r.length,A=s.length,b=g(i);d=0;var D=[],q=[],k=[],N=0;if(!u)return F();if(m||m!==!1&&u.indexOf(h)===-1){for(var W=u.split(r),a=0;a<W.length;a++){if(k=W[a],d+=k.length,a!==W.length-1)d+=r.length;else if(J)return F();if(!(s&&k.substring(0,A)===s)){if(b){if(D=[],j(k.split(e)),H(),P)return F()}else j(k.split(e));if(c&&a>=c)return D=D.slice(0,c),F(!0)}}return F()}for(var o=u.indexOf(e,d),p=u.indexOf(r,d),E=new RegExp(re(S)+re(h),"g"),n=u.indexOf(h,d);;){if(u[d]===h){for(n=d,d++;;){if(n=u.indexOf(h,n+1),n===-1)return J||q.push({type:"Quotes",code:"MissingQuotes",message:"Quoted field unterminated",row:D.length,index:d}),K();if(n===y-1){var R=u.substring(d,n).replace(E,h);return K(R)}if(h===S&&u[n+1]===S){n++;continue}if(!(h!==S&&n!==0&&u[n-1]===S)){o!==-1&&o<n+1&&(o=u.indexOf(e,n+1)),p!==-1&&p<n+1&&(p=u.indexOf(r,n+1));var T=p===-1?o:Math.min(o,p),O=se(T);if(u.substr(n+1+O,v)===e){k.push(u.substring(d,n).replace(E,h)),d=n+1+O+v,u[n+1+O+v]!==h&&(n=u.indexOf(h,d)),o=u.indexOf(e,d),p=u.indexOf(r,d);break}var X=se(p);if(u.substring(n+1+X,n+1+X+C)===r){if(k.push(u.substring(d,n).replace(E,h)),B(n+1+X+C),o=u.indexOf(e,d),n=u.indexOf(h,d),b&&(H(),P))return F();if(c&&D.length>=c)return F(!0);break}q.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:D.length,index:d}),n++}}continue}if(s&&k.length===0&&u.substring(d,d+A)===s){if(p===-1)return F();d=p+C,p=u.indexOf(r,d),o=u.indexOf(e,d);continue}if(o!==-1&&(o<p||p===-1)){k.push(u.substring(d,o)),d=o+v,o=u.indexOf(e,d);continue}if(p!==-1){if(k.push(u.substring(d,p)),B(p+C),b&&(H(),P))return F();if(c&&D.length>=c)return F(!0);continue}break}return K();function j(I){D.push(I),N=d}function se(I){var M=0;if(I!==-1){var $=u.substring(n+1,I);$&&$.trim()===""&&(M=$.length)}return M}function K(I){return J||(typeof I>"u"&&(I=u.substring(d)),k.push(I),d=y,j(k),b&&H()),F()}function B(I){d=I,j(k),k=[],p=u.indexOf(r,d)}function F(I){if(t.header&&!l&&D.length&&!x){let M=D[0],$=Object.create(null),de=new Set(M),ve=!1;for(let Z=0;Z<M.length;Z++){let U=oe(M[Z]);if(g(t.transformHeader)&&(U=t.transformHeader(U,Z)),!$[U])$[U]=1,M[Z]=U;else{let ie,ke=$[U];do ie=`${U}_${ke}`,ke++;while(de.has(ie));de.add(ie),M[Z]=ie,$[U]++,ve=!0,_===null&&(_={}),_[ie]=U}de.add(U)}ve&&console.warn("Duplicate headers found and renamed."),x=!0}return{data:D,errors:q,meta:{delimiter:e,linebreak:r,aborted:P,truncated:!!I,cursor:N+(l||0),renamedHeaders:_}}}function H(){i(F()),D=[],q=[]}},this.abort=function(){P=!0},this.getCharIndex=function(){return d}}function Ce(){if(!f.WORKERS_SUPPORTED)return!1;var t=_e(),e=new w.Worker(t);return e.onmessage=Se,e.id=Re++,ne[e.id]=e,e}function Se(t){var e=t.data,r=ne[e.workerId],s=!1;if(e.error)r.userError(e.error,e.file);else if(e.results&&e.results.data){var i=function(){s=!0,me(e.workerId,{data:[],errors:[],meta:{aborted:!0}})},c={abort:i,pause:ye,resume:ye};if(g(r.userStep)){for(var m=0;m<e.results.data.length&&(r.userStep({data:e.results.data[m],errors:e.results.errors,meta:e.results.meta},c),!s);m++);delete e.results}else g(r.userChunk)&&(r.userChunk(e.results,c,e.file),delete e.results)}e.finished&&!s&&me(e.workerId,e.results)}function me(t,e){var r=ne[t];g(r.userComplete)&&r.userComplete(e),r.terminate(),delete ne[t]}function ye(){throw new Error("Not implemented.")}function be(t){var e=t.data;if(typeof f.WORKER_ID>"u"&&e&&(f.WORKER_ID=e.workerId),typeof e.input=="string")w.postMessage({workerId:f.WORKER_ID,results:f.parse(e.input,e.config),finished:!0});else if(w.File&&e.input instanceof File||e.input instanceof Object){var r=f.parse(e.input,e.config);r&&w.postMessage({workerId:f.WORKER_ID,results:r,finished:!0})}}function ae(t){if(typeof t!="object"||t===null)return t;var e=Array.isArray(t)?[]:{};for(var r in t)e[r]=ae(t[r]);return e}function L(t,e){return function(){t.apply(e,arguments)}}function g(t){return typeof t=="function"}return f})});export{xe as a};
|
|
12
|
+
/*! Bundled license information:
|
|
13
|
+
|
|
14
|
+
papaparse/papaparse.js:
|
|
15
|
+
(* @license
|
|
16
|
+
Papa Parse
|
|
17
|
+
v5.6.0
|
|
18
|
+
https://github.com/mholt/PapaParse
|
|
19
|
+
License: MIT
|
|
20
|
+
*)
|
|
21
|
+
*/
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import{createRequire} from"node:module";const require=createRequire(import.meta.url);
|
|
2
|
+
import{d as g}from"./chunk-GN6CQ3J4.js";import{a as y,b as $,c as F}from"./chunk-QAYAQNCG.js";var b={name:"comm",summary:"compare two sorted files line by line",usage:"comm [OPTION]... FILE1 FILE2",options:["-1 suppress column 1 (lines unique to FILE1)","-2 suppress column 2 (lines unique to FILE2)","-3 suppress column 3 (lines that appear in both files)"," --help display this help and exit"]},E={name:"comm",async execute(m,a){if($(m))return y(b);let r=!1,l=!1,f=!1,i=[];for(let e of m)if(e==="-1")r=!0;else if(e==="-2")l=!0;else if(e==="-3")f=!0;else if(e==="-12"||e==="-21")r=!0,l=!0;else if(e==="-13"||e==="-31")r=!0,f=!0;else if(e==="-23"||e==="-32")l=!0,f=!0;else if(e==="-123"||e==="-132"||e==="-213"||e==="-231"||e==="-312"||e==="-321")r=!0,l=!0,f=!0;else{if(e.startsWith("-")&&e!=="-")return F("comm",e);i.push(e)}if(i.length!==2)return{stdout:"",stderr:`comm: missing operand
|
|
3
|
+
Try 'comm --help' for more information.
|
|
4
|
+
`,exitCode:1};let p=async e=>{if(e==="-")return g(a.stdin);try{let x=a.fs.resolvePath(a.cwd,e);return await a.fs.readFile(x)}catch{return null}},c=await p(i[0]);if(c===null)return{stdout:"",stderr:`comm: ${i[0]}: No such file or directory
|
|
5
|
+
`,exitCode:1};let d=await p(i[1]);if(d===null)return{stdout:"",stderr:`comm: ${i[1]}: No such file or directory
|
|
6
|
+
`,exitCode:1};let t=c.split(`
|
|
7
|
+
`),s=d.split(`
|
|
8
|
+
`);t.length>0&&t[t.length-1]===""&&t.pop(),s.length>0&&s[s.length-1]===""&&s.pop();let n=0,o=0,u="",h=r?"":" ",w=(r?"":" ")+(l?"":" ");for(;n<t.length||o<s.length;)n>=t.length?(l||(u+=`${h}${s[o]}
|
|
9
|
+
`),o++):o>=s.length?(r||(u+=`${t[n]}
|
|
10
|
+
`),n++):t[n]<s[o]?(r||(u+=`${t[n]}
|
|
11
|
+
`),n++):t[n]>s[o]?(l||(u+=`${h}${s[o]}
|
|
12
|
+
`),o++):(f||(u+=`${w}${t[n]}
|
|
13
|
+
`),n++,o++);return{stdout:u,stderr:"",exitCode:0}}},L={name:"comm",flags:[{flag:"-1",type:"boolean"},{flag:"-2",type:"boolean"},{flag:"-3",type:"boolean"}],needsArgs:!0,minArgs:2};export{E as a,L as b};
|