@poe-platform/safe-bash 0.1.817 → 0.1.819

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 (1179) hide show
  1. package/dist/image-ast/index.js +2 -2
  2. package/dist/mp4-ast/index.d.ts +2 -1
  3. package/dist/mp4-ast/mp4-metadata-source.d.ts +10 -0
  4. package/dist/mp4-ast/mp4-packets-source.d.ts +8 -1
  5. package/dist/mp4-ast/types.d.ts +21 -3
  6. package/dist/office-xml/retained-xml-document.d.ts +2 -2
  7. package/dist/pdf-ast/ast.d.ts +2 -0
  8. package/dist/pdf-ast/content/evaluator.d.ts +7 -0
  9. package/dist/pdf-ast/content/retained-evaluator.d.ts +2 -2
  10. package/dist/pdf-ast/content/retained-page.d.ts +2 -2
  11. package/dist/pdf-ast/cos/compact-number.d.ts +19 -0
  12. package/dist/pdf-ast/cos/mutable-object-store.d.ts +2 -1
  13. package/dist/pdf-ast/cos/retained-node-writer.d.ts +9 -0
  14. package/dist/pdf-ast/cos/text-store.d.ts +27 -0
  15. package/dist/pdf-ast/edit/retained-bookmarks.d.ts +2 -2
  16. package/dist/pdf-ast/edit/retained-info-updates.d.ts +3 -3
  17. package/dist/pdf-ast/edit/retained-merge-outlines.d.ts +43 -0
  18. package/dist/pdf-ast/edit/retained-page-copy.d.ts +2 -0
  19. package/dist/pdf-ast/extract/html-text-stream.d.ts +14 -0
  20. package/dist/pdf-ast/extract/logical-text-stream.d.ts +14 -0
  21. package/dist/pdf-ast/extract/raw-text-index.d.ts +18 -4
  22. package/dist/pdf-ast/extract/retained-color.d.ts +6 -6
  23. package/dist/pdf-ast/extract/retained-decoded-image.d.ts +2 -2
  24. package/dist/pdf-ast/extract/stored-text-glyphs.d.ts +8 -0
  25. package/dist/pdf-ast/fonts/retained.d.ts +2 -2
  26. package/dist/pdf-ast/image.d.ts +2 -0
  27. package/dist/pdf-ast/image.js +19 -0
  28. package/dist/pdf-ast/index.d.ts +6 -0
  29. package/dist/pdf-ast/index.js +270 -66852
  30. package/dist/pdf-ast/render/postscript.d.ts +6 -0
  31. package/dist/pdf-ast/render/raster.d.ts +21 -1
  32. package/dist/pdf-ast/retained-document.d.ts +23 -95
  33. package/dist/pdf-ast/retained-reader.d.ts +113 -0
  34. package/dist/safe-bash/ast-grep.js +1 -1
  35. package/dist/safe-bash/audio-ast.js +1 -1
  36. package/dist/safe-bash/byte-encoding.js +1 -1
  37. package/dist/safe-bash/chunks/{chunk-HD6DWOAC.js → chunk-67QE3JLU.js} +1 -1
  38. package/dist/safe-bash/chunks/{chunk-HPQE675Q.js → chunk-ESH5MDQR.js} +1 -1
  39. package/dist/safe-bash/chunks/chunk-HNT2MR4W.js +45 -0
  40. package/dist/safe-bash/chunks/{chunk-SXSEF5E2.js → chunk-IRJS54AA.js} +1 -1
  41. package/dist/safe-bash/chunks/{chunk-AXGI5JVL.js → chunk-NAETSXBW.js} +2 -2
  42. package/dist/safe-bash/chunks/{chunk-WW7QPLH2.js → chunk-PSD2RSOS.js} +2 -1
  43. package/dist/safe-bash/chunks/{chunk-FQRI5AS5.js → chunk-VF3Q2V3E.js} +1 -1
  44. package/dist/safe-bash/chunks/{pdfinfo-KQIQEDOF.js → pdfinfo-G7BGZXBN.js} +2 -12
  45. package/dist/safe-bash/command-chunks/biff-AYJZR2YV-YFF3BK43.js +5741 -0
  46. package/dist/safe-bash/command-chunks/{chunk-FEBTT5NH.js → chunk-22D6Q6SW.js} +5 -5
  47. package/dist/safe-bash/command-chunks/{chunk-ALD53QFL.js → chunk-2C4QMQQD.js} +42 -12
  48. package/dist/safe-bash/command-chunks/{chunk-ZHHALBM7.js → chunk-2E53ZL5D.js} +11 -9
  49. package/dist/safe-bash/command-chunks/{chunk-EJ4UP7DA.js → chunk-2ESK2YIE.js} +27 -5
  50. package/dist/safe-bash/command-chunks/{chunk-CKA7ZROU.js → chunk-2GU2UU2Z.js} +9 -9
  51. package/dist/safe-bash/command-chunks/{chunk-L2VLASZ4.js → chunk-2GUI3ZKE.js} +3 -3
  52. package/dist/safe-bash/command-chunks/chunk-2H6RJPCQ.js +721 -0
  53. package/dist/safe-bash/command-chunks/{chunk-DRHONH2C.js → chunk-2IGH6JIP.js} +1 -1
  54. package/dist/safe-bash/command-chunks/{chunk-QDV2NIFR.js → chunk-2TMTGVJR.js} +1 -1
  55. package/dist/safe-bash/command-chunks/{chunk-MQE77MEQ.js → chunk-2V6EUWE3.js} +3 -3
  56. package/dist/safe-bash/command-chunks/{chunk-BIJW6QWB.js → chunk-2VSNIHIW.js} +21 -21
  57. package/dist/safe-bash/command-chunks/{chunk-FSG6UC2N.js → chunk-2XR7B6DY.js} +420 -167
  58. package/dist/safe-bash/command-chunks/{chunk-EY3UE26F.js → chunk-2YC6MWQB.js} +1 -1
  59. package/dist/safe-bash/command-chunks/{chunk-NLCUQD7Y.js → chunk-3DID6MQY.js} +21 -11
  60. package/dist/safe-bash/command-chunks/{chunk-5VO534FR.js → chunk-3K5FCRUG.js} +1 -0
  61. package/dist/safe-bash/command-chunks/{chunk-BSTABZIK.js → chunk-3LMUKOP2.js} +1 -1
  62. package/dist/safe-bash/command-chunks/{chunk-XBWD6SI3.js → chunk-3MFYCMQU.js} +37 -37
  63. package/dist/safe-bash/command-chunks/chunk-3PO534WJ.js +37 -0
  64. package/dist/safe-bash/command-chunks/{chunk-UFLMOU3B.js → chunk-3RDEX4AF.js} +4 -4
  65. package/dist/safe-bash/command-chunks/{chunk-DOVWHVHI.js → chunk-3TXPZLFI.js} +6 -6
  66. package/dist/safe-bash/command-chunks/{chunk-TID5TSQW.js → chunk-42OQIFPW.js} +5 -5
  67. package/dist/safe-bash/command-chunks/{chunk-UJYXSLM6.js → chunk-45QE6QRR.js} +4 -4
  68. package/dist/safe-bash/command-chunks/{chunk-LMLBQSAM.js → chunk-4HJEZGYN.js} +8 -8
  69. package/dist/safe-bash/command-chunks/{chunk-5QXRIZSS.js → chunk-4Q3HP33O.js} +4 -4
  70. package/dist/safe-bash/command-chunks/{chunk-EBX5RKKT.js → chunk-4XYGJB24.js} +4 -4
  71. package/dist/safe-bash/command-chunks/{chunk-NDALIHKK.js → chunk-4ZQYBCB2.js} +22 -22
  72. package/dist/safe-bash/command-chunks/{chunk-OFONWWEZ.js → chunk-5IHJWBDR.js} +2 -2
  73. package/dist/safe-bash/command-chunks/{chunk-TG2RVQLP.js → chunk-5KWEZV5H.js} +2 -2
  74. package/dist/safe-bash/command-chunks/{chunk-UYZ6EFZE.js → chunk-5P5SF75H.js} +83 -34
  75. package/dist/safe-bash/command-chunks/{chunk-P462JTNT.js → chunk-5PJ6VT2O.js} +7 -7
  76. package/dist/safe-bash/command-chunks/{chunk-SICTBSLW.js → chunk-5QR4LTAK.js} +7 -7
  77. package/dist/safe-bash/command-chunks/{chunk-ARE267HR.js → chunk-5XIJYTQU.js} +7 -7
  78. package/dist/safe-bash/command-chunks/chunk-63WEASJ7.js +137 -0
  79. package/dist/safe-bash/command-chunks/{chunk-3K5CVXUV.js → chunk-64L57DEI.js} +19 -19
  80. package/dist/safe-bash/command-chunks/{chunk-2ALHVXEM.js → chunk-6EK76ERE.js} +2 -2
  81. package/dist/safe-bash/command-chunks/{chunk-4772DJKS.js → chunk-6GCK2KSL.js} +61 -26
  82. package/dist/safe-bash/command-chunks/{chunk-T5OQ53XS.js → chunk-6IID5HTY.js} +1 -1
  83. package/dist/safe-bash/command-chunks/{chunk-ABL2DPJI.js → chunk-6PDXNY3T.js} +13 -13
  84. package/dist/safe-bash/command-chunks/{chunk-X42MJT2J.js → chunk-6RE4MZYM.js} +4 -4
  85. package/dist/safe-bash/command-chunks/{chunk-AF2IO57Q.js → chunk-6REH56FL.js} +14 -140
  86. package/dist/safe-bash/command-chunks/{chunk-XFIDOCYH.js → chunk-6ZHNKHQQ.js} +2 -2
  87. package/dist/safe-bash/command-chunks/{chunk-6JGICYHP.js → chunk-75OUKYCM.js} +2 -2
  88. package/dist/safe-bash/command-chunks/{chunk-POGVOCOB.js → chunk-772WNCU6.js} +10 -10
  89. package/dist/safe-bash/command-chunks/{chunk-3DWFXESW.js → chunk-7GJJDM2F.js} +2 -2
  90. package/dist/safe-bash/command-chunks/{chunk-XVEI4HZL.js → chunk-7JTJQKIV.js} +1 -1
  91. package/dist/safe-bash/command-chunks/{chunk-WIW3KDBS.js → chunk-7NFICYRU.js} +2 -2
  92. package/dist/safe-bash/command-chunks/{chunk-3ZVK2OAY.js → chunk-A4GYNM2E.js} +6 -5
  93. package/dist/safe-bash/command-chunks/chunk-AC4FFCRL.js +3820 -0
  94. package/dist/safe-bash/command-chunks/{chunk-SQBWAFUI.js → chunk-ADN7BU5X.js} +58 -26
  95. package/dist/safe-bash/command-chunks/{chunk-FHQOFEQK.js → chunk-AEHEOKI2.js} +10 -10
  96. package/dist/safe-bash/command-chunks/{chunk-BZRWZ6GO.js → chunk-AH3ZEPAN.js} +12 -9
  97. package/dist/safe-bash/command-chunks/{chunk-3MUFXGA2.js → chunk-AR65HNNX.js} +3 -3
  98. package/dist/safe-bash/command-chunks/{chunk-VNNNVT4C.js → chunk-ARA57PMC.js} +5 -5
  99. package/dist/safe-bash/command-chunks/{chunk-3VGQTLO6.js → chunk-AXUHORS3.js} +4 -4
  100. package/dist/safe-bash/command-chunks/chunk-B6NAEWHC.js +53 -0
  101. package/dist/safe-bash/command-chunks/{chunk-2ZWRW6UQ.js → chunk-B74LVFAN.js} +1 -1
  102. package/dist/safe-bash/command-chunks/{chunk-E4TF5W6O.js → chunk-BBOYR6LV.js} +5 -5
  103. package/dist/safe-bash/command-chunks/{chunk-ZM7HMBAJ.js → chunk-BDGNKRY4.js} +7 -7
  104. package/dist/safe-bash/command-chunks/{chunk-KDBU5Q2N.js → chunk-BFOVQUTF.js} +8 -8
  105. package/dist/safe-bash/command-chunks/{chunk-GNT3SCF3.js → chunk-BOMCPF7N.js} +1 -1
  106. package/dist/safe-bash/command-chunks/{chunk-ZNCPIZCN.js → chunk-BSLXS4PE.js} +2 -2
  107. package/dist/safe-bash/command-chunks/{chunk-N6TG44VG.js → chunk-BTDSUATE.js} +1 -1
  108. package/dist/safe-bash/command-chunks/{chunk-VZJRFHMZ.js → chunk-BXDNFBKZ.js} +26 -2
  109. package/dist/safe-bash/command-chunks/chunk-BZLLQWRK.js +296 -0
  110. package/dist/safe-bash/command-chunks/{chunk-YXR4JE4U.js → chunk-C3FERGHU.js} +4 -4
  111. package/dist/safe-bash/command-chunks/chunk-C5SLY3RB.js +279 -0
  112. package/dist/safe-bash/command-chunks/{chunk-5O45KGW5.js → chunk-C5VUJOUQ.js} +1 -1
  113. package/dist/safe-bash/command-chunks/{chunk-T4SEQU66.js → chunk-CI6KHUFK.js} +5 -5
  114. package/dist/safe-bash/command-chunks/chunk-CJIFJ45R.js +203 -0
  115. package/dist/safe-bash/command-chunks/{chunk-OTEHQQU7.js → chunk-CKQ5SXOO.js} +8 -59
  116. package/dist/safe-bash/command-chunks/{chunk-LJ3UYESS.js → chunk-CP5EO5TT.js} +1 -1
  117. package/dist/safe-bash/command-chunks/{chunk-TY7JXEWI.js → chunk-CPCXE2TM.js} +13 -13
  118. package/dist/safe-bash/command-chunks/{chunk-VVWHFNHD.js → chunk-CXOAMPOV.js} +420 -28
  119. package/dist/safe-bash/command-chunks/{chunk-57PK2QFX.js → chunk-D3WMD32B.js} +16 -16
  120. package/dist/safe-bash/command-chunks/{chunk-LECGQSQW.js → chunk-D54L2IOZ.js} +12 -12
  121. package/dist/safe-bash/command-chunks/{chunk-FGARVKAX.js → chunk-DBYY7IDI.js} +24 -20
  122. package/dist/safe-bash/command-chunks/{chunk-LNAZ3E4Q.js → chunk-DGFMOT4O.js} +4 -4
  123. package/dist/safe-bash/command-chunks/{chunk-N5J3IZZK.js → chunk-DQVOBGI2.js} +12414 -8140
  124. package/dist/safe-bash/command-chunks/{chunk-OHEZQ4QA.js → chunk-DTLIBRCQ.js} +11 -11
  125. package/dist/safe-bash/command-chunks/{chunk-FGHSE3RZ.js → chunk-DZ4ELL34.js} +1 -1
  126. package/dist/safe-bash/command-chunks/{chunk-ICJH6A73.js → chunk-DZTT5SLG.js} +7 -7
  127. package/dist/safe-bash/command-chunks/{chunk-77NXQZGK.js → chunk-DZY7V74W.js} +3 -1
  128. package/dist/safe-bash/command-chunks/chunk-E47FFS5M.js +52 -0
  129. package/dist/safe-bash/command-chunks/{chunk-LNKZVU5V.js → chunk-E76WK7OQ.js} +1 -1
  130. package/dist/safe-bash/command-chunks/{chunk-EWC56JNI.js → chunk-EBMKGNKF.js} +9 -9
  131. package/dist/safe-bash/command-chunks/{chunk-5GDF5FAS.js → chunk-EEJ3YXVO.js} +1 -1
  132. package/dist/safe-bash/command-chunks/{chunk-GMBUOYTN.js → chunk-EG7VVDV3.js} +8 -8
  133. package/dist/safe-bash/command-chunks/{chunk-N32AP43V.js → chunk-EIZFAUUD.js} +9 -9
  134. package/dist/safe-bash/command-chunks/{chunk-FR63MJSO.js → chunk-ESIEU4E4.js} +9 -9
  135. package/dist/safe-bash/command-chunks/{chunk-QJZJWL2X.js → chunk-ET3CPTJT.js} +38 -25
  136. package/dist/safe-bash/command-chunks/{chunk-UT5X6QRU.js → chunk-ETS4BINB.js} +9 -9
  137. package/dist/safe-bash/command-chunks/{chunk-SBXS4S6Y.js → chunk-EU5SR3LS.js} +3 -3
  138. package/dist/safe-bash/command-chunks/{chunk-FTZFCMVI.js → chunk-FAVWWMFW.js} +12 -12
  139. package/dist/safe-bash/command-chunks/{chunk-YKODRSGT.js → chunk-FCGMSOF6.js} +8 -8
  140. package/dist/safe-bash/command-chunks/{chunk-S5ER73EA.js → chunk-FGK6HLSY.js} +8 -8
  141. package/dist/safe-bash/command-chunks/{chunk-WMV5224N.js → chunk-FILE5PBI.js} +3 -3
  142. package/dist/safe-bash/command-chunks/{chunk-7ADQE64C.js → chunk-FMGNXOMV.js} +1 -1
  143. package/dist/safe-bash/command-chunks/{chunk-XPQUUFQD.js → chunk-FPOM47UA.js} +2 -2
  144. package/dist/safe-bash/command-chunks/{chunk-ZZERSKAR.js → chunk-FX54I4AC.js} +5 -5
  145. package/dist/safe-bash/command-chunks/{chunk-CORUUCS2.js → chunk-GAYTDZPP.js} +5 -5
  146. package/dist/safe-bash/command-chunks/chunk-GCSKS22X.js +15 -0
  147. package/dist/safe-bash/command-chunks/{chunk-2QZUAZTH.js → chunk-GIQUIF6E.js} +1 -1
  148. package/dist/safe-bash/command-chunks/{chunk-UVZJAV2S.js → chunk-GNPPPYDF.js} +1 -78
  149. package/dist/safe-bash/command-chunks/{chunk-B6XTAKKQ.js → chunk-GNVAW6NL.js} +1 -1
  150. package/dist/safe-bash/command-chunks/chunk-GQV5RWMN.js +27 -0
  151. package/dist/safe-bash/command-chunks/{chunk-PWHIVWQT.js → chunk-GVDVRC7J.js} +15 -19
  152. package/dist/safe-bash/command-chunks/{chunk-N4HWOLGZ.js → chunk-GY2C555A.js} +2 -2
  153. package/dist/safe-bash/command-chunks/{chunk-KXM3HTAF.js → chunk-GYKQ3IOV.js} +27 -14
  154. package/dist/safe-bash/command-chunks/{chunk-VMZIAFVJ.js → chunk-HBR5PWX4.js} +8 -8
  155. package/dist/safe-bash/command-chunks/{chunk-YPG55QTP.js → chunk-HCJWEB6P.js} +1 -1
  156. package/dist/safe-bash/command-chunks/{chunk-ZOEKSH3R.js → chunk-HCPEYQKT.js} +5 -4
  157. package/dist/safe-bash/command-chunks/{chunk-U42WHQRH.js → chunk-HCZITM4C.js} +8 -8
  158. package/dist/safe-bash/command-chunks/{chunk-4SISSPIH.js → chunk-HLRLMFMS.js} +1 -1
  159. package/dist/safe-bash/command-chunks/chunk-HNEWGADJ.js +43 -0
  160. package/dist/safe-bash/command-chunks/{chunk-DZOKH5BL.js → chunk-HQFX5XKV.js} +7 -7
  161. package/dist/safe-bash/command-chunks/{chunk-QNX5LZBK.js → chunk-HSB55ED5.js} +9 -9
  162. package/dist/safe-bash/command-chunks/{chunk-G3FK5VVG.js → chunk-HTBUIRTH.js} +1 -1
  163. package/dist/safe-bash/command-chunks/{chunk-QCIAX6HZ.js → chunk-HUAQZFON.js} +1 -1
  164. package/dist/safe-bash/command-chunks/{chunk-6M3JTPKE.js → chunk-HVLF3Y4B.js} +8 -8
  165. package/dist/safe-bash/command-chunks/{chunk-AYQPJQJR.js → chunk-I6CQDCIP.js} +8 -8
  166. package/dist/safe-bash/command-chunks/chunk-I7MEH76L.js +276 -0
  167. package/dist/safe-bash/command-chunks/{chunk-E3BL7W5C.js → chunk-IAHYG67O.js} +152 -80
  168. package/dist/safe-bash/command-chunks/{chunk-TXWDR2P4.js → chunk-IBT3OWXB.js} +1 -1
  169. package/dist/safe-bash/command-chunks/{chunk-EAGIJ4VW.js → chunk-IC5XC4TO.js} +118 -118
  170. package/dist/safe-bash/command-chunks/{chunk-ERWIJYCS.js → chunk-IGZOQT2L.js} +10 -10
  171. package/dist/safe-bash/command-chunks/{chunk-CKIXC7AO.js → chunk-IPKYPADE.js} +3 -3
  172. package/dist/safe-bash/command-chunks/{chunk-FJLSYX5P.js → chunk-ITJDLFPW.js} +3 -3
  173. package/dist/safe-bash/command-chunks/{chunk-MUTARE5I.js → chunk-IYEAS7TU.js} +8 -8
  174. package/dist/safe-bash/command-chunks/{chunk-WDVPHDBH.js → chunk-J3ISXTYB.js} +5 -5
  175. package/dist/safe-bash/command-chunks/chunk-J3VS55K4.js +69097 -0
  176. package/dist/safe-bash/command-chunks/chunk-J4I7KCQQ.js +495 -0
  177. package/dist/safe-bash/command-chunks/{chunk-IWVANZWH.js → chunk-JLPBGKVC.js} +3 -3
  178. package/dist/safe-bash/command-chunks/{chunk-HQEYSSZV.js → chunk-JLS6XKAR.js} +1 -1
  179. package/dist/safe-bash/command-chunks/{chunk-IJE65P52.js → chunk-JMUB5A26.js} +27 -8
  180. package/dist/safe-bash/command-chunks/{chunk-HOJ7WDTS.js → chunk-JQPDVCBU.js} +6 -6
  181. package/dist/safe-bash/command-chunks/{chunk-LQX7RAF7.js → chunk-JSW6YH6T.js} +7 -7
  182. package/dist/safe-bash/command-chunks/{chunk-DM5WURQL.js → chunk-JY2T3KV2.js} +2 -2
  183. package/dist/safe-bash/command-chunks/{chunk-IZ3SD5S2.js → chunk-K2NV6H7E.js} +4 -4
  184. package/dist/safe-bash/command-chunks/{chunk-YJ5IA5YQ.js → chunk-K576GZED.js} +3 -3
  185. package/dist/safe-bash/command-chunks/{chunk-VZTVR3JI.js → chunk-K6J3KFQ2.js} +17 -122
  186. package/dist/safe-bash/command-chunks/{chunk-RTHYAGKI.js → chunk-KD4JUF6R.js} +4 -4
  187. package/dist/safe-bash/command-chunks/{chunk-FUYZUETI.js → chunk-KQE2D7PX.js} +8 -8
  188. package/dist/safe-bash/command-chunks/{chunk-Q65GWGQR.js → chunk-KVTZJBLM.js} +5 -5
  189. package/dist/safe-bash/command-chunks/{chunk-ONQP4FNV.js → chunk-KZICRCQ7.js} +1 -1
  190. package/dist/safe-bash/command-chunks/chunk-L365UGC7.js +250 -0
  191. package/dist/safe-bash/command-chunks/{chunk-UKAGRRLZ.js → chunk-LBBJ5S3W.js} +1 -1
  192. package/dist/safe-bash/command-chunks/{chunk-WHZ6XK7Y.js → chunk-LBILRPVR.js} +1 -1
  193. package/dist/safe-bash/command-chunks/{chunk-ENMJHB2C.js → chunk-LDR3PPM3.js} +5 -5
  194. package/dist/safe-bash/command-chunks/chunk-LJLB7TBN.js +775 -0
  195. package/dist/safe-bash/command-chunks/{chunk-A6OTPNNI.js → chunk-LPKMNCC5.js} +3 -3
  196. package/dist/safe-bash/command-chunks/{chunk-JA36YOZI.js → chunk-LUJUYUOG.js} +1 -1
  197. package/dist/safe-bash/command-chunks/{chunk-FB2WPI3M.js → chunk-LZHFVNEV.js} +17 -107
  198. package/dist/safe-bash/command-chunks/{chunk-4X2MPZXW.js → chunk-M42GCI5F.js} +2 -2
  199. package/dist/safe-bash/command-chunks/{chunk-URQSUMMJ.js → chunk-M7MQTU77.js} +6 -6
  200. package/dist/safe-bash/command-chunks/chunk-MCUDSE4H.js +77 -0
  201. package/dist/safe-bash/command-chunks/{chunk-V6JPIZUW.js → chunk-MD5ZSARP.js} +9 -9
  202. package/dist/safe-bash/command-chunks/chunk-MEST2HID.js +112 -0
  203. package/dist/safe-bash/command-chunks/{chunk-26JE5JEB.js → chunk-MLMFFBOU.js} +4 -4
  204. package/dist/safe-bash/command-chunks/{chunk-HOKPYTHQ.js → chunk-MPRUGL4W.js} +2 -2
  205. package/dist/safe-bash/command-chunks/{chunk-E22EAYJN.js → chunk-MQCLG2CT.js} +177 -34
  206. package/dist/safe-bash/command-chunks/{chunk-G3LUT475.js → chunk-N5Y7WWO6.js} +10 -10
  207. package/dist/safe-bash/command-chunks/{chunk-MZYQKH26.js → chunk-NA6YAGAH.js} +3 -3
  208. package/dist/safe-bash/command-chunks/{chunk-PPN53PX3.js → chunk-NDJPULBE.js} +4 -4
  209. package/dist/safe-bash/command-chunks/{chunk-2IMIKROX.js → chunk-NN6OWOJG.js} +6 -6
  210. package/dist/safe-bash/command-chunks/{chunk-SWIF6BBY.js → chunk-NNYOPI7K.js} +8 -8
  211. package/dist/safe-bash/command-chunks/{chunk-GAROGIVU.js → chunk-NP2QXF2X.js} +1 -1
  212. package/dist/safe-bash/command-chunks/{chunk-SNA2LVBX.js → chunk-NPVOYY2A.js} +1 -1
  213. package/dist/safe-bash/command-chunks/{chunk-T2FRXSQT.js → chunk-NR7POLKP.js} +2 -2
  214. package/dist/safe-bash/command-chunks/{chunk-A4P37F3P.js → chunk-NWA7ZJDV.js} +5 -5
  215. package/dist/safe-bash/command-chunks/{chunk-45DKGZYO.js → chunk-O3FTKLWR.js} +423 -213
  216. package/dist/safe-bash/command-chunks/{chunk-6KJDTKE4.js → chunk-O4H7HPMP.js} +35 -393
  217. package/dist/safe-bash/command-chunks/{chunk-J6FNSVHT.js → chunk-OLNV5MI6.js} +5 -5
  218. package/dist/safe-bash/command-chunks/{chunk-BBEAO5N7.js → chunk-OLXMWQJ5.js} +1 -1
  219. package/dist/safe-bash/command-chunks/{chunk-MDFNUNK5.js → chunk-OMD45J52.js} +25 -21
  220. package/dist/safe-bash/command-chunks/{chunk-AXI7VMLG.js → chunk-OOYVZAWL.js} +3 -41
  221. package/dist/safe-bash/command-chunks/{chunk-2TWXRJPB.js → chunk-OPKLIF5P.js} +17 -17
  222. package/dist/safe-bash/command-chunks/{chunk-E3DF7RTE.js → chunk-OT75C5YS.js} +2 -2
  223. package/dist/safe-bash/command-chunks/{chunk-ROQ3VNVX.js → chunk-OVCSXD7N.js} +10 -10
  224. package/dist/safe-bash/command-chunks/chunk-P3LHQOX7.js +371 -0
  225. package/dist/safe-bash/command-chunks/{chunk-OFDJJRAD.js → chunk-P3TV5GIG.js} +11 -11
  226. package/dist/safe-bash/command-chunks/{chunk-LQDANF2B.js → chunk-P5UFNPRE.js} +10 -10
  227. package/dist/safe-bash/command-chunks/{chunk-5V7WIQ2D.js → chunk-PAEAEFK3.js} +122 -12
  228. package/dist/safe-bash/command-chunks/{chunk-OWCBX5M2.js → chunk-PAY4ULWY.js} +1 -1
  229. package/dist/safe-bash/command-chunks/{chunk-TXU7MMHN.js → chunk-PH722HK2.js} +16 -16
  230. package/dist/safe-bash/command-chunks/{chunk-OU4VE5CR.js → chunk-PKH57OIC.js} +8 -6
  231. package/dist/safe-bash/command-chunks/{chunk-GTOMW4VV.js → chunk-PNOXBL2B.js} +1 -1
  232. package/dist/safe-bash/command-chunks/{chunk-L4XSOULP.js → chunk-PPNPXNM6.js} +38 -2
  233. package/dist/safe-bash/command-chunks/{chunk-DXOXUKQB.js → chunk-PVKSBXHB.js} +11 -9
  234. package/dist/safe-bash/command-chunks/{chunk-EZDWPTYB.js → chunk-PYYAX5FB.js} +23 -23
  235. package/dist/safe-bash/command-chunks/{chunk-MOUCMZZP.js → chunk-PZVFNPRC.js} +1 -1
  236. package/dist/safe-bash/command-chunks/{chunk-UPWLHHZ2.js → chunk-QCCRQU44.js} +18 -18
  237. package/dist/safe-bash/command-chunks/{chunk-IVKAFEPO.js → chunk-QEVSG6HQ.js} +9 -9
  238. package/dist/safe-bash/command-chunks/{chunk-6YF2QADH.js → chunk-QGSY4ZAU.js} +8 -8
  239. package/dist/safe-bash/command-chunks/{chunk-LZY46GYY.js → chunk-QMWBKR4C.js} +5 -5
  240. package/dist/safe-bash/command-chunks/{chunk-4YFTJS5U.js → chunk-QMXOKYMJ.js} +2 -2
  241. package/dist/safe-bash/command-chunks/{chunk-CHZE6FNT.js → chunk-QPHI7Y7Z.js} +4 -4
  242. package/dist/safe-bash/command-chunks/{chunk-N3ZH4YYH.js → chunk-QQ7ORF2D.js} +5 -5
  243. package/dist/safe-bash/command-chunks/{chunk-4ABR3KGK.js → chunk-QWQHLMDX.js} +7 -7
  244. package/dist/safe-bash/command-chunks/chunk-QX3WKBLI.js +58 -0
  245. package/dist/safe-bash/command-chunks/{chunk-V6OWCRHN.js → chunk-QZPSGPN5.js} +1 -1
  246. package/dist/safe-bash/command-chunks/chunk-R36PDP3L.js +106 -0
  247. package/dist/safe-bash/command-chunks/{chunk-N35IJXBK.js → chunk-R43WEA4C.js} +14 -14
  248. package/dist/safe-bash/command-chunks/{chunk-5YL453ZF.js → chunk-R6VXFTYL.js} +47 -47
  249. package/dist/safe-bash/command-chunks/{chunk-OVUY46QF.js → chunk-RC4TNFNF.js} +1 -1
  250. package/dist/safe-bash/command-chunks/{chunk-PU5DMQGG.js → chunk-RESJSUHH.js} +1 -1
  251. package/dist/safe-bash/command-chunks/{chunk-OCOJMKDP.js → chunk-RHXV2KG5.js} +522 -8
  252. package/dist/safe-bash/command-chunks/{chunk-7B2MHKIW.js → chunk-RKON2TGI.js} +1 -1
  253. package/dist/safe-bash/command-chunks/{chunk-OIHQXURE.js → chunk-ROE6KD4C.js} +1 -1
  254. package/dist/safe-bash/command-chunks/{chunk-ITXSHOLP.js → chunk-RQTFK7AV.js} +2 -2
  255. package/dist/safe-bash/command-chunks/{chunk-BKK4MS3V.js → chunk-RR6XG2I6.js} +1 -1
  256. package/dist/safe-bash/command-chunks/{chunk-CFMJXJS5.js → chunk-RTUDDAAY.js} +9 -4
  257. package/dist/safe-bash/command-chunks/{chunk-FAU2KL6I.js → chunk-S5MBHFLB.js} +2 -2
  258. package/dist/safe-bash/command-chunks/{chunk-R7LF4XQV.js → chunk-S6223MIG.js} +2 -2
  259. package/dist/safe-bash/command-chunks/{chunk-6W4RMBFH.js → chunk-SKDJCMGI.js} +12 -10
  260. package/dist/safe-bash/command-chunks/{chunk-NCNHJRIY.js → chunk-SKF6PGA5.js} +12 -12
  261. package/dist/safe-bash/command-chunks/{chunk-3PM46VWH.js → chunk-SLD5A7IL.js} +11 -11
  262. package/dist/safe-bash/command-chunks/{chunk-KYIGYYEY.js → chunk-SMCRKN3O.js} +5 -5
  263. package/dist/safe-bash/command-chunks/{chunk-H56BSMFQ.js → chunk-T2LZWXWF.js} +8 -8
  264. package/dist/safe-bash/command-chunks/{chunk-KDDXLHN7.js → chunk-TMJG745A.js} +6 -6
  265. package/dist/safe-bash/command-chunks/{chunk-QMBMZSJF.js → chunk-TP5MZHCB.js} +6 -6
  266. package/dist/safe-bash/command-chunks/{chunk-ET6LMDEX.js → chunk-TPSRY72Q.js} +9 -9
  267. package/dist/safe-bash/command-chunks/{chunk-ZAYTFXUX.js → chunk-TTPT3OME.js} +7 -7
  268. package/dist/safe-bash/command-chunks/{chunk-GR4ONCQ5.js → chunk-U6VSRO6E.js} +9 -9
  269. package/dist/safe-bash/command-chunks/{chunk-5VF2EA7Z.js → chunk-U7J3R7HX.js} +6 -1
  270. package/dist/safe-bash/command-chunks/{chunk-A5SPMSKD.js → chunk-UDRJKA3P.js} +11 -11
  271. package/dist/safe-bash/command-chunks/{chunk-3B444A5G.js → chunk-UI5AS3FS.js} +10 -2
  272. package/dist/safe-bash/command-chunks/{chunk-RVWIEXR7.js → chunk-UMOQHHSV.js} +9 -9
  273. package/dist/safe-bash/command-chunks/{chunk-WH624PKJ.js → chunk-UNI6QG45.js} +5 -5
  274. package/dist/safe-bash/command-chunks/{chunk-BOVDUJ3A.js → chunk-UTSN7AKE.js} +9 -9
  275. package/dist/safe-bash/command-chunks/{chunk-F5QYUK2E.js → chunk-UWIDPTOB.js} +2 -2
  276. package/dist/safe-bash/command-chunks/{chunk-345YBIHP.js → chunk-V2J6AC6S.js} +19 -19
  277. package/dist/safe-bash/command-chunks/{chunk-ZZ27QNBY.js → chunk-V2PJO6JL.js} +29 -60
  278. package/dist/safe-bash/command-chunks/{chunk-QNETPOMH.js → chunk-VAMBWXDV.js} +72 -21
  279. package/dist/safe-bash/command-chunks/{chunk-KM2SMMXZ.js → chunk-VJQ5OWS5.js} +80 -2
  280. package/dist/safe-bash/command-chunks/{chunk-OCV5ZU35.js → chunk-VSTAHYCV.js} +3 -3
  281. package/dist/safe-bash/command-chunks/{chunk-MI2WY75O.js → chunk-VWBNUCUP.js} +28 -11
  282. package/dist/safe-bash/command-chunks/{chunk-SL4LD25A.js → chunk-W4BC2YGQ.js} +15 -15
  283. package/dist/safe-bash/command-chunks/{chunk-Y3ZRIZL7.js → chunk-W5LH7D23.js} +26 -13
  284. package/dist/safe-bash/command-chunks/{chunk-62RG3GHF.js → chunk-W6L4Z2VX.js} +10 -10
  285. package/dist/safe-bash/command-chunks/{chunk-RRAQII52.js → chunk-WEXEZRMH.js} +7 -7
  286. package/dist/safe-bash/command-chunks/chunk-WIUEM7HP.js +58 -0
  287. package/dist/safe-bash/command-chunks/{chunk-AQ3XOOPQ.js → chunk-WKS2PAZL.js} +2 -2
  288. package/dist/safe-bash/command-chunks/chunk-WOECEZAC.js +921 -0
  289. package/dist/safe-bash/command-chunks/{chunk-A2L3U7DW.js → chunk-WOO3YO2X.js} +7 -7
  290. package/dist/safe-bash/command-chunks/{chunk-7YDJ7LDO.js → chunk-WOT2YXBT.js} +8 -223
  291. package/dist/safe-bash/command-chunks/{chunk-LT2YCGC5.js → chunk-WV3C6BRD.js} +14 -14
  292. package/dist/safe-bash/command-chunks/{chunk-PRO7JOIH.js → chunk-X3EDCCXU.js} +10 -10
  293. package/dist/safe-bash/command-chunks/{chunk-WMBELKPP.js → chunk-XE75H5ZZ.js} +15 -15
  294. package/dist/safe-bash/command-chunks/{chunk-SHLT5R64.js → chunk-XMNPE6RN.js} +11 -11
  295. package/dist/safe-bash/command-chunks/{chunk-ISFGPCED.js → chunk-XNVL6AOV.js} +16 -16
  296. package/dist/safe-bash/command-chunks/{chunk-OBIXFO25.js → chunk-XPUYA7YU.js} +10 -10
  297. package/dist/safe-bash/command-chunks/{chunk-5KZMR6AJ.js → chunk-XXUMECE4.js} +22 -20
  298. package/dist/safe-bash/command-chunks/{chunk-OAM2SUUI.js → chunk-YB5TNDY6.js} +1 -1
  299. package/dist/safe-bash/command-chunks/{chunk-KLAC2MIZ.js → chunk-YJMS5Q4Y.js} +12 -12
  300. package/dist/safe-bash/command-chunks/{chunk-FLSXHLJG.js → chunk-YJTP4ROI.js} +15 -15
  301. package/dist/safe-bash/command-chunks/{chunk-7ITPO2V6.js → chunk-YNFQ5AXM.js} +80 -45
  302. package/dist/safe-bash/command-chunks/{chunk-7PYDVQPB.js → chunk-YWP62BAZ.js} +2 -2
  303. package/dist/safe-bash/command-chunks/chunk-YXIJOYT6.js +416 -0
  304. package/dist/safe-bash/command-chunks/{chunk-NQL3WNFI.js → chunk-YYRVGXJH.js} +44 -5
  305. package/dist/safe-bash/command-chunks/{chunk-35DU6I2M.js → chunk-Z7UPCDTU.js} +5 -5
  306. package/dist/safe-bash/command-chunks/{chunk-O2XP6HQN.js → chunk-ZBGP6XEG.js} +1 -1
  307. package/dist/safe-bash/command-chunks/{chunk-VWRHPDCD.js → chunk-ZIDESNHW.js} +3 -3
  308. package/dist/safe-bash/command-chunks/{chunk-VVV45NLY.js → chunk-ZJUU5IAS.js} +1 -1
  309. package/dist/safe-bash/command-chunks/{chunk-3ZWFE4CK.js → chunk-ZLMCWAAU.js} +9 -9
  310. package/dist/safe-bash/command-chunks/{chunk-7OCTMVYJ.js → chunk-ZNABMTV3.js} +1 -1
  311. package/dist/safe-bash/command-chunks/{chunk-QOKFSYD5.js → chunk-ZODGWV3Y.js} +11 -11
  312. package/dist/safe-bash/command-chunks/{chunk-DIRK47GT.js → chunk-ZPBL7TYJ.js} +3 -3
  313. package/dist/safe-bash/command-chunks/{chunk-5MNQTHED.js → chunk-ZQ4NQ24M.js} +10 -10
  314. package/dist/safe-bash/command-chunks/{chunk-4IDV763L.js → chunk-ZS4J5B6Y.js} +2 -2
  315. package/dist/safe-bash/command-chunks/chunk-ZTW2E5OT.js +1016 -0
  316. package/dist/safe-bash/command-chunks/{chunk-NKK76B4V.js → chunk-ZUOID3FA.js} +14 -14
  317. package/dist/safe-bash/command-chunks/chunk-ZWGERYLT.js +192 -0
  318. package/dist/safe-bash/command-chunks/{chunk-F2NF6FHV.js → chunk-ZXIOTUXC.js} +2 -2
  319. package/dist/safe-bash/command-chunks/{chunk-LFSWLJPR.js → chunk-ZZ6EIACJ.js} +250 -41
  320. package/dist/safe-bash/command-chunks/{chunk-XMRQ6UP2.js → chunk-ZZO3GYEZ.js} +1 -11
  321. package/dist/safe-bash/command-chunks/{command-engine-2QXVRRH3.js → command-engine-B6X6WAMX.js} +381 -114
  322. package/dist/safe-bash/command-chunks/{engine-T4GP6QOK-ECFKMR5V.js → engine-UPLVIV72-IGXUDNO5.js} +1 -1
  323. package/dist/safe-bash/command-chunks/model-store-RGLCVIML.js +54 -0
  324. package/dist/safe-bash/command-chunks/paradox-BHPRIGXX-RQN37FHB.js +370 -0
  325. package/dist/safe-bash/command-chunks/prompt-tool-debug-ERJKK3XZ.js +171 -0
  326. package/dist/safe-bash/commands/alias/index.js +1 -1
  327. package/dist/safe-bash/commands/apply-patch/index.js +1 -1
  328. package/dist/safe-bash/commands/archive/create.js +1 -1
  329. package/dist/safe-bash/commands/archive/extract.js +1 -1
  330. package/dist/safe-bash/commands/archive/format.js +1 -1
  331. package/dist/safe-bash/commands/archive/index.js +1 -1
  332. package/dist/safe-bash/commands/archive/internal.js +1 -1
  333. package/dist/safe-bash/commands/archive/listing.js +1 -1
  334. package/dist/safe-bash/commands/archive/modes.js +1 -1
  335. package/dist/safe-bash/commands/archive/options.js +1 -1
  336. package/dist/safe-bash/commands/archive/stream.js +1 -1
  337. package/dist/safe-bash/commands/archive/transform.js +1 -1
  338. package/dist/safe-bash/commands/archive/unzip/safety.js +1 -1
  339. package/dist/safe-bash/commands/archive/unzip.js +1 -1
  340. package/dist/safe-bash/commands/archive/zip/aes.js +1 -1
  341. package/dist/safe-bash/commands/archive/zip/comments.js +1 -1
  342. package/dist/safe-bash/commands/archive/zip/crc.js +1 -1
  343. package/dist/safe-bash/commands/archive/zip/crypto.js +1 -1
  344. package/dist/safe-bash/commands/archive/zip/dates.js +1 -1
  345. package/dist/safe-bash/commands/archive/zip/environment.js +1 -1
  346. package/dist/safe-bash/commands/archive/zip/grow.js +1 -1
  347. package/dist/safe-bash/commands/archive/zip/help.js +1 -1
  348. package/dist/safe-bash/commands/archive/zip/line-endings.js +1 -1
  349. package/dist/safe-bash/commands/archive/zip/log.js +1 -1
  350. package/dist/safe-bash/commands/archive/zip/lzma.js +1 -1
  351. package/dist/safe-bash/commands/archive/zip/move.js +1 -1
  352. package/dist/safe-bash/commands/archive/zip/names.js +1 -1
  353. package/dist/safe-bash/commands/archive/zip/options.js +1 -1
  354. package/dist/safe-bash/commands/archive/zip/repair.js +1 -1
  355. package/dist/safe-bash/commands/archive/zip/safety.js +1 -1
  356. package/dist/safe-bash/commands/archive/zip/sfx.js +1 -1
  357. package/dist/safe-bash/commands/archive/zip/test-command.js +1 -1
  358. package/dist/safe-bash/commands/archive/zip/volumes.js +1 -1
  359. package/dist/safe-bash/commands/archive/zip/zip64.js +1 -1
  360. package/dist/safe-bash/commands/archive/zip-format.js +1 -1
  361. package/dist/safe-bash/commands/archive/zip.js +1 -1
  362. package/dist/safe-bash/commands/ast-grep/index.js +1 -1
  363. package/dist/safe-bash/commands/audio/index.browser.js +2 -8
  364. package/dist/safe-bash/commands/audio/index.js +1 -1
  365. package/dist/safe-bash/commands/awk/index.js +1 -1
  366. package/dist/safe-bash/commands/base32/index.js +1 -1
  367. package/dist/safe-bash/commands/base64/index.js +1 -1
  368. package/dist/safe-bash/commands/bc/index.browser.js +1 -1
  369. package/dist/safe-bash/commands/bc/index.js +1 -1
  370. package/dist/safe-bash/commands/bytes/checksums/sm3.js +1 -1
  371. package/dist/safe-bash/commands/bytes/compression/bounded-codec.js +1 -1
  372. package/dist/safe-bash/commands/bytes/compression/codec-loader.js +1 -1
  373. package/dist/safe-bash/commands/bytes/compression/codec.js +1 -1
  374. package/dist/safe-bash/commands/bytes/compression/errors.js +1 -1
  375. package/dist/safe-bash/commands/bytes/compression/file-operation.js +1 -1
  376. package/dist/safe-bash/commands/bytes/compression/files.js +1 -1
  377. package/dist/safe-bash/commands/bytes/compression/gunzip.js +1 -1
  378. package/dist/safe-bash/commands/bytes/compression/stream.js +1 -1
  379. package/dist/safe-bash/commands/bytes/compression/xz-list.js +1 -1
  380. package/dist/safe-bash/commands/bytes/compression/zstd-decode.js +1 -1
  381. package/dist/safe-bash/commands/bytes/encoding/base.js +1 -1
  382. package/dist/safe-bash/commands/bytes/encoding/shared.js +1 -1
  383. package/dist/safe-bash/commands/bytes/input-budget.js +1 -1
  384. package/dist/safe-bash/commands/bzip2/index.js +1 -1
  385. package/dist/safe-bash/commands/cal/index.js +1 -1
  386. package/dist/safe-bash/commands/caller/index.js +1 -1
  387. package/dist/safe-bash/commands/canonicalize-existing-parent.js +1 -1
  388. package/dist/safe-bash/commands/chmod/index.js +1 -1
  389. package/dist/safe-bash/commands/column/index.js +1 -1
  390. package/dist/safe-bash/commands/comm/index.js +1 -1
  391. package/dist/safe-bash/commands/copy-backup.js +1 -1
  392. package/dist/safe-bash/commands/copy-preserve.js +1 -1
  393. package/dist/safe-bash/commands/copy-source.js +1 -1
  394. package/dist/safe-bash/commands/cp/index.js +1 -1
  395. package/dist/safe-bash/commands/csplit/index.js +1 -1
  396. package/dist/safe-bash/commands/csvcut/index.js +1 -1
  397. package/dist/safe-bash/commands/csvgrep/index.js +1 -1
  398. package/dist/safe-bash/commands/csvkit/index.js +1 -1
  399. package/dist/safe-bash/commands/curl/index.js +1 -1
  400. package/dist/safe-bash/commands/date/index.js +1 -1
  401. package/dist/safe-bash/commands/df/index.js +1 -1
  402. package/dist/safe-bash/commands/diff/index.js +1 -1
  403. package/dist/safe-bash/commands/diff-patch/diff-format.js +1 -1
  404. package/dist/safe-bash/commands/diff-patch/diff-options.js +1 -1
  405. package/dist/safe-bash/commands/diff-patch/diff-output.js +1 -1
  406. package/dist/safe-bash/commands/diff-patch/diff.js +1 -1
  407. package/dist/safe-bash/commands/diff-patch/index.js +2 -2
  408. package/dist/safe-bash/commands/diff-patch/patch-envelope.js +1 -1
  409. package/dist/safe-bash/commands/diff-patch/patch-formats.js +1 -1
  410. package/dist/safe-bash/commands/diff-patch/patch-gnu-paths.js +1 -1
  411. package/dist/safe-bash/commands/diff-patch/patch-gnu-reject.js +1 -1
  412. package/dist/safe-bash/commands/diff-patch/patch-path.js +1 -1
  413. package/dist/safe-bash/commands/diff-patch/patch-publication.js +1 -1
  414. package/dist/safe-bash/commands/diff-patch/patch.js +1 -1
  415. package/dist/safe-bash/commands/diff-patch/shared.js +1 -1
  416. package/dist/safe-bash/commands/diff-patch/unified.js +1 -1
  417. package/dist/safe-bash/commands/diff3/index.js +1 -1
  418. package/dist/safe-bash/commands/diffpdf/index.js +1 -1
  419. package/dist/safe-bash/commands/directory-admission.js +1 -1
  420. package/dist/safe-bash/commands/docx/index.js +1 -1
  421. package/dist/safe-bash/commands/docx/io.js +1 -1
  422. package/dist/safe-bash/commands/dos2unix/index.js +1 -1
  423. package/dist/safe-bash/commands/dot/index.js +1 -1
  424. package/dist/safe-bash/commands/du/index.js +1 -1
  425. package/dist/safe-bash/commands/egrep/index.js +1 -1
  426. package/dist/safe-bash/commands/env/index.js +1 -1
  427. package/dist/safe-bash/commands/env-split.js +1 -1
  428. package/dist/safe-bash/commands/exiftool/index.js +1 -1
  429. package/dist/safe-bash/commands/expand/index.js +1 -1
  430. package/dist/safe-bash/commands/expr/index.js +1 -1
  431. package/dist/safe-bash/commands/factor/index.js +1 -1
  432. package/dist/safe-bash/commands/fd/index.js +1 -1
  433. package/dist/safe-bash/commands/ffmpeg/index.js +1 -1
  434. package/dist/safe-bash/commands/ffprobe/index.js +1 -1
  435. package/dist/safe-bash/commands/fgrep/index.js +1 -1
  436. package/dist/safe-bash/commands/file/index.js +1 -1
  437. package/dist/safe-bash/commands/filesystem-requirements.js +1 -1
  438. package/dist/safe-bash/commands/find/index.js +1 -1
  439. package/dist/safe-bash/commands/find-format.js +1 -1
  440. package/dist/safe-bash/commands/find.js +1 -1
  441. package/dist/safe-bash/commands/fmt/index.js +1 -1
  442. package/dist/safe-bash/commands/fold/index.js +1 -1
  443. package/dist/safe-bash/commands/getconf/index.js +1 -1
  444. package/dist/safe-bash/commands/getopt/index.js +1 -1
  445. package/dist/safe-bash/commands/gnu-information.js +1 -1
  446. package/dist/safe-bash/commands/gpg/index.js +1 -1
  447. package/dist/safe-bash/commands/graphviz/index.js +3 -3
  448. package/dist/safe-bash/commands/grep/index.js +1 -1
  449. package/dist/safe-bash/commands/grep-aliases/aliases.js +1 -1
  450. package/dist/safe-bash/commands/grep.js +1 -1
  451. package/dist/safe-bash/commands/gzip/index.js +1 -1
  452. package/dist/safe-bash/commands/hexdump/index.js +1 -1
  453. package/dist/safe-bash/commands/hostname/index.js +1 -1
  454. package/dist/safe-bash/commands/html-to-markdown/index.js +1 -1
  455. package/dist/safe-bash/commands/htmlq/index.js +1 -1
  456. package/dist/safe-bash/commands/iconv/index.js +1 -1
  457. package/dist/safe-bash/commands/id/index.js +1 -1
  458. package/dist/safe-bash/commands/imagemagick/index.js +1 -1
  459. package/dist/safe-bash/commands/internal.js +1 -1
  460. package/dist/safe-bash/commands/join/index.js +1 -1
  461. package/dist/safe-bash/commands/jq/index.js +1 -1
  462. package/dist/safe-bash/commands/less/index.js +1 -1
  463. package/dist/safe-bash/commands/line-endings/index.js +1 -1
  464. package/dist/safe-bash/commands/llm/collections.js +1 -1
  465. package/dist/safe-bash/commands/llm/command.js +1 -1
  466. package/dist/safe-bash/commands/llm/elevenlabs-stream.js +1 -1
  467. package/dist/safe-bash/commands/llm/elevenlabs.js +1 -1
  468. package/dist/safe-bash/commands/llm/index.browser.js +21 -1
  469. package/dist/safe-bash/commands/llm/index.js +1 -1
  470. package/dist/safe-bash/commands/llm/mime.js +1 -1
  471. package/dist/safe-bash/commands/llm/openai-http.js +1 -1
  472. package/dist/safe-bash/commands/llm/openai-sse.js +1 -1
  473. package/dist/safe-bash/commands/llm/openai.js +1 -1
  474. package/dist/safe-bash/commands/llm/providers/elevenlabs.js +1 -1
  475. package/dist/safe-bash/commands/llm/providers/index.js +1 -1
  476. package/dist/safe-bash/commands/llm/providers/openai.js +1 -1
  477. package/dist/safe-bash/commands/llm/providers/shared.js +1 -1
  478. package/dist/safe-bash/commands/llm/service.js +1 -1
  479. package/dist/safe-bash/commands/locale/index.js +1 -1
  480. package/dist/safe-bash/commands/md5sum/index.js +1 -1
  481. package/dist/safe-bash/commands/mdq/index.js +1 -1
  482. package/dist/safe-bash/commands/media/index.js +1 -1
  483. package/dist/safe-bash/commands/media/plugin.js +1 -1
  484. package/dist/safe-bash/commands/media/remote.js +1 -1
  485. package/dist/safe-bash/commands/media/settings.js +1 -1
  486. package/dist/safe-bash/commands/metadata/chmod.js +1 -1
  487. package/dist/safe-bash/commands/metadata/internal.js +1 -1
  488. package/dist/safe-bash/commands/metadata/mktemp.js +1 -1
  489. package/dist/safe-bash/commands/metadata/stat.js +1 -1
  490. package/dist/safe-bash/commands/mktemp/index.js +1 -1
  491. package/dist/safe-bash/commands/mmdc/index.js +1 -1
  492. package/dist/safe-bash/commands/more/index.js +1 -1
  493. package/dist/safe-bash/commands/neato/index.js +1 -1
  494. package/dist/safe-bash/commands/network/aggregate.js +1 -1
  495. package/dist/safe-bash/commands/network/args.js +1 -1
  496. package/dist/safe-bash/commands/network/authorizer.js +1 -1
  497. package/dist/safe-bash/commands/network/body.js +1 -1
  498. package/dist/safe-bash/commands/network/curl.js +1 -1
  499. package/dist/safe-bash/commands/network/deadline.js +1 -1
  500. package/dist/safe-bash/commands/network/decode.js +1 -1
  501. package/dist/safe-bash/commands/network/fetch-transport.js +1 -1
  502. package/dist/safe-bash/commands/network/form-content-type.js +1 -1
  503. package/dist/safe-bash/commands/network/form-headers.js +1 -1
  504. package/dist/safe-bash/commands/network/glob.js +1 -1
  505. package/dist/safe-bash/commands/network/input.js +1 -1
  506. package/dist/safe-bash/commands/network/output.js +1 -1
  507. package/dist/safe-bash/commands/network/platform-portable.js +1 -1
  508. package/dist/safe-bash/commands/network/platform.js +1 -1
  509. package/dist/safe-bash/commands/network/private-address.js +1 -1
  510. package/dist/safe-bash/commands/network/shared.js +1 -1
  511. package/dist/safe-bash/commands/network/types.js +1 -1
  512. package/dist/safe-bash/commands/network/url.js +1 -1
  513. package/dist/safe-bash/commands/network/wget.js +1 -1
  514. package/dist/safe-bash/commands/nl/index.js +1 -1
  515. package/dist/safe-bash/commands/node/browser.js +1 -1
  516. package/dist/safe-bash/commands/node/buffer.js +1 -1
  517. package/dist/safe-bash/commands/node/default-runtime.js +1 -1
  518. package/dist/safe-bash/commands/node/filesystem.js +1 -1
  519. package/dist/safe-bash/commands/node/path.js +1 -1
  520. package/dist/safe-bash/commands/node/safejs.js +1 -1
  521. package/dist/safe-bash/commands/node/source-maps.js +1 -1
  522. package/dist/safe-bash/commands/node/timers.js +1 -1
  523. package/dist/safe-bash/commands/node/types.js +1 -1
  524. package/dist/safe-bash/commands/node/worker-types.js +1 -1
  525. package/dist/safe-bash/commands/nproc/index.js +1 -1
  526. package/dist/safe-bash/commands/numfmt/index.js +1 -1
  527. package/dist/safe-bash/commands/od/index.js +1 -1
  528. package/dist/safe-bash/commands/op/index.js +23 -1
  529. package/dist/safe-bash/commands/openssl/index.js +1 -1
  530. package/dist/safe-bash/commands/pandoc/index.browser.js +1 -1
  531. package/dist/safe-bash/commands/pandoc/index.js +1 -1
  532. package/dist/safe-bash/commands/paste/index.js +1 -1
  533. package/dist/safe-bash/commands/patch/index.js +1 -1
  534. package/dist/safe-bash/commands/pathchk/index.js +1 -1
  535. package/dist/safe-bash/commands/pdfimages/index.js +1 -1
  536. package/dist/safe-bash/commands/pdfinfo/index.js +1 -1
  537. package/dist/safe-bash/commands/pdfseparate/index.js +1 -1
  538. package/dist/safe-bash/commands/pdftk/index.js +1 -1
  539. package/dist/safe-bash/commands/pdftoppm/index.js +1 -1
  540. package/dist/safe-bash/commands/pdftotext/index.js +1 -1
  541. package/dist/safe-bash/commands/pdfunite/index.js +1 -1
  542. package/dist/safe-bash/commands/playwright/index.js +1 -1
  543. package/dist/safe-bash/commands/portable-random.js +1 -1
  544. package/dist/safe-bash/commands/portable-requirements.js +1 -1
  545. package/dist/safe-bash/commands/pptx/index.js +1 -1
  546. package/dist/safe-bash/commands/pr/index.js +1 -1
  547. package/dist/safe-bash/commands/printenv/index.js +1 -1
  548. package/dist/safe-bash/commands/python/executor-pool.js +1 -1
  549. package/dist/safe-bash/commands/python/executor.browser.js +2 -1
  550. package/dist/safe-bash/commands/python/executor.js +1 -1
  551. package/dist/safe-bash/commands/python/host-capabilities.js +1 -1
  552. package/dist/safe-bash/commands/python/index.browser.js +3 -1
  553. package/dist/safe-bash/commands/python/index.js +1 -1
  554. package/dist/safe-bash/commands/python/jspi-assets.js +1 -1
  555. package/dist/safe-bash/commands/python/jspi-trampoline.js +1 -1
  556. package/dist/safe-bash/commands/python/jspi.js +1 -1
  557. package/dist/safe-bash/commands/python/llm-capability.js +1 -1
  558. package/dist/safe-bash/commands/python/llm-dependencies.js +1 -1
  559. package/dist/safe-bash/commands/python/llm-module.js +1 -1
  560. package/dist/safe-bash/commands/python/llm-provider.js +1 -1
  561. package/dist/safe-bash/commands/python/llm-reference-module.js +1 -1
  562. package/dist/safe-bash/commands/python/provisioning.js +1 -1
  563. package/dist/safe-bash/commands/python/shell-capability.js +1 -1
  564. package/dist/safe-bash/commands/python/shell-module.js +1 -1
  565. package/dist/safe-bash/commands/python/worker.js +1 -1
  566. package/dist/safe-bash/commands/qpdf/index.js +1 -1
  567. package/dist/safe-bash/commands/qrencode/index.js +1 -1
  568. package/dist/safe-bash/commands/readlink/index.js +1 -1
  569. package/dist/safe-bash/commands/readlink-missing.js +1 -1
  570. package/dist/safe-bash/commands/realpath/index.js +1 -1
  571. package/dist/safe-bash/commands/record-buffer.js +1 -1
  572. package/dist/safe-bash/commands/regex-execution/ascii.js +1 -1
  573. package/dist/safe-bash/commands/regex-execution/bounded-glob.js +1 -1
  574. package/dist/safe-bash/commands/regex-execution/bounded-provider.js +1 -1
  575. package/dist/safe-bash/commands/regex-execution/ere/errors.js +1 -1
  576. package/dist/safe-bash/commands/regex-execution/ere/limits.js +1 -1
  577. package/dist/safe-bash/commands/regex-execution/ere/matcher.js +1 -1
  578. package/dist/safe-bash/commands/regex-execution/ere/syntax.js +1 -1
  579. package/dist/safe-bash/commands/regex-execution/portable.js +1 -1
  580. package/dist/safe-bash/commands/regex-execution/protocol.js +1 -1
  581. package/dist/safe-bash/commands/regex-execution/utf8.js +1 -1
  582. package/dist/safe-bash/commands/rev/index.js +1 -1
  583. package/dist/safe-bash/commands/rg/index.js +1 -1
  584. package/dist/safe-bash/commands/rgrep/index.js +1 -1
  585. package/dist/safe-bash/commands/rsvg-convert/index.js +1 -1
  586. package/dist/safe-bash/commands/safejs/io.js +1 -1
  587. package/dist/safe-bash/commands/safejs/options.js +1 -1
  588. package/dist/safe-bash/commands/safejs/render.js +1 -1
  589. package/dist/safe-bash/commands/safejs/runtime.js +1 -1
  590. package/dist/safe-bash/commands/safejs/types.js +1 -1
  591. package/dist/safe-bash/commands/search/ergonomic-regex.js +1 -1
  592. package/dist/safe-bash/commands/search/file-types.js +1 -1
  593. package/dist/safe-bash/commands/search/glob.js +1 -1
  594. package/dist/safe-bash/commands/search/grep-files.js +1 -1
  595. package/dist/safe-bash/commands/search/grep.js +1 -1
  596. package/dist/safe-bash/commands/search/matcher.js +1 -1
  597. package/dist/safe-bash/commands/search/options.js +1 -1
  598. package/dist/safe-bash/commands/search/output.js +1 -1
  599. package/dist/safe-bash/commands/search/requirements.js +1 -1
  600. package/dist/safe-bash/commands/search/rg-command.js +1 -1
  601. package/dist/safe-bash/commands/search/shared.js +1 -1
  602. package/dist/safe-bash/commands/search/walk.js +1 -1
  603. package/dist/safe-bash/commands/sed/index.js +1 -1
  604. package/dist/safe-bash/commands/seq/index.js +1 -1
  605. package/dist/safe-bash/commands/sha1sum/index.js +1 -1
  606. package/dist/safe-bash/commands/sha256sum/index.js +1 -1
  607. package/dist/safe-bash/commands/sha512sum/index.js +1 -1
  608. package/dist/safe-bash/commands/sips/index.js +1 -1
  609. package/dist/safe-bash/commands/sleep/index.js +1 -1
  610. package/dist/safe-bash/commands/soffice/index.js +1 -1
  611. package/dist/safe-bash/commands/sort/index.js +1 -1
  612. package/dist/safe-bash/commands/sort-admission.js +1 -1
  613. package/dist/safe-bash/commands/sox/index.js +1 -1
  614. package/dist/safe-bash/commands/soxi/index.js +1 -1
  615. package/dist/safe-bash/commands/split/index.js +1 -1
  616. package/dist/safe-bash/commands/sponge/index.js +1 -1
  617. package/dist/safe-bash/commands/sqlite3/index.js +1 -1
  618. package/dist/safe-bash/commands/ssh/index.js +1 -1
  619. package/dist/safe-bash/commands/stat/index.js +1 -1
  620. package/dist/safe-bash/commands/stream-format/shared.js +1 -1
  621. package/dist/safe-bash/commands/stream-inspection/numeric-options.js +1 -1
  622. package/dist/safe-bash/commands/stream-inspection/shared.js +1 -1
  623. package/dist/safe-bash/commands/stream-inspection/strings-object.js +1 -1
  624. package/dist/safe-bash/commands/strings/index.js +1 -1
  625. package/dist/safe-bash/commands/structured/bytes.js +1 -1
  626. package/dist/safe-bash/commands/structured/capture.js +1 -1
  627. package/dist/safe-bash/commands/structured/dates.js +1 -1
  628. package/dist/safe-bash/commands/structured/delpaths.js +1 -1
  629. package/dist/safe-bash/commands/structured/formats.js +1 -1
  630. package/dist/safe-bash/commands/structured/indices.js +1 -1
  631. package/dist/safe-bash/commands/structured/input.js +1 -1
  632. package/dist/safe-bash/commands/structured/interpreter.js +1 -1
  633. package/dist/safe-bash/commands/structured/jq.js +1 -1
  634. package/dist/safe-bash/commands/structured/limits.js +1 -1
  635. package/dist/safe-bash/commands/structured/numbers.js +1 -1
  636. package/dist/safe-bash/commands/structured/parser.js +1 -1
  637. package/dist/safe-bash/commands/structured/query-core.js +1 -1
  638. package/dist/safe-bash/commands/structured/recurse.js +1 -1
  639. package/dist/safe-bash/commands/structured/regex.js +1 -1
  640. package/dist/safe-bash/commands/structured/split.js +1 -1
  641. package/dist/safe-bash/commands/structured/splits.js +1 -1
  642. package/dist/safe-bash/commands/structured/values.js +1 -1
  643. package/dist/safe-bash/commands/svgo/index.js +1 -1
  644. package/dist/safe-bash/commands/table-text/internal.js +1 -1
  645. package/dist/safe-bash/commands/tac/index.js +1 -1
  646. package/dist/safe-bash/commands/tar/index.js +1 -1
  647. package/dist/safe-bash/commands/text-programs/awk-inspection.js +1 -1
  648. package/dist/safe-bash/commands/text-programs/awk-pipes.js +1 -1
  649. package/dist/safe-bash/commands/text-programs/awk-pretty.js +1 -1
  650. package/dist/safe-bash/commands/text-programs/awk-quote.js +1 -1
  651. package/dist/safe-bash/commands/text-programs/awk-reader.js +1 -1
  652. package/dist/safe-bash/commands/text-programs/awk-retention.js +1 -1
  653. package/dist/safe-bash/commands/text-programs/awk-runtime.js +1 -1
  654. package/dist/safe-bash/commands/text-programs/awk-syntax.js +1 -1
  655. package/dist/safe-bash/commands/text-programs/awk-values.js +1 -1
  656. package/dist/safe-bash/commands/text-programs/awk.js +1 -1
  657. package/dist/safe-bash/commands/text-programs/inplace.js +1 -1
  658. package/dist/safe-bash/commands/text-programs/regex.js +1 -1
  659. package/dist/safe-bash/commands/text-programs/replacement-buffer.js +1 -1
  660. package/dist/safe-bash/commands/text-programs/sed.js +1 -1
  661. package/dist/safe-bash/commands/text-programs/shared.js +1 -1
  662. package/dist/safe-bash/commands/time-env/calendar.js +1 -1
  663. package/dist/safe-bash/commands/time-env/format.js +1 -1
  664. package/dist/safe-bash/commands/time-env/shared.js +1 -1
  665. package/dist/safe-bash/commands/timeout/index.js +1 -1
  666. package/dist/safe-bash/commands/touch/index.js +1 -1
  667. package/dist/safe-bash/commands/touch-target.js +1 -1
  668. package/dist/safe-bash/commands/touch-times.js +1 -1
  669. package/dist/safe-bash/commands/tree/index.js +1 -1
  670. package/dist/safe-bash/commands/tsort/index.js +1 -1
  671. package/dist/safe-bash/commands/unalias/index.js +1 -1
  672. package/dist/safe-bash/commands/uname/index.js +1 -1
  673. package/dist/safe-bash/commands/unexpand/index.js +1 -1
  674. package/dist/safe-bash/commands/unix2dos/index.js +1 -1
  675. package/dist/safe-bash/commands/unrtf/index.js +1 -1
  676. package/dist/safe-bash/commands/unzip/index.js +1 -1
  677. package/dist/safe-bash/commands/wdiff/index.js +1 -1
  678. package/dist/safe-bash/commands/wget/index.js +1 -1
  679. package/dist/safe-bash/commands/which/index.js +1 -1
  680. package/dist/safe-bash/commands/whoami/index.js +1 -1
  681. package/dist/safe-bash/commands/wkhtmltopdf/index.js +1 -1
  682. package/dist/safe-bash/commands/xan/index.js +1 -1
  683. package/dist/safe-bash/commands/xml/index.js +1 -1
  684. package/dist/safe-bash/commands/xmllint/index.js +1 -1
  685. package/dist/safe-bash/commands/xq/index.js +1 -1
  686. package/dist/safe-bash/commands/xxd/index.js +1 -1
  687. package/dist/safe-bash/commands/xz/index.js +1 -1
  688. package/dist/safe-bash/commands/yq/index.js +1 -1
  689. package/dist/safe-bash/commands/zip/index.js +1 -1
  690. package/dist/safe-bash/commands/zstd/index.js +1 -1
  691. package/dist/safe-bash/core.browser.js +2 -2
  692. package/dist/safe-bash/full-core.browser.js +29 -7
  693. package/dist/safe-bash/integrations/safejs/filesystem.js +1 -1
  694. package/dist/safe-bash/integrations/safejs/shell.js +1 -1
  695. package/dist/safe-bash/integrations/safejs/values.js +1 -1
  696. package/dist/safe-bash/playwright/abilities.js +1 -1
  697. package/dist/safe-bash/playwright/ability-execution.js +1 -1
  698. package/dist/safe-bash/playwright/adapter.js +1 -1
  699. package/dist/safe-bash/playwright/builtins.js +1 -1
  700. package/dist/safe-bash/playwright/canonical-locator-parser.js +1 -1
  701. package/dist/safe-bash/playwright/capability-events.js +1 -1
  702. package/dist/safe-bash/playwright/capability-result.js +1 -1
  703. package/dist/safe-bash/playwright/catalog.js +1 -1
  704. package/dist/safe-bash/playwright/checkpoint.js +1 -1
  705. package/dist/safe-bash/playwright/command-budget.js +1 -1
  706. package/dist/safe-bash/playwright/command-reference.js +1 -1
  707. package/dist/safe-bash/playwright/config-ini.js +1 -1
  708. package/dist/safe-bash/playwright/config-json.js +1 -1
  709. package/dist/safe-bash/playwright/controller.js +1 -1
  710. package/dist/safe-bash/playwright/devices.js +1 -1
  711. package/dist/safe-bash/playwright/download-capabilities.js +1 -1
  712. package/dist/safe-bash/playwright/drop-capability.js +1 -1
  713. package/dist/safe-bash/playwright/find.js +1 -1
  714. package/dist/safe-bash/playwright/frame-snapshot.js +1 -1
  715. package/dist/safe-bash/playwright/generated-locator.js +1 -1
  716. package/dist/safe-bash/playwright/help-reference.js +1 -1
  717. package/dist/safe-bash/playwright/help.js +1 -1
  718. package/dist/safe-bash/playwright/highlight.js +1 -1
  719. package/dist/safe-bash/playwright/index.js +1 -1
  720. package/dist/safe-bash/playwright/invocation.js +1 -1
  721. package/dist/safe-bash/playwright/locator-selector.js +1 -1
  722. package/dist/safe-bash/playwright/modal-capabilities.js +1 -1
  723. package/dist/safe-bash/playwright/native-evaluation.js +1 -1
  724. package/dist/safe-bash/playwright/native-json-snapshot.js +1 -1
  725. package/dist/safe-bash/playwright/native-snapshot.js +1 -1
  726. package/dist/safe-bash/playwright/native-storage-realm.js +1 -1
  727. package/dist/safe-bash/playwright/native-storage-replacement.js +1 -1
  728. package/dist/safe-bash/playwright/native-storage-sources.generated.js +1 -1
  729. package/dist/safe-bash/playwright/native-storage-targets.js +1 -1
  730. package/dist/safe-bash/playwright/network-policy.js +1 -1
  731. package/dist/safe-bash/playwright/open-options.js +1 -1
  732. package/dist/safe-bash/playwright/private-target-transport.js +1 -1
  733. package/dist/safe-bash/playwright/profile.js +1 -1
  734. package/dist/safe-bash/playwright/recording-capabilities.js +1 -1
  735. package/dist/safe-bash/playwright/recovery.js +1 -1
  736. package/dist/safe-bash/playwright/resource-limit.js +1 -1
  737. package/dist/safe-bash/playwright/response.js +1 -1
  738. package/dist/safe-bash/playwright/route-capabilities.js +1 -1
  739. package/dist/safe-bash/playwright/route-policy.js +1 -1
  740. package/dist/safe-bash/playwright/screenshot.js +1 -1
  741. package/dist/safe-bash/playwright/session-configuration.js +1 -1
  742. package/dist/safe-bash/playwright/session-runtime.js +1 -1
  743. package/dist/safe-bash/playwright/session-selection.js +1 -1
  744. package/dist/safe-bash/playwright/snapshot-reference-error.js +1 -1
  745. package/dist/safe-bash/playwright/snapshot.js +1 -1
  746. package/dist/safe-bash/playwright/standard-capabilities.js +1 -1
  747. package/dist/safe-bash/playwright/storage-capabilities.js +1 -1
  748. package/dist/safe-bash/playwright/storage-state.js +1 -1
  749. package/dist/safe-bash/playwright/target-screenshot.js +1 -1
  750. package/dist/safe-bash/playwright/targets.js +1 -1
  751. package/dist/safe-bash/playwright/tracing-capabilities.js +1 -1
  752. package/dist/safe-bash/playwright/webmcp-capabilities.js +1 -1
  753. package/dist/safe-bash/playwright/webmcp-params.js +1 -1
  754. package/dist/safe-bash/playwright/workspace-assets.js +1 -1
  755. package/dist/safe-bash/playwright/workspace.js +1 -1
  756. package/dist/safe-bash/plugins/index.browser.js +4 -4
  757. package/dist/safe-bash/registry-entry.browser.js +2 -2
  758. package/dist/safe-bash/search.browser.js +1 -1
  759. package/dist/safe-bash/shell/parser.js +2 -1
  760. package/dist/safe-bash/shell/pattern.js +1 -1
  761. package/dist/safe-bash/shell/string-operations.js +1 -1
  762. package/dist/safe-bash/shell-entry.browser.js +2 -2
  763. package/dist/safe-bash/ts-ast.js +1 -1
  764. package/dist/safe-bash-checksum-engine/index.js +1 -1
  765. package/dist/safe-bash-command-audio/index.js +2 -2
  766. package/dist/safe-bash-command-awk/awk-inspection.js +2 -2
  767. package/dist/safe-bash-command-awk/awk-runtime.js +2 -2
  768. package/dist/safe-bash-command-awk/awk-syntax.js +1 -1
  769. package/dist/safe-bash-command-awk/awk.js +6 -6
  770. package/dist/safe-bash-command-awk/index.js +6 -6
  771. package/dist/safe-bash-command-bc/index.js +13 -14
  772. package/dist/safe-bash-command-cal/index.js +25 -31
  773. package/dist/safe-bash-command-cp/index.js +3 -3
  774. package/dist/safe-bash-command-csvgrep/command.d.ts +1 -0
  775. package/dist/safe-bash-command-csvgrep/index.js +7 -0
  776. package/dist/safe-bash-command-diff/diff.js +2 -2
  777. package/dist/safe-bash-command-diff/index.js +2 -2
  778. package/dist/safe-bash-command-docx/sdk.js +1 -1
  779. package/dist/safe-bash-command-expr/bre-engine.js +1 -1
  780. package/dist/safe-bash-command-factor/command.js +2 -2
  781. package/dist/safe-bash-command-factor/index.js +2 -2
  782. package/dist/safe-bash-command-fd/index.js +4 -3
  783. package/dist/safe-bash-command-ffmpeg/index.js +13 -2
  784. package/dist/safe-bash-command-ffprobe/index.js +2 -2
  785. package/dist/safe-bash-command-ffprobe/media.js +2 -2
  786. package/dist/safe-bash-command-getconf/index.js +11 -4
  787. package/dist/safe-bash-command-git/git_rust.wasm +0 -0
  788. package/dist/safe-bash-command-git/index.js +96 -14
  789. package/dist/safe-bash-command-html-to-markdown/index.js +1 -1
  790. package/dist/safe-bash-command-html-to-markdown/stored-text.d.ts +2 -0
  791. package/dist/safe-bash-command-html-to-markdown/stored-text.js +1 -1
  792. package/dist/safe-bash-command-imagemagick/index.js +18 -4
  793. package/dist/safe-bash-command-jq/index.js +1 -1
  794. package/dist/safe-bash-command-jq/jq.js +1 -1
  795. package/dist/safe-bash-command-llm/collections.js +48 -192
  796. package/dist/safe-bash-command-llm/command.js +14 -6
  797. package/dist/safe-bash-command-llm/elevenlabs.js +2 -2
  798. package/dist/safe-bash-command-llm/fragment-loaders.d.ts +29 -0
  799. package/dist/safe-bash-command-llm/fragments.d.ts +24 -0
  800. package/dist/safe-bash-command-llm/import-json-document.d.ts +5 -2
  801. package/dist/safe-bash-command-llm/index.d.ts +7 -0
  802. package/dist/safe-bash-command-llm/index.js +47 -17
  803. package/dist/safe-bash-command-llm/input-budget.d.ts +2 -0
  804. package/dist/safe-bash-command-llm/openai-sse.d.ts +1 -1
  805. package/dist/safe-bash-command-llm/openai-sse.js +4 -1
  806. package/dist/safe-bash-command-llm/openai.js +11 -7
  807. package/dist/safe-bash-command-llm/providers/elevenlabs.js +2 -2
  808. package/dist/safe-bash-command-llm/providers/index.js +16 -10
  809. package/dist/safe-bash-command-llm/providers/openai.js +11 -7
  810. package/dist/safe-bash-command-llm/providers/shared.d.ts +2 -0
  811. package/dist/safe-bash-command-llm/providers/shared.js +1 -1
  812. package/dist/safe-bash-command-llm/retained-spool.d.ts +4 -0
  813. package/dist/safe-bash-command-llm/service.d.ts +3 -1
  814. package/dist/safe-bash-command-llm/service.js +5 -2
  815. package/dist/safe-bash-command-llm/tool-chain.d.ts +22 -0
  816. package/dist/safe-bash-command-llm/tool-execution.d.ts +55 -0
  817. package/dist/safe-bash-command-llm/tool-registry.d.ts +43 -0
  818. package/dist/safe-bash-command-llm/types.d.ts +39 -11
  819. package/dist/safe-bash-command-llm/url-fragment-source.d.ts +6 -0
  820. package/dist/safe-bash-command-llm/url-source.d.ts +3 -1
  821. package/dist/safe-bash-command-mcp/index.browser.d.ts +1 -0
  822. package/dist/safe-bash-command-mcp/index.browser.js +4 -4
  823. package/dist/safe-bash-command-mcp/index.d.ts +1 -0
  824. package/dist/safe-bash-command-mcp/index.js +28 -7
  825. package/dist/safe-bash-command-mdq/index.js +10 -3
  826. package/dist/safe-bash-command-node/commands/node/browser.js +6 -6
  827. package/dist/safe-bash-command-node/commands/node/default-runtime.js +6 -6
  828. package/dist/safe-bash-command-node/commands/node/filesystem.js +2 -2
  829. package/dist/safe-bash-command-node/commands/node/quickjs.js +1 -1
  830. package/dist/safe-bash-command-node/commands/node/safejs.js +6 -6
  831. package/dist/safe-bash-command-node/commands/node/timers.js +2 -2
  832. package/dist/safe-bash-command-pandoc/command.js +9 -9
  833. package/dist/safe-bash-command-pandoc/index.js +57 -57
  834. package/dist/safe-bash-command-pandoc/lua-filters.js +1 -1
  835. package/dist/safe-bash-command-patch/index.js +6 -6
  836. package/dist/safe-bash-command-patch/patch-formats.js +2 -2
  837. package/dist/safe-bash-command-patch/patch-publication.js +1 -1
  838. package/dist/safe-bash-command-patch/patch.js +5 -5
  839. package/dist/safe-bash-command-patch/unified.js +1 -1
  840. package/dist/safe-bash-command-pdfinfo/index.js +2 -2
  841. package/dist/safe-bash-command-pdftk/index.js +550 -137
  842. package/dist/safe-bash-command-pdftoppm/index.js +89 -124
  843. package/dist/safe-bash-command-pdftotext/index.d.ts +1 -1
  844. package/dist/safe-bash-command-pdftotext/index.js +554 -381
  845. package/dist/safe-bash-command-playwright-cli/index.js +26 -25
  846. package/dist/safe-bash-command-playwright-cli/playwright/abilities.js +7 -7
  847. package/dist/safe-bash-command-playwright-cli/playwright/adapter.js +3 -3
  848. package/dist/safe-bash-command-playwright-cli/playwright/controller.js +16 -15
  849. package/dist/safe-bash-command-playwright-cli/playwright/index.js +26 -25
  850. package/dist/safe-bash-command-playwright-cli/playwright/native-storage-replacement.js +2 -2
  851. package/dist/safe-bash-command-playwright-cli/playwright/open-options.js +2 -2
  852. package/dist/safe-bash-command-playwright-cli/playwright/profile.d.ts +1 -1
  853. package/dist/safe-bash-command-playwright-cli/playwright/profile.js +6 -5
  854. package/dist/safe-bash-command-playwright-cli/playwright/standard-capabilities.js +5 -5
  855. package/dist/safe-bash-command-playwright-cli/playwright/storage-capabilities.js +3 -3
  856. package/dist/safe-bash-command-pptx/engine.js +2 -2
  857. package/dist/safe-bash-command-python/executor.d.ts +1 -0
  858. package/dist/safe-bash-command-python/executor.js +24 -22
  859. package/dist/safe-bash-command-python/index.js +24 -22
  860. package/dist/safe-bash-command-python/jspi.js +2 -2
  861. package/dist/safe-bash-command-python/llm-capability.js +1 -1
  862. package/dist/safe-bash-command-python/llm-functions-loader.d.ts +5 -0
  863. package/dist/safe-bash-command-python/llm-packages.js +51 -2
  864. package/dist/safe-bash-command-python/llm-provider.js +1 -1
  865. package/dist/safe-bash-command-rg/glob.d.ts +6 -0
  866. package/dist/safe-bash-command-rg/glob.js +2 -2
  867. package/dist/safe-bash-command-rg/index.js +8 -8
  868. package/dist/safe-bash-command-rg/matcher.d.ts +2 -0
  869. package/dist/safe-bash-command-rg/matcher.js +2 -2
  870. package/dist/safe-bash-command-rg/options.d.ts +2 -0
  871. package/dist/safe-bash-command-rg/options.js +1 -1
  872. package/dist/safe-bash-command-rg/output.js +3 -3
  873. package/dist/safe-bash-command-rg/replacement.js +2 -2
  874. package/dist/safe-bash-command-rg/rg-command.js +8 -8
  875. package/dist/safe-bash-command-rg/shared.d.ts +0 -2
  876. package/dist/safe-bash-command-rg/shared.js +2 -4
  877. package/dist/safe-bash-command-rg/walk.js +4 -4
  878. package/dist/safe-bash-command-safejs/index.js +5 -5
  879. package/dist/safe-bash-command-safejs/runtime.js +3 -3
  880. package/dist/safe-bash-command-soffice/index.js +2 -2
  881. package/dist/safe-bash-command-sqlite3/engine.d.ts +15 -0
  882. package/dist/safe-bash-command-sqlite3/index.js +310 -15
  883. package/dist/safe-bash-command-ssconvert/index.js +13 -13
  884. package/dist/safe-bash-command-tar/create.js +2 -2
  885. package/dist/safe-bash-command-tar/extract.js +2 -2
  886. package/dist/safe-bash-command-tar/index.js +6 -6
  887. package/dist/safe-bash-command-tar/modes.js +4 -4
  888. package/dist/safe-bash-command-unzip/index.js +5 -5
  889. package/dist/safe-bash-command-unzip/unzip.js +2 -2
  890. package/dist/safe-bash-command-yq/parser.js +1 -1
  891. package/dist/safe-bash-command-yq/query.js +1 -1
  892. package/dist/safe-bash-contracts/escaping.js +2 -2
  893. package/dist/safe-bash-contracts/index.js +15 -15
  894. package/dist/safe-bash-csv-engine/index.js +5 -3
  895. package/dist/safe-bash-csv-engine/python-codepages.js +2 -1
  896. package/dist/safe-bash-csv-engine/python-file-codepages.d.ts +1 -0
  897. package/dist/safe-bash-csv-engine/python-file-codepages.js +8 -0
  898. package/dist/safe-bash-csv-engine/python-utf16.js +3 -2
  899. package/dist/safe-bash-csv-engine/text-decoder.js +5 -3
  900. package/dist/safe-bash-docx-engine/ancillary-resources.js +10 -10
  901. package/dist/safe-bash-docx-engine/batch-operations.js +68 -68
  902. package/dist/safe-bash-docx-engine/batch-result-schema.js +80 -80
  903. package/dist/safe-bash-docx-engine/batch.js +79 -79
  904. package/dist/safe-bash-docx-engine/bookmarks.js +18 -18
  905. package/dist/safe-bash-docx-engine/charts.js +11 -11
  906. package/dist/safe-bash-docx-engine/command-option-rules.js +5 -5
  907. package/dist/safe-bash-docx-engine/command-properties.js +3 -3
  908. package/dist/safe-bash-docx-engine/comments.js +27 -27
  909. package/dist/safe-bash-docx-engine/control-bindings.js +22 -22
  910. package/dist/safe-bash-docx-engine/control-repeat.js +21 -21
  911. package/dist/safe-bash-docx-engine/controls.js +19 -19
  912. package/dist/safe-bash-docx-engine/create.js +10 -10
  913. package/dist/safe-bash-docx-engine/diagrams.js +11 -11
  914. package/dist/safe-bash-docx-engine/diff.js +13 -13
  915. package/dist/safe-bash-docx-engine/document-properties.js +17 -17
  916. package/dist/safe-bash-docx-engine/equations.js +18 -18
  917. package/dist/safe-bash-docx-engine/extract.js +14 -14
  918. package/dist/safe-bash-docx-engine/fields.js +23 -23
  919. package/dist/safe-bash-docx-engine/font-inventory.js +18 -18
  920. package/dist/safe-bash-docx-engine/font-resources.js +5 -5
  921. package/dist/safe-bash-docx-engine/image-batch-operations.js +13 -13
  922. package/dist/safe-bash-docx-engine/image-insertion.js +22 -22
  923. package/dist/safe-bash-docx-engine/image-layout.js +20 -20
  924. package/dist/safe-bash-docx-engine/image-replacement.js +23 -23
  925. package/dist/safe-bash-docx-engine/images.js +20 -20
  926. package/dist/safe-bash-docx-engine/index.js +138 -138
  927. package/dist/safe-bash-docx-engine/inspection.js +21 -21
  928. package/dist/safe-bash-docx-engine/invocation.js +8 -8
  929. package/dist/safe-bash-docx-engine/io.js +8 -8
  930. package/dist/safe-bash-docx-engine/links.js +21 -21
  931. package/dist/safe-bash-docx-engine/lists.js +20 -20
  932. package/dist/safe-bash-docx-engine/locations.js +15 -15
  933. package/dist/safe-bash-docx-engine/notes.js +22 -22
  934. package/dist/safe-bash-docx-engine/objects.js +20 -20
  935. package/dist/safe-bash-docx-engine/operation-json-schema.js +3 -3
  936. package/dist/safe-bash-docx-engine/operation-schema.js +2 -2
  937. package/dist/safe-bash-docx-engine/pack.js +14 -14
  938. package/dist/safe-bash-docx-engine/package-view-batch-operations.js +21 -21
  939. package/dist/safe-bash-docx-engine/pandoc-adapter.js +29 -29
  940. package/dist/safe-bash-docx-engine/paragraph-edit.js +26 -26
  941. package/dist/safe-bash-docx-engine/part-provider.js +3 -3
  942. package/dist/safe-bash-docx-engine/property-values.js +3 -3
  943. package/dist/safe-bash-docx-engine/publication.js +8 -8
  944. package/dist/safe-bash-docx-engine/removal.js +21 -21
  945. package/dist/safe-bash-docx-engine/revision-decisions.js +23 -23
  946. package/dist/safe-bash-docx-engine/revision-edit.js +20 -20
  947. package/dist/safe-bash-docx-engine/revisions.js +18 -18
  948. package/dist/safe-bash-docx-engine/run-format.js +20 -20
  949. package/dist/safe-bash-docx-engine/sanitize.js +35 -35
  950. package/dist/safe-bash-docx-engine/sections.js +19 -19
  951. package/dist/safe-bash-docx-engine/settings.js +12 -12
  952. package/dist/safe-bash-docx-engine/shape-edit.js +22 -22
  953. package/dist/safe-bash-docx-engine/signatures.js +16 -16
  954. package/dist/safe-bash-docx-engine/stories.js +22 -22
  955. package/dist/safe-bash-docx-engine/structure-model-batch-operations.js +38 -38
  956. package/dist/safe-bash-docx-engine/style-model-batch-operations.js +26 -26
  957. package/dist/safe-bash-docx-engine/style-model-result-schema.js +44 -44
  958. package/dist/safe-bash-docx-engine/styles.js +18 -18
  959. package/dist/safe-bash-docx-engine/table-edit.js +28 -28
  960. package/dist/safe-bash-docx-engine/table-read.js +16 -16
  961. package/dist/safe-bash-docx-engine/template.js +22 -22
  962. package/dist/safe-bash-docx-engine/text-replace.js +20 -20
  963. package/dist/safe-bash-docx-engine/text-resource-read.js +16 -16
  964. package/dist/safe-bash-docx-engine/text.js +16 -16
  965. package/dist/safe-bash-docx-engine/validation.js +6 -6
  966. package/dist/safe-bash-docx-engine/xml-parts.js +23 -23
  967. package/dist/safe-bash-io-engine/commands/text-programs/shared.js +4 -4
  968. package/dist/safe-bash-line-ending-engine/command.js +4 -4
  969. package/dist/safe-bash-line-ending-engine/index.js +4 -4
  970. package/dist/safe-bash-markdown-engine/commonmark-blocks.js +1 -1
  971. package/dist/safe-bash-markdown-engine/index.js +3 -3
  972. package/dist/safe-bash-network-engine/transfer.js +12 -12
  973. package/dist/safe-bash-pptx-engine/bytes.js +1 -1
  974. package/dist/safe-bash-pptx-engine/index.js +1 -1
  975. package/dist/safe-bash-presentation-engine/accessibility.js +33 -31
  976. package/dist/safe-bash-presentation-engine/animation-editing.js +17 -16
  977. package/dist/safe-bash-presentation-engine/animations.js +17 -16
  978. package/dist/safe-bash-presentation-engine/backgrounds.js +18 -17
  979. package/dist/safe-bash-presentation-engine/bytes.js +4 -4
  980. package/dist/safe-bash-presentation-engine/chart-editing.js +36 -34
  981. package/dist/safe-bash-presentation-engine/chart-object-operations.js +26 -25
  982. package/dist/safe-bash-presentation-engine/charts.js +33 -31
  983. package/dist/safe-bash-presentation-engine/command-placeholder.js +63 -60
  984. package/dist/safe-bash-presentation-engine/comments.js +18 -17
  985. package/dist/safe-bash-presentation-engine/connector-operations.js +34 -32
  986. package/dist/safe-bash-presentation-engine/connectors.js +31 -29
  987. package/dist/safe-bash-presentation-engine/content-types.js +5 -5
  988. package/dist/safe-bash-presentation-engine/creation.js +7 -7
  989. package/dist/safe-bash-presentation-engine/diff.js +40 -37
  990. package/dist/safe-bash-presentation-engine/drawing-format.js +21 -20
  991. package/dist/safe-bash-presentation-engine/drawing-operations.js +33 -31
  992. package/dist/safe-bash-presentation-engine/drawing-schema.js +22 -21
  993. package/dist/safe-bash-presentation-engine/equations.js +18 -17
  994. package/dist/safe-bash-presentation-engine/errors.js +3 -3
  995. package/dist/safe-bash-presentation-engine/fields.js +18 -17
  996. package/dist/safe-bash-presentation-engine/font-metrics.js +4 -4
  997. package/dist/safe-bash-presentation-engine/image-extraction.js +23 -21
  998. package/dist/safe-bash-presentation-engine/image-formatting.js +35 -33
  999. package/dist/safe-bash-presentation-engine/image-insertion.js +20 -19
  1000. package/dist/safe-bash-presentation-engine/image-metadata.d.ts +7 -1
  1001. package/dist/safe-bash-presentation-engine/image-metadata.js +5 -3
  1002. package/dist/safe-bash-presentation-engine/image-replacement.js +24 -22
  1003. package/dist/safe-bash-presentation-engine/image-value.js +6 -6
  1004. package/dist/safe-bash-presentation-engine/images.d.ts +1 -0
  1005. package/dist/safe-bash-presentation-engine/images.js +24 -20
  1006. package/dist/safe-bash-presentation-engine/index.js +151 -146
  1007. package/dist/safe-bash-presentation-engine/layouts.js +17 -16
  1008. package/dist/safe-bash-presentation-engine/length.js +4 -4
  1009. package/dist/safe-bash-presentation-engine/links.js +17 -16
  1010. package/dist/safe-bash-presentation-engine/masters.js +16 -15
  1011. package/dist/safe-bash-presentation-engine/media-editing.js +30 -25
  1012. package/dist/safe-bash-presentation-engine/media-extraction.d.ts +4 -0
  1013. package/dist/safe-bash-presentation-engine/media-extraction.js +33 -19
  1014. package/dist/safe-bash-presentation-engine/media.d.ts +2 -0
  1015. package/dist/safe-bash-presentation-engine/media.js +32 -18
  1016. package/dist/safe-bash-presentation-engine/memberships.d.ts +1 -0
  1017. package/dist/safe-bash-presentation-engine/memberships.js +25 -17
  1018. package/dist/safe-bash-presentation-engine/notes.js +20 -18
  1019. package/dist/safe-bash-presentation-engine/ole-enum.js +5 -5
  1020. package/dist/safe-bash-presentation-engine/ole-insertion.js +22 -21
  1021. package/dist/safe-bash-presentation-engine/opaque-objects.d.ts +4 -0
  1022. package/dist/safe-bash-presentation-engine/opaque-objects.js +30 -12
  1023. package/dist/safe-bash-presentation-engine/package-reader.js +6 -6
  1024. package/dist/safe-bash-presentation-engine/package-tools.js +24 -20
  1025. package/dist/safe-bash-presentation-engine/package-uri.js +4 -4
  1026. package/dist/safe-bash-presentation-engine/package-writer.js +5 -5
  1027. package/dist/safe-bash-presentation-engine/presentation-model.js +62 -59
  1028. package/dist/safe-bash-presentation-engine/presentation-settings.d.ts +1 -0
  1029. package/dist/safe-bash-presentation-engine/presentation-settings.js +25 -16
  1030. package/dist/safe-bash-presentation-engine/properties.js +21 -18
  1031. package/dist/safe-bash-presentation-engine/relationships.js +5 -5
  1032. package/dist/safe-bash-presentation-engine/resource-limits.js +2 -2
  1033. package/dist/safe-bash-presentation-engine/retained-extraction-output.d.ts +8 -4
  1034. package/dist/safe-bash-presentation-engine/retained-fonts.d.ts +26 -0
  1035. package/dist/safe-bash-presentation-engine/retained-image-metadata.d.ts +13 -0
  1036. package/dist/safe-bash-presentation-engine/retained-inspection.js +16 -14
  1037. package/dist/safe-bash-presentation-engine/retained-media-extraction.d.ts +21 -0
  1038. package/dist/safe-bash-presentation-engine/retained-media.d.ts +54 -0
  1039. package/dist/safe-bash-presentation-engine/retained-memberships.d.ts +25 -0
  1040. package/dist/safe-bash-presentation-engine/retained-object-extraction.d.ts +22 -0
  1041. package/dist/safe-bash-presentation-engine/retained-objects.d.ts +25 -0
  1042. package/dist/safe-bash-presentation-engine/retained-package.js +6 -6
  1043. package/dist/safe-bash-presentation-engine/retained-presentation-settings.d.ts +25 -0
  1044. package/dist/safe-bash-presentation-engine/retained-shape-geometry.d.ts +20 -0
  1045. package/dist/safe-bash-presentation-engine/retained-text.d.ts +24 -4
  1046. package/dist/safe-bash-presentation-engine/retained-text.js +35 -31
  1047. package/dist/safe-bash-presentation-engine/retained-transitions.d.ts +18 -0
  1048. package/dist/safe-bash-presentation-engine/sanitize.js +22 -19
  1049. package/dist/safe-bash-presentation-engine/selectors.js +11 -11
  1050. package/dist/safe-bash-presentation-engine/shape-groups.js +33 -31
  1051. package/dist/safe-bash-presentation-engine/shape-operations.js +32 -30
  1052. package/dist/safe-bash-presentation-engine/shape-path-operations.js +34 -32
  1053. package/dist/safe-bash-presentation-engine/shape-paths.js +17 -16
  1054. package/dist/safe-bash-presentation-engine/shape-presets.js +4 -4
  1055. package/dist/safe-bash-presentation-engine/shape-selection.js +33 -31
  1056. package/dist/safe-bash-presentation-engine/shape-transforms.d.ts +6 -0
  1057. package/dist/safe-bash-presentation-engine/shape-transforms.js +26 -20
  1058. package/dist/safe-bash-presentation-engine/shapes.js +28 -27
  1059. package/dist/safe-bash-presentation-engine/slide-copy.js +21 -17
  1060. package/dist/safe-bash-presentation-engine/slide-import.js +19 -18
  1061. package/dist/safe-bash-presentation-engine/slide-merge-split.js +21 -20
  1062. package/dist/safe-bash-presentation-engine/slide-model.js +46 -44
  1063. package/dist/safe-bash-presentation-engine/slide-removal.js +19 -18
  1064. package/dist/safe-bash-presentation-engine/slide-transfer-budget.js +10 -10
  1065. package/dist/safe-bash-presentation-engine/slides.js +21 -19
  1066. package/dist/safe-bash-presentation-engine/table-operations.js +35 -33
  1067. package/dist/safe-bash-presentation-engine/table-spans.js +34 -32
  1068. package/dist/safe-bash-presentation-engine/tables.js +33 -31
  1069. package/dist/safe-bash-presentation-engine/tags.js +20 -18
  1070. package/dist/safe-bash-presentation-engine/template-bindings.js +36 -34
  1071. package/dist/safe-bash-presentation-engine/template-repeat.js +46 -41
  1072. package/dist/safe-bash-presentation-engine/text-fitting.js +28 -27
  1073. package/dist/safe-bash-presentation-engine/text-frames.js +28 -27
  1074. package/dist/safe-bash-presentation-engine/text-paragraphs.js +28 -27
  1075. package/dist/safe-bash-presentation-engine/text-reading.js +12 -12
  1076. package/dist/safe-bash-presentation-engine/text-replacement.js +18 -17
  1077. package/dist/safe-bash-presentation-engine/text-runs.js +21 -20
  1078. package/dist/safe-bash-presentation-engine/themes.js +17 -16
  1079. package/dist/safe-bash-presentation-engine/transitions.d.ts +1 -0
  1080. package/dist/safe-bash-presentation-engine/transitions.js +24 -16
  1081. package/dist/safe-bash-presentation-engine/validation.js +11 -10
  1082. package/dist/safe-bash-presentation-engine/xml-parts.js +21 -19
  1083. package/dist/safe-bash-presentation-engine/xml-view.js +4 -4
  1084. package/dist/safe-bash-presentation-engine/xml.js +4 -4
  1085. package/dist/safe-bash-query-engine/capture.js +5 -5
  1086. package/dist/safe-bash-query-engine/dates.js +2 -2
  1087. package/dist/safe-bash-query-engine/delpaths.js +5 -5
  1088. package/dist/safe-bash-query-engine/formats.js +3 -3
  1089. package/dist/safe-bash-query-engine/index.js +15 -15
  1090. package/dist/safe-bash-query-engine/indices.js +5 -5
  1091. package/dist/safe-bash-query-engine/input.js +2 -2
  1092. package/dist/safe-bash-query-engine/interpreter.d.ts +2 -1
  1093. package/dist/safe-bash-query-engine/interpreter.js +13 -13
  1094. package/dist/safe-bash-query-engine/limits.d.ts +1 -0
  1095. package/dist/safe-bash-query-engine/limits.js +1 -1
  1096. package/dist/safe-bash-query-engine/parser.js +2 -2
  1097. package/dist/safe-bash-query-engine/query-core.js +15 -15
  1098. package/dist/safe-bash-query-engine/recurse.js +2 -2
  1099. package/dist/safe-bash-query-engine/regex.js +6 -6
  1100. package/dist/safe-bash-query-engine/split.js +2 -2
  1101. package/dist/safe-bash-query-engine/splits.js +7 -7
  1102. package/dist/safe-bash-query-engine/values.js +4 -4
  1103. package/dist/safe-bash-regex-engine/ere/matcher.d.ts +1 -1
  1104. package/dist/safe-bash-regex-engine/ere/matcher.js +18 -10
  1105. package/dist/safe-bash-regex-engine/ere/syntax.d.ts +1 -1
  1106. package/dist/safe-bash-regex-engine/ere/syntax.js +1 -1
  1107. package/dist/safe-bash-regex-engine/ere/types.d.ts +1 -0
  1108. package/dist/safe-bash-regex-engine/execution/bounded-provider.js +5 -6
  1109. package/dist/safe-bash-search-engine/ergonomic-regex.d.ts +1 -0
  1110. package/dist/safe-bash-search-engine/ergonomic-regex.js +2 -2
  1111. package/dist/safe-bash-sqlite-engine/sqlite-read-session.d.ts +17 -0
  1112. package/dist/safe-bash-sqlite-engine/storage.d.ts +1 -0
  1113. package/dist/safe-bash-sqlite-engine/storage.js +159 -89
  1114. package/dist/safe-bash-xml-engine/document.js +3 -3
  1115. package/dist/safe-bash-xml-engine/evaluate.js +1 -1
  1116. package/dist/safe-bash-xml-engine/index.js +4 -4
  1117. package/dist/safe-bash-xml-engine/json.js +14 -7
  1118. package/dist/safe-bash-xml-engine/query.js +2 -2
  1119. package/dist/safe-bash-xml-engine/recovery.d.ts +13 -3
  1120. package/dist/safe-bash-xml-engine/stored-document.d.ts +18 -3
  1121. package/dist/safe-bash-xml-engine/stored-document.js +1 -1
  1122. package/dist/safe-bash-xml-engine/stored-evaluate.js +5 -5
  1123. package/dist/safe-bash-xml-engine/stored-map.d.ts +35 -0
  1124. package/dist/safe-bash-zip-engine/index.js +3 -3
  1125. package/dist/safe-bash-zip-engine/zip/repair.js +3 -3
  1126. package/dist/safe-bash-zip-engine/zip/sfx.js +3 -3
  1127. package/dist/safe-bash-zip-engine/zip-format.js +3 -3
  1128. package/dist/safe-playwright-cloudflare/browser-provider.generated.js +11819 -11773
  1129. package/dist/safe-playwright-cloudflare/browser-run-code-guest.generated.js +1 -1
  1130. package/dist/spreadsheet-engine/formatting/cell-text.js +1 -1
  1131. package/dist/spreadsheet-engine/{rendering/print → formatting}/general-number.js +3 -3
  1132. package/dist/spreadsheet-engine/formulas/functions/python-printf.js +16 -10
  1133. package/dist/spreadsheet-engine/solver/program.js +3 -2
  1134. package/dist/spreadsheet-engine/solver/run.js +8 -2
  1135. package/dist/spreadsheet-engine/solver/sensitivity.d.ts +4 -2
  1136. package/dist/spreadsheet-engine/solver/sensitivity.js +80 -42
  1137. package/dist/spreadsheet-format-xls/biff-properties-merge.d.ts +2 -1
  1138. package/dist/spreadsheet-format-xls/biff-properties-merge.js +35 -29
  1139. package/dist/spreadsheet-format-xls/biff-properties-write.js +16 -7
  1140. package/dist/spreadsheet-format-xls/biff-property-names.d.ts +3 -0
  1141. package/dist/spreadsheet-format-xls/biff-property-names.js +44 -1
  1142. package/dist/spreadsheet-format-xls/biff-property-observations.d.ts +33 -0
  1143. package/dist/spreadsheet-format-xls/biff-property-observations.js +160 -0
  1144. package/package.json +8 -5
  1145. package/third-party/pdf-ast/THIRD_PARTY_NOTICES.md +15 -0
  1146. package/third-party/pdf-ast/licenses/PYTHON-PSF.txt +254 -0
  1147. package/third-party/pdf-ast/licenses/V8-BSD.txt +61 -0
  1148. package/dist/safe-bash/chunks/chunk-FL6XE3W4.js +0 -35
  1149. package/dist/safe-bash/command-chunks/biff-KLS4T7FP-UO3CXFFF.js +0 -5581
  1150. package/dist/safe-bash/command-chunks/chunk-6EZWG56T.js +0 -455
  1151. package/dist/safe-bash/command-chunks/chunk-6RLWPB44.js +0 -107
  1152. package/dist/safe-bash/command-chunks/chunk-CGJ7GMHO.js +0 -297
  1153. package/dist/safe-bash/command-chunks/chunk-E64ZI2YB.js +0 -550
  1154. package/dist/safe-bash/command-chunks/chunk-IOXMGD2H.js +0 -260
  1155. package/dist/safe-bash/command-chunks/chunk-KSM5CCHT.js +0 -1850
  1156. package/dist/safe-bash/command-chunks/chunk-P4OWVKMD.js +0 -228
  1157. package/dist/safe-bash/command-chunks/chunk-UPXFSGQG.js +0 -134
  1158. package/dist/safe-bash/command-chunks/chunk-WKUV62RJ.js +0 -92
  1159. package/dist/safe-bash/command-chunks/chunk-WOL3LBXE.js +0 -144
  1160. package/dist/safe-bash/command-chunks/chunk-Z3PGWMSQ.js +0 -63
  1161. package/dist/safe-bash/command-chunks/model-store-I7YAWL5V.js +0 -54
  1162. package/dist/safe-bash/command-chunks/paradox-4FCZE53D-LQPGVMEL.js +0 -365
  1163. package/dist/safe-bash-xml-engine/stored-namespaces.d.ts +0 -21
  1164. package/dist/safe-bash/command-chunks/{chunk-WKU65Z3Q.js → chunk-3NJETNC2.js} +3 -3
  1165. package/dist/safe-bash/command-chunks/{chunk-SRXARACJ.js → chunk-3TP4SSPS.js} +3 -3
  1166. package/dist/safe-bash/command-chunks/{chunk-AV6N7DDA.js → chunk-DDYPQAXN.js} +3 -3
  1167. package/dist/safe-bash/command-chunks/{chunk-FEKECRJP.js → chunk-EBTKM7KX.js} +3 -3
  1168. package/dist/safe-bash/command-chunks/{chunk-M3OXQXCU.js → chunk-NBRXQUK7.js} +3 -3
  1169. package/dist/safe-bash/command-chunks/{chunk-WVD5WZXD.js → chunk-QWHBQBPB.js} +5 -5
  1170. package/dist/safe-bash/command-chunks/{chunk-5MFRN3CB.js → chunk-R64BI5MT.js} +4 -4
  1171. package/dist/safe-bash/command-chunks/{chunk-2ANW3FXH.js → chunk-U33GIOUY.js} +3 -3
  1172. package/dist/safe-bash/command-chunks/{chunk-OEKLEUUW.js → chunk-YZE7BKHC.js} +3 -3
  1173. package/dist/safe-bash/command-chunks/{chunk-WXW665TV.js → chunk-ZSHXZ3XG.js} +6 -6
  1174. package/dist/safe-bash/command-chunks/{chunk-RXXNLH7A.js → chunk-ZSQCROFE.js} +3 -3
  1175. package/dist/safe-bash/command-chunks/{dif-BXKPQOCO-4KB3RC6G.js → dif-BXKPQOCO-FVJYYGYB.js} +4 -4
  1176. package/dist/safe-bash/command-chunks/{pln-DFS7VLVS-OVOBS4QX.js → pln-DFS7VLVS-JATX6FS7.js} +3 -3
  1177. package/dist/safe-bash/command-chunks/{psion-YBI6JEQI-GY4S6ZLC.js → psion-YBI6JEQI-6OMC2PGC.js} +3 -3
  1178. package/dist/safe-bash/command-chunks/{sylk-25D7TL2Y-RU6ANKGT.js → sylk-25D7TL2Y-NJKBZZTF.js} +4 -4
  1179. /package/dist/spreadsheet-engine/{rendering/print → formatting}/general-number.d.ts +0 -0
@@ -11,7 +11,198 @@ import {
11
11
  } from "./chunk-NUGQQDGE.js";
12
12
  import "./chunk-65DS4IOB.js";
13
13
 
14
+ // packages/safe-bash-command-pptx/src/command-media-extraction-streaming.ts
15
+ import {
16
+ RetainedMediaSelectionError,
17
+ stageRetainedMediaSelectionError
18
+ } from "../../safe-bash-presentation-engine/media.js";
19
+ import { sha256 } from "@noble/hashes/sha2.js";
20
+ import {
21
+ openRetainedMediaExtraction,
22
+ stageRetainedExtractionOutput
23
+ } from "../../safe-bash-presentation-engine/media-extraction.js";
24
+ import { openPackageArchive } from "../../safe-bash-presentation-engine/retained-package.js";
25
+ async function prepareRetainedMediaExtraction(args, request, options2) {
26
+ const { streaming, signal } = request, context = { ...options2.context, signal, workingStorage: streaming.workingStorage };
27
+ const input = await streaming.openInput(
28
+ args.input,
29
+ Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes)
30
+ ), hash = sha256.create();
31
+ for await (const bytes of input.stream()) {
32
+ signal.throwIfAborted();
33
+ hash.update(bytes);
34
+ }
35
+ const fingerprint = Array.from(hash.digest(), (b) => b.toString(16).padStart(2, "0")).join(""), archive = await openPackageArchive(input, context);
36
+ let diagnostic;
37
+ let extraction, response, closing;
38
+ const close = () => closing ??= (async () => {
39
+ const results = await Promise.allSettled([
40
+ diagnostic?.close(),
41
+ response?.close(),
42
+ extraction?.close(),
43
+ archive.close()
44
+ ]);
45
+ for (const result of results) if (result.status === "rejected") throw result.reason;
46
+ })();
47
+ try {
48
+ extraction = await openRetainedMediaExtraction(
49
+ archive,
50
+ fingerprint,
51
+ {
52
+ ...args.scope === void 0 ? {} : { scope: args.scope },
53
+ ...args.slide === void 0 ? {} : { slide: args.slide },
54
+ ...args.shape === void 0 ? {} : { shape: args.shape },
55
+ ...args.token === void 0 ? {} : { select: args.token },
56
+ ...args.deduplicate === void 0 ? {} : { deduplicate: args.deduplicate },
57
+ maxOutputBytes: options2.maxOutputBytes,
58
+ maxOutputs: args.limits?.maxOutputs ?? context.archiveLimits.maxMembers
59
+ },
60
+ context
61
+ );
62
+ if (!request.publishOutputStreams && (!args.allowPartialOutput || !request.publishOutput))
63
+ throw Object.assign(
64
+ new Error("Media extraction requires atomic publication or explicit partial output."),
65
+ { code: "publication-unsupported" }
66
+ );
67
+ response = await stageRetainedExtractionOutput(extraction, context, {
68
+ directory: args.outputDir,
69
+ json: args.json,
70
+ maxOutputBytes: options2.maxOutputBytes,
71
+ allowPartialOutput: args.allowPartialOutput ?? false,
72
+ operation: "media.extract"
73
+ });
74
+ async function* publications(dryRun) {
75
+ for await (const member of extraction.members()) {
76
+ signal.throwIfAborted();
77
+ yield {
78
+ inputPath: args.input,
79
+ outputPath: response.path(member.name),
80
+ bytes: member.bytes(),
81
+ originalBytes: input,
82
+ inPlace: false,
83
+ force: args.force ?? false,
84
+ dryRun
85
+ };
86
+ }
87
+ }
88
+ return {
89
+ close,
90
+ async publish() {
91
+ let published = 0, code;
92
+ try {
93
+ for await (const item of publications(true)) {
94
+ if (request.preflightOutputStream) await request.preflightOutputStream(item);
95
+ else if (request.publishOutput) await request.publishOutput(item);
96
+ }
97
+ if (request.publishOutputStreams) await request.publishOutputStreams(publications(false));
98
+ else
99
+ for await (const item of publications(false)) {
100
+ await request.publishOutput(item);
101
+ published++;
102
+ }
103
+ } catch (error) {
104
+ const raw = error && typeof error === "object" && "code" in error ? error.code : void 0;
105
+ code = signal.aborted ? "cancelled" : typeof raw === "string" && ["resource-limit", "stale-input", "publication-unsupported"].includes(raw) ? raw : "io-failure";
106
+ }
107
+ await response.write(
108
+ !code || args.json ? streaming.stdout : streaming.stderr,
109
+ code ? { code, published } : void 0
110
+ );
111
+ return {
112
+ exitCode: !code ? 0 : code === "cancelled" ? 130 : code === "resource-limit" ? 4 : code === "stale-input" ? 1 : 3,
113
+ stdout: new Uint8Array(),
114
+ stderr: new Uint8Array()
115
+ };
116
+ }
117
+ };
118
+ } catch (error) {
119
+ if (error instanceof RetainedMediaSelectionError) {
120
+ try {
121
+ diagnostic = await stageRetainedMediaSelectionError(error, context, {
122
+ operation: "media.extract",
123
+ json: args.json,
124
+ maxOutputBytes: options2.maxOutputBytes
125
+ });
126
+ await archive.close();
127
+ return {
128
+ close,
129
+ async publish() {
130
+ await diagnostic.write(args.json ? streaming.stdout : streaming.stderr);
131
+ return { exitCode: 1, stdout: new Uint8Array(), stderr: new Uint8Array() };
132
+ }
133
+ };
134
+ } catch (failure) {
135
+ await close().catch(() => {
136
+ });
137
+ throw failure;
138
+ }
139
+ }
140
+ await close().catch(() => {
141
+ });
142
+ throw error;
143
+ }
144
+ }
145
+
146
+ // packages/safe-bash-command-pptx/src/command-engine.ts
147
+ import { stageRetainedMedia } from "../../safe-bash-presentation-engine/media.js";
148
+
149
+ // packages/safe-bash-command-pptx/src/command-object-extraction-streaming.ts
150
+ import { openRetainedObjectExtraction, stageRetainedExtractionOutput as stageRetainedExtractionOutput2 } from "../../safe-bash-presentation-engine/opaque-objects.js";
151
+ import { openPackageArchive as openPackageArchive2 } from "../../safe-bash-presentation-engine/retained-package.js";
152
+ import { OfficeError } from "../../safe-bash-presentation-engine/errors.js";
153
+ async function prepareRetainedObjectExtraction(args, request, options2) {
154
+ const { streaming, signal } = request, context = { ...options2.context, signal, workingStorage: streaming.workingStorage };
155
+ const input = await streaming.openInput(args.input, Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes));
156
+ const archive = await openPackageArchive2(input, context);
157
+ let extraction, response, closing;
158
+ const close = () => closing ??= (async () => {
159
+ const results = await Promise.allSettled([response?.close(), extraction?.close(), archive.close()]);
160
+ for (const result of results) if (result.status === "rejected") throw result.reason;
161
+ })();
162
+ try {
163
+ extraction = await openRetainedObjectExtraction(archive, { part: args.part }, context);
164
+ if (extraction.count > (args.limits?.maxOutputs ?? context.archiveLimits.maxMembers)) throw new OfficeError("resource-limit", "Opaque output count exceeds limit.", "validate-intent");
165
+ if (!args.dryRun && !request.publishOutputStreams && (!args.allowPartialOutput || !request.publishOutput)) throw Object.assign(new Error("Object extraction requires atomic publication or explicit partial output."), { code: "publication-unsupported" });
166
+ response = await stageRetainedExtractionOutput2(extraction, context, { directory: args.outputDir ?? "", json: args.json, maxOutputBytes: options2.maxOutputBytes, allowPartialOutput: args.allowPartialOutput ?? false, operation: "objects.extract", dryRun: args.dryRun ?? false });
167
+ async function* publications(dryRun) {
168
+ if (args.outputDir) for await (const member of extraction.members()) {
169
+ signal.throwIfAborted();
170
+ yield { inputPath: args.input, outputPath: response.path(member.name), bytes: member.bytes(), originalBytes: input, inPlace: false, force: args.force ?? false, dryRun };
171
+ }
172
+ }
173
+ return { close, async publish() {
174
+ let published = 0, code;
175
+ try {
176
+ for await (const item of publications(true)) {
177
+ if (request.preflightOutputStream) await request.preflightOutputStream(item);
178
+ else if (request.publishOutput) await request.publishOutput(item);
179
+ }
180
+ if (!args.dryRun) {
181
+ if (request.publishOutputStreams) await request.publishOutputStreams(publications(false));
182
+ else for await (const item of publications(false)) {
183
+ await request.publishOutput(item);
184
+ published++;
185
+ }
186
+ }
187
+ } catch (error) {
188
+ const raw = error && typeof error === "object" && "code" in error ? error.code : void 0;
189
+ code = signal.aborted ? "cancelled" : typeof raw === "string" && ["resource-limit", "stale-input", "publication-unsupported"].includes(raw) ? raw : "io-failure";
190
+ }
191
+ await response.write(!code || args.json ? streaming.stdout : streaming.stderr, code ? { code, published } : void 0);
192
+ return { exitCode: !code ? 0 : code === "cancelled" ? 130 : code === "resource-limit" ? 4 : code === "stale-input" ? 1 : 3, stdout: new Uint8Array(), stderr: new Uint8Array() };
193
+ } };
194
+ } catch (error) {
195
+ await close().catch(() => {
196
+ });
197
+ throw error;
198
+ }
199
+ }
200
+
14
201
  // packages/safe-bash-command-pptx/src/command-engine.ts
202
+ import { stageRetainedObjects, stageRetainedFonts } from "../../safe-bash-presentation-engine/opaque-objects.js";
203
+ import { stageRetainedTransitions } from "../../safe-bash-presentation-engine/transitions.js";
204
+ import { stageRetainedMemberships } from "../../safe-bash-presentation-engine/memberships.js";
205
+ import { stageRetainedPresentationSettings } from "../../safe-bash-presentation-engine/presentation-settings.js";
15
206
  import { stageRetainedTags } from "../../safe-bash-presentation-engine/tags.js";
16
207
  import { stageRetainedProperties } from "../../safe-bash-presentation-engine/properties.js";
17
208
  import { stageRetainedNotes } from "../../safe-bash-presentation-engine/notes.js";
@@ -19,13 +210,13 @@ import { stageRetainedNotes } from "../../safe-bash-presentation-engine/notes.js
19
210
  // packages/safe-bash-command-pptx/src/retained-pack-manifest.ts
20
211
  import { PagedStorage } from "@poe-platform/safe-fs/storage";
21
212
  import { resourceContext } from "../../safe-bash-presentation-engine/resource-limits.js";
22
- import { OfficeError as OfficeError2 } from "../../safe-bash-presentation-engine/errors.js";
213
+ import { OfficeError as OfficeError3 } from "../../safe-bash-presentation-engine/errors.js";
23
214
  import { asciiKey, partName } from "../../safe-bash-presentation-engine/package-uri.js";
24
215
 
25
216
  // packages/safe-bash-command-pptx/src/command-package-path.ts
26
- import { OfficeError } from "../../safe-bash-presentation-engine/errors.js";
217
+ import { OfficeError as OfficeError2 } from "../../safe-bash-presentation-engine/errors.js";
27
218
  function usage(message) {
28
- throw new OfficeError("invalid-value", message, "usage");
219
+ throw new OfficeError2("invalid-value", message, "usage");
29
220
  }
30
221
  function scopedPackagePath(manifest, path) {
31
222
  if (path === "-") return path;
@@ -49,22 +240,22 @@ async function openRetainedPackManifest(source3, settings, options2) {
49
240
  const context = resourceContext(settings), signal = context.signal ?? new AbortController().signal;
50
241
  const working = { ...settings.workingStorage }, cacheBytes = working.cacheBytes ?? 1024 * 1024;
51
242
  if (!working.fs || typeof working.directory !== "string" || !working.directory.startsWith("/") || !Number.isSafeInteger(cacheBytes) || cacheBytes < 16384 || cacheBytes % 16384)
52
- throw new OfficeError2("invalid-value", "Explicit manifest storage and a valid cache budget are required.", "usage");
243
+ throw new OfficeError3("invalid-value", "Explicit manifest storage and a valid cache budget are required.", "usage");
53
244
  const manifestPath = options2.manifest, outputPath = options2.output;
54
245
  const pages = new PagedStorage({ fs: working.fs, cwd: working.directory, env: {}, signal }, cacheBytes / 16384);
55
246
  const index = new PagedStorage({ fs: working.fs, cwd: working.directory, env: {}, signal }, cacheBytes / 16384);
56
247
  let closed = false, closing, count = 0, parts = 0;
57
248
  const check = () => {
58
- if (closed) throw new OfficeError2("invalid-handle", "Manifest is closed.", "admit");
59
- if (signal.aborted) throw new OfficeError2("cancelled", "Operation cancelled.", "admit");
249
+ if (closed) throw new OfficeError3("invalid-handle", "Manifest is closed.", "admit");
250
+ if (signal.aborted) throw new OfficeError3("cancelled", "Operation cancelled.", "admit");
60
251
  };
61
252
  const usage14 = () => {
62
- throw new OfficeError2("invalid-value", "Manifest requires unique canonical parts, hashes and explicit scoped files.", "usage");
253
+ throw new OfficeError3("invalid-value", "Manifest requires unique canonical parts, hashes and explicit scoped files.", "usage");
63
254
  };
64
255
  const limit = () => {
65
- throw new OfficeError2("resource-limit", "Manifest exceeds input limits.", "admit");
256
+ throw new OfficeError3("resource-limit", "Manifest exceeds input limits.", "admit");
66
257
  };
67
- const failure = (error) => error instanceof OfficeError2 ? error : new OfficeError2(signal.aborted ? "cancelled" : error && typeof error === "object" && "code" in error && error.code === "EFBIG" ? "resource-limit" : "io-failure", "Manifest input or storage failed.", "admit");
258
+ const failure = (error) => error instanceof OfficeError3 ? error : new OfficeError3(signal.aborted ? "cancelled" : error && typeof error === "object" && "code" in error && error.code === "EFBIG" ? "resource-limit" : "io-failure", "Manifest input or storage failed.", "admit");
68
259
  const close = () => {
69
260
  closed = true;
70
261
  return closing ??= (async () => {
@@ -110,10 +301,10 @@ async function openRetainedPackManifest(source3, settings, options2) {
110
301
  }
111
302
  async function member(row) {
112
303
  const fields3 = { part: await tree.property(row, "part"), sha256: await tree.property(row, "sha256") };
113
- const part = await tree.smallText(fields3.part, 65535), sha2565 = await tree.smallText(fields3.sha256, 64);
304
+ const part = await tree.smallText(fields3.part, 65535), sha2566 = await tree.smallText(fields3.sha256, 64);
114
305
  if (part === void 0) return limit();
115
- if (sha2565 === void 0) return usage14();
116
- return { part, sha256: sha2565 };
306
+ if (sha2566 === void 0) return usage14();
307
+ return { part, sha256: sha2566 };
117
308
  }
118
309
  async function pathAt(row) {
119
310
  const file = await tree.property(row, "file"), path = await tree.property(file, "vfsPath");
@@ -139,7 +330,7 @@ async function openRetainedPackManifest(source3, settings, options2) {
139
330
  if (tail) yield tail;
140
331
  return;
141
332
  }
142
- if (!(item.value instanceof Uint8Array)) throw new OfficeError2("invalid-type", "Manifest source returned invalid bytes.", "admit");
333
+ if (!(item.value instanceof Uint8Array)) throw new OfficeError3("invalid-type", "Manifest source returned invalid bytes.", "admit");
143
334
  size += item.value.length;
144
335
  if (!Number.isSafeInteger(size) || size > Math.min(context.limits.maxBytes, context.xmlLimits.maxBytes)) limit();
145
336
  for (let offset = 0; offset < item.value.length; offset += 16384) {
@@ -213,7 +404,7 @@ async function openRetainedPackManifest(source3, settings, options2) {
213
404
  try {
214
405
  check();
215
406
  const row = await names.get(asciiKey(part));
216
- if (row === void 0) throw new OfficeError2("missing-binding", "Manifest member is absent.", "admit");
407
+ if (row === void 0) throw new OfficeError3("missing-binding", "Manifest member is absent.", "admit");
217
408
  return await pathAt(row);
218
409
  } catch (error) {
219
410
  throw failure(error);
@@ -245,8 +436,8 @@ async function openRetainedPackManifest(source3, settings, options2) {
245
436
  import { stageRetainedPackage } from "../../safe-bash-presentation-engine/package-tools.js";
246
437
 
247
438
  // packages/safe-bash-command-pptx/src/command-extract-streaming.ts
248
- import { openRetainedPackageExtraction, stageRetainedExtractionOutput } from "../../safe-bash-presentation-engine/package-tools.js";
249
- import { OfficeError as OfficeError3 } from "../../safe-bash-presentation-engine/errors.js";
439
+ import { openRetainedPackageExtraction, stageRetainedExtractionOutput as stageRetainedExtractionOutput3 } from "../../safe-bash-presentation-engine/package-tools.js";
440
+ import { OfficeError as OfficeError4 } from "../../safe-bash-presentation-engine/errors.js";
250
441
  async function prepareRetainedExtraction(args, request, options2) {
251
442
  const { streaming, signal } = request, context = { ...options2.context, signal, workingStorage: streaming.workingStorage };
252
443
  const input = await streaming.openInput(args.input, Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes));
@@ -260,9 +451,9 @@ async function prepareRetainedExtraction(args, request, options2) {
260
451
  let total = 0;
261
452
  for await (const member of extraction.members()) total += member.size;
262
453
  if (extraction.count > (args.limits?.maxOutputs ?? context.archiveLimits.maxMembers) || !Number.isSafeInteger(total) || total > options2.maxOutputBytes)
263
- throw new OfficeError3("resource-limit", "Package extraction exceeds output limits.", "validate-intent");
454
+ throw new OfficeError4("resource-limit", "Package extraction exceeds output limits.", "validate-intent");
264
455
  if (!request.publishOutputStreams && (!args.allowPartialOutput || !request.publishOutput)) throw Object.assign(new Error("Extraction requires a publication capability."), { code: "publication-unsupported" });
265
- response = await stageRetainedExtractionOutput(extraction, context, { directory: args.outputDir, json: args.json, maxOutputBytes: options2.maxOutputBytes, allowPartialOutput: args.allowPartialOutput ?? false });
456
+ response = await stageRetainedExtractionOutput3(extraction, context, { directory: args.outputDir, json: args.json, maxOutputBytes: options2.maxOutputBytes, allowPartialOutput: args.allowPartialOutput ?? false });
266
457
  async function* publications(dryRun) {
267
458
  for await (const member of extraction.members()) {
268
459
  signal.throwIfAborted();
@@ -298,11 +489,11 @@ async function prepareRetainedExtraction(args, request, options2) {
298
489
  // packages/safe-bash-command-pptx/src/command-engine.ts
299
490
  import { stageRetainedText } from "../../safe-bash-presentation-engine/retained-text.js";
300
491
  import { stageRetainedInspection } from "../../safe-bash-presentation-engine/retained-inspection.js";
301
- import { openPackageArchive } from "../../safe-bash-presentation-engine/retained-package.js";
492
+ import { openPackageArchive as openPackageArchive3 } from "../../safe-bash-presentation-engine/retained-package.js";
302
493
 
303
494
  // packages/safe-bash-command-pptx/src/capabilities-discovery.ts
304
495
  import { parseContentTypes } from "../../safe-bash-presentation-engine/content-types.js";
305
- import { OfficeError as OfficeError4 } from "../../safe-bash-presentation-engine/errors.js";
496
+ import { OfficeError as OfficeError5 } from "../../safe-bash-presentation-engine/errors.js";
306
497
  import { readRelationshipGraph } from "../../safe-bash-presentation-engine/relationships.js";
307
498
  import { readPackage } from "../../safe-bash-presentation-engine/package-reader.js";
308
499
  import { parseXmlPart } from "../../safe-bash-presentation-engine/xml.js";
@@ -339,7 +530,7 @@ function declaredFeatureCapabilities(features, operations) {
339
530
  Object.entries(features).map(([name, feature]) => {
340
531
  const paths = feature.operations ?? (feature.operation ? [feature.operation] : featureOperations[name]);
341
532
  if (!paths?.length || paths.some((path) => !Object.hasOwn(operations, path))) {
342
- throw new OfficeError4(
533
+ throw new OfficeError5(
343
534
  "invalid-value",
344
535
  "Capability references an undeclared operation.",
345
536
  "usage"
@@ -389,7 +580,7 @@ async function assessCapabilities(input, context) {
389
580
  try {
390
581
  contentType = types.get(part);
391
582
  } catch (error) {
392
- if (!(error instanceof OfficeError4) || error.code !== "missing-binding") throw error;
583
+ if (!(error instanceof OfficeError5) || error.code !== "missing-binding") throw error;
393
584
  }
394
585
  }
395
586
  const type = contentType?.split(";", 1)[0].trim().toLowerCase();
@@ -404,7 +595,7 @@ async function assessCapabilities(input, context) {
404
595
  const data = reader.get(part);
405
596
  xmlBytes += data.length;
406
597
  if (xmlBytes > context.xmlLimits.maxBytes || nodes >= context.xmlLimits.maxNodes)
407
- throw new OfficeError4(
598
+ throw new OfficeError5(
408
599
  "resource-limit",
409
600
  "Capability XML inspection limit exceeded.",
410
601
  "index"
@@ -415,7 +606,7 @@ async function assessCapabilities(input, context) {
415
606
  });
416
607
  nodes += xml.nodeCount;
417
608
  if (nodes > context.xmlLimits.maxNodes)
418
- throw new OfficeError4("resource-limit", "Capability XML node limit exceeded.", "index");
609
+ throw new OfficeError5("resource-limit", "Capability XML node limit exceeded.", "index");
419
610
  const pending = [xml.root];
420
611
  let visited = 0;
421
612
  while (pending.length) {
@@ -3754,7 +3945,7 @@ var discoverySchemas = Object.fromEntries([
3754
3945
  }]));
3755
3946
 
3756
3947
  // packages/safe-bash-command-pptx/src/command-objects-add.ts
3757
- import { OfficeError as OfficeError5 } from "../../safe-bash-presentation-engine/errors.js";
3948
+ import { OfficeError as OfficeError6 } from "../../safe-bash-presentation-engine/errors.js";
3758
3949
  import { addOleObject } from "../../safe-bash-presentation-engine/ole-insertion.js";
3759
3950
  var objectsAddUsage = "Usage: pptx objects add INPUT --slide N --file PATH --icon PATH (--program-id TEXT | --program DOCX|PPTX|XLSX) [--icon-content-type TYPE]\n --left LENGTH --top LENGTH --width LENGTH --height LENGTH --icon-width LENGTH --icon-height LENGTH --name TEXT\n --output PATH|--in-place|--dry-run [--force] [--json] [--limit NAME=VALUE]\nEmbed explicit inert bytes with an explicit icon. No activation or recursive payload parsing.\n";
3760
3951
  var length = {
@@ -3862,7 +4053,7 @@ var objectsAddSchema = {
3862
4053
  }
3863
4054
  };
3864
4055
  function usage2(message) {
3865
- throw new OfficeError5("invalid-value", message, "usage");
4056
+ throw new OfficeError6("invalid-value", message, "usage");
3866
4057
  }
3867
4058
  function validateObjectsAddCommand(args, positionals, seen) {
3868
4059
  const allowed = Object.keys(objectsAddSchema.options.properties).map(
@@ -4092,7 +4283,7 @@ var packageToolsSchemas = Object.fromEntries(
4092
4283
  );
4093
4284
 
4094
4285
  // packages/safe-bash-command-pptx/src/command-engine-values.ts
4095
- import { OfficeError as OfficeError6 } from "../../safe-bash-presentation-engine/errors.js";
4286
+ import { OfficeError as OfficeError7 } from "../../safe-bash-presentation-engine/errors.js";
4096
4287
  function commandLength(value, minimum = 1) {
4097
4288
  const units = { emu: 1, in: 914400, cm: 36e4, mm: 36e3, pt: 12700 };
4098
4289
  const unit = Object.keys(units).find((candidate) => value.endsWith(candidate));
@@ -4101,7 +4292,7 @@ function commandLength(value, minimum = 1) {
4101
4292
  if (!unit || pieces.length > 2 || !pieces[0] || pieces.some(
4102
4293
  (piece) => !piece || [...piece].some((character) => character < "0" || character > "9")
4103
4294
  ))
4104
- throw new OfficeError6(
4295
+ throw new OfficeError7(
4105
4296
  "invalid-value",
4106
4297
  "Lengths require a decimal and emu, in, cm, mm or pt unit.",
4107
4298
  "usage"
@@ -4109,13 +4300,13 @@ function commandLength(value, minimum = 1) {
4109
4300
  const raw = Number(digits) * units[unit];
4110
4301
  const result = Math.sign(raw) * Math.round(Math.abs(raw));
4111
4302
  if (!Number.isFinite(raw) || Math.abs(raw) > Number.MAX_SAFE_INTEGER || !Number.isSafeInteger(result) || result < minimum)
4112
- throw new OfficeError6("invalid-value", "Length is outside the supported range.", "usage");
4303
+ throw new OfficeError7("invalid-value", "Length is outside the supported range.", "usage");
4113
4304
  return result;
4114
4305
  }
4115
4306
  function commandTimestamp(value) {
4116
4307
  const date = new Date(value);
4117
4308
  if (!Number.isFinite(date.getTime()) || !value.endsWith("Z") || date.toISOString() !== value && date.toISOString() !== value.slice(0, -1) + ".000Z")
4118
- throw new OfficeError6(
4309
+ throw new OfficeError7(
4119
4310
  "invalid-value",
4120
4311
  "Timestamp requires a valid UTC date with seconds and Z suffix.",
4121
4312
  "usage"
@@ -4149,7 +4340,7 @@ function commandJson(value) {
4149
4340
  }
4150
4341
  return JSON.parse(value);
4151
4342
  } catch {
4152
- throw new OfficeError6(
4343
+ throw new OfficeError7(
4153
4344
  "invalid-value",
4154
4345
  "Structured slides require valid JSON without duplicate keys, at most 32 levels deep.",
4155
4346
  "usage"
@@ -4158,12 +4349,12 @@ function commandJson(value) {
4158
4349
  }
4159
4350
 
4160
4351
  // packages/safe-bash-command-pptx/src/command-package-tools.ts
4161
- import { sha256 } from "@noble/hashes/sha2.js";
4162
- import { OfficeError as OfficeError7 } from "../../safe-bash-presentation-engine/errors.js";
4352
+ import { sha256 as sha2562 } from "@noble/hashes/sha2.js";
4353
+ import { OfficeError as OfficeError8 } from "../../safe-bash-presentation-engine/errors.js";
4163
4354
  import { asciiKey as asciiKey2, partName as partName2 } from "../../safe-bash-presentation-engine/package-uri.js";
4164
4355
  import { extractPackage, packPackage } from "../../safe-bash-presentation-engine/package-tools.js";
4165
4356
  function usage3(message) {
4166
- throw new OfficeError7("invalid-value", message, "usage");
4357
+ throw new OfficeError8("invalid-value", message, "usage");
4167
4358
  }
4168
4359
  function canonical(part) {
4169
4360
  try {
@@ -4214,7 +4405,7 @@ async function executePackageCommand(args, request, options2) {
4214
4405
  );
4215
4406
  const files = await extractPackage(bytes2, context, args.parts ? { parts: args.parts } : {});
4216
4407
  if (files.length > (args.limits?.maxOutputs ?? context.archiveLimits.maxMembers) || files.reduce((sum, file) => sum + file.bytes.length, 0) > options2.maxOutputBytes)
4217
- throw new OfficeError7(
4408
+ throw new OfficeError8(
4218
4409
  "resource-limit",
4219
4410
  "Package extraction exceeds output limits.",
4220
4411
  "validate-intent"
@@ -4246,7 +4437,7 @@ async function executePackageCommand(args, request, options2) {
4246
4437
  };
4247
4438
  }
4248
4439
  if (args.creation?.author !== void 0 || args.creation?.timestamp !== void 0)
4249
- throw new OfficeError7(
4440
+ throw new OfficeError8(
4250
4441
  "unsupported-edit",
4251
4442
  "Pack metadata overrides are unavailable; source properties are preserved.",
4252
4443
  "validate-intent"
@@ -4256,7 +4447,7 @@ async function executePackageCommand(args, request, options2) {
4256
4447
  Math.min(context.limits.maxBytes, context.xmlLimits.maxBytes)
4257
4448
  );
4258
4449
  if (encoded.length > Math.min(context.limits.maxBytes, context.xmlLimits.maxBytes))
4259
- throw new OfficeError7("resource-limit", "Manifest exceeds byte limit.", "admit");
4450
+ throw new OfficeError8("resource-limit", "Manifest exceeds byte limit.", "admit");
4260
4451
  let value;
4261
4452
  try {
4262
4453
  value = commandJson(new TextDecoder("utf-8", { fatal: true }).decode(encoded));
@@ -4266,7 +4457,7 @@ async function executePackageCommand(args, request, options2) {
4266
4457
  if (!value || typeof value !== "object" || Array.isArray(value) || Object.keys(value).some((key) => key !== "parts") || !("parts" in value) || !Array.isArray(value.parts) || !value.parts.length)
4267
4458
  usage3("Manifest requires a nonempty parts array.");
4268
4459
  if (value.parts.length > context.archiveLimits.maxMembers)
4269
- throw new OfficeError7("resource-limit", "Manifest exceeds member limit.", "admit");
4460
+ throw new OfficeError8("resource-limit", "Manifest exceeds member limit.", "admit");
4270
4461
  const parts = value.parts;
4271
4462
  for (const item of parts)
4272
4463
  if (!item || typeof item !== "object" || Object.keys(item).some((key) => !["part", "sha256", "file"].includes(key)) || !canonical(item.part) || typeof item.sha256 !== "string" || item.sha256.length !== 64 || [...item.sha256].some((c) => !"0123456789abcdef".includes(c)) || !item.file || typeof item.file !== "object" || Object.keys(item.file).length !== 1 || typeof item.file.vfsPath !== "string" || !item.file.vfsPath.length)
@@ -4288,7 +4479,7 @@ async function executePackageCommand(args, request, options2) {
4288
4479
  );
4289
4480
  total += bytes2.length;
4290
4481
  if (bytes2.length > context.archiveLimits.maxEntryBytes || total > context.archiveLimits.maxTotalBytes)
4291
- throw new OfficeError7("resource-limit", "Manifest contents exceed byte limit.", "admit");
4482
+ throw new OfficeError8("resource-limit", "Manifest contents exceed byte limit.", "admit");
4292
4483
  members.push({ part: item.part, sha256: item.sha256, bytes: bytes2 });
4293
4484
  }
4294
4485
  const bytes = await packPackage(
@@ -4297,9 +4488,9 @@ async function executePackageCommand(args, request, options2) {
4297
4488
  args.creation?.kind ? { kind: args.creation.kind } : {}
4298
4489
  );
4299
4490
  if (bytes.length > options2.maxOutputBytes)
4300
- throw new OfficeError7("resource-limit", "Packed output exceeds byte limit.", "validate-intent");
4491
+ throw new OfficeError8("resource-limit", "Packed output exceeds byte limit.", "validate-intent");
4301
4492
  const dryRun = args.dryRun ?? false;
4302
- const fingerprint = [...sha256(bytes)].map((byte) => byte.toString(16).padStart(2, "0")).join("");
4493
+ const fingerprint = [...sha2562(bytes)].map((byte) => byte.toString(16).padStart(2, "0")).join("");
4303
4494
  if (args.output && args.output !== "-" && !request.publishOutput)
4304
4495
  throw Object.assign(new Error("Output publication unavailable."), {
4305
4496
  code: "publication-unsupported"
@@ -4333,7 +4524,7 @@ async function executePackageCommand(args, request, options2) {
4333
4524
  }
4334
4525
 
4335
4526
  // packages/safe-bash-command-pptx/src/command-diff.ts
4336
- import { OfficeError as OfficeError8 } from "../../safe-bash-presentation-engine/errors.js";
4527
+ import { OfficeError as OfficeError9 } from "../../safe-bash-presentation-engine/errors.js";
4337
4528
  import { comparePresentations, stageRetainedDiff } from "../../safe-bash-presentation-engine/diff.js";
4338
4529
 
4339
4530
  // packages/safe-bash-command-pptx/src/diff-schema.ts
@@ -4440,7 +4631,7 @@ async function executeDiffCommand(request, options2) {
4440
4631
  let exitCode = 0;
4441
4632
  let staged;
4442
4633
  const failure = (error) => {
4443
- const office = error instanceof OfficeError8 ? error : void 0;
4634
+ const office = error instanceof OfficeError9 ? error : void 0;
4444
4635
  const code = request.signal.aborted ? "cancelled" : office?.code ?? (error && typeof error === "object" && "code" in error && error.code === "resource-limit" ? "resource-limit" : "io-failure");
4445
4636
  exitCode = code === "cancelled" ? 130 : 2;
4446
4637
  const message = office?.message ?? (code === "cancelled" ? "Comparison cancelled." : "Comparison input could not be read.");
@@ -4458,7 +4649,7 @@ async function executeDiffCommand(request, options2) {
4458
4649
  };
4459
4650
  };
4460
4651
  const usage14 = (message) => {
4461
- throw new OfficeError8("invalid-value", message, "usage");
4652
+ throw new OfficeError9("invalid-value", message, "usage");
4462
4653
  };
4463
4654
  try {
4464
4655
  let byteCount = 0;
@@ -4466,7 +4657,7 @@ async function executeDiffCommand(request, options2) {
4466
4657
  if (!(bytes2 instanceof Uint8Array)) usage14("Arguments must be byte arrays.");
4467
4658
  byteCount += bytes2.byteLength;
4468
4659
  if (byteCount > options2.maxArgumentBytes)
4469
- throw new OfficeError8("resource-limit", "Argument limit exceeded.", "admit");
4660
+ throw new OfficeError9("resource-limit", "Argument limit exceeded.", "admit");
4470
4661
  try {
4471
4662
  return new TextDecoder("utf-8", { fatal: true }).decode(bytes2);
4472
4663
  } catch {
@@ -4544,7 +4735,7 @@ async function executeDiffCommand(request, options2) {
4544
4735
  }
4545
4736
  };
4546
4737
  if (mode === "effective-formatting")
4547
- throw new OfficeError8(
4738
+ throw new OfficeError9(
4548
4739
  "unsupported-profile",
4549
4740
  "Effective formatting comparison is not supported.",
4550
4741
  "usage"
@@ -4557,7 +4748,7 @@ async function executeDiffCommand(request, options2) {
4557
4748
  try {
4558
4749
  staged = await stageRetainedDiff(left, right, { mode, json, maxOutputBytes }, { ...context, workingStorage: request.streaming.workingStorage });
4559
4750
  } catch (error) {
4560
- if (error instanceof OfficeError8 && error.code === "resource-limit" && error.phase === "publish") throw new OfficeError8("resource-limit", "Comparison output limit exceeded.", "admit");
4751
+ if (error instanceof OfficeError9 && error.code === "resource-limit" && error.phase === "publish") throw new OfficeError9("resource-limit", "Comparison output limit exceeded.", "admit");
4561
4752
  throw error;
4562
4753
  }
4563
4754
  exitCode = staged.equal ? 0 : 1;
@@ -4609,7 +4800,7 @@ async function executeDiffCommand(request, options2) {
4609
4800
  let bytes = encoder.encode(json ? JSON.stringify(result) + "\n" : human);
4610
4801
  if (bytes.length > maxOutputBytes) {
4611
4802
  result = failure(
4612
- new OfficeError8("resource-limit", "Comparison output limit exceeded.", "admit")
4803
+ new OfficeError9("resource-limit", "Comparison output limit exceeded.", "admit")
4613
4804
  );
4614
4805
  bytes = encoder.encode(json ? JSON.stringify(result) + "\n" : human);
4615
4806
  }
@@ -4728,8 +4919,8 @@ var templateSchema = {
4728
4919
  };
4729
4920
 
4730
4921
  // packages/safe-bash-command-pptx/src/command-template.ts
4731
- import { sha256 as sha2562 } from "@noble/hashes/sha2.js";
4732
- import { OfficeError as OfficeError9 } from "../../safe-bash-presentation-engine/errors.js";
4922
+ import { sha256 as sha2563 } from "@noble/hashes/sha2.js";
4923
+ import { OfficeError as OfficeError10 } from "../../safe-bash-presentation-engine/errors.js";
4733
4924
  import {
4734
4925
  applyTemplateBindings,
4735
4926
  validateTemplateBindings
@@ -4743,7 +4934,7 @@ function validateTemplateData(value) {
4743
4934
  else validateTemplateRepeat(value);
4744
4935
  }
4745
4936
  function usage4(message) {
4746
- throw new OfficeError9("invalid-value", message, "usage");
4937
+ throw new OfficeError10("invalid-value", message, "usage");
4747
4938
  }
4748
4939
  function validateTemplateCommand(args, positionals, seen) {
4749
4940
  if ([...seen].some(
@@ -4807,7 +4998,7 @@ async function executeTemplateCommand(args, request, options2) {
4807
4998
  code: "publication-unsupported"
4808
4999
  });
4809
5000
  const fingerprint = Array.from(
4810
- sha2562(mutation2.bytes),
5001
+ sha2563(mutation2.bytes),
4811
5002
  (byte) => byte.toString(16).padStart(2, "0")
4812
5003
  ).join("");
4813
5004
  const repeat = Array.isArray(bindings) ? void 0 : bindings;
@@ -5095,11 +5286,11 @@ var commentSchemas = Object.fromEntries(
5095
5286
  );
5096
5287
 
5097
5288
  // packages/safe-bash-command-pptx/src/command-comments.ts
5098
- import { OfficeError as OfficeError10 } from "../../safe-bash-presentation-engine/errors.js";
5289
+ import { OfficeError as OfficeError11 } from "../../safe-bash-presentation-engine/errors.js";
5099
5290
  import { mutateComments, readComments, readCommentAuthors } from "../../safe-bash-presentation-engine/comments.js";
5100
5291
  import { SelectionError } from "../../safe-bash-presentation-engine/selectors.js";
5101
5292
  function usage5(message) {
5102
- throw new OfficeError10("invalid-value", message, "usage");
5293
+ throw new OfficeError11("invalid-value", message, "usage");
5103
5294
  }
5104
5295
  function validateCommentsCommand(args, positionals, seen) {
5105
5296
  const allowed = Object.keys(commentSchemas[args.operation].options.properties).map(
@@ -5601,7 +5792,7 @@ var accessibilitySchemas = Object.fromEntries(
5601
5792
  );
5602
5793
 
5603
5794
  // packages/safe-bash-command-pptx/src/command-accessibility.ts
5604
- import { OfficeError as OfficeError11 } from "../../safe-bash-presentation-engine/errors.js";
5795
+ import { OfficeError as OfficeError12 } from "../../safe-bash-presentation-engine/errors.js";
5605
5796
  import {
5606
5797
  readAccessibility,
5607
5798
  mutateAccessibility,
@@ -5609,7 +5800,7 @@ import {
5609
5800
  } from "../../safe-bash-presentation-engine/accessibility.js";
5610
5801
  import { SelectionError as SelectionError2 } from "../../safe-bash-presentation-engine/selectors.js";
5611
5802
  function usage6(message) {
5612
- throw new OfficeError11("invalid-value", message, "usage");
5803
+ throw new OfficeError12("invalid-value", message, "usage");
5613
5804
  }
5614
5805
  function validateAccessibilityCommand(args, positionals, seen) {
5615
5806
  const allowed = Object.keys(accessibilitySchemas[args.operation].options.properties).map(
@@ -5719,13 +5910,13 @@ async function executeAccessibilityCommand(args, request, options2) {
5719
5910
  }
5720
5911
 
5721
5912
  // packages/safe-bash-command-pptx/src/command-metadata.ts
5722
- import { OfficeError as OfficeError12 } from "../../safe-bash-presentation-engine/errors.js";
5913
+ import { OfficeError as OfficeError13 } from "../../safe-bash-presentation-engine/errors.js";
5723
5914
  import { coreDefinition, mutateProperty, readProperties } from "../../safe-bash-presentation-engine/properties.js";
5724
5915
  import { sanitize as sanitizePresentation } from "../../safe-bash-presentation-engine/sanitize.js";
5725
5916
  import { mutateTags, readTags } from "../../safe-bash-presentation-engine/tags.js";
5726
5917
  import { SelectionError as SelectionError3 } from "../../safe-bash-presentation-engine/selectors.js";
5727
5918
  function usage7(message) {
5728
- throw new OfficeError12("invalid-value", message, "usage");
5919
+ throw new OfficeError13("invalid-value", message, "usage");
5729
5920
  }
5730
5921
  function removalCategories(value) {
5731
5922
  const categories = ["notes", "comments", "properties", "links", "objects"];
@@ -5827,11 +6018,11 @@ ${sanitization.retained.map((entry) => `Retained ${entry.category} ${entry.kind}
5827
6018
  }
5828
6019
 
5829
6020
  // packages/safe-bash-command-pptx/src/command-notes.ts
5830
- import { OfficeError as OfficeError13 } from "../../safe-bash-presentation-engine/errors.js";
6021
+ import { OfficeError as OfficeError14 } from "../../safe-bash-presentation-engine/errors.js";
5831
6022
  import { mutateNotes, readNotes, validateNotesOptions } from "../../safe-bash-presentation-engine/notes.js";
5832
6023
  import { readSelectionIndex, SelectionError as SelectionError4 } from "../../safe-bash-presentation-engine/selectors.js";
5833
6024
  function usage8(message) {
5834
- throw new OfficeError13("invalid-value", message, "usage");
6025
+ throw new OfficeError14("invalid-value", message, "usage");
5835
6026
  }
5836
6027
  function validateNotesCommand(args, positionals, seen) {
5837
6028
  const allowed = Object.keys(noteSchemas[args.operation].options.properties).map(
@@ -6113,12 +6304,12 @@ var linkSchemas = Object.fromEntries(
6113
6304
  // packages/safe-bash-command-pptx/src/command-links.ts
6114
6305
  import { readPackage as readPackage2 } from "../../safe-bash-presentation-engine/package-reader.js";
6115
6306
  import { parseXmlPart as parseXmlPart2 } from "../../safe-bash-presentation-engine/xml.js";
6116
- import { OfficeError as OfficeError14 } from "../../safe-bash-presentation-engine/errors.js";
6307
+ import { OfficeError as OfficeError15 } from "../../safe-bash-presentation-engine/errors.js";
6117
6308
  import { listLinks, setLink, removeLink, isOrdinaryLinkUrl } from "../../safe-bash-presentation-engine/links.js";
6118
6309
  import { readShapes } from "../../safe-bash-presentation-engine/shape-operations.js";
6119
6310
  import { SelectionError as SelectionError5 } from "../../safe-bash-presentation-engine/selectors.js";
6120
6311
  function usage9(message) {
6121
- throw new OfficeError14("invalid-value", message, "usage");
6312
+ throw new OfficeError15("invalid-value", message, "usage");
6122
6313
  }
6123
6314
  function validateLinkCommand(args, positionals, seen) {
6124
6315
  const allowed = Object.keys(linkSchemas[args.operation].options.properties).map(
@@ -6256,7 +6447,7 @@ async function executeLinkCommand(args, request, options2) {
6256
6447
  if (args.operation === "links.add" && selectedLinks.some(
6257
6448
  (link) => link.part === selection.owner && link.shapeId === selection.id && (path ? link.path.length === path.length + 1 && path.every((position, i) => link.path[i] === position) : existingShapeLinks.has(JSON.stringify([link.part, link.shapeId])))
6258
6449
  ))
6259
- throw new OfficeError14(
6450
+ throw new OfficeError15(
6260
6451
  "unsupported-edit",
6261
6452
  "Selected trigger already contains a link.",
6262
6453
  "validate-intent"
@@ -7283,11 +7474,11 @@ import { readAnimations } from "../../safe-bash-presentation-engine/animations.j
7283
7474
  import { mutateAnimations, mutateAnimationsBatch, validateAnimationOptions as validateAnimationOptions2 } from "../../safe-bash-presentation-engine/animation-editing.js";
7284
7475
 
7285
7476
  // packages/safe-bash-command-pptx/src/animation-batch-command.ts
7286
- import { OfficeError as OfficeError15 } from "../../safe-bash-presentation-engine/errors.js";
7477
+ import { OfficeError as OfficeError16 } from "../../safe-bash-presentation-engine/errors.js";
7287
7478
  import { validateAnimationOptions } from "../../safe-bash-presentation-engine/animation-editing.js";
7288
7479
  import { decodeSelectionToken, SelectionError as SelectionError6 } from "../../safe-bash-presentation-engine/selectors.js";
7289
7480
  function invalid(message) {
7290
- throw new OfficeError15("invalid-value", message, "usage");
7481
+ throw new OfficeError16("invalid-value", message, "usage");
7291
7482
  }
7292
7483
  function record(value, keys) {
7293
7484
  if (!value || typeof value !== "object" || Array.isArray(value) || Object.keys(value).some((key) => !keys.includes(key))) invalid("Invalid animation batch fields.");
@@ -7495,11 +7686,11 @@ var equationSchemas = Object.fromEntries(["list", "get", "add"].map((action) =>
7495
7686
  }));
7496
7687
 
7497
7688
  // packages/safe-bash-command-pptx/src/command-equations.ts
7498
- import { OfficeError as OfficeError16 } from "../../safe-bash-presentation-engine/errors.js";
7689
+ import { OfficeError as OfficeError17 } from "../../safe-bash-presentation-engine/errors.js";
7499
7690
  import { readEquations, mutateEquations } from "../../safe-bash-presentation-engine/equations.js";
7500
7691
  import { SelectionError as SelectionError7 } from "../../safe-bash-presentation-engine/selectors.js";
7501
7692
  function usage10(message) {
7502
- throw new OfficeError16("invalid-value", message, "usage");
7693
+ throw new OfficeError17("invalid-value", message, "usage");
7503
7694
  }
7504
7695
  function validateEquationCommand(args, positionals, seen) {
7505
7696
  const schema = equationSchemas[args.operation];
@@ -7649,12 +7840,12 @@ var opaqueSchemas = Object.fromEntries(["objects.list", "objects.extract", "font
7649
7840
  }));
7650
7841
 
7651
7842
  // packages/safe-bash-command-pptx/src/command-opaque.ts
7652
- import { sha256 as sha2563 } from "@noble/hashes/sha2.js";
7653
- import { OfficeError as OfficeError17 } from "../../safe-bash-presentation-engine/errors.js";
7843
+ import { sha256 as sha2564 } from "@noble/hashes/sha2.js";
7844
+ import { OfficeError as OfficeError18 } from "../../safe-bash-presentation-engine/errors.js";
7654
7845
  import { extractObject, readFonts, readObjects } from "../../safe-bash-presentation-engine/opaque-objects.js";
7655
7846
  import { partName as partName3 } from "../../safe-bash-presentation-engine/package-uri.js";
7656
7847
  function usage11(message) {
7657
- throw new OfficeError17("invalid-value", message, "usage");
7848
+ throw new OfficeError18("invalid-value", message, "usage");
7658
7849
  }
7659
7850
  function validateOpaqueCommand(args, positionals, seen) {
7660
7851
  const schema = opaqueSchemas[args.operation];
@@ -7691,7 +7882,7 @@ async function executeOpaqueCommand(args, request, options2) {
7691
7882
  }
7692
7883
  const extracted = await extractObject(bytes, { part: args.part }, context);
7693
7884
  const files = [{ part: extracted.part, name: extracted.name, bytes: extracted.bytes }, ...extracted.dependencies];
7694
- if (files.length > (args.limits?.maxOutputs ?? context.archiveLimits.maxMembers)) throw new OfficeError17("resource-limit", "Opaque output count exceeds limit.", "validate-intent");
7885
+ if (files.length > (args.limits?.maxOutputs ?? context.archiveLimits.maxMembers)) throw new OfficeError18("resource-limit", "Opaque output count exceeds limit.", "validate-intent");
7695
7886
  const dryRun = args.dryRun ?? false;
7696
7887
  const allowPartialOutput = args.allowPartialOutput ?? false;
7697
7888
  if (!dryRun && !request.publishOutputs && (!allowPartialOutput || !request.publishOutput)) throw Object.assign(new Error("Object extraction requires atomic publication or explicit partial output."), { code: "publication-unsupported" });
@@ -7699,7 +7890,7 @@ async function executeOpaqueCommand(args, request, options2) {
7699
7890
  part: file.part,
7700
7891
  name: file.name,
7701
7892
  path: `${args.outputDir ?? ""}${!args.outputDir || args.outputDir.endsWith("/") ? "" : "/"}${file.name}`,
7702
- sha256: [...sha2563(file.bytes)].map((byte) => byte.toString(16).padStart(2, "0")).join(""),
7893
+ sha256: [...sha2564(file.bytes)].map((byte) => byte.toString(16).padStart(2, "0")).join(""),
7703
7894
  bytes: file.bytes.length
7704
7895
  }));
7705
7896
  const publications = args.outputDir ? files.map((file, index) => ({ inputPath: args.input, outputPath: opaqueManifest[index].path, bytes: file.bytes, originalBytes: bytes, inPlace: false, force: args.force ?? false, dryRun })) : void 0;
@@ -7723,7 +7914,7 @@ import { readMedia } from "../../safe-bash-presentation-engine/media.js";
7723
7914
  import { extractMedia } from "../../safe-bash-presentation-engine/media-extraction.js";
7724
7915
 
7725
7916
  // packages/safe-bash-command-pptx/src/command-media-editing.ts
7726
- import { OfficeError as OfficeError18 } from "../../safe-bash-presentation-engine/errors.js";
7917
+ import { OfficeError as OfficeError19 } from "../../safe-bash-presentation-engine/errors.js";
7727
7918
  import { addMedia, replaceMedia } from "../../safe-bash-presentation-engine/media-editing.js";
7728
7919
 
7729
7920
  // packages/safe-bash-command-pptx/src/media-schema.ts
@@ -7973,7 +8164,7 @@ for (const action of ["add", "replace", "extract"]) {
7973
8164
 
7974
8165
  // packages/safe-bash-command-pptx/src/command-media-editing.ts
7975
8166
  function usage12(message) {
7976
- throw new OfficeError18("invalid-value", message, "usage");
8167
+ throw new OfficeError19("invalid-value", message, "usage");
7977
8168
  }
7978
8169
  function validateMediaEditingCommand(args, positionals, seen) {
7979
8170
  const allowed = Object.keys(mediaSchemas[args.operation].options.properties).map(
@@ -9067,8 +9258,8 @@ import {
9067
9258
  import { readBackgrounds, mutateBackground } from "../../safe-bash-presentation-engine/backgrounds.js";
9068
9259
  import { replacePresentationText } from "../../safe-bash-presentation-engine/text-replacement.js";
9069
9260
  import { readPresentationText } from "../../safe-bash-presentation-engine/text-reading.js";
9070
- import { OfficeError as OfficeError19 } from "../../safe-bash-presentation-engine/errors.js";
9071
- import { sha256 as sha2564 } from "@noble/hashes/sha2.js";
9261
+ import { OfficeError as OfficeError20 } from "../../safe-bash-presentation-engine/errors.js";
9262
+ import { sha256 as sha2565 } from "@noble/hashes/sha2.js";
9072
9263
  import { packageUri, partName as partName4 } from "../../safe-bash-presentation-engine/package-uri.js";
9073
9264
  import {
9074
9265
  SelectionError as SelectionError8,
@@ -9269,7 +9460,7 @@ Slides add requires an exact layout name or part URI; position defaults to appen
9269
9460
  Title/body match placeholder types; indexed bindings use --placeholders-json.
9270
9461
  `;
9271
9462
  function usage13(message) {
9272
- throw new OfficeError19("invalid-value", message, "usage");
9463
+ throw new OfficeError20("invalid-value", message, "usage");
9273
9464
  }
9274
9465
  function paragraphTabLength(length4) {
9275
9466
  if (Object.keys(length4).some((key) => !["value", "unit"].includes(key)) || typeof length4.value !== "number" || !Number.isFinite(length4.value) || length4.value < 0 || typeof length4.unit !== "string")
@@ -9528,7 +9719,7 @@ function parse(raw, maximum, output3) {
9528
9719
  size += bytes.length + 1;
9529
9720
  if (size > maximum) {
9530
9721
  if (invalidUtf8) usage13("Arguments must be UTF-8.");
9531
- throw new OfficeError19("resource-limit", "Argument limit exceeded.", "usage");
9722
+ throw new OfficeError20("resource-limit", "Argument limit exceeded.", "usage");
9532
9723
  }
9533
9724
  try {
9534
9725
  args.push(decoder.decode(bytes));
@@ -10180,7 +10371,7 @@ function parse(raw, maximum, output3) {
10180
10371
  try {
10181
10372
  parsed = admitFontMetrics(JSON.parse(value));
10182
10373
  } catch (error) {
10183
- if (error instanceof OfficeError19) throw error;
10374
+ if (error instanceof OfficeError20) throw error;
10184
10375
  usage13("Metrics require a valid JSON metric object.");
10185
10376
  }
10186
10377
  } else if (["bold", "italic", "wrap"].includes(key)) {
@@ -11906,10 +12097,10 @@ async function transferLocations(bytes, budget) {
11906
12097
  (edge) => relationshipNamespaces.some((namespace) => edge.type === `${namespace}/officeDocument`)
11907
12098
  );
11908
12099
  const root = roots.length === 1 ? roots[0].targetPart : void 0;
11909
- if (!root) throw new OfficeError19("invalid-opc", "Presentation part is missing.", "index");
12100
+ if (!root) throw new OfficeError20("invalid-opc", "Presentation part is missing.", "index");
11910
12101
  const relationshipNamespace = roots[0].type.slice(0, -"/officeDocument".length);
11911
12102
  const xml = budget.xml(reader.get(root));
11912
- const fingerprint = Array.from(sha2564(bytes), (byte) => byte.toString(16).padStart(2, "0")).join(
12103
+ const fingerprint = Array.from(sha2565(bytes), (byte) => byte.toString(16).padStart(2, "0")).join(
11913
12104
  ""
11914
12105
  );
11915
12106
  const locations = xml.root.children.filter(
@@ -11925,7 +12116,7 @@ async function transferLocations(bytes, budget) {
11925
12116
  (edge) => edge.id === reference && edge.type === `${relationshipNamespace}/slide`
11926
12117
  )?.targetPart;
11927
12118
  if (!id || !owner || !reader.has(owner))
11928
- throw new OfficeError19("invalid-opc", "Referenced slide is missing.", "index");
12119
+ throw new OfficeError20("invalid-opc", "Referenced slide is missing.", "index");
11929
12120
  return {
11930
12121
  fingerprint,
11931
12122
  scope: "slides",
@@ -12035,7 +12226,7 @@ async function executeRequest(request, options2, owned) {
12035
12226
  output3.operation = args.operation;
12036
12227
  const operation2 = args.operation;
12037
12228
  if (args.operation === "pack" && request.streaming) {
12038
- if (args.creation?.author !== void 0 || args.creation?.timestamp !== void 0) throw new OfficeError19("unsupported-edit", "Pack metadata overrides are unavailable; source properties are preserved.", "validate-intent");
12229
+ if (args.creation?.author !== void 0 || args.creation?.timestamp !== void 0) throw new OfficeError20("unsupported-edit", "Pack metadata overrides are unavailable; source properties are preserved.", "validate-intent");
12039
12230
  const streaming = request.streaming, context = { ...options2.context, signal: request.signal, workingStorage: streaming.workingStorage };
12040
12231
  const input = await streaming.openInput(args.manifest, Math.min(context.limits.maxBytes, context.xmlLimits.maxBytes));
12041
12232
  const manifest = await openRetainedPackManifest(input.stream(), context, { manifest: args.manifest, ...args.output === void 0 ? {} : { output: args.output } });
@@ -12047,7 +12238,7 @@ async function executeRequest(request, options2, owned) {
12047
12238
  yield* source3.stream();
12048
12239
  }, context, args.creation?.kind ? { kind: args.creation.kind } : {});
12049
12240
  owned.push(packed);
12050
- if (packed.size > options2.maxOutputBytes) throw new OfficeError19("resource-limit", "Packed output exceeds byte limit.", "validate-intent");
12241
+ if (packed.size > options2.maxOutputBytes) throw new OfficeError20("resource-limit", "Packed output exceeds byte limit.", "validate-intent");
12051
12242
  const dryRun = args.dryRun ?? false;
12052
12243
  result = {
12053
12244
  version: 1,
@@ -12067,6 +12258,14 @@ async function executeRequest(request, options2, owned) {
12067
12258
  } else if (args.output === "-" && !dryRun) stagedOutput = { close: packed.close, async write(sink) {
12068
12259
  for await (const bytes of packed.bytes()) await sink.write(bytes);
12069
12260
  } };
12261
+ } else if (args.operation === "media.extract" && request.streaming && (!request.publishOutputs || request.publishOutputStreams) && (!request.preflightOutput || request.preflightOutputStream)) {
12262
+ retainedExtraction = await prepareRetainedMediaExtraction(args, request, options2);
12263
+ owned.push(retainedExtraction);
12264
+ result = success(operation2, null);
12265
+ } else if (args.operation === "objects.extract" && request.streaming && (!request.publishOutputs || request.publishOutputStreams) && (!request.preflightOutput || request.preflightOutputStream)) {
12266
+ retainedExtraction = await prepareRetainedObjectExtraction(args, request, options2);
12267
+ owned.push(retainedExtraction);
12268
+ result = success(operation2, null);
12070
12269
  } else if (args.operation === "extract" && request.streaming && (!request.publishOutputs || request.publishOutputStreams) && (!request.preflightOutput || request.preflightOutputStream)) {
12071
12270
  retainedExtraction = await prepareRetainedExtraction(args, request, options2);
12072
12271
  owned.push(retainedExtraction);
@@ -12074,7 +12273,7 @@ async function executeRequest(request, options2, owned) {
12074
12273
  } else if (args.operation === "xml.set" && request.streaming) {
12075
12274
  if (args.token) decodeSelectionToken2(args.token);
12076
12275
  const streaming = request.streaming, context = { ...options2.context, signal: request.signal, workingStorage: streaming.workingStorage };
12077
- if (!context.validationLimits) throw new OfficeError19("invalid-value", "XML operations require explicit validation limits.", "usage");
12276
+ if (!context.validationLimits) throw new OfficeError20("invalid-value", "XML operations require explicit validation limits.", "usage");
12078
12277
  const input = await streaming.openInput(args.input, Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes));
12079
12278
  const maxReplacementBytes = Math.min(context.validationLimits.maxBytes, context.archiveLimits.maxEntryBytes), file = args.file;
12080
12279
  async function* replacement() {
@@ -12097,6 +12296,65 @@ async function executeRequest(request, options2, owned) {
12097
12296
  publication = { inputPath: args.input, outputPath: destination, bytes: staged.bytes(), originalBytes: input, inPlace: args.inPlace ?? false, force: args.force ?? false, dryRun };
12098
12297
  }
12099
12298
  result = success(operation2, null);
12299
+ } else if ((args.operation === "media.list" || args.operation === "media.get") && request.streaming) {
12300
+ const context = { ...options2.context, signal: request.signal, workingStorage: request.streaming.workingStorage };
12301
+ const input = await request.streaming.openInput(args.input, Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes));
12302
+ const hash = sha2565.create();
12303
+ for await (const bytes of input.stream()) {
12304
+ request.signal.throwIfAborted();
12305
+ hash.update(bytes);
12306
+ }
12307
+ const fingerprint = Array.from(hash.digest(), (byte) => byte.toString(16).padStart(2, "0")).join("");
12308
+ const archive = await openPackageArchive3(input, context);
12309
+ let failed = false;
12310
+ try {
12311
+ const staged = await stageRetainedMedia(archive, fingerprint, {
12312
+ ...args.scope === void 0 ? {} : { scope: args.scope },
12313
+ ...args.slide === void 0 ? {} : { slide: args.slide },
12314
+ ...args.shape === void 0 ? {} : { shape: args.shape },
12315
+ ...args.token === void 0 ? {} : { select: args.token }
12316
+ }, context, { operation: args.operation, json: args.json, maxOutputBytes: options2.maxOutputBytes });
12317
+ stagedOutput = staged.output;
12318
+ exitCode = staged.ok ? 0 : 1;
12319
+ } catch (error) {
12320
+ failed = true;
12321
+ throw error;
12322
+ } finally {
12323
+ try {
12324
+ await archive.close();
12325
+ } catch (error) {
12326
+ if (!failed) {
12327
+ await stagedOutput?.close().catch(() => {
12328
+ });
12329
+ await Promise.reject(error);
12330
+ }
12331
+ }
12332
+ }
12333
+ owned.push(stagedOutput);
12334
+ result = success(operation2, null);
12335
+ } else if ((args.operation === "objects.list" || args.operation === "fonts.list") && request.streaming) {
12336
+ const context = { ...options2.context, signal: request.signal, workingStorage: request.streaming.workingStorage };
12337
+ const input = await request.streaming.openInput(args.input, Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes));
12338
+ const archive = await openPackageArchive3(input, context);
12339
+ let failed = false;
12340
+ try {
12341
+ stagedOutput = await (args.operation === "fonts.list" ? stageRetainedFonts : stageRetainedObjects)(archive, context, { json: args.json, maxOutputBytes: options2.maxOutputBytes });
12342
+ } catch (error) {
12343
+ failed = true;
12344
+ throw error;
12345
+ } finally {
12346
+ try {
12347
+ await archive.close();
12348
+ } catch (error) {
12349
+ if (!failed) {
12350
+ await stagedOutput?.close().catch(() => {
12351
+ });
12352
+ await Promise.reject(error);
12353
+ }
12354
+ }
12355
+ }
12356
+ owned.push(stagedOutput);
12357
+ result = success(operation2, null);
12100
12358
  } else if (args.operation === "slides.set" && request.streaming) {
12101
12359
  if (args.token) decodeSelectionToken2(args.token);
12102
12360
  const input = await request.streaming.openInput(args.input, Math.min(options2.context.limits.maxBytes, options2.context.archiveLimits.maxArchiveBytes));
@@ -12114,21 +12372,29 @@ async function executeRequest(request, options2, owned) {
12114
12372
  publication = { inputPath: args.input, outputPath: destination, bytes: staged.bytes(), originalBytes: input, inPlace: args.inPlace ?? false, force: args.force ?? false, dryRun };
12115
12373
  }
12116
12374
  result = success(operation2, null);
12117
- } else if ((args.operation === "inspect" || args.operation === "text.get" || args.operation === "fields.list" || args.operation === "fields.get" || args.operation === "text.frames.list" || args.operation === "text.frames.get" || args.operation === "notes.list" || args.operation === "notes.get" || args.operation === "properties.list" || args.operation === "properties.get" || args.operation === "tags.list" || args.operation === "tags.get" || args.operation === "xml.get") && request.streaming) {
12118
- if (args.token && args.operation !== "notes.list" && args.operation !== "notes.get" && args.operation !== "tags.list" && args.operation !== "tags.get") decodeSelectionToken2(args.token);
12375
+ } else if ((args.operation === "inspect" || args.operation === "text.get" || args.operation === "fields.list" || args.operation === "fields.get" || args.operation === "text.frames.list" || args.operation === "text.frames.get" || args.operation === "text.runs.list" || args.operation === "text.runs.get" || args.operation === "text.paragraphs.list" || args.operation === "text.paragraphs.get" || args.operation === "notes.list" || args.operation === "notes.get" || args.operation === "properties.list" || args.operation === "properties.get" || args.operation === "tags.list" || args.operation === "tags.get" || args.operation === "settings.list" || args.operation === "settings.get" || args.operation === "sections.list" || args.operation === "sections.get" || args.operation === "shows.list" || args.operation === "shows.get" || args.operation === "transitions.list" || args.operation === "transitions.get" || args.operation === "xml.get") && request.streaming) {
12376
+ if (args.token && args.operation !== "notes.list" && args.operation !== "notes.get" && args.operation !== "tags.list" && args.operation !== "tags.get" && !["sections.list", "sections.get", "shows.list", "shows.get", "transitions.list", "transitions.get"].includes(args.operation)) decodeSelectionToken2(args.token);
12119
12377
  const input = await request.streaming.openInput(args.input, Math.min(options2.context.limits.maxBytes, options2.context.archiveLimits.maxArchiveBytes));
12120
- const hash = sha2564.create();
12378
+ const hash = sha2565.create();
12121
12379
  for await (const bytes of input.stream()) {
12122
12380
  request.signal.throwIfAborted();
12123
12381
  hash.update(bytes);
12124
12382
  }
12125
12383
  const fingerprint = Array.from(hash.digest(), (byte) => byte.toString(16).padStart(2, "0")).join("");
12126
12384
  const context = { ...options2.context, signal: request.signal, workingStorage: request.streaming.workingStorage };
12127
- const archive = await openPackageArchive(input, context);
12385
+ const archive = await openPackageArchive3(input, context);
12128
12386
  let failed = false;
12129
12387
  try {
12130
- const scope = args.operation === "notes.list" || args.operation === "notes.get" || args.operation === "tags.list" || args.operation === "tags.get" ? void 0 : args.token ? decodeSelectionToken2(args.token).scope : args.scope;
12131
- stagedOutput = args.operation === "tags.list" || args.operation === "tags.get" ? await stageRetainedTags(archive, fingerprint, {
12388
+ const scope = args.operation === "notes.list" || args.operation === "notes.get" || args.operation === "tags.list" || args.operation === "tags.get" || args.operation === "sections.list" || args.operation === "sections.get" || args.operation === "shows.list" || args.operation === "shows.get" || args.operation === "transitions.list" || args.operation === "transitions.get" ? void 0 : args.token ? decodeSelectionToken2(args.token).scope : args.scope;
12389
+ stagedOutput = args.operation === "transitions.list" || args.operation === "transitions.get" ? await stageRetainedTransitions(archive, fingerprint, args.operation === "transitions.list" && !args.token && args.slide === void 0 ? {} : { selection: args.token ? { token: args.token } : {
12390
+ kind: "slide",
12391
+ scope: "slides",
12392
+ ...args.slide === void 0 ? {} : { position: { coordinateSystem: "one-based", value: args.slide } },
12393
+ ...args.all ? { all: true } : {}
12394
+ } }, context, { operation: args.operation, json: args.json, maxOutputBytes: options2.maxOutputBytes }) : args.operation === "sections.list" || args.operation === "sections.get" || args.operation === "shows.list" || args.operation === "shows.get" ? await stageRetainedMemberships(archive, fingerprint, args.operation.startsWith("sections.") ? "sections" : "shows", {
12395
+ ...args.token === void 0 ? {} : { token: args.token },
12396
+ ...args.slide === void 0 ? {} : { slide: args.slide }
12397
+ }, context, { operation: args.operation, json: args.json, maxOutputBytes: options2.maxOutputBytes }) : args.operation === "settings.list" || args.operation === "settings.get" ? await stageRetainedPresentationSettings(archive, fingerprint, context, { operation: args.operation, json: args.json, maxOutputBytes: options2.maxOutputBytes }) : args.operation === "tags.list" || args.operation === "tags.get" ? await stageRetainedTags(archive, fingerprint, {
12132
12398
  ...args.scope === void 0 ? {} : { scope: args.scope },
12133
12399
  ...args.token ? { selection: { token: args.token } } : args.slide === void 0 ? args.all ? { selection: { all: true } } : {} : { selection: { kind: "slide", position: { coordinateSystem: "one-based", value: args.slide }, ...args.all ? { all: true } : {} } }
12134
12400
  }, context, { operation: args.operation, json: args.json, maxOutputBytes: options2.maxOutputBytes }) : args.operation === "properties.list" || args.operation === "properties.get" ? await stageRetainedProperties(archive, fingerprint, args.metadataName === void 0 ? {} : { name: args.metadataName }, context, { operation: args.operation, json: args.json, maxOutputBytes: options2.maxOutputBytes }) : args.operation === "notes.list" || args.operation === "notes.get" ? await stageRetainedNotes(archive, fingerprint, { selection: {
@@ -12144,6 +12410,7 @@ async function executeRequest(request, options2, owned) {
12144
12410
  ...args.scope === void 0 ? {} : { scope: args.scope },
12145
12411
  ...args.all === void 0 ? {} : { all: args.all }
12146
12412
  }, context, { json: args.json, pretty: args.pretty ?? false, maxOutputBytes: options2.maxOutputBytes }) : args.operation !== "inspect" ? await stageRetainedText(archive, fingerprint, {
12413
+ ...args.operation.startsWith("text.runs.") ? args.runEdit : args.operation.startsWith("text.paragraphs.") ? args.paragraphEdit : {},
12147
12414
  ...scope === void 0 ? {} : { scope },
12148
12415
  ...args.token ? { select: { token: args.token } } : args.slide === void 0 ? {} : { select: { kind: "slide", position: { coordinateSystem: "one-based", value: args.slide } } },
12149
12416
  ...args.shape === void 0 ? {} : { shape: args.shape }
@@ -12157,7 +12424,7 @@ async function executeRequest(request, options2, owned) {
12157
12424
  }, context, { json: args.json, maxOutputBytes: options2.maxOutputBytes });
12158
12425
  } catch (error) {
12159
12426
  failed = true;
12160
- if (error instanceof OfficeError19 && error.code === "resource-limit" && error.phase === "publish") return outputLimitFailure(operation2, args.json);
12427
+ if (error instanceof OfficeError20 && error.code === "resource-limit" && error.phase === "publish") return outputLimitFailure(operation2, args.json);
12161
12428
  throw error;
12162
12429
  } finally {
12163
12430
  try {
@@ -12177,12 +12444,12 @@ async function executeRequest(request, options2, owned) {
12177
12444
  if (request.streaming) {
12178
12445
  const input = await request.streaming.openInput(args.input, maxBytes);
12179
12446
  const context = { ...options2.context, signal: request.signal, workingStorage: request.streaming.workingStorage };
12180
- const archive = await openPackageArchive(input, context);
12447
+ const archive = await openPackageArchive3(input, context);
12181
12448
  let validation;
12182
12449
  let failed = false;
12183
12450
  try {
12184
12451
  validation = await openRetainedPresentationValidation(archive, context, limits);
12185
- if (!validation.valid) throw new OfficeError19("invalid-opc", "Presentation semantic validation failed.", "index");
12452
+ if (!validation.valid) throw new OfficeError20("invalid-opc", "Presentation semantic validation failed.", "index");
12186
12453
  result = success(operation2, { valid: true, schema: validation.schema, rules: validation.rules, issues: [] });
12187
12454
  } catch (error) {
12188
12455
  failed = true;
@@ -12197,7 +12464,7 @@ async function executeRequest(request, options2, owned) {
12197
12464
  const bytes = await request.readInput(args.input, maxBytes);
12198
12465
  const reader = await readPackage3(bytes, { ...options2.context, signal: request.signal });
12199
12466
  const validation = validatePresentation(reader, limits);
12200
- if (!validation.valid) throw new OfficeError19("invalid-opc", "Presentation semantic validation failed.", "index");
12467
+ if (!validation.valid) throw new OfficeError20("invalid-opc", "Presentation semantic validation failed.", "index");
12201
12468
  result = success(operation2, validation);
12202
12469
  }
12203
12470
  human = "Presentation is semantically valid; XML schema validation not checked.\n";
@@ -12564,7 +12831,7 @@ ${JSON.stringify(result.data, null, 2)}
12564
12831
  const changed = await mutateAnimationsBatch(bytes, resolveAnimationBatch(items, index), context);
12565
12832
  const dryRun = args.dryRun ?? false;
12566
12833
  const destination = args.inPlace ? args.input : args.output;
12567
- const fingerprint = Array.from(sha2564(changed.bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
12834
+ const fingerprint = Array.from(sha2565(changed.bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
12568
12835
  result = { ...success(operation2, {
12569
12836
  results: changed.results.map((entry, i) => ({ ...success(items[i].operation, {
12570
12837
  effects: entry.locations.map((location3) => ({ location: location3, action: items[i].operation.slice(11), feature: "F46" })),
@@ -12604,7 +12871,7 @@ ${JSON.stringify(result.data, null, 2)}
12604
12871
  const locations = changed.locations;
12605
12872
  const dryRun = args.dryRun ?? false;
12606
12873
  const destination = args.inPlace ? args.input : args.output;
12607
- const fingerprint = Array.from(sha2564(changed.bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
12874
+ const fingerprint = Array.from(sha2565(changed.bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
12608
12875
  result = { ...success(operation2, {
12609
12876
  effects: locations.map((location3) => ({ location: location3, action, feature: "F46" })),
12610
12877
  outputs: dryRun || !locations.length ? [] : [{ path: destination, sha256: fingerprint, bytes: changed.bytes.length }],
@@ -12662,7 +12929,7 @@ ${JSON.stringify(result.data, null, 2)}
12662
12929
  const locations = records.filter((record3) => changed.affectedSlides.includes(record3.slide)).map((record3) => record3.location);
12663
12930
  const dryRun = args.dryRun ?? false;
12664
12931
  const destination = args.inPlace ? args.input : args.output;
12665
- const fingerprint = Array.from(sha2564(changed.bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
12932
+ const fingerprint = Array.from(sha2565(changed.bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
12666
12933
  result = { ...success(operation2, {
12667
12934
  effects: locations.map((location3) => ({ location: location3, action, feature: "F44" })),
12668
12935
  outputs: dryRun || !locations.length ? [] : [{ path: destination, sha256: fingerprint, bytes: changed.bytes.length }],
@@ -12806,14 +13073,14 @@ ${JSON.stringify(result.data, null, 2)}
12806
13073
  {
12807
13074
  path: args.inPlace ? args.input : args.output,
12808
13075
  sha256: Array.from(
12809
- sha2564(changed.bytes),
13076
+ sha2565(changed.bytes),
12810
13077
  (byte) => byte.toString(16).padStart(2, "0")
12811
13078
  ).join(""),
12812
13079
  bytes: changed.bytes.length
12813
13080
  }
12814
13081
  ],
12815
13082
  fingerprint: dryRun ? null : Array.from(
12816
- sha2564(changed.bytes),
13083
+ sha2565(changed.bytes),
12817
13084
  (byte) => byte.toString(16).padStart(2, "0")
12818
13085
  ).join("")
12819
13086
  } : args.operation === "text.fit" ? { frames: changed.affected, sizes: "sizes" in changed ? changed.sizes : [], dryRun } : args.operation === "text.frames.set" ? { frames: changed.affected, dryRun } : args.operation === "text.paragraphs.set" ? { paragraphs: changed.affected, dryRun } : args.operation === "text.runs.set" ? { runs: changed.affected, dryRun } : { replacements: changed.affected, dryRun }
@@ -13793,13 +14060,13 @@ ${item.parts.map((part) => ` ${part}
13793
14060
  const inputs = [];
13794
14061
  for (const path of [args.input, ...args.sources ?? []]) {
13795
14062
  if (remaining < 1)
13796
- throw new OfficeError19("resource-limit", "Combined input limit exceeded.", "admit");
14063
+ throw new OfficeError20("resource-limit", "Combined input limit exceeded.", "admit");
13797
14064
  const bytes = await request.readInput(
13798
14065
  path,
13799
14066
  Math.min(remaining, context.archiveLimits.maxArchiveBytes)
13800
14067
  );
13801
14068
  if (bytes.length > remaining || bytes.length > context.archiveLimits.maxArchiveBytes)
13802
- throw new OfficeError19("resource-limit", "Combined input limit exceeded.", "admit");
14069
+ throw new OfficeError20("resource-limit", "Combined input limit exceeded.", "admit");
13803
14070
  remaining -= bytes.length;
13804
14071
  inputs.push(await budget.read(bytes));
13805
14072
  }
@@ -13860,7 +14127,7 @@ ${item.parts.map((part) => ` ${part}
13860
14127
  );
13861
14128
  splitManifest2 = decks.map((deck) => ({
13862
14129
  path: `${args.outputDir ?? ""}${args.outputDir?.endsWith("/") || !args.outputDir ? "" : "/"}${deck.name}`,
13863
- sha256: Array.from(sha2564(deck.bytes), (byte) => byte.toString(16).padStart(2, "0")).join(
14130
+ sha256: Array.from(sha2565(deck.bytes), (byte) => byte.toString(16).padStart(2, "0")).join(
13864
14131
  ""
13865
14132
  ),
13866
14133
  bytes: deck.bytes.length,
@@ -13885,7 +14152,7 @@ ${item.parts.map((part) => ` ${part}
13885
14152
  }));
13886
14153
  result = {
13887
14154
  ...success(operation2, {
13888
- outputs: dryRun ? [] : splitManifest2.map(({ path, sha256: sha2565, bytes }) => ({ path, sha256: sha2565, bytes })),
14155
+ outputs: dryRun ? [] : splitManifest2.map(({ path, sha256: sha2566, bytes }) => ({ path, sha256: sha2566, bytes })),
13889
14156
  sources: splitManifest2.map(({ sourceSlide, sourceLocation }) => ({
13890
14157
  sourceSlide,
13891
14158
  sourceLocation
@@ -13900,7 +14167,7 @@ ${JSON.stringify(result.data, null, 2)}
13900
14167
  }
13901
14168
  } else if (args.operation === "create") {
13902
14169
  if (args.template)
13903
- throw new OfficeError19(
14170
+ throw new OfficeError20(
13904
14171
  "unsupported-profile",
13905
14172
  "Template-based creation is unavailable.",
13906
14173
  "validate-intent"
@@ -13952,7 +14219,7 @@ ${JSON.stringify(result.data, null, 2)}
13952
14219
  );
13953
14220
  } catch (error) {
13954
14221
  if (error && typeof error === "object" && "code" in error && error.code === "resource-limit")
13955
- throw new OfficeError19("resource-limit", "Input limit exceeded.", "admit");
14222
+ throw new OfficeError20("resource-limit", "Input limit exceeded.", "admit");
13956
14223
  throw error;
13957
14224
  }
13958
14225
  const index = await readSelectionIndex2(bytes, { ...options2.context, signal: request.signal });
@@ -14097,7 +14364,7 @@ ${JSON.stringify(result.data, null, 2)}
14097
14364
  const part = metadata2 ?? records[0].part;
14098
14365
  const validationLimits = options2.context.validationLimits;
14099
14366
  if (!validationLimits)
14100
- throw new OfficeError19(
14367
+ throw new OfficeError20(
14101
14368
  "invalid-value",
14102
14369
  "XML operations require explicit validation limits.",
14103
14370
  "usage"
@@ -14173,10 +14440,10 @@ ${xml.xml}
14173
14440
  await stagedOutput?.close().catch(() => {
14174
14441
  });
14175
14442
  stagedOutput = void 0;
14176
- if (error instanceof OfficeError19 && error.code === "resource-limit" && error.phase === "publish") return outputLimitFailure(output3.operation, output3.json);
14443
+ if (error instanceof OfficeError20 && error.code === "resource-limit" && error.phase === "publish") return outputLimitFailure(output3.operation, output3.json);
14177
14444
  if (request.signal.aborted)
14178
14445
  return { exitCode: 130, stdout: new Uint8Array(), stderr: new Uint8Array() };
14179
- const office = error instanceof OfficeError19 ? error : void 0;
14446
+ const office = error instanceof OfficeError20 ? error : void 0;
14180
14447
  const capabilityCode = error && typeof error === "object" && "code" in error ? error.code : void 0;
14181
14448
  const limit = office?.code === "resource-limit" || capabilityCode === "resource-limit";
14182
14449
  const unsupported = capabilityCode === "publication-unsupported";
@@ -14218,7 +14485,7 @@ ${xml.xml}
14218
14485
  affected: allowPartialOutput ? published : 0,
14219
14486
  locations: allowPartialOutput ? opaqueManifest || mediaManifest ? [] : imageManifest ? imageManifest.slice(0, published).flatMap((item) => item.occurrences.map((occurrence) => occurrence.location)) : splitManifest2.slice(0, published).map((item) => item.sourceLocation) : [],
14220
14487
  data: allowPartialOutput && published > 0 ? opaqueManifest ? { ...result.data, outputs: opaqueManifest.slice(0, published), dryRun: false } : mediaManifest ? { outputs: mediaManifest.slice(0, published), dryRun: false } : imageManifest ? { outputs: imageManifest.slice(0, published), dryRun: false } : {
14221
- outputs: splitManifest2.slice(0, published).map(({ path, sha256: sha2565, bytes }) => ({ path, sha256: sha2565, bytes })),
14488
+ outputs: splitManifest2.slice(0, published).map(({ path, sha256: sha2566, bytes }) => ({ path, sha256: sha2566, bytes })),
14222
14489
  sources: splitManifest2.slice(0, published).map(({ sourceSlide, sourceLocation }) => ({ sourceSlide, sourceLocation }))
14223
14490
  } : null,
14224
14491
  errors: [{ code, message: "Output could not be published.", context: { phase } }]
@@ -14230,7 +14497,7 @@ ${xml.xml}
14230
14497
  (item) => item.occurrences.map((occurrence) => occurrence.location)
14231
14498
  ) : splitManifest2.map((item) => item.sourceLocation),
14232
14499
  data: opaqueManifest ? { ...result.data, outputs: opaqueManifest, dryRun: false } : mediaManifest ? { outputs: mediaManifest, dryRun: false } : imageManifest ? { outputs: imageManifest, dryRun: false } : {
14233
- outputs: splitManifest2.map(({ path, sha256: sha2565, bytes }) => ({ path, sha256: sha2565, bytes })),
14500
+ outputs: splitManifest2.map(({ path, sha256: sha2566, bytes }) => ({ path, sha256: sha2566, bytes })),
14234
14501
  sources: splitManifest2.map(({ sourceSlide, sourceLocation }) => ({
14235
14502
  sourceSlide,
14236
14503
  sourceLocation
@@ -14279,7 +14546,7 @@ ${JSON.stringify(failure.data)}
14279
14546
  } catch (error) {
14280
14547
  if (request.signal.aborted)
14281
14548
  return { exitCode: 130, stdout: new Uint8Array(), stderr: new Uint8Array() };
14282
- const office = error instanceof OfficeError19 ? error : void 0;
14549
+ const office = error instanceof OfficeError20 ? error : void 0;
14283
14550
  const rawCode = error && typeof error === "object" && "code" in error ? error.code : void 0;
14284
14551
  const code = typeof rawCode === "string" && [
14285
14552
  "resource-limit",
@@ -14318,7 +14585,7 @@ ${JSON.stringify(failure.data)}
14318
14585
  if (stagedOutput) {
14319
14586
  let failed = false;
14320
14587
  try {
14321
- await stagedOutput.write(request.streaming.stdout);
14588
+ await stagedOutput.write(exitCode && !json ? request.streaming.stderr : request.streaming.stdout);
14322
14589
  } catch (error) {
14323
14590
  failed = true;
14324
14591
  throw error;
@@ -14329,7 +14596,7 @@ ${JSON.stringify(failure.data)}
14329
14596
  if (!failed) await Promise.reject(error);
14330
14597
  }
14331
14598
  }
14332
- return { exitCode: 0, stdout: new Uint8Array(), stderr: new Uint8Array() };
14599
+ return { exitCode, stdout: new Uint8Array(), stderr: new Uint8Array() };
14333
14600
  }
14334
14601
  if (operation === "validate" && request.streaming) {
14335
14602
  request.signal.throwIfAborted();