@poe-platform/safe-bash 0.1.803 → 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 (696) hide show
  1. package/README.md +56 -31
  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 -8364
  7. package/dist/image-ast/index.js +692 -8364
  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-5OHX7C2V.js → chunk-62BOHHJT.js} +1 -1
  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-PNBBUWSM.js → chunk-AW5KIT6V.js} +3488 -39
  23. package/dist/safe-bash/chunks/{chunk-JMMEIDPF.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-2LSAMQER.js → chunk-CTXNARJH.js} +1 -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-VBTDHOWC.js → chunk-IOHH2GTI.js} +4 -3
  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-RYFQ3LZG.js → chunk-LPOVNKNB.js} +173 -153
  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-EEEWOYEG.js → chunk-S4RFUUXO.js} +839 -24
  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-B7PIL77G.js → chunk-W2IYOVHK.js} +804 -1195
  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-A7XEHALN.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-ZDN7MJE6.js → chunk-4R5ADJM5.js} +11 -1
  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-PICVQ6B5.js → chunk-6GKYHPJG.js} +1 -1
  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-4FEVBOL5.js → chunk-ARZMP2L2.js} +2 -2
  108. package/dist/safe-bash/command-chunks/{chunk-NKIELG7Y.js → chunk-BAKFZ477.js} +40 -19
  109. package/dist/safe-bash/command-chunks/{chunk-QRRYN2KO.js → chunk-BC7BK6R6.js} +0 -2424
  110. package/dist/safe-bash/command-chunks/{chunk-CQHP3I66.js → chunk-BOEOJS2Q.js} +1 -1
  111. package/dist/safe-bash/command-chunks/{chunk-XS72HTMA.js → chunk-BWGGLYEB.js} +5 -22
  112. package/dist/safe-bash/command-chunks/{chunk-PMBFZXTK.js → chunk-C5ZZKP7V.js} +1 -1
  113. package/dist/safe-bash/command-chunks/{chunk-LHIOAFWW.js → chunk-C7SEB6WU.js} +1 -1
  114. package/dist/safe-bash/command-chunks/{chunk-XPT2UGBF.js → chunk-CHJKFRT7.js} +1 -1
  115. package/dist/safe-bash/command-chunks/{chunk-TIOCQVUQ.js → chunk-CON26Q2O.js} +1 -1
  116. package/dist/safe-bash/command-chunks/{chunk-E55UKBIE.js → chunk-DBAT3IK2.js} +1 -1
  117. package/dist/safe-bash/command-chunks/{chunk-Z45N42QC.js → chunk-DPAYAVMS.js} +15 -1
  118. package/dist/safe-bash/command-chunks/chunk-DS3NXVUM.js +368 -0
  119. package/dist/safe-bash/command-chunks/{chunk-5ZMZ573Q.js → chunk-DSJ3VRL3.js} +16 -4
  120. package/dist/safe-bash/command-chunks/{chunk-K2GDEMEU.js → chunk-EFRCFWVR.js} +4 -4
  121. package/dist/safe-bash/command-chunks/{chunk-DZCY63VJ.js → chunk-EV6HIJ5H.js} +6 -5
  122. package/dist/safe-bash/command-chunks/{chunk-JDYXY44P.js → chunk-FJURV46Y.js} +3 -3
  123. package/dist/safe-bash/command-chunks/{chunk-TZZ4WUKH.js → chunk-FZAWGKSE.js} +6 -4
  124. package/dist/safe-bash/command-chunks/{chunk-YHFXOX6U.js → chunk-GOCFQ6XV.js} +4 -4
  125. package/dist/safe-bash/command-chunks/{chunk-QVOS4YXL.js → chunk-HH5O7DJI.js} +1 -1
  126. package/dist/safe-bash/command-chunks/{chunk-3HHCU5YU.js → chunk-HK7F5SDC.js} +13 -0
  127. package/dist/safe-bash/command-chunks/{chunk-JNZ3CVAE.js → chunk-HQBXIZC7.js} +8 -3
  128. package/dist/safe-bash/command-chunks/{chunk-V4K2JDYU.js → chunk-I63DBZXZ.js} +2 -2
  129. package/dist/safe-bash/command-chunks/{chunk-WNE7FPVR.js → chunk-I64TLTIW.js} +24 -16
  130. package/dist/safe-bash/command-chunks/{chunk-GFC2NTDG.js → chunk-ICANWOXH.js} +5 -29
  131. package/dist/safe-bash/command-chunks/{chunk-SQRQW3CT.js → chunk-IJ6LGLXM.js} +1 -1
  132. package/dist/safe-bash/command-chunks/{chunk-TGSNCQSR.js → chunk-JT4RYCA6.js} +1771 -1663
  133. package/dist/safe-bash/command-chunks/{chunk-II77KPZN.js → chunk-JWW6FYBN.js} +2 -2
  134. package/dist/safe-bash/command-chunks/{chunk-ZYXH3B66.js → chunk-LCJWKTCJ.js} +250 -203
  135. package/dist/safe-bash/command-chunks/chunk-LU4HBPP2.js +97 -0
  136. package/dist/safe-bash/command-chunks/{chunk-XJXU3VVH.js → chunk-LWOE65OE.js} +20 -5
  137. package/dist/safe-bash/command-chunks/{chunk-GMIHJYDG.js → chunk-M32HFSX7.js} +22 -6
  138. package/dist/safe-bash/command-chunks/{chunk-YG4EPFWC.js → chunk-M3NINRDU.js} +2880 -172
  139. package/dist/safe-bash/command-chunks/chunk-MQREDAL6.js +164 -0
  140. package/dist/safe-bash/command-chunks/{chunk-LWS62ISU.js → chunk-N6DIASO2.js} +1 -1
  141. package/dist/safe-bash/command-chunks/chunk-NGL7YK7O.js +188 -0
  142. package/dist/safe-bash/command-chunks/{chunk-EARHPPPJ.js → chunk-NJYHWKIL.js} +39 -9
  143. package/dist/safe-bash/command-chunks/{chunk-6JSIFWYT.js → chunk-OJQRSCBP.js} +1 -1
  144. package/dist/safe-bash/command-chunks/{chunk-OQU6UT6X.js → chunk-OV3XREFN.js} +11 -0
  145. package/dist/safe-bash/command-chunks/{chunk-MIXBO6U7.js → chunk-PTZLF456.js} +2 -2
  146. package/dist/safe-bash/command-chunks/{chunk-ALDC4XP4.js → chunk-QILLRNES.js} +34 -10
  147. package/dist/safe-bash/command-chunks/{chunk-L22T3H7L.js → chunk-QR25JLKO.js} +1 -1
  148. package/dist/safe-bash/command-chunks/{chunk-NASVPT6F.js → chunk-R7C4MGZ5.js} +17 -224
  149. package/dist/safe-bash/command-chunks/{chunk-LCF3OB7P.js → chunk-RBME3JEH.js} +1 -1
  150. package/dist/safe-bash/command-chunks/{chunk-2KG2QLJE.js → chunk-RFWGYT7G.js} +3 -0
  151. package/dist/safe-bash/command-chunks/{chunk-5TBUOBDE.js → chunk-RZMVRT26.js} +27 -13
  152. package/dist/safe-bash/command-chunks/chunk-TFR6B3WB.js +44 -0
  153. package/dist/safe-bash/command-chunks/chunk-TOH3OF3O.js +179 -0
  154. package/dist/safe-bash/command-chunks/chunk-TT4DAFBT.js +13621 -0
  155. package/dist/safe-bash/command-chunks/{chunk-LWSBAWLT.js → chunk-TXI64OAG.js} +1 -1
  156. package/dist/safe-bash/command-chunks/{chunk-GIRNFXP3.js → chunk-TZRI7BJZ.js} +45 -15
  157. package/dist/safe-bash/command-chunks/{chunk-QOKBZFFD.js → chunk-U3MMODA5.js} +2 -7
  158. package/dist/safe-bash/command-chunks/{chunk-ZYHTWNAE.js → chunk-UAW423ZL.js} +11 -11
  159. package/dist/safe-bash/command-chunks/{chunk-C5YYCQHW.js → chunk-UXEEUGOV.js} +222 -12
  160. package/dist/safe-bash/command-chunks/{chunk-GY3BWK7K.js → chunk-VOZPMJRX.js} +87 -80
  161. package/dist/safe-bash/command-chunks/{chunk-ILX2NOLF.js → chunk-WPANOB4A.js} +20 -20
  162. package/dist/safe-bash/command-chunks/{chunk-Y2WBSJG6.js → chunk-X4QZQI5Q.js} +65 -64
  163. package/dist/safe-bash/command-chunks/{chunk-HDCNKOIX.js → chunk-XGI57GCN.js} +1 -1
  164. package/dist/safe-bash/command-chunks/{chunk-5UBXNSFZ.js → chunk-XUCU7QQT.js} +1281 -1278
  165. package/dist/safe-bash/command-chunks/chunk-Y22VXJBD.js +296 -0
  166. package/dist/safe-bash/command-chunks/{chunk-WVHONVZ4.js → chunk-YMFUUPDX.js} +5 -3
  167. package/dist/safe-bash/command-chunks/{chunk-IR2BY7EL.js → chunk-YYGIBXFZ.js} +2 -2
  168. package/dist/safe-bash/command-chunks/{chunk-MSFXC3OC.js → chunk-Z4FO6OHE.js} +2 -2
  169. package/dist/safe-bash/command-chunks/{chunk-WWIBP2ET.js → chunk-Z5ZZVDUD.js} +143 -22
  170. package/dist/safe-bash/command-chunks/{chunk-LOICUCHG.js → chunk-ZHN3QDCI.js} +1 -1
  171. package/dist/safe-bash/commands/alias/index.d.ts +2 -0
  172. package/dist/safe-bash/commands/alias/index.js +2 -0
  173. package/dist/safe-bash/commands/apply-patch/index.browser.js +2 -3
  174. package/dist/safe-bash/commands/apply-patch/index.d.ts +0 -1
  175. package/dist/safe-bash/commands/apply-patch/index.js +0 -1
  176. package/dist/safe-bash/commands/archive/index.browser.js +2 -3
  177. package/dist/safe-bash/commands/archive/index.d.ts +0 -1
  178. package/dist/safe-bash/commands/archive/index.js +0 -1
  179. package/dist/safe-bash/commands/bytes/index.js +2 -1
  180. package/dist/safe-bash/commands/chmod/index.browser.js +1 -1
  181. package/dist/safe-bash/commands/column/index.browser.js +2 -3
  182. package/dist/safe-bash/commands/column/index.d.ts +0 -1
  183. package/dist/safe-bash/commands/column/index.js +0 -1
  184. package/dist/safe-bash/commands/copy-source.js +1 -0
  185. package/dist/safe-bash/commands/csplit/index.browser.js +2 -2
  186. package/dist/safe-bash/commands/csvkit/index.browser.js +72 -0
  187. package/dist/safe-bash/commands/csvkit/index.d.ts +0 -5
  188. package/dist/safe-bash/commands/csvkit/index.js +0 -50
  189. package/dist/safe-bash/commands/docx/index.browser.js +5 -7
  190. package/dist/safe-bash/commands/du/index.browser.js +2 -3
  191. package/dist/safe-bash/commands/du/index.d.ts +0 -1
  192. package/dist/safe-bash/commands/du/index.js +0 -1
  193. package/dist/safe-bash/commands/expr/index.browser.js +2 -3
  194. package/dist/safe-bash/commands/expr/index.d.ts +0 -1
  195. package/dist/safe-bash/commands/expr/index.js +0 -1
  196. package/dist/safe-bash/commands/factor/index.browser.js +2 -2
  197. package/dist/safe-bash/commands/file/index.browser.js +2 -3
  198. package/dist/safe-bash/commands/file/index.d.ts +0 -1
  199. package/dist/safe-bash/commands/file/index.js +0 -1
  200. package/dist/safe-bash/commands/filesystem.js +1 -1
  201. package/dist/safe-bash/commands/getopt/index.browser.js +2 -2
  202. package/dist/safe-bash/commands/grep-aliases/index.browser.js +3 -3
  203. package/dist/safe-bash/commands/hexdump/index.browser.js +2 -2
  204. package/dist/safe-bash/commands/html-to-markdown/index.browser.js +2 -3
  205. package/dist/safe-bash/commands/html-to-markdown/index.d.ts +0 -1
  206. package/dist/safe-bash/commands/html-to-markdown/index.js +0 -1
  207. package/dist/safe-bash/commands/htmlq/index.d.ts +1 -5
  208. package/dist/safe-bash/commands/htmlq/index.js +1 -143
  209. package/dist/safe-bash/commands/iconv/index.browser.js +2 -2
  210. package/dist/safe-bash/commands/line-endings/index.browser.js +2 -2
  211. package/dist/safe-bash/commands/llm/index.browser.js +2 -2
  212. package/dist/safe-bash/commands/llm/providers/index.browser.js +1 -1
  213. package/dist/safe-bash/commands/mdq/index.browser.js +3 -3
  214. package/dist/safe-bash/commands/media/index.browser.js +4 -16314
  215. package/dist/safe-bash/commands/media/index.d.ts +1 -5
  216. package/dist/safe-bash/commands/media/index.js +1 -3
  217. package/dist/safe-bash/commands/media/plugin.d.ts +1 -18
  218. package/dist/safe-bash/commands/media/plugin.js +1 -90
  219. package/dist/safe-bash/commands/media/remote.d.ts +1 -63
  220. package/dist/safe-bash/commands/media/remote.js +1 -405
  221. package/dist/safe-bash/commands/media/settings.d.ts +1 -4
  222. package/dist/safe-bash/commands/media/settings.js +1 -26
  223. package/dist/safe-bash/commands/metadata/index.browser.js +3 -4
  224. package/dist/safe-bash/commands/metadata/index.d.ts +0 -1
  225. package/dist/safe-bash/commands/metadata/index.js +2 -2
  226. package/dist/safe-bash/commands/mktemp/index.browser.js +1 -1
  227. package/dist/safe-bash/commands/network/curl.js +1 -3
  228. package/dist/safe-bash/commands/network/index.browser.js +3 -4
  229. package/dist/safe-bash/commands/network/public.d.ts +0 -1
  230. package/dist/safe-bash/commands/network/public.js +0 -1
  231. package/dist/safe-bash/commands/network/transport.js +2 -1
  232. package/dist/safe-bash/commands/network/wget.js +1 -3
  233. package/dist/safe-bash/commands/node/browser.d.ts +0 -1
  234. package/dist/safe-bash/commands/node/browser.js +0 -1
  235. package/dist/safe-bash/commands/node/default-runtime.d.ts +3 -0
  236. package/dist/safe-bash/commands/node/default-runtime.js +15 -0
  237. package/dist/safe-bash/commands/node/index.browser.js +7 -8
  238. package/dist/safe-bash/commands/node/index.js +3 -3
  239. package/dist/safe-bash/commands/node/path.js +1 -1
  240. package/dist/safe-bash/commands/node/preload.d.ts +1 -1
  241. package/dist/safe-bash/commands/node/preload.js +4 -1
  242. package/dist/safe-bash/commands/node/quickjs.d.ts +2 -0
  243. package/dist/safe-bash/commands/node/quickjs.js +2 -0
  244. package/dist/safe-bash/commands/node/safejs.js +26 -12
  245. package/dist/safe-bash/commands/op/index.browser.js +2 -3
  246. package/dist/safe-bash/commands/op/index.d.ts +0 -11
  247. package/dist/safe-bash/commands/op/index.js +0 -84
  248. package/dist/safe-bash/commands/pandoc/index.browser.js +44 -0
  249. package/dist/safe-bash/commands/pandoc/index.d.ts +0 -1
  250. package/dist/safe-bash/commands/pandoc/index.js +0 -1
  251. package/dist/safe-bash/commands/pr/index.browser.js +2 -2
  252. package/dist/safe-bash/commands/python/docker-runner.js +4 -3
  253. package/dist/safe-bash/commands/python/docker.d.ts +1 -0
  254. package/dist/safe-bash/commands/python/docker.js +5 -2
  255. package/dist/safe-bash/commands/python/index.browser.js +17 -13
  256. package/dist/safe-bash/commands/python/index.d.ts +2 -1
  257. package/dist/safe-bash/commands/python/index.js +10 -8
  258. package/dist/safe-bash/commands/python/llm-capability.js +65 -2
  259. package/dist/safe-bash/commands/python/llm-dependencies.d.ts +27 -0
  260. package/dist/safe-bash/commands/python/llm-dependencies.js +66 -0
  261. package/dist/safe-bash/commands/python/llm-module.js +6 -4
  262. package/dist/safe-bash/commands/python/llm-reference-module.d.ts +3 -0
  263. package/dist/safe-bash/commands/python/llm-reference-module.js +690 -0
  264. package/dist/safe-bash/commands/python/worker.browser.js +2 -3
  265. package/dist/safe-bash/commands/python/worker.d.ts +0 -1
  266. package/dist/safe-bash/commands/python/worker.js +0 -1
  267. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.d.ts +1 -1
  268. package/dist/safe-bash/commands/regex-execution/ere/transport/wire-engine.js +3 -3
  269. package/dist/safe-bash/commands/regex-execution/public.browser.js +7 -7
  270. package/dist/safe-bash/commands/safejs/options.js +5 -1
  271. package/dist/safe-bash/commands/safejs/runtime.d.ts +1 -0
  272. package/dist/safe-bash/commands/safejs/runtime.js +1 -1
  273. package/dist/safe-bash/commands/split/index.browser.js +2 -3
  274. package/dist/safe-bash/commands/split/index.d.ts +0 -1
  275. package/dist/safe-bash/commands/split/index.js +0 -1
  276. package/dist/safe-bash/commands/ssconvert/index.browser.js +98 -0
  277. package/dist/safe-bash/commands/stat/index.browser.js +1 -1
  278. package/dist/safe-bash/commands/stream-format/index.browser.js +3 -4
  279. package/dist/safe-bash/commands/stream-format/index.d.ts +0 -1
  280. package/dist/safe-bash/commands/stream-format/index.js +0 -1
  281. package/dist/safe-bash/commands/stream-inspection/index.browser.js +3 -4
  282. package/dist/safe-bash/commands/stream-inspection/index.d.ts +0 -1
  283. package/dist/safe-bash/commands/stream-inspection/index.js +0 -1
  284. package/dist/safe-bash/commands/streams.js +2 -1
  285. package/dist/safe-bash/commands/table-text/index.browser.js +3 -4
  286. package/dist/safe-bash/commands/table-text/index.d.ts +0 -1
  287. package/dist/safe-bash/commands/table-text/index.js +0 -1
  288. package/dist/safe-bash/commands/text.js +28 -24
  289. package/dist/safe-bash/commands/time-env/index.browser.js +3 -4
  290. package/dist/safe-bash/commands/time-env/index.d.ts +0 -1
  291. package/dist/safe-bash/commands/time-env/index.js +0 -1
  292. package/dist/safe-bash/commands/tree/index.browser.js +2 -3
  293. package/dist/safe-bash/commands/tree/index.d.ts +0 -1
  294. package/dist/safe-bash/commands/tree/index.js +0 -1
  295. package/dist/safe-bash/commands/tsort/index.browser.js +2 -2
  296. package/dist/safe-bash/commands/unalias/index.d.ts +2 -0
  297. package/dist/safe-bash/commands/unalias/index.js +2 -0
  298. package/dist/safe-bash/commands/xml/index.browser.js +2 -2
  299. package/dist/safe-bash/commands/yq/index.browser.js +2 -2
  300. package/dist/safe-bash/core.browser.js +2 -2
  301. package/dist/safe-bash/core.d.ts +7 -1
  302. package/dist/safe-bash/core.js +7 -1
  303. package/dist/safe-bash/execution-runtime.js +2 -1
  304. package/dist/safe-bash/fs/s3/http/index.d.ts +2 -2
  305. package/dist/safe-bash/fs/s3/http/index.js +1 -1
  306. package/dist/safe-bash/full-core.browser.js +283 -945
  307. package/dist/safe-bash/internal/op/types.d.ts +1 -0
  308. package/dist/safe-bash/jobs.browser.js +5 -5
  309. package/dist/safe-bash/lazy-optional.d.ts +3 -3
  310. package/dist/safe-bash/lazy-optional.js +1 -1
  311. package/dist/safe-bash/opt-in/commands/cmp/index.js +7 -6
  312. package/dist/safe-bash/opt-in/commands/dd/index.js +1 -1
  313. package/dist/safe-bash/opt-in/commands/dd/io.js +51 -5
  314. package/dist/safe-bash/opt-in/commands/truncate/index.js +2 -2
  315. package/dist/safe-bash/opt-in/commands/yq/native-work.js +2 -0
  316. package/dist/safe-bash/opt-in/optional/commands/shuf/input.js +2 -1
  317. package/dist/safe-bash/opt-in/optional/commands/shuf/shuf.js +4 -2
  318. package/dist/safe-bash/opt-in/optional.d.ts +1 -1
  319. package/dist/safe-bash/opt-in/optional.js +1 -1
  320. package/dist/safe-bash/opt-in/shell/extensions/read/index.js +2 -344
  321. package/dist/safe-bash/optional-host.browser.js +23 -18
  322. package/dist/safe-bash/optional-host.d.ts +1 -0
  323. package/dist/safe-bash/optional-host.js +1 -0
  324. package/dist/safe-bash/playwright/controller.js +41 -3
  325. package/dist/safe-bash/playwright/native-storage-targets.js +4 -2
  326. package/dist/safe-bash/plugins/base.d.ts +1 -1
  327. package/dist/safe-bash/plugins/base.js +3 -3
  328. package/dist/safe-bash/plugins/composition.d.ts +5 -2
  329. package/dist/safe-bash/plugins/composition.js +10 -7
  330. package/dist/safe-bash/plugins/index.browser.js +44 -41
  331. package/dist/safe-bash/plugins/index.js +3 -2
  332. package/dist/safe-bash/plugins/portable-commands.d.ts +3 -0
  333. package/dist/safe-bash/plugins/portable-commands.js +31 -0
  334. package/dist/safe-bash/registry-entry.browser.js +41 -42
  335. package/dist/safe-bash/search.browser.js +32 -33
  336. package/dist/safe-bash/shell/arithmetic.js +19 -6
  337. package/dist/safe-bash/shell/arrays/state.js +1 -1
  338. package/dist/safe-bash/shell/arrays/syntax.js +4 -3
  339. package/dist/safe-bash/shell/index.d.ts +0 -1
  340. package/dist/safe-bash/shell/index.js +0 -1
  341. package/dist/safe-bash/shell/parser.d.ts +2 -2
  342. package/dist/safe-bash/shell/parser.js +268 -64
  343. package/dist/safe-bash/shell/read-builtin.d.ts +3 -0
  344. package/dist/safe-bash/shell/read-builtin.js +344 -0
  345. package/dist/safe-bash/shell/runtime.d.ts +21 -4
  346. package/dist/safe-bash/shell/runtime.js +373 -412
  347. package/dist/safe-bash/shell/session-state.js +25 -0
  348. package/dist/safe-bash/shell/shell.js +76 -154
  349. package/dist/safe-bash/shell/tilde-expansion.d.ts +1 -1
  350. package/dist/safe-bash/shell/tilde-expansion.js +2 -2
  351. package/dist/safe-bash/shell/types.d.ts +5 -0
  352. package/dist/safe-bash/shell/value-state.js +1 -1
  353. package/dist/safe-bash/shell-entry.browser.js +32 -33
  354. package/dist/safe-bash/trap.browser.js +4 -4
  355. package/dist/safe-bash/yq-browser/index.js +1 -1
  356. package/dist/safe-bash-calendar-engine/time-env/calendar.d.ts +1 -1
  357. package/dist/safe-bash-calendar-engine/time-env/calendar.js +1 -1
  358. package/dist/safe-bash-calendar-engine/time-env/format.js +1 -1
  359. package/dist/safe-bash-command-alias/index.d.ts +13 -0
  360. package/dist/safe-bash-command-alias/index.js +88 -0
  361. package/dist/safe-bash-command-apply-patch/apply.js +3 -3
  362. package/dist/safe-bash-command-apply-patch/index.js +3 -3
  363. package/dist/safe-bash-command-apply-patch/matcher.js +1 -1
  364. package/dist/safe-bash-command-apply-patch/parser.js +1 -1
  365. package/dist/safe-bash-command-awk/awk-pipes.js +2 -2
  366. package/dist/safe-bash-command-awk/awk-reader.js +1 -1
  367. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  368. package/dist/safe-bash-command-awk/awk.js +5 -5
  369. package/dist/safe-bash-command-awk/index.js +5 -5
  370. package/dist/safe-bash-command-bc/index.js +206 -60
  371. package/dist/safe-bash-command-cmp/index.js +7 -6
  372. package/dist/safe-bash-command-column/column.js +3 -3
  373. package/dist/safe-bash-command-column/index.js +3 -3
  374. package/dist/safe-bash-command-column/layout.js +2 -2
  375. package/dist/safe-bash-command-csvkit/index.d.ts +1 -0
  376. package/dist/safe-bash-command-csvkit/index.js +1505 -7
  377. package/dist/safe-bash-command-csvkit/sync-support.js +2 -7
  378. package/dist/safe-bash-command-curl/curl.js +1 -1
  379. package/dist/safe-bash-command-curl/index.js +1 -1
  380. package/dist/safe-bash-command-date/date.js +1 -1
  381. package/dist/safe-bash-command-date/index.js +1 -1
  382. package/dist/safe-bash-command-dd/index.js +1 -1
  383. package/dist/safe-bash-command-dd/io.js +51 -5
  384. package/dist/safe-bash-command-diff/diff.js +1 -1
  385. package/dist/safe-bash-command-diff/index.js +1 -1
  386. package/dist/safe-bash-command-diff3/index.js +10 -13
  387. package/dist/safe-bash-command-exiftool/index.js +278 -50
  388. package/dist/safe-bash-command-exiftool/registry.d.ts +4 -2
  389. package/dist/safe-bash-command-factor/command.js +2 -2
  390. package/dist/safe-bash-command-factor/index.js +2 -2
  391. package/dist/safe-bash-command-fd/arguments.d.ts +2 -0
  392. package/dist/safe-bash-command-fd/index.js +42 -12
  393. package/dist/safe-bash-command-ffmpeg/index.js +356 -66
  394. package/dist/safe-bash-command-find/find-format.d.ts +3 -0
  395. package/dist/safe-bash-command-find/find-format.js +1 -1
  396. package/dist/safe-bash-command-find/find.js +2 -2
  397. package/dist/safe-bash-command-find/index.js +2 -2
  398. package/dist/safe-bash-command-fmt/index.js +1 -4
  399. package/dist/safe-bash-command-fold/engine.d.ts +1 -1
  400. package/dist/safe-bash-command-fold/family.js +2 -2
  401. package/dist/safe-bash-command-fold/index.js +1 -1
  402. package/dist/safe-bash-command-hexdump/command.js +2 -2
  403. package/dist/safe-bash-command-hexdump/index.js +2 -2
  404. package/dist/safe-bash-command-html-to-markdown/entities.js +1 -1
  405. package/dist/safe-bash-command-html-to-markdown/index.js +4 -4
  406. package/dist/safe-bash-command-html-to-markdown/input.js +3 -3
  407. package/dist/safe-bash-command-html-to-markdown/parser.js +2 -2
  408. package/dist/safe-bash-command-html-to-markdown/render.js +3 -3
  409. package/dist/safe-bash-command-htmlq/contracts.d.ts +5 -2
  410. package/dist/safe-bash-command-htmlq/index.d.ts +2 -1
  411. package/dist/safe-bash-command-htmlq/index.js +175 -49
  412. package/dist/safe-bash-command-htmlq/sync.d.ts +1 -0
  413. package/dist/safe-bash-command-imagemagick/index.js +56 -6
  414. package/dist/safe-bash-command-install/arguments.d.ts +27 -0
  415. package/dist/safe-bash-command-install/arguments.js +224 -0
  416. package/dist/safe-bash-command-install/index.d.ts +7 -0
  417. package/dist/safe-bash-command-install/index.js +942 -0
  418. package/dist/safe-bash-command-install/mode.d.ts +6 -0
  419. package/dist/safe-bash-command-install/mode.js +71 -0
  420. package/dist/safe-bash-command-install/options.d.ts +40 -0
  421. package/dist/safe-bash-command-install/options.js +27 -0
  422. package/dist/safe-bash-command-jq/index.js +1 -1
  423. package/dist/safe-bash-command-jq/jq.js +1 -1
  424. package/dist/safe-bash-command-less/index.js +37 -61
  425. package/dist/safe-bash-command-llm/command.js +1 -1
  426. package/dist/safe-bash-command-llm/elevenlabs.js +2 -2
  427. package/dist/safe-bash-command-llm/index.js +4 -4
  428. package/dist/safe-bash-command-llm/openai.js +2 -2
  429. package/dist/safe-bash-command-llm/providers/elevenlabs.js +2 -2
  430. package/dist/safe-bash-command-llm/providers/index.js +3 -3
  431. package/dist/safe-bash-command-llm/providers/openai.js +2 -2
  432. package/dist/safe-bash-command-llm/providers/shared.js +1 -1
  433. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.browser.d.ts +463 -46
  434. package/dist/safe-bash-command-mcp/index.browser.js +19308 -0
  435. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.d.ts +15 -6
  436. package/dist/{safe-bash-mcp → safe-bash-command-mcp}/index.js +2804 -2771
  437. package/dist/safe-bash-command-media/LICENSE +21 -0
  438. package/dist/safe-bash-command-media/index.d.ts +6 -0
  439. package/dist/safe-bash-command-media/index.js +30 -0
  440. package/dist/safe-bash-command-media/plugin.d.ts +18 -0
  441. package/dist/safe-bash-command-media/plugin.js +11 -0
  442. package/dist/safe-bash-command-media/remote.d.ts +63 -0
  443. package/dist/safe-bash-command-media/remote.js +11 -0
  444. package/dist/safe-bash-command-media/settings.d.ts +4 -0
  445. package/dist/safe-bash-command-media/settings.js +41 -0
  446. package/dist/safe-bash-command-mktemp/command.js +1 -1
  447. package/dist/safe-bash-command-mktemp/index.js +1 -1
  448. package/dist/safe-bash-command-mmdc/arguments.d.ts +1 -0
  449. package/dist/safe-bash-command-mmdc/command.d.ts +2 -0
  450. package/dist/safe-bash-command-mmdc/contracts.d.ts +8 -1
  451. package/dist/safe-bash-command-mmdc/index.js +359 -7
  452. package/dist/safe-bash-command-nl/index.js +1 -1
  453. package/dist/safe-bash-command-nl/nl.js +1 -1
  454. package/dist/safe-bash-command-node/LICENSE +21 -0
  455. package/dist/safe-bash-command-node/index.d.ts +17 -0
  456. package/dist/safe-bash-command-node/index.js +328 -0
  457. package/dist/safe-bash-command-numfmt/index.js +1 -0
  458. package/dist/safe-bash-command-od/index.js +10 -6
  459. package/dist/safe-bash-command-op/index.js +39 -32
  460. package/dist/safe-bash-command-op/types.d.ts +1 -0
  461. package/dist/safe-bash-command-pandoc/command.js +3 -3
  462. package/dist/safe-bash-command-pandoc/index.d.ts +1 -0
  463. package/dist/safe-bash-command-pandoc/index.js +5 -3
  464. package/dist/safe-bash-command-pandoc/sync.d.ts +1 -0
  465. package/dist/safe-bash-command-patch/index.js +4 -4
  466. package/dist/safe-bash-command-patch/patch.js +4 -4
  467. package/dist/safe-bash-command-pdfimages/index.js +1 -1
  468. package/dist/safe-bash-command-pdfinfo/index.js +30 -5
  469. package/dist/safe-bash-command-pdftk/index.js +21 -23
  470. package/dist/safe-bash-command-pdftoppm/index.js +17 -4
  471. package/dist/safe-bash-command-pdftotext/index.js +11 -14
  472. package/dist/safe-bash-command-qpdf/index.d.ts +1 -0
  473. package/dist/safe-bash-command-qpdf/index.js +9 -6
  474. package/dist/safe-bash-command-rg/index.js +1 -1
  475. package/dist/safe-bash-command-rg/rg-command.js +1 -1
  476. package/dist/safe-bash-command-sed/index.js +1 -1
  477. package/dist/safe-bash-command-sed/sed.js +1 -1
  478. package/dist/safe-bash-command-shuf/input.d.ts +2 -2
  479. package/dist/safe-bash-command-shuf/input.js +2 -1
  480. package/dist/safe-bash-command-shuf/shuf.js +4 -2
  481. package/dist/safe-bash-command-sips/index.js +2 -2
  482. package/dist/safe-bash-command-soffice/index.js +97 -12
  483. package/dist/safe-bash-command-sponge/index.js +4 -1
  484. package/dist/safe-bash-command-sqlite3/engine.d.ts +1 -0
  485. package/dist/safe-bash-command-sqlite3/index.js +510 -70
  486. package/dist/safe-bash-command-ssconvert/formats/xlsx.js +2 -2
  487. package/dist/safe-bash-command-ssconvert/index.js +44 -22
  488. package/dist/safe-bash-command-stat/command.js +1 -1
  489. package/dist/safe-bash-command-stat/index.js +1 -1
  490. package/dist/safe-bash-command-tar/create.d.ts +1 -0
  491. package/dist/safe-bash-command-tar/create.js +2 -2
  492. package/dist/safe-bash-command-tar/extract.js +2 -2
  493. package/dist/safe-bash-command-tar/index.js +4 -4
  494. package/dist/safe-bash-command-tar/modes.js +4 -4
  495. package/dist/safe-bash-command-tar/options.js +1 -1
  496. package/dist/safe-bash-command-truncate/index.js +2 -2
  497. package/dist/safe-bash-command-tsort/command.js +2 -2
  498. package/dist/safe-bash-command-tsort/index.js +2 -2
  499. package/dist/safe-bash-command-unalias/index.d.ts +12 -0
  500. package/dist/safe-bash-command-unalias/index.js +67 -0
  501. package/dist/safe-bash-command-unrtf/index.js +26 -4
  502. package/dist/safe-bash-command-xan/argv.d.ts +1 -1
  503. package/dist/safe-bash-command-xan/argv.js +2 -2
  504. package/dist/safe-bash-command-xan/budget.d.ts +0 -1
  505. package/dist/safe-bash-command-xan/budget.js +1 -1
  506. package/dist/safe-bash-command-xan/commands.js +6 -6
  507. package/dist/safe-bash-command-xan/csv.js +2 -2
  508. package/dist/safe-bash-command-xan/index.js +8 -9
  509. package/dist/safe-bash-command-xan/io.js +4 -4
  510. package/dist/safe-bash-command-xan/options.js +1 -1
  511. package/dist/safe-bash-command-xan/selector.js +2 -2
  512. package/dist/safe-bash-command-xmllint/index.js +45 -23
  513. package/dist/safe-bash-command-xxd/index.js +41 -10
  514. package/dist/safe-bash-command-yq/accounting.js +1 -1
  515. package/dist/safe-bash-command-yq/index.js +3 -2
  516. package/dist/safe-bash-command-yq/native-work.js +2 -0
  517. package/dist/safe-bash-command-yq/parser.js +2 -2
  518. package/dist/safe-bash-command-yq/query.js +5 -5
  519. package/dist/safe-bash-command-yq/toml.js +2 -2
  520. package/dist/safe-bash-command-zip/index.js +3 -3
  521. package/dist/safe-bash-compression-engine/bounded-codec.js +2 -2
  522. package/dist/safe-bash-compression-engine/codec-loader.js +1 -1
  523. package/dist/safe-bash-compression-engine/files.js +5 -5
  524. package/dist/safe-bash-compression-engine/index.js +4 -4
  525. package/dist/safe-bash-compression-engine/operand.js +5 -5
  526. package/dist/safe-bash-compression-engine/stream.js +4 -4
  527. package/dist/safe-bash-compression-engine/zstd-decode.js +3 -3
  528. package/dist/safe-bash-contracts/command.js +3 -3
  529. package/dist/safe-bash-contracts/default-executor.js +2 -2
  530. package/dist/safe-bash-contracts/diagnostics.js +3 -3
  531. package/dist/safe-bash-contracts/escaping.js +6 -6
  532. package/dist/safe-bash-contracts/filesystem-descriptor.js +3 -3
  533. package/dist/safe-bash-contracts/filesystem-output.js +5 -5
  534. package/dist/safe-bash-contracts/http.d.ts +7 -0
  535. package/dist/safe-bash-contracts/index.js +8 -8
  536. package/dist/safe-bash-contracts/io.js +2 -2
  537. package/dist/safe-bash-contracts/output.js +3 -3
  538. package/dist/safe-bash-contracts/runtime-control.d.ts +2 -2
  539. package/dist/safe-bash-contracts/runtime-control.js +4 -2
  540. package/dist/safe-bash-contracts/signals.d.ts +2 -0
  541. package/dist/safe-bash-contracts/signals.js +3 -1
  542. package/dist/safe-bash-contracts/yield.js +1 -1
  543. package/dist/safe-bash-csv-engine/index.d.ts +2 -1
  544. package/dist/safe-bash-csv-engine/index.js +21 -15
  545. package/dist/safe-bash-io-engine/commands/search/requirements.js +2 -2
  546. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +6 -6
  547. package/dist/safe-bash-io-engine/internal.js +1 -1
  548. package/dist/safe-bash-io-engine/shell/pattern.js +38 -18
  549. package/dist/safe-bash-line-ending-engine/convert.js +9 -204
  550. package/dist/safe-bash-line-ending-engine/encoding.js +9 -42
  551. package/dist/safe-bash-line-ending-engine/index.js +48 -0
  552. package/dist/safe-bash-line-ending-engine/info.js +9 -90
  553. package/dist/safe-bash-line-ending-engine/internal.js +15 -160
  554. package/dist/safe-bash-line-ending-engine/io.js +12 -289
  555. package/dist/safe-bash-line-ending-engine/stage.js +10 -160
  556. package/dist/safe-bash-markdown-engine/index.js +3 -3
  557. package/dist/safe-bash-network-engine/args.d.ts +6 -0
  558. package/dist/safe-bash-network-engine/args.js +4 -2
  559. package/dist/safe-bash-network-engine/body.js +1 -1
  560. package/dist/safe-bash-network-engine/fetch-transport.js +3 -1
  561. package/dist/safe-bash-network-engine/index.js +3 -1
  562. package/dist/safe-bash-network-engine/input.js +2 -2
  563. package/dist/safe-bash-network-engine/platform-portable.js +3 -1
  564. package/dist/safe-bash-query-engine/dates.d.ts +1 -1
  565. package/dist/safe-bash-query-engine/dates.js +1 -1
  566. package/dist/safe-bash-query-engine/index.js +6 -6
  567. package/dist/safe-bash-query-engine/interpreter.js +4 -4
  568. package/dist/safe-bash-query-engine/parser.js +1 -1
  569. package/dist/safe-bash-query-engine/query-core.js +6 -6
  570. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +10 -0
  571. package/dist/safe-bash-regex-engine/index.js +1 -1
  572. package/dist/safe-bash-regex-engine/text/regex.d.ts +1 -1
  573. package/dist/safe-bash-regex-engine/text/regex.js +1 -1
  574. package/dist/safe-bash-search-engine/ergonomic-regex.d.ts +1 -0
  575. package/dist/safe-bash-search-engine/ergonomic-regex.js +1 -1
  576. package/dist/safe-bash-search-engine/grep.js +16 -9
  577. package/dist/safe-bash-search-engine/matcher.d.ts +2 -2
  578. package/dist/safe-bash-search-engine/matcher.js +12 -8
  579. package/dist/safe-bash-search-engine/shared.js +1 -1
  580. package/dist/safe-bash-search-engine/walk.js +13 -1
  581. package/dist/safe-bash-text-stream-engine/stream-format/shared.d.ts +1 -1
  582. package/dist/safe-bash-text-stream-engine/stream-format/shared.js +2 -1
  583. package/dist/safe-bash-xml-engine/document.js +3 -3
  584. package/dist/safe-bash-xml-engine/evaluate.js +2 -2
  585. package/dist/safe-bash-xml-engine/index.js +4 -4
  586. package/dist/safe-bash-xml-engine/io.js +7 -2
  587. package/dist/safe-bash-xml-engine/limits.d.ts +0 -2
  588. package/dist/safe-bash-xml-engine/limits.js +1 -1
  589. package/dist/safe-bash-xml-engine/query.js +3 -3
  590. package/dist/safe-bash-zip-engine/index.js +3 -3
  591. package/dist/safe-bash-zip-engine/zip/repair.js +3 -3
  592. package/dist/safe-bash-zip-engine/zip/safety.js +1 -1
  593. package/dist/safe-bash-zip-engine/zip/sfx.js +3 -3
  594. package/dist/safe-bash-zip-engine/zip/volumes.js +1 -1
  595. package/dist/safe-bash-zip-engine/zip-format.js +3 -3
  596. package/dist/safe-playwright-cloudflare/browser-socket-closure.js +18 -3
  597. package/dist/safe-playwright-cloudflare/shell-browser-resource.js +1 -1
  598. package/dist/xlsx-ast/xlsx.js +6 -5
  599. package/package.json +86 -98
  600. package/dist/media-cli/bytes.d.ts +0 -8
  601. package/dist/media-cli/bytes.js +0 -40
  602. package/dist/media-cli/concat.d.ts +0 -30
  603. package/dist/media-cli/concat.js +0 -197
  604. package/dist/media-cli/content.js +0 -66
  605. package/dist/media-cli/dependency-grammars.d.ts +0 -12
  606. package/dist/media-cli/dependency-grammars.js +0 -557
  607. package/dist/media-cli/discover.js +0 -286
  608. package/dist/media-cli/engine.js +0 -190
  609. package/dist/media-cli/filename-expression.js +0 -147
  610. package/dist/media-cli/filesystem.js +0 -35
  611. package/dist/media-cli/frontend-contract.js +0 -8
  612. package/dist/media-cli/frontend-issues.d.ts +0 -6
  613. package/dist/media-cli/frontend-issues.js +0 -9
  614. package/dist/media-cli/imagemagick-operand.d.ts +0 -42
  615. package/dist/media-cli/imagemagick-operand.js +0 -229
  616. package/dist/media-cli/imagemagick-references.d.ts +0 -7
  617. package/dist/media-cli/imagemagick-references.js +0 -42
  618. package/dist/media-cli/imagemagick.generated.js +0 -3254
  619. package/dist/media-cli/imagemagick.js +0 -615
  620. package/dist/media-cli/index.js +0 -12
  621. package/dist/media-cli/mvg.d.ts +0 -10
  622. package/dist/media-cli/mvg.js +0 -102
  623. package/dist/media-cli/network.js +0 -78
  624. package/dist/media-cli/options.generated.js +0 -3312
  625. package/dist/media-cli/preset.d.ts +0 -11
  626. package/dist/media-cli/preset.js +0 -57
  627. package/dist/media-cli/resolution-path.d.ts +0 -23
  628. package/dist/media-cli/resolution-path.js +0 -217
  629. package/dist/media-cli/resolver.js +0 -494
  630. package/dist/media-cli/resources.d.ts +0 -16
  631. package/dist/media-cli/resources.js +0 -187
  632. package/dist/media-cli/shim.js +0 -52
  633. package/dist/media-cli/tee.d.ts +0 -6
  634. package/dist/media-cli/tee.js +0 -38
  635. package/dist/office-package/zip-sync.js +0 -111
  636. package/dist/remote-execution/binary.js +0 -178
  637. package/dist/remote-execution/callback-result.js +0 -26
  638. package/dist/remote-execution/canonical-capabilities.d.ts +0 -5
  639. package/dist/remote-execution/canonical-capabilities.js +0 -45
  640. package/dist/remote-execution/canonical-metadata.d.ts +0 -4
  641. package/dist/remote-execution/canonical-metadata.js +0 -32
  642. package/dist/remote-execution/client.js +0 -824
  643. package/dist/remote-execution/deployment.js +0 -131
  644. package/dist/remote-execution/descriptors.js +0 -267
  645. package/dist/remote-execution/effects.js +0 -357
  646. package/dist/remote-execution/endpoint.js +0 -224
  647. package/dist/remote-execution/files.js +0 -291
  648. package/dist/remote-execution/hosting-operation.js +0 -26
  649. package/dist/remote-execution/hosting-request.d.ts +0 -4
  650. package/dist/remote-execution/hosting-request.js +0 -12
  651. package/dist/remote-execution/hosting-stream.d.ts +0 -8
  652. package/dist/remote-execution/hosting-stream.js +0 -64
  653. package/dist/remote-execution/index.js +0 -18
  654. package/dist/remote-execution/invocation-admission.d.ts +0 -3
  655. package/dist/remote-execution/invocation-admission.js +0 -17
  656. package/dist/remote-execution/job-binding.js +0 -1269
  657. package/dist/remote-execution/materializations.js +0 -284
  658. package/dist/remote-execution/modal-driver.js +0 -90
  659. package/dist/remote-execution/native-result.d.ts +0 -3
  660. package/dist/remote-execution/native-result.js +0 -16
  661. package/dist/remote-execution/output-freshness.d.ts +0 -4
  662. package/dist/remote-execution/output-freshness.js +0 -19
  663. package/dist/remote-execution/output-retrieval.js +0 -474
  664. package/dist/remote-execution/process-http.js +0 -607
  665. package/dist/remote-execution/process.js +0 -577
  666. package/dist/remote-execution/protocol.js +0 -208
  667. package/dist/remote-execution/relay.js +0 -91
  668. package/dist/remote-execution/rest-driver.js +0 -93
  669. package/dist/remote-execution/upload-descriptor.js +0 -201
  670. package/dist/remote-execution/upload-protocol.js +0 -62
  671. package/dist/remote-execution/uploads.js +0 -324
  672. package/dist/remote-execution/wire-json.d.ts +0 -4
  673. package/dist/remote-execution/wire-json.js +0 -44
  674. package/dist/remote-execution/wire-validation.js +0 -131
  675. package/dist/remote-execution/wire.generated.js +0 -4224
  676. package/dist/safe-bash/chunks/chunk-GDYNCWRV.js +0 -161
  677. package/dist/safe-bash/chunks/chunk-IWDICZVK.js +0 -20
  678. package/dist/safe-bash/chunks/chunk-MHMMRCYC.js +0 -3464
  679. package/dist/safe-bash/chunks/chunk-UE5KZDEK.js +0 -77
  680. package/dist/safe-bash/chunks/csvkit-TACDU7FC.js +0 -1618
  681. package/dist/safe-bash/chunks/implementation-MLFHUQ5M.js +0 -133
  682. package/dist/safe-bash/commands/csvkit/sync.js +0 -1639
  683. package/dist/safe-bash/commands/node/unconfigured.d.ts +0 -3
  684. package/dist/safe-bash/commands/node/unconfigured.js +0 -10
  685. package/dist/safe-bash/commands/pandoc/implementation.d.ts +0 -8
  686. package/dist/safe-bash/commands/pandoc/implementation.js +0 -94
  687. package/dist/safe-bash-mcp/index.browser.js +0 -9167
  688. package/dist/safe-bash/command-chunks/{chunk-ZRRBXU3M.js → chunk-GIN5GUDP.js} +4 -4
  689. package/dist/safe-bash/command-chunks/{chunk-LAOM65EE.js → chunk-IEO4XVN6.js} +3 -3
  690. package/dist/safe-bash/command-chunks/{chunk-BXCXRYVU.js → chunk-JNANXVJV.js} +0 -0
  691. package/dist/safe-bash/command-chunks/{chunk-364TMWBT.js → chunk-MWREVL44.js} +6 -6
  692. package/dist/safe-bash/command-chunks/{chunk-464RVBGB.js → chunk-Q5TDKFHK.js} +3 -3
  693. package/dist/safe-bash/command-chunks/{chunk-AJR3AQYA.js → chunk-UKX3LZHR.js} +0 -0
  694. package/dist/safe-bash/command-chunks/{chunk-XIIBTGC5.js → chunk-XPXEQKRW.js} +9 -9
  695. package/dist/safe-bash/command-chunks/{chunk-FDBUV4HJ.js → chunk-Y4HGTG3E.js} +3 -3
  696. /package/dist/{safe-bash/commands/csvkit → safe-bash-command-csvkit}/sync.d.ts +0 -0
@@ -2472,6 +2472,50 @@ var SqliteDatabase = class {
2472
2472
  indexRows
2473
2473
  });
2474
2474
  }
2475
+ bulkImportRows(tableName, rows) {
2476
+ const tbl = this.findTable(tableName);
2477
+ if (!tbl) return false;
2478
+ const lowerTbl = tbl.name.toLowerCase();
2479
+ const hasTriggers = Array.from(this.triggers.values()).some((tr) => tr.tableName.toLowerCase() === lowerTbl);
2480
+ const hasComplexCols = tbl.columns.some(
2481
+ (c) => Boolean(c.checkExpr || c.generatedExpr || c.primaryKey && c.type.toUpperCase() === "INTEGER" && !tbl.withoutRowId && tbl.primaryKeyCols.length === 1)
2482
+ );
2483
+ if (this.foreignKeys || hasTriggers || hasComplexCols) {
2484
+ return false;
2485
+ }
2486
+ const cols = tbl.columns;
2487
+ const colCount = cols.length;
2488
+ let inserted = 0;
2489
+ for (let i = 0; i < rows.length; i++) {
2490
+ const r = rows[i];
2491
+ if (r.length === 1 && r[0] === "" && colCount > 1) continue;
2492
+ const data = {};
2493
+ for (let cIdx = 0; cIdx < colCount; cIdx++) {
2494
+ const col = cols[cIdx];
2495
+ const raw = r[cIdx] ?? "";
2496
+ const val = applyColumnAffinity(raw, col.type);
2497
+ if (col.notNull && (val === null || val === void 0)) {
2498
+ return false;
2499
+ }
2500
+ data[col.name] = val;
2501
+ }
2502
+ const rowid = tbl.nextRowId;
2503
+ const candidate = { rowid, data };
2504
+ const conflict = runSynchronously(this.checkConstraintsAndConflicts(tbl, candidate));
2505
+ if (conflict) {
2506
+ throw new Error(`UNIQUE constraint failed: ${tbl.name}`);
2507
+ }
2508
+ this.checkRowCount(tbl.rows.length + 1);
2509
+ tbl.rows.push(candidate);
2510
+ tbl.nextRowId = rowid + 1;
2511
+ if (rowid > tbl.maxAutoInc) tbl.maxAutoInc = rowid;
2512
+ this.lastInsertRowid = rowid;
2513
+ inserted++;
2514
+ }
2515
+ this.lastChanges = inserted;
2516
+ this.totalChanges += inserted;
2517
+ return true;
2518
+ }
2475
2519
  findTable(name) {
2476
2520
  const lower = name.toLowerCase();
2477
2521
  for (const [k, v] of this.tables) {
@@ -3533,6 +3577,63 @@ var SqliteDatabase = class {
3533
3577
  resolvedKeySets.push(index.columns.map((cKey, i) => ({ cKey, collate: index.collations?.[i] ?? tbl.columns.find((col) => col.name === cKey)?.collate ?? "BINARY" })));
3534
3578
  }
3535
3579
  }
3580
+ if (resolvedKeySets.length === 0 && candidate.rowid >= tbl.nextRowId) {
3581
+ return null;
3582
+ }
3583
+ const canUseFastIndex = excludeRowid === void 0 && tbl.rows.length > 32 && resolvedKeySets.every((ks) => ks.every((k) => k.collate === "BINARY"));
3584
+ if (canUseFastIndex) {
3585
+ const encodeKey = (row, ks) => {
3586
+ if (ks.length === 1) {
3587
+ const v = row.data[ks[0].cKey] ?? null;
3588
+ if (v === null) return null;
3589
+ return `${typeof v}:${String(v)}`;
3590
+ }
3591
+ const parts = [];
3592
+ for (const { cKey } of ks) {
3593
+ const v = row.data[cKey] ?? null;
3594
+ if (v === null) return null;
3595
+ parts.push(`${typeof v}:${String(v)}`);
3596
+ }
3597
+ return parts.join("");
3598
+ };
3599
+ const indexRow = (idx, row) => {
3600
+ idx.byRowid.set(row.rowid, row);
3601
+ for (let i = 0; i < resolvedKeySets.length; i += 1) {
3602
+ const k = encodeKey(row, resolvedKeySets[i]);
3603
+ if (k !== null) {
3604
+ idx.byKeySets[i].set(k, row);
3605
+ }
3606
+ }
3607
+ };
3608
+ let fastIdx = tbl.__fastConflictIndex;
3609
+ if (!fastIdx || fastIdx.byKeySets.length !== resolvedKeySets.length || fastIdx.len !== tbl.rows.length && !(fastIdx.len + 1 === tbl.rows.length && fastIdx.lastRow === tbl.rows[tbl.rows.length - 2])) {
3610
+ fastIdx = {
3611
+ len: tbl.rows.length,
3612
+ lastRow: tbl.rows[tbl.rows.length - 1],
3613
+ byRowid: /* @__PURE__ */ new Map(),
3614
+ byKeySets: resolvedKeySets.map(() => /* @__PURE__ */ new Map())
3615
+ };
3616
+ for (const r of tbl.rows) {
3617
+ indexRow(fastIdx, r);
3618
+ }
3619
+ tbl.__fastConflictIndex = fastIdx;
3620
+ } else if (fastIdx.len + 1 === tbl.rows.length) {
3621
+ const added = tbl.rows[tbl.rows.length - 1];
3622
+ indexRow(fastIdx, added);
3623
+ fastIdx.len = tbl.rows.length;
3624
+ fastIdx.lastRow = added;
3625
+ }
3626
+ const byId = fastIdx.byRowid.get(candidate.rowid);
3627
+ if (byId) return byId;
3628
+ for (let i = 0; i < resolvedKeySets.length; i += 1) {
3629
+ const k = encodeKey(candidate, resolvedKeySets[i]);
3630
+ if (k !== null) {
3631
+ const hit = fastIdx.byKeySets[i].get(k);
3632
+ if (hit) return hit;
3633
+ }
3634
+ }
3635
+ return null;
3636
+ }
3536
3637
  for (const existing of tbl.rows) {
3537
3638
  yield;
3538
3639
  if (excludeRowid !== void 0 && existing.rowid === excludeRowid) {
@@ -4807,11 +4908,13 @@ var SqliteDatabase = class {
4807
4908
  }, this);
4808
4909
  }
4809
4910
  } else {
4810
- groupedRows = yield* stepMap(workingRows, function* (r) {
4911
+ groupedRows = yield* stepMap(workingRows, function* (r, idx) {
4811
4912
  yield;
4913
+ workingRows[idx] = void 0;
4812
4914
  return { representative: r, group: [r] };
4813
4915
  }, this);
4814
4916
  }
4917
+ workingRows = [];
4815
4918
  const windowResults = /* @__PURE__ */ new Map();
4816
4919
  for (const st of selectTargets) {
4817
4920
  yield;
@@ -4823,8 +4926,15 @@ var SqliteDatabase = class {
4823
4926
  windowResults
4824
4927
  );
4825
4928
  }
4929
+ const firstWindowPeek = windowResults.keys().next().value;
4930
+ const needsPostProjectionCtx = Boolean(
4931
+ orderByTokens && orderByTokens.length > 0 || !orderByTokens?.length && firstWindowPeek?.kind === "func" && firstWindowPeek.over
4932
+ );
4933
+ const emptyCtx = {};
4934
+ const emptyGroup = [];
4826
4935
  let projected = yield* stepMap(groupedRows, function* (g, rowIdx) {
4827
- const repCtx = { ...g.representative };
4936
+ groupedRows[rowIdx] = void 0;
4937
+ const repCtx = g.representative;
4828
4938
  const values = yield* stepMap(selectTargets, function* (st) {
4829
4939
  const val = yield* this.evalExprSteps(
4830
4940
  st.expr,
@@ -4838,8 +4948,13 @@ var SqliteDatabase = class {
4838
4948
  }
4839
4949
  return val;
4840
4950
  }, this);
4841
- return { values, ctx: repCtx, group: g.group };
4951
+ return {
4952
+ values,
4953
+ ctx: needsPostProjectionCtx ? repCtx : emptyCtx,
4954
+ group: needsPostProjectionCtx ? g.group : emptyGroup
4955
+ };
4842
4956
  }, this);
4957
+ groupedRows = [];
4843
4958
  const firstWindow = windowResults.keys().next().value;
4844
4959
  if (!orderByTokens?.length && firstWindow?.kind === "func" && firstWindow.over) {
4845
4960
  const sortSpecs = [
@@ -5186,7 +5301,97 @@ var SqliteDatabase = class {
5186
5301
  }
5187
5302
  }
5188
5303
  const rightMatched = /* @__PURE__ */ new Set();
5189
- for (const leftRow of currentRows) {
5304
+ let equiJoinSpec;
5305
+ const rightAliasLower = resolved.alias.toLowerCase();
5306
+ const rightColSet = new Set(resolved.columns.map((c) => c.toLowerCase()));
5307
+ const leftAliasSet = new Set(schema.slice(0, -1).map((s) => s.tableAlias.toLowerCase()));
5308
+ const classifyJoinCol = (colExpr) => {
5309
+ if (colExpr.table) {
5310
+ const tLower = colExpr.table.toLowerCase();
5311
+ if (tLower === rightAliasLower) return "right";
5312
+ if (leftAliasSet.has(tLower)) return "left";
5313
+ return void 0;
5314
+ }
5315
+ const cLower = colExpr.name.toLowerCase();
5316
+ const inLeft = prevCols.has(cLower);
5317
+ const inRight = rightColSet.has(cLower);
5318
+ if (inLeft && !inRight) return "left";
5319
+ if (inRight && !inLeft) return "right";
5320
+ return void 0;
5321
+ };
5322
+ const findEquiPair = (expr, topLevel) => {
5323
+ if (!expr || equiJoinSpec) return;
5324
+ if (expr.kind === "binary" && expr.op === "=" && expr.left.kind === "column" && expr.right.kind === "column") {
5325
+ const sideA = classifyJoinCol(expr.left);
5326
+ const sideB = classifyJoinCol(expr.right);
5327
+ if (sideA === "left" && sideB === "right") {
5328
+ equiJoinSpec = {
5329
+ leftTable: expr.left.table,
5330
+ leftCol: expr.left.name,
5331
+ rightTable: expr.right.table ?? resolved.alias,
5332
+ rightCol: expr.right.name,
5333
+ isPureSingleEqui: topLevel
5334
+ };
5335
+ } else if (sideA === "right" && sideB === "left") {
5336
+ equiJoinSpec = {
5337
+ leftTable: expr.right.table,
5338
+ leftCol: expr.right.name,
5339
+ rightTable: expr.left.table ?? resolved.alias,
5340
+ rightCol: expr.left.name,
5341
+ isPureSingleEqui: topLevel
5342
+ };
5343
+ }
5344
+ } else if (expr.kind === "binary" && expr.op === "AND") {
5345
+ findEquiPair(expr.left, false);
5346
+ findEquiPair(expr.right, false);
5347
+ }
5348
+ };
5349
+ if (!resolved.isCorrelated) {
5350
+ if (onExpr) {
5351
+ findEquiPair(onExpr, true);
5352
+ } else if (usingList && usingList.length > 0) {
5353
+ equiJoinSpec = {
5354
+ leftTable: void 0,
5355
+ leftCol: usingList[0],
5356
+ rightTable: resolved.alias,
5357
+ rightCol: usingList[0],
5358
+ isPureSingleEqui: usingList.length === 1
5359
+ };
5360
+ }
5361
+ }
5362
+ const getHashJoinKeys = (val) => {
5363
+ if (val === null || val === void 0) return [];
5364
+ if (typeof val === "number") {
5365
+ return ["num:" + String(Object.is(val, -0) ? 0 : val)];
5366
+ }
5367
+ if (typeof val === "string") {
5368
+ const trimmed = val.trim();
5369
+ const num = trimmed !== "" ? Number(trimmed) : NaN;
5370
+ if (!Number.isNaN(num)) {
5371
+ return ["str:" + val, "num:" + String(Object.is(num, -0) ? 0 : num)];
5372
+ }
5373
+ return ["str:" + val];
5374
+ }
5375
+ return ["other:" + String(val)];
5376
+ };
5377
+ let rightHashIndex;
5378
+ if (equiJoinSpec && resolved.rows.length > 0) {
5379
+ rightHashIndex = /* @__PURE__ */ new Map();
5380
+ for (let rIdx = 0; rIdx < resolved.rows.length; rIdx += 1) {
5381
+ const rVal = this.lookupColInRow(resolved.rows[rIdx], equiJoinSpec.rightTable, equiJoinSpec.rightCol);
5382
+ for (const key of getHashJoinKeys(rVal)) {
5383
+ let bucket = rightHashIndex.get(key);
5384
+ if (!bucket) {
5385
+ bucket = [];
5386
+ rightHashIndex.set(key, bucket);
5387
+ }
5388
+ bucket.push(rIdx);
5389
+ }
5390
+ }
5391
+ }
5392
+ for (let lIdx = 0; lIdx < currentRows.length; lIdx += 1) {
5393
+ const leftRow = currentRows[lIdx];
5394
+ currentRows[lIdx] = void 0;
5190
5395
  yield;
5191
5396
  const candidateRightRows = resolved.isCorrelated ? (yield* this.resolveSingleTableSource(
5192
5397
  item.sourceTokens,
@@ -5195,22 +5400,83 @@ var SqliteDatabase = class {
5195
5400
  cteScope
5196
5401
  )).rows : resolved.rows;
5197
5402
  let matchedLeft = false;
5198
- for (let rIdx = 0; rIdx < candidateRightRows.length; rIdx += 1) {
5403
+ let candidateIndices;
5404
+ let leftEquiVal = null;
5405
+ if (rightHashIndex && equiJoinSpec) {
5406
+ leftEquiVal = this.lookupColInRow(leftRow, equiJoinSpec.leftTable, equiJoinSpec.leftCol);
5407
+ const probeKeys = getHashJoinKeys(leftEquiVal);
5408
+ if (probeKeys.length === 0) {
5409
+ candidateIndices = [];
5410
+ } else if (probeKeys.length === 1) {
5411
+ candidateIndices = rightHashIndex.get(probeKeys[0]) ?? [];
5412
+ } else {
5413
+ const seen = /* @__PURE__ */ new Set();
5414
+ for (const pk of probeKeys) {
5415
+ const bucket = rightHashIndex.get(pk);
5416
+ if (bucket) {
5417
+ for (const idx of bucket) seen.add(idx);
5418
+ }
5419
+ }
5420
+ candidateIndices = [...seen];
5421
+ }
5422
+ }
5423
+ const totalCandidates = candidateIndices ? candidateIndices.length : candidateRightRows.length;
5424
+ for (let cPos = 0; cPos < totalCandidates; cPos += 1) {
5199
5425
  yield;
5426
+ const rIdx = candidateIndices ? candidateIndices[cPos] : cPos;
5200
5427
  const rightRow = candidateRightRows[rIdx];
5201
- const merged = { ...leftRow };
5202
- for (const [k, v] of Object.entries(rightRow)) {
5203
- yield;
5204
- if (k.includes(".") || !(k in merged) || merged[k] === null) {
5205
- merged[k] = v;
5428
+ if (equiJoinSpec) {
5429
+ const rVal = this.lookupColInRow(rightRow, equiJoinSpec.rightTable, equiJoinSpec.rightCol);
5430
+ if (leftEquiVal === null || rVal === null || !sqlEquals(leftEquiVal, rVal)) {
5431
+ continue;
5432
+ }
5433
+ }
5434
+ const canMutateInPlace = !matchedLeft && totalCandidates === 1 && Boolean(equiJoinSpec && equiJoinSpec.isPureSingleEqui);
5435
+ let merged;
5436
+ const lTables = leftRow.__tables;
5437
+ const rTables = rightRow.__tables;
5438
+ if (lTables && rTables) {
5439
+ if (canMutateInPlace) {
5440
+ Object.assign(lTables, rTables);
5441
+ if (leftRow.__rowids && rightRow.__rowids) {
5442
+ Object.assign(leftRow.__rowids, rightRow.__rowids);
5443
+ }
5444
+ leftRow.__sources.push(...rightRow.__sources ?? []);
5445
+ merged = leftRow;
5446
+ } else {
5447
+ merged = {
5448
+ __rowid: leftRow.__rowid,
5449
+ __tables: { ...lTables, ...rTables },
5450
+ __rowids: { ...leftRow.__rowids, ...rightRow.__rowids },
5451
+ __sources: [...leftRow.__sources ?? [], ...rightRow.__sources ?? []]
5452
+ };
5453
+ }
5454
+ } else {
5455
+ merged = canMutateInPlace ? leftRow : { ...leftRow };
5456
+ if (lTables && !canMutateInPlace) {
5457
+ merged.__tables = { ...lTables };
5458
+ merged.__rowids = { ...leftRow.__rowids };
5459
+ merged.__sources = [...leftRow.__sources ?? []];
5460
+ }
5461
+ if (rTables) {
5462
+ merged.__tables = { ...merged.__tables ?? {}, ...rTables };
5463
+ merged.__rowids = { ...merged.__rowids ?? {}, ...rightRow.__rowids };
5464
+ merged.__sources = [...merged.__sources ?? [], ...rightRow.__sources ?? []];
5465
+ }
5466
+ for (const k in rightRow) {
5467
+ if (k.startsWith("__")) continue;
5468
+ const v = rightRow[k];
5469
+ if (k.includes(".") || !(k in merged) || merged[k] === null) {
5470
+ merged[k] = v;
5471
+ }
5206
5472
  }
5207
5473
  }
5208
5474
  let matches = true;
5209
- if (onExpr) {
5475
+ if (onExpr && !(equiJoinSpec && equiJoinSpec.isPureSingleEqui)) {
5210
5476
  matches = isTruthy(
5211
5477
  yield* this.evalExprSteps(onExpr, merged, positionalParams, cteScope)
5212
5478
  );
5213
- } else if (usingList && usingList.length > 0) {
5479
+ } else if (usingList && usingList.length > 0 && !(equiJoinSpec && equiJoinSpec.isPureSingleEqui)) {
5214
5480
  for (const uCol of usingList) {
5215
5481
  yield;
5216
5482
  const lVal = this.lookupColInRow(leftRow, void 0, uCol);
@@ -5229,16 +5495,29 @@ var SqliteDatabase = class {
5229
5495
  }
5230
5496
  }
5231
5497
  if (!matchedLeft && (item.joinType === "LEFT" || item.joinType === "FULL")) {
5232
- const nullPadded = { ...leftRow };
5498
+ const nullObj = {};
5233
5499
  for (const col of resolved.columns) {
5234
- yield;
5235
- nullPadded[`${resolved.alias}.${col}`] = null;
5236
- if (!(col in nullPadded)) {
5237
- nullPadded[col] = null;
5500
+ nullObj[col] = null;
5501
+ }
5502
+ const lTables = leftRow.__tables;
5503
+ if (lTables) {
5504
+ lTables[resolved.alias] = nullObj;
5505
+ if (leftRow.__rowids) leftRow.__rowids[resolved.alias] = null;
5506
+ leftRow.__sources.push(nullObj);
5507
+ this.checkRowCount(nextRows.length + 1);
5508
+ nextRows.push(leftRow);
5509
+ } else {
5510
+ const nullPadded = { ...leftRow };
5511
+ for (const col of resolved.columns) {
5512
+ yield;
5513
+ nullPadded[`${resolved.alias}.${col}`] = null;
5514
+ if (!(col in nullPadded)) {
5515
+ nullPadded[col] = null;
5516
+ }
5238
5517
  }
5518
+ this.checkRowCount(nextRows.length + 1);
5519
+ nextRows.push(nullPadded);
5239
5520
  }
5240
- this.checkRowCount(nextRows.length + 1);
5241
- nextRows.push(nullPadded);
5242
5521
  }
5243
5522
  }
5244
5523
  if (item.joinType === "RIGHT" || item.joinType === "FULL") {
@@ -5246,18 +5525,44 @@ var SqliteDatabase = class {
5246
5525
  yield;
5247
5526
  if (!rightMatched.has(rIdx)) {
5248
5527
  const rightRow = resolved.rows[rIdx];
5249
- const nullPadded = {};
5250
- for (const s of schema.slice(0, -1)) {
5251
- yield;
5252
- for (const col of s.columns) {
5528
+ const rTables = rightRow.__tables;
5529
+ if (rTables) {
5530
+ const tablesMap = {};
5531
+ const rowidsMap = {};
5532
+ const sourcesList = [];
5533
+ for (const s of schema.slice(0, -1)) {
5534
+ const nullLeft = {};
5535
+ for (const col of s.columns) {
5536
+ nullLeft[col] = null;
5537
+ }
5538
+ tablesMap[s.tableAlias] = nullLeft;
5539
+ rowidsMap[s.tableAlias] = null;
5540
+ sourcesList.push(nullLeft);
5541
+ }
5542
+ Object.assign(tablesMap, rTables);
5543
+ if (rightRow.__rowids) Object.assign(rowidsMap, rightRow.__rowids);
5544
+ sourcesList.push(...rightRow.__sources ?? []);
5545
+ this.checkRowCount(nextRows.length + 1);
5546
+ nextRows.push({
5547
+ __rowid: rightRow.__rowid ?? null,
5548
+ __tables: tablesMap,
5549
+ __rowids: rowidsMap,
5550
+ __sources: sourcesList
5551
+ });
5552
+ } else {
5553
+ const nullPadded = {};
5554
+ for (const s of schema.slice(0, -1)) {
5253
5555
  yield;
5254
- nullPadded[`${s.tableAlias}.${col}`] = null;
5255
- nullPadded[col] = null;
5556
+ for (const col of s.columns) {
5557
+ yield;
5558
+ nullPadded[`${s.tableAlias}.${col}`] = null;
5559
+ nullPadded[col] = null;
5560
+ }
5256
5561
  }
5562
+ Object.assign(nullPadded, rightRow);
5563
+ this.checkRowCount(nextRows.length + 1);
5564
+ nextRows.push(nullPadded);
5257
5565
  }
5258
- Object.assign(nullPadded, rightRow);
5259
- this.checkRowCount(nextRows.length + 1);
5260
- nextRows.push(nullPadded);
5261
5566
  }
5262
5567
  }
5263
5568
  }
@@ -5511,15 +5816,21 @@ var SqliteDatabase = class {
5511
5816
  cteScope
5512
5817
  )) ?? { columns: [], rows: [] };
5513
5818
  const cols2 = view.columns && view.columns.length > 0 ? view.columns : res.columns;
5514
- const rows2 = yield* stepMap(res.rows, function* (r) {
5819
+ const sameViewAlias = alias.toLowerCase() === name.toLowerCase();
5820
+ const rows2 = yield* stepMap(res.rows, function* (r, rIdx) {
5515
5821
  yield;
5516
- const obj = {};
5517
- cols2.forEach((c, cIdx) => {
5518
- obj[c] = r[cIdx] ?? null;
5519
- obj[`${alias}.${c}`] = r[cIdx] ?? null;
5520
- obj[`${name}.${c}`] = r[cIdx] ?? null;
5521
- });
5522
- return obj;
5822
+ res.rows[rIdx] = void 0;
5823
+ const data = {};
5824
+ for (let cIdx = 0; cIdx < cols2.length; cIdx++) {
5825
+ data[cols2[cIdx]] = r[cIdx] ?? null;
5826
+ }
5827
+ const tablesMap = sameViewAlias ? { [alias]: data } : { [alias]: data, [name]: data };
5828
+ return {
5829
+ __rowid: rIdx + 1,
5830
+ __tables: tablesMap,
5831
+ __rowids: sameViewAlias ? { [alias]: rIdx + 1 } : { [alias]: rIdx + 1, [name]: rIdx + 1 },
5832
+ __sources: [data]
5833
+ };
5523
5834
  }, this);
5524
5835
  return { alias, columns: cols2, rows: rows2 };
5525
5836
  }
@@ -5530,22 +5841,17 @@ var SqliteDatabase = class {
5530
5841
  const cols = tbl.columns.map((c) => {
5531
5842
  return c.name;
5532
5843
  });
5844
+ const sameAliasAndName = alias.toLowerCase() === name.toLowerCase();
5533
5845
  const rows = yield* stepMap(this.preparing ? [] : tbl.rows, function* (r) {
5534
- const obj = {
5535
- rowid: r.rowid,
5536
- _rowid_: r.rowid,
5537
- oid: r.rowid,
5538
- [`${alias}.rowid`]: r.rowid,
5539
- [`${name}.rowid`]: r.rowid
5846
+ yield;
5847
+ const tablesMap = sameAliasAndName ? { [alias]: r.data } : { [alias]: r.data, [name]: r.data };
5848
+ const rowidsMap = sameAliasAndName ? { [alias]: r.rowid } : { [alias]: r.rowid, [name]: r.rowid };
5849
+ return {
5850
+ __rowid: r.rowid,
5851
+ __tables: tablesMap,
5852
+ __rowids: rowidsMap,
5853
+ __sources: [r.data]
5540
5854
  };
5541
- for (const c of cols) {
5542
- yield;
5543
- const val = r.data[c] ?? null;
5544
- obj[c] = val;
5545
- obj[`${alias}.${c}`] = val;
5546
- obj[`${name}.${c}`] = val;
5547
- }
5548
- return obj;
5549
5855
  }, this);
5550
5856
  return { alias, columns: cols, rows };
5551
5857
  }
@@ -6056,31 +6362,150 @@ var SqliteDatabase = class {
6056
6362
  }
6057
6363
  }
6058
6364
  lookupColInRow(row, table, name, doubleQuoted = false) {
6365
+ const tables = row.__tables;
6366
+ const sources = row.__sources;
6367
+ const rowids = row.__rowids;
6368
+ const lowerName = name.toLowerCase();
6369
+ if (lowerName === "rowid" || lowerName === "_rowid_" || lowerName === "oid") {
6370
+ if (!table && name in row && !name.startsWith("__")) {
6371
+ return row[name];
6372
+ }
6373
+ if (table) {
6374
+ const exact = `${table}.${name}`;
6375
+ if (exact in row) return row[exact];
6376
+ if (tables) {
6377
+ let td = tables[table];
6378
+ if (!td) {
6379
+ const lt = table.toLowerCase();
6380
+ for (const tk in tables) {
6381
+ if (tk.toLowerCase() === lt) {
6382
+ td = tables[tk];
6383
+ break;
6384
+ }
6385
+ }
6386
+ }
6387
+ if (td) {
6388
+ if (name in td) return td[name];
6389
+ for (const k in td) {
6390
+ if (k.toLowerCase() === lowerName) return td[k];
6391
+ }
6392
+ }
6393
+ }
6394
+ if (rowids) {
6395
+ if (table in rowids) return rowids[table];
6396
+ const lt = table.toLowerCase();
6397
+ for (const tk in rowids) {
6398
+ if (tk.toLowerCase() === lt) return rowids[tk];
6399
+ }
6400
+ }
6401
+ const tableRowidKey = table + ".rowid";
6402
+ if (tableRowidKey in row) return row[tableRowidKey];
6403
+ } else {
6404
+ if (sources) {
6405
+ for (let i = 0; i < sources.length; i++) {
6406
+ const s = sources[i];
6407
+ if (name in s) return s[name];
6408
+ for (const k in s) {
6409
+ if (k.toLowerCase() === lowerName) return s[k];
6410
+ }
6411
+ }
6412
+ }
6413
+ for (const k in row) {
6414
+ if (!k.startsWith("__") && k.toLowerCase() === lowerName) return row[k];
6415
+ }
6416
+ if ("__rowid" in row) return row.__rowid;
6417
+ }
6418
+ }
6059
6419
  if (table) {
6420
+ if (tables) {
6421
+ let td = tables[table];
6422
+ if (!td) {
6423
+ const lt = table.toLowerCase();
6424
+ for (const tk in tables) {
6425
+ if (tk.toLowerCase() === lt) {
6426
+ td = tables[tk];
6427
+ break;
6428
+ }
6429
+ }
6430
+ }
6431
+ if (td) {
6432
+ if (name in td) return td[name] ?? null;
6433
+ for (const k in td) {
6434
+ if (k.toLowerCase() === lowerName) return td[k] ?? null;
6435
+ }
6436
+ }
6437
+ }
6060
6438
  const exact = `${table}.${name}`;
6061
6439
  if (exact in row) {
6062
6440
  return row[exact];
6063
6441
  }
6064
6442
  const lowerExact = exact.toLowerCase();
6065
- for (const [k, v] of Object.entries(row)) {
6443
+ for (const k in row) {
6444
+ if (k.startsWith("__")) continue;
6066
6445
  if (k.toLowerCase() === lowerExact) {
6067
- return v;
6446
+ return row[k];
6068
6447
  }
6069
6448
  }
6070
- }
6071
- if (!table && name in row) {
6072
- return row[name];
6073
- }
6074
- const lowerName = name.toLowerCase();
6075
- for (const [k, v] of Object.entries(row)) {
6076
- if (!table && (k.toLowerCase() === lowerName || k.toLowerCase().endsWith(`.${lowerName}`))) {
6077
- return v;
6449
+ } else {
6450
+ if (name in row && !name.startsWith("__")) {
6451
+ return row[name];
6452
+ }
6453
+ if (sources) {
6454
+ let found;
6455
+ for (let i = 0; i < sources.length; i++) {
6456
+ const src = sources[i];
6457
+ if (name in src) {
6458
+ const v = src[name] ?? null;
6459
+ if (found === void 0 || found === null) found = v;
6460
+ if (found !== null && found !== void 0) return found;
6461
+ }
6462
+ }
6463
+ if (found !== void 0) return found;
6464
+ for (let i = 0; i < sources.length; i++) {
6465
+ const src = sources[i];
6466
+ for (const k in src) {
6467
+ if (k.toLowerCase() === lowerName) {
6468
+ const v = src[k] ?? null;
6469
+ if (found === void 0 || found === null) found = v;
6470
+ if (found !== null && found !== void 0) return found;
6471
+ }
6472
+ }
6473
+ }
6474
+ if (found !== void 0) return found;
6475
+ }
6476
+ for (const k in row) {
6477
+ if (k.startsWith("__")) continue;
6478
+ if (k.toLowerCase() === lowerName || k.toLowerCase().endsWith(`.${lowerName}`)) {
6479
+ return row[k];
6480
+ }
6078
6481
  }
6079
6482
  }
6080
6483
  for (let i = this.outerRows.length - 1; i >= 0; i -= 1) {
6081
6484
  const outer = this.outerRows[i];
6485
+ const outerTables = outer.__tables;
6486
+ const outerSources = outer.__sources;
6487
+ if (table && outerTables) {
6488
+ const lt = table.toLowerCase();
6489
+ for (const tk in outerTables) {
6490
+ if (tk.toLowerCase() === lt) {
6491
+ const td = outerTables[tk];
6492
+ if (name in td) return td[name] ?? null;
6493
+ for (const k in td) {
6494
+ if (k.toLowerCase() === lowerName) return td[k] ?? null;
6495
+ }
6496
+ }
6497
+ }
6498
+ } else if (!table && outerSources) {
6499
+ for (let s = 0; s < outerSources.length; s++) {
6500
+ const src = outerSources[s];
6501
+ if (name in src) return src[name] ?? null;
6502
+ for (const k in src) {
6503
+ if (k.toLowerCase() === lowerName) return src[k] ?? null;
6504
+ }
6505
+ }
6506
+ }
6082
6507
  const key = Object.keys(outer).find(
6083
- (key2) => table ? key2.toLowerCase() === `${table}.${name}`.toLowerCase() : key2.toLowerCase() === lowerName
6508
+ (key2) => !key2.startsWith("__") && (table ? key2.toLowerCase() === `${table}.${name}`.toLowerCase() : key2.toLowerCase() === lowerName)
6084
6509
  );
6085
6510
  if (key !== void 0) return outer[key];
6086
6511
  }
@@ -8077,12 +8502,22 @@ Options:
8077
8502
  await execSingleStmt(createSql);
8078
8503
  tbl = db.findTable ? db.findTable(tableArg) : void 0;
8079
8504
  }
8080
- for (const r of dataRows) {
8081
- if (r.length === 1 && r[0] === "" && colCount > 1) {
8082
- continue;
8505
+ const targetTableName = tbl ? tbl.name : tableArg;
8506
+ if (typeof db.bulkImportRows === "function" && db.bulkImportRows(targetTableName, dataRows)) {
8507
+ state.dirty = true;
8508
+ } else {
8509
+ const batchValues = [];
8510
+ for (const r of dataRows) {
8511
+ if (r.length === 1 && r[0] === "" && colCount > 1) {
8512
+ continue;
8513
+ }
8514
+ const valsSql = Array.from({ length: colCount }, (_, cIdx) => `'${(r[cIdx] ?? "").replace(/'/g, "''")}'`).join(", ");
8515
+ batchValues.push(`(${valsSql})`);
8516
+ }
8517
+ for (let b = 0; b < batchValues.length; b += 500) {
8518
+ const chunk = batchValues.slice(b, b + 500);
8519
+ await execSingleStmt(`INSERT INTO "${targetTableName}" VALUES ${chunk.join(", ")}`);
8083
8520
  }
8084
- const valsSql = Array.from({ length: colCount }, (_, cIdx) => `'${(r[cIdx] ?? "").replace(/'/g, "''")}'`).join(", ");
8085
- await execSingleStmt(`INSERT INTO "${tbl ? tbl.name : tableArg}" VALUES (${valsSql})`);
8086
8521
  }
8087
8522
  state.dirty = true;
8088
8523
  return;
@@ -8244,7 +8679,7 @@ Options:
8244
8679
  }
8245
8680
  } else {
8246
8681
  sqlBuffer.push(line);
8247
- if (trimmed.endsWith(";") && !/\bBEGIN\b/i.test(sqlBuffer.join("\n"))) {
8682
+ if (trimmed.endsWith(";") && !(/\bCREATE\s+(?:TEMP\s+|TEMPORARY\s+)?TRIGGER\b[\s\S]*\bBEGIN\b/i.test(sqlBuffer.join("\n")) && !/\bEND\s*;\s*$/i.test(sqlBuffer.join("\n")))) {
8248
8683
  const ok = await flushSqlBuffer();
8249
8684
  if (!ok) {
8250
8685
  return false;
@@ -8664,7 +9099,7 @@ Options:
8664
9099
  const fileArg = parts[pIdx] ?? "";
8665
9100
  const tableArg = parts[pIdx + 1] ?? "";
8666
9101
  const fileBytes = readFileSync(fileArg);
8667
- if (!fileBytes || fileBytes.byteLength > 65536) return false;
9102
+ if (!fileBytes || fileBytes.byteLength > 16 * 1024 * 1024) return false;
8668
9103
  const content = textDecoder3.decode(fileBytes);
8669
9104
  const sep = csvOverride ? "," : state.colSeparator;
8670
9105
  const parsedRows = parseCsvContent(content, sep).slice(skipRows);
@@ -8680,10 +9115,15 @@ Options:
8680
9115
  db.executeStatement(createSql);
8681
9116
  tbl = db.findTable(tableArg);
8682
9117
  }
9118
+ const batchValues = [];
8683
9119
  for (const r of dataRows) {
8684
9120
  if (r.length === 1 && r[0] === "" && colCount > 1) continue;
8685
9121
  const valsSql = Array.from({ length: colCount }, (_, cIdx) => `'${(r[cIdx] ?? "").replace(/'/g, "''")}'`).join(", ");
8686
- db.executeStatement(`INSERT INTO "${tbl ? tbl.name : tableArg}" VALUES (${valsSql})`);
9122
+ batchValues.push(`(${valsSql})`);
9123
+ }
9124
+ for (let b = 0; b < batchValues.length; b += 500) {
9125
+ const chunk = batchValues.slice(b, b + 500);
9126
+ db.executeStatement(`INSERT INTO "${tbl ? tbl.name : tableArg}" VALUES ${chunk.join(", ")}`);
8687
9127
  }
8688
9128
  state.dirty = true;
8689
9129
  return true;
@@ -8731,7 +9171,7 @@ Options:
8731
9171
  if (state.exitRequested) return true;
8732
9172
  } else {
8733
9173
  sqlBuffer.push(line);
8734
- if (trimmed.endsWith(";") && !/\bBEGIN\b/i.test(sqlBuffer.join("\n"))) {
9174
+ if (trimmed.endsWith(";") && !(/\bCREATE\s+(?:TEMP\s+|TEMPORARY\s+)?TRIGGER\b[\s\S]*\bBEGIN\b/i.test(sqlBuffer.join("\n")) && !/\bEND\s*;\s*$/i.test(sqlBuffer.join("\n")))) {
8735
9175
  if (!flushSqlBuffer()) return false;
8736
9176
  if (state.exitRequested) return true;
8737
9177
  }