@poe-platform/safe-bash 0.1.800 → 0.1.802

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (502) hide show
  1. package/README.md +16 -5
  2. package/dist/image-ast/index.browser.js +122 -76
  3. package/dist/image-ast/index.js +122 -76
  4. package/dist/pdf-ast/index.js +4 -3
  5. package/dist/safe-bash/chunks/chunk-3HQU4OJO.js +13 -0
  6. package/dist/safe-bash/chunks/{chunk-LUOFIVNI.js → chunk-3NDIFSNM.js} +3 -3
  7. package/dist/safe-bash/chunks/{chunk-4SEW2Q6H.js → chunk-3R3AANOR.js} +1 -1
  8. package/dist/safe-bash/chunks/{chunk-K4YMYFRJ.js → chunk-44ALJ4QG.js} +5809 -7424
  9. package/dist/safe-bash/chunks/{chunk-KHMGTPD6.js → chunk-46Z5E5EV.js} +2 -2
  10. package/dist/safe-bash/chunks/chunk-4BSJLKNM.js +14 -0
  11. package/dist/safe-bash/chunks/chunk-4D4N7IU2.js +47 -0
  12. package/dist/safe-bash/chunks/chunk-55YJASTN.js +14 -0
  13. package/dist/safe-bash/chunks/{chunk-XB3B7KMM.js → chunk-6O77NL2S.js} +1 -1
  14. package/dist/safe-bash/chunks/{chunk-T3JTVIEP.js → chunk-6PAVEFT3.js} +1 -1
  15. package/dist/safe-bash/chunks/{chunk-PYVEAFJM.js → chunk-74GHTNJA.js} +3 -2
  16. package/dist/safe-bash/chunks/{chunk-LQHGH25W.js → chunk-7R5BDCG7.js} +1 -1
  17. package/dist/safe-bash/chunks/chunk-7ZBU7KYV.js +14 -0
  18. package/dist/safe-bash/chunks/{chunk-MHZ24KEI.js → chunk-AM5ESLPH.js} +1 -1
  19. package/dist/safe-bash/chunks/{chunk-3L3T6LYV.js → chunk-AUSNDQTJ.js} +1 -1
  20. package/dist/safe-bash/chunks/{chunk-YG5WAHK7.js → chunk-B7TAL7S5.js} +1 -3
  21. package/dist/safe-bash/chunks/{chunk-QVSRRNZT.js → chunk-BJA5XNP6.js} +6 -6
  22. package/dist/safe-bash/chunks/{chunk-K7IQZE7D.js → chunk-C5OWC2TL.js} +1 -1
  23. package/dist/safe-bash/chunks/{chunk-F3RV2F72.js → chunk-CHYGPFVM.js} +1 -1
  24. package/dist/safe-bash/chunks/{chunk-M4CFCXHN.js → chunk-CS4MNM6I.js} +1 -1
  25. package/dist/safe-bash/chunks/{chunk-H6JW3E4F.js → chunk-CTVWDACF.js} +1 -1
  26. package/dist/safe-bash/chunks/{chunk-BHJE5LPZ.js → chunk-D3ANYGMC.js} +1 -1
  27. package/dist/safe-bash/chunks/chunk-DQP3VHSB.js +15 -0
  28. package/dist/safe-bash/chunks/{chunk-NLAW7KDI.js → chunk-E7OYNDGL.js} +1 -1
  29. package/dist/safe-bash/chunks/{chunk-SOZK5JVX.js → chunk-FBUCWVTE.js} +1 -1
  30. package/dist/safe-bash/chunks/chunk-FZE4HW6G.js +11 -0
  31. package/dist/safe-bash/chunks/chunk-GEG3BWGE.js +14 -0
  32. package/dist/safe-bash/chunks/{chunk-HHW7MGS2.js → chunk-GETUOD5D.js} +4 -4
  33. package/dist/safe-bash/chunks/chunk-HBCN24ZA.js +50 -0
  34. package/dist/safe-bash/chunks/chunk-HZ7BWKQ3.js +13 -0
  35. package/dist/safe-bash/chunks/{chunk-JJSTTIEZ.js → chunk-HZAMGT5I.js} +3 -3
  36. package/dist/safe-bash/chunks/{chunk-KCVSVD65.js → chunk-I5HZ4FGE.js} +1 -1
  37. package/dist/safe-bash/chunks/{chunk-KV7PKOHV.js → chunk-IWDICZVK.js} +1 -1
  38. package/dist/safe-bash/chunks/{chunk-I4OAEOP6.js → chunk-J42RIHHJ.js} +1 -1
  39. package/dist/safe-bash/chunks/{chunk-K2VCOJ2B.js → chunk-K6VCD7IY.js} +7 -12
  40. package/dist/safe-bash/chunks/chunk-KDNSPLII.js +83 -0
  41. package/dist/safe-bash/chunks/{chunk-63FXVDGF.js → chunk-LVOBFF4D.js} +1 -1
  42. package/dist/safe-bash/chunks/{chunk-U5NUZPCC.js → chunk-MHMMRCYC.js} +1 -1
  43. package/dist/safe-bash/chunks/{chunk-KW24TAIU.js → chunk-NQCM3TYR.js} +922 -658
  44. package/dist/safe-bash/chunks/{chunk-VYZTG3GV.js → chunk-NZQXYWA3.js} +1 -1
  45. package/dist/safe-bash/chunks/{chunk-TFGRKY43.js → chunk-OQRVVGR6.js} +1 -1
  46. package/dist/safe-bash/chunks/{chunk-PPYM75Z3.js → chunk-OV6IHKO6.js} +2 -2
  47. package/dist/safe-bash/chunks/{chunk-TYD7EVUJ.js → chunk-PH63PLPZ.js} +8 -8
  48. package/dist/safe-bash/chunks/chunk-QGUV42T5.js +44 -0
  49. package/dist/safe-bash/chunks/chunk-R3NAKOED.js +51 -0
  50. package/dist/safe-bash/chunks/chunk-RRR7AQ24.js +38 -0
  51. package/dist/safe-bash/chunks/{chunk-RKKRJ54E.js → chunk-RSTHLAF3.js} +30 -23
  52. package/dist/safe-bash/chunks/{chunk-RMWLWH7Q.js → chunk-SHEMU2Z7.js} +378 -1148
  53. package/dist/safe-bash/chunks/{chunk-7YSRXFEG.js → chunk-TFIBK2GI.js} +1 -1
  54. package/dist/safe-bash/chunks/{chunk-I7L3G3NX.js → chunk-UE5KZDEK.js} +2 -2
  55. package/dist/safe-bash/chunks/{chunk-QU3BVQ53.js → chunk-UTBUUFDM.js} +1 -1
  56. package/dist/safe-bash/chunks/{chunk-6HZYFL3H.js → chunk-VKNVHEX3.js} +2 -7
  57. package/dist/safe-bash/chunks/chunk-VSAJ4OTM.js +962 -0
  58. package/dist/safe-bash/chunks/{chunk-46UISJCK.js → chunk-VTH3MLDU.js} +1 -1
  59. package/dist/safe-bash/chunks/{chunk-JTLSUJ7V.js → chunk-WDLGKIHD.js} +56 -39
  60. package/dist/safe-bash/chunks/chunk-XAQMU6OY.js +14 -0
  61. package/dist/safe-bash/chunks/{chunk-LLZCZ24K.js → chunk-XVOSKJE2.js} +1 -1
  62. package/dist/safe-bash/chunks/chunk-ZVD5IS4V.js +49 -0
  63. package/dist/safe-bash/chunks/{csvkit-QGP3GAOB.js → csvkit-TACDU7FC.js} +3 -3
  64. package/dist/safe-bash/chunks/{ffmpeg-JTVH26MK.js → ffmpeg-WTC3TEFI.js} +2 -2
  65. package/dist/safe-bash/chunks/{gh-I7QX7N5C.js → gh-6WU6PXL4.js} +2 -2
  66. package/dist/safe-bash/chunks/{git-MA7NKYVP.js → git-EFZIGJW4.js} +2 -2
  67. package/dist/safe-bash/chunks/{imagemagick-Y4NPWX2Q.js → imagemagick-EIEYGWPF.js} +2 -2
  68. package/dist/safe-bash/chunks/{implementation-BWDKOVQJ.js → implementation-MLFHUQ5M.js} +2 -2
  69. package/dist/safe-bash/chunks/{mmdc-44PELHDG.js → mmdc-ROQJT5HQ.js} +2 -2
  70. package/dist/safe-bash/chunks/{pdfimages-635TRW4Q.js → pdfimages-DW7LWXFI.js} +2 -2
  71. package/dist/safe-bash/chunks/{pdfinfo-FSDAA2KY.js → pdfinfo-TIP6XLUQ.js} +2 -2
  72. package/dist/safe-bash/chunks/{pdftk-GQ5UH3VG.js → pdftk-DMG22ITZ.js} +2 -2
  73. package/dist/safe-bash/chunks/{pdftoppm-YTXQCAYT.js → pdftoppm-WNDYR72T.js} +2 -2
  74. package/dist/safe-bash/chunks/{pdftotext-CVA2G7FY.js → pdftotext-5IPZ4NI7.js} +2 -2
  75. package/dist/safe-bash/chunks/{qpdf-HZMIFG4A.js → qpdf-TTX2DIUA.js} +2 -2
  76. package/dist/safe-bash/chunks/{sips-E7UBDP33.js → sips-XYS46JPJ.js} +2 -2
  77. package/dist/safe-bash/chunks/{soffice-ELASUWUK.js → soffice-TU73E5KL.js} +2 -2
  78. package/dist/safe-bash/chunks/{wkhtmltopdf-EPO6YCMG.js → wkhtmltopdf-FSZ2CHGE.js} +2 -2
  79. package/dist/safe-bash/command-chunks/{chunk-QBGA56UH.js → chunk-2ELYGJDD.js} +7 -7
  80. package/dist/safe-bash/command-chunks/{chunk-52PCQXD2.js → chunk-2NHI5F5S.js} +2 -1
  81. package/dist/safe-bash/command-chunks/{chunk-HDKVO47G.js → chunk-2SQEIUGJ.js} +3 -3
  82. package/dist/safe-bash/command-chunks/{chunk-5LSGEIZY.js → chunk-3HHCU5YU.js} +4 -3
  83. package/dist/safe-bash/command-chunks/{chunk-TF6OA2GK.js → chunk-3NV3HYT2.js} +1 -1
  84. package/dist/safe-bash/command-chunks/{chunk-2QHG43WJ.js → chunk-4BB2SWJ5.js} +1 -1
  85. package/dist/safe-bash/command-chunks/{chunk-IEXHHNOF.js → chunk-4J5CZ2DP.js} +2 -7
  86. package/dist/safe-bash/command-chunks/{chunk-WDHI3S6Y.js → chunk-4OOUQTQO.js} +1 -1
  87. package/dist/safe-bash/command-chunks/{chunk-YMONDXET.js → chunk-4ZQWGOZB.js} +2 -2
  88. package/dist/safe-bash/command-chunks/{chunk-L6DVEBW3.js → chunk-5BSTFCXG.js} +2 -2
  89. package/dist/safe-bash/command-chunks/{chunk-Q3DII3Q7.js → chunk-5PWJG2UK.js} +1 -1
  90. package/dist/safe-bash/command-chunks/{chunk-JMPP4TCW.js → chunk-5UBXNSFZ.js} +3 -2
  91. package/dist/safe-bash/command-chunks/{chunk-3NG75MOB.js → chunk-67GQA75T.js} +1 -1
  92. package/dist/safe-bash/command-chunks/{chunk-L6SU4S26.js → chunk-6B7WQIKB.js} +0 -7
  93. package/dist/safe-bash/command-chunks/{chunk-V6MSPQLA.js → chunk-6BNTBWIK.js} +4 -39
  94. package/dist/safe-bash/command-chunks/{chunk-SAMH7SQE.js → chunk-6GWJUQAV.js} +237 -145
  95. package/dist/safe-bash/command-chunks/{chunk-JN7WIP6S.js → chunk-6KJ3LPI2.js} +2 -2
  96. package/dist/safe-bash/command-chunks/{chunk-HLDTOR7M.js → chunk-6ZVI7LUY.js} +1 -1
  97. package/dist/safe-bash/command-chunks/{chunk-X6NJC3IC.js → chunk-75OFBY5R.js} +1 -1
  98. package/dist/safe-bash/command-chunks/{chunk-MRW5HD2D.js → chunk-7O3E4LPT.js} +4 -22
  99. package/dist/safe-bash/command-chunks/{chunk-TEVJJPTC.js → chunk-7U7EXOXX.js} +1 -1
  100. package/dist/safe-bash/command-chunks/{chunk-6CYTRQ24.js → chunk-7VTKQUA5.js} +20 -17
  101. package/dist/safe-bash/command-chunks/{chunk-BZPAWTUL.js → chunk-AEF5BA3D.js} +1 -1
  102. package/dist/safe-bash/command-chunks/{chunk-63R3FEZJ.js → chunk-AIV5BF5W.js} +1 -1
  103. package/dist/safe-bash/command-chunks/{chunk-AYUTO323.js → chunk-AKJG2XD3.js} +2 -18
  104. package/dist/safe-bash/command-chunks/{chunk-J34TZVMW.js → chunk-ALDC4XP4.js} +0 -5
  105. package/dist/safe-bash/command-chunks/{chunk-CKXV2CLD.js → chunk-ARBYOQUZ.js} +1 -1
  106. package/dist/safe-bash/command-chunks/{chunk-44AHAB5O.js → chunk-BDSMROQZ.js} +1 -4
  107. package/dist/safe-bash/command-chunks/{chunk-53P53XFM.js → chunk-BPE5INLI.js} +1 -1
  108. package/dist/safe-bash/command-chunks/{chunk-OT4LZMLB.js → chunk-BR73BIOW.js} +1 -1
  109. package/dist/safe-bash/command-chunks/{chunk-WB5SVIG7.js → chunk-C5YYCQHW.js} +498 -88
  110. package/dist/safe-bash/command-chunks/{chunk-EUSPTFAX.js → chunk-CAP7ZJSY.js} +7 -7
  111. package/dist/safe-bash/command-chunks/{chunk-DWFLVJC6.js → chunk-CCRHMAU5.js} +2 -1
  112. package/dist/safe-bash/command-chunks/{chunk-GI4CJED2.js → chunk-CQTRW45K.js} +1 -1
  113. package/dist/safe-bash/command-chunks/{chunk-KKG4BAFZ.js → chunk-DIEPXUM4.js} +6 -0
  114. package/dist/safe-bash/command-chunks/{chunk-QJAFJP2G.js → chunk-DZCY63VJ.js} +12 -10
  115. package/dist/safe-bash/command-chunks/{chunk-QUENU6GM.js → chunk-E55UKBIE.js} +3 -3
  116. package/dist/safe-bash/command-chunks/{chunk-MC3VWLIZ.js → chunk-FDBUV4HJ.js} +28 -19
  117. package/dist/safe-bash/command-chunks/{chunk-7FKUC34S.js → chunk-FPVUD6TH.js} +6 -3
  118. package/dist/safe-bash/command-chunks/{chunk-E2LB7FRT.js → chunk-FXOA7RBK.js} +1 -1
  119. package/dist/safe-bash/command-chunks/{chunk-QWIDNAAK.js → chunk-FZTK4MFI.js} +3 -3
  120. package/dist/safe-bash/command-chunks/{chunk-K543PB3I.js → chunk-G66QUHIZ.js} +6 -35
  121. package/dist/safe-bash/command-chunks/{chunk-YJDV76GL.js → chunk-GFQZCKO6.js} +29 -19
  122. package/dist/safe-bash/command-chunks/{chunk-FKKB5X5V.js → chunk-GOB777HR.js} +1 -1
  123. package/dist/safe-bash/command-chunks/{chunk-IYPAQ7PH.js → chunk-GRBWW4SG.js} +6 -0
  124. package/dist/safe-bash/command-chunks/{chunk-EFANWIHL.js → chunk-GY3BWK7K.js} +1 -0
  125. package/dist/safe-bash/command-chunks/{chunk-PPNBNFAU.js → chunk-GYQ2HAKQ.js} +8 -8
  126. package/dist/safe-bash/command-chunks/{chunk-PJJUYO3R.js → chunk-II77KPZN.js} +2 -2
  127. package/dist/safe-bash/command-chunks/{chunk-VL67NWNS.js → chunk-JDYXY44P.js} +2 -2
  128. package/dist/safe-bash/command-chunks/{chunk-4QJOYXVB.js → chunk-JV7LBUTP.js} +1 -1
  129. package/dist/safe-bash/command-chunks/{chunk-IKS2YXZQ.js → chunk-K67MWWWH.js} +3 -3
  130. package/dist/safe-bash/command-chunks/{chunk-BKCNF5U3.js → chunk-KQLD3AED.js} +2 -2
  131. package/dist/safe-bash/command-chunks/{chunk-UMDIOL3O.js → chunk-KXU3IRUO.js} +1 -1
  132. package/dist/safe-bash/command-chunks/{chunk-QZF3SINC.js → chunk-LAOM65EE.js} +2 -2
  133. package/dist/safe-bash/command-chunks/{chunk-HFII3QYO.js → chunk-LWS62ISU.js} +46 -32
  134. package/dist/safe-bash/command-chunks/{chunk-BZDDAPSV.js → chunk-LWSBAWLT.js} +1 -1
  135. package/dist/safe-bash/command-chunks/{chunk-U6G67N23.js → chunk-MIXBO6U7.js} +18 -5
  136. package/dist/safe-bash/command-chunks/{chunk-JQ74HC37.js → chunk-MQFIPHIQ.js} +23 -50
  137. package/dist/safe-bash/command-chunks/{chunk-ZJBR5Q5I.js → chunk-MSFXC3OC.js} +4 -4
  138. package/dist/safe-bash/command-chunks/{chunk-NI7MKJPN.js → chunk-MTQH74CF.js} +3 -55
  139. package/dist/safe-bash/command-chunks/chunk-MWUZZWXK.js +354 -0
  140. package/dist/safe-bash/command-chunks/{chunk-RVLO4DYT.js → chunk-N4PFUSRM.js} +1 -1
  141. package/dist/safe-bash/command-chunks/{chunk-WBNZ4PRE.js → chunk-NGG2XL56.js} +7 -4
  142. package/dist/safe-bash/command-chunks/{chunk-D4OP2BR3.js → chunk-NKFYQSES.js} +1 -2
  143. package/dist/safe-bash/command-chunks/{chunk-NGWB2YBL.js → chunk-O4JQSB7O.js} +1 -1
  144. package/dist/safe-bash/command-chunks/{chunk-GLOZX57Y.js → chunk-OQKC5ZU2.js} +23 -114
  145. package/dist/safe-bash/command-chunks/{chunk-7L24L4UO.js → chunk-OQU6UT6X.js} +2 -20
  146. package/dist/safe-bash/command-chunks/{chunk-TYCGMRLM.js → chunk-OYYV7ZAF.js} +1 -1
  147. package/dist/safe-bash/command-chunks/{chunk-SVULUDOP.js → chunk-P2N33UMN.js} +20 -81
  148. package/dist/safe-bash/command-chunks/{chunk-Q7Q5GM5S.js → chunk-P5APDEFB.js} +2 -2
  149. package/dist/safe-bash/command-chunks/{chunk-3HXDA5PT.js → chunk-PMBFZXTK.js} +1 -1
  150. package/dist/safe-bash/command-chunks/{chunk-4Y3WVMK4.js → chunk-PV66YWHB.js} +1 -0
  151. package/dist/safe-bash/command-chunks/{chunk-AXK3H4PX.js → chunk-QJ33BHI4.js} +1 -1
  152. package/dist/safe-bash/command-chunks/{chunk-3LSOYLNV.js → chunk-QKFSRZGQ.js} +2 -2
  153. package/dist/safe-bash/command-chunks/{chunk-JZSNU2MY.js → chunk-QKJLP53H.js} +2 -2
  154. package/dist/safe-bash/command-chunks/{chunk-LC2MFKT4.js → chunk-RMWQAAO5.js} +24 -25
  155. package/dist/safe-bash/command-chunks/{chunk-QDTBMSBE.js → chunk-RO62EWX6.js} +2 -2
  156. package/dist/safe-bash/command-chunks/{chunk-4C6QI5BQ.js → chunk-RZZI24ZE.js} +4 -4
  157. package/dist/safe-bash/command-chunks/{chunk-PFAADCB5.js → chunk-SDNBCQ3X.js} +10 -24
  158. package/dist/safe-bash/command-chunks/{chunk-36O5OT7E.js → chunk-T35Y7YQD.js} +1 -1
  159. package/dist/safe-bash/command-chunks/{chunk-6HMX4CQS.js → chunk-TGSNCQSR.js} +44 -16
  160. package/dist/safe-bash/command-chunks/{chunk-5T7CRJHW.js → chunk-TIOCQVUQ.js} +4 -7
  161. package/dist/safe-bash/command-chunks/{chunk-GN2TKLE7.js → chunk-TS65BJHG.js} +5 -5
  162. package/dist/safe-bash/command-chunks/{chunk-7RGB363W.js → chunk-TSCGT46G.js} +3 -2
  163. package/dist/safe-bash/command-chunks/{chunk-KBEURXFF.js → chunk-UN6WS55J.js} +3 -3
  164. package/dist/safe-bash/command-chunks/{chunk-SX2X3IH4.js → chunk-V2V5OCL3.js} +1 -1
  165. package/dist/safe-bash/command-chunks/{chunk-ERYJLO6G.js → chunk-V7A7DRTU.js} +1 -1
  166. package/dist/safe-bash/command-chunks/{chunk-5SHGJ7NO.js → chunk-VA5ZHYYA.js} +73 -33
  167. package/dist/safe-bash/command-chunks/{chunk-XETLEHZP.js → chunk-VPR5LQYX.js} +3 -2
  168. package/dist/safe-bash/command-chunks/{chunk-3DT2YOGW.js → chunk-VSRGNQCP.js} +3 -3
  169. package/dist/safe-bash/command-chunks/{chunk-N2F74VRO.js → chunk-VT6MJBEI.js} +1 -1
  170. package/dist/safe-bash/command-chunks/{chunk-J5SN3PZ3.js → chunk-VXSLJH7G.js} +53 -3
  171. package/dist/safe-bash/command-chunks/{chunk-PXYOWWMV.js → chunk-W7RAD4EW.js} +4 -3
  172. package/dist/safe-bash/command-chunks/{chunk-YGC6OS5O.js → chunk-WECIOOQB.js} +5 -8
  173. package/dist/safe-bash/command-chunks/{chunk-HHP343KT.js → chunk-WTECBRU4.js} +1 -1
  174. package/dist/safe-bash/command-chunks/{chunk-AO6Z5EQ7.js → chunk-WVE64WM2.js} +6 -5
  175. package/dist/safe-bash/command-chunks/{chunk-Z7RVSD5K.js → chunk-WVHONVZ4.js} +1 -1
  176. package/dist/safe-bash/command-chunks/{chunk-HLGKIZ25.js → chunk-X54L3DBL.js} +6 -9
  177. package/dist/safe-bash/command-chunks/{chunk-QNIMV57G.js → chunk-XNLFHHOC.js} +1 -1
  178. package/dist/safe-bash/command-chunks/{chunk-XAFSZDY2.js → chunk-XS72HTMA.js} +11 -0
  179. package/dist/safe-bash/command-chunks/{chunk-KYSPGS33.js → chunk-YIQACGEW.js} +2 -0
  180. package/dist/safe-bash/command-chunks/{chunk-NAY27PXB.js → chunk-YOFC45RK.js} +1 -1
  181. package/dist/safe-bash/command-chunks/{chunk-T5H5UJQ3.js → chunk-YVNGTIJO.js} +1 -1
  182. package/dist/safe-bash/command-chunks/{chunk-QI7LGHJJ.js → chunk-Z45N42QC.js} +21 -6
  183. package/dist/safe-bash/command-chunks/{chunk-67IQF5GC.js → chunk-ZYHTWNAE.js} +23 -9
  184. package/dist/safe-bash/command-chunks/{chunk-STC3LEWJ.js → chunk-ZYXH3B66.js} +5 -3
  185. package/dist/safe-bash/commands/apply-patch/index.browser.js +14 -0
  186. package/dist/safe-bash/commands/archive/index.browser.js +36 -0
  187. package/dist/safe-bash/commands/bytes/compression/index.js +3 -2
  188. package/dist/safe-bash/commands/column/index.browser.js +12 -0
  189. package/dist/safe-bash/commands/copy-preserve.d.ts +1 -0
  190. package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
  191. package/dist/safe-bash/commands/docx/index.browser.js +1 -1
  192. package/dist/safe-bash/commands/du/index.browser.js +14 -0
  193. package/dist/safe-bash/commands/execution.js +19 -13
  194. package/dist/safe-bash/commands/expr/index.browser.js +12 -0
  195. package/dist/safe-bash/commands/factor/index.browser.js +2 -2
  196. package/dist/safe-bash/commands/file/index.browser.js +14 -0
  197. package/dist/safe-bash/commands/filesystem.d.ts +1 -1
  198. package/dist/safe-bash/commands/filesystem.js +26 -15
  199. package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
  200. package/dist/safe-bash/commands/grep-aliases/index.browser.js +14 -0
  201. package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
  202. package/dist/safe-bash/commands/html-to-markdown/index.browser.js +16 -0
  203. package/dist/safe-bash/commands/htmlq/index.d.ts +1 -1
  204. package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
  205. package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
  206. package/dist/safe-bash/commands/llm/index.browser.js +2 -2
  207. package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
  208. package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
  209. package/dist/safe-bash/commands/media/index.browser.js +1 -1
  210. package/dist/safe-bash/commands/metadata/index.browser.js +21 -0
  211. package/dist/safe-bash/commands/network/curl.d.ts +1 -1
  212. package/dist/safe-bash/commands/network/curl.js +1 -3
  213. package/dist/safe-bash/commands/network/index.browser.js +4 -4
  214. package/dist/safe-bash/commands/network/platform-portable.d.ts +1 -5
  215. package/dist/safe-bash/commands/network/platform-portable.js +1 -26
  216. package/dist/safe-bash/commands/network/public.d.ts +2 -2
  217. package/dist/safe-bash/commands/network/public.js +2 -2
  218. package/dist/safe-bash/commands/network/transport.js +2 -2
  219. package/dist/safe-bash/commands/network/wget.d.ts +1 -1
  220. package/dist/safe-bash/commands/network/wget.js +1 -3
  221. package/dist/safe-bash/commands/node/filesystem.js +3 -2
  222. package/dist/safe-bash/commands/node/index.browser.js +8 -8
  223. package/dist/safe-bash/commands/node/types.js +1 -1
  224. package/dist/safe-bash/commands/op/index.browser.js +3 -3
  225. package/dist/safe-bash/commands/pr/index.browser.js +2 -2
  226. package/dist/safe-bash/commands/python/host-capabilities.js +31 -14
  227. package/dist/safe-bash/commands/python/index.browser.js +11 -11
  228. package/dist/safe-bash/commands/python/manifest.d.ts +1 -0
  229. package/dist/safe-bash/commands/python/manifest.js +6 -3
  230. package/dist/safe-bash/commands/python/shell-capability.d.ts +1 -0
  231. package/dist/safe-bash/commands/python/shell-capability.js +3 -2
  232. package/dist/safe-bash/commands/python/worker.browser.js +3 -3
  233. package/dist/safe-bash/commands/regex-execution/public.browser.js +8 -6
  234. package/dist/safe-bash/commands/safejs/runtime.js +16 -7
  235. package/dist/safe-bash/commands/split/index.browser.js +14 -0
  236. package/dist/safe-bash/commands/standard.d.ts +1 -0
  237. package/dist/safe-bash/commands/standard.js +2 -1
  238. package/dist/safe-bash/commands/stream-format/index.browser.js +11 -0
  239. package/dist/safe-bash/commands/stream-inspection/index.browser.js +11 -0
  240. package/dist/safe-bash/commands/streams.js +11 -29
  241. package/dist/safe-bash/commands/table-text/index.browser.js +11 -0
  242. package/dist/safe-bash/commands/text.js +269 -496
  243. package/dist/safe-bash/commands/time-env/index.browser.js +15 -0
  244. package/dist/safe-bash/commands/tree/index.browser.js +14 -0
  245. package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
  246. package/dist/safe-bash/commands/xml/index.browser.js +2 -2
  247. package/dist/safe-bash/commands/yq/index.browser.js +2 -2
  248. package/dist/safe-bash/core.browser.js +1 -1
  249. package/dist/safe-bash/core.d.ts +6 -1
  250. package/dist/safe-bash/core.js +1 -1
  251. package/dist/safe-bash/full-core.browser.js +308 -295
  252. package/dist/safe-bash/jobs.browser.js +5 -5
  253. package/dist/safe-bash/opt-in/commands/dd/index.js +2 -0
  254. package/dist/safe-bash/opt-in/optional/commands/shuf/options.d.ts +1 -0
  255. package/dist/safe-bash/opt-in/optional/commands/shuf/options.js +2 -4
  256. package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +2 -1
  257. package/dist/safe-bash/optional-host.browser.js +15 -15
  258. package/dist/safe-bash/plugins/composition.d.ts +1 -0
  259. package/dist/safe-bash/plugins/composition.js +3 -8
  260. package/dist/safe-bash/plugins/index.browser.js +41 -27
  261. package/dist/safe-bash/registry-entry.browser.js +42 -28
  262. package/dist/safe-bash/search.browser.js +48 -0
  263. package/dist/safe-bash/shell/arrays/bindings.js +1 -1
  264. package/dist/safe-bash/shell/arrays/state.js +4 -0
  265. package/dist/safe-bash/shell/brace-expansion.js +1 -1
  266. package/dist/safe-bash/shell/dynamic-variables.d.ts +10 -0
  267. package/dist/safe-bash/shell/dynamic-variables.js +25 -0
  268. package/dist/safe-bash/shell/parser.js +8 -1
  269. package/dist/safe-bash/shell/runtime.d.ts +4 -13
  270. package/dist/safe-bash/shell/runtime.js +334 -1049
  271. package/dist/safe-bash/shell/shell.js +2 -54
  272. package/dist/safe-bash/shell-entry.browser.js +35 -26
  273. package/dist/safe-bash/trap.browser.js +4 -4
  274. package/dist/safe-bash/yq-browser/index.js +1 -1
  275. package/dist/safe-bash-base-encoding-engine/base.js +2 -2
  276. package/dist/safe-bash-base-encoding-engine/shared.js +1 -1
  277. package/dist/safe-bash-byte-input-engine/index.d.ts +3 -2
  278. package/dist/safe-bash-byte-input-engine/index.js +4 -1
  279. package/dist/safe-bash-checksum-engine/index.js +13 -6
  280. package/dist/safe-bash-command-apply-patch/apply.d.ts +1 -1
  281. package/dist/safe-bash-command-apply-patch/apply.js +4 -3
  282. package/dist/safe-bash-command-apply-patch/index.js +3 -3
  283. package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
  284. package/dist/safe-bash-command-apply-patch/parser.js +1 -1
  285. package/dist/safe-bash-command-awk/awk-inspection.js +2 -2
  286. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  287. package/dist/safe-bash-command-awk/awk-syntax.d.ts +1 -1
  288. package/dist/safe-bash-command-awk/awk-syntax.js +2 -2
  289. package/dist/safe-bash-command-awk/awk-values.js +1 -1
  290. package/dist/safe-bash-command-awk/awk.js +5 -5
  291. package/dist/safe-bash-command-awk/index.js +5 -5
  292. package/dist/safe-bash-command-bc/index.d.ts +2 -0
  293. package/dist/safe-bash-command-bc/index.js +123 -92
  294. package/dist/safe-bash-command-column/column.js +5 -5
  295. package/dist/safe-bash-command-column/display.d.ts +1 -1
  296. package/dist/safe-bash-command-column/display.js +1 -1
  297. package/dist/safe-bash-command-column/index.js +5 -5
  298. package/dist/safe-bash-command-column/internal.d.ts +0 -2
  299. package/dist/safe-bash-command-column/internal.js +1 -1
  300. package/dist/safe-bash-command-column/layout.js +4 -4
  301. package/dist/safe-bash-command-column/table.js +2 -2
  302. package/dist/safe-bash-command-comm/comm.js +1 -1
  303. package/dist/safe-bash-command-comm/index.js +1 -1
  304. package/dist/safe-bash-command-csvcut/index.d.ts +1 -0
  305. package/dist/safe-bash-command-csvcut/index.js +1 -0
  306. package/dist/safe-bash-command-csvgrep/index.d.ts +1 -0
  307. package/dist/safe-bash-command-csvgrep/index.js +2 -2
  308. package/dist/safe-bash-command-csvkit/index.js +9 -9
  309. package/dist/safe-bash-command-csvkit/sync-support.js +1 -1
  310. package/dist/safe-bash-command-curl/curl.js +1 -1
  311. package/dist/safe-bash-command-curl/index.js +1 -1
  312. package/dist/safe-bash-command-dd/index.js +2 -0
  313. package/dist/safe-bash-command-diff/diff.js +1 -1
  314. package/dist/safe-bash-command-diff/index.js +1 -1
  315. package/dist/safe-bash-command-exiftool/index.d.ts +1 -0
  316. package/dist/safe-bash-command-fd/index.js +9 -9
  317. package/dist/safe-bash-command-ffmpeg/index.js +31 -8
  318. package/dist/safe-bash-command-file/index.js +1 -1
  319. package/dist/safe-bash-command-file/shared.js +1 -1
  320. package/dist/safe-bash-command-find/find.js +1 -1
  321. package/dist/safe-bash-command-find/index.js +1 -1
  322. package/dist/safe-bash-command-gzip/index.js +3 -2
  323. package/dist/safe-bash-command-hexdump/command.js +4 -4
  324. package/dist/safe-bash-command-hexdump/custom.d.ts +24 -0
  325. package/dist/safe-bash-command-hexdump/index.js +4 -4
  326. package/dist/safe-bash-command-hexdump/internal.d.ts +2 -0
  327. package/dist/safe-bash-command-hexdump/internal.js +1 -1
  328. package/dist/safe-bash-command-hexdump/io.js +2 -2
  329. package/dist/safe-bash-command-hexdump/options.d.ts +3 -0
  330. package/dist/safe-bash-command-hexdump/options.js +2 -2
  331. package/dist/safe-bash-command-hostname/index.js +1 -1
  332. package/dist/safe-bash-command-html-to-markdown/budget.js +1 -1
  333. package/dist/safe-bash-command-html-to-markdown/entities.js +3 -3
  334. package/dist/safe-bash-command-html-to-markdown/index.js +6 -6
  335. package/dist/safe-bash-command-html-to-markdown/input.js +5 -5
  336. package/dist/safe-bash-command-html-to-markdown/parser.d.ts +1 -0
  337. package/dist/safe-bash-command-html-to-markdown/parser.js +4 -4
  338. package/dist/safe-bash-command-html-to-markdown/render.js +5 -5
  339. package/dist/safe-bash-command-html-to-markdown/text.js +2 -2
  340. package/dist/safe-bash-command-htmlq/index.d.ts +1 -0
  341. package/dist/safe-bash-command-htmlq/index.js +27 -9
  342. package/dist/safe-bash-command-iconv/codec.js +1 -1
  343. package/dist/safe-bash-command-iconv/command.js +2 -2
  344. package/dist/safe-bash-command-iconv/index.js +2 -2
  345. package/dist/safe-bash-command-imagemagick/index.js +24 -6
  346. package/dist/safe-bash-command-join/index.js +1 -1
  347. package/dist/safe-bash-command-join/join.js +1 -1
  348. package/dist/safe-bash-command-jq/index.js +1 -1
  349. package/dist/safe-bash-command-jq/jq.js +1 -1
  350. package/dist/safe-bash-command-less/index.js +43 -28
  351. package/dist/safe-bash-command-mmdc/index.d.ts +1 -0
  352. package/dist/safe-bash-command-nl/index.js +1 -1
  353. package/dist/safe-bash-command-nl/nl.js +1 -1
  354. package/dist/safe-bash-command-numfmt/index.js +0 -11
  355. package/dist/safe-bash-command-od/index.js +101 -68
  356. package/dist/safe-bash-command-pandoc/command.js +1 -1
  357. package/dist/safe-bash-command-pandoc/index.js +1 -1
  358. package/dist/safe-bash-command-paste/index.js +1 -1
  359. package/dist/safe-bash-command-paste/paste.js +1 -1
  360. package/dist/safe-bash-command-pathchk/index.js +3 -13
  361. package/dist/safe-bash-command-pdfimages/index.js +27 -11
  362. package/dist/safe-bash-command-pdfinfo/index.js +19 -10
  363. package/dist/safe-bash-command-pdftk/index.js +3 -3
  364. package/dist/safe-bash-command-pdftoppm/index.js +26 -10
  365. package/dist/safe-bash-command-pdftotext/index.js +27 -13
  366. package/dist/safe-bash-command-qpdf/index.js +5 -5
  367. package/dist/safe-bash-command-rg/index.js +1 -1
  368. package/dist/safe-bash-command-rg/rg-command.d.ts +0 -1
  369. package/dist/safe-bash-command-rg/rg-command.js +3 -5
  370. package/dist/safe-bash-command-sed/index.js +1 -1
  371. package/dist/safe-bash-command-sed/sed.js +1 -1
  372. package/dist/safe-bash-command-shuf/options.d.ts +1 -0
  373. package/dist/safe-bash-command-shuf/options.js +2 -4
  374. package/dist/safe-bash-command-shuf/shuf.js +2 -1
  375. package/dist/safe-bash-command-soffice/index.js +20 -16
  376. package/dist/safe-bash-command-split/index.js +3 -3
  377. package/dist/safe-bash-command-split/io.js +1 -1
  378. package/dist/safe-bash-command-split/outputs.js +2 -2
  379. package/dist/safe-bash-command-split/split.js +3 -3
  380. package/dist/safe-bash-command-sqlite3/btree.d.ts +1 -0
  381. package/dist/safe-bash-command-sqlite3/engine.d.ts +6 -0
  382. package/dist/safe-bash-command-sqlite3/index.js +284 -85
  383. package/dist/safe-bash-command-ssconvert/commands.js +9 -9
  384. package/dist/safe-bash-command-ssconvert/core.js +8 -8
  385. package/dist/safe-bash-command-ssconvert/formats/csv.js +9 -9
  386. package/dist/safe-bash-command-ssconvert/formats/ods.js +8 -8
  387. package/dist/safe-bash-command-ssconvert/formats/spreadsheetml.js +2 -2
  388. package/dist/safe-bash-command-ssconvert/formats/xls.js +9 -9
  389. package/dist/safe-bash-command-ssconvert/formats/xlsx.js +8 -8
  390. package/dist/safe-bash-command-ssconvert/index.js +20 -20
  391. package/dist/safe-bash-command-tar/extract.js +1 -1
  392. package/dist/safe-bash-command-tar/index.js +5 -4
  393. package/dist/safe-bash-command-tar/modes.js +2 -2
  394. package/dist/safe-bash-command-tree/arguments.js +3 -3
  395. package/dist/safe-bash-command-tree/charset.js +1 -1
  396. package/dist/safe-bash-command-tree/index.js +4 -4
  397. package/dist/safe-bash-command-tree/io.js +1 -1
  398. package/dist/safe-bash-command-tree/pattern.js +2 -2
  399. package/dist/safe-bash-command-tree/tree.js +4 -4
  400. package/dist/safe-bash-command-unexpand/index.js +1 -1
  401. package/dist/safe-bash-command-unexpand/unexpand.js +1 -1
  402. package/dist/safe-bash-command-unrtf/index.js +14 -7
  403. package/dist/safe-bash-command-unzip/index.js +1 -1
  404. package/dist/safe-bash-command-unzip/unzip.js +1 -1
  405. package/dist/safe-bash-command-wget/index.js +1 -1
  406. package/dist/safe-bash-command-wget/wget.js +1 -1
  407. package/dist/safe-bash-command-xan/argv.d.ts +1 -1
  408. package/dist/safe-bash-command-xan/argv.js +1 -1
  409. package/dist/safe-bash-command-xan/commands.js +5 -3
  410. package/dist/safe-bash-command-xan/csv.d.ts +1 -1
  411. package/dist/safe-bash-command-xan/csv.js +1 -1
  412. package/dist/safe-bash-command-xan/index.js +7 -7
  413. package/dist/safe-bash-command-xan/io.js +3 -3
  414. package/dist/safe-bash-command-xmllint/index.js +1 -1
  415. package/dist/safe-bash-command-xxd/index.js +105 -91
  416. package/dist/safe-bash-command-xz/command.d.ts +2 -0
  417. package/dist/safe-bash-command-xz/index.d.ts +1 -1
  418. package/dist/safe-bash-command-xz/index.js +8 -0
  419. package/dist/safe-bash-command-yq/query.js +1 -1
  420. package/dist/safe-bash-command-zip/index.js +1 -1
  421. package/dist/safe-bash-command-zip/zip.js +1 -1
  422. package/dist/safe-bash-contracts/escaping.js +3 -3
  423. package/dist/safe-bash-contracts/filesystem-output.js +2 -2
  424. package/dist/safe-bash-contracts/index.d.ts +1 -0
  425. package/dist/safe-bash-contracts/index.js +7 -3
  426. package/dist/safe-bash-contracts/io.d.ts +4 -1
  427. package/dist/safe-bash-contracts/io.js +3 -1
  428. package/dist/safe-bash-contracts/managed-abort.d.ts +10 -0
  429. package/dist/safe-bash-contracts/output.js +2 -2
  430. package/dist/safe-bash-diff-engine/index.js +1 -1
  431. package/dist/safe-bash-diff-engine/shared.d.ts +3 -2
  432. package/dist/safe-bash-diff-engine/shared.js +1 -1
  433. package/dist/safe-bash-io-engine/commands/archive/internal.js +5 -23
  434. package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
  435. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +33 -44
  436. package/dist/safe-bash-io-engine/internal.js +1 -1
  437. package/dist/safe-bash-io-engine/shell/pattern.js +1 -1
  438. package/dist/safe-bash-io-engine/shell/string-operations.js +1 -1
  439. package/dist/safe-bash-mcp/index.browser.d.ts +155 -35
  440. package/dist/safe-bash-mcp/index.browser.js +416 -0
  441. package/dist/safe-bash-mcp/index.d.ts +54 -2
  442. package/dist/safe-bash-mcp/index.js +286 -90
  443. package/dist/safe-bash-network-engine/aggregate.js +2 -2
  444. package/dist/safe-bash-network-engine/args.js +4 -4
  445. package/dist/safe-bash-network-engine/authorizer.js +1 -1
  446. package/dist/safe-bash-network-engine/body.js +6 -6
  447. package/dist/safe-bash-network-engine/decode.d.ts +1 -1
  448. package/dist/safe-bash-network-engine/decode.js +3 -4
  449. package/dist/safe-bash-network-engine/fetch-transport.js +3 -3
  450. package/dist/safe-bash-network-engine/form-content-type.js +2 -2
  451. package/dist/safe-bash-network-engine/form-headers.js +2 -2
  452. package/dist/safe-bash-network-engine/glob.js +1 -1
  453. package/dist/safe-bash-network-engine/index.js +4 -4
  454. package/dist/safe-bash-network-engine/input.js +6 -6
  455. package/dist/safe-bash-network-engine/output.js +2 -2
  456. package/dist/safe-bash-network-engine/platform-portable.js +3 -3
  457. package/dist/safe-bash-network-engine/shared.js +2 -2
  458. package/dist/safe-bash-network-engine/types.d.ts +7 -2
  459. package/dist/safe-bash-network-engine/types.js +1 -1
  460. package/dist/safe-bash-network-engine/url.js +2 -2
  461. package/dist/safe-bash-query-engine/capture.js +3 -3
  462. package/dist/safe-bash-query-engine/delpaths.js +3 -3
  463. package/dist/safe-bash-query-engine/formats.js +2 -2
  464. package/dist/safe-bash-query-engine/index.js +11 -11
  465. package/dist/safe-bash-query-engine/indices.js +3 -3
  466. package/dist/safe-bash-query-engine/input.js +1 -1
  467. package/dist/safe-bash-query-engine/interpreter.js +9 -9
  468. package/dist/safe-bash-query-engine/parser.js +1 -1
  469. package/dist/safe-bash-query-engine/query-core.js +11 -11
  470. package/dist/safe-bash-query-engine/regex.js +4 -4
  471. package/dist/safe-bash-query-engine/splits.js +5 -5
  472. package/dist/safe-bash-query-engine/values.js +2 -2
  473. package/dist/safe-bash-regex-engine/ere/matcher.js +102 -30
  474. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +55 -67
  475. package/dist/safe-bash-regex-engine/execution/portable.d.ts +0 -1
  476. package/dist/safe-bash-regex-engine/execution/portable.js +6 -10
  477. package/dist/safe-bash-regex-engine/execution/protocol.d.ts +0 -5
  478. package/dist/safe-bash-regex-engine/execution/protocol.js +1 -3
  479. package/dist/safe-bash-regex-engine/index.js +6 -4
  480. package/dist/safe-bash-regex-engine/text/budget.d.ts +1 -1
  481. package/dist/safe-bash-regex-engine/text/budget.js +1 -1
  482. package/dist/safe-bash-regex-engine/text/regex.d.ts +14 -0
  483. package/dist/safe-bash-regex-engine/text/regex.js +6 -4
  484. package/dist/safe-bash-regex-engine/text/replacement-buffer.js +2 -2
  485. package/dist/safe-bash-regex-engine/text/rust-syntax.js +2 -2
  486. package/dist/safe-bash-search-engine/grep.js +189 -227
  487. package/dist/safe-bash-table-text-engine/table-text/internal.d.ts +7 -5
  488. package/dist/safe-bash-table-text-engine/table-text/internal.js +39 -21
  489. package/dist/safe-playwright-cloudflare/browser-trace-budget.js +6 -2
  490. package/dist/spreadsheet-engine/codecs/odf-hyperlinks.js +8 -2
  491. package/dist/spreadsheet-engine/formulas/functions/captured-bessel-phase.js +2 -2
  492. package/dist/spreadsheet-engine/formulas/label-references.js +54 -33
  493. package/dist/spreadsheet-engine/formulas/parser.js +3 -1
  494. package/dist/spreadsheet-engine/formulas/rewriting.js +13 -3
  495. package/dist/spreadsheet-format-xls/biff-data-tables.js +4 -6
  496. package/dist/spreadsheet-format-xls/biff-formulas.js +3 -0
  497. package/dist/spreadsheet-format-xls/biff-label-ranges.js +9 -6
  498. package/dist/spreadsheet-format-xls/biff.js +1 -1
  499. package/dist/xlsx-ast/xlsx.js +8 -5
  500. package/package.json +68 -12
  501. package/dist/safe-bash/command-chunks/chunk-KAGBORIC.js +0 -88
  502. /package/dist/safe-bash/command-chunks/{chunk-BWNXWI33.js → chunk-2LMZVE3I.js} +0 -0
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  renderCellText
3
- } from "./chunk-KBEURXFF.js";
3
+ } from "./chunk-UN6WS55J.js";
4
4
  import {
5
5
  exportOptionPairs
6
- } from "./chunk-OT4LZMLB.js";
6
+ } from "./chunk-BR73BIOW.js";
7
7
  import {
8
8
  readGnumericRichText,
9
9
  writeGnumericRichText
10
- } from "./chunk-X6NJC3IC.js";
10
+ } from "./chunk-75OFBY5R.js";
11
11
  import {
12
12
  richTextSegments
13
- } from "./chunk-TF6OA2GK.js";
13
+ } from "./chunk-3NV3HYT2.js";
14
14
  import {
15
15
  createOdfXml,
16
16
  dateSerial,
@@ -27,10 +27,10 @@ import {
27
27
  translateOdfHyperlink,
28
28
  upgradeOdfAnnotation,
29
29
  visitFormula
30
- } from "./chunk-5SHGJ7NO.js";
30
+ } from "./chunk-VA5ZHYYA.js";
31
31
  import {
32
32
  converterLocale
33
- } from "./chunk-4QJOYXVB.js";
33
+ } from "./chunk-JV7LBUTP.js";
34
34
  import {
35
35
  DEFAULT_SHEET_SIZE,
36
36
  MAX_SHEET_SIZE,
@@ -46,7 +46,7 @@ import {
46
46
  quoteNativeSheet,
47
47
  quotedLabelText,
48
48
  serializeExpression
49
- } from "./chunk-DWFLVJC6.js";
49
+ } from "./chunk-CCRHMAU5.js";
50
50
  import {
51
51
  createZipCodec
52
52
  } from "./chunk-5LU4UCBR.js";
@@ -4909,12 +4909,13 @@ function parseExpression(source, options) {
4909
4909
  scalar: before !== "intersection" && after !== "intersection" && (before === "binary" || after === "binary")
4910
4910
  } };
4911
4911
  if (value.kind === "parentheses") return { ...value, child: select(value.child, "other", "other") };
4912
- if (value.kind === "unary") return { ...value, child: select(value.child, value.op === "%" ? before : "other", value.op === "%" ? "other" : after) };
4912
+ if (value.kind === "unary") return { ...value, child: select(value.child, value.op === "%" ? before : "binary", value.op === "%" ? "binary" : after) };
4913
4913
  if (value.kind === "binary") {
4914
4914
  const neighbor = value.op === "intersection" || value.op === "label-intersection" ? "intersection" : "binary";
4915
4915
  return { ...value, left: select(value.left, before, neighbor), right: select(value.right, neighbor, after) };
4916
4916
  }
4917
4917
  if (value.kind === "call") return { ...value, args: value.args.map((child) => select(child, "other", "other")) };
4918
+ if (value.kind === "array") return { ...value, rows: value.rows.map((row) => row.map((child) => select(child, "other", "other"))) };
4918
4919
  return value;
4919
4920
  };
4920
4921
  root = select(root, "binary", "binary");
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  describe
3
- } from "./chunk-UMDIOL3O.js";
3
+ } from "./chunk-KXU3IRUO.js";
4
4
  import {
5
5
  JqError,
6
6
  JqLimitError,
@@ -105,6 +105,12 @@ var Budget = class {
105
105
  this.assertOpen();
106
106
  });
107
107
  }
108
+ buffered(amount) {
109
+ this.check(this.retained + amount, this.limits.maxBufferedBytes, "buffered bytes");
110
+ }
111
+ outputCapacity(amount) {
112
+ this.check(this.output + amount, this.limits.maxOutputBytes, "output bytes");
113
+ }
108
114
  retain(amount) {
109
115
  this.check(this.retained + amount, this.limits.maxBufferedBytes, "buffered bytes");
110
116
  this.retained += amount;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  readGnumericRichText,
3
3
  writeGnumericRichText
4
- } from "./chunk-X6NJC3IC.js";
4
+ } from "./chunk-75OFBY5R.js";
5
5
  import {
6
6
  createXlsxXml,
7
7
  decodeXlsxString,
@@ -10,16 +10,16 @@ import {
10
10
  expandIndexSheetAreas,
11
11
  metadataNode,
12
12
  writeRichString
13
- } from "./chunk-QDTBMSBE.js";
13
+ } from "./chunk-RO62EWX6.js";
14
14
  import {
15
15
  recalculateWorkbook,
16
16
  rewriteReferences,
17
17
  visitFormula
18
- } from "./chunk-5SHGJ7NO.js";
18
+ } from "./chunk-VA5ZHYYA.js";
19
19
  import {
20
20
  cellValueFormat,
21
21
  converterLocale
22
- } from "./chunk-4QJOYXVB.js";
22
+ } from "./chunk-JV7LBUTP.js";
23
23
  import {
24
24
  SsconvertError,
25
25
  excelGrammar,
@@ -29,7 +29,7 @@ import {
29
29
  parseExpression,
30
30
  serializeExpression,
31
31
  snapshotWorkbook
32
- } from "./chunk-DWFLVJC6.js";
32
+ } from "./chunk-CCRHMAU5.js";
33
33
  import {
34
34
  createZipCodec
35
35
  } from "./chunk-5LU4UCBR.js";
@@ -3465,7 +3465,7 @@ async function readXlsx(bytes, context) {
3465
3465
  const si = attr(f, "si") ?? "0";
3466
3466
  const existing = shared.get(si);
3467
3467
  if (f.text) {
3468
- expression = readOpenFormula(f)?.source ?? formula(f.text, id, position.row, position.column, context, semantics.arrayStringLiterals);
3468
+ expression = readOpenFormula(f)?.source ?? formula(decodeXlsxString(f.text), id, position.row, position.column, context, semantics.arrayStringLiterals);
3469
3469
  groupId = `shared-${si}`;
3470
3470
  shared.set(si, { expression, ...position, id: groupId, ...semantics });
3471
3471
  if (attr(f, "ref")) groups.push({ id: groupId, kind: "shared", expression, range: range(attr(f, "ref")), ...semantics });
@@ -3477,14 +3477,14 @@ async function readXlsx(bytes, context) {
3477
3477
  groupId = existing.id;
3478
3478
  } else invalid("shared formula has no preceding definition");
3479
3479
  } else {
3480
- expression = readOpenFormula(f)?.source ?? formula(f.text, id, position.row, position.column, context, semantics.arrayStringLiterals);
3480
+ expression = readOpenFormula(f)?.source ?? formula(decodeXlsxString(f.text), id, position.row, position.column, context, semantics.arrayStringLiterals);
3481
3481
  if (kind === "array") {
3482
3482
  groupId = `array-${position.row}-${position.column}`;
3483
3483
  groups.push({ id: groupId, kind: "array", expression, range: range(attr(f, "ref")), ...semantics });
3484
3484
  }
3485
3485
  }
3486
3486
  }
3487
- const hasCache = raw !== void 0 && (raw !== "" || type === "str");
3487
+ const hasCache = type === "inlineStr" ? child4(node, "is") !== void 0 : raw !== void 0 && (raw !== "" || type === "str");
3488
3488
  cells.push({
3489
3489
  ...position,
3490
3490
  value,
@@ -3801,6 +3801,7 @@ function createXlsxWriter(edition) {
3801
3801
  })).join(""));
3802
3802
  const workbookRelations = [];
3803
3803
  const shared = [], sharedIds = /* @__PURE__ */ new Map(), stringCounts = /* @__PURE__ */ new Map();
3804
+ let sharedReferences = 0;
3804
3805
  let totalCells = 0;
3805
3806
  for (const sheet of book.sheets) for (const cell of sheet.cells) {
3806
3807
  charge();
@@ -3907,13 +3908,14 @@ function createXlsxWriter(edition) {
3907
3908
  ...array ? { t: "array", ref: rangeText(array.range) } : {},
3908
3909
  ...formulaSemanticsAttributes(array?.arrayStringLiterals ?? cell.arrayStringLiterals, true, cell.formula)
3909
3910
  },
3910
- escapeXlsx(exportXlsxFormula(book, cell.formula, sheet, cell.row, cell.column, context, array?.arrayStringLiterals ?? cell.arrayStringLiterals))
3911
+ escapeXlsx(encodeXlsxString(exportXlsxFormula(book, cell.formula, sheet, cell.row, cell.column, context, array?.arrayStringLiterals ?? cell.arrayStringLiterals)))
3911
3912
  );
3912
3913
  if (value.kind === "string") {
3913
3914
  if (cell.formula) {
3914
3915
  type = "str";
3915
3916
  body += xml("v", {}, escapeXlsx(encodeXlsxString(value.value)));
3916
3917
  } else if ((stringCounts.get(stringKey) ?? 0) > 1) {
3918
+ sharedReferences++;
3917
3919
  type = "s";
3918
3920
  let id2 = sharedIds.get(stringKey);
3919
3921
  if (id2 === void 0) {
@@ -4009,7 +4011,7 @@ function createXlsxWriter(edition) {
4009
4011
  sheetNodes.push(xml("sheet", { name: sheet.name, sheetId: index + 1, "r:id": id }));
4010
4012
  }
4011
4013
  if (shared.length) {
4012
- await add("xl/sharedStrings.xml", xml("sst", { xmlns: namespace3, uniqueCount: shared.length, count: shared.length }, shared.map((cell) => xml("si", {}, writeRichString(cell.value.kind === "string" ? cell.value.value : "", cell.richText, xml, charge))).join("")), "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml");
4014
+ await add("xl/sharedStrings.xml", xml("sst", { xmlns: namespace3, uniqueCount: shared.length, count: sharedReferences }, shared.map((cell) => xml("si", {}, writeRichString(cell.value.kind === "string" ? cell.value.value : "", cell.richText, xml, charge))).join("")), "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml");
4013
4015
  workbookRelations.push({ id: `rId${workbookRelations.length + 1}`, type: relationships + "/sharedStrings", target: "sharedStrings.xml" });
4014
4016
  }
4015
4017
  await add("xl/styles.xml", styles.serialize(), "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml");
@@ -79,7 +79,7 @@ var Scanner = class {
79
79
  while (BigInt(this.absolute) < start) if (await this.nextByte() === void 0) break;
80
80
  this.endByte = end;
81
81
  }
82
- async *raw() {
82
+ async *raw(output = true) {
83
83
  const bytes = new Bytes(this.budget);
84
84
  try {
85
85
  while (true) {
@@ -90,13 +90,13 @@ var Scanner = class {
90
90
  if (p) await p;
91
91
  }
92
92
  if (bytes.length === 4096) {
93
- this.budget.add("maxOutputBytes", bytes.length);
93
+ if (output) this.budget.add("maxOutputBytes", bytes.length);
94
94
  yield bytes.view();
95
95
  bytes.free();
96
96
  }
97
97
  }
98
98
  if (bytes.length) {
99
- this.budget.add("maxOutputBytes", bytes.length);
99
+ if (output) this.budget.add("maxOutputBytes", bytes.length);
100
100
  yield bytes.view();
101
101
  }
102
102
  } finally {
@@ -5,15 +5,16 @@ import {
5
5
  Lifecycle,
6
6
  Reader,
7
7
  fsDetail
8
- } from "./chunk-3NG75MOB.js";
8
+ } from "./chunk-67GQA75T.js";
9
9
  import {
10
+ formatCustom,
10
11
  parse
11
- } from "./chunk-KAGBORIC.js";
12
+ } from "./chunk-MWUZZWXK.js";
12
13
  import {
13
14
  Budget,
14
15
  HexdumpError,
15
16
  settings
16
- } from "./chunk-KKG4BAFZ.js";
17
+ } from "./chunk-DIEPXUM4.js";
17
18
  import {
18
19
  init_buffer
19
20
  } from "./chunk-HX3SHTCE.js";
@@ -26,8 +27,10 @@ import { outputFailure } from "../../safe-bash-contracts/io.js";
26
27
  async function dump(options, lifecycle, name) {
27
28
  if (options.count === 0) return 0;
28
29
  const { budget } = lifecycle;
29
- budget.retain(32);
30
- const block = new Uint8Array(16), previous = new Uint8Array(16);
30
+ const blockSize = Math.max(options.formats.length ? 16 : 0, ...options.custom.map((format) => format.size));
31
+ if (blockSize === 0) return 0;
32
+ budget.retain(blockSize * 2);
33
+ const block = new Uint8Array(blockSize), previous = new Uint8Array(blockSize);
31
34
  let address = 0, used = 0, skip = options.skip, count = options.count;
32
35
  let hasPrevious = false, squeezed = false, exitCode = 0;
33
36
  let firstWrite = true, outBuf = "";
@@ -49,7 +52,11 @@ async function dump(options, lifecycle, name) {
49
52
  if (outBuf.length >= 16384) return flushOut();
50
53
  };
51
54
  const emitAsync = async () => {
52
- for (const format of options.formats) {
55
+ for (const format of options.ordered) {
56
+ if (typeof format !== "string") {
57
+ await writeOut(await formatCustom(format, block, used, address, false, budget));
58
+ continue;
59
+ }
53
60
  budget.charge(16);
54
61
  const cp = budget.checkpointWork();
55
62
  if (cp) {
@@ -66,7 +73,7 @@ async function dump(options, lifecycle, name) {
66
73
  used = 0;
67
74
  };
68
75
  const emit = () => {
69
- let same = hasPrevious && (options.dialect !== "util-linux" || used === 16);
76
+ let same = hasPrevious && (options.dialect !== "util-linux" || used === blockSize);
70
77
  for (let index = 0; same && index < used; index++) if (block[index] !== previous[index]) same = false;
71
78
  budget.charge(used);
72
79
  if (!options.verbose && same) {
@@ -77,7 +84,7 @@ async function dump(options, lifecycle, name) {
77
84
  used = 0;
78
85
  return p;
79
86
  }
80
- if (options.formats.length === 1 && unlimitedFast && !firstWrite && currentReader?.hasBufferedBytes()) {
87
+ if (options.custom.length === 0 && options.formats.length === 1 && unlimitedFast && !firstWrite && currentReader?.hasBufferedBytes()) {
81
88
  budget.charge(16);
82
89
  const cp = budget.checkpointWork();
83
90
  if (!cp) {
@@ -119,22 +126,22 @@ async function dump(options, lifecycle, name) {
119
126
  }
120
127
  if (opened) {
121
128
  while (count > 0) {
122
- if (skip === 0 && used === 0 && count >= 16 && reader.hasBufferedBytes()) {
129
+ if (skip === 0 && used === 0 && count >= blockSize && reader.hasBufferedBytes()) {
123
130
  const cp = budget.checkpointWork();
124
131
  if (cp) await cp;
125
- if (reader.canReadBlockSync(16)) {
126
- reader.readBlockSync(block, 16);
127
- used = 16;
128
- count -= 16;
132
+ if (reader.canReadBlockSync(blockSize)) {
133
+ reader.readBlockSync(block, blockSize);
134
+ used = blockSize;
135
+ count -= blockSize;
129
136
  const p = emit();
130
137
  if (p) await p;
131
138
  continue;
132
139
  }
133
140
  }
134
- if (skip === 0 && used === 0 && count >= 16 && reader.canReadBlockSync(16)) {
135
- reader.readBlockSync(block, 16);
136
- used = 16;
137
- count -= 16;
141
+ if (skip === 0 && used === 0 && count >= blockSize && reader.canReadBlockSync(blockSize)) {
142
+ reader.readBlockSync(block, blockSize);
143
+ used = blockSize;
144
+ count -= blockSize;
138
145
  const p = emit();
139
146
  if (p) await p;
140
147
  continue;
@@ -159,7 +166,7 @@ async function dump(options, lifecycle, name) {
159
166
  }
160
167
  block[used++] = byte;
161
168
  count--;
162
- if (used === 16) {
169
+ if (used === blockSize) {
163
170
  const p = emit();
164
171
  if (p) await p;
165
172
  }
@@ -174,7 +181,9 @@ async function dump(options, lifecycle, name) {
174
181
  if (p) await p;
175
182
  }
176
183
  await flushOut();
177
- if (address > 0) await lifecycle.write(address.toString(16).padStart(options.formats.at(-1) === "C" ? 8 : 7, "0") + "\n");
184
+ const finalFormat = options.ordered.findLast((format) => typeof format === "string" || format.finalUnit !== void 0);
185
+ if (finalFormat && typeof finalFormat !== "string") await lifecycle.write(await formatCustom(finalFormat, block, 0, address, true, budget));
186
+ else if (address > 0 && finalFormat) await lifecycle.write(address.toString(16).padStart(finalFormat === "C" ? 8 : 7, "0") + "\n");
178
187
  return exitCode;
179
188
  }
180
189
  async function execute(context, name, limits, dialect) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  pathOf
3
- } from "./chunk-XAFSZDY2.js";
3
+ } from "./chunk-XS72HTMA.js";
4
4
  import {
5
5
  inputRequirements
6
6
  } from "./chunk-773DWG4H.js";
@@ -93,7 +93,7 @@ function createSyncSingleChunkByteSource(bytes, signal) {
93
93
  };
94
94
  }
95
95
  function requiredFileInput(context, requirements, mode, file, maxBytes) {
96
- if (maxBytes === Infinity) {
96
+ if (maxBytes === Infinity && (context.inputBudget?.maxBytes ?? Infinity) === Infinity) {
97
97
  const fastMemFs = context._fastMemoryBackingFs;
98
98
  if (fastMemFs !== void 0 && fastMemFs.capabilitiesFor === void 0 && context._cachedInputBudget === void 0 && !Object.prototype.hasOwnProperty.call(fastMemFs, "readStream") && !Object.prototype.hasOwnProperty.call(fastMemFs, "readFile")) {
99
99
  const path2 = pathOf(context, file);
@@ -137,6 +137,7 @@ async function* requiredFileInputSlow(context, requirements, mode, file, maxByte
137
137
  reading = false;
138
138
  if (chunk.byteLength > maxBytes - bytes) throw new FsError("EFBIG", { syscall: "read", path, message: "input file byte limit exceeded" });
139
139
  bytes += chunk.byteLength;
140
+ context.inputBudget?.check(bytes);
140
141
  if (chunk.byteLength) emitted = true;
141
142
  yield chunk;
142
143
  reading = true;
@@ -148,7 +149,9 @@ async function* requiredFileInputSlow(context, requirements, mode, file, maxByte
148
149
  }
149
150
  }
150
151
  if (capabilities.read !== false && context.fs.capabilities.read !== false) {
151
- yield await context.fs.readFile(path, { signal: context.signal, ...Number.isFinite(maxBytes) ? { maxBytes } : {} });
152
+ const bytes = await context.fs.readFile(path, { signal: context.signal, ...Number.isFinite(maxBytes) ? { maxBytes } : {} });
153
+ context.inputBudget?.check(bytes.byteLength);
154
+ yield bytes;
152
155
  return;
153
156
  }
154
157
  throw new FsError("ENOTSUP", { syscall: "readFile", path });
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  CurlError
3
- } from "./chunk-IYPAQ7PH.js";
3
+ } from "./chunk-GRBWW4SG.js";
4
4
  import {
5
5
  init_buffer
6
6
  } from "./chunk-HX3SHTCE.js";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  configuredTable
3
- } from "./chunk-QZF3SINC.js";
3
+ } from "./chunk-LAOM65EE.js";
4
4
  import {
5
5
  ColumnInputs,
6
6
  diagnostics
7
- } from "./chunk-K543PB3I.js";
7
+ } from "./chunk-G66QUHIZ.js";
8
8
  import {
9
9
  helpText,
10
10
  parse,
@@ -17,7 +17,7 @@ import {
17
17
  fields,
18
18
  validateScalar,
19
19
  whitespace
20
- } from "./chunk-NI7MKJPN.js";
20
+ } from "./chunk-MTQH74CF.js";
21
21
  import {
22
22
  init_buffer
23
23
  } from "./chunk-HX3SHTCE.js";
@@ -7,6 +7,7 @@ import {
7
7
 
8
8
  // packages/safe-bash-command-column/src/internal.ts
9
9
  init_buffer();
10
+ import { subscribeAbort } from "../../safe-bash-contracts/index.js";
10
11
  import { bytesFrom, concatBytes, utf8ByteLength } from "../../safe-bash-byte-engine/index.js";
11
12
  import { publicDiagnosticMessage } from "../../safe-bash-contracts/diagnostics.js";
12
13
  import { inheritYieldCheckpoint, yieldTurn } from "../../safe-bash-contracts/yield.js";
@@ -36,12 +37,6 @@ var ColumnBudget = class _ColumnBudget extends Budget {
36
37
  constructor(context, columnLimits) {
37
38
  super(context, readerSettings(columnLimits), _ColumnBudget.outputChunkBytes);
38
39
  this.columnLimits = columnLimits;
39
- const sig = context.signal;
40
- this.pollSignal = typeof sig.addEventListener !== "function" || Object.prototype.hasOwnProperty.call(sig, "aborted");
41
- if (sig.aborted) this.aborted = true;
42
- else if (!this.pollSignal) sig.addEventListener("abort", () => {
43
- this.aborted = true;
44
- }, { once: true });
45
40
  }
46
41
  columnLimits;
47
42
  static outputChunkBytes = 8192;
@@ -50,8 +45,6 @@ var ColumnBudget = class _ColumnBudget extends Budget {
50
45
  emittedBytes = 0;
51
46
  retainedBytes = 0;
52
47
  projectedBytes = 0;
53
- aborted = false;
54
- pollSignal;
55
48
  check(value, maximum, label) {
56
49
  if (!Number.isSafeInteger(value) || value < 0 || value > maximum) {
57
50
  throw new FsError("EFBIG", { message: `column ${label} limit exceeded` });
@@ -70,10 +63,7 @@ var ColumnBudget = class _ColumnBudget extends Budget {
70
63
  this.projectedBytes += size;
71
64
  }
72
65
  work(amount) {
73
- if (this.aborted || this.pollSignal && this.context.signal.aborted) {
74
- this.aborted = true;
75
- this.context.signal.throwIfAborted();
76
- }
66
+ this.context.signal.throwIfAborted();
77
67
  this.check(amount, this.columnLimits.maxSteps - this.workUsed, "work");
78
68
  this.workUsed += amount;
79
69
  this.untilYield -= amount;
@@ -113,40 +103,21 @@ var ColumnBudget = class _ColumnBudget extends Budget {
113
103
  }
114
104
  }
115
105
  };
116
- var columnSignalWaiters = /* @__PURE__ */ new WeakMap();
117
- function getColumnSignalWaiters(signal) {
118
- let waiters = columnSignalWaiters.get(signal);
119
- if (!waiters) {
120
- waiters = /* @__PURE__ */ new Set();
121
- columnSignalWaiters.set(signal, waiters);
122
- signal.addEventListener("abort", () => {
123
- const pending = [...waiters];
124
- waiters.clear();
125
- for (const fn of pending) fn();
126
- }, { once: true });
127
- }
128
- return waiters;
129
- }
130
106
  function cancellable(operation, signal) {
131
107
  signal.throwIfAborted();
132
- const waiters = getColumnSignalWaiters(signal);
133
108
  return new Promise((resolve, reject) => {
134
- const onAbort = () => {
135
- waiters.delete(onAbort);
136
- reject(signal.reason);
137
- };
138
- waiters.add(onAbort);
109
+ const unsubscribe = subscribeAbort(signal, () => reject(signal.reason));
139
110
  try {
140
111
  Promise.resolve(operation()).then((value) => {
141
- waiters.delete(onAbort);
112
+ unsubscribe();
142
113
  if (signal.aborted) reject(signal.reason);
143
114
  else resolve(value);
144
115
  }, (error) => {
145
- waiters.delete(onAbort);
116
+ unsubscribe();
146
117
  reject(error);
147
118
  });
148
119
  } catch (error) {
149
- waiters.delete(onAbort);
120
+ unsubscribe();
150
121
  reject(error);
151
122
  }
152
123
  });
@@ -11,7 +11,7 @@ import {
11
11
  } from "../../safe-bash-contracts/index.js";
12
12
  import { PublicDiagnostic, publicDiagnosticMessage } from "../../safe-bash-contracts/diagnostics.js";
13
13
  import { writeDiagnostic } from "../../safe-bash-contracts/escaping.js";
14
- import { yieldTurn } from "../../safe-bash-contracts/yield.js";
14
+ import { monotonicNow, yieldTurn } from "../../safe-bash-contracts/yield.js";
15
15
  import { byteLength, concatBytes, decodeBytes, encodeBytes } from "../../safe-bash-io-engine/byte-encoding.js";
16
16
  import { pathOf } from "../../safe-bash-io-engine/internal.js";
17
17
  var ToolError = class extends PublicDiagnostic {
@@ -24,13 +24,6 @@ var ToolError = class extends PublicDiagnostic {
24
24
  var Budget = class _Budget {
25
25
  constructor(context, options) {
26
26
  this.context = context;
27
- this.signalAborted = context.signal.aborted;
28
- this.pollSignal = Object.prototype.hasOwnProperty.call(context.signal, "aborted");
29
- if (!this.signalAborted && !this.pollSignal) {
30
- context.signal.addEventListener("abort", () => {
31
- this.signalAborted = true;
32
- }, { once: true });
33
- }
34
27
  this.limits = {
35
28
  maxInputBytes: options.maxInputBytes ?? Infinity,
36
29
  maxOutputBytes: options.maxOutputBytes ?? Infinity,
@@ -54,10 +47,10 @@ var Budget = class _Budget {
54
47
  lines = 0;
55
48
  work = 0;
56
49
  nextYield = 4096;
50
+ lastCheckpointTime;
51
+ nextYieldTime = 0;
57
52
  files = 0;
58
53
  hunks = 0;
59
- signalAborted;
60
- pollSignal;
61
54
  get maxBufferBytes() {
62
55
  return this.limits.maxInputBytes;
63
56
  }
@@ -68,15 +61,23 @@ var Budget = class _Budget {
68
61
  return this.limits.maxFiles - this.files;
69
62
  }
70
63
  step(amount = 1) {
71
- if (this.pollSignal ? this.context.signal.aborted : this.signalAborted) this.context.signal.throwIfAborted();
64
+ this.context.signal.throwIfAborted();
72
65
  this.work += amount;
73
66
  if (this.work > this.limits.maxWork) throw new ToolError("work limit exceeded");
74
67
  }
75
68
  checkpoint() {
76
- if (this.pollSignal ? this.context.signal.aborted : this.signalAborted) this.context.signal.throwIfAborted();
69
+ this.context.signal.throwIfAborted();
77
70
  if (this.work >= this.nextYield) {
78
71
  this.nextYield = this.work + 4096;
79
- return yieldTurn(this.context.signal);
72
+ const now = monotonicNow();
73
+ const previous = this.lastCheckpointTime;
74
+ this.lastCheckpointTime = now;
75
+ if (previous === void 0 || now <= previous || now >= this.nextYieldTime) {
76
+ return yieldTurn(this.context.signal).then(() => {
77
+ this.lastCheckpointTime = monotonicNow();
78
+ this.nextYieldTime = this.lastCheckpointTime + 16;
79
+ });
80
+ }
80
81
  }
81
82
  }
82
83
  file() {
@@ -110,11 +111,14 @@ var Budget = class _Budget {
110
111
  }
111
112
  async read(path, encoding = "utf8") {
112
113
  this.context.signal.throwIfAborted();
113
- const remaining = this.limits.maxInputBytes - this.inputBytes;
114
+ const remaining = Math.min(this.limits.maxInputBytes, this.context.inputBudget?.maxBytes ?? Infinity) - this.inputBytes;
114
115
  const capabilities = path === "-" ? void 0 : await host(this.context, async () => await this.context.fs.capabilitiesFor?.(path, { signal: this.context.signal }) ?? this.context.fs.capabilities);
116
+ const streamed = path === "-" || this.context.fs.readStream && capabilities?.streamingRead !== false;
115
117
  const bytes = path === "-" ? await collectBytes(this.chunks(this.context.stdin), { signal: this.context.signal, ...Number.isFinite(remaining) ? { maxBytes: remaining } : {} }) : this.context.fs.readStream && capabilities?.streamingRead !== false ? await collectBytes(this.chunks(this.context.fs.readStream(path, { signal: this.context.signal })), { signal: this.context.signal, ...Number.isFinite(remaining) ? { maxBytes: remaining } : {} }) : await host(this.context, () => this.context.fs.readFile(path, { signal: this.context.signal, ...Number.isFinite(remaining) ? { maxBytes: remaining } : {} }));
116
- this.inputBytes += bytes.byteLength;
117
- if (this.inputBytes > this.limits.maxInputBytes) throw new ToolError("input byte limit exceeded");
118
+ if (!streamed) {
119
+ this.input(bytes.byteLength);
120
+ if (this.inputBytes > this.limits.maxInputBytes) throw new ToolError("input byte limit exceeded");
121
+ }
118
122
  return encoding === "latin1" ? decodeBytes(encodeBytes(bytes), "latin1") : this.text(bytes);
119
123
  }
120
124
  async readDiff(path, encoding = "utf8") {
@@ -141,7 +145,7 @@ var Budget = class _Budget {
141
145
  if (!sameIdentity(stat, expected) || stat.size !== expected.size || stat.revision !== expected.revision)
142
146
  throw new ToolError("diff input changed while opening");
143
147
  await verifyAncestors();
144
- const remaining = this.limits.maxInputBytes - this.inputBytes;
148
+ const remaining = Math.min(this.limits.maxInputBytes, this.context.inputBudget?.maxBytes ?? Infinity) - this.inputBytes;
145
149
  if (stat.size > remaining) throw new ToolError("input byte limit exceeded");
146
150
  const chunks = [];
147
151
  let position = 0;
@@ -154,14 +158,14 @@ var Budget = class _Budget {
154
158
  const size = Math.min(65536, stat.size - position);
155
159
  const chunk = await handle.read(position, size, { signal });
156
160
  if (!chunk.length || chunk.length > size) throw new ToolError("diff input changed while reading");
157
- chunks.push(chunk);
161
+ this.input(chunk.length);
162
+ chunks.push(new Uint8Array(chunk));
158
163
  position += chunk.length;
159
164
  }
160
165
  const after = await handle.stat({ signal });
161
166
  if (!sameIdentity(after, stat) || after.size !== stat.size || after.revision !== stat.revision)
162
167
  throw new ToolError("diff input changed while reading");
163
168
  const bytes = concatBytes(chunks, position);
164
- this.inputBytes += position;
165
169
  return encoding === "latin1" ? decodeBytes(bytes, "latin1") : this.text(bytes);
166
170
  } finally {
167
171
  await handle.close();
@@ -174,9 +178,15 @@ var Budget = class _Budget {
174
178
  const c = this.checkpoint();
175
179
  if (c) await c;
176
180
  }
181
+ this.input(chunk.byteLength);
177
182
  yield chunk;
178
183
  }
179
184
  }
185
+ input(bytes) {
186
+ const total = this.inputBytes + bytes;
187
+ this.context.inputBudget?.check(total);
188
+ this.inputBytes = total;
189
+ }
180
190
  output(text, encoding = "utf8") {
181
191
  this.outputBytes += byteLength(text, encoding);
182
192
  if (this.outputBytes > this.limits.maxOutputBytes) throw new ToolError("output byte limit exceeded");
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CurlError,
3
3
  defaultNetworkLimits
4
- } from "./chunk-IYPAQ7PH.js";
4
+ } from "./chunk-GRBWW4SG.js";
5
5
  import {
6
6
  scheduleNetworkDeadline
7
7
  } from "./chunk-KWESKQHR.js";
@@ -12,6 +12,9 @@ var defaultNetworkLimits = Object.freeze({
12
12
  maxRedirects: Infinity,
13
13
  maxRetries: Infinity,
14
14
  maxUrls: Infinity,
15
+ maxInputLines: Infinity,
16
+ maxConfigDepth: Infinity,
17
+ maxEncodingLayers: Infinity,
15
18
  maxTimeMs: Infinity,
16
19
  maxTotalTimeMs: Infinity
17
20
  });
@@ -23,6 +26,9 @@ var cloudflareWorkerNetworkLimits = Object.freeze({
23
26
  maxRedirects: 2,
24
27
  maxRetries: 1,
25
28
  maxUrls: 8,
29
+ maxInputLines: 4096,
30
+ maxConfigDepth: 16,
31
+ maxEncodingLayers: 4,
26
32
  maxTimeMs: 1e4,
27
33
  maxTotalTimeMs: 1e4
28
34
  });
@@ -104,6 +104,7 @@ function createNlWithSettings(limits) {
104
104
  current = section === 0 ? footer : section === 1 ? body : header;
105
105
  if (!parsed.flags.has("p")) number = start;
106
106
  if (canBatch) {
107
+ session.admitOutput(1);
107
108
  if (outUsed + 1 <= outBuf.length && flushedFirst && outUsed + 1 < 8192) {
108
109
  outBuf[outUsed++] = 10;
109
110
  return;