@poe-platform/safe-bash 0.1.810 → 0.1.812

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 (276) hide show
  1. package/dist/audio-ast/flac-source.d.ts +13 -0
  2. package/dist/audio-ast/index.d.ts +2 -0
  3. package/dist/audio-ast/index.js +253 -179
  4. package/dist/audio-ast/vorbis.d.ts +14 -0
  5. package/dist/image-ast/index.js +1 -1
  6. package/dist/json-ast/backed-json-parser.d.ts +12 -1
  7. package/dist/json-ast/index.d.ts +1 -1
  8. package/dist/office-xml/index.d.ts +1 -0
  9. package/dist/office-xml/retained-xml-edits.d.ts +22 -0
  10. package/dist/pdf-ast/cos/qpdf-json-document.d.ts +2 -1
  11. package/dist/pdf-ast/cos/value-parser.d.ts +23 -2
  12. package/dist/pdf-ast/extract/retained-form-field-details.d.ts +20 -0
  13. package/dist/pdf-ast/extract/retained-form-fields.d.ts +17 -4
  14. package/dist/pdf-ast/index.d.ts +1 -0
  15. package/dist/pdf-ast/index.js +844 -384
  16. package/dist/pdf-ast/retained-document.d.ts +6 -0
  17. package/dist/safe-bash/audio-ast.browser.js +3 -1
  18. package/dist/safe-bash/chunks/{chunk-65TFMAZU.js → chunk-BUYRKFW2.js} +8 -35
  19. package/dist/safe-bash/chunks/{chunk-ZA5FQ34E.js → chunk-TPG55BAQ.js} +0 -2
  20. package/dist/safe-bash/command-chunks/{biff-ORSHM4YX-QYPGRDAZ.js → biff-YKPDH35C-MVQIWNKV.js} +2192 -2155
  21. package/dist/safe-bash/command-chunks/{chunk-HEHGHIE2.js → chunk-22MOB45U.js} +6 -6
  22. package/dist/safe-bash/command-chunks/{chunk-6DEWZMOL.js → chunk-2CORNDGF.js} +2 -2
  23. package/dist/safe-bash/command-chunks/{chunk-DCD32BEY.js → chunk-2JSDKQ4J.js} +201 -84
  24. package/dist/safe-bash/command-chunks/{chunk-6UHGIWFX.js → chunk-2ZFLMWOX.js} +1 -1
  25. package/dist/safe-bash/command-chunks/{chunk-HONWGFDA.js → chunk-33YCKZZX.js} +6 -6
  26. package/dist/safe-bash/command-chunks/{chunk-AXWPJRY6.js → chunk-36XGIPOG.js} +1 -1
  27. package/dist/safe-bash/command-chunks/{chunk-D5AYP2UM.js → chunk-3Q247UDJ.js} +26 -16
  28. package/dist/safe-bash/command-chunks/{chunk-32ADKP5E.js → chunk-456PHA3L.js} +1 -1
  29. package/dist/safe-bash/command-chunks/{chunk-UJXP3T6R.js → chunk-4CKFNXRN.js} +1 -1
  30. package/dist/safe-bash/command-chunks/{chunk-5L6GHFRW.js → chunk-554Z6IKP.js} +2 -2
  31. package/dist/safe-bash/command-chunks/{chunk-ORZRWT62.js → chunk-56NYSX65.js} +9 -9
  32. package/dist/safe-bash/command-chunks/{chunk-53JP3S6H.js → chunk-5HPU7D36.js} +4 -4
  33. package/dist/safe-bash/command-chunks/{chunk-HARUYHH7.js → chunk-5HUICAWD.js} +1 -1
  34. package/dist/safe-bash/command-chunks/{chunk-IC5GJI7E.js → chunk-5Q22ZLNC.js} +6 -6
  35. package/dist/safe-bash/command-chunks/{chunk-YO3V5RLY.js → chunk-6CCQI6XZ.js} +12 -12
  36. package/dist/safe-bash/command-chunks/{chunk-EO2IVGV7.js → chunk-6M6TM5Z5.js} +3 -3
  37. package/dist/safe-bash/command-chunks/{chunk-Z54Z3KRN.js → chunk-6QBMND4A.js} +1 -1
  38. package/dist/safe-bash/command-chunks/{chunk-INX4JMQ6.js → chunk-6VPQ3CDZ.js} +5 -5
  39. package/dist/safe-bash/command-chunks/{chunk-VGXVN3BX.js → chunk-7GKKMNL6.js} +8 -8
  40. package/dist/safe-bash/command-chunks/{chunk-TZJC67W3.js → chunk-7PVHO47B.js} +6 -6
  41. package/dist/safe-bash/command-chunks/{chunk-CM3C7AXJ.js → chunk-A2CLZMQZ.js} +1 -1
  42. package/dist/safe-bash/command-chunks/{chunk-ASR27KHW.js → chunk-A5FZBR7X.js} +4 -4
  43. package/dist/safe-bash/command-chunks/{chunk-DMDHE5KC.js → chunk-AHA6IWAJ.js} +6 -6
  44. package/dist/safe-bash/command-chunks/{chunk-PTZ55XXN.js → chunk-APEWTWCC.js} +6 -6
  45. package/dist/safe-bash/command-chunks/{chunk-YUVH6CE4.js → chunk-ATTWQVR2.js} +17 -17
  46. package/dist/safe-bash/command-chunks/{chunk-2VCKUNDZ.js → chunk-B2C3UPJS.js} +27 -17
  47. package/dist/safe-bash/command-chunks/{chunk-JON5DB3Z.js → chunk-B5LDP7AA.js} +2 -2
  48. package/dist/safe-bash/command-chunks/{chunk-YTFWPJ3F.js → chunk-CJQSAATC.js} +26 -26
  49. package/dist/safe-bash/command-chunks/{chunk-CHJL6JMU.js → chunk-COKYZUBW.js} +1 -1
  50. package/dist/safe-bash/command-chunks/{chunk-KCTV4NVX.js → chunk-CRV2Q3PB.js} +1 -1
  51. package/dist/safe-bash/command-chunks/{chunk-V3WXPCKN.js → chunk-CV7M2QJU.js} +7 -7
  52. package/dist/safe-bash/command-chunks/{chunk-VPDSQPSN.js → chunk-DM2CPMB4.js} +2 -2
  53. package/dist/safe-bash/command-chunks/{chunk-3DTDMEOP.js → chunk-EAGIJ4VW.js} +1 -1
  54. package/dist/safe-bash/command-chunks/{chunk-JW6CMBF2.js → chunk-EHSM5ZQS.js} +8 -8
  55. package/dist/safe-bash/command-chunks/{chunk-WIOH7ZQN.js → chunk-ENT3IV2G.js} +12 -12
  56. package/dist/safe-bash/command-chunks/{chunk-5IE4LJGB.js → chunk-EUT24Y5Z.js} +8 -8
  57. package/dist/safe-bash/command-chunks/{chunk-WC2OCF4H.js → chunk-FDCIPJBQ.js} +7 -7
  58. package/dist/safe-bash/command-chunks/{chunk-COKZFXHG.js → chunk-FIIAYCWS.js} +2 -2
  59. package/dist/safe-bash/command-chunks/{chunk-MWVFP2HY.js → chunk-GEM47B2P.js} +7 -7
  60. package/dist/safe-bash/command-chunks/{chunk-EHL6B34L.js → chunk-HDJVJTCK.js} +9 -9
  61. package/dist/safe-bash/command-chunks/{chunk-JMM3MNAY.js → chunk-HKATEVAP.js} +6 -6
  62. package/dist/safe-bash/command-chunks/{chunk-VWY3EAVQ.js → chunk-HTVIYLVB.js} +4 -4
  63. package/dist/safe-bash/command-chunks/{chunk-CHR2OD2U.js → chunk-HWQ2UHMT.js} +9 -9
  64. package/dist/safe-bash/command-chunks/{chunk-Z4QJMDK3.js → chunk-IT7TAC3F.js} +16 -16
  65. package/dist/safe-bash/command-chunks/{chunk-EWS4KYJE.js → chunk-JFYWVQ4V.js} +8 -8
  66. package/dist/safe-bash/command-chunks/{chunk-ZCX63QWA.js → chunk-JOCFI7TG.js} +1 -1
  67. package/dist/safe-bash/command-chunks/{chunk-F5WTH4O4.js → chunk-JQVHUSDD.js} +5 -5
  68. package/dist/safe-bash/command-chunks/{chunk-O4VJEGL6.js → chunk-K5GB2YMN.js} +10 -10
  69. package/dist/safe-bash/command-chunks/{chunk-27C3NT5V.js → chunk-KB7DUBVL.js} +5 -5
  70. package/dist/safe-bash/command-chunks/{chunk-4DZ32PI7.js → chunk-KCOJA7EM.js} +7 -7
  71. package/dist/safe-bash/command-chunks/{chunk-CAXJ4RLF.js → chunk-KJ4XXZIL.js} +12 -12
  72. package/dist/safe-bash/command-chunks/{chunk-U6QHTC5J.js → chunk-L5MCW6CM.js} +4 -4
  73. package/dist/safe-bash/command-chunks/{chunk-LVL3A7YE.js → chunk-LCZDBW55.js} +5 -5
  74. package/dist/safe-bash/command-chunks/{chunk-DJVRDUCA.js → chunk-LXLLA4PM.js} +17 -17
  75. package/dist/safe-bash/command-chunks/{chunk-K7AGAS3K.js → chunk-M7QE2MN7.js} +6 -6
  76. package/dist/safe-bash/command-chunks/{chunk-SWT6ILF2.js → chunk-MPUHH2KR.js} +3 -3
  77. package/dist/safe-bash/command-chunks/{chunk-3ZWBBS6U.js → chunk-NARD63DY.js} +437 -34
  78. package/dist/safe-bash/command-chunks/{chunk-DC3OJLRB.js → chunk-NQDIT667.js} +5 -5
  79. package/dist/safe-bash/command-chunks/{chunk-LWZVDDJA.js → chunk-NUGQQDGE.js} +5 -1
  80. package/dist/safe-bash/command-chunks/{chunk-MFLQZLFR.js → chunk-OA75SGN2.js} +7 -7
  81. package/dist/safe-bash/command-chunks/{chunk-5LATYOF7.js → chunk-OEJM666F.js} +5 -5
  82. package/dist/safe-bash/command-chunks/{chunk-AF25YYIO.js → chunk-PMAM4N33.js} +9 -9
  83. package/dist/safe-bash/command-chunks/{chunk-KMMAJ6H6.js → chunk-PNGDJA6M.js} +2 -2
  84. package/dist/safe-bash/command-chunks/{chunk-62BHPSKJ.js → chunk-Q6S57NOQ.js} +7 -7
  85. package/dist/safe-bash/command-chunks/{chunk-KJ3PEDI2.js → chunk-Q73EMLLZ.js} +146 -4
  86. package/dist/safe-bash/command-chunks/{chunk-FXKBM5KJ.js → chunk-QC5RMGSA.js} +3 -3
  87. package/dist/safe-bash/command-chunks/{chunk-UQ6UIZMM.js → chunk-QD7ZRDUN.js} +1 -1
  88. package/dist/safe-bash/command-chunks/{chunk-JHUYZZGV.js → chunk-QYMEASQ6.js} +4 -4
  89. package/dist/safe-bash/command-chunks/{chunk-3GY5VDIX.js → chunk-QZZ73J2O.js} +6 -6
  90. package/dist/safe-bash/command-chunks/{chunk-S2CYIGWH.js → chunk-R6EGGK5M.js} +7 -7
  91. package/dist/safe-bash/command-chunks/{chunk-7AVN3OBH.js → chunk-RHYJVTJO.js} +2 -2
  92. package/dist/safe-bash/command-chunks/{chunk-EWGDSO6U.js → chunk-RID6VYS3.js} +8 -8
  93. package/dist/safe-bash/command-chunks/{chunk-MMBRBANA.js → chunk-RNSKXOG3.js} +6 -6
  94. package/dist/safe-bash/command-chunks/{chunk-D3ZRZTY5.js → chunk-RQIQ75W5.js} +5 -5
  95. package/dist/safe-bash/command-chunks/{chunk-DWKQPLRT.js → chunk-RRL3Y562.js} +11 -11
  96. package/dist/safe-bash/command-chunks/{chunk-NXCMXD74.js → chunk-S6R3IB36.js} +1 -1
  97. package/dist/safe-bash/command-chunks/{chunk-XUPKFHAQ.js → chunk-SDTPO2VV.js} +7 -7
  98. package/dist/safe-bash/command-chunks/{chunk-PIAGKRFW.js → chunk-SPLOIABU.js} +3 -3
  99. package/dist/safe-bash/command-chunks/{chunk-Z5QOVRVH.js → chunk-SU26FZLJ.js} +1 -1
  100. package/dist/safe-bash/command-chunks/{chunk-WLTJDNSQ.js → chunk-TVH4JORU.js} +3 -3
  101. package/dist/safe-bash/command-chunks/{chunk-6XVMWFHD.js → chunk-TW73OXPR.js} +6 -6
  102. package/dist/safe-bash/command-chunks/{chunk-SFO43CID.js → chunk-UAXSE3XE.js} +5 -5
  103. package/dist/safe-bash/command-chunks/{chunk-K35BSUHO.js → chunk-UYWSIIUX.js} +7 -7
  104. package/dist/safe-bash/command-chunks/{chunk-2E2YEDVB.js → chunk-W5YSINXC.js} +6 -6
  105. package/dist/safe-bash/command-chunks/{chunk-EYNT4OEJ.js → chunk-WGG6G2KG.js} +7 -7
  106. package/dist/safe-bash/command-chunks/{chunk-DVQBZXMQ.js → chunk-WJCN2IXI.js} +2 -2
  107. package/dist/safe-bash/command-chunks/{chunk-XBZ4ZWGL.js → chunk-WVMHRNXZ.js} +3 -3
  108. package/dist/safe-bash/command-chunks/{chunk-7GXUCQI4.js → chunk-WXRYDALR.js} +4 -4
  109. package/dist/safe-bash/command-chunks/{chunk-S4IIOSRA.js → chunk-X7FA7ZD5.js} +8 -8
  110. package/dist/safe-bash/command-chunks/{chunk-DPR5CYQV.js → chunk-XITDDJFT.js} +2 -0
  111. package/dist/safe-bash/command-chunks/{chunk-SFCERNHU.js → chunk-XPD636C4.js} +3 -3
  112. package/dist/safe-bash/command-chunks/{chunk-HYDWQLJ3.js → chunk-XRVKWGVQ.js} +6 -6
  113. package/dist/safe-bash/command-chunks/{chunk-ZEPDT6I5.js → chunk-XVLWZTPY.js} +249 -51
  114. package/dist/safe-bash/command-chunks/{chunk-3UJWHRK4.js → chunk-XVP6V5K3.js} +6 -6
  115. package/dist/safe-bash/command-chunks/{chunk-KTI3BULE.js → chunk-XZ2FWFNV.js} +6 -6
  116. package/dist/safe-bash/command-chunks/{chunk-QK3CHRGL.js → chunk-Y4EYCZFT.js} +10 -10
  117. package/dist/safe-bash/command-chunks/{chunk-GTWVMFBK.js → chunk-YORJDX4V.js} +4 -4
  118. package/dist/safe-bash/command-chunks/{chunk-H6F5SN2N.js → chunk-YSMNXMAO.js} +4 -4
  119. package/dist/safe-bash/command-chunks/{chunk-SE5SJ4JT.js → chunk-Z2JW6M2D.js} +3 -3
  120. package/dist/safe-bash/command-chunks/{chunk-WH3TIOTS.js → chunk-ZEGNRZV2.js} +9 -2
  121. package/dist/safe-bash/command-chunks/{chunk-BYZUOF6X.js → chunk-ZEX53S5I.js} +4010 -3980
  122. package/dist/safe-bash/command-chunks/{chunk-HQYFRQ5W.js → chunk-ZIIO6GRY.js} +7 -7
  123. package/dist/safe-bash/command-chunks/{chunk-NTRZMQZP.js → chunk-ZMHEGDU2.js} +2 -2
  124. package/dist/safe-bash/command-chunks/{chunk-EYBXHGA6.js → chunk-ZXR6LXV5.js} +2 -2
  125. package/dist/safe-bash/command-chunks/{command-engine-BEWABZ75.js → command-engine-BCUQGJJ4.js} +58 -21
  126. package/dist/safe-bash/command-chunks/{engine-MEPOXIXT-WZMRHACG.js → engine-LAUEWYSQ-DQCEI5HE.js} +1 -1
  127. package/dist/safe-bash/command-chunks/pdf-XHHFTOT4-UJJYOYJ2.js +573 -0
  128. package/dist/safe-bash/commands/diff-patch/index.js +0 -3
  129. package/dist/safe-bash/commands/diff3/index.js +0 -2
  130. package/dist/safe-bash/full-core.browser.js +2 -2
  131. package/dist/safe-bash/plugins/index.browser.js +2 -2
  132. package/dist/safe-bash/plugins/index.js +3 -1
  133. package/dist/safe-bash/plugins/portable-commands.d.ts +1 -1
  134. package/dist/safe-bash/plugins/portable-commands.js +5 -3
  135. package/dist/safe-bash/registry-entry.browser.js +1 -1
  136. package/dist/safe-bash-command-apply-patch/apply.js +4 -4
  137. package/dist/safe-bash-command-apply-patch/index.js +4 -4
  138. package/dist/safe-bash-command-apply-patch/matcher.js +2 -2
  139. package/dist/safe-bash-command-apply-patch/parser.js +2 -2
  140. package/dist/safe-bash-command-apply-patch/shared.d.ts +2 -0
  141. package/dist/safe-bash-command-apply-patch/shared.js +1 -1
  142. package/dist/safe-bash-command-diff/index.js +0 -2
  143. package/dist/safe-bash-command-diff3/index.js +830 -56
  144. package/dist/safe-bash-command-ffmpeg/index.js +1 -1
  145. package/dist/safe-bash-command-ffprobe/index.js +2 -2
  146. package/dist/safe-bash-command-ffprobe/media.js +2 -2
  147. package/dist/safe-bash-command-html-to-markdown/index.js +75 -21
  148. package/dist/safe-bash-command-pandoc/command.js +3 -3
  149. package/dist/safe-bash-command-pandoc/execution.d.ts +2 -2
  150. package/dist/safe-bash-command-pandoc/index.d.ts +1 -1
  151. package/dist/safe-bash-command-pandoc/index.js +14 -14
  152. package/dist/safe-bash-command-pandoc/lua-filters.js +2 -2
  153. package/dist/safe-bash-command-pandoc/types.d.ts +17 -2
  154. package/dist/safe-bash-command-patch/index.js +2 -2
  155. package/dist/safe-bash-command-patch/patch-publication.js +1 -1
  156. package/dist/safe-bash-command-patch/patch.js +2 -2
  157. package/dist/safe-bash-command-pdftk/index.js +649 -265
  158. package/dist/safe-bash-command-pptx/command-engine.d.ts +12 -3
  159. package/dist/safe-bash-command-pptx/engine.d.ts +2 -2
  160. package/dist/safe-bash-command-pptx/engine.js +1 -1
  161. package/dist/safe-bash-command-qpdf/index.js +115 -9
  162. package/dist/safe-bash-command-soffice/index.js +1 -1
  163. package/dist/safe-bash-command-ssconvert/index.js +2 -2
  164. package/dist/safe-bash-command-xq/index.js +45 -29
  165. package/dist/safe-bash-diff-engine/document.d.ts +2 -1
  166. package/dist/safe-bash-diff-engine/document.js +7 -4
  167. package/dist/safe-bash-presentation-engine/accessibility.js +30 -30
  168. package/dist/safe-bash-presentation-engine/animation-editing.js +15 -15
  169. package/dist/safe-bash-presentation-engine/animations.js +15 -15
  170. package/dist/safe-bash-presentation-engine/backgrounds.js +16 -16
  171. package/dist/safe-bash-presentation-engine/bytes.js +3 -3
  172. package/dist/safe-bash-presentation-engine/chart-editing.js +33 -33
  173. package/dist/safe-bash-presentation-engine/chart-object-operations.js +24 -24
  174. package/dist/safe-bash-presentation-engine/charts.js +30 -30
  175. package/dist/safe-bash-presentation-engine/command-placeholder.js +56 -55
  176. package/dist/safe-bash-presentation-engine/comments.js +16 -16
  177. package/dist/safe-bash-presentation-engine/connector-operations.js +31 -31
  178. package/dist/safe-bash-presentation-engine/connectors.js +28 -28
  179. package/dist/safe-bash-presentation-engine/content-types.js +4 -4
  180. package/dist/safe-bash-presentation-engine/creation.js +6 -6
  181. package/dist/safe-bash-presentation-engine/diff.js +31 -31
  182. package/dist/safe-bash-presentation-engine/drawing-format.js +19 -19
  183. package/dist/safe-bash-presentation-engine/drawing-operations.js +30 -30
  184. package/dist/safe-bash-presentation-engine/drawing-schema.js +20 -20
  185. package/dist/safe-bash-presentation-engine/equations.js +16 -16
  186. package/dist/safe-bash-presentation-engine/errors.js +2 -2
  187. package/dist/safe-bash-presentation-engine/fields.js +16 -16
  188. package/dist/safe-bash-presentation-engine/font-metrics.js +3 -3
  189. package/dist/safe-bash-presentation-engine/image-extraction.js +19 -19
  190. package/dist/safe-bash-presentation-engine/image-formatting.js +31 -31
  191. package/dist/safe-bash-presentation-engine/image-insertion.js +17 -17
  192. package/dist/safe-bash-presentation-engine/image-replacement.js +20 -20
  193. package/dist/safe-bash-presentation-engine/image-value.js +4 -4
  194. package/dist/safe-bash-presentation-engine/images.js +18 -18
  195. package/dist/safe-bash-presentation-engine/index.d.ts +1 -1
  196. package/dist/safe-bash-presentation-engine/index.js +99 -95
  197. package/dist/safe-bash-presentation-engine/layouts.js +15 -15
  198. package/dist/safe-bash-presentation-engine/length.js +3 -3
  199. package/dist/safe-bash-presentation-engine/links.js +15 -15
  200. package/dist/safe-bash-presentation-engine/masters.js +14 -14
  201. package/dist/safe-bash-presentation-engine/media-editing.js +23 -23
  202. package/dist/safe-bash-presentation-engine/media-extraction.js +16 -16
  203. package/dist/safe-bash-presentation-engine/media.js +15 -15
  204. package/dist/safe-bash-presentation-engine/memberships.js +14 -14
  205. package/dist/safe-bash-presentation-engine/notes.js +15 -15
  206. package/dist/safe-bash-presentation-engine/ole-enum.js +4 -4
  207. package/dist/safe-bash-presentation-engine/ole-insertion.js +19 -19
  208. package/dist/safe-bash-presentation-engine/opaque-objects.js +9 -9
  209. package/dist/safe-bash-presentation-engine/package-reader.js +5 -5
  210. package/dist/safe-bash-presentation-engine/package-tools.js +15 -15
  211. package/dist/safe-bash-presentation-engine/package-uri.js +3 -3
  212. package/dist/safe-bash-presentation-engine/package-writer.js +4 -4
  213. package/dist/safe-bash-presentation-engine/presentation-model.js +55 -54
  214. package/dist/safe-bash-presentation-engine/presentation-settings.js +13 -13
  215. package/dist/safe-bash-presentation-engine/properties.js +15 -15
  216. package/dist/safe-bash-presentation-engine/relationships.js +4 -4
  217. package/dist/safe-bash-presentation-engine/resource-limits.js +1 -1
  218. package/dist/safe-bash-presentation-engine/retained-inspection.js +12 -12
  219. package/dist/safe-bash-presentation-engine/retained-package.js +4 -4
  220. package/dist/safe-bash-presentation-engine/retained-slide-publication.d.ts +24 -0
  221. package/dist/safe-bash-presentation-engine/retained-slide-settings.d.ts +15 -0
  222. package/dist/safe-bash-presentation-engine/retained-text.js +17 -17
  223. package/dist/safe-bash-presentation-engine/sanitize.js +16 -16
  224. package/dist/safe-bash-presentation-engine/selectors.js +10 -10
  225. package/dist/safe-bash-presentation-engine/shape-groups.js +30 -30
  226. package/dist/safe-bash-presentation-engine/shape-operations.js +29 -29
  227. package/dist/safe-bash-presentation-engine/shape-path-operations.js +31 -31
  228. package/dist/safe-bash-presentation-engine/shape-paths.js +15 -15
  229. package/dist/safe-bash-presentation-engine/shape-presets.js +3 -3
  230. package/dist/safe-bash-presentation-engine/shape-selection.js +30 -30
  231. package/dist/safe-bash-presentation-engine/shape-transforms.js +17 -17
  232. package/dist/safe-bash-presentation-engine/shapes.js +26 -26
  233. package/dist/safe-bash-presentation-engine/slide-copy.js +16 -16
  234. package/dist/safe-bash-presentation-engine/slide-import.js +17 -17
  235. package/dist/safe-bash-presentation-engine/slide-merge-split.js +19 -19
  236. package/dist/safe-bash-presentation-engine/slide-model.js +42 -42
  237. package/dist/safe-bash-presentation-engine/slide-removal.js +17 -17
  238. package/dist/safe-bash-presentation-engine/slide-transfer-budget.js +9 -9
  239. package/dist/safe-bash-presentation-engine/slides.d.ts +3 -0
  240. package/dist/safe-bash-presentation-engine/slides.js +24 -16
  241. package/dist/safe-bash-presentation-engine/table-operations.js +32 -32
  242. package/dist/safe-bash-presentation-engine/table-spans.js +31 -31
  243. package/dist/safe-bash-presentation-engine/tables.js +30 -30
  244. package/dist/safe-bash-presentation-engine/tags.js +15 -15
  245. package/dist/safe-bash-presentation-engine/template-bindings.js +32 -32
  246. package/dist/safe-bash-presentation-engine/template-repeat.js +39 -39
  247. package/dist/safe-bash-presentation-engine/text-fitting.js +26 -26
  248. package/dist/safe-bash-presentation-engine/text-frames.js +26 -26
  249. package/dist/safe-bash-presentation-engine/text-paragraphs.js +26 -26
  250. package/dist/safe-bash-presentation-engine/text-reading.js +11 -11
  251. package/dist/safe-bash-presentation-engine/text-replacement.js +16 -16
  252. package/dist/safe-bash-presentation-engine/text-runs.js +19 -19
  253. package/dist/safe-bash-presentation-engine/themes.js +15 -15
  254. package/dist/safe-bash-presentation-engine/transitions.js +15 -15
  255. package/dist/safe-bash-presentation-engine/validation.js +9 -9
  256. package/dist/safe-bash-presentation-engine/xml-parts.js +15 -15
  257. package/dist/safe-bash-presentation-engine/xml-view.js +3 -3
  258. package/dist/safe-bash-presentation-engine/xml.js +3 -3
  259. package/dist/safe-bash-xml-engine/json.d.ts +1 -0
  260. package/dist/safe-bash-xml-engine/json.js +203 -0
  261. package/dist/safe-bash-xml-engine/stored-json.d.ts +5 -0
  262. package/dist/spreadsheet-engine/rendering/print/bidi-runs.d.ts +5 -0
  263. package/dist/spreadsheet-engine/rendering/print/bidi-runs.js +35 -0
  264. package/dist/spreadsheet-engine/rendering/print/control-bidi.d.ts +8 -0
  265. package/dist/spreadsheet-engine/rendering/print/control-bidi.js +80 -0
  266. package/dist/spreadsheet-format-xls/biff-encrypted-properties.d.ts +4 -4
  267. package/dist/spreadsheet-format-xls/biff-encrypted-properties.js +76 -30
  268. package/dist/spreadsheet-format-xls/biff-encryption.js +1 -1
  269. package/dist/spreadsheet-format-xls/biff-metadata.d.ts +1 -0
  270. package/dist/spreadsheet-format-xls/biff-metadata.js +2 -2
  271. package/dist/spreadsheet-format-xls/biff-property-bytes.d.ts +4 -1
  272. package/dist/spreadsheet-format-xls/biff-property-bytes.js +1 -1
  273. package/dist/spreadsheet-format-xls/biff-range.js +1 -1
  274. package/dist/spreadsheet-format-xls/biff-write-metadata.js +10 -1
  275. package/package.json +5 -2
  276. package/dist/safe-bash/command-chunks/pdf-LOZAXXS6-ERI57IAV.js +0 -557
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  readImages
3
- } from "./chunk-MWVFP2HY.js";
3
+ } from "./chunk-GEM47B2P.js";
4
4
  import {
5
5
  nodeFor
6
- } from "./chunk-6XVMWFHD.js";
6
+ } from "./chunk-TW73OXPR.js";
7
7
  import {
8
8
  applyShapeUpdate,
9
9
  validateShapeOptions
10
- } from "./chunk-Z4QJMDK3.js";
10
+ } from "./chunk-IT7TAC3F.js";
11
11
  import {
12
12
  attr,
13
13
  child,
@@ -15,13 +15,13 @@ import {
15
15
  invalid,
16
16
  loadShared,
17
17
  required
18
- } from "./chunk-ORZRWT62.js";
18
+ } from "./chunk-56NYSX65.js";
19
19
  import {
20
20
  SelectionError
21
- } from "./chunk-S4IIOSRA.js";
21
+ } from "./chunk-X7FA7ZD5.js";
22
22
  import {
23
23
  OfficeError
24
- } from "./chunk-KJ3PEDI2.js";
24
+ } from "./chunk-Q73EMLLZ.js";
25
25
 
26
26
  // packages/safe-bash-presentation-engine/src/image-formatting.ts
27
27
  var sides = [
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  dashPresets,
3
3
  patternPresets
4
- } from "./chunk-JHUYZZGV.js";
4
+ } from "./chunk-QYMEASQ6.js";
5
5
  import {
6
6
  themeColorSlots
7
- } from "./chunk-7AVN3OBH.js";
7
+ } from "./chunk-RHYJVTJO.js";
8
8
 
9
9
  // packages/safe-bash-presentation-engine/src/drawing-schema.ts
10
10
  var ratio = { type: "number", minimum: 0, maximum: 1 };
@@ -338267,8 +338267,117 @@ function isMp3Signature(bytes) {
338267
338267
  if (bytes[0] === 73 && bytes[1] === 68 && bytes[2] === 51) return true;
338268
338268
  return bytes[0] === 255 && (bytes[1] & 224) === 224 && (bytes[1] & 6) !== 0;
338269
338269
  }
338270
+ function mp3Document(byteLength, samples) {
338271
+ const sampleRate = 44100, channels = 2, count = Math.max(1, Math.floor(byteLength / 417));
338272
+ return {
338273
+ containerFormat: "mp3",
338274
+ timescale: sampleRate,
338275
+ duration: count * 1152,
338276
+ durationSeconds: count * 1152 / sampleRate,
338277
+ tracks: [
338278
+ {
338279
+ id: 1,
338280
+ type: "audio",
338281
+ handlerType: "soun",
338282
+ timescale: sampleRate,
338283
+ duration: count * 1152,
338284
+ language: "und",
338285
+ enabled: true,
338286
+ codecDescriptions: [
338287
+ {
338288
+ formatFourCC: ".mp3",
338289
+ codecName: "mp3",
338290
+ sampleRate,
338291
+ channels,
338292
+ bitsPerSample: 16
338293
+ }
338294
+ ],
338295
+ samples
338296
+ }
338297
+ ],
338298
+ metadata: {},
338299
+ byteLength
338300
+ };
338301
+ }
338302
+ function mp3Records(size, options) {
338303
+ options.signal?.throwIfAborted();
338304
+ if (!Number.isSafeInteger(size) || size < 0) throw new RangeError("Invalid MP3 source size");
338305
+ const count = Math.max(1, Math.floor(size / 417)), doc = mp3Document(size, []);
338306
+ const metadata = buildProbeResultFromDoc(doc, size, options.filename ?? "input.mp3", {
338307
+ formatName: "mp3",
338308
+ formatLongName: "MP2/3 (MPEG audio layer 2/3)"
338309
+ });
338310
+ const stream = {
338311
+ ...metadata.streams[0],
338312
+ nb_frames: String(count),
338313
+ bit_rate: String(Math.round(Math.min(size, count * 417) * 8 / doc.durationSeconds))
338314
+ };
338315
+ function* spans() {
338316
+ for (let index = 0; index < count; index++) {
338317
+ options.signal?.throwIfAborted();
338318
+ const pts = index * 1152;
338319
+ yield { pts, time: (pts / 44100).toFixed(6), size: String(Math.min(417, size - index * 417)), pos: String(index * 417) };
338320
+ }
338321
+ options.signal?.throwIfAborted();
338322
+ }
338323
+ return {
338324
+ ...metadata,
338325
+ streams: [stream],
338326
+ packets: options.showPackets ? { *[Symbol.iterator]() {
338327
+ for (const s of spans()) yield {
338328
+ codec_type: "audio",
338329
+ stream_index: 0,
338330
+ pts: s.pts,
338331
+ pts_time: s.time,
338332
+ dts: s.pts,
338333
+ dts_time: s.time,
338334
+ duration: 1152,
338335
+ duration_time: (1152 / 44100).toFixed(6),
338336
+ size: s.size,
338337
+ pos: s.pos,
338338
+ flags: "K_"
338339
+ };
338340
+ } } : void 0,
338341
+ frames: options.showFrames ? { *[Symbol.iterator]() {
338342
+ for (const s of spans()) yield {
338343
+ media_type: "audio",
338344
+ stream_index: 0,
338345
+ key_frame: 1,
338346
+ pts: s.pts,
338347
+ pts_time: s.time,
338348
+ pkt_dts: s.pts,
338349
+ pkt_dts_time: s.time,
338350
+ best_effort_timestamp: s.pts,
338351
+ best_effort_timestamp_time: s.time,
338352
+ pkt_duration: 1152,
338353
+ pkt_duration_time: (1152 / 44100).toFixed(6),
338354
+ pkt_size: s.size,
338355
+ width: void 0,
338356
+ height: void 0,
338357
+ pix_fmt: void 0,
338358
+ pict_type: void 0,
338359
+ sample_fmt: stream.sample_fmt,
338360
+ nb_samples: 1152,
338361
+ channels: 2
338362
+ };
338363
+ } } : void 0
338364
+ };
338365
+ }
338270
338366
  function mp3Ast() {
338271
338367
  return {
338368
+ async probeMetadata(source, options = {}) {
338369
+ return mp3Records(source.size, options);
338370
+ },
338371
+ async probeMetadataStream(source, options = {}) {
338372
+ options.signal?.throwIfAborted();
338373
+ let size = 0;
338374
+ for await (const chunk of source) {
338375
+ options.signal?.throwIfAborted();
338376
+ size += chunk.byteLength;
338377
+ if (!Number.isSafeInteger(size)) throw new RangeError("Invalid MP3 source size");
338378
+ }
338379
+ return mp3Records(size, options);
338380
+ },
338272
338381
  id: "mp3",
338273
338382
  formatName: "mp3",
338274
338383
  formatLongName: "MP2/3 (MPEG audio layer 2/3)",
@@ -338284,8 +338393,6 @@ function mp3Ast() {
338284
338393
  return false;
338285
338394
  },
338286
338395
  parse(bytes) {
338287
- const sampleRate = 44100;
338288
- const channels = 2;
338289
338396
  const numFrames = Math.max(1, Math.floor(bytes.byteLength / 417));
338290
338397
  const samples = [];
338291
338398
  for (let i = 0; i < numFrames; i++) {
@@ -338302,35 +338409,7 @@ function mp3Ast() {
338302
338409
  sampleDescriptionIndex: 1
338303
338410
  });
338304
338411
  }
338305
- return {
338306
- containerFormat: "mp3",
338307
- timescale: sampleRate,
338308
- duration: numFrames * 1152,
338309
- durationSeconds: numFrames * 1152 / sampleRate,
338310
- tracks: [
338311
- {
338312
- id: 1,
338313
- type: "audio",
338314
- handlerType: "soun",
338315
- timescale: sampleRate,
338316
- duration: numFrames * 1152,
338317
- language: "und",
338318
- enabled: true,
338319
- codecDescriptions: [
338320
- {
338321
- formatFourCC: ".mp3",
338322
- codecName: "mp3",
338323
- sampleRate,
338324
- channels,
338325
- bitsPerSample: 16
338326
- }
338327
- ],
338328
- samples
338329
- }
338330
- ],
338331
- metadata: {},
338332
- byteLength: bytes.byteLength
338333
- };
338412
+ return mp3Document(bytes.byteLength, samples);
338334
338413
  },
338335
338414
  serialize(doc) {
338336
338415
  const numFrames = Math.max(1, Math.ceil((doc.durationSeconds || 1) * 44100 / 1152));
@@ -338357,8 +338436,98 @@ function mp3Ast() {
338357
338436
  }
338358
338437
  };
338359
338438
  }
338439
+ function flacDocument(bytes, byteLength, data = new Uint8Array()) {
338440
+ let sampleRate = 44100;
338441
+ let channels = 2;
338442
+ let totalSamples = 44100;
338443
+ if (bytes.byteLength >= 42 && decodeFourCC(bytes, 0) === "fLaC") {
338444
+ const b18 = bytes[18];
338445
+ const b19 = bytes[19];
338446
+ const b20 = bytes[20];
338447
+ sampleRate = b18 << 12 | b19 << 4 | b20 >>> 4 || 44100;
338448
+ channels = (b20 >>> 1 & 7) + 1 || 2;
338449
+ const b21 = bytes[21];
338450
+ const view = new DataView(bytes.buffer, bytes.byteOffset + 22, 4);
338451
+ totalSamples = (b21 & 15) * 4294967296 + view.getUint32(0, false) || 44100;
338452
+ }
338453
+ return {
338454
+ containerFormat: "flac",
338455
+ timescale: sampleRate,
338456
+ duration: totalSamples,
338457
+ durationSeconds: totalSamples / sampleRate,
338458
+ tracks: [
338459
+ {
338460
+ id: 1,
338461
+ type: "audio",
338462
+ handlerType: "soun",
338463
+ timescale: sampleRate,
338464
+ duration: totalSamples,
338465
+ language: "und",
338466
+ enabled: true,
338467
+ codecDescriptions: [
338468
+ {
338469
+ formatFourCC: "fLaC",
338470
+ codecName: "flac",
338471
+ sampleRate,
338472
+ channels,
338473
+ bitsPerSample: 16
338474
+ }
338475
+ ],
338476
+ samples: [
338477
+ {
338478
+ data,
338479
+ dts: 0,
338480
+ pts: 0,
338481
+ cts: 0,
338482
+ duration: totalSamples,
338483
+ size: byteLength,
338484
+ isKeyframe: true,
338485
+ sampleDescriptionIndex: 1
338486
+ }
338487
+ ]
338488
+ }
338489
+ ],
338490
+ metadata: {},
338491
+ byteLength
338492
+ };
338493
+ }
338360
338494
  function flacAst() {
338361
338495
  return {
338496
+ async probeMetadata(source, options = {}) {
338497
+ options.signal?.throwIfAborted();
338498
+ if (!Number.isSafeInteger(source.size) || source.size < 0) throw new RangeError("Invalid FLAC source size");
338499
+ const header = new Uint8Array(Math.min(42, source.size));
338500
+ for (let offset = 0; offset < header.length; ) {
338501
+ const chunk = await source.read(offset, header.length - offset);
338502
+ options.signal?.throwIfAborted();
338503
+ if (!chunk.length) throw new Error("Unexpected end of FLAC source");
338504
+ if (chunk.length > header.length - offset) throw new Error("FLAC source returned more bytes than requested");
338505
+ header.set(chunk, offset);
338506
+ offset += chunk.length;
338507
+ }
338508
+ return buildProbeResultFromDoc(flacDocument(header, source.size), source.size, options.filename ?? "input.flac", {
338509
+ ...options,
338510
+ formatName: "flac",
338511
+ formatLongName: "raw FLAC"
338512
+ });
338513
+ },
338514
+ async probeMetadataStream(source, options = {}) {
338515
+ options.signal?.throwIfAborted();
338516
+ const header = new Uint8Array(42);
338517
+ let size = 0;
338518
+ for await (const chunk of source) {
338519
+ options.signal?.throwIfAborted();
338520
+ if (size < header.length) header.set(chunk.subarray(0, header.length - size), size);
338521
+ size += chunk.length;
338522
+ if (!Number.isSafeInteger(size)) throw new RangeError("Invalid FLAC source size");
338523
+ }
338524
+ options.signal?.throwIfAborted();
338525
+ return buildProbeResultFromDoc(flacDocument(header.subarray(0, Math.min(size, header.length)), size), size, options.filename ?? "input.flac", {
338526
+ ...options,
338527
+ formatName: "flac",
338528
+ formatLongName: "raw FLAC"
338529
+ });
338530
+ },
338362
338531
  id: "flac",
338363
338532
  formatName: "flac",
338364
338533
  formatLongName: "raw FLAC",
@@ -338376,59 +338545,7 @@ function flacAst() {
338376
338545
  return false;
338377
338546
  },
338378
338547
  parse(bytes) {
338379
- let sampleRate = 44100;
338380
- let channels = 2;
338381
- let totalSamples = 44100;
338382
- if (bytes.byteLength >= 42 && decodeFourCC(bytes, 0) === "fLaC") {
338383
- const b18 = bytes[18];
338384
- const b19 = bytes[19];
338385
- const b20 = bytes[20];
338386
- sampleRate = b18 << 12 | b19 << 4 | b20 >>> 4 || 44100;
338387
- channels = (b20 >>> 1 & 7) + 1 || 2;
338388
- const b21 = bytes[21];
338389
- const view = new DataView(bytes.buffer, bytes.byteOffset + 22, 4);
338390
- totalSamples = (b21 & 15) * 4294967296 + view.getUint32(0, false) || 44100;
338391
- }
338392
- return {
338393
- containerFormat: "flac",
338394
- timescale: sampleRate,
338395
- duration: totalSamples,
338396
- durationSeconds: totalSamples / sampleRate,
338397
- tracks: [
338398
- {
338399
- id: 1,
338400
- type: "audio",
338401
- handlerType: "soun",
338402
- timescale: sampleRate,
338403
- duration: totalSamples,
338404
- language: "und",
338405
- enabled: true,
338406
- codecDescriptions: [
338407
- {
338408
- formatFourCC: "fLaC",
338409
- codecName: "flac",
338410
- sampleRate,
338411
- channels,
338412
- bitsPerSample: 16
338413
- }
338414
- ],
338415
- samples: [
338416
- {
338417
- data: bytes,
338418
- dts: 0,
338419
- pts: 0,
338420
- cts: 0,
338421
- duration: totalSamples,
338422
- size: bytes.byteLength,
338423
- isKeyframe: true,
338424
- sampleDescriptionIndex: 1
338425
- }
338426
- ]
338427
- }
338428
- ],
338429
- metadata: {},
338430
- byteLength: bytes.byteLength
338431
- };
338548
+ return flacDocument(bytes, bytes.byteLength, bytes);
338432
338549
  },
338433
338550
  serialize(doc) {
338434
338551
  return concatBytes(encodeFlacPackets(doc));
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  OfficeError
3
- } from "./chunk-KJ3PEDI2.js";
3
+ } from "./chunk-Q73EMLLZ.js";
4
4
 
5
5
  // packages/safe-bash-presentation-engine/src/equations-compatibility.ts
6
6
  var equationNamespaces = [
@@ -1,23 +1,23 @@
1
1
  import {
2
2
  SelectionError,
3
3
  readSelectionIndex
4
- } from "./chunk-S4IIOSRA.js";
4
+ } from "./chunk-X7FA7ZD5.js";
5
5
  import {
6
6
  readPackage
7
- } from "./chunk-SFCERNHU.js";
7
+ } from "./chunk-XPD636C4.js";
8
8
  import {
9
9
  readBinary
10
- } from "./chunk-KMMAJ6H6.js";
10
+ } from "./chunk-PNGDJA6M.js";
11
11
  import {
12
12
  equationOpaqueElements,
13
13
  interpretCompatibility
14
- } from "./chunk-6UHGIWFX.js";
14
+ } from "./chunk-2ZFLMWOX.js";
15
15
  import {
16
16
  parseXmlPart
17
- } from "./chunk-5L6GHFRW.js";
17
+ } from "./chunk-554Z6IKP.js";
18
18
  import {
19
19
  OfficeError
20
- } from "./chunk-KJ3PEDI2.js";
20
+ } from "./chunk-Q73EMLLZ.js";
21
21
 
22
22
  // packages/safe-bash-presentation-engine/src/text-reading.ts
23
23
  import { SaxesParser } from "saxes";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  OfficeError
3
- } from "./chunk-KJ3PEDI2.js";
3
+ } from "./chunk-Q73EMLLZ.js";
4
4
 
5
5
  // packages/safe-bash-presentation-engine/src/package-uri.ts
6
6
  function unsafeName() {
@@ -4,7 +4,7 @@ import {
4
4
  TargetOutput,
5
5
  equalTargetLines,
6
6
  targetBytes
7
- } from "./chunk-WH3TIOTS.js";
7
+ } from "./chunk-ZEGNRZV2.js";
8
8
  import {
9
9
  unwrapPatch
10
10
  } from "./chunk-JKLOBSMP.js";
@@ -238,7 +238,7 @@ async function applyStoredHunks(original, patch, fuzz, budget, ignoreWhitespace
238
238
  }
239
239
 
240
240
  // packages/safe-bash-command-patch/src/patch.ts
241
- import { FsError, dirname, resolvePath, writeBytes } from "../../safe-bash-contracts/index.js";
241
+ import { FsError, dirname, pipeBytes, resolvePath, writeBytes } from "../../safe-bash-contracts/index.js";
242
242
  import { publicDiagnosticMessage } from "../../safe-bash-contracts/diagnostics.js";
243
243
  import { Budget as Budget2, ToolError as ToolError2, definition, host, inspect, integer } from "../../safe-bash-diff-engine/shared.js";
244
244
  import { encodeBytes } from "../../safe-bash-io-engine/byte-encoding.js";
@@ -470,6 +470,7 @@ async function publish(item, budget, rejects, publication, documents) {
470
470
  }
471
471
  async function run(context, budget) {
472
472
  const options = flags(context.args);
473
+ const outputToStdout = options.output === "-";
473
474
  if (options.directory !== void 0) {
474
475
  const cwd = resolvePath(context.cwd, options.directory);
475
476
  if ((await inspect(budget, cwd))?.type !== "directory") throw new ToolError2(`not a directory: ${options.directory}`);
@@ -505,7 +506,7 @@ async function run(context, budget) {
505
506
  } });
506
507
  const output = options.output === void 0 ? void 0 : safeTarget(options.output, 0, true);
507
508
  if (options.output !== void 0 && output === void 0) throw new ToolError2("/dev/null is not an output file");
508
- const outputPath = output === void 0 ? void 0 : resolvePath(context.cwd, output);
509
+ const outputPath = output === void 0 || outputToStdout ? void 0 : resolvePath(context.cwd, output);
509
510
  const explicit = options.target === void 0 ? void 0 : safeTarget(options.target, 0, true);
510
511
  if (options.target !== void 0 && explicit === void 0) throw new ToolError2("/dev/null is not an explicit target");
511
512
  if (options.input !== "-") {
@@ -532,6 +533,7 @@ async function run(context, budget) {
532
533
  reverse: options.atomic && options.reverse,
533
534
  exists: async (path) => preview.has(path) ? preview.get(path) !== void 0 : previewParents.has(path) || await candidateStat(path, budget) !== void 0,
534
535
  advance: async (item) => {
536
+ if (outputToStdout) return;
535
537
  const path = resolvePath(context.cwd, item.selected);
536
538
  const current = preview.has(path) ? preview.get(path) : await inspect(budget, path) ? await documents.read(path) : void 0;
537
539
  const applied = await applyContent(item.patch, current ?? empty, current !== void 0, options, budget, documents);
@@ -547,6 +549,7 @@ async function run(context, budget) {
547
549
  const targets = new Set(authorized.flatMap((item) => item.selected === void 0 ? [] : [resolvePath(context.cwd, item.selected)]));
548
550
  if (outputPath !== void 0) await authorizeOutputs([outputPath], targets, paths.input, budget);
549
551
  const staged = /* @__PURE__ */ new Map();
552
+ const stdoutItems = [];
550
553
  const stagedParents = /* @__PURE__ */ new Set();
551
554
  const touched = /* @__PURE__ */ new Set();
552
555
  const rejects = /* @__PURE__ */ new Set();
@@ -559,11 +562,12 @@ async function run(context, budget) {
559
562
  let publishing = false;
560
563
  let activePath;
561
564
  let outputContents = empty;
565
+ const statusSink = outputToStdout ? context.stderr : context.stdout;
562
566
  const status = async (text) => {
563
567
  if (!text) return;
564
568
  budget.output(text);
565
569
  if (options.atomic) messages.push(text);
566
- else await writeBytes(context.stdout, encodeBytes(text), context.signal);
570
+ else await writeBytes(statusSink, encodeBytes(text), context.signal);
567
571
  };
568
572
  const applySection = async (authorizedPatch) => {
569
573
  const sourcePatch = authorizedPatch.patch;
@@ -593,7 +597,7 @@ ${sourcePatch.hunks.length} out of ${sourcePatch.hunks.length} hunks ignored
593
597
  `);
594
598
  if (refuse) {
595
599
  if (options.atomic) throw new ToolError2(`read-only target: ${name}`, 1);
596
- const destination = rejectName(name, paths);
600
+ const destination = rejectName(outputToStdout ? "-" : name, paths);
597
601
  const rejectPath2 = options.dryRun || destination === void 0 ? void 0 : resolvePath(context.cwd, destination);
598
602
  if (rejectPath2 !== void 0) {
599
603
  await authorizeOutputs([rejectPath2], targets, paths.input, budget);
@@ -656,9 +660,9 @@ ${sourcePatch.hunks.length} out of ${sourcePatch.hunks.length} hunks ignored
656
660
  if (options.atomic && conflict) throw new ToolError2(failed.length ? `hunk ${failed[0].index} does not match ${name}` : `deletion patch leaves content: ${name}`, 1);
657
661
  if (conflict) exitCode = 1;
658
662
  const mismatch = reverseMismatch || outcomes.some((outcome) => outcome.failed || outcome.offset !== 0 || outcome.fuzz !== 0);
659
- const backup = !options.dryRun && (options.alwaysBackup || options.backup && mismatch) && !touched.has(path) ? original ?? empty : void 0;
663
+ const backup = !options.dryRun && !outputToStdout && (options.alwaysBackup || options.backup && mismatch) && !touched.has(path) ? original ?? empty : void 0;
660
664
  const backupPath = backup === void 0 ? prior?.backupPath : await backupName(path, budget, options);
661
- const rejectDestination = rejectName(name, paths);
665
+ const rejectDestination = rejectName(outputToStdout ? "-" : name, paths);
662
666
  const rejectPath = !options.dryRun && !options.merge && failed.length && rejectDestination !== void 0 ? resolvePath(context.cwd, rejectDestination) : void 0;
663
667
  const rejected = rejectPath === void 0 ? void 0 : await rejectText(sourcePatch, outcomes, authorizedPatch.oldName, authorizedPatch.newName, authorizedPatch.indexName, reversed, budget, options.rejectFormat);
664
668
  await authorizeOutputs([outputPath, backupPath, rejectPath], targets, paths.input, budget);
@@ -667,7 +671,7 @@ ${sourcePatch.hunks.length} out of ${sourcePatch.hunks.length} hunks ignored
667
671
  }
668
672
  if (backupPath !== void 0) backupPaths.add(backupPath);
669
673
  if (rejectPath !== void 0) rejectPaths.add(rejectPath);
670
- const remove = options.ifdef === void 0 && outputPath === void 0 && result.size === 0 && (!options.posix && deletion || options.removeEmpty);
674
+ const remove = options.ifdef === void 0 && output === void 0 && result.size === 0 && (!options.posix && deletion || options.removeEmpty);
671
675
  const outputPrior = outputPath === void 0 ? void 0 : staged.get(outputPath);
672
676
  const outputOriginal = outputPath === void 0 ? original : outputPrior ? outputPrior.original : await inspect(budget, outputPath) ? await documents.read(outputPath) : void 0;
673
677
  if (outputPath !== void 0) outputContents = await documents.concat(outputContents, result);
@@ -692,6 +696,7 @@ ${sourcePatch.hunks.length} out of ${sourcePatch.hunks.length} hunks ignored
692
696
  original: outputOriginal,
693
697
  result: outputPath === void 0 ? result : outputContents,
694
698
  remove,
699
+ ...outputToStdout ? { skipWrite: true } : {},
695
700
  ...outputPath === void 0 ? {} : { sourcePath: path, ...original === void 0 ? {} : { sourceOriginal: original } },
696
701
  ...backup === void 0 ? prior?.backup === void 0 ? {} : { backup: prior.backup } : { backup },
697
702
  ...backupPath === void 0 ? {} : { backupPath },
@@ -735,11 +740,15 @@ ${headers}--------------------------
735
740
  await status(message);
736
741
  touched.add(path);
737
742
  if (options.atomic) {
738
- staged.set(item.path, item);
739
- if (!remove) for (let parent = dirname(path); parent !== "/"; parent = dirname(parent)) stagedParents.add(parent);
740
- } else if (!options.dryRun) {
743
+ if (outputToStdout) stdoutItems.push(item);
744
+ else {
745
+ staged.set(item.path, item);
746
+ if (!remove) for (let parent = dirname(path); parent !== "/"; parent = dirname(parent)) stagedParents.add(parent);
747
+ }
748
+ } else if (!options.dryRun || outputToStdout) {
741
749
  publishing = true;
742
- await publish(item, budget, rejects, publication, documents);
750
+ if (!options.dryRun) await publish(item, budget, rejects, publication, documents);
751
+ if (outputToStdout) await pipeBytes(result.range(0, result.size), context.stdout, context.signal);
743
752
  committed++;
744
753
  publishing = false;
745
754
  for (const parent of item.parents) parents.add(parent);
@@ -755,12 +764,13 @@ ${headers}--------------------------
755
764
  throw new ToolError2(`commit stopped; ${committed}/${authorized.length} files committed; failing operation may have side effects; path ${activePath}: ${publicDiagnosticMessage(error, budget.context.onInternalError)}`);
756
765
  }
757
766
  }
758
- if (options.atomic && !options.dryRun) {
759
- const prepared = [...staged.values()].filter((item) => !(item.remove && item.original === void 0));
767
+ if (options.atomic && (!options.dryRun || outputToStdout)) {
768
+ const prepared = outputToStdout ? stdoutItems : [...staged.values()].filter((item) => !(item.remove && item.original === void 0));
760
769
  for (const item of prepared) await unchanged(item, budget, documents);
761
770
  for (const item of prepared) {
762
771
  try {
763
- await publish(item, budget, rejects, publication, documents);
772
+ if (!options.dryRun) await publish(item, budget, rejects, publication, documents);
773
+ if (outputToStdout) await pipeBytes(item.result.range(0, item.result.size), context.stdout, context.signal);
764
774
  committed++;
765
775
  } catch (error) {
766
776
  context.signal.throwIfAborted();
@@ -771,7 +781,7 @@ ${headers}--------------------------
771
781
  }
772
782
  if (!options.dryRun) await pruneDirectories(parents, budget);
773
783
  if (options.verbose) await status("done\n");
774
- if (options.atomic && (!options.quiet || messages.length)) await writeBytes(context.stdout, encodeBytes(messages.join("")), context.signal);
784
+ if (options.atomic && (!options.quiet || messages.length)) await writeBytes(statusSink, encodeBytes(messages.join("")), context.signal);
775
785
  if (progress?.error) throw progress.error;
776
786
  return exitCode;
777
787
  } finally {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Emu
3
- } from "./chunk-Z54Z3KRN.js";
3
+ } from "./chunk-6QBMND4A.js";
4
4
 
5
5
  // packages/safe-bash-presentation-engine/src/ole-enum.ts
6
6
  var PROG_ID = Object.freeze({
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  InvalidHandleError,
3
3
  ValueError
4
- } from "./chunk-NXCMXD74.js";
4
+ } from "./chunk-S6R3IB36.js";
5
5
 
6
6
  // packages/safe-bash-presentation-engine/src/xml-view.ts
7
7
  var states = /* @__PURE__ */ new WeakMap();
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  InvalidXmlError
3
- } from "./chunk-NXCMXD74.js";
3
+ } from "./chunk-S6R3IB36.js";
4
4
  import {
5
5
  OfficeError
6
- } from "./chunk-KJ3PEDI2.js";
6
+ } from "./chunk-Q73EMLLZ.js";
7
7
 
8
8
  // packages/safe-bash-presentation-engine/src/xml.ts
9
9
  import { SaxesParser } from "saxes";
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  writePackageArchive
3
- } from "./chunk-VPDSQPSN.js";
3
+ } from "./chunk-DM2CPMB4.js";
4
4
  import {
5
5
  readSelectionIndex
6
- } from "./chunk-S4IIOSRA.js";
6
+ } from "./chunk-X7FA7ZD5.js";
7
7
  import {
8
8
  readPackage
9
- } from "./chunk-SFCERNHU.js";
9
+ } from "./chunk-XPD636C4.js";
10
10
  import {
11
11
  readBinary
12
- } from "./chunk-KMMAJ6H6.js";
12
+ } from "./chunk-PNGDJA6M.js";
13
13
  import {
14
14
  validatePresentation
15
- } from "./chunk-MMBRBANA.js";
15
+ } from "./chunk-RNSKXOG3.js";
16
16
  import {
17
17
  parseXmlPart
18
- } from "./chunk-5L6GHFRW.js";
18
+ } from "./chunk-554Z6IKP.js";
19
19
  import {
20
20
  parseContentTypes
21
- } from "./chunk-DVQBZXMQ.js";
21
+ } from "./chunk-WJCN2IXI.js";
22
22
  import {
23
23
  relativePartReference
24
- } from "./chunk-AXWPJRY6.js";
24
+ } from "./chunk-36XGIPOG.js";
25
25
  import {
26
26
  OfficeError
27
- } from "./chunk-KJ3PEDI2.js";
27
+ } from "./chunk-Q73EMLLZ.js";
28
28
 
29
29
  // packages/safe-bash-presentation-engine/src/masters.ts
30
30
  var relns = "http://schemas.openxmlformats.org/package/2006/relationships";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  themeColorSlots,
3
3
  validateColor
4
- } from "./chunk-7AVN3OBH.js";
4
+ } from "./chunk-RHYJVTJO.js";
5
5
  import {
6
6
  readXmlPercentage
7
- } from "./chunk-KCTV4NVX.js";
7
+ } from "./chunk-CRV2Q3PB.js";
8
8
  import {
9
9
  callableConstructor
10
10
  } from "./chunk-HR2Y6YEP.js";
@@ -13,10 +13,10 @@ import {
13
13
  PropertyAccessError,
14
14
  TypeError,
15
15
  ValueError
16
- } from "./chunk-NXCMXD74.js";
16
+ } from "./chunk-S6R3IB36.js";
17
17
  import {
18
18
  OfficeError
19
- } from "./chunk-KJ3PEDI2.js";
19
+ } from "./chunk-Q73EMLLZ.js";
20
20
 
21
21
  // packages/safe-bash-presentation-engine/src/enum-definition.ts
22
22
  function defineEnum(values) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  PatchError
3
- } from "./chunk-DPR5CYQV.js";
3
+ } from "./chunk-XITDDJFT.js";
4
4
 
5
5
  // packages/safe-bash-command-apply-patch/src/parser.ts
6
6
  import { resolvePath } from "../../safe-bash-contracts/index.js";