@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,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/ffmpeg/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/gh/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/git/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/imagemagick/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/mmdc/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/pdfimages/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/pdfinfo/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/pdftk/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/pdftoppm/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/pdftotext/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/qpdf/index.ts
10
10
  init_platform();
@@ -0,0 +1,9 @@
1
+ import {
2
+ executeRead
3
+ } from "./chunk-B3ZMOJVM.js";
4
+ import "./chunk-DUTAG6ZD.js";
5
+ import "./chunk-XQWCQSRN.js";
6
+ import "./chunk-PTAEWLSE.js";
7
+ export {
8
+ executeRead
9
+ };
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/sips/index.ts
10
10
  init_platform();
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/soffice/index.ts
10
10
  init_platform();
@@ -0,0 +1,7 @@
1
+ import {
2
+ createRootedSourceResolver
3
+ } from "./chunk-Q5XO3NAS.js";
4
+ import "./chunk-PTAEWLSE.js";
5
+ export {
6
+ createRootedSourceResolver
7
+ };
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  builtInDirectContextExecutors,
3
3
  syncCommandEvaluators
4
- } from "./chunk-E7OYNDGL.js";
4
+ } from "./chunk-V7QT2RWC.js";
5
5
  import {
6
6
  init_platform
7
- } from "./chunk-B7TAL7S5.js";
7
+ } from "./chunk-PTAEWLSE.js";
8
8
 
9
9
  // packages/safe-bash/src/commands/wkhtmltopdf/index.ts
10
10
  init_platform();
@@ -36,6 +36,7 @@ function validateOptions(options = {}) {
36
36
  if (typeof key !== "string" || !Object.hasOwn(defaultLimits, key)) throw new TypeError(`Unknown xan limit: ${String(key)}`);
37
37
  const name = key;
38
38
  const value = supplied[name];
39
+ if (value === void 0) continue;
39
40
  if (value !== Infinity && (typeof value !== "number" || !Number.isSafeInteger(value) || value <= 0)) throw new RangeError(`Invalid xan limit: ${name}`);
40
41
  limits[name] = value;
41
42
  }
@@ -674,11 +674,12 @@ function createFoldEngine(options, locale, configuration = {}, signal) {
674
674
  let lastBlank = 0, peakRetained = 0;
675
675
  let emitted = [];
676
676
  let aborted = Boolean(signal?.aborted);
677
+ const onAbort = () => {
678
+ aborted = true;
679
+ };
677
680
  const pollSignal = Boolean(signal && typeof signal.addEventListener !== "function");
678
681
  if (signal && !aborted && !pollSignal) {
679
- signal.addEventListener("abort", () => {
680
- aborted = true;
681
- }, { once: true });
682
+ signal.addEventListener("abort", onAbort, { once: true });
682
683
  }
683
684
  const check = (amount = 1) => {
684
685
  if (closed) throw new FoldError("CLOSED", "Fold engine is closed");
@@ -770,6 +771,7 @@ function createFoldEngine(options, locale, configuration = {}, signal) {
770
771
  }
771
772
  };
772
773
  const dispose = () => {
774
+ signal?.removeEventListener?.("abort", onAbort);
773
775
  closed = true;
774
776
  used = lastBlank = 0;
775
777
  pending.length = 0;
@@ -994,7 +996,7 @@ async function executeFold(context, configuration, invocation) {
994
996
  `);
995
997
  return { exitCode: 1, filesRead, filesFailed, accounting: accounting() };
996
998
  }
997
- const deliver = async (chunks) => {
999
+ const deliver = async (chunks, ownedInput) => {
998
1000
  chargeWork(0);
999
1001
  const engOut = engine?.outputBytes?.() ?? engine.accounting().outputBytes;
1000
1002
  if (engOut > limits.outputBytes - diagnostics) throw new FoldError("LIMIT", "Output byte limit exceeded");
@@ -1002,7 +1004,7 @@ async function executeFold(context, configuration, invocation) {
1002
1004
  let size = 0;
1003
1005
  for (const bytes of chunks) size += bytes.length;
1004
1006
  if (!size) return;
1005
- retain(engine.accounting().retainedBytes + size * (chunks.length === 1 ? 1 : 2));
1007
+ retain(ownedInput + engine.accounting().retainedBytes + size * (chunks.length === 1 ? 1 : 2));
1006
1008
  if (chunks.length === 1) {
1007
1009
  await writeBytes(stdout.output, chunks[0], signal);
1008
1010
  return;
@@ -1099,7 +1101,7 @@ async function executeFold(context, configuration, invocation) {
1099
1101
  }
1100
1102
  if (byteKind.call(next.value) !== "Uint8Array") throw new FoldError("INPUT", "Input must be byte storage");
1101
1103
  const length = byteExtent.call(next.value);
1102
- if (!length) await deliver(engine.push(next.value));
1104
+ if (!length) await deliver(engine.push(next.value), ownedInput);
1103
1105
  for (let offset = 0; offset < length; offset += 4096) {
1104
1106
  await yieldTurn(signal);
1105
1107
  signal.throwIfAborted();
@@ -1108,11 +1110,11 @@ async function executeFold(context, configuration, invocation) {
1108
1110
  const engRet = engine.retainedBytes?.() ?? engine.accounting().retainedBytes;
1109
1111
  context.inputBudget?.check(engIn + unit.byteLength);
1110
1112
  retain(ownedInput + engRet + unit.byteLength * 2 + 4);
1111
- await deliver(engine.push(unit));
1113
+ await deliver(engine.push(unit), ownedInput);
1112
1114
  }
1113
1115
  }
1114
1116
  retain(ownedInput + engine.accounting().retainedBytes + 4);
1115
- await deliver(engine.endFile());
1117
+ await deliver(engine.endFile(), ownedInput);
1116
1118
  } catch (error) {
1117
1119
  escaping = true;
1118
1120
  throw error;
@@ -56,7 +56,8 @@ async function targetPath(value, work) {
56
56
  async function parse(text, work) {
57
57
  await work.utf8(work.cwd, work.limits.maxPathBytes, 2);
58
58
  if (!work.cwd.startsWith("/") || work.cwd.includes("\0")) throw new PatchError("cwd must be an absolute virtual path", 2);
59
- const lines = await patchLines(text, work);
59
+ await work.charge(text.length);
60
+ const lines = await patchLines(text.trim(), work);
60
61
  if (lines[0] !== "*** Begin Patch" || lines.at(-1) !== "*** End Patch") throw new PatchError("expected Begin Patch and End Patch envelope", 2);
61
62
  const files = [];
62
63
  let index = 1;
@@ -4,19 +4,91 @@ import {
4
4
 
5
5
  // packages/safe-bash-command-date/src/date.ts
6
6
  init_buffer();
7
+
8
+ // packages/safe-bash-command-date/src/adjustments.ts
9
+ init_buffer();
10
+ import { boundedInstant, floorDivide, nanosecondsPerSecond, utcMilliseconds } from "../../safe-bash-calendar-engine/time-env/calendar.js";
11
+ import { CommandFailure } from "../../safe-bash-calendar-engine/time-env/shared.js";
12
+ function isEpochSeconds(value) {
13
+ let index = value[0] === "+" || value[0] === "-" ? 1 : 0;
14
+ const start = index;
15
+ while (index < value.length && value[index] >= "0" && value[index] <= "9") index++;
16
+ if (index === start) return false;
17
+ if (value[index] === ".") {
18
+ const fraction = ++index;
19
+ while (index < value.length && value[index] >= "0" && value[index] <= "9") index++;
20
+ if (fraction === index) return false;
21
+ }
22
+ return index === value.length;
23
+ }
24
+ function parseAdjustment(value) {
25
+ const unit = value.slice(-1);
26
+ const number = value.slice(0, -1);
27
+ if (!unit || !"ymwdHMS".includes(unit) || !isEpochSeconds(number) || number.includes(".")) {
28
+ throw new CommandFailure(`invalid date adjustment: ${value}`);
29
+ }
30
+ const amount = Number(number);
31
+ const relative = number[0] === "+" || number[0] === "-";
32
+ if (!Number.isSafeInteger(amount)) throw new CommandFailure(`date adjustment is outside the supported range: ${value}`);
33
+ if (!relative) {
34
+ const ranges = { y: [0, 9999], m: [1, 12], w: [0, 6], d: [1, 31], H: [0, 23], M: [0, 59], S: [0, 59] };
35
+ const [min, max] = ranges[unit];
36
+ if (amount < min || amount > max) throw new CommandFailure(`invalid date adjustment: ${value}`);
37
+ }
38
+ return { unit, amount: !relative && unit === "y" && amount <= 1900 ? amount + (amount < 69 ? 2e3 : 1900) : amount, relative };
39
+ }
40
+ function adjustDate(instant, adjustments, zone) {
41
+ for (const { unit, amount, relative } of adjustments) {
42
+ if (relative && "HMS".includes(unit)) {
43
+ const scale = unit === "H" ? 3600n : unit === "M" ? 60n : 1n;
44
+ instant = boundedInstant(instant + BigInt(amount) * scale * nanosecondsPerSecond);
45
+ continue;
46
+ }
47
+ const fields = zone.fields(instant);
48
+ const date = new Date(utcMilliseconds(fields));
49
+ const fraction = instant - floorDivide(instant, nanosecondsPerSecond) * nanosecondsPerSecond;
50
+ if (unit === "y" || unit === "m") {
51
+ date.setUTCDate(1);
52
+ if (unit === "y") date.setUTCFullYear(relative ? fields.year + amount : amount);
53
+ else date.setUTCMonth(relative ? fields.month - 1 + amount : amount - 1);
54
+ const next = new Date(date.getTime());
55
+ next.setUTCMonth(next.getUTCMonth() + 1, 0);
56
+ date.setUTCDate(Math.min(fields.day, next.getUTCDate()));
57
+ } else if (unit === "w") date.setUTCDate(fields.day + (relative ? amount * 7 : amount - date.getUTCDay()));
58
+ else if (unit === "d") date.setUTCDate(relative ? fields.day + amount : amount);
59
+ else if (unit === "H") date.setUTCHours(amount);
60
+ else if (unit === "M") date.setUTCMinutes(amount);
61
+ else date.setUTCSeconds(amount);
62
+ if (!Number.isFinite(date.getTime())) throw new CommandFailure("date adjustment is outside the supported range");
63
+ if (!relative && unit === "d" && date.getUTCMonth() + 1 !== fields.month) throw new CommandFailure("invalid calendar date adjustment");
64
+ instant = zone.instant({
65
+ year: date.getUTCFullYear(),
66
+ month: date.getUTCMonth() + 1,
67
+ day: date.getUTCDate(),
68
+ hour: date.getUTCHours(),
69
+ minute: date.getUTCMinutes(),
70
+ second: date.getUTCSeconds()
71
+ }, fraction, "compatible");
72
+ }
73
+ return instant;
74
+ }
75
+
76
+ // packages/safe-bash-command-date/src/date.ts
7
77
  import { utf8ByteLength } from "../../safe-bash-byte-engine/index.js";
8
78
  import { FsError } from "../../safe-bash-contracts/index.js";
9
79
  import { input as fileInput, lines, pathOf } from "../../safe-bash-io-engine/internal.js";
10
80
  import { writeDiagnostic } from "../../safe-bash-contracts/escaping.js";
11
- import { TimeZone, millisecondsInstant, parseDate } from "../../safe-bash-calendar-engine/time-env/calendar.js";
81
+ import { TimeZone as TimeZone2, millisecondsInstant, parseDate } from "../../safe-bash-calendar-engine/time-env/calendar.js";
12
82
  import { formatDate } from "../../safe-bash-calendar-engine/time-env/format.js";
13
- import { checkSize, command, CommandFailure, emit, ownEnvironment, timeEnvExecutorSettings } from "../../safe-bash-calendar-engine/time-env/shared.js";
83
+ import { checkSize, command, CommandFailure as CommandFailure2, emit, ownEnvironment, timeEnvExecutorSettings } from "../../safe-bash-calendar-engine/time-env/shared.js";
14
84
  function parseArguments(args) {
15
85
  let input, reference, format, style;
16
86
  let utc = false, ended = false;
17
87
  let file;
88
+ let epochReference = false;
89
+ const adjustments = [];
18
90
  const formatted = (value) => {
19
- if (style !== void 0) throw new CommandFailure("multiple output formats specified");
91
+ if (style !== void 0) throw new CommandFailure2("multiple output formats specified");
20
92
  style = value;
21
93
  };
22
94
  const iso = (value) => {
@@ -27,7 +99,7 @@ function parseArguments(args) {
27
99
  if ("seconds".startsWith(value)) return "%FT%T%:z";
28
100
  if ("ns".startsWith(value)) return "%FT%T,%N%:z";
29
101
  }
30
- throw new CommandFailure(`unsupported ISO precision: ${value}`);
102
+ throw new CommandFailure2(`unsupported ISO precision: ${value}`);
31
103
  };
32
104
  for (let index = 0; index < args.length; index++) {
33
105
  const argument = args[index];
@@ -41,11 +113,11 @@ function parseArguments(args) {
41
113
  const attached = separator < 0 ? void 0 : argument.slice(separator + 1);
42
114
  const required = () => {
43
115
  const value = attached ?? args[++index];
44
- if (value === void 0) throw new CommandFailure(`option requires an argument: ${name}`);
116
+ if (value === void 0) throw new CommandFailure2(`option requires an argument: ${name}`);
45
117
  return value;
46
118
  };
47
119
  if (["--help", "--version", "--utc", "--universal", "--rfc-email", "--rfc-2822", "--rfc-822"].includes(name) && attached !== void 0) {
48
- throw new CommandFailure(`option does not allow an argument: ${name}`);
120
+ throw new CommandFailure2(`option does not allow an argument: ${name}`);
49
121
  }
50
122
  switch (name) {
51
123
  case "--help":
@@ -61,6 +133,7 @@ function parseArguments(args) {
61
133
  break;
62
134
  case "--reference":
63
135
  reference = required();
136
+ epochReference = false;
64
137
  break;
65
138
  case "--file":
66
139
  file = required();
@@ -76,45 +149,51 @@ function parseArguments(args) {
76
149
  case "--rfc-3339": {
77
150
  const precision = required();
78
151
  if (!precision || !["date", "seconds", "ns"].some((item) => item.startsWith(precision))) {
79
- throw new CommandFailure(`unsupported RFC3339 precision: ${precision}`);
152
+ throw new CommandFailure2(`unsupported RFC3339 precision: ${precision}`);
80
153
  }
81
154
  formatted("date".startsWith(precision) ? "%F" : "ns".startsWith(precision) ? "%F %T.%N%:z" : "%F %T%:z");
82
155
  break;
83
156
  }
84
157
  case "--set":
85
- throw new CommandFailure("setting clocks is unsupported");
158
+ throw new CommandFailure2("setting clocks is unsupported");
86
159
  default:
87
- throw new CommandFailure(`unsupported option: ${name}`);
160
+ throw new CommandFailure2(`unsupported option: ${name}`);
88
161
  }
89
162
  } else if (!ended && argument.startsWith("-") && argument !== "-") {
90
163
  for (let position = 1; position < argument.length; position++) {
91
164
  const flag = argument[position];
92
165
  if (flag === "u") utc = true;
166
+ else if (flag === "j") continue;
93
167
  else if (flag === "R") formatted("%a, %d %b %Y %T %z");
94
168
  else if (flag === "I") {
95
169
  formatted(iso(argument.slice(position + 1) || "date"));
96
170
  break;
97
- } else if (flag === "d" || flag === "r" || flag === "f") {
171
+ } else if (flag === "d" || flag === "r" || flag === "f" || flag === "v") {
98
172
  const value = argument.slice(position + 1) || args[++index];
99
- if (value === void 0) throw new CommandFailure(`option requires an argument: -${flag}`);
173
+ if (value === void 0) throw new CommandFailure2(`option requires an argument: -${flag}`);
100
174
  if (flag === "d") input = value;
101
- else if (flag === "r") reference = value;
175
+ else if (flag === "r") {
176
+ reference = value;
177
+ epochReference = true;
178
+ } else if (flag === "v") adjustments.push(parseAdjustment(value));
102
179
  else file = value;
103
180
  break;
104
- } else if (flag === "s") throw new CommandFailure("setting clocks is unsupported");
105
- else throw new CommandFailure(`unsupported option: -${flag}`);
181
+ } else if (flag === "s") throw new CommandFailure2("setting clocks is unsupported");
182
+ else throw new CommandFailure2(`unsupported option: -${flag}`);
106
183
  }
107
184
  } else {
108
- if (!argument.startsWith("+")) throw new CommandFailure("expected +FORMAT; clock-setting operands are unsupported");
109
- if (format !== void 0) throw new CommandFailure("extra format operand");
185
+ if (!argument.startsWith("+")) throw new CommandFailure2("expected +FORMAT; clock-setting operands are unsupported");
186
+ if (format !== void 0) throw new CommandFailure2("extra format operand");
110
187
  format = argument.slice(1);
111
188
  }
112
189
  }
113
- if (input !== void 0 && reference !== void 0) throw new CommandFailure("--date and --reference are mutually exclusive");
114
- if (file !== void 0 && (input !== void 0 || reference !== void 0)) throw new CommandFailure("--file, --date and --reference are mutually exclusive");
115
- if (format !== void 0 && style !== void 0) throw new CommandFailure("multiple output formats specified");
190
+ if (input !== void 0 && reference !== void 0) throw new CommandFailure2("--date and --reference are mutually exclusive");
191
+ if (file !== void 0 && (input !== void 0 || reference !== void 0)) throw new CommandFailure2("--file, --date and --reference are mutually exclusive");
192
+ if (format !== void 0 && style !== void 0) throw new CommandFailure2("multiple output formats specified");
116
193
  return {
117
194
  utc,
195
+ epochReference,
196
+ adjustments,
118
197
  format: format ?? style ?? "%a %b %e %T %Z %Y",
119
198
  ...input === void 0 ? {} : { input },
120
199
  ...reference === void 0 ? {} : { reference },
@@ -122,14 +201,14 @@ function parseArguments(args) {
122
201
  };
123
202
  }
124
203
  function createDateWithSettings(configuration) {
125
- new TimeZone(configuration.defaultTimeZone);
204
+ new TimeZone2(configuration.defaultTimeZone);
126
205
  return command("date", configuration, async (context) => {
127
206
  const parsed = parseArguments(context.args);
128
207
  if (parsed.informational) {
129
- await emit(context, parsed.informational === "version" ? "date (safe-bash virtual command)\n" : "Usage: date [-u] [-d DATE | -r FILE | -f FILE] [+FORMAT]\n-f, --file=FILE reads one date per line; FILE - reads stdin.\nAlso: -I[date|hours|minutes|seconds|ns], -R, --rfc-3339=PRECISION\nDATE accepts @seconds, ISO calendar/time, RFC dates, now/today/yesterday/tomorrow, and integer seconds/minutes/hours relative to now.\nVirtual TZ defaults to UTC; no clock setting or host-locale parsing.\n", configuration.limits);
208
+ await emit(context, parsed.informational === "version" ? "date (safe-bash virtual command)\n" : "Usage: date [-uj] [-d DATE | -r FILE_OR_SECONDS | -f FILE] [-v[+|-]VALUE[ymwdHMS]] [+FORMAT]\n-f, --file=FILE reads one date per line; FILE - reads stdin.\nAlso: -I[date|hours|minutes|seconds|ns], -R, --rfc-3339=PRECISION\nDATE accepts @seconds, ISO calendar/time, RFC dates, now/today/yesterday/tomorrow, and integer seconds/minutes/hours relative to now.\nVirtual TZ defaults to UTC; no clock setting or host-locale parsing.\n", configuration.limits);
130
209
  return 0;
131
210
  }
132
- const zone = new TimeZone(parsed.utc ? "UTC" : ownEnvironment(context, "TZ") ?? configuration.defaultTimeZone);
211
+ const zone = new TimeZone2(parsed.utc ? "UTC" : ownEnvironment(context, "TZ") ?? configuration.defaultTimeZone);
133
212
  let current;
134
213
  const now = () => current ??= millisecondsInstant(configuration.clock());
135
214
  if (parsed.file !== void 0) {
@@ -139,7 +218,7 @@ function createDateWithSettings(configuration) {
139
218
  yield* fileInput(context, parsed.file);
140
219
  } catch (error) {
141
220
  context.signal.throwIfAborted();
142
- if (error instanceof FsError && error.code !== "EFBIG") throw new CommandFailure(error.message);
221
+ if (error instanceof FsError && error.code !== "EFBIG") throw new CommandFailure2(error.message);
143
222
  throw error;
144
223
  }
145
224
  };
@@ -153,13 +232,13 @@ function createDateWithSettings(configuration) {
153
232
  instant2 = parseDate(new TextDecoder().decode(line.bytes), zone, now);
154
233
  } catch (error) {
155
234
  context.signal.throwIfAborted();
156
- if (!(error instanceof CommandFailure)) throw error;
235
+ if (!(error instanceof CommandFailure2)) throw error;
157
236
  await writeDiagnostic(context.stderr, `date: ${error.message}
158
237
  `, context.signal);
159
238
  exitCode = 1;
160
239
  continue;
161
240
  }
162
- const value = formatDate(parsed.format, instant2, zone, configuration.limits);
241
+ const value = formatDate(parsed.format, adjustDate(instant2, parsed.adjustments ?? [], zone), zone, configuration.limits);
163
242
  outputBytes += utf8ByteLength(value);
164
243
  checkSize(outputBytes, configuration.limits.maxOutputBytes, "output");
165
244
  await emit(context, value, configuration.limits);
@@ -175,11 +254,15 @@ function createDateWithSettings(configuration) {
175
254
  instant = millisecondsInstant(stat.mtimeMs);
176
255
  } catch (error) {
177
256
  context.signal.throwIfAborted();
178
- if (error instanceof FsError) throw new CommandFailure(error.message);
179
- throw error;
257
+ if (error instanceof FsError && error.code === "ENOENT" && parsed.epochReference && isEpochSeconds(parsed.reference)) {
258
+ instant = parseDate("@" + parsed.reference, zone, now);
259
+ } else {
260
+ if (error instanceof FsError) throw new CommandFailure2(error.message);
261
+ throw error;
262
+ }
180
263
  }
181
264
  } else instant = parsed.input === void 0 ? now() : parseDate(parsed.input, zone, now);
182
- await emit(context, formatDate(parsed.format, instant, zone, configuration.limits), configuration.limits);
265
+ await emit(context, formatDate(parsed.format, adjustDate(instant, parsed.adjustments ?? [], zone), zone, configuration.limits), configuration.limits);
183
266
  return 0;
184
267
  });
185
268
  }
@@ -205,7 +288,7 @@ function evalSyncDate(args, tzEnv, execFn, readFileSync, statMtimeMsSync, stdinB
205
288
  if (parsed.informational) {
206
289
  return void 0;
207
290
  }
208
- const zone = new TimeZone(parsed.utc ? "UTC" : tzEnv ?? cfg?.defaultTimeZone ?? "UTC");
291
+ const zone = new TimeZone2(parsed.utc ? "UTC" : tzEnv ?? cfg?.defaultTimeZone ?? "UTC");
209
292
  const clock = cfg?.clock ?? Date.now;
210
293
  let current;
211
294
  const now = () => current ??= millisecondsInstant(clock());
@@ -218,7 +301,7 @@ function evalSyncDate(args, tzEnv, execFn, readFileSync, statMtimeMsSync, stdinB
218
301
  for (const line of rawLines) {
219
302
  if (utf8ByteLength(line) > limits.maxArgumentBytes) return void 0;
220
303
  const inst = parseDate(line, zone, now);
221
- out2 += formatDate(parsed.format, inst, zone, limits);
304
+ out2 += formatDate(parsed.format, adjustDate(inst, parsed.adjustments ?? [], zone), zone, limits);
222
305
  if (utf8ByteLength(out2) > limits.maxOutputBytes) return void 0;
223
306
  }
224
307
  return out2;
@@ -232,7 +315,7 @@ function evalSyncDate(args, tzEnv, execFn, readFileSync, statMtimeMsSync, stdinB
232
315
  } else {
233
316
  instant = parsed.input === void 0 ? now() : parseDate(parsed.input, zone, now);
234
317
  }
235
- const out = formatDate(parsed.format, instant, zone, limits);
318
+ const out = formatDate(parsed.format, adjustDate(instant, parsed.adjustments ?? [], zone), zone, limits);
236
319
  if (utf8ByteLength(out) > limits.maxOutputBytes) return void 0;
237
320
  return out;
238
321
  } catch {
@@ -68,6 +68,7 @@ var functions = Object.freeze({
68
68
  fromdateiso8601: [0],
69
69
  todateiso8601: [0],
70
70
  strftime: [1],
71
+ strflocaltime: [1],
71
72
  strptime: [1],
72
73
  gmtime: [0],
73
74
  mktime: [0],
@@ -764,7 +764,7 @@ function createLlmTemplateStore(context, loaders) {
764
764
  if (name.startsWith("https://") || name.startsWith("http://")) {
765
765
  const fetch = context.fetch ?? context.capabilities?.fetch;
766
766
  if (!fetch) throw new Error("Template URL loading is not configured");
767
- if (!loaders || !Number.isSafeInteger(loaders.maxRemoteBytes) || loaders.maxRemoteBytes < 1) throw new Error("Template URL byte limit is not configured");
767
+ if (!loaders || loaders.maxRemoteBytes !== Infinity && (!Number.isSafeInteger(loaders.maxRemoteBytes) || loaders.maxRemoteBytes < 1)) throw new Error("Template URL byte limit is not configured");
768
768
  let response, failed = false;
769
769
  let reader;
770
770
  const abort = () => {
@@ -2185,6 +2185,7 @@ ${args.prompt}` : evaluated.prompt;
2185
2185
  }
2186
2186
  function createLlmCommand(options = {}) {
2187
2187
  for (const [name, value] of Object.entries(options.limits ?? {})) {
2188
+ if (value === void 0 || value === Infinity) continue;
2188
2189
  if (!Number.isSafeInteger(value) || value < 0) throw new TypeError(`Invalid llm limit: ${name}`);
2189
2190
  }
2190
2191
  const limits = options.limits === void 0 ? void 0 : Object.freeze({ ...options.limits });