@poe-platform/safe-bash 0.1.802 → 0.1.804

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.
Files changed (748) hide show
  1. package/README.md +60 -33
  2. package/dist/image-ast/ast.d.ts +1 -0
  3. package/dist/image-ast/browser/ast.d.ts +1 -0
  4. package/dist/image-ast/browser/codecs/jpeg.d.ts +2 -2
  5. package/dist/image-ast/codecs/jpeg.d.ts +2 -2
  6. package/dist/image-ast/index.browser.js +692 -8355
  7. package/dist/image-ast/index.js +692 -8355
  8. package/dist/mp4-ast/codecs.d.ts +7 -2
  9. package/dist/safe-bash/chunks/{chunk-CHYGPFVM.js → chunk-22SX3F2R.js} +1 -1
  10. package/dist/safe-bash/chunks/{chunk-FBUCWVTE.js → chunk-2IVBJTBD.js} +1 -1
  11. package/dist/safe-bash/chunks/chunk-2POETUMB.js +190 -0
  12. package/dist/safe-bash/chunks/{chunk-XVOSKJE2.js → chunk-47D7WBJK.js} +1 -1
  13. package/dist/safe-bash/chunks/{chunk-VKNVHEX3.js → chunk-4ESI236Y.js} +1 -1
  14. package/dist/safe-bash/chunks/{chunk-74GHTNJA.js → chunk-4KTMKD5W.js} +1 -1
  15. package/dist/safe-bash/chunks/{chunk-55YJASTN.js → chunk-4T53AERN.js} +1 -1
  16. package/dist/safe-bash/chunks/{chunk-DQP3VHSB.js → chunk-5XIFJVOO.js} +1 -1
  17. package/dist/safe-bash/chunks/{chunk-NZQXYWA3.js → chunk-62BOHHJT.js} +1 -2
  18. package/dist/safe-bash/chunks/{chunk-HZAMGT5I.js → chunk-67WIFM3N.js} +17 -6
  19. package/dist/safe-bash/chunks/{chunk-4D4N7IU2.js → chunk-6LNFRPW5.js} +2 -2
  20. package/dist/safe-bash/chunks/{chunk-6O77NL2S.js → chunk-6SMICPI3.js} +1 -1
  21. package/dist/safe-bash/chunks/{chunk-4BSJLKNM.js → chunk-7O76UFQD.js} +1 -1
  22. package/dist/safe-bash/chunks/{chunk-44ALJ4QG.js → chunk-AW5KIT6V.js} +3549 -84
  23. package/dist/safe-bash/chunks/{chunk-RSTHLAF3.js → chunk-B2Z73HTZ.js} +52 -28
  24. package/dist/safe-bash/chunks/chunk-B3ZMOJVM.js +319 -0
  25. package/dist/safe-bash/chunks/{chunk-7ZBU7KYV.js → chunk-CFAWS3O4.js} +1 -1
  26. package/dist/safe-bash/chunks/{chunk-I5HZ4FGE.js → chunk-CL2FCTTO.js} +1 -1
  27. package/dist/safe-bash/chunks/{chunk-KDNSPLII.js → chunk-CTXNARJH.js} +2 -1
  28. package/dist/safe-bash/chunks/{chunk-TFIBK2GI.js → chunk-D5Q7NFWI.js} +1 -1
  29. package/dist/safe-bash/chunks/{chunk-OQRVVGR6.js → chunk-DSOOVZ6Q.js} +1 -1
  30. package/dist/safe-bash/chunks/{chunk-VTH3MLDU.js → chunk-DUTAG6ZD.js} +1 -1
  31. package/dist/safe-bash/chunks/{chunk-XAQMU6OY.js → chunk-EE5YGFIZ.js} +1 -1
  32. package/dist/safe-bash/chunks/{chunk-FZE4HW6G.js → chunk-EJOYT2ME.js} +1 -1
  33. package/dist/safe-bash/chunks/chunk-FAAIR6EJ.js +887 -0
  34. package/dist/safe-bash/chunks/{chunk-OV6IHKO6.js → chunk-FOB2FZR4.js} +2 -2
  35. package/dist/safe-bash/chunks/chunk-G6V4RRSQ.js +14 -0
  36. package/dist/safe-bash/chunks/{chunk-UTBUUFDM.js → chunk-GGQAGQXQ.js} +1 -1
  37. package/dist/safe-bash/chunks/{chunk-K6VCD7IY.js → chunk-HIIYIJ5G.js} +2 -4
  38. package/dist/safe-bash/chunks/chunk-IOHH2GTI.js +56 -0
  39. package/dist/safe-bash/chunks/{chunk-CTVWDACF.js → chunk-IQW34XQT.js} +1 -1
  40. package/dist/safe-bash/chunks/{chunk-HZ7BWKQ3.js → chunk-IS572AAT.js} +1 -1
  41. package/dist/safe-bash/chunks/{chunk-AUSNDQTJ.js → chunk-JPSUHHOA.js} +1 -1
  42. package/dist/safe-bash/chunks/{chunk-ZVD5IS4V.js → chunk-KBZ4UB2O.js} +2 -2
  43. package/dist/safe-bash/chunks/{chunk-AM5ESLPH.js → chunk-KU5CVWKA.js} +1 -1
  44. package/dist/safe-bash/chunks/{chunk-NQCM3TYR.js → chunk-LPOVNKNB.js} +225 -176
  45. package/dist/safe-bash/chunks/{chunk-46Z5E5EV.js → chunk-MBOC3LZ4.js} +1 -1
  46. package/dist/safe-bash/chunks/{chunk-6PAVEFT3.js → chunk-N4BQFD3P.js} +1 -1
  47. package/dist/safe-bash/chunks/{chunk-CS4MNM6I.js → chunk-NGKCVNWS.js} +1 -1
  48. package/dist/safe-bash/chunks/{chunk-7R5BDCG7.js → chunk-OHML2BEU.js} +1 -1
  49. package/dist/safe-bash/chunks/{chunk-C5OWC2TL.js → chunk-OQ3AGYCZ.js} +1 -1
  50. package/dist/safe-bash/chunks/{chunk-B7TAL7S5.js → chunk-PTAEWLSE.js} +0 -2
  51. package/dist/safe-bash/chunks/{chunk-LVOBFF4D.js → chunk-Q4FNLOTI.js} +1 -1
  52. package/dist/safe-bash/chunks/chunk-Q5XO3NAS.js +1036 -0
  53. package/dist/safe-bash/chunks/{chunk-GEG3BWGE.js → chunk-RHFRJIWQ.js} +1 -1
  54. package/dist/safe-bash/chunks/chunk-RUR6J33T.js +11 -0
  55. package/dist/safe-bash/chunks/{chunk-WDLGKIHD.js → chunk-S4RFUUXO.js} +841 -26
  56. package/dist/safe-bash/chunks/{chunk-RRR7AQ24.js → chunk-SD2ISU5L.js} +1 -1
  57. package/dist/safe-bash/chunks/{chunk-3NDIFSNM.js → chunk-SUJ3NTMH.js} +3 -3
  58. package/dist/safe-bash/chunks/{chunk-R3NAKOED.js → chunk-SZRUU5HS.js} +2 -2
  59. package/dist/safe-bash/chunks/{chunk-PH63PLPZ.js → chunk-TC3F4UFF.js} +1 -1
  60. package/dist/safe-bash/chunks/{chunk-3R3AANOR.js → chunk-TCKYOLUE.js} +1 -1
  61. package/dist/safe-bash/chunks/{chunk-D3ANYGMC.js → chunk-UV4X32QU.js} +1 -1
  62. package/dist/safe-bash/chunks/{chunk-E7OYNDGL.js → chunk-V7QT2RWC.js} +1 -1
  63. package/dist/safe-bash/chunks/{chunk-SHEMU2Z7.js → chunk-W2IYOVHK.js} +839 -1211
  64. package/dist/safe-bash/chunks/{chunk-3HQU4OJO.js → chunk-XNGVOSGI.js} +1 -1
  65. package/dist/safe-bash/chunks/{chunk-J42RIHHJ.js → chunk-XQWCQSRN.js} +1 -1
  66. package/dist/safe-bash/chunks/{chunk-BJA5XNP6.js → chunk-Y7FW6GLT.js} +6 -6
  67. package/dist/safe-bash/chunks/{chunk-QGUV42T5.js → chunk-YL3GBUG4.js} +1 -1
  68. package/dist/safe-bash/chunks/chunk-YOXUCJER.js +389 -0
  69. package/dist/safe-bash/chunks/{chunk-HBCN24ZA.js → chunk-Z2AAYYJN.js} +2 -2
  70. package/dist/safe-bash/chunks/chunk-ZKYKJCZZ.js +30 -0
  71. package/dist/safe-bash/chunks/core-IE3AFIDX.js +85806 -0
  72. package/dist/safe-bash/chunks/{ffmpeg-WTC3TEFI.js → ffmpeg-YANDK6HU.js} +2 -2
  73. package/dist/safe-bash/chunks/{gh-6WU6PXL4.js → gh-4MBJ2S5V.js} +2 -2
  74. package/dist/safe-bash/chunks/{git-EFZIGJW4.js → git-2QONJNRQ.js} +2 -2
  75. package/dist/safe-bash/chunks/{imagemagick-EIEYGWPF.js → imagemagick-JLEHGYSN.js} +2 -2
  76. package/dist/safe-bash/chunks/{mmdc-ROQJT5HQ.js → mmdc-6LD7A6ND.js} +2 -2
  77. package/dist/safe-bash/chunks/{pdfimages-DW7LWXFI.js → pdfimages-RSHL7LOP.js} +2 -2
  78. package/dist/safe-bash/chunks/{pdfinfo-TIP6XLUQ.js → pdfinfo-L3SGWPNG.js} +2 -2
  79. package/dist/safe-bash/chunks/{pdftk-DMG22ITZ.js → pdftk-LFBJNU5A.js} +2 -2
  80. package/dist/safe-bash/chunks/{pdftoppm-WNDYR72T.js → pdftoppm-NXXFUIHG.js} +2 -2
  81. package/dist/safe-bash/chunks/{pdftotext-5IPZ4NI7.js → pdftotext-4IHNWT6F.js} +2 -2
  82. package/dist/safe-bash/chunks/{qpdf-TTX2DIUA.js → qpdf-ZEIREV63.js} +2 -2
  83. package/dist/safe-bash/chunks/read-builtin-A4QKAT45.js +9 -0
  84. package/dist/safe-bash/chunks/{sips-XYS46JPJ.js → sips-D5YBG2V3.js} +2 -2
  85. package/dist/safe-bash/chunks/{soffice-TU73E5KL.js → soffice-RAJU3JUT.js} +2 -2
  86. package/dist/safe-bash/chunks/source-files-3XWRRHFA.js +7 -0
  87. package/dist/safe-bash/chunks/{wkhtmltopdf-FSZ2CHGE.js → wkhtmltopdf-7UE4FORZ.js} +2 -2
  88. package/dist/safe-bash/command-chunks/{chunk-7KWZXKY6.js → chunk-26RTBV2I.js} +1 -0
  89. package/dist/safe-bash/command-chunks/{chunk-AQJ2ROJO.js → chunk-2WYNMZR2.js} +10 -8
  90. package/dist/safe-bash/command-chunks/{chunk-BDSMROQZ.js → chunk-36GFRF2N.js} +2 -1
  91. package/dist/safe-bash/command-chunks/{chunk-GC5TJZOF.js → chunk-3VIA2IA7.js} +114 -31
  92. package/dist/safe-bash/command-chunks/{chunk-NKFYQSES.js → chunk-4CTI3ZTX.js} +1 -0
  93. package/dist/safe-bash/command-chunks/{chunk-WH627NJL.js → chunk-4MYP2FX4.js} +2 -1
  94. package/dist/safe-bash/command-chunks/chunk-4R5ADJM5.js +178 -0
  95. package/dist/safe-bash/command-chunks/{chunk-P2N33UMN.js → chunk-5MIKM54M.js} +4 -4
  96. package/dist/safe-bash/command-chunks/{chunk-DB453IE6.js → chunk-6FZQUOSJ.js} +1 -1
  97. package/dist/safe-bash/command-chunks/{chunk-WPYIOKE3.js → chunk-6GKYHPJG.js} +2 -2
  98. package/dist/safe-bash/command-chunks/{chunk-7K6JYKPJ.js → chunk-6M2ELGEN.js} +17 -15
  99. package/dist/safe-bash/command-chunks/{chunk-PXEIT2O4.js → chunk-6UR7V3ET.js} +8 -1
  100. package/dist/safe-bash/command-chunks/{chunk-6KJ3LPI2.js → chunk-6XBS5B46.js} +26 -3
  101. package/dist/safe-bash/command-chunks/{chunk-5PWJG2UK.js → chunk-6YXLZX7L.js} +2 -2
  102. package/dist/safe-bash/command-chunks/{chunk-EK6YNAXT.js → chunk-753YOR54.js} +31 -5
  103. package/dist/safe-bash/command-chunks/{chunk-RMWQAAO5.js → chunk-7IR4NRNE.js} +2 -2
  104. package/dist/safe-bash/command-chunks/{chunk-FZTK4MFI.js → chunk-7NM73SVK.js} +8 -8
  105. package/dist/safe-bash/command-chunks/{chunk-NXEQ3ESQ.js → chunk-7QD5YY4F.js} +6 -11
  106. package/dist/safe-bash/command-chunks/{chunk-EMPU65ZK.js → chunk-A5LBSJGH.js} +1 -0
  107. package/dist/safe-bash/command-chunks/chunk-A7MU7762.js +200 -0
  108. package/dist/safe-bash/command-chunks/{chunk-ORYGZYKW.js → chunk-ARZMP2L2.js} +3 -3
  109. package/dist/safe-bash/command-chunks/{chunk-OQKC5ZU2.js → chunk-BAKFZ477.js} +62 -20
  110. package/dist/safe-bash/command-chunks/{chunk-QRRYN2KO.js → chunk-BC7BK6R6.js} +0 -2424
  111. package/dist/safe-bash/command-chunks/{chunk-F4TEEZTL.js → chunk-BOEOJS2Q.js} +1 -1
  112. package/dist/safe-bash/command-chunks/{chunk-XS72HTMA.js → chunk-BWGGLYEB.js} +5 -22
  113. package/dist/safe-bash/command-chunks/{chunk-PMBFZXTK.js → chunk-C5ZZKP7V.js} +1 -1
  114. package/dist/safe-bash/command-chunks/{chunk-LHIOAFWW.js → chunk-C7SEB6WU.js} +1 -1
  115. package/dist/safe-bash/command-chunks/{chunk-XPT2UGBF.js → chunk-CHJKFRT7.js} +1 -1
  116. package/dist/safe-bash/command-chunks/{chunk-TIOCQVUQ.js → chunk-CON26Q2O.js} +1 -1
  117. package/dist/safe-bash/command-chunks/{chunk-E55UKBIE.js → chunk-DBAT3IK2.js} +1 -1
  118. package/dist/safe-bash/command-chunks/{chunk-Z45N42QC.js → chunk-DPAYAVMS.js} +15 -1
  119. package/dist/safe-bash/command-chunks/chunk-DS3NXVUM.js +368 -0
  120. package/dist/safe-bash/command-chunks/{chunk-5ZMZ573Q.js → chunk-DSJ3VRL3.js} +16 -4
  121. package/dist/safe-bash/command-chunks/{chunk-K2GDEMEU.js → chunk-EFRCFWVR.js} +4 -4
  122. package/dist/safe-bash/command-chunks/{chunk-DZCY63VJ.js → chunk-EV6HIJ5H.js} +6 -5
  123. package/dist/safe-bash/command-chunks/{chunk-JDYXY44P.js → chunk-FJURV46Y.js} +3 -3
  124. package/dist/safe-bash/command-chunks/{chunk-TZZ4WUKH.js → chunk-FZAWGKSE.js} +6 -4
  125. package/dist/safe-bash/command-chunks/{chunk-YHFXOX6U.js → chunk-GOCFQ6XV.js} +4 -4
  126. package/dist/safe-bash/command-chunks/{chunk-YOFC45RK.js → chunk-HH5O7DJI.js} +1 -1
  127. package/dist/safe-bash/command-chunks/{chunk-3HHCU5YU.js → chunk-HK7F5SDC.js} +13 -0
  128. package/dist/safe-bash/command-chunks/{chunk-JNZ3CVAE.js → chunk-HQBXIZC7.js} +8 -3
  129. package/dist/safe-bash/command-chunks/{chunk-2JRBIDAD.js → chunk-I63DBZXZ.js} +2 -2
  130. package/dist/safe-bash/command-chunks/{chunk-WNE7FPVR.js → chunk-I64TLTIW.js} +24 -16
  131. package/dist/safe-bash/command-chunks/{chunk-QKFSRZGQ.js → chunk-ICANWOXH.js} +7 -31
  132. package/dist/safe-bash/command-chunks/{chunk-SQRQW3CT.js → chunk-IJ6LGLXM.js} +1 -1
  133. package/dist/safe-bash/command-chunks/{chunk-5E4WAO4O.js → chunk-JD5QNRNO.js} +3 -3
  134. package/dist/safe-bash/command-chunks/{chunk-KJIMDLBB.js → chunk-JNANXVJV.js} +1 -1
  135. package/dist/safe-bash/command-chunks/{chunk-TGSNCQSR.js → chunk-JT4RYCA6.js} +1771 -1663
  136. package/dist/safe-bash/command-chunks/{chunk-II77KPZN.js → chunk-JWW6FYBN.js} +2 -2
  137. package/dist/safe-bash/command-chunks/{chunk-ZYXH3B66.js → chunk-LCJWKTCJ.js} +250 -203
  138. package/dist/safe-bash/command-chunks/{chunk-I237SNW5.js → chunk-LFJJQQND.js} +1 -1
  139. package/dist/safe-bash/command-chunks/chunk-LU4HBPP2.js +97 -0
  140. package/dist/safe-bash/command-chunks/{chunk-XJXU3VVH.js → chunk-LWOE65OE.js} +20 -5
  141. package/dist/safe-bash/command-chunks/{chunk-GMIHJYDG.js → chunk-M32HFSX7.js} +22 -6
  142. package/dist/safe-bash/command-chunks/{chunk-YG4EPFWC.js → chunk-M3NINRDU.js} +2880 -172
  143. package/dist/safe-bash/command-chunks/chunk-MQREDAL6.js +164 -0
  144. package/dist/safe-bash/command-chunks/{chunk-LWS62ISU.js → chunk-N6DIASO2.js} +1 -1
  145. package/dist/safe-bash/command-chunks/chunk-NGL7YK7O.js +188 -0
  146. package/dist/safe-bash/command-chunks/{chunk-PEF7K3UQ.js → chunk-NJYHWKIL.js} +40 -10
  147. package/dist/safe-bash/command-chunks/{chunk-VXSLJH7G.js → chunk-OJQRSCBP.js} +27 -7
  148. package/dist/safe-bash/command-chunks/{chunk-OQU6UT6X.js → chunk-OV3XREFN.js} +11 -0
  149. package/dist/safe-bash/command-chunks/{chunk-MIXBO6U7.js → chunk-PTZLF456.js} +2 -2
  150. package/dist/safe-bash/command-chunks/{chunk-ALDC4XP4.js → chunk-QILLRNES.js} +34 -10
  151. package/dist/safe-bash/command-chunks/{chunk-L22T3H7L.js → chunk-QR25JLKO.js} +1 -1
  152. package/dist/safe-bash/command-chunks/{chunk-7U7EXOXX.js → chunk-R7C4MGZ5.js} +17 -223
  153. package/dist/safe-bash/command-chunks/{chunk-LCF3OB7P.js → chunk-RBME3JEH.js} +1 -1
  154. package/dist/safe-bash/command-chunks/{chunk-2KG2QLJE.js → chunk-RFWGYT7G.js} +3 -0
  155. package/dist/safe-bash/command-chunks/{chunk-5TBUOBDE.js → chunk-RZMVRT26.js} +27 -13
  156. package/dist/safe-bash/command-chunks/chunk-TFR6B3WB.js +44 -0
  157. package/dist/safe-bash/command-chunks/chunk-TOH3OF3O.js +179 -0
  158. package/dist/safe-bash/command-chunks/{chunk-VGG2DL5Q.js → chunk-TRR4MYWF.js} +4 -0
  159. package/dist/safe-bash/command-chunks/chunk-TT4DAFBT.js +13621 -0
  160. package/dist/safe-bash/command-chunks/{chunk-LWSBAWLT.js → chunk-TXI64OAG.js} +1 -1
  161. package/dist/safe-bash/command-chunks/chunk-TZRI7BJZ.js +496 -0
  162. package/dist/safe-bash/command-chunks/{chunk-QOKBZFFD.js → chunk-U3MMODA5.js} +2 -7
  163. package/dist/safe-bash/command-chunks/{chunk-ZYHTWNAE.js → chunk-UAW423ZL.js} +11 -11
  164. package/dist/safe-bash/command-chunks/{chunk-C5YYCQHW.js → chunk-UXEEUGOV.js} +222 -12
  165. package/dist/safe-bash/command-chunks/{chunk-GY3BWK7K.js → chunk-VOZPMJRX.js} +87 -80
  166. package/dist/safe-bash/command-chunks/{chunk-MQFIPHIQ.js → chunk-WPANOB4A.js} +38 -35
  167. package/dist/safe-bash/command-chunks/{chunk-Y2WBSJG6.js → chunk-X4QZQI5Q.js} +65 -64
  168. package/dist/safe-bash/command-chunks/{chunk-FPVUD6TH.js → chunk-XGI57GCN.js} +10 -8
  169. package/dist/safe-bash/command-chunks/{chunk-5UBXNSFZ.js → chunk-XUCU7QQT.js} +1281 -1278
  170. package/dist/safe-bash/command-chunks/chunk-Y22VXJBD.js +296 -0
  171. package/dist/safe-bash/command-chunks/{chunk-WVHONVZ4.js → chunk-YMFUUPDX.js} +5 -3
  172. package/dist/safe-bash/command-chunks/{chunk-IR2BY7EL.js → chunk-YYGIBXFZ.js} +2 -2
  173. package/dist/safe-bash/command-chunks/{chunk-MSFXC3OC.js → chunk-Z4FO6OHE.js} +2 -2
  174. package/dist/safe-bash/command-chunks/{chunk-6GWJUQAV.js → chunk-Z5ZZVDUD.js} +181 -133
  175. package/dist/safe-bash/command-chunks/{chunk-W5DNF4JH.js → chunk-ZHN3QDCI.js} +1 -1
  176. package/dist/safe-bash/commands/alias/index.d.ts +2 -0
  177. package/dist/safe-bash/commands/alias/index.js +2 -0
  178. package/dist/safe-bash/commands/apply-patch/index.browser.js +2 -3
  179. package/dist/safe-bash/commands/apply-patch/index.d.ts +0 -1
  180. package/dist/safe-bash/commands/apply-patch/index.js +0 -1
  181. package/dist/safe-bash/commands/archive/index.browser.js +2 -3
  182. package/dist/safe-bash/commands/archive/index.d.ts +0 -1
  183. package/dist/safe-bash/commands/archive/index.js +0 -1
  184. package/dist/safe-bash/commands/bytes/compression/index.js +54 -51
  185. package/dist/safe-bash/commands/bytes/index.js +2 -1
  186. package/dist/safe-bash/commands/chmod/index.browser.js +14 -0
  187. package/dist/safe-bash/commands/chmod/index.d.ts +2 -0
  188. package/dist/safe-bash/commands/chmod/index.js +2 -0
  189. package/dist/safe-bash/commands/column/index.browser.js +2 -3
  190. package/dist/safe-bash/commands/column/index.d.ts +0 -1
  191. package/dist/safe-bash/commands/column/index.js +0 -1
  192. package/dist/safe-bash/commands/copy-source.js +1 -0
  193. package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
  194. package/dist/safe-bash/commands/csvkit/index.browser.js +72 -0
  195. package/dist/safe-bash/commands/csvkit/index.d.ts +0 -5
  196. package/dist/safe-bash/commands/csvkit/index.js +0 -50
  197. package/dist/safe-bash/commands/docx/index.browser.js +5 -7
  198. package/dist/safe-bash/commands/du/index.browser.js +2 -3
  199. package/dist/safe-bash/commands/du/index.d.ts +0 -1
  200. package/dist/safe-bash/commands/du/index.js +0 -1
  201. package/dist/safe-bash/commands/expr/index.browser.js +2 -3
  202. package/dist/safe-bash/commands/expr/index.d.ts +0 -1
  203. package/dist/safe-bash/commands/expr/index.js +0 -1
  204. package/dist/safe-bash/commands/factor/index.browser.js +2 -2
  205. package/dist/safe-bash/commands/file/index.browser.js +2 -3
  206. package/dist/safe-bash/commands/file/index.d.ts +0 -1
  207. package/dist/safe-bash/commands/file/index.js +0 -1
  208. package/dist/safe-bash/commands/filesystem.js +1 -1
  209. package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
  210. package/dist/safe-bash/commands/grep-aliases/index.browser.js +3 -3
  211. package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
  212. package/dist/safe-bash/commands/html-to-markdown/index.browser.js +2 -3
  213. package/dist/safe-bash/commands/html-to-markdown/index.d.ts +0 -1
  214. package/dist/safe-bash/commands/html-to-markdown/index.js +0 -1
  215. package/dist/safe-bash/commands/htmlq/index.d.ts +1 -5
  216. package/dist/safe-bash/commands/htmlq/index.js +1 -143
  217. package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
  218. package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
  219. package/dist/safe-bash/commands/llm/index.browser.js +2 -2
  220. package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
  221. package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
  222. package/dist/safe-bash/commands/media/index.browser.js +4 -16314
  223. package/dist/safe-bash/commands/media/index.d.ts +1 -5
  224. package/dist/safe-bash/commands/media/index.js +1 -3
  225. package/dist/safe-bash/commands/media/plugin.d.ts +1 -18
  226. package/dist/safe-bash/commands/media/plugin.js +1 -90
  227. package/dist/safe-bash/commands/media/remote.d.ts +1 -63
  228. package/dist/safe-bash/commands/media/remote.js +1 -405
  229. package/dist/safe-bash/commands/media/settings.d.ts +1 -4
  230. package/dist/safe-bash/commands/media/settings.js +1 -26
  231. package/dist/safe-bash/commands/metadata/chmod.d.ts +1 -7
  232. package/dist/safe-bash/commands/metadata/chmod.js +1 -204
  233. package/dist/safe-bash/commands/metadata/index.browser.js +3 -8
  234. package/dist/safe-bash/commands/metadata/index.d.ts +0 -1
  235. package/dist/safe-bash/commands/metadata/index.js +2 -2
  236. package/dist/safe-bash/commands/metadata/internal.d.ts +1 -30
  237. package/dist/safe-bash/commands/metadata/internal.js +1 -76
  238. package/dist/safe-bash/commands/metadata/mktemp.d.ts +1 -3
  239. package/dist/safe-bash/commands/metadata/mktemp.js +1 -202
  240. package/dist/safe-bash/commands/metadata/stat.d.ts +1 -7
  241. package/dist/safe-bash/commands/metadata/stat.js +1 -530
  242. package/dist/safe-bash/commands/mktemp/index.browser.js +13 -0
  243. package/dist/safe-bash/commands/mktemp/index.d.ts +2 -0
  244. package/dist/safe-bash/commands/mktemp/index.js +2 -0
  245. package/dist/safe-bash/commands/network/curl.js +1 -3
  246. package/dist/safe-bash/commands/network/index.browser.js +3 -4
  247. package/dist/safe-bash/commands/network/public.d.ts +0 -1
  248. package/dist/safe-bash/commands/network/public.js +0 -1
  249. package/dist/safe-bash/commands/network/transport.js +2 -1
  250. package/dist/safe-bash/commands/network/wget.js +1 -3
  251. package/dist/safe-bash/commands/node/browser.d.ts +0 -1
  252. package/dist/safe-bash/commands/node/browser.js +0 -1
  253. package/dist/safe-bash/commands/node/default-runtime.d.ts +3 -0
  254. package/dist/safe-bash/commands/node/default-runtime.js +15 -0
  255. package/dist/safe-bash/commands/node/index.browser.js +7 -8
  256. package/dist/safe-bash/commands/node/index.js +3 -3
  257. package/dist/safe-bash/commands/node/path.js +1 -1
  258. package/dist/safe-bash/commands/node/preload.d.ts +1 -1
  259. package/dist/safe-bash/commands/node/preload.js +4 -1
  260. package/dist/safe-bash/commands/node/quickjs.d.ts +2 -0
  261. package/dist/safe-bash/commands/node/quickjs.js +2 -0
  262. package/dist/safe-bash/commands/node/safejs.js +26 -12
  263. package/dist/safe-bash/commands/op/index.browser.js +2 -3
  264. package/dist/safe-bash/commands/op/index.d.ts +0 -11
  265. package/dist/safe-bash/commands/op/index.js +0 -84
  266. package/dist/safe-bash/commands/pandoc/index.browser.js +44 -0
  267. package/dist/safe-bash/commands/pandoc/index.d.ts +0 -1
  268. package/dist/safe-bash/commands/pandoc/index.js +0 -1
  269. package/dist/safe-bash/commands/portable-random.d.ts +1 -1
  270. package/dist/safe-bash/commands/portable-random.js +1 -12
  271. package/dist/safe-bash/commands/pr/index.browser.js +2 -2
  272. package/dist/safe-bash/commands/python/docker-runner.js +4 -3
  273. package/dist/safe-bash/commands/python/docker.d.ts +1 -0
  274. package/dist/safe-bash/commands/python/docker.js +5 -2
  275. package/dist/safe-bash/commands/python/index.browser.js +17 -13
  276. package/dist/safe-bash/commands/python/index.d.ts +2 -1
  277. package/dist/safe-bash/commands/python/index.js +10 -8
  278. package/dist/safe-bash/commands/python/llm-capability.js +65 -2
  279. package/dist/safe-bash/commands/python/llm-dependencies.d.ts +27 -0
  280. package/dist/safe-bash/commands/python/llm-dependencies.js +66 -0
  281. package/dist/safe-bash/commands/python/llm-module.js +6 -4
  282. package/dist/safe-bash/commands/python/llm-reference-module.d.ts +3 -0
  283. package/dist/safe-bash/commands/python/llm-reference-module.js +690 -0
  284. package/dist/safe-bash/commands/python/worker.browser.js +2 -3
  285. package/dist/safe-bash/commands/python/worker.d.ts +0 -1
  286. package/dist/safe-bash/commands/python/worker.js +0 -1
  287. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.d.ts +1 -1
  288. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.js +3 -3
  289. package/dist/safe-bash/commands/regex-execution/public.browser.js +7 -7
  290. package/dist/safe-bash/commands/safejs/options.js +5 -1
  291. package/dist/safe-bash/commands/safejs/runtime.d.ts +1 -0
  292. package/dist/safe-bash/commands/safejs/runtime.js +1 -1
  293. package/dist/safe-bash/commands/split/index.browser.js +2 -3
  294. package/dist/safe-bash/commands/split/index.d.ts +0 -1
  295. package/dist/safe-bash/commands/split/index.js +0 -1
  296. package/dist/safe-bash/commands/ssconvert/index.browser.js +98 -0
  297. package/dist/safe-bash/commands/stat/index.browser.js +13 -0
  298. package/dist/safe-bash/commands/stat/index.d.ts +2 -0
  299. package/dist/safe-bash/commands/stat/index.js +2 -0
  300. package/dist/safe-bash/commands/stream-format/index.browser.js +3 -4
  301. package/dist/safe-bash/commands/stream-format/index.d.ts +0 -1
  302. package/dist/safe-bash/commands/stream-format/index.js +0 -1
  303. package/dist/safe-bash/commands/stream-inspection/index.browser.js +3 -4
  304. package/dist/safe-bash/commands/stream-inspection/index.d.ts +0 -1
  305. package/dist/safe-bash/commands/stream-inspection/index.js +0 -1
  306. package/dist/safe-bash/commands/streams.js +2 -1
  307. package/dist/safe-bash/commands/table-text/index.browser.js +3 -4
  308. package/dist/safe-bash/commands/table-text/index.d.ts +0 -1
  309. package/dist/safe-bash/commands/table-text/index.js +0 -1
  310. package/dist/safe-bash/commands/text.js +74 -34
  311. package/dist/safe-bash/commands/time-env/index.browser.js +3 -4
  312. package/dist/safe-bash/commands/time-env/index.d.ts +0 -1
  313. package/dist/safe-bash/commands/time-env/index.js +0 -1
  314. package/dist/safe-bash/commands/tree/index.browser.js +2 -3
  315. package/dist/safe-bash/commands/tree/index.d.ts +0 -1
  316. package/dist/safe-bash/commands/tree/index.js +0 -1
  317. package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
  318. package/dist/safe-bash/commands/unalias/index.d.ts +2 -0
  319. package/dist/safe-bash/commands/unalias/index.js +2 -0
  320. package/dist/safe-bash/commands/xml/index.browser.js +2 -2
  321. package/dist/safe-bash/commands/yq/index.browser.js +2 -2
  322. package/dist/safe-bash/core.browser.js +2 -2
  323. package/dist/safe-bash/core.d.ts +7 -1
  324. package/dist/safe-bash/core.js +7 -1
  325. package/dist/safe-bash/execution-runtime.js +2 -1
  326. package/dist/safe-bash/fs/s3/http/index.d.ts +2 -2
  327. package/dist/safe-bash/fs/s3/http/index.js +1 -1
  328. package/dist/safe-bash/full-core.browser.js +254 -916
  329. package/dist/safe-bash/internal/op/types.d.ts +1 -0
  330. package/dist/safe-bash/jobs.browser.js +5 -5
  331. package/dist/safe-bash/lazy-optional.d.ts +3 -3
  332. package/dist/safe-bash/lazy-optional.js +1 -1
  333. package/dist/safe-bash/opt-in/commands/cmp/index.js +7 -6
  334. package/dist/safe-bash/opt-in/commands/dd/index.js +1 -1
  335. package/dist/safe-bash/opt-in/commands/dd/io.js +51 -5
  336. package/dist/safe-bash/opt-in/commands/truncate/index.js +2 -2
  337. package/dist/safe-bash/opt-in/commands/yq/native-work.js +3 -0
  338. package/dist/safe-bash/opt-in/optional/commands/shuf/input.js +2 -1
  339. package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +4 -2
  340. package/dist/safe-bash/opt-in/optional.d.ts +1 -1
  341. package/dist/safe-bash/opt-in/optional.js +1 -1
  342. package/dist/safe-bash/opt-in/shell/extensions/read/index.js +2 -344
  343. package/dist/safe-bash/optional-host.browser.js +19 -14
  344. package/dist/safe-bash/optional-host.d.ts +1 -0
  345. package/dist/safe-bash/optional-host.js +1 -0
  346. package/dist/safe-bash/playwright/controller.js +41 -3
  347. package/dist/safe-bash/playwright/native-storage-targets.js +4 -2
  348. package/dist/safe-bash/plugins/base.d.ts +1 -1
  349. package/dist/safe-bash/plugins/base.js +3 -3
  350. package/dist/safe-bash/plugins/composition.d.ts +5 -2
  351. package/dist/safe-bash/plugins/composition.js +10 -7
  352. package/dist/safe-bash/plugins/index.browser.js +44 -41
  353. package/dist/safe-bash/plugins/index.js +3 -2
  354. package/dist/safe-bash/plugins/portable-commands.d.ts +3 -0
  355. package/dist/safe-bash/plugins/portable-commands.js +31 -0
  356. package/dist/safe-bash/registry-entry.browser.js +41 -42
  357. package/dist/safe-bash/search.browser.js +32 -33
  358. package/dist/safe-bash/shell/arithmetic.js +19 -6
  359. package/dist/safe-bash/shell/arrays/state.js +1 -1
  360. package/dist/safe-bash/shell/arrays/syntax.js +4 -3
  361. package/dist/safe-bash/shell/index.d.ts +0 -1
  362. package/dist/safe-bash/shell/index.js +0 -1
  363. package/dist/safe-bash/shell/parser.d.ts +2 -2
  364. package/dist/safe-bash/shell/parser.js +268 -64
  365. package/dist/safe-bash/shell/read-builtin.d.ts +3 -0
  366. package/dist/safe-bash/shell/read-builtin.js +344 -0
  367. package/dist/safe-bash/shell/runtime.d.ts +24 -4
  368. package/dist/safe-bash/shell/runtime.js +392 -414
  369. package/dist/safe-bash/shell/session-state.js +25 -0
  370. package/dist/safe-bash/shell/shell.js +76 -154
  371. package/dist/safe-bash/shell/tilde-expansion.d.ts +1 -1
  372. package/dist/safe-bash/shell/tilde-expansion.js +2 -2
  373. package/dist/safe-bash/shell/types.d.ts +7 -0
  374. package/dist/safe-bash/shell/value-state.js +1 -1
  375. package/dist/safe-bash/shell/worker-limits.js +1 -0
  376. package/dist/safe-bash/shell-entry.browser.js +32 -33
  377. package/dist/safe-bash/trap.browser.js +4 -4
  378. package/dist/safe-bash/worker/host.js +1 -1
  379. package/dist/safe-bash/yq-browser/index.js +1 -1
  380. package/dist/safe-bash-calendar-engine/time-env/calendar.d.ts +1 -1
  381. package/dist/safe-bash-calendar-engine/time-env/calendar.js +1 -1
  382. package/dist/safe-bash-calendar-engine/time-env/format.js +1 -1
  383. package/dist/safe-bash-command-alias/index.d.ts +13 -0
  384. package/dist/safe-bash-command-alias/index.js +88 -0
  385. package/dist/safe-bash-command-apply-patch/apply.js +3 -3
  386. package/dist/safe-bash-command-apply-patch/index.js +3 -3
  387. package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
  388. package/dist/safe-bash-command-apply-patch/parser.js +1 -1
  389. package/dist/safe-bash-command-awk/awk-pipes.js +2 -2
  390. package/dist/safe-bash-command-awk/awk-reader.js +1 -1
  391. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  392. package/dist/safe-bash-command-awk/awk.js +5 -5
  393. package/dist/safe-bash-command-awk/index.js +5 -5
  394. package/dist/safe-bash-command-bc/index.js +218 -65
  395. package/dist/safe-bash-command-bzip2/index.js +4 -3
  396. package/dist/safe-bash-command-chmod/LICENSE +21 -0
  397. package/dist/safe-bash-command-chmod/command.d.ts +7 -0
  398. package/dist/safe-bash-command-chmod/command.js +11 -0
  399. package/dist/safe-bash-command-chmod/index.d.ts +6 -0
  400. package/dist/safe-bash-command-chmod/index.js +27 -0
  401. package/dist/safe-bash-command-cmp/index.js +7 -6
  402. package/dist/safe-bash-command-column/column.js +3 -3
  403. package/dist/safe-bash-command-column/index.js +3 -3
  404. package/dist/safe-bash-command-column/layout.js +2 -2
  405. package/dist/safe-bash-command-csvkit/index.d.ts +1 -0
  406. package/dist/safe-bash-command-csvkit/index.js +1505 -7
  407. package/dist/safe-bash-command-csvkit/sync-support.js +2 -7
  408. package/dist/safe-bash-command-curl/curl.js +1 -1
  409. package/dist/safe-bash-command-curl/index.js +1 -1
  410. package/dist/safe-bash-command-date/date.js +1 -1
  411. package/dist/safe-bash-command-date/index.js +1 -1
  412. package/dist/safe-bash-command-dd/index.js +1 -1
  413. package/dist/safe-bash-command-dd/io.js +51 -5
  414. package/dist/safe-bash-command-diff/diff.js +1 -1
  415. package/dist/safe-bash-command-diff/index.js +1 -1
  416. package/dist/safe-bash-command-diff3/index.js +10 -13
  417. package/dist/safe-bash-command-exiftool/index.js +283 -55
  418. package/dist/safe-bash-command-exiftool/registry.d.ts +4 -2
  419. package/dist/safe-bash-command-factor/command.js +2 -2
  420. package/dist/safe-bash-command-factor/index.js +2 -2
  421. package/dist/safe-bash-command-fd/arguments.d.ts +2 -0
  422. package/dist/safe-bash-command-fd/index.js +42 -12
  423. package/dist/safe-bash-command-ffmpeg/index.js +356 -66
  424. package/dist/safe-bash-command-find/find-format.d.ts +3 -0
  425. package/dist/safe-bash-command-find/find-format.js +1 -1
  426. package/dist/safe-bash-command-find/find.js +2 -2
  427. package/dist/safe-bash-command-find/index.js +2 -2
  428. package/dist/safe-bash-command-fmt/index.js +10 -6
  429. package/dist/safe-bash-command-fold/engine.d.ts +1 -1
  430. package/dist/safe-bash-command-fold/family.js +2 -2
  431. package/dist/safe-bash-command-fold/index.js +1 -1
  432. package/dist/safe-bash-command-gzip/index.js +45 -42
  433. package/dist/safe-bash-command-hexdump/command.js +2 -2
  434. package/dist/safe-bash-command-hexdump/index.js +2 -2
  435. package/dist/safe-bash-command-html-to-markdown/entities.js +1 -1
  436. package/dist/safe-bash-command-html-to-markdown/index.js +4 -4
  437. package/dist/safe-bash-command-html-to-markdown/input.js +3 -3
  438. package/dist/safe-bash-command-html-to-markdown/parser.js +2 -2
  439. package/dist/safe-bash-command-html-to-markdown/render.js +3 -3
  440. package/dist/safe-bash-command-htmlq/contracts.d.ts +5 -2
  441. package/dist/safe-bash-command-htmlq/index.d.ts +2 -1
  442. package/dist/safe-bash-command-htmlq/index.js +175 -49
  443. package/dist/safe-bash-command-htmlq/sync.d.ts +1 -0
  444. package/dist/safe-bash-command-imagemagick/index.js +59 -7
  445. package/dist/safe-bash-command-install/arguments.d.ts +27 -0
  446. package/dist/safe-bash-command-install/arguments.js +224 -0
  447. package/dist/safe-bash-command-install/index.d.ts +7 -0
  448. package/dist/safe-bash-command-install/index.js +942 -0
  449. package/dist/safe-bash-command-install/mode.d.ts +6 -0
  450. package/dist/safe-bash-command-install/mode.js +71 -0
  451. package/dist/safe-bash-command-install/options.d.ts +40 -0
  452. package/dist/safe-bash-command-install/options.js +27 -0
  453. package/dist/safe-bash-command-jq/index.js +1 -1
  454. package/dist/safe-bash-command-jq/jq.js +1 -1
  455. package/dist/safe-bash-command-less/index.js +42 -57
  456. package/dist/safe-bash-command-llm/command.js +1 -1
  457. package/dist/safe-bash-command-llm/elevenlabs.js +2 -2
  458. package/dist/safe-bash-command-llm/index.js +4 -4
  459. package/dist/safe-bash-command-llm/openai.js +2 -2
  460. package/dist/safe-bash-command-llm/providers/elevenlabs.js +2 -2
  461. package/dist/safe-bash-command-llm/providers/index.js +3 -3
  462. package/dist/safe-bash-command-llm/providers/openai.js +2 -2
  463. package/dist/safe-bash-command-llm/providers/shared.js +1 -1
  464. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.browser.d.ts +463 -46
  465. package/dist/safe-bash-command-mcp/index.browser.js +19308 -0
  466. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.d.ts +15 -6
  467. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.js +2835 -2783
  468. package/dist/safe-bash-command-media/LICENSE +21 -0
  469. package/dist/safe-bash-command-media/index.d.ts +6 -0
  470. package/dist/safe-bash-command-media/index.js +30 -0
  471. package/dist/safe-bash-command-media/plugin.d.ts +18 -0
  472. package/dist/safe-bash-command-media/plugin.js +11 -0
  473. package/dist/safe-bash-command-media/remote.d.ts +63 -0
  474. package/dist/safe-bash-command-media/remote.js +11 -0
  475. package/dist/safe-bash-command-media/settings.d.ts +4 -0
  476. package/dist/safe-bash-command-media/settings.js +41 -0
  477. package/dist/safe-bash-command-mktemp/LICENSE +21 -0
  478. package/dist/safe-bash-command-mktemp/command.d.ts +3 -0
  479. package/dist/safe-bash-command-mktemp/command.js +9 -0
  480. package/dist/safe-bash-command-mktemp/index.d.ts +6 -0
  481. package/dist/safe-bash-command-mktemp/index.js +25 -0
  482. package/dist/safe-bash-command-mmdc/arguments.d.ts +1 -0
  483. package/dist/safe-bash-command-mmdc/command.d.ts +2 -0
  484. package/dist/safe-bash-command-mmdc/contracts.d.ts +8 -1
  485. package/dist/safe-bash-command-mmdc/index.js +359 -7
  486. package/dist/safe-bash-command-nl/index.js +1 -1
  487. package/dist/safe-bash-command-nl/nl.js +1 -1
  488. package/dist/safe-bash-command-node/LICENSE +21 -0
  489. package/dist/safe-bash-command-node/index.d.ts +17 -0
  490. package/dist/safe-bash-command-node/index.js +328 -0
  491. package/dist/safe-bash-command-numfmt/index.js +1 -0
  492. package/dist/safe-bash-command-od/index.js +16 -8
  493. package/dist/safe-bash-command-op/index.js +62 -36
  494. package/dist/safe-bash-command-op/types.d.ts +1 -0
  495. package/dist/safe-bash-command-pandoc/command.js +3 -3
  496. package/dist/safe-bash-command-pandoc/index.d.ts +1 -0
  497. package/dist/safe-bash-command-pandoc/index.js +5 -3
  498. package/dist/safe-bash-command-pandoc/sync.d.ts +1 -0
  499. package/dist/safe-bash-command-patch/index.js +4 -4
  500. package/dist/safe-bash-command-patch/patch.js +4 -4
  501. package/dist/safe-bash-command-pdfimages/index.js +1 -1
  502. package/dist/safe-bash-command-pdfinfo/index.js +30 -5
  503. package/dist/safe-bash-command-pdftk/index.js +21 -23
  504. package/dist/safe-bash-command-pdftoppm/index.js +17 -4
  505. package/dist/safe-bash-command-pdftotext/index.js +11 -14
  506. package/dist/safe-bash-command-qpdf/index.d.ts +1 -0
  507. package/dist/safe-bash-command-qpdf/index.js +9 -6
  508. package/dist/safe-bash-command-rg/index.js +1 -1
  509. package/dist/safe-bash-command-rg/rg-command.js +1 -1
  510. package/dist/safe-bash-command-sed/index.js +1 -1
  511. package/dist/safe-bash-command-sed/sed.js +1 -1
  512. package/dist/safe-bash-command-shuf/input.d.ts +2 -2
  513. package/dist/safe-bash-command-shuf/input.js +2 -1
  514. package/dist/safe-bash-command-shuf/shuf.js +4 -2
  515. package/dist/safe-bash-command-sips/index.js +15 -7
  516. package/dist/safe-bash-command-soffice/index.js +97 -12
  517. package/dist/safe-bash-command-sponge/index.js +13 -3
  518. package/dist/safe-bash-command-sqlite3/engine.d.ts +1 -0
  519. package/dist/safe-bash-command-sqlite3/index.js +510 -70
  520. package/dist/safe-bash-command-ssconvert/formats/xlsx.js +2 -2
  521. package/dist/safe-bash-command-ssconvert/index.js +44 -22
  522. package/dist/safe-bash-command-stat/LICENSE +21 -0
  523. package/dist/safe-bash-command-stat/command.d.ts +7 -0
  524. package/dist/safe-bash-command-stat/command.js +9 -0
  525. package/dist/safe-bash-command-stat/index.d.ts +6 -0
  526. package/dist/safe-bash-command-stat/index.js +25 -0
  527. package/dist/safe-bash-command-tar/create.d.ts +1 -0
  528. package/dist/safe-bash-command-tar/create.js +2 -2
  529. package/dist/safe-bash-command-tar/extract.js +2 -2
  530. package/dist/safe-bash-command-tar/index.js +4 -4
  531. package/dist/safe-bash-command-tar/modes.js +4 -4
  532. package/dist/safe-bash-command-tar/options.js +1 -1
  533. package/dist/safe-bash-command-truncate/index.js +2 -2
  534. package/dist/safe-bash-command-tsort/command.js +2 -2
  535. package/dist/safe-bash-command-tsort/index.js +2 -2
  536. package/dist/safe-bash-command-unalias/index.d.ts +12 -0
  537. package/dist/safe-bash-command-unalias/index.js +67 -0
  538. package/dist/safe-bash-command-unrtf/index.js +37 -5
  539. package/dist/safe-bash-command-xan/argv.d.ts +1 -1
  540. package/dist/safe-bash-command-xan/argv.js +2 -2
  541. package/dist/safe-bash-command-xan/budget.d.ts +0 -1
  542. package/dist/safe-bash-command-xan/budget.js +1 -1
  543. package/dist/safe-bash-command-xan/commands.js +6 -6
  544. package/dist/safe-bash-command-xan/csv.js +2 -2
  545. package/dist/safe-bash-command-xan/index.js +8 -9
  546. package/dist/safe-bash-command-xan/io.js +4 -4
  547. package/dist/safe-bash-command-xan/options.js +1 -1
  548. package/dist/safe-bash-command-xan/selector.js +2 -2
  549. package/dist/safe-bash-command-xmllint/index.js +45 -23
  550. package/dist/safe-bash-command-xxd/index.js +47 -12
  551. package/dist/safe-bash-command-xz/command.d.ts +1 -1
  552. package/dist/safe-bash-command-xz/index.js +3 -2
  553. package/dist/safe-bash-command-yq/accounting.js +1 -1
  554. package/dist/safe-bash-command-yq/index.js +4 -2
  555. package/dist/safe-bash-command-yq/native-work.js +3 -0
  556. package/dist/safe-bash-command-yq/parser.js +2 -2
  557. package/dist/safe-bash-command-yq/query.js +8 -5
  558. package/dist/safe-bash-command-yq/toml.js +2 -2
  559. package/dist/safe-bash-command-zip/index.js +3 -3
  560. package/dist/safe-bash-compression-engine/bounded-codec.js +3 -3
  561. package/dist/safe-bash-compression-engine/codec-loader.js +2 -2
  562. package/dist/safe-bash-compression-engine/files.js +6 -6
  563. package/dist/safe-bash-compression-engine/index.js +5 -5
  564. package/dist/safe-bash-compression-engine/operand.js +6 -6
  565. package/dist/safe-bash-compression-engine/options.js +1 -1
  566. package/dist/safe-bash-compression-engine/stream.js +5 -5
  567. package/dist/safe-bash-compression-engine/zstd-decode.js +4 -4
  568. package/dist/safe-bash-contracts/command.js +3 -3
  569. package/dist/safe-bash-contracts/default-executor.js +2 -2
  570. package/dist/safe-bash-contracts/diagnostics.js +3 -3
  571. package/dist/safe-bash-contracts/escaping.js +6 -6
  572. package/dist/safe-bash-contracts/filesystem-descriptor.js +3 -3
  573. package/dist/safe-bash-contracts/filesystem-output.js +5 -5
  574. package/dist/safe-bash-contracts/http.d.ts +7 -0
  575. package/dist/safe-bash-contracts/index.js +8 -8
  576. package/dist/safe-bash-contracts/io.d.ts +2 -0
  577. package/dist/safe-bash-contracts/io.js +2 -2
  578. package/dist/safe-bash-contracts/output.js +3 -3
  579. package/dist/safe-bash-contracts/runtime-control.d.ts +2 -2
  580. package/dist/safe-bash-contracts/runtime-control.js +4 -2
  581. package/dist/safe-bash-contracts/signals.d.ts +2 -0
  582. package/dist/safe-bash-contracts/signals.js +3 -1
  583. package/dist/safe-bash-contracts/yield.js +1 -1
  584. package/dist/safe-bash-csv-engine/index.d.ts +2 -1
  585. package/dist/safe-bash-csv-engine/index.js +21 -15
  586. package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
  587. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +6 -6
  588. package/dist/safe-bash-io-engine/internal.js +1 -1
  589. package/dist/safe-bash-io-engine/shell/pattern.js +38 -18
  590. package/dist/safe-bash-line-ending-engine/convert.js +9 -204
  591. package/dist/safe-bash-line-ending-engine/encoding.js +9 -42
  592. package/dist/safe-bash-line-ending-engine/index.js +48 -0
  593. package/dist/safe-bash-line-ending-engine/info.js +9 -90
  594. package/dist/safe-bash-line-ending-engine/internal.js +15 -160
  595. package/dist/safe-bash-line-ending-engine/io.js +12 -289
  596. package/dist/safe-bash-line-ending-engine/stage.js +10 -160
  597. package/dist/safe-bash-markdown-engine/index.js +3 -3
  598. package/dist/safe-bash-metadata-engine/LICENSE +21 -0
  599. package/dist/safe-bash-metadata-engine/index.d.ts +30 -0
  600. package/dist/safe-bash-metadata-engine/index.js +82 -0
  601. package/dist/safe-bash-metadata-engine/random.d.ts +1 -0
  602. package/dist/safe-bash-metadata-engine/random.js +21 -0
  603. package/dist/safe-bash-network-engine/args.d.ts +6 -0
  604. package/dist/safe-bash-network-engine/args.js +4 -2
  605. package/dist/safe-bash-network-engine/body.js +1 -1
  606. package/dist/safe-bash-network-engine/fetch-transport.js +3 -1
  607. package/dist/safe-bash-network-engine/index.js +3 -1
  608. package/dist/safe-bash-network-engine/input.js +2 -2
  609. package/dist/safe-bash-network-engine/platform-portable.js +3 -1
  610. package/dist/safe-bash-query-engine/dates.d.ts +1 -1
  611. package/dist/safe-bash-query-engine/dates.js +1 -1
  612. package/dist/safe-bash-query-engine/index.js +6 -6
  613. package/dist/safe-bash-query-engine/interpreter.js +4 -4
  614. package/dist/safe-bash-query-engine/parser.js +1 -1
  615. package/dist/safe-bash-query-engine/query-core.js +6 -6
  616. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +10 -0
  617. package/dist/safe-bash-regex-engine/index.js +1 -1
  618. package/dist/safe-bash-regex-engine/text/regex.d.ts +1 -1
  619. package/dist/safe-bash-regex-engine/text/regex.js +1 -1
  620. package/dist/safe-bash-search-engine/ergonomic-regex.d.ts +1 -0
  621. package/dist/safe-bash-search-engine/ergonomic-regex.js +2 -2
  622. package/dist/safe-bash-search-engine/glob.js +2 -2
  623. package/dist/safe-bash-search-engine/grep.js +17 -10
  624. package/dist/safe-bash-search-engine/matcher.d.ts +2 -2
  625. package/dist/safe-bash-search-engine/matcher.js +13 -9
  626. package/dist/safe-bash-search-engine/options.d.ts +2 -0
  627. package/dist/safe-bash-search-engine/options.js +1 -1
  628. package/dist/safe-bash-search-engine/output.js +1 -1
  629. package/dist/safe-bash-search-engine/shared.js +2 -2
  630. package/dist/safe-bash-search-engine/walk.js +15 -3
  631. package/dist/safe-bash-text-stream-engine/stream-format/shared.d.ts +1 -1
  632. package/dist/safe-bash-text-stream-engine/stream-format/shared.js +2 -1
  633. package/dist/safe-bash-xml-engine/document.js +3 -3
  634. package/dist/safe-bash-xml-engine/evaluate.js +2 -2
  635. package/dist/safe-bash-xml-engine/index.js +4 -4
  636. package/dist/safe-bash-xml-engine/io.js +7 -2
  637. package/dist/safe-bash-xml-engine/limits.d.ts +0 -2
  638. package/dist/safe-bash-xml-engine/limits.js +1 -1
  639. package/dist/safe-bash-xml-engine/query.js +3 -3
  640. package/dist/safe-bash-zip-engine/index.js +3 -3
  641. package/dist/safe-bash-zip-engine/zip/repair.js +3 -3
  642. package/dist/safe-bash-zip-engine/zip/safety.js +1 -1
  643. package/dist/safe-bash-zip-engine/zip/sfx.js +3 -3
  644. package/dist/safe-bash-zip-engine/zip/volumes.js +1 -1
  645. package/dist/safe-bash-zip-engine/zip-format.js +3 -3
  646. package/dist/safe-playwright-cloudflare/browser-snapshot-json.js +2 -2
  647. package/dist/safe-playwright-cloudflare/browser-snapshot-references.js +1 -1
  648. package/dist/safe-playwright-cloudflare/browser-socket-closure.js +18 -3
  649. package/dist/safe-playwright-cloudflare/shell-browser-resource.js +1 -1
  650. package/dist/xlsx-ast/xlsx.js +6 -5
  651. package/package.json +112 -98
  652. package/dist/media-cli/bytes.d.ts +0 -8
  653. package/dist/media-cli/bytes.js +0 -40
  654. package/dist/media-cli/concat.d.ts +0 -30
  655. package/dist/media-cli/concat.js +0 -197
  656. package/dist/media-cli/content.js +0 -66
  657. package/dist/media-cli/dependency-grammars.d.ts +0 -12
  658. package/dist/media-cli/dependency-grammars.js +0 -557
  659. package/dist/media-cli/discover.js +0 -286
  660. package/dist/media-cli/engine.js +0 -190
  661. package/dist/media-cli/filename-expression.js +0 -147
  662. package/dist/media-cli/filesystem.js +0 -35
  663. package/dist/media-cli/frontend-contract.js +0 -8
  664. package/dist/media-cli/frontend-issues.d.ts +0 -6
  665. package/dist/media-cli/frontend-issues.js +0 -9
  666. package/dist/media-cli/imagemagick-operand.d.ts +0 -42
  667. package/dist/media-cli/imagemagick-operand.js +0 -229
  668. package/dist/media-cli/imagemagick-references.d.ts +0 -7
  669. package/dist/media-cli/imagemagick-references.js +0 -42
  670. package/dist/media-cli/imagemagick.generated.js +0 -3254
  671. package/dist/media-cli/imagemagick.js +0 -615
  672. package/dist/media-cli/index.js +0 -12
  673. package/dist/media-cli/mvg.d.ts +0 -10
  674. package/dist/media-cli/mvg.js +0 -102
  675. package/dist/media-cli/network.js +0 -78
  676. package/dist/media-cli/options.generated.js +0 -3312
  677. package/dist/media-cli/preset.d.ts +0 -11
  678. package/dist/media-cli/preset.js +0 -57
  679. package/dist/media-cli/resolution-path.d.ts +0 -23
  680. package/dist/media-cli/resolution-path.js +0 -217
  681. package/dist/media-cli/resolver.js +0 -494
  682. package/dist/media-cli/resources.d.ts +0 -16
  683. package/dist/media-cli/resources.js +0 -187
  684. package/dist/media-cli/shim.js +0 -52
  685. package/dist/media-cli/tee.d.ts +0 -6
  686. package/dist/media-cli/tee.js +0 -38
  687. package/dist/office-package/zip-sync.js +0 -111
  688. package/dist/remote-execution/binary.js +0 -178
  689. package/dist/remote-execution/callback-result.js +0 -26
  690. package/dist/remote-execution/canonical-capabilities.d.ts +0 -5
  691. package/dist/remote-execution/canonical-capabilities.js +0 -45
  692. package/dist/remote-execution/canonical-metadata.d.ts +0 -4
  693. package/dist/remote-execution/canonical-metadata.js +0 -32
  694. package/dist/remote-execution/client.js +0 -824
  695. package/dist/remote-execution/deployment.js +0 -131
  696. package/dist/remote-execution/descriptors.js +0 -267
  697. package/dist/remote-execution/effects.js +0 -357
  698. package/dist/remote-execution/endpoint.js +0 -224
  699. package/dist/remote-execution/files.js +0 -291
  700. package/dist/remote-execution/hosting-operation.js +0 -26
  701. package/dist/remote-execution/hosting-request.d.ts +0 -4
  702. package/dist/remote-execution/hosting-request.js +0 -12
  703. package/dist/remote-execution/hosting-stream.d.ts +0 -8
  704. package/dist/remote-execution/hosting-stream.js +0 -64
  705. package/dist/remote-execution/index.js +0 -18
  706. package/dist/remote-execution/invocation-admission.d.ts +0 -3
  707. package/dist/remote-execution/invocation-admission.js +0 -17
  708. package/dist/remote-execution/job-binding.js +0 -1269
  709. package/dist/remote-execution/materializations.js +0 -284
  710. package/dist/remote-execution/modal-driver.js +0 -90
  711. package/dist/remote-execution/native-result.d.ts +0 -3
  712. package/dist/remote-execution/native-result.js +0 -16
  713. package/dist/remote-execution/output-freshness.d.ts +0 -4
  714. package/dist/remote-execution/output-freshness.js +0 -19
  715. package/dist/remote-execution/output-retrieval.js +0 -474
  716. package/dist/remote-execution/process-http.js +0 -607
  717. package/dist/remote-execution/process.js +0 -577
  718. package/dist/remote-execution/protocol.js +0 -208
  719. package/dist/remote-execution/relay.js +0 -91
  720. package/dist/remote-execution/rest-driver.js +0 -93
  721. package/dist/remote-execution/upload-descriptor.js +0 -201
  722. package/dist/remote-execution/upload-protocol.js +0 -62
  723. package/dist/remote-execution/uploads.js +0 -324
  724. package/dist/remote-execution/wire-json.d.ts +0 -4
  725. package/dist/remote-execution/wire-json.js +0 -44
  726. package/dist/remote-execution/wire-validation.js +0 -131
  727. package/dist/remote-execution/wire.generated.js +0 -4224
  728. package/dist/safe-bash/chunks/chunk-GETUOD5D.js +0 -161
  729. package/dist/safe-bash/chunks/chunk-IWDICZVK.js +0 -20
  730. package/dist/safe-bash/chunks/chunk-MHMMRCYC.js +0 -3464
  731. package/dist/safe-bash/chunks/chunk-UE5KZDEK.js +0 -77
  732. package/dist/safe-bash/chunks/chunk-VSAJ4OTM.js +0 -962
  733. package/dist/safe-bash/chunks/csvkit-TACDU7FC.js +0 -1618
  734. package/dist/safe-bash/chunks/implementation-MLFHUQ5M.js +0 -133
  735. package/dist/safe-bash/commands/csvkit/sync.js +0 -1639
  736. package/dist/safe-bash/commands/node/unconfigured.d.ts +0 -3
  737. package/dist/safe-bash/commands/node/unconfigured.js +0 -10
  738. package/dist/safe-bash/commands/pandoc/implementation.d.ts +0 -8
  739. package/dist/safe-bash/commands/pandoc/implementation.js +0 -94
  740. package/dist/safe-bash-mcp/index.browser.js +0 -9157
  741. package/dist/safe-bash/command-chunks/{chunk-ZRRBXU3M.js → chunk-GIN5GUDP.js} +4 -4
  742. package/dist/safe-bash/command-chunks/{chunk-LAOM65EE.js → chunk-IEO4XVN6.js} +3 -3
  743. package/dist/safe-bash/command-chunks/{chunk-364TMWBT.js → chunk-MWREVL44.js} +6 -6
  744. package/dist/safe-bash/command-chunks/{chunk-464RVBGB.js → chunk-Q5TDKFHK.js} +3 -3
  745. package/dist/safe-bash/command-chunks/{chunk-AJR3AQYA.js → chunk-UKX3LZHR.js} +0 -0
  746. package/dist/safe-bash/command-chunks/{chunk-XIIBTGC5.js → chunk-XPXEQKRW.js} +9 -9
  747. package/dist/safe-bash/command-chunks/{chunk-FDBUV4HJ.js → chunk-Y4HGTG3E.js} +3 -3
  748. /package/dist/{safe-bash/commands/csvkit → safe-bash-command-csvkit}/sync.d.ts +0 -0
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  parseSelection,
3
3
  resolveSelection
4
- } from "./chunk-LCF3OB7P.js";
4
+ } from "./chunk-RBME3JEH.js";
5
5
  import {
6
6
  Writer
7
7
  } from "./chunk-VM2ZMWHQ.js";
@@ -10,21 +10,21 @@ import {
10
10
  outputOperation,
11
11
  preflight,
12
12
  publish
13
- } from "./chunk-JDYXY44P.js";
13
+ } from "./chunk-FJURV46Y.js";
14
14
  import {
15
15
  checkedAdd,
16
16
  inferDelimiter,
17
17
  unsigned
18
- } from "./chunk-Z45N42QC.js";
18
+ } from "./chunk-DPAYAVMS.js";
19
19
  import {
20
20
  boundedSort
21
21
  } from "./chunk-HEYKESED.js";
22
22
  import {
23
23
  Scanner
24
- } from "./chunk-E55UKBIE.js";
24
+ } from "./chunk-DBAT3IK2.js";
25
25
  import {
26
26
  XanError
27
- } from "./chunk-QOKBZFFD.js";
27
+ } from "./chunk-U3MMODA5.js";
28
28
  import {
29
29
  init_buffer
30
30
  } from "./chunk-HX3SHTCE.js";
@@ -510,6 +510,214 @@ async function* concatenate(args, scope, budget, writer) {
510
510
  }
511
511
  }
512
512
 
513
+ // packages/safe-bash-command-xan/src/presentation.ts
514
+ init_buffer();
515
+ import { escapeText } from "../../safe-bash-contracts/escaping.js";
516
+ import { widthOf } from "../../safe-bash-command-column/display.js";
517
+
518
+ // packages/safe-bash-command-xan/src/expression.ts
519
+ init_buffer();
520
+ async function expressions(text, header, noHeaders, budget) {
521
+ budget.bound("maxSelectorBytes", await budget.textSize(text));
522
+ budget.hold(text.length * 4);
523
+ let offset = 0;
524
+ const space = () => {
525
+ while (" \r\n".includes(text[offset] ?? "\0")) {
526
+ offset++;
527
+ budget.work();
528
+ }
529
+ };
530
+ const identifier = () => {
531
+ const start = offset;
532
+ while (offset < text.length) {
533
+ const c = text.charCodeAt(offset);
534
+ if (!(c >= 65 && c <= 90 || c >= 97 && c <= 122 || c === 95 || offset > start && c >= 48 && c <= 57)) break;
535
+ offset++;
536
+ budget.work();
537
+ }
538
+ return text.slice(start, offset);
539
+ };
540
+ const numeric = (value) => {
541
+ const number = typeof value === "number" ? value : decimalNumber(value, budget);
542
+ if (number === void 0 || !Number.isFinite(number)) throw new XanError("expression requires a finite number");
543
+ return number;
544
+ };
545
+ const parse = (minimum, depth) => {
546
+ budget.bound("maxSelectorDepth", depth);
547
+ if (depth > 128) throw new XanError("expression nesting is too deep");
548
+ budget.add("maxSelectorNodes", 1);
549
+ budget.hold(64);
550
+ space();
551
+ let left;
552
+ const char = text[offset];
553
+ if (char === "+" || char === "-") {
554
+ offset++;
555
+ const inner = parse(3, depth + 1);
556
+ left = (row) => (char === "-" ? -1 : 1) * numeric(inner(row));
557
+ } else if (char === "(") {
558
+ offset++;
559
+ left = parse(0, depth + 1);
560
+ space();
561
+ if (text[offset++] !== ")") throw new XanError("expected closing parenthesis");
562
+ } else if (char === "'" || char === '"') {
563
+ offset++;
564
+ let value = "";
565
+ while (offset < text.length && text[offset] !== char) {
566
+ budget.work();
567
+ value += text[offset++];
568
+ }
569
+ if (text[offset++] !== char) throw new XanError("unclosed expression string");
570
+ left = () => value;
571
+ } else if (char !== void 0 && (char >= "0" && char <= "9" || char === ".")) {
572
+ const start = offset;
573
+ while (offset < text.length && "0123456789.eE".includes(text[offset])) {
574
+ const previous = text[offset++];
575
+ budget.work();
576
+ if ((previous === "e" || previous === "E") && (text[offset] === "+" || text[offset] === "-")) offset++;
577
+ }
578
+ const value = decimalNumber(text.slice(start, offset), budget);
579
+ if (value === void 0) throw new XanError("invalid expression number");
580
+ left = () => value;
581
+ } else {
582
+ const name = identifier();
583
+ if (!name) throw new XanError("expected expression");
584
+ let column = -1;
585
+ if (!noHeaders) for (let i = 0; i < (header?.width ?? 0); i++) {
586
+ budget.work();
587
+ if (cellText(header.cells[i].decoded.view(), budget) === name) {
588
+ column = i;
589
+ break;
590
+ }
591
+ }
592
+ if (column < 0) throw new XanError(`unknown expression column: ${name}`);
593
+ left = (row) => cellText(row.cells[column].decoded.view(), budget);
594
+ }
595
+ let chainDepth = depth;
596
+ while (true) {
597
+ space();
598
+ const operator = text[offset] ?? "";
599
+ const precedence = operator === "+" || operator === "-" ? 1 : operator === "*" || operator === "/" || operator === "%" ? 2 : -1;
600
+ if (precedence < minimum) break;
601
+ budget.bound("maxSelectorDepth", ++chainDepth);
602
+ if (chainDepth > 128) throw new XanError("expression nesting is too deep");
603
+ offset++;
604
+ const right = parse(precedence + 1, depth + 1), previous = left;
605
+ left = (row) => {
606
+ budget.work();
607
+ const a = numeric(previous(row)), b = numeric(right(row));
608
+ const value = operator === "+" ? a + b : operator === "-" ? a - b : operator === "*" ? a * b : operator === "/" ? a / b : a % b;
609
+ if (!Number.isFinite(value)) throw new XanError("non-finite arithmetic result");
610
+ return value;
611
+ };
612
+ }
613
+ return left;
614
+ };
615
+ const result = [];
616
+ for (; ; ) {
617
+ space();
618
+ const start = offset;
619
+ const evaluate = parse(0, 1);
620
+ let name = text.slice(start, offset).trim();
621
+ if (text.slice(offset, offset + 2).toLowerCase() === "as" && " \r\n".includes(text[offset + 2] ?? "\0")) {
622
+ offset += 2;
623
+ space();
624
+ name = identifier();
625
+ if (!name) throw new XanError("expected expression alias");
626
+ space();
627
+ }
628
+ budget.bound("maxSelectedColumns", result.length + 1);
629
+ budget.hold(64);
630
+ result.push({ name, evaluate });
631
+ const checkpoint = budget.checkpoint();
632
+ if (checkpoint) await checkpoint;
633
+ if (offset === text.length) break;
634
+ if (text[offset++] !== ",") throw new XanError("unexpected expression syntax");
635
+ }
636
+ return result;
637
+ }
638
+
639
+ // packages/safe-bash-command-xan/src/presentation.ts
640
+ async function presentationRows(args, scope, budget, writer) {
641
+ const scanner = scope.open(args.inputs[0], args);
642
+ const first = await scanner.next();
643
+ if (first) scope.own(first.free);
644
+ const table = args.command === "table";
645
+ const source = args.command === "map" ? args.operand : args.evaluateFile ? await scope.expression(args.selection) : args.selection;
646
+ const projections = table ? [] : await expressions(source, first, args.noHeaders, budget);
647
+ if (args.command === "map" && projections.length !== 1) throw new XanError("map requires one expression");
648
+ budget.hold((first?.width ?? 0) * 32);
649
+ const selected = table ? await resolveSelection(await parseSelection(args.selection, budget), first?.cells.map((cell) => cell.decoded.view()) ?? [], args.noHeaders, budget) : [];
650
+ const lines = [], widths = selected.map(() => 0);
651
+ let retained = 0;
652
+ const hold = (size) => {
653
+ budget.hold(size);
654
+ retained += size;
655
+ };
656
+ let row = first;
657
+ return (async function* () {
658
+ try {
659
+ if (!table && !args.noHeaders) {
660
+ yield* textRow(args.command === "map" ? [...first?.cells.map((cell) => cell.decoded.view()) ?? [], args.rightSelection] : projections.map((projection) => projection.name), writer, budget);
661
+ first?.free();
662
+ row = await scanner.next();
663
+ }
664
+ while (row) {
665
+ if (row.width !== first?.width) throw new XanError("inconsistent field count");
666
+ if (table) {
667
+ hold(selected.length * 64 + 32);
668
+ const line = [];
669
+ for (let i = 0; i < selected.length; i++) {
670
+ const bytes = row.cells[selected[i]].decoded.view();
671
+ hold(bytes.length * 16);
672
+ const value = escapeText(cellText(bytes, budget), "diagnostic");
673
+ let width2 = 0;
674
+ for (const character of value) {
675
+ budget.work();
676
+ width2 += widthOf(character.codePointAt(0));
677
+ }
678
+ widths[i] = Math.max(widths[i], width2);
679
+ line.push({ text: value, width: width2 });
680
+ }
681
+ lines.push(line);
682
+ } else {
683
+ const size = row.cells.reduce((sum, cell) => sum + cell.decoded.length * 4, 0) * Math.max(1, projections.length);
684
+ budget.hold(size);
685
+ try {
686
+ const values = projections.map((projection) => String(projection.evaluate(row)));
687
+ yield* textRow(args.command === "map" ? [...row.cells.map((cell) => cell.decoded.view()), ...values] : values, writer, budget);
688
+ } finally {
689
+ budget.release(size);
690
+ }
691
+ }
692
+ row.free();
693
+ row = await scanner.next();
694
+ }
695
+ if (table) {
696
+ const size = widths.reduce((sum, width2) => sum + width2 + 2, 1);
697
+ for (let i = 0; i < lines.length; i++) {
698
+ const textSize = lines[i].reduce((sum, value) => sum + value.text.length, 0);
699
+ const temporary = (size + textSize) * 4;
700
+ budget.hold(temporary);
701
+ try {
702
+ budget.work(size);
703
+ const c = budget.checkpoint();
704
+ if (c) await c;
705
+ yield* emitted(await writer.text(lines[i].map((value, column) => value.text + " ".repeat(widths[column] - value.width)).join(" ") + "\n"), budget);
706
+ if (i === 0 && !args.noHeaders) yield* emitted(await writer.text(widths.map((width2) => "-".repeat(width2)).join(" ") + "\n"), budget);
707
+ } finally {
708
+ budget.release(temporary);
709
+ }
710
+ }
711
+ }
712
+ } finally {
713
+ row?.free();
714
+ first?.free();
715
+ budget.release(retained);
716
+ await scanner.close();
717
+ }
718
+ })();
719
+ }
720
+
513
721
  // packages/safe-bash-command-xan/src/condition.ts
514
722
  init_buffer();
515
723
  async function condition(expression, headers, noHeaders, budget, scope) {
@@ -872,13 +1080,13 @@ async function* transformRows(args, scope, budget, writer) {
872
1080
  const predicate = args.command === "filter" ? await condition(args.operand, first, args.noHeaders, budget, scope) : void 0;
873
1081
  const pattern = args.command === "search" ? await budget.encode(options.has("ignore-case") ? args.operand.toLowerCase() : args.operand) : void 0;
874
1082
  if (pattern) scope.own(() => budget.release(pattern.length));
875
- const limit = options.has("limit") ? await unsigned(options.get("limit"), "--limit", budget) : void 0;
1083
+ const limit = options.has("limit") ? await unsigned(options.get("limit"), "--limit", budget) : args.command === "top" ? 10n : void 0;
876
1084
  let matches = 0n;
877
1085
  for await (const row of source) {
878
1086
  let held = false;
879
1087
  try {
880
- if (args.command === "sort" || args.command === "reverse") {
881
- if (options.has("numeric")) for (const position of selected) numericCell(row.cells[position].decoded.view(), budget);
1088
+ if (args.command === "sort" || args.command === "reverse" || args.command === "top") {
1089
+ if (options.has("numeric") || args.command === "top") for (const position of selected) numericCell(row.cells[position].decoded.view(), budget);
882
1090
  budget.hold(32);
883
1091
  retained.push(row);
884
1092
  held = true;
@@ -926,15 +1134,16 @@ async function* transformRows(args, scope, budget, writer) {
926
1134
  for (const position of selected) {
927
1135
  const a = left.cells[position].decoded.view(), b = right.cells[position].decoded.view();
928
1136
  let order;
929
- if (options.has("numeric")) {
1137
+ if (options.has("numeric") || args.command === "top") {
930
1138
  order = Math.sign(numericCell(a, budget) - numericCell(b, budget));
931
1139
  } else order = await compareBytes(a, b, budget);
932
- if (order) return options.has("reverse") ? -order : order;
1140
+ if (order) return options.has("reverse") !== (args.command === "top") ? -order : order;
933
1141
  }
934
1142
  return 0;
935
1143
  };
936
- if (args.command === "sort") await boundedSort(retained, 32, budget, compare);
1144
+ if (args.command === "sort" || args.command === "top") await boundedSort(retained, 32, budget, compare);
937
1145
  for (let i = 0; i < retained.length; i++) {
1146
+ if (args.command === "top" && BigInt(i) >= limit) break;
938
1147
  budget.work();
939
1148
  const c = budget.checkpoint();
940
1149
  if (c) await c;
@@ -1076,7 +1285,8 @@ function width(row, expected) {
1076
1285
  if (row.width !== expected) throw new XanError(`CSV error: record ${row.number} (byte: ${row.offset}): found record with ${row.width} fields, but the previous record has ${expected} fields`);
1077
1286
  }
1078
1287
  async function prepareRows(args, selection, scope, budget, writer) {
1079
- if (args.help) return emitted2(await writer.text("xan: CSV tools for virtual files and byte streams\nCommands: headers (h), count, select, slice, head, tail, sort, search,\n filter, reverse, rename, drop, stats, freq (frequency), join,\n dedup, enum, transpose, agg, groupby, to, from, cat, split\nCommon: -h --help, -d --delimiter BYTE, -o --output PATH\nheaders: -j --just-names, --csv, -s --start N, --color auto|never\ncount/select/slice: -n --no-headers\ncount: -H/--human-readable, -c/--check-alignment, -a/--approx, -p/--parallel, -t/--threads N\nselect: literal selection or -e/--evaluate COLUMN, -f/--evaluate-file PATH;\nslice: -s/--start, --skip, -e/--end, -l/--len, -i/--index, -I/--indices, -L/--last\nslice bytes: -B/--byte-offset N, --end-byte N, --raw\nslice conditions: -S/--start-condition EXPR, -E/--end-condition EXPR\nConditions: named column comparisons with string/number literals.\nhead/tail: -l/--limit N (default 10)\nsort: -s/--select COLUMNS, -N/--numeric, -R/--reverse, -u/--uniq\nsearch: PATTERN; -s/--select, -e/--exact, -i/--ignore-case, -v/--invert-match\nfilter: COLUMN comparison LITERAL; -v/--invert-match\nrename: NAMES; -s/--select COLUMNS; drop: SELECTION\nstats/freq: -s/--select COLUMNS; freq: -l/--limit N, -A/--all, -N/--no-extra\njoin: COLUMNS LEFT [RIGHT_COLUMNS] RIGHT; --left/--right/--full/--semi/--anti/--cross\n --drop-key none|left|right|both, --nulls, -i/--ignore-case\nSearch uses literal substrings; filter supports the comparisons above.\nagg/groupby: aggregate calls (count, sum, mean, min, max, first, last) with optional AS names.\nto: json, jsonl, ndjson, txt; from: -f json, jsonl, ndjson, txt, raw.\ncat: rows or cols [--pad]; split: -S SIZE, -O DIRECTORY, -f TEMPLATE.\nOther expressions, formats and forced color are unsupported.\nCount execution options use exact sequential counting.\n"), budget);
1288
+ if (args.help) return emitted2(await writer.text("xan: CSV tools for virtual files and byte streams\nCommands: headers (h), count, select, slice, head, tail, sort, search,\n filter, reverse, rename, drop, stats, freq (frequency), join,\n dedup, enum, transpose, agg, groupby, to, from, cat, split, table, top, map\nCommon: -h --help, -d --delimiter BYTE, -o --output PATH\nheaders: -j --just-names, --csv, -s --start N, --color auto|never\ncount/select/slice: -n --no-headers\ncount: -H/--human-readable, -c/--check-alignment, -a/--approx, -p/--parallel, -t/--threads N\nselect: literal selection or -e/--evaluate EXPRESSIONS, -f/--evaluate-file PATH;\nslice: -s/--start, --skip, -e/--end, -l/--len, -i/--index, -I/--indices, -L/--last\nslice bytes: -B/--byte-offset N, --end-byte N, --raw\nslice conditions: -S/--start-condition EXPR, -E/--end-condition EXPR\nConditions: named column comparisons with string/number literals.\nhead/tail: -l/--limit N (default 10)\nsort: -s/--select COLUMNS, -N/--numeric, -R/--reverse, -u/--uniq\nsearch: PATTERN; -s/--select, -e/--exact, -i/--ignore-case, -v/--invert-match\nfilter: COLUMN comparison LITERAL; -v/--invert-match\nrename: NAMES; -s/--select COLUMNS; drop: SELECTION\nstats/freq: -s/--select COLUMNS; freq: -l/--limit N, -A/--all, -N/--no-extra\njoin: COLUMNS LEFT [RIGHT_COLUMNS] RIGHT; --left/--right/--full/--semi/--anti/--cross\n --drop-key none|left|right|both, --nulls, -i/--ignore-case\nSearch uses literal substrings; filter supports the comparisons above.\nagg/groupby: aggregate calls (count, sum, mean, min, max, first, last) with optional AS names.\nto: json, jsonl, ndjson, txt; from: -f json, jsonl, ndjson, txt, raw.\ncat: rows or cols [--pad]; split: -S SIZE, -O DIRECTORY, -f TEMPLATE.\nselect -e: arithmetic (+ - * / %), parentheses, literals, columns and AS aliases.\nmap: EXPRESSION COLUMN; append one computed column.\ntop: COLUMNS; -l/--limit N (default 10), -R/--reverse (smallest first).\ntable: aligned text; -s/--select COLUMNS, -n/--no-headers.\nOther expressions, formats and forced color are unsupported.\nCount execution options use exact sequential counting.\n"), budget);
1289
+ if (args.command === "map" || args.command === "table" || args.command === "select" && (args.evaluate || args.evaluateFile)) return presentationRows(args, scope, budget, writer);
1080
1290
  if (["dedup", "enum", "transpose", "agg", "groupby", "to", "from", "cat", "split"].includes(args.command)) return extendedRows(args, scope, budget, writer);
1081
1291
  if (!["headers", "count", "select", "drop", "slice"].includes(args.command)) return transformRows(args, scope, budget, writer);
1082
1292
  if (args.command === "headers") return prepareHeaders(args, scope, budget, writer);
@@ -90,103 +90,110 @@ function createNlWithSettings(limits) {
90
90
  const chunk = outBuf.slice(0, outUsed);
91
91
  outUsed = 0;
92
92
  await session.output(chunk);
93
+ await session.buffered.flush();
93
94
  }
94
95
  };
95
96
  let current = body, number = start, blanks = 0;
96
97
  await session.files(session.names(parsed.operands), async (source) => {
97
- await forEachRecord(source, session, (record) => {
98
- let section = -1;
99
- if (dLen > 0 && record[0] === d0 && (record.length === dLen || record.length === dLen * 2 || record.length === dLen * 3)) {
100
- const bytes = bytesFrom(record.buffer, record.byteOffset, record.byteLength);
101
- section = delimiters.findIndex((candidate) => equalBytes(candidate, bytes));
102
- }
103
- if (section >= 0) {
104
- current = section === 0 ? footer : section === 1 ? body : header;
105
- if (!parsed.flags.has("p")) number = start;
106
- if (canBatch) {
107
- session.admitOutput(1);
108
- if (outUsed + 1 <= outBuf.length && flushedFirst && outUsed + 1 < 8192) {
109
- outBuf[outUsed++] = 10;
110
- return;
98
+ try {
99
+ await forEachRecord(source, session, (record) => {
100
+ let section = -1;
101
+ if (dLen > 0 && record[0] === d0 && (record.length === dLen || record.length === dLen * 2 || record.length === dLen * 3)) {
102
+ const bytes = bytesFrom(record.buffer, record.byteOffset, record.byteLength);
103
+ section = delimiters.findIndex((candidate) => equalBytes(candidate, bytes));
104
+ }
105
+ if (section >= 0) {
106
+ current = section === 0 ? footer : section === 1 ? body : header;
107
+ if (!parsed.flags.has("p")) number = start;
108
+ if (canBatch) {
109
+ session.admitOutput(outUsed + 1);
110
+ if (outUsed + 1 <= outBuf.length && flushedFirst && outUsed + 1 < 8192) {
111
+ outBuf[outUsed++] = 10;
112
+ return;
113
+ }
114
+ return (async () => {
115
+ if (outUsed + 1 > outBuf.length) await flushOut();
116
+ outBuf[outUsed++] = 10;
117
+ if (!flushedFirst || outUsed >= 8192) await flushOut();
118
+ })();
119
+ } else {
120
+ return session.text("\n");
111
121
  }
122
+ }
123
+ if (current !== "a" && current !== "t" && current !== "n") {
124
+ const patternStyle = current;
112
125
  return (async () => {
113
- if (outUsed + 1 > outBuf.length) await flushOut();
114
- outBuf[outUsed++] = 10;
115
- if (!flushedFirst || outUsed >= 8192) await flushOut();
126
+ const numbered2 = await patternStyle.find(latin1Text(bytesFrom(record.buffer, record.byteOffset, record.byteLength)), budget) !== void 0;
127
+ await emitRecord(record, numbered2);
116
128
  })();
117
- } else {
118
- return session.text("\n");
119
129
  }
120
- }
121
- if (current !== "a" && current !== "t" && current !== "n") {
122
- const patternStyle = current;
123
- return (async () => {
124
- const numbered2 = await patternStyle.find(latin1Text(bytesFrom(record.buffer, record.byteOffset, record.byteLength)), budget) !== void 0;
125
- await emitRecord(record, numbered2);
126
- })();
127
- }
128
- let numbered;
129
- if (current === "a") {
130
- numbered = record.length > 0 || ++blanks === join || join === 1;
131
- if (numbered) blanks = 0;
132
- } else if (current === "t") numbered = record.length > 0;
133
- else numbered = false;
134
- if (canBatch) {
135
- if (numbered) {
136
- if (number < -(1n << 63n) || number >= 1n << 63n) throw new UsageError("line number overflow");
137
- const label = number.toString();
138
- const pad = Math.max(0, width - label.length);
139
- const totalLen = label.length + pad + separator.length + record.length + 1;
140
- if (totalLen <= outBuf.length && outUsed + totalLen <= outBuf.length) {
141
- session.admitOutput(totalLen);
142
- if (format === "ln") {
143
- for (let i = 0; i < label.length; i++) outBuf[outUsed++] = label.charCodeAt(i);
144
- outBuf.fill(32, outUsed, outUsed + pad);
145
- outUsed += pad;
146
- } else if (format === "rz" && number < 0n) {
147
- outBuf[outUsed++] = 45;
148
- outBuf.fill(48, outUsed, outUsed + pad);
149
- outUsed += pad;
150
- for (let i = 1; i < label.length; i++) outBuf[outUsed++] = label.charCodeAt(i);
151
- } else {
152
- outBuf.fill(format === "rz" ? 48 : 32, outUsed, outUsed + pad);
153
- outUsed += pad;
154
- for (let i = 0; i < label.length; i++) outBuf[outUsed++] = label.charCodeAt(i);
130
+ let numbered;
131
+ if (current === "a") {
132
+ numbered = record.length > 0 || ++blanks === join || join === 1;
133
+ if (numbered) blanks = 0;
134
+ } else if (current === "t") numbered = record.length > 0;
135
+ else numbered = false;
136
+ if (canBatch) {
137
+ if (numbered) {
138
+ if (number < -(1n << 63n) || number >= 1n << 63n) throw new UsageError("line number overflow");
139
+ const label = number.toString();
140
+ const pad = Math.max(0, width - label.length);
141
+ const totalLen = label.length + pad + separator.length + record.length + 1;
142
+ if (totalLen <= outBuf.length && outUsed + totalLen <= outBuf.length) {
143
+ session.admitOutput(outUsed + totalLen);
144
+ if (format === "ln") {
145
+ for (let i = 0; i < label.length; i++) outBuf[outUsed++] = label.charCodeAt(i);
146
+ outBuf.fill(32, outUsed, outUsed + pad);
147
+ outUsed += pad;
148
+ } else if (format === "rz" && number < 0n) {
149
+ outBuf[outUsed++] = 45;
150
+ outBuf.fill(48, outUsed, outUsed + pad);
151
+ outUsed += pad;
152
+ for (let i = 1; i < label.length; i++) outBuf[outUsed++] = label.charCodeAt(i);
153
+ } else {
154
+ outBuf.fill(format === "rz" ? 48 : 32, outUsed, outUsed + pad);
155
+ outUsed += pad;
156
+ for (let i = 0; i < label.length; i++) outBuf[outUsed++] = label.charCodeAt(i);
157
+ }
158
+ outBuf.set(separator, outUsed);
159
+ outUsed += separator.length;
160
+ outBuf.set(record, outUsed);
161
+ outUsed += record.length;
162
+ outBuf[outUsed++] = 10;
163
+ number += increment;
164
+ if (!flushedFirst || outUsed >= 8192) return flushOut();
165
+ return;
166
+ }
167
+ } else {
168
+ const padLen = width + separator.length;
169
+ const totalLen = padLen + record.length + 1;
170
+ if (totalLen <= outBuf.length && outUsed + totalLen <= outBuf.length) {
171
+ session.admitOutput(outUsed + totalLen);
172
+ outBuf.fill(32, outUsed, outUsed + padLen);
173
+ outUsed += padLen;
174
+ outBuf.set(record, outUsed);
175
+ outUsed += record.length;
176
+ outBuf[outUsed++] = 10;
177
+ if (!flushedFirst || outUsed >= 8192) return flushOut();
178
+ return;
155
179
  }
156
- outBuf.set(separator, outUsed);
157
- outUsed += separator.length;
158
- outBuf.set(record, outUsed);
159
- outUsed += record.length;
160
- outBuf[outUsed++] = 10;
161
- number += increment;
162
- if (!flushedFirst || outUsed >= 8192) return flushOut();
163
- return;
164
- }
165
- } else {
166
- const padLen = width + separator.length;
167
- const totalLen = padLen + record.length + 1;
168
- if (totalLen <= outBuf.length && outUsed + totalLen <= outBuf.length) {
169
- session.admitOutput(totalLen);
170
- outBuf.fill(32, outUsed, outUsed + padLen);
171
- outUsed += padLen;
172
- outBuf.set(record, outUsed);
173
- outUsed += record.length;
174
- outBuf[outUsed++] = 10;
175
- if (!flushedFirst || outUsed >= 8192) return flushOut();
176
- return;
177
180
  }
178
181
  }
182
+ return emitRecord(record, numbered);
183
+ }, flushOut);
184
+ } finally {
185
+ if (!session.signal.aborted) {
186
+ await flushOut();
187
+ await session.buffered.flush();
179
188
  }
180
- return emitRecord(record, numbered);
181
- });
182
- await flushOut();
189
+ }
183
190
  async function emitRecord(record, numbered) {
184
191
  if (numbered) {
185
192
  if (number < -(1n << 63n) || number >= 1n << 63n) throw new UsageError("line number overflow");
186
193
  const label = number.toString();
187
194
  const pad = Math.max(0, width - label.length);
188
195
  const totalLen = label.length + pad + separator.length + record.length + 1;
189
- session.admitOutput(totalLen);
196
+ session.admitOutput(outUsed + totalLen);
190
197
  if (canBatch && totalLen <= outBuf.length) {
191
198
  if (outUsed + totalLen > outBuf.length) await flushOut();
192
199
  if (format === "ln") {
@@ -230,7 +237,7 @@ function createNlWithSettings(limits) {
230
237
  } else {
231
238
  const padLen = width + separator.length;
232
239
  const totalLen = padLen + record.length + 1;
233
- session.admitOutput(totalLen);
240
+ session.admitOutput(outUsed + totalLen);
234
241
  if (canBatch && totalLen <= outBuf.length) {
235
242
  if (outUsed + totalLen > outBuf.length) await flushOut();
236
243
  outBuf.fill(32, outUsed, outUsed + padLen);
@@ -167,7 +167,7 @@ function tryExecuteJqFastSync(context, limits) {
167
167
  const syncSink = typeof context.stdout.writeSync === "function" ? context.stdout : void 0;
168
168
  if (!syncSink) return void 0;
169
169
  const fastMemFs = context._fastMemoryBackingFs;
170
- if (!fastMemFs || fastMemFs.capabilitiesFor !== void 0 || context._cachedInputBudget !== void 0 || Object.prototype.hasOwnProperty.call(fastMemFs, "readStream") || Object.prototype.hasOwnProperty.call(fastMemFs, "readFile")) {
170
+ if (!fastMemFs || fastMemFs.capabilitiesFor !== void 0 || Object.prototype.hasOwnProperty.call(fastMemFs, "readStream") || Object.prototype.hasOwnProperty.call(fastMemFs, "readFile")) {
171
171
  return void 0;
172
172
  }
173
173
  const absolute = file.charCodeAt(0) === 47 && file.length > 1 && file.charCodeAt(file.length - 1) !== 47 && !file.includes("//") && !file.includes("/.") ? file : pathOf(context, file);
@@ -178,6 +178,7 @@ function tryExecuteJqFastSync(context, limits) {
178
178
  } catch {
179
179
  return void 0;
180
180
  }
181
+ if (rawBytes !== void 0) context.inputBudget?.check(rawBytes.byteLength);
181
182
  if (!rawBytes || rawBytes.byteLength === 0 || rawBytes[0] !== 123 || rawBytes[rawBytes.byteLength - 1] !== 10) {
182
183
  return void 0;
183
184
  }
@@ -187,29 +188,29 @@ function tryExecuteJqFastSync(context, limits) {
187
188
  } else {
188
189
  budget.resetForSyncFastRun(context.signal);
189
190
  }
190
- if (budget.maxInputBytesSmi < 1073741823 && limits.maxInputBytes !== Infinity) {
191
- const argBytes = 2 + utf8ByteLength(source) + utf8ByteLength(file);
192
- if (argBytes + rawBytes.byteLength > limits.maxInputBytes) return void 0;
193
- }
194
- if (!cachedAst) {
195
- try {
196
- cachedAst = parse(source, EMPTY_VARS_MAP, budget);
197
- } catch {
198
- return void 0;
199
- }
200
- }
201
- if (budget.needsYield()) return void 0;
202
- if (Interpreter.prototype.run !== DEFAULT_INTERPRETER_RUN) return void 0;
203
191
  let interpreter;
204
- const outBuf = sharedJqOutBuf ??= filledBytes(OUT_BUF_SIZE);
205
- sharedFastInUse = true;
206
- sharedJqOutBufInUse = true;
207
- sharedFastJqAst = cachedAst;
208
- sharedFastJqLimits = limits;
209
- sharedFastJqOutPos = 0;
210
- sharedFastJqAborted = false;
211
192
  let committing = false;
212
193
  try {
194
+ if (budget.maxInputBytesSmi < 1073741823 && limits.maxInputBytes !== Infinity) {
195
+ const argBytes = 2 + utf8ByteLength(source) + utf8ByteLength(file);
196
+ if (argBytes + rawBytes.byteLength > limits.maxInputBytes) return void 0;
197
+ }
198
+ if (!cachedAst) {
199
+ try {
200
+ cachedAst = parse(source, EMPTY_VARS_MAP, budget);
201
+ } catch {
202
+ return void 0;
203
+ }
204
+ }
205
+ if (budget.needsYield()) return void 0;
206
+ if (Interpreter.prototype.run !== DEFAULT_INTERPRETER_RUN) return void 0;
207
+ const outBuf = sharedJqOutBuf ??= filledBytes(OUT_BUF_SIZE);
208
+ sharedFastInUse = true;
209
+ sharedJqOutBufInUse = true;
210
+ sharedFastJqAst = cachedAst;
211
+ sharedFastJqLimits = limits;
212
+ sharedFastJqOutPos = 0;
213
+ sharedFastJqAborted = false;
213
214
  context.signal.throwIfAborted();
214
215
  budget.collection(3);
215
216
  budget.text(source);
@@ -661,23 +662,25 @@ function inputs(context, options, budget, convert, onValue, onChunkEnd, hasPendi
661
662
  const file = options.files[0];
662
663
  const absolute = pathOf(context, file);
663
664
  const fastMemFs = context._fastMemoryBackingFs;
664
- if (fastMemFs !== void 0 && fastMemFs.capabilitiesFor === void 0 && context._cachedInputBudget === void 0 && absolute !== "/dev" && !absolute.startsWith("/dev/") && !Object.prototype.hasOwnProperty.call(fastMemFs, "readStream") && !Object.prototype.hasOwnProperty.call(fastMemFs, "readFile")) {
665
+ if (fastMemFs !== void 0 && fastMemFs.capabilitiesFor === void 0 && absolute !== "/dev" && !absolute.startsWith("/dev/") && !Object.prototype.hasOwnProperty.call(fastMemFs, "readStream") && !Object.prototype.hasOwnProperty.call(fastMemFs, "readFile")) {
666
+ let rawBytes;
665
667
  try {
666
- const rawBytes = tryReadMemoryFileViewSync(fastMemFs, absolute, void 0, context.signal);
667
- if (rawBytes !== void 0) {
668
- const tickPromise = budget.tickSync();
669
- if (tickPromise) {
670
- return (async function* () {
671
- await tickPromise;
672
- yield* inputs(context, options, budget, convert, onValue, onChunkEnd, hasPendingDiagnostics, retainValues);
673
- })();
674
- }
675
- context._chargeFastFsOp?.();
676
- budget.inputLocation = { name: file, line: 0, complete: false };
677
- source = createSyncSingleChunkByteSource(rawBytes, context.signal);
678
- }
668
+ rawBytes = tryReadMemoryFileViewSync(fastMemFs, absolute, void 0, context.signal);
679
669
  } catch {
680
670
  }
671
+ if (rawBytes !== void 0) {
672
+ context.inputBudget?.check(rawBytes.byteLength);
673
+ const tickPromise = budget.tickSync();
674
+ if (tickPromise) {
675
+ return (async function* () {
676
+ await tickPromise;
677
+ yield* inputs(context, options, budget, convert, onValue, onChunkEnd, hasPendingDiagnostics, retainValues);
678
+ })();
679
+ }
680
+ context._chargeFastFsOp?.();
681
+ budget.inputLocation = { name: file, line: 0, complete: false };
682
+ source = createSyncSingleChunkByteSource(rawBytes, context.signal);
683
+ }
681
684
  }
682
685
  if (source === void 0) {
683
686
  const backing = getRuntimeBackingFileSystem(context.fs);