@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,8 +0,0 @@
1
- import { grammarRevision, nativeReference } from './options.generated.js';
2
- import { imageMagickGrammarRevision, imageMagickReference } from './imagemagick.generated.js';
3
- /** The shipped JS identity is shared by client and server admission. It cannot
4
- * be rewritten by a caller to authorize another native build. */
5
- export const mediaFrontendContract = Object.freeze({
6
- grammarRevision: [grammarRevision, imageMagickGrammarRevision].join('+'),
7
- sourceRevision: [nativeReference.id, imageMagickReference.id].join('+'),
8
- });
@@ -1,6 +0,0 @@
1
- import type { Discovery } from './types.js';
2
- import type { ImageMagickDiscovery } from './imagemagick.js';
3
- import type { AccessGraph } from './resolution-types.js';
4
- /** Native deferrals are advisory diagnostics, never errors to throw before
5
- * execution. Grammar failures cannot certify a complete static parse. */
6
- export declare function frontendIssues(deferred: Discovery['deferred'] | ImageMagickDiscovery['deferred']): AccessGraph['issues'];
@@ -1,9 +0,0 @@
1
- /** Native deferrals are advisory diagnostics, never errors to throw before
2
- * execution. Grammar failures cannot certify a complete static parse. */
3
- export function frontendIssues(deferred) {
4
- return deferred.map(item => ({
5
- reason: ['unknown-option', 'missing-value', 'filter-syntax', 'unknown option; native validation',
6
- 'missing option operand before implicit output', 'incomplete script token'].includes(item.reason) ? 'syntax' : 'live',
7
- detail: `Frontend ${'source' in item ? item.source : 'argv'} at index ${item.index}: ${item.reason}`,
8
- }));
9
- }
@@ -1,42 +0,0 @@
1
- import type { ImageMagickResource } from './imagemagick.js';
2
- import type { AccessReference } from './resolution-types.js';
3
- /** Likely suffix grammar from IsSceneGeometry/ParseGeometry, not validation.
4
- * Native parsing still decides whether these bytes form a usable selector. */
5
- export declare const imageMagickSelectorCharacters = "0123456789xXeE+-,. %!<>^@/:()#\t\r\n\f\v\u00D7";
6
- /** RenderType probes ordinary font names literally. Only leading @ selects
7
- * RenderFreetype's SetImageInfo face resolver; this is not an image reader. */
8
- export declare function parseImageMagickFontOperand(value: Uint8Array, options?: {
9
- accessible?: (name: string) => Promise<boolean | undefined>;
10
- literalFilenames?: boolean;
11
- /** The modern CLI interprets option properties; legacy font settings do not. */
12
- interpretProperties?: boolean;
13
- }): Promise<{
14
- name: string;
15
- kind: 'path' | 'dynamic' | 'lookup';
16
- deferred: string[];
17
- }>;
18
- /** SetImageInfo/GetPathComponent hints shared by invocation and image readers.
19
- * Accessibility is advisory; coder selection and literal filename fallback remain
20
- * native decisions. This parser never expands @ lists or probes image contents. */
21
- export declare function parseImageMagickOperand(value: Uint8Array, options?: {
22
- accessible?: (name: string) => Promise<boolean | undefined>;
23
- /** GetPathAttributes/stat success; not regular-file accessibility. */
24
- exists?: (name: string) => Promise<boolean | undefined>;
25
- literalFilenames?: boolean;
26
- expandFilenames?: boolean;
27
- /** SetImageInfo(frames=1) file readers do not interpolate scene filenames. */
28
- filenameExpressions?: boolean;
29
- access?: ImageMagickResource['access'];
30
- }): Promise<{
31
- name: string;
32
- kind: ImageMagickResource['kind'];
33
- coder?: string;
34
- text?: string;
35
- selector?: boolean;
36
- deferred: string[];
37
- }>;
38
- /** ReadImage/WriteImage positions bypass the CLI's ExpandFilenames pass. */
39
- export declare function imageMagickReaderReferences(value: Uint8Array, cwd: Uint8Array, access: AccessReference['access'], options?: Parameters<typeof parseImageMagickOperand>[1]): Promise<AccessReference[]>;
40
- /** InterpretImageProperties probes a leading @ filename before replacement.
41
- * Missing optional text remains native literal text; no replacement is evaluated. */
42
- export declare function imageMagickPropertyReference(value: Uint8Array, cwd: Uint8Array): AccessReference | undefined;
@@ -1,229 +0,0 @@
1
- import { byteText, textBytes } from './bytes.js';
2
- import { parseFilenameExpression } from './filename-expression.js';
3
- const syntheticCoders = new Set(['xc', 'canvas', 'gradient', 'radial-gradient', 'plasma', 'pattern', 'rose', 'logo', 'wizard', 'granite', 'netscape', 'null', 'hald']);
4
- /** Likely suffix grammar from IsSceneGeometry/ParseGeometry, not validation.
5
- * Native parsing still decides whether these bytes form a usable selector. */
6
- export const imageMagickSelectorCharacters = '0123456789xXeE+-,. %!<>^@/:()#\t\r\n\f\v\xD7';
7
- /** RenderType probes ordinary font names literally. Only leading @ selects
8
- * RenderFreetype's SetImageInfo face resolver; this is not an image reader. */
9
- export async function parseImageMagickFontOperand(value, options = {}) {
10
- let name = byteText(value);
11
- const deferred = [];
12
- const accessible = async (path) => {
13
- try {
14
- return await options.accessible?.(path);
15
- }
16
- catch {
17
- return undefined;
18
- }
19
- };
20
- if (options.interpretProperties !== false && name.includes('%'))
21
- return { name, kind: 'dynamic', deferred: ['native font property expression'] };
22
- if (name.startsWith('@')) {
23
- name = name.slice(1);
24
- const literal = await accessible(name);
25
- if (name.includes(':'))
26
- return { name, kind: 'dynamic', deferred: ['native font coder filename normalization'] };
27
- if (name.endsWith(']') && !(options.literalFilenames && literal === true)) {
28
- const bracket = name.lastIndexOf('[');
29
- const selector = name.slice(bracket + 1, -1);
30
- if (bracket >= 0 && selector.length && [...selector].every(c => imageMagickSelectorCharacters.includes(c)))
31
- name = name.slice(0, bracket);
32
- else
33
- deferred.push('native font face selector or literal brackets');
34
- if (literal === undefined)
35
- deferred.push('filesystem-sensitive font filename');
36
- }
37
- return { name, kind: 'path', deferred };
38
- }
39
- // Path-shaped names remain candidates when missing; native can instead
40
- // select a registered type or renderer. Predictions never validate a font.
41
- if (name.includes('/') || name.includes('.') || name.includes('[') || await accessible(name) === true)
42
- return { name, kind: 'path', deferred };
43
- return { name, kind: 'lookup', deferred: ['native font lookup'] };
44
- }
45
- /** SetImageInfo/GetPathComponent hints shared by invocation and image readers.
46
- * Accessibility is advisory; coder selection and literal filename fallback remain
47
- * native decisions. This parser never expands @ lists or probes image contents. */
48
- export async function parseImageMagickOperand(value, options = {}) {
49
- let name = byteText(value), kind = 'path';
50
- let selectorRemoved = false;
51
- const deferred = [];
52
- const accessible = async (path) => {
53
- try {
54
- return await options.accessible?.(path);
55
- }
56
- catch {
57
- deferred.push('filesystem-sensitive accessibility probe failed');
58
- return undefined;
59
- }
60
- };
61
- const exists = async (path) => {
62
- try {
63
- return await options.exists?.(path);
64
- }
65
- catch {
66
- deferred.push('filesystem-sensitive stat probe failed');
67
- return undefined;
68
- }
69
- };
70
- // GetPathComponent removes scene geometry before its colon/file check.
71
- // A file named xc:red[0] does not shadow xc: unless literal mode retains
72
- // that suffix; conversely xc:red can shadow xc:red[0] after stripping it.
73
- let classificationName = name;
74
- if (name.endsWith(']')) {
75
- const bracket = name.lastIndexOf('['), selector = name.slice(bracket + 1, -1);
76
- if (bracket >= 0 && selector.length && [...selector].every(c => imageMagickSelectorCharacters.includes(c))
77
- && !(options.literalFilenames && await accessible(name) === true))
78
- classificationName = name.slice(0, bracket);
79
- }
80
- const colon = name.indexOf(':');
81
- const candidateAccessible = colon > 0 ? await accessible(classificationName) : undefined;
82
- const candidateExists = colon > 0 && candidateAccessible !== true ? await exists(classificationName) : candidateAccessible;
83
- const prefix = colon > 0 && candidateAccessible !== true && candidateExists !== true ? name.slice(0, colon).toLowerCase() : '';
84
- if (colon > 0 && candidateAccessible !== true && candidateExists === undefined)
85
- deferred.push('filesystem-sensitive coder or literal filename');
86
- let text;
87
- if (prefix === 'mpr')
88
- kind = 'register';
89
- // WriteImage may fall back from a read-only coder to the decoded image's
90
- // encoder, restoring the original filename (constitute.c). Source syntax
91
- // therefore does not imply a destination without filesystem effects.
92
- else if (options.access === 'write' && prefix !== 'null' &&
93
- (syntheticCoders.has(prefix) || ['caption', 'label', 'pango'].includes(prefix))) {
94
- kind = 'dynamic';
95
- deferred.push('native encoder selection and literal filename fallback');
96
- }
97
- // INLINE/DATA readers use LocaleNCompare for the normalized filename's
98
- // leading data: scheme. Other operands are blob filenames, including destinations.
99
- // Keep this lexical hint independent of base64 and image validation.
100
- else if (['inline', 'data'].includes(prefix) && options.access !== 'write' && name.slice(colon + 1, colon + 6).toLowerCase() === 'data:')
101
- kind = 'synthetic';
102
- else if (name === '-')
103
- kind = 'descriptor';
104
- else if (prefix === 'fd') {
105
- // OpenBlob checks IsGeometry before fdopen, unlike script-token.c.
106
- // Decimal descriptors are a useful hint; other spellings may be native
107
- // geometry or fall through to a literal filename. Do not validate them
108
- // here or remove their spelling as though fd were an image coder.
109
- const descriptor = name.slice(colon + 1);
110
- if (descriptor.length && [...descriptor].every(c => '0123456789'.includes(c)))
111
- kind = 'descriptor';
112
- else {
113
- kind = 'dynamic';
114
- deferred.push('native descriptor geometry or literal filename');
115
- }
116
- }
117
- else if (['http', 'https', 'ftp'].includes(prefix))
118
- kind = 'url';
119
- else if (['caption', 'label', 'pango'].includes(prefix)) {
120
- // LABEL interprets SetImageInfo's canonical filename, which removes a
121
- // scene suffix. CAPTION/PANGO prefer the retained filename option instead.
122
- // Literal registry mode selects SubcanonicalPath for an explicit coder,
123
- // retaining the suffix even when the original coder operand is not a file.
124
- kind = 'synthetic';
125
- text = (prefix === 'label' && !options.literalFilenames ? classificationName : name).slice(colon + 1);
126
- }
127
- else if (syntheticCoders.has(prefix))
128
- kind = 'synthetic';
129
- // InterpretImageFilename returns the original spelling in literal registry
130
- // mode. External sources still need the runtime bridge in that mode.
131
- else if ((!options.literalFilenames && options.filenameExpressions !== false && name.includes('%')) || ['screenshot', 'clipboard'].includes(prefix)) {
132
- kind = 'dynamic';
133
- deferred.push('native expression, scene filename or external source');
134
- if (prefix && name.includes('%') && [...prefix].every(c => 'abcdefghijklmnopqrstuvwxyz0123456789_-'.includes(c)))
135
- name = name.slice(colon + 1);
136
- }
137
- else {
138
- let literal = await accessible(name);
139
- if (literal === undefined && (name.includes('[') || colon > 0))
140
- deferred.push('filesystem-sensitive filename');
141
- const explicitCoder = prefix !== '' && [...prefix].every(c => 'abcdefghijklmnopqrstuvwxyz0123456789_-'.includes(c));
142
- if (explicitCoder) {
143
- name = name.slice(colon + 1);
144
- literal = await accessible(name);
145
- }
146
- // SetImageInfo selects SubcanonicalPath for an explicit coder in literal
147
- // registry mode, even for missing files and not-yet-created destinations.
148
- // GetPathComponent's ordinary literal-path check is a different call site.
149
- const retainCoderSuffix = options.literalFilenames && explicitCoder;
150
- if (name.endsWith(']') && !retainCoderSuffix && !(options.literalFilenames && literal === true)) {
151
- const bracket = name.lastIndexOf('['), selector = name.slice(bracket + 1, -1);
152
- if (bracket >= 0 && selector.length && [...selector].every(c => imageMagickSelectorCharacters.includes(c))) {
153
- name = name.slice(0, bracket);
154
- selectorRemoved = true;
155
- }
156
- else if (bracket >= 0)
157
- deferred.push('native selector or literal brackets');
158
- }
159
- if (name === '-' && prefix)
160
- kind = 'descriptor';
161
- else if (options.expandFilenames && await accessible(byteText(value)) !== true) {
162
- // ExpandFilenames uses the scene-normalized tail before SetImageInfo
163
- // chooses the eventual literal coder filename. A retained scene suffix
164
- // alone therefore does not imply filename glob expansion.
165
- const expansionName = retainCoderSuffix ? classificationName.slice(colon + 1) : name;
166
- // utility.c tests TailPath, not HeadPath. Brackets/wildcards in a
167
- // directory are literal bytes, and accessibility tests the original
168
- // argv spelling before coder/scene normalization, not this tail.
169
- const tail = expansionName.slice(expansionName.lastIndexOf('/') + 1);
170
- // IsGlob also probes its tail argument relative to native cwd, which
171
- // is distinct from both the original argv and the normalized full path.
172
- if ([...tail].some(c => '*?{}[]'.includes(c)) && await accessible(tail) !== true)
173
- kind = 'pattern';
174
- }
175
- }
176
- return { name, kind, ...(prefix ? { coder: prefix } : {}), text, ...(selectorRemoved ? { selector: true } : {}), deferred };
177
- }
178
- /** ReadImage/WriteImage positions bypass the CLI's ExpandFilenames pass. */
179
- export async function imageMagickReaderReferences(value, cwd, access, options = {}) {
180
- const parsed = await parseImageMagickOperand(value, { ...options, access });
181
- const base = { kind: 'directory', value: cwd };
182
- let kind = parsed.kind === 'dynamic' ? 'filename-expression' : parsed.kind === 'pattern' ? 'glob' : parsed.kind;
183
- const filename = parsed.kind === 'path' || parsed.kind === 'dynamic' && byteText(value).includes('%');
184
- const path = filename ? textBytes(parsed.name) : undefined;
185
- if (parsed.kind === 'path' && parsed.selector)
186
- kind = 'image-selector';
187
- if (parsed.kind === 'dynamic' && byteText(value).includes('%')) {
188
- const expression = parseFilenameExpression(value, 'imagemagick');
189
- if (access === 'write' && expression.complete && expression.tokens.some(token => token.kind === 'counter')
190
- && !expression.tokens.some(token => token.kind === 'property')) {
191
- kind = 'output-pattern';
192
- }
193
- }
194
- const references = [{ value, path, kind, access, base,
195
- literal: filename,
196
- filenameDialect: kind === 'filename-expression' || kind === 'output-pattern' ? 'imagemagick' : undefined }];
197
- if (parsed.text !== undefined) {
198
- const property = imageMagickPropertyReference(textBytes(parsed.text), cwd);
199
- if (property) {
200
- // InterpretImageProperties leaves inaccessible @text literal. Preserve
201
- // unknown candidates without reading replacements or validating images.
202
- let available;
203
- if (property.kind === 'descriptor')
204
- available = true;
205
- else {
206
- try {
207
- available = await options.accessible?.(byteText(property.path));
208
- }
209
- catch { /* Advisory lookup cannot replace native diagnostics. */ }
210
- }
211
- if (available !== false)
212
- references.push(property);
213
- }
214
- }
215
- return references;
216
- }
217
- /** InterpretImageProperties probes a leading @ filename before replacement.
218
- * Missing optional text remains native literal text; no replacement is evaluated. */
219
- export function imageMagickPropertyReference(value, cwd) {
220
- const text = byteText(value);
221
- let offset = 0;
222
- while (' \t\r\n\f\v'.includes(text[offset] ?? '\0'))
223
- offset++;
224
- if (text[offset] !== '@')
225
- return;
226
- const descriptor = text.slice(offset + 1) === '-';
227
- return { value: value.slice(offset), path: descriptor ? undefined : value.slice(offset + 1), access: 'read', kind: descriptor ? 'descriptor' : 'path', literal: !descriptor,
228
- grammar: 'text', base: { kind: 'directory', value: cwd }, optional: true };
229
- }
@@ -1,7 +0,0 @@
1
- import type { ImageMagickDiscovery } from './imagemagick.js';
2
- import type { AccessReference } from './resolution-types.js';
3
- /** Shared resource positions for argv and already observed script tokens. */
4
- export declare function imageMagickAccessReferences(discovery: ImageMagickDiscovery): {
5
- references: AccessReference[];
6
- inline: Map<AccessReference, Uint8Array>;
7
- };
@@ -1,42 +0,0 @@
1
- import { byteText } from './bytes.js';
2
- /** Shared resource positions for argv and already observed script tokens. */
3
- export function imageMagickAccessReferences(discovery) {
4
- const references = [];
5
- const inline = new Map();
6
- for (const r of discovery.resources) {
7
- const token = discovery.tokens.find(t => t.source === r.source && t.index === r.index);
8
- const indirectText = r.role === 'text' && token?.values.find(value => {
9
- const text = byteText(value);
10
- let offset = 0;
11
- while (' \t\r\n\f\v'.includes(text[offset] ?? '\0'))
12
- offset++;
13
- return text[offset] === '@' && text.slice(offset + 1) === byteText(r.operand);
14
- });
15
- const value = indirectText || r.operand;
16
- let kind = r.kind === 'dynamic' ? 'filename-expression' : r.kind === 'pattern' ? r.access === 'write' ? 'output-pattern' : 'glob' : r.kind;
17
- if (r.role === 'image' && r.path && r.selector)
18
- kind = 'image-selector';
19
- references.push({ value, path: r.path, access: r.access,
20
- kind, literal: r.kind === 'path', source: r.source, filenameDialect: kind === 'filename-expression' || kind === 'output-pattern' ? 'imagemagick' : undefined, index: r.index, stage: 'incremental', grammar: r.role === 'script' ? discovery.command === 'conjure' ? 'msl' : 'magick-script' : r.role === 'list' ? 'magick-list' : r.role === 'text' ? 'text' : undefined });
21
- }
22
- for (const token of discovery.tokens)
23
- if (byteText(token.raw).toLowerCase() === '-draw' && token.values[0]) {
24
- const value = token.values[0];
25
- // DrawImage's FileToString path excludes a bare @ and every @- prefix.
26
- // Modern property interpretation can still consume @- as text stdin;
27
- // that separate prediction must not become a drawing filename.
28
- const indirect = value.length > 1 && value[0] === 64 && value[1] !== 45;
29
- const reference = { value, path: indirect ? value.slice(1) : undefined, kind: indirect ? 'path' : 'synthetic', literal: indirect, access: 'read', grammar: 'mvg', source: token.source, index: token.index, stage: 'incremental' };
30
- const next = references.findIndex(r => r.source === token.source && (r.index ?? 0) > token.index);
31
- references.splice(next < 0 ? references.length : next, 0, reference);
32
- if (!indirect)
33
- inline.set(reference, value);
34
- }
35
- // Lookup names deliberately stay out of the local path namespace.
36
- for (const token of discovery.tokens)
37
- if (byteText(token.raw).toLowerCase() === '-font' && token.values[0] && !discovery.resources.some(r => r.source === token.source && r.index === token.index && r.role === 'font')) {
38
- const next = references.findIndex(r => r.source === token.source && (r.index ?? 0) > token.index);
39
- references.splice(next < 0 ? references.length : next, 0, { value: token.values[0], kind: 'resource-lookup', access: 'read', source: token.source, index: token.index, stage: 'incremental' });
40
- }
41
- return { references, inline };
42
- }