@poe-platform/safe-bash 0.1.815 → 0.1.816

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 (585) hide show
  1. package/dist/image-ast/index.js +1 -1
  2. package/dist/mp4-ast/codecs.d.ts +3 -0
  3. package/dist/mp4-ast/esds-source.d.ts +7 -0
  4. package/dist/mp4-ast/index.d.ts +5 -1
  5. package/dist/mp4-ast/mp4-codec-metadata.d.ts +48 -0
  6. package/dist/mp4-ast/mp4-codec-source.d.ts +8 -0
  7. package/dist/mp4-ast/mp4-packets-source.d.ts +11 -0
  8. package/dist/pdf-ast/ast.d.ts +6 -0
  9. package/dist/pdf-ast/content/evaluator.d.ts +4 -1
  10. package/dist/pdf-ast/content/stored-dictionary.d.ts +15 -1
  11. package/dist/pdf-ast/content/stored-record.d.ts +6 -0
  12. package/dist/pdf-ast/cos/retained-writer.d.ts +1 -0
  13. package/dist/pdf-ast/cos/value-parser.d.ts +5 -0
  14. package/dist/pdf-ast/edit/retained-graph.d.ts +1 -0
  15. package/dist/pdf-ast/edit/retained-page-copy.d.ts +10 -0
  16. package/dist/pdf-ast/extract/images.d.ts +2 -1
  17. package/dist/pdf-ast/fonts/resolve.d.ts +1 -0
  18. package/dist/pdf-ast/index.d.ts +2 -0
  19. package/dist/pdf-ast/index.js +1091 -322
  20. package/dist/pdf-ast/render/raster.d.ts +14 -0
  21. package/dist/pdf-ast/render/svg-image-stream.d.ts +6 -0
  22. package/dist/pdf-ast/render/svg-path-stream.d.ts +15 -0
  23. package/dist/pdf-ast/retained-document.d.ts +1 -1
  24. package/dist/safe-bash/chunks/{chunk-I6ECNJMR.js → chunk-AXGI5JVL.js} +1 -1
  25. package/dist/safe-bash/chunks/{chunk-TPG55BAQ.js → chunk-FQRI5AS5.js} +1 -1
  26. package/dist/safe-bash/chunks/{chunk-TWWGAW4M.js → chunk-HD6DWOAC.js} +1 -1
  27. package/dist/safe-bash/chunks/{chunk-5JCZEXEM.js → chunk-SXSEF5E2.js} +12 -7
  28. package/dist/safe-bash/command-chunks/biff-UBP2BZLK-JPODPKS3.js +5448 -0
  29. package/dist/safe-bash/command-chunks/{chunk-S7HIOT7Z.js → chunk-26JE5JEB.js} +4 -4
  30. package/dist/safe-bash/command-chunks/{chunk-AG2SNMP5.js → chunk-2ALHVXEM.js} +2 -2
  31. package/dist/safe-bash/command-chunks/{chunk-4YLACJHE.js → chunk-2IMIKROX.js} +6 -6
  32. package/dist/safe-bash/command-chunks/{chunk-MYZ46FQL.js → chunk-2QZUAZTH.js} +1 -1
  33. package/dist/safe-bash/command-chunks/{chunk-YAD7EV4N.js → chunk-2TWXRJPB.js} +11 -11
  34. package/dist/safe-bash/command-chunks/{chunk-NYFYTL5G.js → chunk-345YBIHP.js} +27 -27
  35. package/dist/safe-bash/command-chunks/{chunk-3MG5EAMX.js → chunk-35DU6I2M.js} +5 -5
  36. package/dist/safe-bash/command-chunks/{chunk-FSVJ67G5.js → chunk-3DWFXESW.js} +2 -2
  37. package/dist/safe-bash/command-chunks/{chunk-TKCUGMRZ.js → chunk-3K5CVXUV.js} +18 -18
  38. package/dist/safe-bash/command-chunks/{chunk-6LPSKLLD.js → chunk-3MUFXGA2.js} +3 -3
  39. package/dist/safe-bash/command-chunks/{chunk-44F5TOHZ.js → chunk-3PM46VWH.js} +15 -15
  40. package/dist/safe-bash/command-chunks/{chunk-6QYSF7I2.js → chunk-3ZWFE4CK.js} +7 -7
  41. package/dist/safe-bash/command-chunks/{chunk-NEYITAAO.js → chunk-45DKGZYO.js} +744 -328
  42. package/dist/safe-bash/command-chunks/{chunk-U3C6IT2C.js → chunk-4772DJKS.js} +14 -10
  43. package/dist/safe-bash/command-chunks/{chunk-FOONI6BD.js → chunk-4ABR3KGK.js} +7 -7
  44. package/dist/safe-bash/command-chunks/{chunk-7KZ5LWV2.js → chunk-4IDV763L.js} +1 -1
  45. package/dist/safe-bash/command-chunks/{chunk-FGGHYUWR.js → chunk-4QEJPP3K.js} +102 -7
  46. package/dist/safe-bash/command-chunks/{chunk-RV5AGXOV.js → chunk-4X2MPZXW.js} +2 -2
  47. package/dist/safe-bash/command-chunks/{chunk-LNTEV56A.js → chunk-4YFTJS5U.js} +2 -2
  48. package/dist/safe-bash/command-chunks/{chunk-6XES7Z4G.js → chunk-57PK2QFX.js} +12 -12
  49. package/dist/safe-bash/command-chunks/{chunk-42MEXZBJ.js → chunk-5GDF5FAS.js} +1 -1
  50. package/dist/safe-bash/command-chunks/{chunk-BS3ZEQGT.js → chunk-5KZMR6AJ.js} +18 -16
  51. package/dist/safe-bash/command-chunks/{chunk-ZU2KJMXO.js → chunk-5MNQTHED.js} +10 -10
  52. package/dist/safe-bash/command-chunks/{chunk-W25EIKDJ.js → chunk-5NC2IQMQ.js} +1 -1
  53. package/dist/safe-bash/command-chunks/{chunk-KY4LCHUF.js → chunk-5O45KGW5.js} +1 -1
  54. package/dist/safe-bash/command-chunks/{chunk-GYM5ICK4.js → chunk-5V7WIQ2D.js} +7 -7
  55. package/dist/safe-bash/command-chunks/{chunk-GPGLTWNR.js → chunk-5XUWGUGN.js} +16 -11
  56. package/dist/safe-bash/command-chunks/{chunk-SUTHGUD3.js → chunk-5YL453ZF.js} +34 -34
  57. package/dist/safe-bash/command-chunks/{chunk-IHXZMAMY.js → chunk-62RG3GHF.js} +6 -6
  58. package/dist/safe-bash/command-chunks/{chunk-P2LT6TGR.js → chunk-6EZWG56T.js} +9 -9
  59. package/dist/safe-bash/command-chunks/{chunk-CCMAHM3I.js → chunk-6JGICYHP.js} +2 -2
  60. package/dist/safe-bash/command-chunks/{chunk-AWPI4DZR.js → chunk-6KJDTKE4.js} +3 -3
  61. package/dist/safe-bash/command-chunks/{chunk-FUQMEUAT.js → chunk-6M3JTPKE.js} +8 -8
  62. package/dist/safe-bash/command-chunks/{chunk-H33D4R26.js → chunk-6RLWPB44.js} +4 -4
  63. package/dist/safe-bash/command-chunks/{chunk-3GRMU7TM.js → chunk-6W4RMBFH.js} +6 -6
  64. package/dist/safe-bash/command-chunks/{chunk-RIVKF77R.js → chunk-6YF2QADH.js} +6 -6
  65. package/dist/safe-bash/command-chunks/{chunk-LEO4VRIN.js → chunk-77ROD2TR.js} +5 -5
  66. package/dist/safe-bash/command-chunks/{chunk-XNGM3W5R.js → chunk-7B2MHKIW.js} +1 -1
  67. package/dist/safe-bash/command-chunks/{chunk-RFMHNTTF.js → chunk-7OCTMVYJ.js} +1 -1
  68. package/dist/safe-bash/command-chunks/{chunk-DBLQUZGN.js → chunk-7PYDVQPB.js} +2 -2
  69. package/dist/safe-bash/command-chunks/{chunk-AM5LANIE.js → chunk-A2L3U7DW.js} +7 -7
  70. package/dist/safe-bash/command-chunks/{chunk-UYGQEQIP.js → chunk-A4P37F3P.js} +5 -5
  71. package/dist/safe-bash/command-chunks/{chunk-ADHFF2IM.js → chunk-A5SPMSKD.js} +9 -9
  72. package/dist/safe-bash/command-chunks/{chunk-ENEIE44W.js → chunk-A6OTPNNI.js} +3 -3
  73. package/dist/safe-bash/command-chunks/chunk-AF2IO57Q.js +733 -0
  74. package/dist/safe-bash/command-chunks/{chunk-AFPXADZG.js → chunk-AHD3CGAY.js} +4 -4
  75. package/dist/safe-bash/command-chunks/{chunk-YW2VYN4V.js → chunk-ALD53QFL.js} +74 -27
  76. package/dist/safe-bash/command-chunks/{chunk-4B2ZUGLT.js → chunk-ARE267HR.js} +5 -5
  77. package/dist/safe-bash/command-chunks/{chunk-OTF2AJ5M.js → chunk-AYQPJQJR.js} +6 -6
  78. package/dist/safe-bash/command-chunks/{chunk-2VVJRVYM.js → chunk-B6XTAKKQ.js} +1 -1
  79. package/dist/safe-bash/command-chunks/{chunk-GCHB7VNX.js → chunk-BIJW6QWB.js} +17 -17
  80. package/dist/safe-bash/command-chunks/{chunk-OVEPYULA.js → chunk-BKK4MS3V.js} +1 -1
  81. package/dist/safe-bash/command-chunks/{chunk-3EB2FSAN.js → chunk-BOVDUJ3A.js} +7 -7
  82. package/dist/safe-bash/command-chunks/{chunk-SEPUP6TZ.js → chunk-BSTABZIK.js} +1 -1
  83. package/dist/safe-bash/command-chunks/{chunk-ATHHWPSE.js → chunk-BZRWZ6GO.js} +1 -1
  84. package/dist/safe-bash/command-chunks/{chunk-BZMNC7Q5.js → chunk-CGJ7GMHO.js} +7 -7
  85. package/dist/safe-bash/command-chunks/{chunk-RGDOYWOD.js → chunk-CHZE6FNT.js} +2 -2
  86. package/dist/safe-bash/command-chunks/{chunk-V7E3PZOK.js → chunk-CKA7ZROU.js} +7 -7
  87. package/dist/safe-bash/command-chunks/{chunk-MEM2ZPMI.js → chunk-CKIXC7AO.js} +3 -3
  88. package/dist/safe-bash/command-chunks/{chunk-Y54L4P4J.js → chunk-CORUUCS2.js} +5 -5
  89. package/dist/safe-bash/command-chunks/{chunk-QDVDBN2N.js → chunk-DBZCTL7C.js} +150 -35
  90. package/dist/safe-bash/command-chunks/{chunk-6ZGCKUAM.js → chunk-DIRK47GT.js} +1 -1
  91. package/dist/safe-bash/command-chunks/{chunk-WYZG3DRR.js → chunk-DM5WURQL.js} +2 -2
  92. package/dist/safe-bash/command-chunks/{chunk-EBHOZIBS.js → chunk-DOVWHVHI.js} +6 -6
  93. package/dist/safe-bash/command-chunks/{chunk-ZIGENXGC.js → chunk-DXOXUKQB.js} +8 -8
  94. package/dist/safe-bash/command-chunks/{chunk-JR3Q6QNL.js → chunk-DZOKH5BL.js} +7 -7
  95. package/dist/safe-bash/command-chunks/{chunk-6EINUY5G.js → chunk-E22EAYJN.js} +54 -12
  96. package/dist/safe-bash/command-chunks/{chunk-3EASXF5D.js → chunk-E4TF5W6O.js} +2 -2
  97. package/dist/safe-bash/command-chunks/{chunk-MLOYUXUV.js → chunk-EJ4UP7DA.js} +31 -9
  98. package/dist/safe-bash/command-chunks/{chunk-USGZN2KE.js → chunk-ENMJHB2C.js} +5 -5
  99. package/dist/safe-bash/command-chunks/{chunk-ZSQZHFWS.js → chunk-ERWIJYCS.js} +7 -7
  100. package/dist/safe-bash/command-chunks/{chunk-S2QNBAN6.js → chunk-ET6LMDEX.js} +12 -12
  101. package/dist/safe-bash/command-chunks/{chunk-6XGDWFNQ.js → chunk-EWC56JNI.js} +5 -5
  102. package/dist/safe-bash/command-chunks/{chunk-EQWFKNHJ.js → chunk-EZDWPTYB.js} +19 -19
  103. package/dist/safe-bash/command-chunks/{chunk-CQBACD2V.js → chunk-F2NF6FHV.js} +2 -2
  104. package/dist/safe-bash/command-chunks/{chunk-NFII726L.js → chunk-FAU2KL6I.js} +2 -2
  105. package/dist/safe-bash/command-chunks/{chunk-4EHY6J2Z.js → chunk-FB2WPI3M.js} +5 -5
  106. package/dist/safe-bash/command-chunks/{chunk-2PKBXGXD.js → chunk-FEBTT5NH.js} +5 -5
  107. package/dist/safe-bash/command-chunks/chunk-FGARVKAX.js +704 -0
  108. package/dist/safe-bash/command-chunks/{chunk-N4MUBJCT.js → chunk-FGHSE3RZ.js} +1 -1
  109. package/dist/safe-bash/command-chunks/{chunk-WBKB7HBZ.js → chunk-FHQOFEQK.js} +8 -8
  110. package/dist/safe-bash/command-chunks/{chunk-3ZRCL756.js → chunk-FJLSYX5P.js} +7 -7
  111. package/dist/safe-bash/command-chunks/{chunk-PMWW7KSB.js → chunk-FJSD43VF.js} +1 -1
  112. package/dist/safe-bash/command-chunks/{chunk-XKAUKLF7.js → chunk-FLSXHLJG.js} +9 -9
  113. package/dist/safe-bash/command-chunks/{chunk-3EW7GYHM.js → chunk-FR63MJSO.js} +7 -7
  114. package/dist/safe-bash/command-chunks/{chunk-NRFTYZ2R.js → chunk-FUYZUETI.js} +6 -6
  115. package/dist/safe-bash/command-chunks/{chunk-JUHOL5KB.js → chunk-G3FK5VVG.js} +1 -1
  116. package/dist/safe-bash/command-chunks/{chunk-4UPKVQWH.js → chunk-G3LUT475.js} +6 -6
  117. package/dist/safe-bash/command-chunks/{chunk-Q7UZTMF4.js → chunk-GAROGIVU.js} +1 -1
  118. package/dist/safe-bash/command-chunks/{chunk-4RRYWHED.js → chunk-GMBUOYTN.js} +4 -4
  119. package/dist/safe-bash/command-chunks/{chunk-FYYFV6PW.js → chunk-GR4ONCQ5.js} +6 -6
  120. package/dist/safe-bash/command-chunks/{chunk-XTEIT5CI.js → chunk-GTOMW4VV.js} +1 -1
  121. package/dist/safe-bash/command-chunks/{chunk-OVQP6KH5.js → chunk-H56BSMFQ.js} +6 -6
  122. package/dist/safe-bash/command-chunks/{chunk-RQYPFLZJ.js → chunk-HOJ7WDTS.js} +6 -6
  123. package/dist/safe-bash/command-chunks/{chunk-BLIFGBIO.js → chunk-HOKPYTHQ.js} +2 -2
  124. package/dist/safe-bash/command-chunks/chunk-HQEYSSZV.js +152 -0
  125. package/dist/safe-bash/command-chunks/{chunk-NEMUPUUB.js → chunk-ICJH6A73.js} +7 -7
  126. package/dist/safe-bash/command-chunks/{chunk-CSE4VQKG.js → chunk-IJE65P52.js} +3 -3
  127. package/dist/safe-bash/command-chunks/{chunk-MKOIPOXX.js → chunk-IOXMGD2H.js} +3 -3
  128. package/dist/safe-bash/command-chunks/{chunk-LDW3RF7Y.js → chunk-ISFGPCED.js} +12 -12
  129. package/dist/safe-bash/command-chunks/{chunk-S43QRKDC.js → chunk-IVKAFEPO.js} +7 -7
  130. package/dist/safe-bash/command-chunks/{chunk-A347DLRB.js → chunk-IWVANZWH.js} +3 -3
  131. package/dist/safe-bash/command-chunks/{chunk-ZXELXF2H.js → chunk-IZ3SD5S2.js} +4 -4
  132. package/dist/safe-bash/command-chunks/{chunk-HGIMFVI2.js → chunk-J6FNSVHT.js} +5 -5
  133. package/dist/safe-bash/command-chunks/{chunk-GLAF45M7.js → chunk-JA36YOZI.js} +1 -1
  134. package/dist/safe-bash/command-chunks/{chunk-WHNYT34N.js → chunk-K2R7H3KO.js} +1 -1
  135. package/dist/safe-bash/command-chunks/{chunk-HQ2UN2L2.js → chunk-K7VDCBXW.js} +21 -21
  136. package/dist/safe-bash/command-chunks/{chunk-CKEMZUE3.js → chunk-KDBU5Q2N.js} +6 -6
  137. package/dist/safe-bash/command-chunks/{chunk-6VBDJC6V.js → chunk-KDDXLHN7.js} +6 -6
  138. package/dist/safe-bash/command-chunks/{chunk-NEVQWOU6.js → chunk-KLAC2MIZ.js} +10 -10
  139. package/dist/safe-bash/command-chunks/{chunk-QGD64UHJ.js → chunk-KLCHCSIV.js} +1 -1
  140. package/dist/safe-bash/command-chunks/{chunk-CXME4YHU.js → chunk-KM2SMMXZ.js} +59 -201
  141. package/dist/safe-bash/command-chunks/{chunk-RHU44OMN.js → chunk-KXM3HTAF.js} +1 -1
  142. package/dist/safe-bash/command-chunks/{chunk-AVOGFREX.js → chunk-KYIGYYEY.js} +3 -3
  143. package/dist/safe-bash/command-chunks/{chunk-5OM3UIK3.js → chunk-L2VLASZ4.js} +3 -3
  144. package/dist/safe-bash/command-chunks/{chunk-Z7QOSXQC.js → chunk-LECGQSQW.js} +7 -7
  145. package/dist/safe-bash/command-chunks/{chunk-RXQ2G2YK.js → chunk-LFSWLJPR.js} +9 -9
  146. package/dist/safe-bash/command-chunks/{chunk-OSYY6E23.js → chunk-LJ3UYESS.js} +1 -1
  147. package/dist/safe-bash/command-chunks/{chunk-MVLVIMJ6.js → chunk-LMLBQSAM.js} +6 -6
  148. package/dist/safe-bash/command-chunks/{chunk-MGMTRGKM.js → chunk-LNAZ3E4Q.js} +4 -4
  149. package/dist/safe-bash/command-chunks/{chunk-WJ2ERUCQ.js → chunk-LNKZVU5V.js} +1 -1
  150. package/dist/safe-bash/command-chunks/{chunk-WWHMI4S3.js → chunk-LQDANF2B.js} +8 -8
  151. package/dist/safe-bash/command-chunks/{chunk-CIRDVCAZ.js → chunk-LQX7RAF7.js} +7 -7
  152. package/dist/safe-bash/command-chunks/{chunk-SWAKALDJ.js → chunk-LT2YCGC5.js} +10 -10
  153. package/dist/safe-bash/command-chunks/{chunk-Y7AXMCFV.js → chunk-LZY46GYY.js} +8 -8
  154. package/dist/safe-bash/command-chunks/{chunk-VT2PHQ63.js → chunk-MDFNUNK5.js} +15 -15
  155. package/dist/safe-bash/command-chunks/{chunk-YP3WWV5N.js → chunk-MN3BB4WW.js} +4 -4
  156. package/dist/safe-bash/command-chunks/{chunk-WTVJLHMG.js → chunk-MOUCMZZP.js} +1 -1
  157. package/dist/safe-bash/command-chunks/{chunk-IB5QP4LF.js → chunk-MQE77MEQ.js} +3 -3
  158. package/dist/safe-bash/command-chunks/{chunk-FSYMSWJU.js → chunk-MUTARE5I.js} +6 -6
  159. package/dist/safe-bash/command-chunks/{chunk-F762XDNG.js → chunk-MZYQKH26.js} +3 -3
  160. package/dist/safe-bash/command-chunks/{chunk-N6G3345Q.js → chunk-N32AP43V.js} +7 -7
  161. package/dist/safe-bash/command-chunks/{chunk-XU6S3XUZ.js → chunk-N35IJXBK.js} +9 -9
  162. package/dist/safe-bash/command-chunks/{chunk-EVYKV3QI.js → chunk-N3ZH4YYH.js} +3 -3
  163. package/dist/safe-bash/command-chunks/{chunk-VUWXLH3E.js → chunk-N4HWOLGZ.js} +2 -2
  164. package/dist/safe-bash/command-chunks/{chunk-WAT2562G.js → chunk-N5J3IZZK.js} +8042 -7189
  165. package/dist/safe-bash/command-chunks/{chunk-W3ZSWK76.js → chunk-NCNHJRIY.js} +8 -8
  166. package/dist/safe-bash/command-chunks/{chunk-FXCSPPYE.js → chunk-NDALIHKK.js} +20 -20
  167. package/dist/safe-bash/command-chunks/{chunk-BS5JEUEW.js → chunk-NKK76B4V.js} +8 -8
  168. package/dist/safe-bash/command-chunks/{chunk-4EZJV4FZ.js → chunk-NLCUQD7Y.js} +1 -1
  169. package/dist/safe-bash/command-chunks/{chunk-RHDERFMR.js → chunk-O2HNOQQG.js} +5 -5
  170. package/dist/safe-bash/command-chunks/{chunk-G2COZLXX.js → chunk-OBIXFO25.js} +10 -10
  171. package/dist/safe-bash/command-chunks/{chunk-47IAU25U.js → chunk-OCV5ZU35.js} +3 -3
  172. package/dist/safe-bash/command-chunks/{chunk-3YEQI5B7.js → chunk-OFDJJRAD.js} +9 -9
  173. package/dist/safe-bash/command-chunks/{chunk-VDTFVRYX.js → chunk-OFONWWEZ.js} +2 -2
  174. package/dist/safe-bash/command-chunks/{chunk-F4YFTO2K.js → chunk-OHEZQ4QA.js} +9 -9
  175. package/dist/safe-bash/command-chunks/{chunk-JW6WVNTM.js → chunk-OIHQXURE.js} +1 -1
  176. package/dist/safe-bash/command-chunks/{chunk-ZTMZO4IT.js → chunk-ONQP4FNV.js} +1 -1
  177. package/dist/safe-bash/command-chunks/{chunk-K2WOMJOQ.js → chunk-OVUY46QF.js} +1 -1
  178. package/dist/safe-bash/command-chunks/{chunk-DGBQ7QDE.js → chunk-OWCBX5M2.js} +1 -1
  179. package/dist/safe-bash/command-chunks/{chunk-LKGTH2Q7.js → chunk-P462JTNT.js} +5 -5
  180. package/dist/safe-bash/command-chunks/{chunk-5LFGXN3D.js → chunk-P4OWVKMD.js} +6 -6
  181. package/dist/safe-bash/command-chunks/{chunk-46AMTJPE.js → chunk-POGVOCOB.js} +8 -8
  182. package/dist/safe-bash/command-chunks/{chunk-PLMF35XK.js → chunk-PPN53PX3.js} +4 -4
  183. package/dist/safe-bash/command-chunks/{chunk-V5XC43BX.js → chunk-PRO7JOIH.js} +8 -8
  184. package/dist/safe-bash/command-chunks/{chunk-UJERQEJB.js → chunk-PU5DMQGG.js} +1 -1
  185. package/dist/safe-bash/command-chunks/{chunk-IWHNRYER.js → chunk-Q65GWGQR.js} +3 -3
  186. package/dist/safe-bash/command-chunks/{chunk-BLGGAHQW.js → chunk-QCIAX6HZ.js} +1 -1
  187. package/dist/safe-bash/command-chunks/{chunk-ET5SFGRH.js → chunk-QDV2NIFR.js} +1 -1
  188. package/dist/safe-bash/command-chunks/{chunk-Y42KSX63.js → chunk-QMBMZSJF.js} +6 -6
  189. package/dist/safe-bash/command-chunks/{chunk-KUOCGGEU.js → chunk-QNETPOMH.js} +6 -5
  190. package/dist/safe-bash/command-chunks/{chunk-QB72X7FF.js → chunk-QNX5LZBK.js} +7 -7
  191. package/dist/safe-bash/command-chunks/{chunk-LZ2JFMKT.js → chunk-QOKFSYD5.js} +9 -9
  192. package/dist/safe-bash/command-chunks/{chunk-7DOLY7IV.js → chunk-R7LF4XQV.js} +2 -2
  193. package/dist/safe-bash/command-chunks/{chunk-6CDDKNNA.js → chunk-RINR7XPR.js} +36 -10
  194. package/dist/safe-bash/command-chunks/{chunk-MPXMRTMY.js → chunk-ROQ3VNVX.js} +8 -8
  195. package/dist/safe-bash/command-chunks/{chunk-6WNVGCXD.js → chunk-RRAQII52.js} +5 -5
  196. package/dist/safe-bash/command-chunks/{chunk-2BNGPR6Z.js → chunk-RTHYAGKI.js} +2 -2
  197. package/dist/safe-bash/command-chunks/chunk-RTKDZBJS.js +816 -0
  198. package/dist/safe-bash/command-chunks/{chunk-JVKE7YZN.js → chunk-RVWIEXR7.js} +4 -4
  199. package/dist/safe-bash/command-chunks/{chunk-XM5QJCPD.js → chunk-S5ER73EA.js} +8 -8
  200. package/dist/safe-bash/command-chunks/{chunk-YRPXBGRX.js → chunk-SBXS4S6Y.js} +3 -3
  201. package/dist/safe-bash/command-chunks/{chunk-HI6ZYH3W.js → chunk-SHLT5R64.js} +9 -9
  202. package/dist/safe-bash/command-chunks/{chunk-Q5PWYPQV.js → chunk-SICTBSLW.js} +7 -7
  203. package/dist/safe-bash/command-chunks/{chunk-AXXZNB7U.js → chunk-SL4LD25A.js} +9 -9
  204. package/dist/safe-bash/command-chunks/{chunk-JGKSWDGP.js → chunk-SNA2LVBX.js} +1 -1
  205. package/dist/safe-bash/command-chunks/{chunk-TXPDKEGY.js → chunk-SWIF6BBY.js} +8 -8
  206. package/dist/safe-bash/command-chunks/{chunk-PS5GDFIP.js → chunk-T2FRXSQT.js} +2 -2
  207. package/dist/safe-bash/command-chunks/{chunk-HELAVGZH.js → chunk-T4SEQU66.js} +3 -3
  208. package/dist/safe-bash/command-chunks/{chunk-3SPLP2DB.js → chunk-T5OQ53XS.js} +1 -1
  209. package/dist/safe-bash/command-chunks/{chunk-KBAQHE5Y.js → chunk-TG2RVQLP.js} +2 -2
  210. package/dist/safe-bash/command-chunks/{chunk-CZ5K2YPU.js → chunk-TXU7MMHN.js} +24 -24
  211. package/dist/safe-bash/command-chunks/{chunk-TYPS5MOU.js → chunk-TXWDR2P4.js} +1 -1
  212. package/dist/safe-bash/command-chunks/{chunk-ETXPMVR6.js → chunk-TY7JXEWI.js} +11 -11
  213. package/dist/safe-bash/command-chunks/{chunk-X6OHFKBL.js → chunk-U42WHQRH.js} +8 -8
  214. package/dist/safe-bash/command-chunks/{chunk-Z2WNYEPD.js → chunk-UFLMOU3B.js} +4 -4
  215. package/dist/safe-bash/command-chunks/{chunk-2BLTUQNK.js → chunk-UJYXSLM6.js} +2 -2
  216. package/dist/safe-bash/command-chunks/{chunk-Q7TVCBU2.js → chunk-UKAGRRLZ.js} +1 -1
  217. package/dist/safe-bash/command-chunks/{chunk-4GQKCUS5.js → chunk-UPWLHHZ2.js} +13 -13
  218. package/dist/safe-bash/command-chunks/{chunk-5L4YGRQU.js → chunk-URQSUMMJ.js} +4 -4
  219. package/dist/safe-bash/command-chunks/{chunk-KPHLESD4.js → chunk-UT5X6QRU.js} +5 -5
  220. package/dist/safe-bash/command-chunks/{chunk-T5S4SJGO.js → chunk-V6JPIZUW.js} +7 -7
  221. package/dist/safe-bash/command-chunks/{chunk-MKK6FM5H.js → chunk-VMZIAFVJ.js} +11 -11
  222. package/dist/safe-bash/command-chunks/{chunk-HK6MSB7Z.js → chunk-VNNNVT4C.js} +5 -5
  223. package/dist/safe-bash/command-chunks/{chunk-ROL5AEX6.js → chunk-VVV45NLY.js} +1 -1
  224. package/dist/safe-bash/command-chunks/chunk-VVWHFNHD.js +502 -0
  225. package/dist/safe-bash/command-chunks/{chunk-KCLJGRU7.js → chunk-VZTVR3JI.js} +12 -12
  226. package/dist/safe-bash/command-chunks/{chunk-PLR5IULU.js → chunk-WDVPHDBH.js} +5 -5
  227. package/dist/safe-bash/command-chunks/{chunk-MNK3DDH6.js → chunk-WH624PKJ.js} +2 -2
  228. package/dist/safe-bash/command-chunks/{chunk-TJLXSENN.js → chunk-WHZ6XK7Y.js} +1 -1
  229. package/dist/safe-bash/command-chunks/{chunk-DN6MSXY7.js → chunk-WIW3KDBS.js} +2 -2
  230. package/dist/safe-bash/command-chunks/{chunk-GXMPXMDP.js → chunk-WMBELKPP.js} +11 -11
  231. package/dist/safe-bash/command-chunks/{chunk-NHNZYWPW.js → chunk-WMV5224N.js} +3 -3
  232. package/dist/safe-bash/command-chunks/{chunk-RTNI47C5.js → chunk-WOL3LBXE.js} +4 -4
  233. package/dist/safe-bash/command-chunks/{chunk-7SOE7XIS.js → chunk-WVD5WZXD.js} +5 -5
  234. package/dist/safe-bash/command-chunks/{chunk-XMTR7QGL.js → chunk-X42MJT2J.js} +4 -4
  235. package/dist/safe-bash/command-chunks/{chunk-XUJAQA3S.js → chunk-XBWD6SI3.js} +33 -33
  236. package/dist/safe-bash/command-chunks/{chunk-ZQM37BGE.js → chunk-XFIDOCYH.js} +2 -2
  237. package/dist/safe-bash/command-chunks/{chunk-IBYMPAUW.js → chunk-XPQUUFQD.js} +2 -2
  238. package/dist/safe-bash/command-chunks/{chunk-NQINS4XY.js → chunk-XVEI4HZL.js} +1 -1
  239. package/dist/safe-bash/command-chunks/{chunk-KSBNZTAZ.js → chunk-YKODRSGT.js} +6 -6
  240. package/dist/safe-bash/command-chunks/{chunk-WZRFS5OY.js → chunk-YXR4JE4U.js} +4 -4
  241. package/dist/safe-bash/command-chunks/{chunk-DCMSPMMD.js → chunk-Z7UIOPHJ.js} +1 -1
  242. package/dist/safe-bash/command-chunks/{chunk-AY3KQ4EN.js → chunk-ZAYTFXUX.js} +7 -7
  243. package/dist/safe-bash/command-chunks/{chunk-DZH54L3F.js → chunk-ZM7HMBAJ.js} +10 -10
  244. package/dist/safe-bash/command-chunks/{chunk-NFGCBQN3.js → chunk-ZNCPIZCN.js} +2 -2
  245. package/dist/safe-bash/command-chunks/{chunk-HKGNBH7Z.js → chunk-ZRHKXN6W.js} +4 -4
  246. package/dist/safe-bash/command-chunks/{chunk-A45UG4KT.js → chunk-ZZERSKAR.js} +5 -5
  247. package/dist/safe-bash/command-chunks/{clipboard-BBDK33GP-QZ4ERNQX.js → clipboard-BBDK33GP-VB22F7GI.js} +2 -2
  248. package/dist/safe-bash/command-chunks/{command-engine-M7S4QIXV.js → command-engine-GHE6QUHU.js} +53 -21
  249. package/dist/safe-bash/command-chunks/{engine-YUYZJIB4-NZUDFEHL.js → engine-RG6HQCCB-FXYZS264.js} +1 -1
  250. package/dist/safe-bash/command-chunks/{gnumeric-UJPXWBVR-7VOHQAPM.js → gnumeric-UJPXWBVR-YPXTNEDZ.js} +2 -2
  251. package/dist/safe-bash/command-chunks/model-store-I7YAWL5V.js +54 -0
  252. package/dist/safe-bash/command-chunks/{xlsx-RE54MFCS-DI3F765V.js → xlsx-RE54MFCS-IQ6OXXKK.js} +1 -1
  253. package/dist/safe-bash/commands/bc/index.browser.js +1 -1
  254. package/dist/safe-bash/full-core.browser.js +4 -4
  255. package/dist/safe-bash/plugins/index.browser.js +3 -3
  256. package/dist/safe-bash/registry-entry.browser.js +2 -2
  257. package/dist/safe-bash/search.browser.js +1 -1
  258. package/dist/safe-bash/shell/runtime.d.ts +1 -0
  259. package/dist/safe-bash/shell/runtime.js +12 -3
  260. package/dist/safe-bash/shell/sync-extra-evaluators.js +7 -4
  261. package/dist/safe-bash/shell-entry.browser.js +2 -2
  262. package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
  263. package/dist/safe-bash-command-awk/awk.js +4 -4
  264. package/dist/safe-bash-command-awk/index.js +4 -4
  265. package/dist/safe-bash-command-cp/index.js +3 -3
  266. package/dist/safe-bash-command-csvkit/index.js +1 -1
  267. package/dist/safe-bash-command-diff/diff.js +2 -2
  268. package/dist/safe-bash-command-diff/index.js +3 -3
  269. package/dist/safe-bash-command-diff/sync.js +2 -2
  270. package/dist/safe-bash-command-factor/command.js +2 -2
  271. package/dist/safe-bash-command-factor/index.js +2 -2
  272. package/dist/safe-bash-command-ffmpeg/index.js +1 -1
  273. package/dist/safe-bash-command-ffprobe/index.js +2 -2
  274. package/dist/safe-bash-command-ffprobe/media.d.ts +5 -1
  275. package/dist/safe-bash-command-ffprobe/media.js +2 -2
  276. package/dist/safe-bash-command-getopt/command.js +2 -2
  277. package/dist/safe-bash-command-getopt/index.js +2 -2
  278. package/dist/safe-bash-command-html-to-markdown/index.js +51 -813
  279. package/dist/safe-bash-command-html-to-markdown/stored-destination.d.ts +8 -0
  280. package/dist/safe-bash-command-html-to-markdown/stored-destination.js +10 -0
  281. package/dist/safe-bash-command-html-to-markdown/stored-text.d.ts +4 -1
  282. package/dist/safe-bash-command-html-to-markdown/stored-text.js +1 -1
  283. package/dist/safe-bash-command-htmlq/index.js +1280 -419
  284. package/dist/safe-bash-command-iconv/command.js +2 -2
  285. package/dist/safe-bash-command-iconv/index.js +2 -2
  286. package/dist/safe-bash-command-llm/index.js +2 -2
  287. package/dist/safe-bash-command-llm/openai.js +2 -2
  288. package/dist/safe-bash-command-llm/providers/index.js +2 -2
  289. package/dist/safe-bash-command-llm/providers/openai.js +2 -2
  290. package/dist/safe-bash-command-node/commands/node/browser.js +4 -4
  291. package/dist/safe-bash-command-node/commands/node/default-runtime.js +4 -4
  292. package/dist/safe-bash-command-node/commands/node/safejs.js +4 -4
  293. package/dist/safe-bash-command-pandoc/command.js +10 -9
  294. package/dist/safe-bash-command-pandoc/index.js +60 -59
  295. package/dist/safe-bash-command-patch/index.js +6 -6
  296. package/dist/safe-bash-command-patch/patch-formats.js +3 -3
  297. package/dist/safe-bash-command-patch/patch-gnu-reject.js +1 -1
  298. package/dist/safe-bash-command-patch/patch.js +6 -6
  299. package/dist/safe-bash-command-patch/stored-patch.d.ts +7 -6
  300. package/dist/safe-bash-command-patch/unified.d.ts +5 -5
  301. package/dist/safe-bash-command-patch/unified.js +2 -2
  302. package/dist/safe-bash-command-pdftk/index.js +21 -108
  303. package/dist/safe-bash-command-pdftoppm/index.js +131 -27
  304. package/dist/safe-bash-command-playwright-cli/index.js +12 -12
  305. package/dist/safe-bash-command-playwright-cli/playwright/abilities.js +1 -1
  306. package/dist/safe-bash-command-playwright-cli/playwright/capability-events.js +1 -1
  307. package/dist/safe-bash-command-playwright-cli/playwright/capability-result.js +1 -1
  308. package/dist/safe-bash-command-playwright-cli/playwright/controller.js +7 -7
  309. package/dist/safe-bash-command-playwright-cli/playwright/download-capabilities.js +1 -1
  310. package/dist/safe-bash-command-playwright-cli/playwright/drop-capability.js +1 -1
  311. package/dist/safe-bash-command-playwright-cli/playwright/index.js +12 -12
  312. package/dist/safe-bash-command-playwright-cli/playwright/modal-capabilities.js +1 -1
  313. package/dist/safe-bash-command-playwright-cli/playwright/native-evaluation.js +1 -1
  314. package/dist/safe-bash-command-playwright-cli/playwright/native-json-snapshot.js +1 -1
  315. package/dist/safe-bash-command-playwright-cli/playwright/native-snapshot.js +1 -1
  316. package/dist/safe-bash-command-playwright-cli/playwright/open-options.js +2 -2
  317. package/dist/safe-bash-command-playwright-cli/playwright/profile.js +3 -3
  318. package/dist/safe-bash-command-playwright-cli/playwright/recording-capabilities.js +1 -1
  319. package/dist/safe-bash-command-playwright-cli/playwright/route-capabilities.js +1 -1
  320. package/dist/safe-bash-command-playwright-cli/playwright/snapshot.js +3 -3
  321. package/dist/safe-bash-command-playwright-cli/playwright/standard-capabilities.js +1 -1
  322. package/dist/safe-bash-command-playwright-cli/playwright/storage-capabilities.js +1 -1
  323. package/dist/safe-bash-command-playwright-cli/playwright/tracing-capabilities.js +1 -1
  324. package/dist/safe-bash-command-playwright-cli/playwright/webmcp-capabilities.js +1 -1
  325. package/dist/safe-bash-command-pptx/engine.js +1 -1
  326. package/dist/safe-bash-command-python/executor.js +11 -11
  327. package/dist/safe-bash-command-python/index.js +11 -11
  328. package/dist/safe-bash-command-python/jspi.js +2 -2
  329. package/dist/safe-bash-command-rg/index.js +3 -3
  330. package/dist/safe-bash-command-rg/rg-command.js +3 -3
  331. package/dist/safe-bash-command-safejs/index.js +4 -4
  332. package/dist/safe-bash-command-safejs/io.js +3 -3
  333. package/dist/safe-bash-command-safejs/render.js +2 -2
  334. package/dist/safe-bash-command-safejs/runtime.js +4 -4
  335. package/dist/safe-bash-command-soffice/index.js +5 -4
  336. package/dist/safe-bash-command-sort/index.js +3 -3
  337. package/dist/safe-bash-command-ssconvert/index.js +13 -13
  338. package/dist/safe-bash-command-tar/create.js +3 -3
  339. package/dist/safe-bash-command-tar/extract.js +3 -3
  340. package/dist/safe-bash-command-tar/index.js +7 -7
  341. package/dist/safe-bash-command-tar/modes.js +5 -5
  342. package/dist/safe-bash-command-unzip/index.js +2 -2
  343. package/dist/safe-bash-command-unzip/unzip.js +2 -2
  344. package/dist/safe-bash-command-xmllint/index.js +1 -1
  345. package/dist/safe-bash-command-xz/index.js +5 -5
  346. package/dist/safe-bash-compression-engine/files.js +5 -5
  347. package/dist/safe-bash-compression-engine/index.js +3 -3
  348. package/dist/safe-bash-compression-engine/operand.js +6 -6
  349. package/dist/safe-bash-compression-engine/stream.js +3 -3
  350. package/dist/safe-bash-compression-engine/zstd-decode.js +2 -2
  351. package/dist/safe-bash-contracts/escaping.js +3 -3
  352. package/dist/safe-bash-contracts/filesystem-output.js +3 -3
  353. package/dist/safe-bash-contracts/index.js +10 -10
  354. package/dist/safe-bash-docx-engine/ancillary-resources.js +9 -9
  355. package/dist/safe-bash-docx-engine/batch-operations.js +66 -66
  356. package/dist/safe-bash-docx-engine/batch-result-schema.js +78 -78
  357. package/dist/safe-bash-docx-engine/batch.js +77 -77
  358. package/dist/safe-bash-docx-engine/bookmarks.js +17 -17
  359. package/dist/safe-bash-docx-engine/charts.js +10 -10
  360. package/dist/safe-bash-docx-engine/command-option-rules.js +5 -5
  361. package/dist/safe-bash-docx-engine/command-properties.js +3 -3
  362. package/dist/safe-bash-docx-engine/comments.js +25 -25
  363. package/dist/safe-bash-docx-engine/control-bindings.js +20 -20
  364. package/dist/safe-bash-docx-engine/control-repeat.js +20 -20
  365. package/dist/safe-bash-docx-engine/controls.js +18 -18
  366. package/dist/safe-bash-docx-engine/create.js +10 -10
  367. package/dist/safe-bash-docx-engine/diagrams.js +10 -10
  368. package/dist/safe-bash-docx-engine/diff.js +12 -12
  369. package/dist/safe-bash-docx-engine/document-properties.js +15 -15
  370. package/dist/safe-bash-docx-engine/equations.js +16 -16
  371. package/dist/safe-bash-docx-engine/extract.js +13 -13
  372. package/dist/safe-bash-docx-engine/fields.js +22 -22
  373. package/dist/safe-bash-docx-engine/font-inventory.js +17 -17
  374. package/dist/safe-bash-docx-engine/font-resources.js +5 -5
  375. package/dist/safe-bash-docx-engine/image-batch-operations.js +13 -13
  376. package/dist/safe-bash-docx-engine/image-insertion.js +20 -20
  377. package/dist/safe-bash-docx-engine/image-layout.js +18 -18
  378. package/dist/safe-bash-docx-engine/image-replacement.js +21 -21
  379. package/dist/safe-bash-docx-engine/images.js +18 -18
  380. package/dist/safe-bash-docx-engine/index.js +113 -113
  381. package/dist/safe-bash-docx-engine/inspection.js +19 -19
  382. package/dist/safe-bash-docx-engine/invocation.js +8 -8
  383. package/dist/safe-bash-docx-engine/io.js +8 -8
  384. package/dist/safe-bash-docx-engine/links.js +20 -20
  385. package/dist/safe-bash-docx-engine/lists.js +19 -19
  386. package/dist/safe-bash-docx-engine/locations.js +14 -14
  387. package/dist/safe-bash-docx-engine/notes.js +21 -21
  388. package/dist/safe-bash-docx-engine/objects.js +18 -18
  389. package/dist/safe-bash-docx-engine/operation-json-schema.js +3 -3
  390. package/dist/safe-bash-docx-engine/operation-schema.js +2 -2
  391. package/dist/safe-bash-docx-engine/pack.js +13 -13
  392. package/dist/safe-bash-docx-engine/package-view-batch-operations.js +21 -21
  393. package/dist/safe-bash-docx-engine/pandoc-adapter.js +28 -28
  394. package/dist/safe-bash-docx-engine/paragraph-edit.js +24 -24
  395. package/dist/safe-bash-docx-engine/part-provider.js +3 -3
  396. package/dist/safe-bash-docx-engine/property-values.js +3 -3
  397. package/dist/safe-bash-docx-engine/publication.js +8 -8
  398. package/dist/safe-bash-docx-engine/removal.js +20 -20
  399. package/dist/safe-bash-docx-engine/revision-decisions.js +21 -21
  400. package/dist/safe-bash-docx-engine/revision-edit.js +19 -19
  401. package/dist/safe-bash-docx-engine/revisions.js +17 -17
  402. package/dist/safe-bash-docx-engine/run-format.js +19 -19
  403. package/dist/safe-bash-docx-engine/sanitize.js +33 -33
  404. package/dist/safe-bash-docx-engine/sections.js +18 -18
  405. package/dist/safe-bash-docx-engine/settings.js +10 -10
  406. package/dist/safe-bash-docx-engine/shape-edit.js +20 -20
  407. package/dist/safe-bash-docx-engine/signatures.js +14 -14
  408. package/dist/safe-bash-docx-engine/stories.js +21 -21
  409. package/dist/safe-bash-docx-engine/structure-model-batch-operations.js +37 -37
  410. package/dist/safe-bash-docx-engine/style-model-batch-operations.js +26 -26
  411. package/dist/safe-bash-docx-engine/style-model-result-schema.js +43 -43
  412. package/dist/safe-bash-docx-engine/styles.js +17 -17
  413. package/dist/safe-bash-docx-engine/table-edit.js +26 -26
  414. package/dist/safe-bash-docx-engine/table-read.js +15 -15
  415. package/dist/safe-bash-docx-engine/template.js +21 -21
  416. package/dist/safe-bash-docx-engine/text-replace.js +19 -19
  417. package/dist/safe-bash-docx-engine/text-resource-read.js +15 -15
  418. package/dist/safe-bash-docx-engine/text.js +15 -15
  419. package/dist/safe-bash-docx-engine/validation.js +6 -6
  420. package/dist/safe-bash-docx-engine/xml-parts.js +21 -21
  421. package/dist/safe-bash-line-ending-engine/command.js +4 -4
  422. package/dist/safe-bash-line-ending-engine/index.js +7 -7
  423. package/dist/safe-bash-markdown-engine/commonmark-blocks.js +3 -3
  424. package/dist/safe-bash-markdown-engine/commonmark-inlines.js +3 -3
  425. package/dist/safe-bash-markdown-engine/gfm-syntax.js +2 -2
  426. package/dist/safe-bash-markdown-engine/index.js +4 -4
  427. package/dist/safe-bash-network-engine/aggregate.js +3 -3
  428. package/dist/safe-bash-network-engine/args.js +3 -3
  429. package/dist/safe-bash-network-engine/body.js +4 -4
  430. package/dist/safe-bash-network-engine/decode.js +3 -3
  431. package/dist/safe-bash-network-engine/fetch-transport.js +3 -3
  432. package/dist/safe-bash-network-engine/index.js +3 -3
  433. package/dist/safe-bash-network-engine/output.js +3 -3
  434. package/dist/safe-bash-network-engine/platform-portable.js +3 -3
  435. package/dist/safe-bash-network-engine/shared.js +2 -2
  436. package/dist/safe-bash-network-engine/transfer.js +9 -9
  437. package/dist/safe-bash-presentation-engine/accessibility.js +31 -30
  438. package/dist/safe-bash-presentation-engine/animation-editing.js +16 -15
  439. package/dist/safe-bash-presentation-engine/animations.js +16 -15
  440. package/dist/safe-bash-presentation-engine/backgrounds.js +17 -16
  441. package/dist/safe-bash-presentation-engine/bytes.js +4 -3
  442. package/dist/safe-bash-presentation-engine/chart-editing.js +34 -33
  443. package/dist/safe-bash-presentation-engine/chart-object-operations.js +25 -24
  444. package/dist/safe-bash-presentation-engine/charts.js +31 -30
  445. package/dist/safe-bash-presentation-engine/command-placeholder.js +60 -58
  446. package/dist/safe-bash-presentation-engine/comments.js +17 -16
  447. package/dist/safe-bash-presentation-engine/connector-operations.js +32 -31
  448. package/dist/safe-bash-presentation-engine/connectors.js +29 -28
  449. package/dist/safe-bash-presentation-engine/content-types.js +5 -4
  450. package/dist/safe-bash-presentation-engine/creation.js +7 -6
  451. package/dist/safe-bash-presentation-engine/diff.d.ts +1 -0
  452. package/dist/safe-bash-presentation-engine/diff.js +44 -33
  453. package/dist/safe-bash-presentation-engine/drawing-format.js +20 -19
  454. package/dist/safe-bash-presentation-engine/drawing-operations.js +31 -30
  455. package/dist/safe-bash-presentation-engine/drawing-schema.js +21 -20
  456. package/dist/safe-bash-presentation-engine/equations.js +17 -16
  457. package/dist/safe-bash-presentation-engine/errors.js +3 -2
  458. package/dist/safe-bash-presentation-engine/fields.js +17 -16
  459. package/dist/safe-bash-presentation-engine/font-metrics.js +4 -3
  460. package/dist/safe-bash-presentation-engine/image-extraction.js +20 -19
  461. package/dist/safe-bash-presentation-engine/image-formatting.js +32 -31
  462. package/dist/safe-bash-presentation-engine/image-insertion.js +18 -17
  463. package/dist/safe-bash-presentation-engine/image-replacement.js +21 -20
  464. package/dist/safe-bash-presentation-engine/image-value.js +5 -4
  465. package/dist/safe-bash-presentation-engine/images.js +19 -18
  466. package/dist/safe-bash-presentation-engine/index.js +135 -132
  467. package/dist/safe-bash-presentation-engine/layouts.js +16 -15
  468. package/dist/safe-bash-presentation-engine/length.js +4 -3
  469. package/dist/safe-bash-presentation-engine/links.js +16 -15
  470. package/dist/safe-bash-presentation-engine/masters.js +15 -14
  471. package/dist/safe-bash-presentation-engine/media-editing.js +24 -23
  472. package/dist/safe-bash-presentation-engine/media-extraction.js +17 -16
  473. package/dist/safe-bash-presentation-engine/media.js +16 -15
  474. package/dist/safe-bash-presentation-engine/memberships.js +15 -14
  475. package/dist/safe-bash-presentation-engine/notes.js +18 -17
  476. package/dist/safe-bash-presentation-engine/ole-enum.js +5 -4
  477. package/dist/safe-bash-presentation-engine/ole-insertion.js +20 -19
  478. package/dist/safe-bash-presentation-engine/opaque-objects.js +10 -9
  479. package/dist/safe-bash-presentation-engine/package-reader.js +6 -5
  480. package/dist/safe-bash-presentation-engine/package-tools.js +19 -18
  481. package/dist/safe-bash-presentation-engine/package-uri.js +4 -3
  482. package/dist/safe-bash-presentation-engine/package-writer.js +5 -4
  483. package/dist/safe-bash-presentation-engine/presentation-model.js +59 -57
  484. package/dist/safe-bash-presentation-engine/presentation-settings.js +14 -13
  485. package/dist/safe-bash-presentation-engine/properties.d.ts +2 -1
  486. package/dist/safe-bash-presentation-engine/properties.js +25 -15
  487. package/dist/safe-bash-presentation-engine/relationships.js +5 -4
  488. package/dist/safe-bash-presentation-engine/resource-limits.js +2 -1
  489. package/dist/safe-bash-presentation-engine/retained-diff.d.ts +56 -0
  490. package/dist/safe-bash-presentation-engine/retained-inspection.js +14 -13
  491. package/dist/safe-bash-presentation-engine/retained-package.js +6 -5
  492. package/dist/safe-bash-presentation-engine/retained-properties.d.ts +26 -0
  493. package/dist/safe-bash-presentation-engine/retained-text.js +33 -517
  494. package/dist/safe-bash-presentation-engine/sanitize.js +20 -16
  495. package/dist/safe-bash-presentation-engine/selectors.js +11 -10
  496. package/dist/safe-bash-presentation-engine/shape-groups.js +31 -30
  497. package/dist/safe-bash-presentation-engine/shape-operations.js +30 -29
  498. package/dist/safe-bash-presentation-engine/shape-path-operations.js +32 -31
  499. package/dist/safe-bash-presentation-engine/shape-paths.js +16 -15
  500. package/dist/safe-bash-presentation-engine/shape-presets.js +4 -3
  501. package/dist/safe-bash-presentation-engine/shape-selection.js +31 -30
  502. package/dist/safe-bash-presentation-engine/shape-transforms.js +18 -17
  503. package/dist/safe-bash-presentation-engine/shapes.js +27 -26
  504. package/dist/safe-bash-presentation-engine/slide-copy.js +17 -16
  505. package/dist/safe-bash-presentation-engine/slide-import.js +18 -17
  506. package/dist/safe-bash-presentation-engine/slide-merge-split.js +20 -19
  507. package/dist/safe-bash-presentation-engine/slide-model.js +43 -42
  508. package/dist/safe-bash-presentation-engine/slide-removal.js +18 -17
  509. package/dist/safe-bash-presentation-engine/slide-transfer-budget.js +10 -9
  510. package/dist/safe-bash-presentation-engine/slides.js +19 -18
  511. package/dist/safe-bash-presentation-engine/table-operations.js +33 -32
  512. package/dist/safe-bash-presentation-engine/table-spans.js +32 -31
  513. package/dist/safe-bash-presentation-engine/tables.js +31 -30
  514. package/dist/safe-bash-presentation-engine/tags.js +16 -15
  515. package/dist/safe-bash-presentation-engine/template-bindings.js +33 -32
  516. package/dist/safe-bash-presentation-engine/template-repeat.js +40 -39
  517. package/dist/safe-bash-presentation-engine/text-fitting.js +27 -26
  518. package/dist/safe-bash-presentation-engine/text-frames.js +27 -26
  519. package/dist/safe-bash-presentation-engine/text-paragraphs.js +27 -26
  520. package/dist/safe-bash-presentation-engine/text-reading.js +12 -11
  521. package/dist/safe-bash-presentation-engine/text-replacement.js +17 -16
  522. package/dist/safe-bash-presentation-engine/text-runs.js +20 -19
  523. package/dist/safe-bash-presentation-engine/themes.js +16 -15
  524. package/dist/safe-bash-presentation-engine/transitions.js +16 -15
  525. package/dist/safe-bash-presentation-engine/validation.js +10 -9
  526. package/dist/safe-bash-presentation-engine/xml-parts.js +19 -18
  527. package/dist/safe-bash-presentation-engine/xml-view.js +4 -3
  528. package/dist/safe-bash-presentation-engine/xml.js +4 -3
  529. package/dist/safe-bash-query-engine/index.js +3 -3
  530. package/dist/safe-bash-query-engine/interpreter.js +2 -2
  531. package/dist/safe-bash-query-engine/query-core.js +3 -3
  532. package/dist/safe-bash-regex-engine/ere/matcher.js +3 -3
  533. package/dist/safe-bash-xml-engine/document.js +3 -3
  534. package/dist/safe-bash-xml-engine/evaluate.js +1 -1
  535. package/dist/safe-bash-xml-engine/index.js +4 -4
  536. package/dist/safe-bash-xml-engine/json.js +14 -10
  537. package/dist/safe-bash-xml-engine/query.js +2 -2
  538. package/dist/safe-bash-xml-engine/stored-document.d.ts +4 -0
  539. package/dist/safe-bash-xml-engine/stored-document.js +1 -1
  540. package/dist/safe-bash-xml-engine/stored-evaluate.js +3 -3
  541. package/dist/safe-bash-zip-engine/index.js +2 -2
  542. package/dist/safe-bash-zip-engine/zip/repair.js +2 -2
  543. package/dist/safe-bash-zip-engine/zip/sfx.js +2 -2
  544. package/dist/safe-bash-zip-engine/zip-format.js +2 -2
  545. package/dist/spreadsheet-format-xls/biff-properties-merge.js +63 -67
  546. package/dist/spreadsheet-format-xls/biff-properties.js +3 -3
  547. package/dist/spreadsheet-format-xls/biff-property-transcode.d.ts +6 -1
  548. package/dist/spreadsheet-format-xls/biff-property-transcode.js +15 -4
  549. package/dist/spreadsheet-format-xls/biff-property-values.d.ts +6 -1
  550. package/dist/spreadsheet-format-xls/biff-property-values.js +81 -12
  551. package/dist/xlsx-ast/comment-geometry.d.ts +12 -0
  552. package/dist/xlsx-ast/comment-geometry.js +71 -0
  553. package/dist/xlsx-ast/xlsx-metadata.d.ts +1 -1
  554. package/dist/xlsx-ast/xlsx-metadata.js +27 -2
  555. package/dist/xlsx-ast/xlsx-write-metadata.js +9 -1
  556. package/dist/xlsx-ast/xlsx.js +9 -4
  557. package/package.json +5 -3
  558. package/dist/safe-bash/command-chunks/biff-A7XPBWAK-DCLG5QKF.js +0 -5417
  559. package/dist/safe-bash/command-chunks/chunk-DBNJEXHK.js +0 -387
  560. package/dist/safe-bash/command-chunks/chunk-EV5G535P.js +0 -240
  561. package/dist/safe-bash/command-chunks/model-store-UB5DWMAP.js +0 -54
  562. package/dist/safe-bash/command-chunks/{chunk-NGSO645G.js → chunk-3ZVK2OAY.js} +6 -6
  563. package/dist/safe-bash/command-chunks/{chunk-W2FKFEVY.js → chunk-4YSBUQPV.js} +3 -3
  564. package/dist/safe-bash/command-chunks/{chunk-UJSLBBQ7.js → chunk-5MFRN3CB.js} +4 -4
  565. package/dist/safe-bash/command-chunks/{chunk-AW4Q3GZW.js → chunk-5QXRIZSS.js} +3 -3
  566. package/dist/safe-bash/command-chunks/{chunk-KUGV3SSL.js → chunk-CZXYWGVO.js} +3 -3
  567. package/dist/safe-bash/command-chunks/{chunk-JWORWL72.js → chunk-DX7KU6YU.js} +3 -3
  568. package/dist/safe-bash/command-chunks/{chunk-Z37OM247.js → chunk-E3BL7W5C.js} +3 -3
  569. package/dist/safe-bash/command-chunks/{chunk-RIKNMBLZ.js → chunk-FEKECRJP.js} +3 -3
  570. package/dist/safe-bash/command-chunks/{chunk-D3HW7R2N.js → chunk-FTZFCMVI.js} +9 -9
  571. package/dist/safe-bash/command-chunks/{chunk-KRRG4MGH.js → chunk-GEDO5V32.js} +3 -3
  572. package/dist/safe-bash/command-chunks/{chunk-NBRXQUK7.js → chunk-M3OXQXCU.js} +3 -3
  573. package/dist/safe-bash/command-chunks/{chunk-JRSZ5IGD.js → chunk-OAM2SUUI.js} +6 -6
  574. package/dist/safe-bash/command-chunks/{chunk-HFKS6AET.js → chunk-OCOJMKDP.js} +4 -4
  575. package/dist/safe-bash/command-chunks/{chunk-FMJKCVSQ.js → chunk-OOB7YCFQ.js} +3 -3
  576. package/dist/safe-bash/command-chunks/{chunk-GGH376XQ.js → chunk-OU4VE5CR.js} +6 -6
  577. package/dist/safe-bash/command-chunks/{chunk-DYERIXPU.js → chunk-QGTQJCKW.js} +3 -3
  578. package/dist/safe-bash/command-chunks/{chunk-ZSQCROFE.js → chunk-RXXNLH7A.js} +3 -3
  579. package/dist/safe-bash/command-chunks/{chunk-TI52LKLL.js → chunk-UVM6QG2H.js} +3 -3
  580. package/dist/safe-bash/command-chunks/{chunk-BJXADHRT.js → chunk-WKU65Z3Q.js} +6 -6
  581. package/dist/safe-bash/command-chunks/{chunk-KGKF5NM2.js → chunk-WOXLPDO6.js} +3 -3
  582. package/dist/safe-bash/command-chunks/{chunk-Y5ADXWBQ.js → chunk-WXW665TV.js} +4 -4
  583. package/dist/safe-bash/command-chunks/{chunk-FWCUEZ3K.js → chunk-WYBCSJFG.js} +3 -3
  584. package/dist/safe-bash/command-chunks/{chunk-BXU5Y7I5.js → chunk-XI2LETBJ.js} +3 -3
  585. package/dist/safe-bash/command-chunks/{chunk-LNLACEAN.js → chunk-Y3ZRIZL7.js} +3 -3
@@ -1,387 +0,0 @@
1
- import {
2
- attr,
3
- escape,
4
- invalid,
5
- loadShared,
6
- nextRel
7
- } from "./chunk-ADHFF2IM.js";
8
- import {
9
- parseXmlPart
10
- } from "./chunk-DBLQUZGN.js";
11
- import {
12
- OfficeError
13
- } from "./chunk-CXME4YHU.js";
14
-
15
- // packages/safe-bash-presentation-engine/src/properties.ts
16
- import { SaxesParser } from "saxes";
17
- var cp = "http://schemas.openxmlformats.org/package/2006/metadata/core-properties";
18
- var dc = "http://purl.org/dc/elements/1.1/";
19
- var terms = "http://purl.org/dc/terms/";
20
- var custom = "http://schemas.openxmlformats.org/officeDocument/2006/custom-properties";
21
- var vt = "http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes";
22
- var strictCustom = "http://purl.oclc.org/ooxml/officeDocument/customProperties";
23
- var strictVt = "http://purl.oclc.org/ooxml/officeDocument/docPropsVTypes";
24
- var relationships = "http://schemas.openxmlformats.org/package/2006/relationships";
25
- var core = Object.freeze({
26
- author: [dc, "creator", "string"],
27
- category: [cp, "category", "string"],
28
- comments: [dc, "description", "string"],
29
- content_status: [cp, "contentStatus", "string"],
30
- created: [terms, "created", "date"],
31
- identifier: [dc, "identifier", "string"],
32
- keywords: [cp, "keywords", "string"],
33
- language: [dc, "language", "string"],
34
- last_modified_by: [cp, "lastModifiedBy", "string"],
35
- last_printed: [cp, "lastPrinted", "date"],
36
- modified: [terms, "modified", "date"],
37
- revision: [cp, "revision", "number"],
38
- subject: [dc, "subject", "string"],
39
- title: [dc, "title", "string"],
40
- version: [cp, "version", "string"]
41
- });
42
- function coreDefinition(name) {
43
- return Object.hasOwn(core, name) ? core[name] : void 0;
44
- }
45
- function text(doc, node) {
46
- let value = "";
47
- const parser = new SaxesParser({ xmlns: true });
48
- parser.on("text", (s) => value += s);
49
- parser.on("cdata", (s) => value += s);
50
- parser.write(doc.markup(node, true)).close();
51
- return value;
52
- }
53
- function validatePropertyValue(name, type, value) {
54
- const known = coreDefinition(name);
55
- for (const input of [name, ...typeof value === "string" ? [value] : []])
56
- for (const c of input) {
57
- const p = c.codePointAt(0);
58
- if (p < 32 && p !== 9 && p !== 10 && p !== 13 || p >= 55296 && p <= 57343 || p === 65534 || p === 65535)
59
- invalid("Invalid XML property text.");
60
- }
61
- if (!name || !["string", "number", "boolean", "date"].includes(type) || known && known[2] !== type)
62
- invalid("Invalid property name or type.");
63
- if (type === "string" && (typeof value !== "string" || known && [...value].length > 255))
64
- invalid("Core strings allow at most 255 Unicode code points.");
65
- if (type === "number" && (typeof value !== "number" || !Number.isFinite(value) || name === "revision" && (!Number.isSafeInteger(value) || value < 0)))
66
- invalid("Invalid numeric property.");
67
- if (type === "boolean" && typeof value !== "boolean") invalid("Expected a boolean property.");
68
- if (type === "date") {
69
- if (typeof value !== "string" || value.length !== 20 || value.startsWith("0000") || !value.endsWith("Z"))
70
- invalid("Expected UTC date in whole seconds.");
71
- const date = new Date(value);
72
- if (!Number.isFinite(date.getTime()) || date.toISOString() !== value.slice(0, -1) + ".000Z")
73
- invalid("Invalid UTC date.");
74
- }
75
- }
76
- function decode(type, value) {
77
- if (type === "number")
78
- return value.trim() !== "" && Number.isFinite(Number(value)) ? Number(value) : null;
79
- if (type === "boolean")
80
- return value === "true" || value === "1" ? true : value === "false" || value === "0" ? false : null;
81
- if (type === "date") {
82
- const segments = value.split("T");
83
- if (segments.length > 2) return null;
84
- const calendar = segments[0].split("-");
85
- if (calendar.length > 3 || calendar[0]?.length !== 4 || calendar.some(
86
- (v, i) => v.length !== (i === 0 ? 4 : 2) || [...v].some((c) => c < "0" || c > "9")
87
- ))
88
- return null;
89
- const year = Number(calendar[0]), month = Number(calendar[1] ?? 1), day = Number(calendar[2] ?? 1);
90
- const leap = year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
91
- if (year < 1 || month < 1 || month > 12 || day < 1 || day > [31, leap ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31][month - 1])
92
- return null;
93
- if (segments.length === 2 && (calendar.length !== 3 || !(value.endsWith("Z") || value.slice(19).includes("+") || value.slice(19).includes("-"))))
94
- return null;
95
- const date = new Date(
96
- segments.length === 1 ? `${calendar[0]}-${calendar[1] ?? "01"}-${calendar[2] ?? "01"}T00:00:00Z` : value
97
- );
98
- return Number.isFinite(date.getTime()) ? date.toISOString().slice(0, 19) + "Z" : null;
99
- }
100
- return value;
101
- }
102
- function parts(s) {
103
- return s.index.inventory.relationships.filter(
104
- (e) => e.owner === "/" && !e.external && (e.type === `${relationships}/metadata/core-properties` || e.type === `${s.r}/custom-properties`)
105
- ).map((e) => ({
106
- part: e.targetPart,
107
- kind: e.type === `${relationships}/metadata/core-properties` ? "core" : "custom"
108
- }));
109
- }
110
- function records(s) {
111
- return parts(s).flatMap(({ part, kind }) => {
112
- const doc = s.doc(part);
113
- if ((kind === "core" ? doc.root.name.namespace !== cp : ![custom, strictCustom].includes(doc.root.name.namespace)) || doc.root.name.localName !== (kind === "core" ? "coreProperties" : "Properties"))
114
- throw new OfficeError("invalid-opc", "Invalid metadata root.", "index");
115
- return doc.root.children.map((node) => {
116
- const definition = kind === "core" ? Object.entries(core).find(
117
- ([, d]) => d[0] === node.name.namespace && d[1] === node.name.localName
118
- ) : void 0;
119
- const customNode = kind === "custom" && node.name.namespace === doc.root.name.namespace && node.name.localName === "property";
120
- const valueNode = customNode && node.children.length === 1 ? node.children[0] : void 0;
121
- const types = {
122
- lpwstr: "string",
123
- lpstr: "string",
124
- bstr: "string",
125
- i4: "number",
126
- int: "number",
127
- r8: "number",
128
- bool: "boolean",
129
- filetime: "date"
130
- };
131
- const type = unknownDeclaredType(doc, node) ? "unknown" : definition?.[1][2] ?? (valueNode && [vt, strictVt].includes(valueNode.name.namespace) && Object.hasOwn(types, valueNode.name.localName) ? types[valueNode.name.localName] : void 0) ?? "unknown";
132
- const name = definition?.[0] ?? (customNode ? attr(node, "name") : void 0) ?? node.name.localName;
133
- return {
134
- doc,
135
- node,
136
- record: {
137
- name,
138
- kind: definition ? "core" : customNode ? "custom" : "unknown",
139
- type,
140
- value: decode(type, text(doc, valueNode ?? node)),
141
- part,
142
- namespace: node.name.namespace
143
- }
144
- };
145
- });
146
- });
147
- }
148
- function options(value, keys) {
149
- if (!value || typeof value !== "object" || ![Object.prototype, null].includes(Object.getPrototypeOf(value)) || Object.keys(value).some((k) => !keys.includes(k)))
150
- invalid("Invalid property options.");
151
- }
152
- async function readProperties(input, query, context) {
153
- options(query, ["name"]);
154
- if (query.name !== void 0 && (typeof query.name !== "string" || !query.name))
155
- invalid("Expected property name.");
156
- return records(await loadShared(input, context, false)).map((x) => x.record).filter((x) => query.name === void 0 || x.name === query.name);
157
- }
158
- function createPropertyPart(s, kind, context) {
159
- let part = `/docProps/${kind}.xml`;
160
- let suffix = 1;
161
- while (s.reader.has(part)) part = `/docProps/${kind}${suffix++}.xml`;
162
- const doc = parseXmlPart(
163
- new TextEncoder().encode(
164
- `<${kind === "core" ? "coreProperties" : "Properties"} xmlns="${kind === "core" ? cp : s.r.startsWith("http://purl.oclc.org/") ? strictCustom : custom}"/>`
165
- ),
166
- context.xmlLimits
167
- );
168
- s.save(part, doc);
169
- const rel = s.doc("/_rels/.rels");
170
- s.save(
171
- "/_rels/.rels",
172
- rel.spliceChildren(rel.root, rel.root.children.length, 0, [
173
- `<Relationship xmlns="${relationships}" Id="${nextRel(rel)}" Type="${kind === "core" ? `${relationships}/metadata/core-properties` : `${s.r}/custom-properties`}" Target="${part.slice(1)}"/>`
174
- ])
175
- );
176
- const types = s.doc("/[Content_Types].xml");
177
- s.save(
178
- "/[Content_Types].xml",
179
- types.spliceChildren(types.root, types.root.children.length, 0, [
180
- `<Override xmlns="${types.root.name.namespace}" PartName="${part}" ContentType="application/vnd.openxmlformats-${kind === "core" ? "package.core-properties" : "officedocument.custom-properties"}+xml"/>`
181
- ])
182
- );
183
- return part;
184
- }
185
- async function mutateProperty(input, action, query, context) {
186
- options(query, action === "set" ? ["name", "value", "type"] : ["name"]);
187
- if (typeof query.name !== "string" || !query.name || !["set", "remove"].includes(action))
188
- invalid("Invalid property operation.");
189
- const s = await loadShared(input, context);
190
- const matches = records(s).filter((x) => x.record.name === query.name);
191
- if (matches.length > 1)
192
- throw new OfficeError("ambiguous-selection", "Property name is ambiguous.", "select");
193
- const found = matches[0];
194
- if (action === "remove") {
195
- if (!found) throw new OfficeError("missing-selection", "Property is absent.", "select");
196
- if (found.record.type === "unknown" || !safeRemoval(found.node, found.record.kind))
197
- throw new OfficeError(
198
- "unsupported-edit",
199
- "Unknown property is preserved.",
200
- "validate-intent"
201
- );
202
- s.save(
203
- found.record.part,
204
- found.doc.spliceChildren(found.doc.root, found.doc.root.children.indexOf(found.node), 1, [])
205
- );
206
- return s.finish(found.record.part, []);
207
- }
208
- const type = query.type ?? found?.record.type ?? coreDefinition(query.name)?.[2];
209
- if (found?.record.type === "unknown")
210
- throw new OfficeError("unsupported-edit", "Unknown property is preserved.", "validate-intent");
211
- if (!type || type === "unknown") invalid("New properties require an explicit supported type.");
212
- if (found && found.record.type !== type) invalid("Property type cannot be coerced.");
213
- validatePropertyValue(query.name, type, query.value);
214
- if (found?.record.kind === "custom" && ["i4", "int"].includes(found.node.children[0]?.name.localName ?? "") && (!Number.isInteger(query.value) || query.value < -2147483648 || query.value > 2147483647))
215
- invalid("Integer property exceeds signed 32-bit bounds.");
216
- const definition = coreDefinition(query.name);
217
- if (found && definition && found.record.kind !== "core")
218
- invalid("Custom names cannot collide with core names.");
219
- const kind = definition ? "core" : "custom";
220
- const candidates = parts(s).filter((p) => p.kind === kind);
221
- if (candidates.length > 1)
222
- throw new OfficeError("ambiguous-selection", "Multiple property parts.", "select");
223
- const part = found?.record.part ?? candidates[0]?.part ?? createPropertyPart(s, kind, context);
224
- let doc = s.doc(part);
225
- if (found && kind === "core")
226
- doc = setCoreText(
227
- doc,
228
- doc.root.children[found.doc.root.children.indexOf(found.node)],
229
- String(query.value)
230
- );
231
- else if (found) {
232
- const node = doc.root.children[found.doc.root.children.indexOf(found.node)];
233
- doc = doc.setText(node.children[0], String(query.value));
234
- } else {
235
- let markup;
236
- if (definition) {
237
- const [ns, local] = definition;
238
- markup = `<m:${local} xmlns="" xmlns:m="${ns}"${type === "date" && ns === terms ? ` xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dcterms="${terms}" xsi:type="dcterms:W3CDTF"` : ""}>${escape(String(query.value))}</m:${local}>`;
239
- } else {
240
- let pid = 2;
241
- const ids = new Set(doc.root.children.map((n) => attr(n, "pid")));
242
- while (ids.has(String(pid))) pid++;
243
- const tag = { string: "lpwstr", number: "r8", boolean: "bool", date: "filetime" }[type];
244
- markup = `<property xmlns="${doc.root.name.namespace}" fmtid="{D5CDD505-2E9C-101B-9397-08002B2CF9AE}" pid="${pid}" name="${escape(query.name)}"><vt:${tag} xmlns:vt="${doc.root.name.namespace === strictCustom ? strictVt : vt}">${escape(String(query.value))}</vt:${tag}></property>`;
245
- }
246
- doc = doc.spliceChildren(doc.root, doc.root.children.length, 0, [markup]);
247
- }
248
- s.save(part, doc);
249
- return s.finish(part, []);
250
- }
251
- function unknownDeclaredType(doc, node) {
252
- const annotation = node.attributes.find(
253
- (a) => a.name.namespace === "http://www.w3.org/2001/XMLSchema-instance" && a.name.localName === "type"
254
- );
255
- if (!annotation) return false;
256
- const names = annotation.value.split(":");
257
- const prefix = names.length === 2 ? names[0] : "";
258
- const local = names.at(-1);
259
- return node.name.namespace !== terms || names.length > 2 || local !== "W3CDTF" || doc.resolveNamespace(node, prefix) !== terms;
260
- }
261
- function setCoreText(doc, node, value) {
262
- if (unknownDeclaredType(doc, node))
263
- throw new OfficeError(
264
- "unsupported-edit",
265
- "Unknown declared property type is preserved.",
266
- "validate-intent"
267
- );
268
- const index = doc.root.children.indexOf(node);
269
- let updated = doc.setText(node, value);
270
- if (node.name.namespace !== terms) return updated;
271
- let qname = "";
272
- const parser = new SaxesParser({ xmlns: true });
273
- parser.on("opentag", (tag) => {
274
- if (!qname) qname = tag.name;
275
- });
276
- parser.write(doc.markup(node, true)).close();
277
- const colon = qname.indexOf(":");
278
- const prefix = colon < 0 ? "" : qname.slice(0, colon) + ":";
279
- updated = updated.merge(updated.root.children[index], {
280
- attributes: [
281
- {
282
- namespace: "http://www.w3.org/2001/XMLSchema-instance",
283
- localName: "type",
284
- value: prefix + "W3CDTF"
285
- }
286
- ]
287
- });
288
- return updated;
289
- }
290
- function safeRemoval(node, kind) {
291
- return kind === "core" ? node.children.length === 0 && node.attributes.every(
292
- (a) => a.name.namespace === "http://www.w3.org/2001/XMLSchema-instance" && a.name.localName === "type"
293
- ) : node.children.length === 1 && node.children[0].children.length === 0 && node.children[0].attributes.length === 0 && node.attributes.every(
294
- (a) => a.name.namespace === "" && ["name", "pid", "fmtid"].includes(a.name.localName)
295
- );
296
- }
297
- async function sanitizeProperties(input, context) {
298
- const s = await loadShared(input, context);
299
- const known = records(s).filter(
300
- (x) => x.record.type !== "unknown" && safeRemoval(x.node, x.record.kind)
301
- );
302
- for (const part of new Set(known.map((x) => x.record.part))) {
303
- let doc = s.doc(part);
304
- const indices = known.filter((x) => x.record.part === part).map((x) => x.doc.root.children.indexOf(x.node)).sort((a, b) => b - a);
305
- for (const index of indices) doc = doc.spliceChildren(doc.root, index, 1, []);
306
- s.save(part, doc);
307
- }
308
- return s.finish(s.main, []);
309
- }
310
- var CoreProperties = class {
311
- #read;
312
- constructor(read, write) {
313
- this.#read = read;
314
- for (const [name, [namespace, localName, type]] of Object.entries(core))
315
- Object.defineProperty(this, name, {
316
- enumerable: true,
317
- get: () => {
318
- const doc = read();
319
- const matches = doc.root.children.filter(
320
- (n) => n.name.namespace === namespace && n.name.localName === localName
321
- );
322
- if (matches.length > 1)
323
- throw new OfficeError("ambiguous-selection", "Duplicate core property.", "select");
324
- const raw = matches[0] ? text(doc, matches[0]) : "";
325
- if (type === "string") return raw;
326
- if (type === "number") {
327
- const value2 = Number(raw);
328
- const digits = raw.trim();
329
- const unsigned = digits.startsWith("+") ? digits.slice(1) : digits;
330
- return unsigned && [...unsigned].every((c) => c >= "0" && c <= "9") && Number.isSafeInteger(value2) && value2 >= 0 ? value2 : 0;
331
- }
332
- const value = decode("date", raw);
333
- return value === null ? null : new Date(value);
334
- },
335
- set: (value) => {
336
- const serialized = type === "date" ? value instanceof Date && Number.isFinite(value.getTime()) ? value.toISOString().slice(0, 19) + "Z" : invalid("Expected valid UTC Date.") : value;
337
- validatePropertyValue(name, type, serialized);
338
- let doc = read();
339
- const matches = doc.root.children.filter(
340
- (n) => n.name.namespace === namespace && n.name.localName === localName
341
- );
342
- if (matches.length > 1)
343
- throw new OfficeError("ambiguous-selection", "Duplicate core property.", "select");
344
- if (matches[0]) doc = setCoreText(doc, matches[0], String(serialized));
345
- else
346
- doc = doc.spliceChildren(doc.root, doc.root.children.length, 0, [
347
- `<m:${localName} xmlns="" xmlns:m="${namespace}"${type === "date" && namespace === terms ? ` xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dcterms="${terms}" xsi:type="dcterms:W3CDTF"` : ""}>${escape(String(serialized))}</m:${localName}>`
348
- ]);
349
- write(doc);
350
- }
351
- });
352
- }
353
- get part() {
354
- return this.#read();
355
- }
356
- };
357
- async function openPropertySession(input, context) {
358
- const s = await loadShared(input, context);
359
- const candidates = parts(s).filter((p) => p.kind === "core");
360
- if (candidates.length > 1)
361
- throw new OfficeError("ambiguous-selection", "Multiple core property parts.", "select");
362
- let part = candidates[0]?.part;
363
- let model;
364
- return {
365
- get core_properties() {
366
- part ??= createPropertyPart(s, "core", context);
367
- return model ??= new CoreProperties(
368
- () => s.doc(part),
369
- (doc) => s.save(part, doc)
370
- );
371
- },
372
- async save() {
373
- return (await s.finish(s.main, [])).bytes;
374
- }
375
- };
376
- }
377
-
378
- export {
379
- coreDefinition,
380
- validatePropertyValue,
381
- readProperties,
382
- createPropertyPart,
383
- mutateProperty,
384
- sanitizeProperties,
385
- CoreProperties,
386
- openPropertySession
387
- };
@@ -1,240 +0,0 @@
1
- import {
2
- readProperties
3
- } from "./chunk-DBNJEXHK.js";
4
- import {
5
- nodeFor
6
- } from "./chunk-MVLVIMJ6.js";
7
- import {
8
- readPresentationText
9
- } from "./chunk-KSBNZTAZ.js";
10
- import {
11
- readSelectionIndex
12
- } from "./chunk-W3ZSWK76.js";
13
- import {
14
- readPackage
15
- } from "./chunk-IWHNRYER.js";
16
- import {
17
- readBinary
18
- } from "./chunk-NFII726L.js";
19
- import {
20
- parseXmlPart
21
- } from "./chunk-DBLQUZGN.js";
22
- import {
23
- OfficeError
24
- } from "./chunk-CXME4YHU.js";
25
-
26
- // packages/safe-bash-presentation-engine/src/diff.ts
27
- import { sha256 } from "@noble/hashes/sha2.js";
28
- var categories = [
29
- "slides",
30
- "text",
31
- "properties",
32
- "geometry",
33
- "media",
34
- "relationships",
35
- "opaque",
36
- "raw"
37
- ];
38
- function hash(bytes) {
39
- return Array.from(sha256(bytes), (byte) => byte.toString(16).padStart(2, "0")).join("");
40
- }
41
- function geometry(node) {
42
- return {
43
- name: node.name,
44
- attributes: [...node.attributes].sort((a, b) => {
45
- const left = `${a.name.namespace}/${a.name.localName}`, right = `${b.name.namespace}/${b.name.localName}`;
46
- return left < right ? -1 : left > right ? 1 : 0;
47
- }),
48
- children: node.children.map(geometry)
49
- };
50
- }
51
- async function snapshot(input, mode, context) {
52
- const bytes = await readBinary(input, context, {
53
- maxBytes: Math.min(context.limits.maxBytes, context.archiveLimits.maxArchiveBytes)
54
- });
55
- const reader = await readPackage(bytes, context);
56
- const index = await readSelectionIndex(bytes, context);
57
- const result = new Map(categories.map((category) => [category, /* @__PURE__ */ new Map()]));
58
- const put = (category, id, value, location = null) => {
59
- result.get(category).set(id, { value, location });
60
- };
61
- const slideIds = new Map(
62
- index.slides.map((slide) => [slide.part, `slide/${encodeURIComponent(slide.id)}`])
63
- );
64
- const ownerId = (part) => slideIds.get(part) ?? `part/${encodeURIComponent(part)}`;
65
- const partLocation = (part) => ({
66
- fingerprint: index.fingerprint,
67
- scope: "shared",
68
- owner: part,
69
- objectId: part,
70
- coordinateSystem: "identity"
71
- });
72
- if (mode === "raw") {
73
- for (const part of [...reader.names].sort()) {
74
- const payload = reader.get(part);
75
- put(
76
- "raw",
77
- `part/${encodeURIComponent(part)}`,
78
- { sha256: hash(payload), bytes: payload.length },
79
- partLocation(part)
80
- );
81
- }
82
- return result;
83
- }
84
- if (mode === "structural") {
85
- for (const slide of index.slides) {
86
- const id = ownerId(slide.part);
87
- put("slides", id, { name: slide.name }, slide.location);
88
- put("slides", `${id}/position`, slide.position, slide.location);
89
- const detail = index.inventory.slides.find((item) => item.id === slide.id);
90
- put("slides", `${id}/visibility`, detail.show.explicit, slide.location);
91
- }
92
- const properties = await readProperties(bytes, {}, context);
93
- for (const property of [...properties].sort((a, b) => {
94
- const left = `${a.kind}/${a.namespace}/${a.name}`, right = `${b.kind}/${b.namespace}/${b.name}`;
95
- return left < right ? -1 : left > right ? 1 : 0;
96
- })) {
97
- put(
98
- "properties",
99
- `property/${property.kind}/${encodeURIComponent(property.namespace)}/${encodeURIComponent(property.name)}`,
100
- { type: property.type, value: property.value },
101
- partLocation(property.part)
102
- );
103
- }
104
- const roots = /* @__PURE__ */ new Map();
105
- for (const object of index.objects.filter((item) => item.scope === "slides")) {
106
- let root = roots.get(object.part);
107
- if (!root) {
108
- root = parseXmlPart(reader.get(object.part), context.xmlLimits).root;
109
- roots.set(object.part, root);
110
- }
111
- const node = nodeFor(root, object.id);
112
- const owner = node.children.find(
113
- (child) => child.name.namespace === node.name.namespace && ["spPr", "grpSpPr"].includes(child.name.localName)
114
- ) ?? node;
115
- const drawingNamespace = node.name.namespace === "http://purl.oclc.org/ooxml/presentationml/main" ? "http://purl.oclc.org/ooxml/drawingml/main" : "http://schemas.openxmlformats.org/drawingml/2006/main";
116
- const transforms = owner.children.filter(
117
- (child) => ["xfrm", "prstGeom", "custGeom"].includes(child.name.localName) && child.name.namespace === (node.name.localName === "graphicFrame" ? node.name.namespace : drawingNamespace)
118
- );
119
- put(
120
- "geometry",
121
- `${ownerId(object.part)}/shape/${encodeURIComponent(object.id)}/geometry`,
122
- transforms.map(geometry),
123
- object.location
124
- );
125
- }
126
- }
127
- if (mode === "structural" || mode === "text") {
128
- const text = await readPresentationText(bytes, {}, context);
129
- for (const segment of text.segments) {
130
- const cell = segment.cell ? `/cell/${segment.cell.row}/${segment.cell.column}` : "";
131
- put(
132
- "text",
133
- `${ownerId(segment.location.owner)}/shape/${encodeURIComponent(segment.location.objectId)}${cell}/text`,
134
- segment.text,
135
- segment.location
136
- );
137
- }
138
- put("text", "text/order", [...result.get("text").keys()]);
139
- }
140
- const media = new Map(index.inventory.media.map((part) => [part.part, part]));
141
- if (mode === "structural" || mode === "media") {
142
- const counts = /* @__PURE__ */ new Map();
143
- for (const part of media.values()) {
144
- const entry = counts.get(part.sha256) ?? { sha256: part.sha256, bytes: part.bytes, count: 0 };
145
- entry.count++;
146
- counts.set(part.sha256, entry);
147
- }
148
- for (const [digest, value] of [...counts].sort(([a], [b]) => a < b ? -1 : a > b ? 1 : 0))
149
- put("media", `media/${digest}`, value);
150
- }
151
- if (mode === "structural" || mode === "relationships") {
152
- for (const edge of index.inventory.relationships) {
153
- const targetMedia = edge.targetPart === null ? void 0 : media.get(edge.targetPart);
154
- const target = edge.external ? edge.target : targetMedia ? `media/${targetMedia.sha256}` : ownerId(edge.targetPart);
155
- put(
156
- "relationships",
157
- `${ownerId(edge.owner)}/relationship/${encodeURIComponent(edge.id)}`,
158
- { type: edge.type, external: edge.external, target },
159
- partLocation(edge.owner)
160
- );
161
- }
162
- }
163
- if (mode === "structural") {
164
- for (const part of index.inventory.parts.filter((part2) => !media.has(part2.part))) {
165
- put(
166
- "opaque",
167
- `part/${encodeURIComponent(part.part)}`,
168
- { sha256: part.sha256, bytes: part.bytes, contentType: part.contentType },
169
- partLocation(part.part)
170
- );
171
- }
172
- }
173
- return result;
174
- }
175
- async function comparePresentations(left, right, options, context) {
176
- const modes = [
177
- "structural",
178
- "text",
179
- "media",
180
- "relationships",
181
- "effective-formatting",
182
- "raw"
183
- ];
184
- if (!options || typeof options !== "object" || ![Object.prototype, null].includes(Object.getPrototypeOf(options)) || Object.keys(options).some((key) => key !== "mode") || options.mode !== void 0 && !modes.includes(options.mode))
185
- throw new OfficeError("invalid-value", "Invalid comparison options.", "usage");
186
- const mode = options.mode ?? "structural";
187
- if (mode === "effective-formatting")
188
- throw new OfficeError(
189
- "unsupported-profile",
190
- "Complete effective formatting comparison is unavailable; select a raw formatting mode.",
191
- "usage"
192
- );
193
- const before = await snapshot(left, mode, context);
194
- const after = await snapshot(right, mode, context);
195
- const changes = [];
196
- for (const category of categories) {
197
- const a = before.get(category), b = after.get(category);
198
- for (const id of /* @__PURE__ */ new Set([...a.keys(), ...b.keys()])) {
199
- const first = a.get(id), second = b.get(id);
200
- if (JSON.stringify(first?.value) === JSON.stringify(second?.value)) continue;
201
- if (category === "slides" && (id.endsWith("/position") || id.endsWith("/visibility"))) {
202
- const root = id.slice(0, id.lastIndexOf("/"));
203
- if (!a.has(root) || !b.has(root)) continue;
204
- }
205
- changes.push(
206
- Object.freeze({
207
- id,
208
- category,
209
- kind: !first ? "added" : !second ? "removed" : "changed",
210
- before: first?.value ?? null,
211
- after: second?.value ?? null,
212
- left: first?.location ?? null,
213
- right: second?.location ?? null
214
- })
215
- );
216
- }
217
- }
218
- return Object.freeze({
219
- equal: changes.length === 0,
220
- mode,
221
- formatting: "raw",
222
- changes: Object.freeze(changes),
223
- limitations: Object.freeze([
224
- "No rendering or effective formatting comparison is performed.",
225
- ...mode === "structural" ? [
226
- "Nonmedia part byte hashes conservatively report raw and unsupported content changes, including parts also inspected semantically."
227
- ] : [],
228
- ...mode === "text" || mode === "structural" ? [
229
- "Semantic text comparison covers slide text in structural order; other text scopes are not included."
230
- ] : [],
231
- ...mode === "raw" ? [
232
- "Raw comparison covers uncompressed package members; ZIP container metadata is excluded."
233
- ] : []
234
- ])
235
- });
236
- }
237
-
238
- export {
239
- comparePresentations
240
- };
@@ -1,54 +0,0 @@
1
- import {
2
- ModelStore
3
- } from "./chunk-NYFYTL5G.js";
4
- import "./chunk-DGBQ7QDE.js";
5
- import "./chunk-S2QNBAN6.js";
6
- import "./chunk-CZ5K2YPU.js";
7
- import "./chunk-RV5AGXOV.js";
8
- import "./chunk-QTC5YGNM.js";
9
- import "./chunk-A347DLRB.js";
10
- import "./chunk-WYZG3DRR.js";
11
- import "./chunk-FSVJ67G5.js";
12
- import "./chunk-VDTFVRYX.js";
13
- import "./chunk-MYZ46FQL.js";
14
- import "./chunk-ZXELXF2H.js";
15
- import "./chunk-DMAOMHJQ.js";
16
- import "./chunk-ZTMZO4IT.js";
17
- import "./chunk-HGIMFVI2.js";
18
- import "./chunk-42MEXZBJ.js";
19
- import "./chunk-JW6WVNTM.js";
20
- import "./chunk-OSYY6E23.js";
21
- import "./chunk-BLIFGBIO.js";
22
- import "./chunk-N4MUBJCT.js";
23
- import "./chunk-UIX3CASN.js";
24
- import "./chunk-GLAF45M7.js";
25
- import "./chunk-47IAU25U.js";
26
- import "./chunk-EVYKV3QI.js";
27
- import "./chunk-JGKSWDGP.js";
28
- import "./chunk-TBAH4XGI.js";
29
- import "./chunk-NHNZYWPW.js";
30
- import "./chunk-KY4LCHUF.js";
31
- import "./chunk-JGGRMERW.js";
32
- import "./chunk-L4FX5S6P.js";
33
- import "./chunk-5BUL25DF.js";
34
- import "./chunk-Y7AXMCFV.js";
35
- import "./chunk-WI4522BH.js";
36
- import "./chunk-ET5SFGRH.js";
37
- import "./chunk-WLANDWNW.js";
38
- import "./chunk-DQ6XGWDH.js";
39
- import "./chunk-M57GLLK4.js";
40
- import "./chunk-RIKNMBLZ.js";
41
- import "./chunk-JWO7BP4K.js";
42
- import "./chunk-OBK24KGM.js";
43
- import "./chunk-AW2RHM4G.js";
44
- import "./chunk-DIXKEQ76.js";
45
- import "./chunk-3A7KNHOR.js";
46
- import "./chunk-WXMYTNWS.js";
47
- import "./chunk-L5457JAS.js";
48
- import "./chunk-37XCUS43.js";
49
- import "./chunk-IOEUZ4EA.js";
50
- import "./chunk-E6SK3OU2.js";
51
- import "./chunk-65DS4IOB.js";
52
- export {
53
- ModelStore
54
- };