@poe-platform/safe-bash 0.1.812 → 0.1.813

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 (329) hide show
  1. package/dist/audio-ast/id3-source.d.ts +27 -0
  2. package/dist/audio-ast/index.d.ts +4 -0
  3. package/dist/audio-ast/index.js +996 -596
  4. package/dist/audio-ast/mp3-source.d.ts +18 -0
  5. package/dist/audio-ast/ogg-source.d.ts +25 -0
  6. package/dist/audio-ast/ogg-stream-source.d.ts +22 -0
  7. package/dist/image-ast/index.js +139 -9
  8. package/dist/mp4-ast/containers/adapters.d.ts +7 -0
  9. package/dist/office-xml/retained-xml-document.d.ts +8 -0
  10. package/dist/pdf-ast/ast.d.ts +2 -0
  11. package/dist/pdf-ast/content/dictionary-cursor.d.ts +15 -0
  12. package/dist/pdf-ast/content/range-operator-parser.d.ts +4 -0
  13. package/dist/pdf-ast/content/stored-dictionary.d.ts +10 -0
  14. package/dist/pdf-ast/cos/lexer.d.ts +8 -5
  15. package/dist/pdf-ast/cos/object-reader.d.ts +4 -3
  16. package/dist/pdf-ast/cos/range-parser.d.ts +4 -0
  17. package/dist/pdf-ast/cos/retained-objects.d.ts +1 -0
  18. package/dist/pdf-ast/cos/retained-writer.d.ts +1 -0
  19. package/dist/pdf-ast/cos/value-parser.d.ts +9 -0
  20. package/dist/pdf-ast/edit/retained-append-attachments.d.ts +13 -0
  21. package/dist/pdf-ast/edit/retained-bookmarks.d.ts +13 -0
  22. package/dist/pdf-ast/edit/retained-graph.d.ts +6 -0
  23. package/dist/pdf-ast/edit/retained-save.d.ts +2 -0
  24. package/dist/pdf-ast/edit/retained-stamps.d.ts +9 -0
  25. package/dist/pdf-ast/fonts/resolve.d.ts +3 -1
  26. package/dist/pdf-ast/index.d.ts +3 -1
  27. package/dist/pdf-ast/index.js +1557 -770
  28. package/dist/safe-bash/audio-ast.browser.js +6 -1
  29. package/dist/safe-bash/chunks/{chunk-HHSOUC3Z.js → chunk-HPQE675Q.js} +1 -1
  30. package/dist/safe-bash/chunks/{chunk-BUYRKFW2.js → chunk-I6ECNJMR.js} +1 -1
  31. package/dist/safe-bash/chunks/{pdftk-WRYEP3CA.js → pdftk-Y2TX74LY.js} +2 -1
  32. package/dist/safe-bash/command-chunks/biff-4ALVARRF-7SRX6R6N.js +5192 -0
  33. package/dist/safe-bash/command-chunks/{chunk-EHSM5ZQS.js → chunk-2DGJOOXM.js} +8 -8
  34. package/dist/safe-bash/command-chunks/{chunk-Q6S57NOQ.js → chunk-2E2H7MBH.js} +7 -7
  35. package/dist/safe-bash/command-chunks/{chunk-MMBZTYXO.js → chunk-2PQRZDNR.js} +221 -0
  36. package/dist/safe-bash/command-chunks/{chunk-NARD63DY.js → chunk-2V6FOLXV.js} +22 -66
  37. package/dist/safe-bash/command-chunks/{chunk-56NYSX65.js → chunk-2Z3WRRFT.js} +9 -9
  38. package/dist/safe-bash/command-chunks/chunk-3D24WDND.js +63 -0
  39. package/dist/safe-bash/command-chunks/{chunk-47NEG4UO.js → chunk-3JST2Q7G.js} +219 -43
  40. package/dist/safe-bash/command-chunks/{chunk-WGG6G2KG.js → chunk-3LJAXFH5.js} +7 -7
  41. package/dist/safe-bash/command-chunks/{chunk-AHA6IWAJ.js → chunk-3TYDSGAH.js} +6 -6
  42. package/dist/safe-bash/command-chunks/{chunk-YSMNXMAO.js → chunk-3Y4XZB24.js} +4 -4
  43. package/dist/safe-bash/command-chunks/{chunk-ZIIO6GRY.js → chunk-4PBNMKAT.js} +7 -7
  44. package/dist/safe-bash/command-chunks/{chunk-JFYWVQ4V.js → chunk-4Z6W5EOC.js} +8 -8
  45. package/dist/safe-bash/command-chunks/{chunk-GEM47B2P.js → chunk-57DDYKE5.js} +7 -7
  46. package/dist/safe-bash/command-chunks/{chunk-4CKFNXRN.js → chunk-5IFRAI7Y.js} +1 -1
  47. package/dist/safe-bash/command-chunks/{chunk-RHYJVTJO.js → chunk-5KGEZ3RW.js} +2 -2
  48. package/dist/safe-bash/command-chunks/{chunk-A5FZBR7X.js → chunk-5MFDRSGG.js} +4 -4
  49. package/dist/safe-bash/command-chunks/{chunk-7GKKMNL6.js → chunk-5P6I2T63.js} +8 -8
  50. package/dist/safe-bash/command-chunks/{chunk-6M6TM5Z5.js → chunk-5VQVZPP3.js} +3 -3
  51. package/dist/safe-bash/command-chunks/{chunk-MIRL7HTF.js → chunk-6244HYJY.js} +1 -1
  52. package/dist/safe-bash/command-chunks/chunk-63EMPQ7Z.js +115 -0
  53. package/dist/safe-bash/command-chunks/{chunk-XRVKWGVQ.js → chunk-6CY5BHBS.js} +6 -6
  54. package/dist/safe-bash/command-chunks/{chunk-XVP6V5K3.js → chunk-6IWE7PTK.js} +6 -6
  55. package/dist/safe-bash/command-chunks/{chunk-6QBMND4A.js → chunk-6SRHWVEB.js} +1 -1
  56. package/dist/safe-bash/command-chunks/chunk-6ZHQB453.js +35 -0
  57. package/dist/safe-bash/command-chunks/chunk-73NYFNAS.js +173 -0
  58. package/dist/safe-bash/command-chunks/{chunk-2JSDKQ4J.js → chunk-7NXTEWPR.js} +119 -44
  59. package/dist/safe-bash/command-chunks/{chunk-554Z6IKP.js → chunk-7PRL6RJ6.js} +2 -2
  60. package/dist/safe-bash/command-chunks/{chunk-SDTPO2VV.js → chunk-7PZHWMK6.js} +7 -7
  61. package/dist/safe-bash/command-chunks/{chunk-XZ2FWFNV.js → chunk-7QZ2HP2F.js} +6 -6
  62. package/dist/safe-bash/command-chunks/{chunk-OEJM666F.js → chunk-7UC2Q6Z6.js} +5 -5
  63. package/dist/safe-bash/command-chunks/{chunk-COKYZUBW.js → chunk-AJI55RS7.js} +1 -1
  64. package/dist/safe-bash/command-chunks/{chunk-WXRYDALR.js → chunk-BBAB7LC4.js} +4 -4
  65. package/dist/safe-bash/command-chunks/{chunk-QYMEASQ6.js → chunk-BEHUSUOY.js} +4 -4
  66. package/dist/safe-bash/command-chunks/{chunk-Z2JW6M2D.js → chunk-BK7ISUJL.js} +3 -3
  67. package/dist/safe-bash/command-chunks/{chunk-33YCKZZX.js → chunk-C5KLFZGT.js} +6 -6
  68. package/dist/safe-bash/command-chunks/{chunk-TVH4JORU.js → chunk-C5QDEB3I.js} +3 -3
  69. package/dist/safe-bash/command-chunks/{chunk-N4R2SHSS.js → chunk-CCZZVCHX.js} +2 -2
  70. package/dist/safe-bash/command-chunks/{chunk-2VLAXKTS.js → chunk-CTDC4LJT.js} +121 -85
  71. package/dist/safe-bash/command-chunks/{chunk-S6R3IB36.js → chunk-D55REQA3.js} +1 -1
  72. package/dist/safe-bash/command-chunks/{chunk-Y4EYCZFT.js → chunk-D6WJY6QO.js} +10 -10
  73. package/dist/safe-bash/command-chunks/{chunk-2CORNDGF.js → chunk-DBLHCJJU.js} +2 -2
  74. package/dist/safe-bash/command-chunks/{chunk-SPW4GW4Z.js → chunk-DFI7QF3M.js} +2 -2
  75. package/dist/safe-bash/command-chunks/{chunk-456PHA3L.js → chunk-DMCI6T6N.js} +1 -1
  76. package/dist/safe-bash/command-chunks/{chunk-TW73OXPR.js → chunk-EJTNVXWF.js} +6 -6
  77. package/dist/safe-bash/command-chunks/{chunk-QD7ZRDUN.js → chunk-ET2VPDUA.js} +1 -1
  78. package/dist/safe-bash/command-chunks/{chunk-CJQSAATC.js → chunk-EXOQGXEU.js} +26 -26
  79. package/dist/safe-bash/command-chunks/{chunk-CRV2Q3PB.js → chunk-EZ4NQIPL.js} +1 -1
  80. package/dist/safe-bash/command-chunks/chunk-FWKLBDMK.js +0 -0
  81. package/dist/safe-bash/command-chunks/{chunk-22MOB45U.js → chunk-FWPVQGYK.js} +6 -6
  82. package/dist/safe-bash/command-chunks/{chunk-QC5RMGSA.js → chunk-G3RUXKVY.js} +3 -3
  83. package/dist/safe-bash/command-chunks/{chunk-JYUJAF4L.js → chunk-G7NENPYV.js} +4 -0
  84. package/dist/safe-bash/command-chunks/{chunk-KCOJA7EM.js → chunk-GKILM4HZ.js} +7 -7
  85. package/dist/safe-bash/command-chunks/{chunk-HTVIYLVB.js → chunk-GNXTMSYN.js} +4 -4
  86. package/dist/safe-bash/command-chunks/{chunk-D2ASPM7R.js → chunk-GOBUDKZ3.js} +3 -3
  87. package/dist/safe-bash/command-chunks/{chunk-RNSKXOG3.js → chunk-GVWVRPG6.js} +6 -6
  88. package/dist/safe-bash/command-chunks/{chunk-FDCIPJBQ.js → chunk-HCKYUQ3L.js} +7 -7
  89. package/dist/safe-bash/command-chunks/{chunk-AGLK7OJR.js → chunk-HDSIIQBS.js} +1 -1
  90. package/dist/safe-bash/command-chunks/{chunk-DM2CPMB4.js → chunk-HKOMXGJS.js} +2 -2
  91. package/dist/safe-bash/command-chunks/{chunk-IT7TAC3F.js → chunk-HVW53ARH.js} +16 -16
  92. package/dist/safe-bash/command-chunks/{chunk-M7QE2MN7.js → chunk-I4GMCWAT.js} +6 -6
  93. package/dist/safe-bash/command-chunks/{chunk-HWQ2UHMT.js → chunk-IHSOOSNC.js} +9 -9
  94. package/dist/safe-bash/command-chunks/{chunk-LCZDBW55.js → chunk-JAHJWVGF.js} +5 -5
  95. package/dist/safe-bash/command-chunks/{chunk-MOZD7RUY.js → chunk-JORIVUPM.js} +27 -11
  96. package/dist/safe-bash/command-chunks/{chunk-PMAM4N33.js → chunk-JUJHYPYL.js} +9 -9
  97. package/dist/safe-bash/command-chunks/{chunk-ENT3IV2G.js → chunk-KBUBSMCQ.js} +12 -12
  98. package/dist/safe-bash/command-chunks/{chunk-ZXR6LXV5.js → chunk-KCE5D4Z4.js} +48 -4
  99. package/dist/safe-bash/command-chunks/{chunk-FIIAYCWS.js → chunk-KZ5ODST6.js} +2 -2
  100. package/dist/safe-bash/command-chunks/{chunk-PNGDJA6M.js → chunk-LD7BONZY.js} +2 -2
  101. package/dist/safe-bash/command-chunks/{chunk-KJ4XXZIL.js → chunk-M3Z5PU2M.js} +582 -59
  102. package/dist/safe-bash/command-chunks/{chunk-LXLLA4PM.js → chunk-MKX4JAZ6.js} +17 -17
  103. package/dist/safe-bash/command-chunks/{chunk-RQIQ75W5.js → chunk-MNHBQBF6.js} +5 -5
  104. package/dist/safe-bash/command-chunks/{chunk-A2CLZMQZ.js → chunk-MPKY37QR.js} +1 -1
  105. package/dist/safe-bash/command-chunks/{chunk-K5GB2YMN.js → chunk-MUUWBZIC.js} +10 -10
  106. package/dist/safe-bash/command-chunks/{chunk-JOCFI7TG.js → chunk-N32GSM3J.js} +1 -1
  107. package/dist/safe-bash/command-chunks/{chunk-EUT24Y5Z.js → chunk-NKTULXVD.js} +8 -8
  108. package/dist/safe-bash/command-chunks/{chunk-5HPU7D36.js → chunk-NMPED6L5.js} +4 -4
  109. package/dist/safe-bash/command-chunks/{chunk-QZZ73J2O.js → chunk-NPFHUS4X.js} +6 -6
  110. package/dist/safe-bash/command-chunks/{chunk-X7FA7ZD5.js → chunk-O675URF4.js} +8 -8
  111. package/dist/safe-bash/command-chunks/{chunk-R6EGGK5M.js → chunk-P7EL2FWW.js} +7 -7
  112. package/dist/safe-bash/command-chunks/{chunk-YS25EI54.js → chunk-PCCFLPUQ.js} +2 -2
  113. package/dist/safe-bash/command-chunks/{chunk-RRL3Y562.js → chunk-PI6MOMHA.js} +11 -11
  114. package/dist/safe-bash/command-chunks/{chunk-26VCZHLJ.js → chunk-PIOQBOEK.js} +1 -1
  115. package/dist/safe-bash/command-chunks/chunk-PK36TVXB.js +175 -0
  116. package/dist/safe-bash/command-chunks/{chunk-3Q247UDJ.js → chunk-PKLJRB7W.js} +264 -129
  117. package/dist/safe-bash/command-chunks/{chunk-6CCQI6XZ.js → chunk-PSCOXGCA.js} +12 -12
  118. package/dist/safe-bash/command-chunks/{chunk-XPD636C4.js → chunk-PVGZMLC6.js} +3 -3
  119. package/dist/safe-bash/command-chunks/{chunk-JQVHUSDD.js → chunk-PXWS3Q7L.js} +5 -5
  120. package/dist/safe-bash/command-chunks/{chunk-HDJVJTCK.js → chunk-QFF5KBOM.js} +9 -9
  121. package/dist/safe-bash/command-chunks/{chunk-MPUHH2KR.js → chunk-QM2HZJSJ.js} +3 -3
  122. package/dist/safe-bash/command-chunks/{chunk-UAXSE3XE.js → chunk-R2BMZAHG.js} +5 -5
  123. package/dist/safe-bash/command-chunks/{chunk-KB7DUBVL.js → chunk-RGOQKIG6.js} +5 -5
  124. package/dist/safe-bash/command-chunks/{chunk-D2KZ66W4.js → chunk-RLCQ7BN3.js} +187 -39
  125. package/dist/safe-bash/command-chunks/{chunk-B5LDP7AA.js → chunk-S2N2V5U4.js} +2 -2
  126. package/dist/safe-bash/command-chunks/{chunk-OA75SGN2.js → chunk-SGPCXAG7.js} +7 -7
  127. package/dist/safe-bash/command-chunks/{chunk-QUM3SYAJ.js → chunk-SYSX46IV.js} +3 -3
  128. package/dist/safe-bash/command-chunks/chunk-T3E5RV3U.js +737 -0
  129. package/dist/safe-bash/command-chunks/{chunk-YORJDX4V.js → chunk-T5ERNELL.js} +4 -4
  130. package/dist/safe-bash/command-chunks/{chunk-ZEX53S5I.js → chunk-T6C5QP7T.js} +6368 -6230
  131. package/dist/safe-bash/command-chunks/{chunk-ATTWQVR2.js → chunk-TKRLZIFI.js} +17 -17
  132. package/dist/safe-bash/command-chunks/{chunk-ZMHEGDU2.js → chunk-TODWFDYB.js} +2 -2
  133. package/dist/safe-bash/command-chunks/{chunk-XVLWZTPY.js → chunk-TQEB4DH4.js} +543 -144
  134. package/dist/safe-bash/command-chunks/{chunk-36XGIPOG.js → chunk-U5TWQFZY.js} +1 -1
  135. package/dist/safe-bash/command-chunks/{chunk-APEWTWCC.js → chunk-UAF4IX5H.js} +6 -6
  136. package/dist/safe-bash/command-chunks/{chunk-6VPQ3CDZ.js → chunk-V37D6AHO.js} +5 -5
  137. package/dist/safe-bash/command-chunks/{chunk-RID6VYS3.js → chunk-V6XBEYPC.js} +8 -8
  138. package/dist/safe-bash/command-chunks/{chunk-WJCN2IXI.js → chunk-VQOINPVF.js} +2 -2
  139. package/dist/safe-bash/command-chunks/{chunk-W5YSINXC.js → chunk-VVWXY6IA.js} +6 -6
  140. package/dist/safe-bash/command-chunks/{chunk-HKATEVAP.js → chunk-WPVBUVFK.js} +6 -6
  141. package/dist/safe-bash/command-chunks/{chunk-UYWSIIUX.js → chunk-X53AEG36.js} +7 -7
  142. package/dist/safe-bash/command-chunks/{chunk-L5MCW6CM.js → chunk-X64XGIXZ.js} +9 -155
  143. package/dist/safe-bash/command-chunks/{chunk-Q73EMLLZ.js → chunk-X6RHJ6YN.js} +84 -5
  144. package/dist/safe-bash/command-chunks/{chunk-7PVHO47B.js → chunk-XG6UWQV5.js} +6 -6
  145. package/dist/safe-bash/command-chunks/{chunk-NQDIT667.js → chunk-XIDGHIGB.js} +5 -5
  146. package/dist/safe-bash/command-chunks/{chunk-CV7M2QJU.js → chunk-XLYIVBAR.js} +7 -7
  147. package/dist/safe-bash/command-chunks/{chunk-WVMHRNXZ.js → chunk-YUXTK3XA.js} +3 -3
  148. package/dist/safe-bash/command-chunks/{chunk-SPLOIABU.js → chunk-YXD6VGVG.js} +3 -3
  149. package/dist/safe-bash/command-chunks/{chunk-2ZFLMWOX.js → chunk-Z5BIM5B7.js} +1 -1
  150. package/dist/safe-bash/command-chunks/chunk-ZYLGNIGA.js +156 -0
  151. package/dist/safe-bash/command-chunks/{command-engine-BCUQGJJ4.js → command-engine-X3OLN7N6.js} +150 -67
  152. package/dist/safe-bash/command-chunks/{engine-LAUEWYSQ-DQCEI5HE.js → engine-XUCIFZ7V-LJFGZM6O.js} +1 -1
  153. package/dist/safe-bash/command-chunks/paradox-4FCZE53D-LQPGVMEL.js +365 -0
  154. package/dist/safe-bash/commands/pandoc/index.browser.js +1 -1
  155. package/dist/safe-bash/full-core.browser.js +2 -2
  156. package/dist/safe-bash/plugins/index.browser.js +2 -2
  157. package/dist/safe-bash-command-diff/diff.js +1 -1
  158. package/dist/safe-bash-command-diff/index.js +1 -1
  159. package/dist/safe-bash-command-ffmpeg/index.js +1 -1
  160. package/dist/safe-bash-command-ffprobe/index.js +2 -2
  161. package/dist/safe-bash-command-ffprobe/media.d.ts +3 -1
  162. package/dist/safe-bash-command-ffprobe/media.js +2 -2
  163. package/dist/safe-bash-command-html-to-markdown/budget.js +2 -1
  164. package/dist/safe-bash-command-html-to-markdown/entities.js +4 -3
  165. package/dist/safe-bash-command-html-to-markdown/index.js +564 -110
  166. package/dist/safe-bash-command-html-to-markdown/input.js +6 -5
  167. package/dist/safe-bash-command-html-to-markdown/options.js +2 -1
  168. package/dist/safe-bash-command-html-to-markdown/parser.js +5 -4
  169. package/dist/safe-bash-command-html-to-markdown/render.js +6 -5
  170. package/dist/safe-bash-command-html-to-markdown/text.js +3 -2
  171. package/dist/safe-bash-command-htmlq/index.js +361 -37
  172. package/dist/safe-bash-command-htmlq/tree.d.ts +3 -2
  173. package/dist/safe-bash-command-pandoc/command.js +7 -7
  174. package/dist/safe-bash-command-pandoc/index.js +55 -55
  175. package/dist/safe-bash-command-patch/index.js +6 -6
  176. package/dist/safe-bash-command-patch/patch-envelope.js +53 -3
  177. package/dist/safe-bash-command-patch/patch-formats.d.ts +2 -2
  178. package/dist/safe-bash-command-patch/patch-formats.js +2 -2
  179. package/dist/safe-bash-command-patch/patch-gnu-reject.d.ts +2 -1
  180. package/dist/safe-bash-command-patch/patch-gnu-reject.js +4 -3
  181. package/dist/safe-bash-command-patch/patch-publication.js +2 -1
  182. package/dist/safe-bash-command-patch/patch.js +6 -6
  183. package/dist/safe-bash-command-patch/unified.d.ts +10 -2
  184. package/dist/safe-bash-command-patch/unified.js +1 -1
  185. package/dist/safe-bash-command-pdftk/index.d.ts +6 -2
  186. package/dist/safe-bash-command-pdftk/index.js +830 -271
  187. package/dist/safe-bash-command-pptx/command-engine.d.ts +3 -0
  188. package/dist/safe-bash-command-pptx/engine.js +1 -1
  189. package/dist/safe-bash-command-pptx/index.js +9 -2
  190. package/dist/safe-bash-command-soffice/index.js +1 -1
  191. package/dist/safe-bash-command-ssconvert/index.js +2 -2
  192. package/dist/safe-bash-command-xmllint/index.js +22 -31
  193. package/dist/safe-bash-presentation-engine/accessibility.js +31 -30
  194. package/dist/safe-bash-presentation-engine/animation-editing.js +16 -15
  195. package/dist/safe-bash-presentation-engine/animations.js +16 -15
  196. package/dist/safe-bash-presentation-engine/backgrounds.js +17 -16
  197. package/dist/safe-bash-presentation-engine/bytes.js +3 -3
  198. package/dist/safe-bash-presentation-engine/chart-editing.js +34 -33
  199. package/dist/safe-bash-presentation-engine/chart-object-operations.js +25 -24
  200. package/dist/safe-bash-presentation-engine/charts.js +31 -30
  201. package/dist/safe-bash-presentation-engine/command-placeholder.js +59 -56
  202. package/dist/safe-bash-presentation-engine/comments.js +17 -16
  203. package/dist/safe-bash-presentation-engine/connector-operations.js +32 -31
  204. package/dist/safe-bash-presentation-engine/connectors.js +29 -28
  205. package/dist/safe-bash-presentation-engine/content-types.js +4 -4
  206. package/dist/safe-bash-presentation-engine/creation.js +6 -6
  207. package/dist/safe-bash-presentation-engine/diff.js +32 -31
  208. package/dist/safe-bash-presentation-engine/drawing-enums.d.ts +10 -10
  209. package/dist/safe-bash-presentation-engine/drawing-format.js +20 -19
  210. package/dist/safe-bash-presentation-engine/drawing-operations.js +31 -30
  211. package/dist/safe-bash-presentation-engine/drawing-schema.js +21 -20
  212. package/dist/safe-bash-presentation-engine/equations.js +17 -16
  213. package/dist/safe-bash-presentation-engine/errors.js +2 -2
  214. package/dist/safe-bash-presentation-engine/fields.js +17 -16
  215. package/dist/safe-bash-presentation-engine/font-metrics.js +3 -3
  216. package/dist/safe-bash-presentation-engine/image-extraction.js +20 -19
  217. package/dist/safe-bash-presentation-engine/image-formatting.js +32 -31
  218. package/dist/safe-bash-presentation-engine/image-insertion.js +18 -17
  219. package/dist/safe-bash-presentation-engine/image-replacement.js +21 -20
  220. package/dist/safe-bash-presentation-engine/image-value.js +4 -4
  221. package/dist/safe-bash-presentation-engine/images.js +19 -18
  222. package/dist/safe-bash-presentation-engine/index.d.ts +5 -1
  223. package/dist/safe-bash-presentation-engine/index.js +109 -96
  224. package/dist/safe-bash-presentation-engine/layouts.js +16 -15
  225. package/dist/safe-bash-presentation-engine/length.js +3 -3
  226. package/dist/safe-bash-presentation-engine/links.js +16 -15
  227. package/dist/safe-bash-presentation-engine/masters.js +15 -14
  228. package/dist/safe-bash-presentation-engine/media-editing.js +24 -23
  229. package/dist/safe-bash-presentation-engine/media-extraction.js +17 -16
  230. package/dist/safe-bash-presentation-engine/media.js +16 -15
  231. package/dist/safe-bash-presentation-engine/memberships.js +15 -14
  232. package/dist/safe-bash-presentation-engine/notes.js +16 -15
  233. package/dist/safe-bash-presentation-engine/ole-enum.js +4 -4
  234. package/dist/safe-bash-presentation-engine/ole-insertion.js +20 -19
  235. package/dist/safe-bash-presentation-engine/opaque-objects.js +9 -9
  236. package/dist/safe-bash-presentation-engine/package-reader.js +5 -5
  237. package/dist/safe-bash-presentation-engine/package-tools.d.ts +3 -0
  238. package/dist/safe-bash-presentation-engine/package-tools.js +27 -17
  239. package/dist/safe-bash-presentation-engine/package-uri.js +3 -3
  240. package/dist/safe-bash-presentation-engine/package-writer.js +4 -4
  241. package/dist/safe-bash-presentation-engine/presentation-model.js +58 -55
  242. package/dist/safe-bash-presentation-engine/presentation-settings.js +14 -13
  243. package/dist/safe-bash-presentation-engine/properties.js +16 -15
  244. package/dist/safe-bash-presentation-engine/relationships.js +4 -4
  245. package/dist/safe-bash-presentation-engine/resource-limits.js +1 -1
  246. package/dist/safe-bash-presentation-engine/retained-archive-staging.d.ts +19 -0
  247. package/dist/safe-bash-presentation-engine/retained-extraction-output.d.ts +18 -0
  248. package/dist/safe-bash-presentation-engine/retained-inspection.js +14 -12
  249. package/dist/safe-bash-presentation-engine/retained-package-extraction.d.ts +22 -0
  250. package/dist/safe-bash-presentation-engine/retained-package-packing.d.ts +19 -0
  251. package/dist/safe-bash-presentation-engine/retained-package.d.ts +2 -0
  252. package/dist/safe-bash-presentation-engine/retained-package.js +6 -4
  253. package/dist/safe-bash-presentation-engine/retained-text.js +19 -17
  254. package/dist/safe-bash-presentation-engine/retained-xml-parts.d.ts +5 -1
  255. package/dist/safe-bash-presentation-engine/retained-xml-publication.d.ts +18 -0
  256. package/dist/safe-bash-presentation-engine/retained-xml-replacement.d.ts +13 -0
  257. package/dist/safe-bash-presentation-engine/sanitize.js +17 -16
  258. package/dist/safe-bash-presentation-engine/selectors.js +10 -10
  259. package/dist/safe-bash-presentation-engine/shape-groups.js +31 -30
  260. package/dist/safe-bash-presentation-engine/shape-operations.js +30 -29
  261. package/dist/safe-bash-presentation-engine/shape-path-operations.js +32 -31
  262. package/dist/safe-bash-presentation-engine/shape-paths.js +16 -15
  263. package/dist/safe-bash-presentation-engine/shape-presets.js +3 -3
  264. package/dist/safe-bash-presentation-engine/shape-selection.js +31 -30
  265. package/dist/safe-bash-presentation-engine/shape-transforms.js +18 -17
  266. package/dist/safe-bash-presentation-engine/shapes.d.ts +1 -1
  267. package/dist/safe-bash-presentation-engine/shapes.js +27 -26
  268. package/dist/safe-bash-presentation-engine/slide-copy.js +17 -16
  269. package/dist/safe-bash-presentation-engine/slide-import.js +18 -17
  270. package/dist/safe-bash-presentation-engine/slide-merge-split.js +20 -19
  271. package/dist/safe-bash-presentation-engine/slide-model.js +43 -42
  272. package/dist/safe-bash-presentation-engine/slide-removal.js +18 -17
  273. package/dist/safe-bash-presentation-engine/slide-transfer-budget.js +9 -9
  274. package/dist/safe-bash-presentation-engine/slides.js +19 -16
  275. package/dist/safe-bash-presentation-engine/table-operations.js +33 -32
  276. package/dist/safe-bash-presentation-engine/table-spans.js +32 -31
  277. package/dist/safe-bash-presentation-engine/tables.js +31 -30
  278. package/dist/safe-bash-presentation-engine/tags.js +16 -15
  279. package/dist/safe-bash-presentation-engine/template-bindings.js +33 -32
  280. package/dist/safe-bash-presentation-engine/template-repeat.js +40 -39
  281. package/dist/safe-bash-presentation-engine/text-fitting.js +27 -26
  282. package/dist/safe-bash-presentation-engine/text-frames.js +27 -26
  283. package/dist/safe-bash-presentation-engine/text-paragraphs.js +27 -26
  284. package/dist/safe-bash-presentation-engine/text-reading.js +11 -11
  285. package/dist/safe-bash-presentation-engine/text-replacement.js +17 -16
  286. package/dist/safe-bash-presentation-engine/text-runs.js +20 -19
  287. package/dist/safe-bash-presentation-engine/themes.js +16 -15
  288. package/dist/safe-bash-presentation-engine/transitions.js +16 -15
  289. package/dist/safe-bash-presentation-engine/validation.js +10 -9
  290. package/dist/safe-bash-presentation-engine/xml-parts.d.ts +2 -0
  291. package/dist/safe-bash-presentation-engine/xml-parts.js +23 -15
  292. package/dist/safe-bash-presentation-engine/xml-view.js +3 -3
  293. package/dist/safe-bash-presentation-engine/xml.js +3 -3
  294. package/dist/safe-bash-regex-engine/index.js +1 -1
  295. package/dist/safe-bash-regex-engine/python-glob.js +1 -1
  296. package/dist/safe-bash-regex-engine/text/regex.d.ts +19 -0
  297. package/dist/safe-bash-regex-engine/text/regex.js +1 -1
  298. package/dist/safe-bash-xml-engine/document.js +3 -3
  299. package/dist/safe-bash-xml-engine/evaluate.js +1 -1
  300. package/dist/safe-bash-xml-engine/index.d.ts +1 -0
  301. package/dist/safe-bash-xml-engine/index.js +8 -4
  302. package/dist/safe-bash-xml-engine/query.js +2 -2
  303. package/dist/safe-bash-xml-engine/recovery.d.ts +10 -0
  304. package/dist/safe-bash-xml-engine/stored-document.d.ts +1 -1
  305. package/dist/safe-bash-xml-engine/stored-document.js +1 -1
  306. package/dist/safe-bash-xml-engine/stored-evaluate.js +1 -1
  307. package/dist/spreadsheet-engine/formulas/functions/python-printf.js +56 -33
  308. package/dist/spreadsheet-format-xls/biff-encrypted-properties.d.ts +1 -1
  309. package/dist/spreadsheet-format-xls/biff-encrypted-properties.js +47 -18
  310. package/dist/spreadsheet-format-xls/biff-properties-merge.d.ts +6 -2
  311. package/dist/spreadsheet-format-xls/biff-properties-merge.js +413 -296
  312. package/dist/spreadsheet-format-xls/biff-properties-write.js +40 -23
  313. package/dist/spreadsheet-format-xls/biff-properties.js +3 -68
  314. package/dist/spreadsheet-format-xls/biff-property-index.d.ts +23 -0
  315. package/dist/spreadsheet-format-xls/biff-property-index.js +93 -0
  316. package/dist/spreadsheet-format-xls/biff-property-name.d.ts +4 -0
  317. package/dist/spreadsheet-format-xls/biff-property-name.js +114 -0
  318. package/dist/spreadsheet-format-xls/biff-property-text.d.ts +6 -0
  319. package/dist/spreadsheet-format-xls/biff-property-text.js +68 -0
  320. package/dist/spreadsheet-format-xls/biff-property-transcode.d.ts +5 -0
  321. package/dist/spreadsheet-format-xls/biff-property-transcode.js +45 -0
  322. package/package.json +6 -3
  323. package/dist/safe-bash/command-chunks/biff-YKPDH35C-MVQIWNKV.js +0 -4974
  324. package/dist/safe-bash/command-chunks/chunk-5Q22ZLNC.js +0 -127
  325. package/dist/safe-bash/command-chunks/chunk-JKLOBSMP.js +0 -56
  326. package/dist/safe-bash/command-chunks/chunk-JYTESTBS.js +0 -99
  327. package/dist/safe-bash/command-chunks/chunk-ZEGNRZV2.js +0 -333
  328. package/dist/safe-bash/command-chunks/paradox-ZWWXYY4J-JYOSWSBL.js +0 -362
  329. package/dist/spreadsheet-format-xls/biff-properties-layout.js +0 -56
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  drawingColorSchema,
3
3
  drawingUpdateSchema
4
- } from "./chunk-2CORNDGF.js";
4
+ } from "./chunk-DBLHCJJU.js";
5
5
  import {
6
6
  MSO_LANGUAGE_ID
7
- } from "./chunk-COKYZUBW.js";
7
+ } from "./chunk-AJI55RS7.js";
8
8
  import {
9
9
  MSO_TEXT_UNDERLINE_TYPE,
10
10
  validateTextRunOptions
11
- } from "./chunk-XZ2FWFNV.js";
11
+ } from "./chunk-7QZ2HP2F.js";
12
12
  import {
13
13
  validateDrawingUpdate
14
- } from "./chunk-QYMEASQ6.js";
14
+ } from "./chunk-BEHUSUOY.js";
15
15
  import {
16
16
  defineEnum,
17
17
  defineXmlEnum
18
- } from "./chunk-5HPU7D36.js";
18
+ } from "./chunk-NMPED6L5.js";
19
19
  import {
20
20
  Length
21
- } from "./chunk-6QBMND4A.js";
21
+ } from "./chunk-6SRHWVEB.js";
22
22
  import {
23
23
  PropertyAccessError
24
- } from "./chunk-S6R3IB36.js";
24
+ } from "./chunk-D55REQA3.js";
25
25
  import {
26
26
  OfficeError
27
- } from "./chunk-Q73EMLLZ.js";
27
+ } from "./chunk-X6RHJ6YN.js";
28
28
 
29
29
  // packages/safe-bash-presentation-engine/src/chart-font-operations.ts
30
30
  var owners = [
@@ -2,30 +2,30 @@ import {
2
2
  nodeFor,
3
3
  selected,
4
4
  validateSelection
5
- } from "./chunk-TW73OXPR.js";
5
+ } from "./chunk-EJTNVXWF.js";
6
6
  import {
7
7
  applyShapeUpdate,
8
8
  readShape
9
- } from "./chunk-IT7TAC3F.js";
9
+ } from "./chunk-HVW53ARH.js";
10
10
  import {
11
11
  Length
12
- } from "./chunk-6QBMND4A.js";
12
+ } from "./chunk-6SRHWVEB.js";
13
13
  import {
14
14
  attr,
15
15
  child,
16
16
  loadShared,
17
17
  required
18
- } from "./chunk-56NYSX65.js";
18
+ } from "./chunk-2Z3WRRFT.js";
19
19
  import {
20
20
  SelectionError,
21
21
  readSelectionIndex
22
- } from "./chunk-X7FA7ZD5.js";
22
+ } from "./chunk-O675URF4.js";
23
23
  import {
24
24
  parseXmlPart
25
- } from "./chunk-554Z6IKP.js";
25
+ } from "./chunk-7PRL6RJ6.js";
26
26
  import {
27
27
  OfficeError
28
- } from "./chunk-Q73EMLLZ.js";
28
+ } from "./chunk-X6RHJ6YN.js";
29
29
 
30
30
  // packages/safe-bash-presentation-engine/src/shape-selection.ts
31
31
  var kinds = ["sp", "pic", "cxnSp", "graphicFrame", "grpSp"];
@@ -1209,6 +1209,221 @@ var Pattern = class {
1209
1209
  const groups = captured ? [full, text.slice(groupStart, groupEnd)] : [full];
1210
1210
  return { start: found, end: matchEnd, groups };
1211
1211
  }
1212
+ async supportsStoredTest(budget) {
1213
+ await this.prepare(budget);
1214
+ return (this.dialect === "sed" || this.dialect === "awk") && this.code.every((instruction) => instruction.kind === "character" || instruction.kind === "boundary" || instruction.kind === "match" || instruction.kind === "save" || instruction.kind === "jump" || instruction.kind === "split" || instruction.kind === "backreference" || (instruction.kind === "begin" || instruction.kind === "end") && !instruction.multiline && !instruction.trailingNewlines);
1215
+ }
1216
+ /** Replay captures as bounded spans; input-dependent search state belongs to the caller. */
1217
+ async testStored(source, budget) {
1218
+ if (!await this.supportsStoredTest(budget)) throw new ProgramError("pattern requires unsupported stored matching");
1219
+ if (await this.supportsStreamTest(budget)) return this.testStream({ async *[Symbol.asyncIterator]() {
1220
+ for (let position = 0; position < source.length; position += 4096) yield await source.read(position, Math.min(4096, source.length - position));
1221
+ } }, budget);
1222
+ const fields = 2 + (this.groupCount + 1) * 2;
1223
+ if (fields * 16 > budget.maxBufferBytes) throw new ProgramError("text buffer limit exceeded");
1224
+ const checkpoint = async () => {
1225
+ const pause = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1226
+ if (pause) await pause;
1227
+ };
1228
+ await checkpoint();
1229
+ for (let start = 0; start <= source.length; ) {
1230
+ const initial = new Array(fields).fill(NaN);
1231
+ initial[0] = 0;
1232
+ initial[1] = start;
1233
+ await source.enqueue(initial);
1234
+ for (; ; ) {
1235
+ budget.step();
1236
+ await checkpoint();
1237
+ const state = await source.dequeue();
1238
+ if (!state) break;
1239
+ const pc = state[0], position = state[1], instruction = this.code[pc];
1240
+ const enqueue = async (next, at = position) => {
1241
+ state[0] = next;
1242
+ state[1] = at;
1243
+ await source.enqueue(state);
1244
+ };
1245
+ if (instruction.kind === "match") {
1246
+ await checkpoint();
1247
+ return true;
1248
+ }
1249
+ if (instruction.kind === "character") {
1250
+ const text2 = await source.read(position, Math.min(2, source.length - position));
1251
+ if (text2) {
1252
+ const character = String.fromCodePoint(text2.codePointAt(0));
1253
+ if (instruction.accepts(character)) await enqueue(pc + 1, position + character.length);
1254
+ }
1255
+ } else if (instruction.kind === "backreference") {
1256
+ const begin = state[2 + instruction.index * 2], end = state[3 + instruction.index * 2];
1257
+ if (!Number.isFinite(begin) || !Number.isFinite(end) || position + end - begin > source.length) continue;
1258
+ let matches = true;
1259
+ for (let offset = 0; offset < end - begin && matches; ) {
1260
+ const count = Math.min(4096, end - begin - offset);
1261
+ const expected = await source.read(begin + offset, count), actual = await source.read(position + offset, count);
1262
+ for (let index = 0; index < count; index++) {
1263
+ if (instruction.ignoreCase ? expected[index].toLowerCase() !== actual[index].toLowerCase() : expected[index] !== actual[index]) {
1264
+ matches = false;
1265
+ break;
1266
+ }
1267
+ }
1268
+ budget.step(count);
1269
+ await checkpoint();
1270
+ offset += count;
1271
+ }
1272
+ if (matches) await enqueue(pc + 1, position + end - begin);
1273
+ } else if (instruction.kind === "split") {
1274
+ await enqueue(instruction.first);
1275
+ await enqueue(instruction.second);
1276
+ } else if (instruction.kind === "jump") await enqueue(instruction.target);
1277
+ else if (instruction.kind === "save") {
1278
+ for (let slot = instruction.slot + 2; slot < Math.min(instruction.clearUntil ?? 0, fields - 2); slot++) state[slot + 2] = NaN;
1279
+ state[instruction.slot + 2] = position;
1280
+ await enqueue(pc + 1);
1281
+ } else if (instruction.kind === "boundary") {
1282
+ const before = position > 0 && instruction.accepts(await source.read(position - 1, 1));
1283
+ const after = position < source.length && instruction.accepts(await source.read(position, 1));
1284
+ const boundary = instruction.edge === "start" ? !before && after : instruction.edge === "end" ? before && !after : before !== after;
1285
+ if (boundary === instruction.positive) await enqueue(pc + 1);
1286
+ } else if (instruction.kind === "begin" ? position === 0 : position === source.length) await enqueue(pc + 1);
1287
+ }
1288
+ if (this.anchored || start === source.length) break;
1289
+ const text = await source.read(start, Math.min(2, source.length - start));
1290
+ start += text.codePointAt(0) > 65535 ? 2 : 1;
1291
+ }
1292
+ await checkpoint();
1293
+ return false;
1294
+ }
1295
+ /** Existence-only streaming does not retain captures or the input text. */
1296
+ async supportsStreamTest(budget) {
1297
+ await this.prepare(budget);
1298
+ return (this.dialect === "sed" || this.dialect === "awk") && this.code.every((instruction) => instruction.kind === "character" || instruction.kind === "boundary" || instruction.kind === "match" || instruction.kind === "save" || instruction.kind === "jump" || instruction.kind === "split" || (instruction.kind === "begin" || instruction.kind === "end") && !instruction.multiline && !instruction.trailingNewlines);
1299
+ }
1300
+ /** Working state is proportional to the compiled pattern, independent of input size. */
1301
+ async testStream(source, budget) {
1302
+ if (!await this.supportsStreamTest(budget)) throw new ProgramError("pattern requires non-streaming matching");
1303
+ const initial = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1304
+ if (initial) await initial;
1305
+ if (this.literalMatch) {
1306
+ const { value, anchoredStart, anchoredEnd } = this.literalMatch;
1307
+ if (value.length * 4 > budget.maxBufferBytes) throw new ProgramError("text buffer limit exceeded");
1308
+ const prefix = new Uint32Array(value.length);
1309
+ let units2 = 0;
1310
+ const work = () => {
1311
+ budget.step();
1312
+ if (++units2 < 64) return;
1313
+ units2 = 0;
1314
+ return budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1315
+ };
1316
+ for (let index = 1, length = 0; index < value.length; index++) {
1317
+ while (length && value[index] !== value[length]) {
1318
+ length = prefix[length - 1];
1319
+ const pause2 = work();
1320
+ if (pause2) await pause2;
1321
+ }
1322
+ if (value[index] === value[length]) length++;
1323
+ prefix[index] = length;
1324
+ const pause = work();
1325
+ if (pause) await pause;
1326
+ }
1327
+ let matched = 0, position = 0, lastEnd = value.length ? -1 : 0;
1328
+ for await (const chunk of source) {
1329
+ const pause = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1330
+ if (pause) await pause;
1331
+ if (!value.length && !anchoredEnd) return true;
1332
+ for (let index = 0; index < chunk.length; index++) {
1333
+ while (matched && chunk[index] !== value[matched]) {
1334
+ matched = prefix[matched - 1];
1335
+ const pause3 = work();
1336
+ if (pause3) await pause3;
1337
+ }
1338
+ if (chunk[index] === value[matched]) matched++;
1339
+ position++;
1340
+ const pause2 = work();
1341
+ if (pause2) await pause2;
1342
+ if (matched === value.length) {
1343
+ if (!anchoredStart || position === value.length) {
1344
+ lastEnd = position;
1345
+ if (!anchoredEnd) return true;
1346
+ }
1347
+ matched = matched ? prefix[matched - 1] : 0;
1348
+ }
1349
+ }
1350
+ }
1351
+ const final2 = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1352
+ if (final2) await final2;
1353
+ return anchoredEnd ? lastEnd === position : lastEnd >= 0;
1354
+ }
1355
+ if (this.code.length * 7 > budget.maxBufferBytes) throw new ProgramError("text buffer limit exceeded");
1356
+ let current = new Uint8Array(this.code.length), next = new Uint8Array(this.code.length);
1357
+ const visited = new Uint8Array(this.code.length), pending = new Uint32Array(this.code.length);
1358
+ let previous, beginning = true, units = 0;
1359
+ const advance = async (character) => {
1360
+ visited.fill(0);
1361
+ next.fill(0);
1362
+ let count = 0;
1363
+ const push = (pc) => {
1364
+ if (!visited[pc]) {
1365
+ visited[pc] = 1;
1366
+ pending[count++] = pc;
1367
+ }
1368
+ };
1369
+ push(0);
1370
+ budget.step(current.length);
1371
+ for (let pc = 0; pc < current.length; pc++) if (current[pc]) push(pc);
1372
+ while (count) {
1373
+ budget.step();
1374
+ if (++units === 64) {
1375
+ units = 0;
1376
+ const pause = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1377
+ if (pause) await pause;
1378
+ }
1379
+ const pc = pending[--count], instruction = this.code[pc];
1380
+ if (instruction.kind === "match") return true;
1381
+ if (instruction.kind === "character") {
1382
+ if (character !== void 0 && instruction.accepts(character)) next[pc + 1] = 1;
1383
+ } else if (instruction.kind === "split") {
1384
+ push(instruction.first);
1385
+ push(instruction.second);
1386
+ } else if (instruction.kind === "jump") push(instruction.target);
1387
+ else if (instruction.kind === "save") push(pc + 1);
1388
+ else if (instruction.kind === "begin") {
1389
+ if (beginning) push(pc + 1);
1390
+ } else if (instruction.kind === "end") {
1391
+ if (character === void 0) push(pc + 1);
1392
+ } else if (instruction.kind === "boundary") {
1393
+ const before = previous !== void 0 && instruction.accepts(previous);
1394
+ const after = character !== void 0 && instruction.accepts(character[0]);
1395
+ const boundary = instruction.edge === "start" ? !before && after : instruction.edge === "end" ? before && !after : before !== after;
1396
+ if (boundary === instruction.positive) push(pc + 1);
1397
+ }
1398
+ }
1399
+ [current, next] = [next, current];
1400
+ previous = character?.slice(-1);
1401
+ beginning = false;
1402
+ return false;
1403
+ };
1404
+ let high = "";
1405
+ for await (const chunk of source) {
1406
+ const pause = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1407
+ if (pause) await pause;
1408
+ let offset = 0;
1409
+ if (high && chunk.length) {
1410
+ const low = chunk.charCodeAt(0);
1411
+ const character = low >= 56320 && low <= 57343 ? high + chunk[offset++] : high;
1412
+ high = "";
1413
+ if (await advance(character)) return true;
1414
+ }
1415
+ while (offset < chunk.length) {
1416
+ const character = String.fromCodePoint(chunk.codePointAt(offset));
1417
+ offset += character.length;
1418
+ if (offset === chunk.length && character.length === 1 && character.charCodeAt(0) >= 55296 && character.charCodeAt(0) <= 56319) high = character;
1419
+ else if (await advance(character)) return true;
1420
+ }
1421
+ }
1422
+ const final = budget.checkpointSync ? budget.checkpointSync() : budget.checkpoint();
1423
+ if (final) await final;
1424
+ if (high && await advance(high)) return true;
1425
+ return advance(void 0);
1426
+ }
1212
1427
  async find(text, budget, from = 0, continuation = from) {
1213
1428
  this.assertInstructionLimit(budget);
1214
1429
  if (!this.code.length) await this.prepare(budget);
@@ -2225,6 +2440,12 @@ var BytePattern = class extends Pattern {
2225
2440
  if (this.usesUnicode(budget)) await this.unicode.prepare(budget);
2226
2441
  else await super.prepare(budget);
2227
2442
  }
2443
+ async supportsStreamTest(budget) {
2444
+ return !this.usesUnicode(budget) && await super.supportsStreamTest(budget);
2445
+ }
2446
+ async supportsStoredTest(budget) {
2447
+ return !this.usesUnicode(budget) && await super.supportsStoredTest(budget);
2448
+ }
2228
2449
  canFindSync() {
2229
2450
  return super.canFindSync() && this.unicode.canFindSync();
2230
2451
  }
@@ -1,46 +1,49 @@
1
+ import {
2
+ stageRetainedArchive
3
+ } from "./chunk-3D24WDND.js";
1
4
  import {
2
5
  openPackageArchive
3
- } from "./chunk-ZXR6LXV5.js";
6
+ } from "./chunk-KCE5D4Z4.js";
4
7
  import {
5
8
  openRetainedPresentationIndex,
6
9
  stageRetainedOutput,
7
10
  streamJson
8
- } from "./chunk-L5MCW6CM.js";
11
+ } from "./chunk-X64XGIXZ.js";
9
12
  import {
10
13
  writePackageArchive
11
- } from "./chunk-DM2CPMB4.js";
14
+ } from "./chunk-HKOMXGJS.js";
12
15
  import {
13
16
  SelectionError,
14
17
  readSelectionIndex
15
- } from "./chunk-X7FA7ZD5.js";
18
+ } from "./chunk-O675URF4.js";
16
19
  import {
17
20
  readPackage
18
- } from "./chunk-XPD636C4.js";
21
+ } from "./chunk-PVGZMLC6.js";
19
22
  import {
20
23
  readBinary
21
- } from "./chunk-PNGDJA6M.js";
24
+ } from "./chunk-LD7BONZY.js";
22
25
  import {
23
26
  openRetainedPresentationValidation,
24
27
  validatePresentation
25
- } from "./chunk-RNSKXOG3.js";
28
+ } from "./chunk-GVWVRPG6.js";
26
29
  import {
27
30
  openRetainedContentTypes,
28
31
  openRetainedRelationshipGraph
29
- } from "./chunk-QC5RMGSA.js";
32
+ } from "./chunk-G3RUXKVY.js";
30
33
  import {
31
34
  parseXmlPart
32
- } from "./chunk-554Z6IKP.js";
35
+ } from "./chunk-7PRL6RJ6.js";
33
36
  import {
34
37
  parseContentTypes
35
- } from "./chunk-WJCN2IXI.js";
38
+ } from "./chunk-VQOINPVF.js";
36
39
  import {
37
40
  readRelationshipGraph
38
- } from "./chunk-ZMHEGDU2.js";
41
+ } from "./chunk-TODWFDYB.js";
39
42
  import {
40
43
  asciiKey,
41
44
  partName,
42
45
  relativePartReference
43
- } from "./chunk-36XGIPOG.js";
46
+ } from "./chunk-U5TWQFZY.js";
44
47
  import {
45
48
  OfficeError,
46
49
  RetainedValues,
@@ -50,7 +53,7 @@ import {
50
53
  openRetainedXmlDocument,
51
54
  resolveOfficeResources,
52
55
  stageRetainedXmlEdits
53
- } from "./chunk-Q73EMLLZ.js";
56
+ } from "./chunk-X6RHJ6YN.js";
54
57
 
55
58
  // packages/safe-bash-presentation-engine/src/retained-slide-settings.ts
56
59
  import { PagedStorage } from "@poe-platform/safe-fs/storage";
@@ -193,20 +196,9 @@ async function openRetainedSlideSettings(archive, fingerprint, options, settings
193
196
  const presentation = await openRetainedXmlDocument(archive.read(index.records.main), resources);
194
197
  let failed = false;
195
198
  try {
196
- let stack = pages.allocate(16);
197
- await write(stack, [0, presentation.reference(presentation.root)]);
198
- while (stack) {
199
- const frame = await row(stack, 2);
200
- stack = frame[0];
201
- const node = await presentation.node(frame[1]);
202
- if (node.kind !== "element") continue;
199
+ for await (const node of presentation.elements(presentation.root)) {
203
200
  if (await equal(presentation.namespace(node), literal("http://schemas.openxmlformats.org/markup-compatibility/2006"))) unsupported("Conditional presentation structure cannot be changed.");
204
201
  if (await equal(presentation.raw(node.localName), literal("modifyVerifier")) && await equal(presentation.namespace(node), presentation.namespace(presentation.root))) unsupported("Protected presentations cannot be changed.");
205
- for await (const child2 of presentation.children(node)) {
206
- const pointer = pages.allocate(16);
207
- await write(pointer, [stack, presentation.reference(child2)]);
208
- stack = pointer;
209
- }
210
202
  }
211
203
  } catch (error) {
212
204
  failed = true;
@@ -331,7 +323,6 @@ async function openRetainedSlideSettings(archive, fingerprint, options, settings
331
323
  }
332
324
 
333
325
  // packages/safe-bash-presentation-engine/src/retained-slide-publication.ts
334
- import { PagedStorage as PagedStorage2 } from "@poe-platform/safe-fs/storage";
335
326
  import { sha256 } from "@noble/hashes/sha2.js";
336
327
  async function stageRetainedSlideSettings(input, options, settings, output) {
337
328
  const signal = settings.signal ?? new AbortController().signal;
@@ -343,53 +334,18 @@ async function stageRetainedSlideSettings(input, options, settings, output) {
343
334
  const hex = (bytes) => Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join("");
344
335
  const before = hex(hash.digest());
345
336
  const archive = await openPackageArchive(input, settings);
346
- let mutation, pages, response;
347
- let closed = false, closing;
348
- const check = () => {
349
- if (closed) throw new OfficeError("invalid-handle", "Slide output is closed.", "publish");
350
- signal.throwIfAborted();
351
- };
337
+ let mutation, staged, response;
338
+ let closing;
352
339
  const close = () => {
353
- closed = true;
354
340
  return closing ??= (async () => {
355
- const results = await Promise.allSettled([response?.close(), mutation?.close(), pages?.close(), archive.close()]);
341
+ const results = await Promise.allSettled([response?.close(), mutation?.close(), staged?.close(), archive.close()]);
356
342
  for (const result of results) if (result.status === "rejected") throw result.reason;
357
343
  })();
358
344
  };
359
345
  try {
360
346
  mutation = await openRetainedSlideSettings(archive, before, options, settings);
361
- let size = input.size, fingerprint = before, start = 0;
362
- if (mutation.changed) {
363
- const working = settings.workingStorage;
364
- pages = new PagedStorage2({ fs: working.fs, cwd: working.directory, env: {}, signal }, (working.cacheBytes ?? 1024 * 1024) / 16384);
365
- start = pages.allocate(0);
366
- size = 0;
367
- const digest = sha256.create();
368
- await archive.rewrite({ async write(bytes2) {
369
- check();
370
- for (let offset = 0; offset < bytes2.length; offset += 16384) {
371
- check();
372
- const owned = new Uint8Array(bytes2.subarray(offset, offset + 16384));
373
- await pages.append(owned);
374
- digest.update(owned);
375
- size += owned.length;
376
- }
377
- } }, { replace: mutation.replacement });
378
- fingerprint = hex(digest.digest());
379
- }
380
- async function* bytes() {
381
- check();
382
- if (!pages) {
383
- yield* input.stream();
384
- check();
385
- return;
386
- }
387
- for (let offset = 0; offset < size; offset += 16384) {
388
- check();
389
- yield await pages.read(start + offset, Math.min(16384, size - offset));
390
- }
391
- check();
392
- }
347
+ staged = await stageRetainedArchive(input, before, archive, mutation, settings);
348
+ const { bytes, size, fingerprint } = staged;
393
349
  async function* locations() {
394
350
  for await (const location of mutation.targets()) yield { ...location, fingerprint };
395
351
  }
@@ -1,30 +1,30 @@
1
1
  import {
2
2
  writePackageArchive
3
- } from "./chunk-DM2CPMB4.js";
3
+ } from "./chunk-HKOMXGJS.js";
4
4
  import {
5
5
  readSelectionIndex
6
- } from "./chunk-X7FA7ZD5.js";
6
+ } from "./chunk-O675URF4.js";
7
7
  import {
8
8
  readPackage
9
- } from "./chunk-XPD636C4.js";
9
+ } from "./chunk-PVGZMLC6.js";
10
10
  import {
11
11
  readBinary
12
- } from "./chunk-PNGDJA6M.js";
12
+ } from "./chunk-LD7BONZY.js";
13
13
  import {
14
14
  validatePresentation
15
- } from "./chunk-RNSKXOG3.js";
15
+ } from "./chunk-GVWVRPG6.js";
16
16
  import {
17
17
  parseXmlPart
18
- } from "./chunk-554Z6IKP.js";
18
+ } from "./chunk-7PRL6RJ6.js";
19
19
  import {
20
20
  parseContentTypes
21
- } from "./chunk-WJCN2IXI.js";
21
+ } from "./chunk-VQOINPVF.js";
22
22
  import {
23
23
  relativePartReference
24
- } from "./chunk-36XGIPOG.js";
24
+ } from "./chunk-U5TWQFZY.js";
25
25
  import {
26
26
  OfficeError
27
- } from "./chunk-Q73EMLLZ.js";
27
+ } from "./chunk-X6RHJ6YN.js";
28
28
 
29
29
  // packages/safe-bash-presentation-engine/src/masters.ts
30
30
  var relns = "http://schemas.openxmlformats.org/package/2006/relationships";
@@ -0,0 +1,63 @@
1
+ import {
2
+ OfficeError
3
+ } from "./chunk-X6RHJ6YN.js";
4
+
5
+ // packages/safe-bash-presentation-engine/src/retained-archive-staging.ts
6
+ import { PagedStorage } from "@poe-platform/safe-fs/storage";
7
+ import { sha256 } from "@noble/hashes/sha2.js";
8
+ async function stageRetainedArchive(input, originalFingerprint, archive, mutation, settings) {
9
+ const signal = settings.signal ?? new AbortController().signal;
10
+ let pages, closed = false, closing;
11
+ const check = () => {
12
+ if (closed) throw new OfficeError("invalid-handle", "Archive output is closed.", "publish");
13
+ signal.throwIfAborted();
14
+ };
15
+ const close = () => {
16
+ closed = true;
17
+ return closing ??= pages?.close() ?? Promise.resolve();
18
+ };
19
+ const hex = (bytes) => Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join("");
20
+ try {
21
+ let size = input.size, fingerprint = originalFingerprint, start = 0;
22
+ if (mutation.changed) {
23
+ const working = settings.workingStorage;
24
+ pages = new PagedStorage({ fs: working.fs, cwd: working.directory, env: {}, signal }, (working.cacheBytes ?? 1024 * 1024) / 16384);
25
+ start = pages.allocate(0);
26
+ size = 0;
27
+ const digest = sha256.create();
28
+ await archive.rewrite({ async write(bytes2) {
29
+ check();
30
+ for (let offset = 0; offset < bytes2.length; offset += 16384) {
31
+ check();
32
+ const owned = new Uint8Array(bytes2.subarray(offset, offset + 16384));
33
+ await pages.append(owned);
34
+ digest.update(owned);
35
+ size += owned.length;
36
+ }
37
+ } }, { replace: mutation.replacement, sourceOrder: "name" });
38
+ fingerprint = hex(digest.digest());
39
+ }
40
+ async function* bytes() {
41
+ check();
42
+ if (!pages) {
43
+ yield* input.stream();
44
+ check();
45
+ return;
46
+ }
47
+ for (let offset = 0; offset < size; offset += 16384) {
48
+ check();
49
+ yield await pages.read(start + offset, Math.min(16384, size - offset));
50
+ }
51
+ check();
52
+ }
53
+ return Object.freeze({ bytes, size, fingerprint, close });
54
+ } catch (error) {
55
+ await close().catch(() => {
56
+ });
57
+ throw error;
58
+ }
59
+ }
60
+
61
+ export {
62
+ stageRetainedArchive
63
+ };