@poe-platform/safe-bash 0.1.814 → 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.
- package/dist/image-ast/index.js +1 -1
- package/dist/mp4-ast/codecs.d.ts +3 -0
- package/dist/mp4-ast/esds-source.d.ts +7 -0
- package/dist/mp4-ast/index.d.ts +6 -1
- package/dist/mp4-ast/mp4-codec-metadata.d.ts +48 -0
- package/dist/mp4-ast/mp4-codec-source.d.ts +8 -0
- package/dist/mp4-ast/mp4-fragment-source.d.ts +35 -0
- package/dist/mp4-ast/mp4-packets-source.d.ts +11 -0
- package/dist/mp4-ast/mp4-sample-source.d.ts +5 -2
- package/dist/mp4-ast/types.d.ts +11 -0
- package/dist/pdf-ast/ast.d.ts +6 -0
- package/dist/pdf-ast/content/evaluator.d.ts +4 -1
- package/dist/pdf-ast/content/stored-dictionary.d.ts +15 -1
- package/dist/pdf-ast/content/stored-record.d.ts +6 -0
- package/dist/pdf-ast/cos/object-reader.d.ts +3 -2
- package/dist/pdf-ast/cos/retained-writer.d.ts +1 -0
- package/dist/pdf-ast/cos/value-parser.d.ts +5 -0
- package/dist/pdf-ast/edit/forms.d.ts +1 -0
- package/dist/pdf-ast/edit/retained-form-data.d.ts +9 -0
- package/dist/pdf-ast/edit/retained-graph.d.ts +1 -0
- package/dist/pdf-ast/edit/retained-page-copy.d.ts +10 -0
- package/dist/pdf-ast/extract/images.d.ts +2 -1
- package/dist/pdf-ast/fonts/resolve.d.ts +1 -0
- package/dist/pdf-ast/index.d.ts +3 -0
- package/dist/pdf-ast/index.js +1563 -373
- package/dist/pdf-ast/render/raster.d.ts +14 -0
- package/dist/pdf-ast/render/svg-image-stream.d.ts +6 -0
- package/dist/pdf-ast/render/svg-path-stream.d.ts +15 -0
- package/dist/pdf-ast/retained-document.d.ts +1 -1
- package/dist/safe-bash/chunks/{chunk-I6ECNJMR.js → chunk-AXGI5JVL.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-TPG55BAQ.js → chunk-FQRI5AS5.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-TWWGAW4M.js → chunk-HD6DWOAC.js} +1 -1
- package/dist/safe-bash/chunks/{chunk-5JCZEXEM.js → chunk-SXSEF5E2.js} +12 -7
- package/dist/safe-bash/command-chunks/biff-UBP2BZLK-JPODPKS3.js +5448 -0
- package/dist/safe-bash/command-chunks/{chunk-S7HIOT7Z.js → chunk-26JE5JEB.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-AG2SNMP5.js → chunk-2ALHVXEM.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-4YLACJHE.js → chunk-2IMIKROX.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-MYZ46FQL.js → chunk-2QZUAZTH.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-YAD7EV4N.js → chunk-2TWXRJPB.js} +11 -11
- package/dist/safe-bash/command-chunks/{chunk-NYFYTL5G.js → chunk-345YBIHP.js} +27 -27
- package/dist/safe-bash/command-chunks/{chunk-3MG5EAMX.js → chunk-35DU6I2M.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-FSVJ67G5.js → chunk-3DWFXESW.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-TKCUGMRZ.js → chunk-3K5CVXUV.js} +18 -18
- package/dist/safe-bash/command-chunks/{chunk-6LPSKLLD.js → chunk-3MUFXGA2.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-AVGXFWEB.js → chunk-3PM46VWH.js} +191 -70
- package/dist/safe-bash/command-chunks/{chunk-6QYSF7I2.js → chunk-3ZWFE4CK.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-LAPOMHGY.js → chunk-45DKGZYO.js} +857 -424
- package/dist/safe-bash/command-chunks/{chunk-SW37YCBW.js → chunk-4772DJKS.js} +54 -36
- package/dist/safe-bash/command-chunks/{chunk-FOONI6BD.js → chunk-4ABR3KGK.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-7KZ5LWV2.js → chunk-4IDV763L.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-FGGHYUWR.js → chunk-4QEJPP3K.js} +102 -7
- package/dist/safe-bash/command-chunks/{chunk-RV5AGXOV.js → chunk-4X2MPZXW.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-LNTEV56A.js → chunk-4YFTJS5U.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-6XES7Z4G.js → chunk-57PK2QFX.js} +12 -12
- package/dist/safe-bash/command-chunks/{chunk-42MEXZBJ.js → chunk-5GDF5FAS.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-BS3ZEQGT.js → chunk-5KZMR6AJ.js} +18 -16
- package/dist/safe-bash/command-chunks/{chunk-ZU2KJMXO.js → chunk-5MNQTHED.js} +10 -10
- package/dist/safe-bash/command-chunks/{chunk-W25EIKDJ.js → chunk-5NC2IQMQ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-KY4LCHUF.js → chunk-5O45KGW5.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-GYM5ICK4.js → chunk-5V7WIQ2D.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-3JM7E42I.js → chunk-5XUWGUGN.js} +114 -35
- package/dist/safe-bash/command-chunks/{chunk-SUTHGUD3.js → chunk-5YL453ZF.js} +34 -34
- package/dist/safe-bash/command-chunks/{chunk-IHXZMAMY.js → chunk-62RG3GHF.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-P2LT6TGR.js → chunk-6EZWG56T.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-CCMAHM3I.js → chunk-6JGICYHP.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-AWPI4DZR.js → chunk-6KJDTKE4.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-FUQMEUAT.js → chunk-6M3JTPKE.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-H33D4R26.js → chunk-6RLWPB44.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-3GRMU7TM.js → chunk-6W4RMBFH.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-RIVKF77R.js → chunk-6YF2QADH.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-LEO4VRIN.js → chunk-77ROD2TR.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-XNGM3W5R.js → chunk-7B2MHKIW.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-RFMHNTTF.js → chunk-7OCTMVYJ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-DBLQUZGN.js → chunk-7PYDVQPB.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-AM5LANIE.js → chunk-A2L3U7DW.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-UYGQEQIP.js → chunk-A4P37F3P.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-ADHFF2IM.js → chunk-A5SPMSKD.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-ENEIE44W.js → chunk-A6OTPNNI.js} +3 -3
- package/dist/safe-bash/command-chunks/chunk-AF2IO57Q.js +733 -0
- package/dist/safe-bash/command-chunks/{chunk-AFPXADZG.js → chunk-AHD3CGAY.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-VT7UBPAE.js → chunk-ALD53QFL.js} +89 -30
- package/dist/safe-bash/command-chunks/{chunk-4B2ZUGLT.js → chunk-ARE267HR.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-OTF2AJ5M.js → chunk-AYQPJQJR.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-2VVJRVYM.js → chunk-B6XTAKKQ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-GCHB7VNX.js → chunk-BIJW6QWB.js} +17 -17
- package/dist/safe-bash/command-chunks/{chunk-OVEPYULA.js → chunk-BKK4MS3V.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-3EB2FSAN.js → chunk-BOVDUJ3A.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-SEPUP6TZ.js → chunk-BSTABZIK.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-ATHHWPSE.js → chunk-BZRWZ6GO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-5BIQWWLB.js → chunk-CFMJXJS5.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-BZMNC7Q5.js → chunk-CGJ7GMHO.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-RGDOYWOD.js → chunk-CHZE6FNT.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-V7E3PZOK.js → chunk-CKA7ZROU.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-MEM2ZPMI.js → chunk-CKIXC7AO.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-Y54L4P4J.js → chunk-CORUUCS2.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-FF7UGJWS.js → chunk-DBZCTL7C.js} +150 -35
- package/dist/safe-bash/command-chunks/{chunk-6ZGCKUAM.js → chunk-DIRK47GT.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WYZG3DRR.js → chunk-DM5WURQL.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-EBHOZIBS.js → chunk-DOVWHVHI.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-GQGMQMIM.js → chunk-DXOXUKQB.js} +248 -6
- package/dist/safe-bash/command-chunks/{chunk-JR3Q6QNL.js → chunk-DZOKH5BL.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-K4XNUJVJ.js → chunk-E22EAYJN.js} +197 -171
- package/dist/safe-bash/command-chunks/{chunk-3EASXF5D.js → chunk-E4TF5W6O.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-MLOYUXUV.js → chunk-EJ4UP7DA.js} +31 -9
- package/dist/safe-bash/command-chunks/{chunk-USGZN2KE.js → chunk-ENMJHB2C.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-ZSQZHFWS.js → chunk-ERWIJYCS.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-S2QNBAN6.js → chunk-ET6LMDEX.js} +12 -12
- package/dist/safe-bash/command-chunks/{chunk-6XGDWFNQ.js → chunk-EWC56JNI.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-EQWFKNHJ.js → chunk-EZDWPTYB.js} +19 -19
- package/dist/safe-bash/command-chunks/{chunk-CQBACD2V.js → chunk-F2NF6FHV.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-NFII726L.js → chunk-FAU2KL6I.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-4EHY6J2Z.js → chunk-FB2WPI3M.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-2PKBXGXD.js → chunk-FEBTT5NH.js} +5 -5
- package/dist/safe-bash/command-chunks/chunk-FGARVKAX.js +704 -0
- package/dist/safe-bash/command-chunks/{chunk-N4MUBJCT.js → chunk-FGHSE3RZ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WBKB7HBZ.js → chunk-FHQOFEQK.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-3ZRCL756.js → chunk-FJLSYX5P.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-PMWW7KSB.js → chunk-FJSD43VF.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-XKAUKLF7.js → chunk-FLSXHLJG.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-3EW7GYHM.js → chunk-FR63MJSO.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-NRFTYZ2R.js → chunk-FUYZUETI.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-JUHOL5KB.js → chunk-G3FK5VVG.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-4UPKVQWH.js → chunk-G3LUT475.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-Q7UZTMF4.js → chunk-GAROGIVU.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-4RRYWHED.js → chunk-GMBUOYTN.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-FYYFV6PW.js → chunk-GR4ONCQ5.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-XTEIT5CI.js → chunk-GTOMW4VV.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-OVQP6KH5.js → chunk-H56BSMFQ.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-RQYPFLZJ.js → chunk-HOJ7WDTS.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-BLIFGBIO.js → chunk-HOKPYTHQ.js} +2 -2
- package/dist/safe-bash/command-chunks/chunk-HQEYSSZV.js +152 -0
- package/dist/safe-bash/command-chunks/{chunk-NEMUPUUB.js → chunk-ICJH6A73.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-CSE4VQKG.js → chunk-IJE65P52.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-MKOIPOXX.js → chunk-IOXMGD2H.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-LDW3RF7Y.js → chunk-ISFGPCED.js} +12 -12
- package/dist/safe-bash/command-chunks/{chunk-S43QRKDC.js → chunk-IVKAFEPO.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-A347DLRB.js → chunk-IWVANZWH.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-ZXELXF2H.js → chunk-IZ3SD5S2.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-HGIMFVI2.js → chunk-J6FNSVHT.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-GLAF45M7.js → chunk-JA36YOZI.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WHNYT34N.js → chunk-K2R7H3KO.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-2ETEJOYX.js → chunk-K7VDCBXW.js} +21 -21
- package/dist/safe-bash/command-chunks/{chunk-CK2WFJZN.js → chunk-KASXIRKD.js} +12 -14
- package/dist/safe-bash/command-chunks/{chunk-CKEMZUE3.js → chunk-KDBU5Q2N.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-6VBDJC6V.js → chunk-KDDXLHN7.js} +6 -6
- package/dist/safe-bash/command-chunks/chunk-KHUT7BB5.js +65 -0
- package/dist/safe-bash/command-chunks/{chunk-NEVQWOU6.js → chunk-KLAC2MIZ.js} +10 -10
- package/dist/safe-bash/command-chunks/{chunk-QGD64UHJ.js → chunk-KLCHCSIV.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-CXME4YHU.js → chunk-KM2SMMXZ.js} +59 -201
- package/dist/safe-bash/command-chunks/{chunk-RHU44OMN.js → chunk-KXM3HTAF.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-AVOGFREX.js → chunk-KYIGYYEY.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-5OM3UIK3.js → chunk-L2VLASZ4.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-Z7QOSXQC.js → chunk-LECGQSQW.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-RXQ2G2YK.js → chunk-LFSWLJPR.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-OSYY6E23.js → chunk-LJ3UYESS.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-MVLVIMJ6.js → chunk-LMLBQSAM.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-MGMTRGKM.js → chunk-LNAZ3E4Q.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-WJ2ERUCQ.js → chunk-LNKZVU5V.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-WWHMI4S3.js → chunk-LQDANF2B.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-CIRDVCAZ.js → chunk-LQX7RAF7.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-SWAKALDJ.js → chunk-LT2YCGC5.js} +10 -10
- package/dist/safe-bash/command-chunks/{chunk-Y7AXMCFV.js → chunk-LZY46GYY.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-VT2PHQ63.js → chunk-MDFNUNK5.js} +15 -15
- package/dist/safe-bash/command-chunks/{chunk-YP3WWV5N.js → chunk-MN3BB4WW.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-WTVJLHMG.js → chunk-MOUCMZZP.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IB5QP4LF.js → chunk-MQE77MEQ.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-FSYMSWJU.js → chunk-MUTARE5I.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-F762XDNG.js → chunk-MZYQKH26.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-N6G3345Q.js → chunk-N32AP43V.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-XU6S3XUZ.js → chunk-N35IJXBK.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-EVYKV3QI.js → chunk-N3ZH4YYH.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-VUWXLH3E.js → chunk-N4HWOLGZ.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-G3TAX3CV.js → chunk-N5J3IZZK.js} +8124 -7200
- package/dist/safe-bash/command-chunks/{chunk-W3ZSWK76.js → chunk-NCNHJRIY.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-FXCSPPYE.js → chunk-NDALIHKK.js} +20 -20
- package/dist/safe-bash/command-chunks/{chunk-BS5JEUEW.js → chunk-NKK76B4V.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-4EZJV4FZ.js → chunk-NLCUQD7Y.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-RHDERFMR.js → chunk-O2HNOQQG.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-G2COZLXX.js → chunk-OBIXFO25.js} +10 -10
- package/dist/safe-bash/command-chunks/{chunk-47IAU25U.js → chunk-OCV5ZU35.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-3YEQI5B7.js → chunk-OFDJJRAD.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-VDTFVRYX.js → chunk-OFONWWEZ.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-F4YFTO2K.js → chunk-OHEZQ4QA.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-JW6WVNTM.js → chunk-OIHQXURE.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-ZTMZO4IT.js → chunk-ONQP4FNV.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-K2WOMJOQ.js → chunk-OVUY46QF.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-DGBQ7QDE.js → chunk-OWCBX5M2.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-LKGTH2Q7.js → chunk-P462JTNT.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-5LFGXN3D.js → chunk-P4OWVKMD.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-46AMTJPE.js → chunk-POGVOCOB.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-PLMF35XK.js → chunk-PPN53PX3.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-V5XC43BX.js → chunk-PRO7JOIH.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-UJERQEJB.js → chunk-PU5DMQGG.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-IWHNRYER.js → chunk-Q65GWGQR.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-BLGGAHQW.js → chunk-QCIAX6HZ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-ET5SFGRH.js → chunk-QDV2NIFR.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-Y42KSX63.js → chunk-QMBMZSJF.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-KUOCGGEU.js → chunk-QNETPOMH.js} +6 -5
- package/dist/safe-bash/command-chunks/{chunk-QB72X7FF.js → chunk-QNX5LZBK.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-LZ2JFMKT.js → chunk-QOKFSYD5.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-7DOLY7IV.js → chunk-R7LF4XQV.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-PIVH35EQ.js → chunk-RINR7XPR.js} +37 -10
- package/dist/safe-bash/command-chunks/{chunk-MPXMRTMY.js → chunk-ROQ3VNVX.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-6WNVGCXD.js → chunk-RRAQII52.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-2BNGPR6Z.js → chunk-RTHYAGKI.js} +2 -2
- package/dist/safe-bash/command-chunks/chunk-RTKDZBJS.js +816 -0
- package/dist/safe-bash/command-chunks/{chunk-JVKE7YZN.js → chunk-RVWIEXR7.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-XM5QJCPD.js → chunk-S5ER73EA.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-YRPXBGRX.js → chunk-SBXS4S6Y.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-HI6ZYH3W.js → chunk-SHLT5R64.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-Q5PWYPQV.js → chunk-SICTBSLW.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-AXXZNB7U.js → chunk-SL4LD25A.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-JGKSWDGP.js → chunk-SNA2LVBX.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-TXPDKEGY.js → chunk-SWIF6BBY.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-PS5GDFIP.js → chunk-T2FRXSQT.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-HELAVGZH.js → chunk-T4SEQU66.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-3SPLP2DB.js → chunk-T5OQ53XS.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-KBAQHE5Y.js → chunk-TG2RVQLP.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-CZ5K2YPU.js → chunk-TXU7MMHN.js} +24 -24
- package/dist/safe-bash/command-chunks/{chunk-TYPS5MOU.js → chunk-TXWDR2P4.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-ETXPMVR6.js → chunk-TY7JXEWI.js} +11 -11
- package/dist/safe-bash/command-chunks/{chunk-X6OHFKBL.js → chunk-U42WHQRH.js} +8 -8
- package/dist/safe-bash/command-chunks/{chunk-Z2WNYEPD.js → chunk-UFLMOU3B.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-2BLTUQNK.js → chunk-UJYXSLM6.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-Q7TVCBU2.js → chunk-UKAGRRLZ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-4GQKCUS5.js → chunk-UPWLHHZ2.js} +13 -13
- package/dist/safe-bash/command-chunks/{chunk-5L4YGRQU.js → chunk-URQSUMMJ.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-KPHLESD4.js → chunk-UT5X6QRU.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-T5S4SJGO.js → chunk-V6JPIZUW.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-MKK6FM5H.js → chunk-VMZIAFVJ.js} +11 -11
- package/dist/safe-bash/command-chunks/{chunk-HK6MSB7Z.js → chunk-VNNNVT4C.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-ROL5AEX6.js → chunk-VVV45NLY.js} +1 -1
- package/dist/safe-bash/command-chunks/chunk-VVWHFNHD.js +502 -0
- package/dist/safe-bash/command-chunks/{chunk-KCLJGRU7.js → chunk-VZTVR3JI.js} +12 -12
- package/dist/safe-bash/command-chunks/{chunk-PLR5IULU.js → chunk-WDVPHDBH.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-MNK3DDH6.js → chunk-WH624PKJ.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-TJLXSENN.js → chunk-WHZ6XK7Y.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-DN6MSXY7.js → chunk-WIW3KDBS.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-GXMPXMDP.js → chunk-WMBELKPP.js} +11 -11
- package/dist/safe-bash/command-chunks/{chunk-NHNZYWPW.js → chunk-WMV5224N.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-RTNI47C5.js → chunk-WOL3LBXE.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-7SOE7XIS.js → chunk-WVD5WZXD.js} +5 -5
- package/dist/safe-bash/command-chunks/{chunk-XMTR7QGL.js → chunk-X42MJT2J.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-XUJAQA3S.js → chunk-XBWD6SI3.js} +33 -33
- package/dist/safe-bash/command-chunks/{chunk-ZQM37BGE.js → chunk-XFIDOCYH.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-IBYMPAUW.js → chunk-XPQUUFQD.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-NQINS4XY.js → chunk-XVEI4HZL.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-KSBNZTAZ.js → chunk-YKODRSGT.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-WZRFS5OY.js → chunk-YXR4JE4U.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-DCMSPMMD.js → chunk-Z7UIOPHJ.js} +1 -1
- package/dist/safe-bash/command-chunks/{chunk-AY3KQ4EN.js → chunk-ZAYTFXUX.js} +7 -7
- package/dist/safe-bash/command-chunks/{chunk-DZH54L3F.js → chunk-ZM7HMBAJ.js} +10 -10
- package/dist/safe-bash/command-chunks/{chunk-NFGCBQN3.js → chunk-ZNCPIZCN.js} +2 -2
- package/dist/safe-bash/command-chunks/{chunk-HKGNBH7Z.js → chunk-ZRHKXN6W.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-A45UG4KT.js → chunk-ZZERSKAR.js} +5 -5
- package/dist/safe-bash/command-chunks/{clipboard-BBDK33GP-QZ4ERNQX.js → clipboard-BBDK33GP-VB22F7GI.js} +2 -2
- package/dist/safe-bash/command-chunks/{command-engine-7V6PZR7G.js → command-engine-GHE6QUHU.js} +63 -23
- package/dist/safe-bash/command-chunks/{engine-UYJENSWK-VSCGKSQV.js → engine-RG6HQCCB-FXYZS264.js} +1 -1
- package/dist/safe-bash/command-chunks/{gnumeric-UJPXWBVR-7VOHQAPM.js → gnumeric-UJPXWBVR-YPXTNEDZ.js} +2 -2
- package/dist/safe-bash/command-chunks/model-store-I7YAWL5V.js +54 -0
- package/dist/safe-bash/command-chunks/{xlsx-RE54MFCS-DI3F765V.js → xlsx-RE54MFCS-IQ6OXXKK.js} +1 -1
- package/dist/safe-bash/commands/bc/index.browser.js +1 -1
- package/dist/safe-bash/full-core.browser.js +4 -4
- package/dist/safe-bash/plugins/index.browser.js +3 -3
- package/dist/safe-bash/registry-entry.browser.js +2 -2
- package/dist/safe-bash/search.browser.js +1 -1
- package/dist/safe-bash/shell/runtime.d.ts +1 -0
- package/dist/safe-bash/shell/runtime.js +12 -3
- package/dist/safe-bash/shell/sync-extra-evaluators.js +7 -4
- package/dist/safe-bash/shell-entry.browser.js +2 -2
- package/dist/safe-bash-command-awk/awk-runtime.js +3 -3
- package/dist/safe-bash-command-awk/awk.js +4 -4
- package/dist/safe-bash-command-awk/index.js +4 -4
- package/dist/safe-bash-command-cp/index.js +3 -3
- package/dist/safe-bash-command-csvkit/index.js +1 -1
- package/dist/safe-bash-command-diff/diff.js +2 -2
- package/dist/safe-bash-command-diff/index.js +3 -3
- package/dist/safe-bash-command-diff/sync.js +2 -2
- package/dist/safe-bash-command-factor/command.js +2 -2
- package/dist/safe-bash-command-factor/index.js +2 -2
- package/dist/safe-bash-command-ffmpeg/index.js +1 -1
- package/dist/safe-bash-command-ffprobe/index.js +2 -2
- package/dist/safe-bash-command-ffprobe/media.d.ts +12 -2
- package/dist/safe-bash-command-ffprobe/media.js +4 -2
- package/dist/safe-bash-command-getopt/command.js +2 -2
- package/dist/safe-bash-command-getopt/index.js +2 -2
- package/dist/safe-bash-command-html-to-markdown/index.js +51 -813
- package/dist/safe-bash-command-html-to-markdown/stored-destination.d.ts +8 -0
- package/dist/safe-bash-command-html-to-markdown/stored-destination.js +10 -0
- package/dist/safe-bash-command-html-to-markdown/stored-text.d.ts +4 -1
- package/dist/safe-bash-command-html-to-markdown/stored-text.js +1 -1
- package/dist/safe-bash-command-htmlq/index.js +1280 -419
- package/dist/safe-bash-command-iconv/command.js +2 -2
- package/dist/safe-bash-command-iconv/index.js +2 -2
- package/dist/safe-bash-command-llm/index.js +2 -2
- package/dist/safe-bash-command-llm/openai.js +2 -2
- package/dist/safe-bash-command-llm/providers/index.js +2 -2
- package/dist/safe-bash-command-llm/providers/openai.js +2 -2
- package/dist/safe-bash-command-node/commands/node/browser.js +4 -4
- package/dist/safe-bash-command-node/commands/node/default-runtime.js +4 -4
- package/dist/safe-bash-command-node/commands/node/safejs.js +4 -4
- package/dist/safe-bash-command-pandoc/command.js +10 -9
- package/dist/safe-bash-command-pandoc/index.js +60 -59
- package/dist/safe-bash-command-patch/index.js +8 -7
- package/dist/safe-bash-command-patch/patch-formats.d.ts +6 -5
- package/dist/safe-bash-command-patch/patch-formats.js +3 -2
- package/dist/safe-bash-command-patch/patch-gnu-paths.d.ts +7 -7
- package/dist/safe-bash-command-patch/patch-gnu-reject.d.ts +1 -1
- package/dist/safe-bash-command-patch/patch-gnu-reject.js +3 -2
- package/dist/safe-bash-command-patch/patch-publication.js +3 -2
- package/dist/safe-bash-command-patch/patch-text.d.ts +13 -0
- package/dist/safe-bash-command-patch/patch.js +7 -6
- package/dist/safe-bash-command-patch/stored-patch.d.ts +32 -6
- package/dist/safe-bash-command-patch/stored-target.d.ts +2 -1
- package/dist/safe-bash-command-patch/unified.d.ts +22 -8
- package/dist/safe-bash-command-patch/unified.js +2 -1
- package/dist/safe-bash-command-pdftk/index.js +45 -122
- package/dist/safe-bash-command-pdftoppm/index.js +131 -27
- package/dist/safe-bash-command-playwright-cli/index.js +12 -12
- package/dist/safe-bash-command-playwright-cli/playwright/abilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/capability-events.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/capability-result.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/controller.js +7 -7
- package/dist/safe-bash-command-playwright-cli/playwright/download-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/drop-capability.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/index.js +12 -12
- package/dist/safe-bash-command-playwright-cli/playwright/modal-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/native-evaluation.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/native-json-snapshot.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/native-snapshot.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/open-options.js +2 -2
- package/dist/safe-bash-command-playwright-cli/playwright/profile.js +3 -3
- package/dist/safe-bash-command-playwright-cli/playwright/recording-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/route-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/snapshot.js +3 -3
- package/dist/safe-bash-command-playwright-cli/playwright/standard-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/storage-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/tracing-capabilities.js +1 -1
- package/dist/safe-bash-command-playwright-cli/playwright/webmcp-capabilities.js +1 -1
- package/dist/safe-bash-command-pptx/engine.js +1 -1
- package/dist/safe-bash-command-python/executor.js +11 -11
- package/dist/safe-bash-command-python/index.js +11 -11
- package/dist/safe-bash-command-python/jspi.js +2 -2
- package/dist/safe-bash-command-rg/index.js +3 -3
- package/dist/safe-bash-command-rg/rg-command.js +3 -3
- package/dist/safe-bash-command-safejs/index.js +4 -4
- package/dist/safe-bash-command-safejs/io.js +3 -3
- package/dist/safe-bash-command-safejs/render.js +2 -2
- package/dist/safe-bash-command-safejs/runtime.js +4 -4
- package/dist/safe-bash-command-soffice/index.js +5 -4
- package/dist/safe-bash-command-sort/index.js +3 -3
- package/dist/safe-bash-command-ssconvert/index.js +13 -13
- package/dist/safe-bash-command-tar/create.js +3 -3
- package/dist/safe-bash-command-tar/extract.js +3 -3
- package/dist/safe-bash-command-tar/index.js +7 -7
- package/dist/safe-bash-command-tar/modes.js +5 -5
- package/dist/safe-bash-command-unzip/index.js +2 -2
- package/dist/safe-bash-command-unzip/unzip.js +2 -2
- package/dist/safe-bash-command-xmllint/index.js +1 -1
- package/dist/safe-bash-command-xz/index.js +5 -5
- package/dist/safe-bash-compression-engine/files.js +5 -5
- package/dist/safe-bash-compression-engine/index.js +3 -3
- package/dist/safe-bash-compression-engine/operand.js +6 -6
- package/dist/safe-bash-compression-engine/stream.js +3 -3
- package/dist/safe-bash-compression-engine/zstd-decode.js +2 -2
- package/dist/safe-bash-contracts/escaping.js +3 -3
- package/dist/safe-bash-contracts/filesystem-output.js +3 -3
- package/dist/safe-bash-contracts/index.js +10 -10
- package/dist/safe-bash-docx-engine/ancillary-resources.js +9 -9
- package/dist/safe-bash-docx-engine/batch-operations.js +66 -66
- package/dist/safe-bash-docx-engine/batch-result-schema.js +78 -78
- package/dist/safe-bash-docx-engine/batch.js +77 -77
- package/dist/safe-bash-docx-engine/bookmarks.js +17 -17
- package/dist/safe-bash-docx-engine/charts.js +10 -10
- package/dist/safe-bash-docx-engine/command-option-rules.js +5 -5
- package/dist/safe-bash-docx-engine/command-properties.js +3 -3
- package/dist/safe-bash-docx-engine/comments.js +25 -25
- package/dist/safe-bash-docx-engine/control-bindings.js +20 -20
- package/dist/safe-bash-docx-engine/control-repeat.js +20 -20
- package/dist/safe-bash-docx-engine/controls.js +18 -18
- package/dist/safe-bash-docx-engine/create.js +10 -10
- package/dist/safe-bash-docx-engine/diagrams.js +10 -10
- package/dist/safe-bash-docx-engine/diff.js +12 -12
- package/dist/safe-bash-docx-engine/document-properties.js +15 -15
- package/dist/safe-bash-docx-engine/equations.js +16 -16
- package/dist/safe-bash-docx-engine/extract.js +13 -13
- package/dist/safe-bash-docx-engine/fields.js +22 -22
- package/dist/safe-bash-docx-engine/font-inventory.js +17 -17
- package/dist/safe-bash-docx-engine/font-resources.js +5 -5
- package/dist/safe-bash-docx-engine/image-batch-operations.js +13 -13
- package/dist/safe-bash-docx-engine/image-insertion.js +20 -20
- package/dist/safe-bash-docx-engine/image-layout.js +18 -18
- package/dist/safe-bash-docx-engine/image-replacement.js +21 -21
- package/dist/safe-bash-docx-engine/images.js +18 -18
- package/dist/safe-bash-docx-engine/index.js +113 -113
- package/dist/safe-bash-docx-engine/inspection.js +19 -19
- package/dist/safe-bash-docx-engine/invocation.js +8 -8
- package/dist/safe-bash-docx-engine/io.js +8 -8
- package/dist/safe-bash-docx-engine/links.js +20 -20
- package/dist/safe-bash-docx-engine/lists.js +19 -19
- package/dist/safe-bash-docx-engine/locations.js +14 -14
- package/dist/safe-bash-docx-engine/notes.js +21 -21
- package/dist/safe-bash-docx-engine/objects.js +18 -18
- package/dist/safe-bash-docx-engine/operation-json-schema.js +3 -3
- package/dist/safe-bash-docx-engine/operation-schema.js +2 -2
- package/dist/safe-bash-docx-engine/pack.js +13 -13
- package/dist/safe-bash-docx-engine/package-view-batch-operations.js +21 -21
- package/dist/safe-bash-docx-engine/pandoc-adapter.js +28 -28
- package/dist/safe-bash-docx-engine/paragraph-edit.js +24 -24
- package/dist/safe-bash-docx-engine/part-provider.js +3 -3
- package/dist/safe-bash-docx-engine/property-values.js +3 -3
- package/dist/safe-bash-docx-engine/publication.js +8 -8
- package/dist/safe-bash-docx-engine/removal.js +20 -20
- package/dist/safe-bash-docx-engine/revision-decisions.js +21 -21
- package/dist/safe-bash-docx-engine/revision-edit.js +19 -19
- package/dist/safe-bash-docx-engine/revisions.js +17 -17
- package/dist/safe-bash-docx-engine/run-format.js +19 -19
- package/dist/safe-bash-docx-engine/sanitize.js +33 -33
- package/dist/safe-bash-docx-engine/sections.js +18 -18
- package/dist/safe-bash-docx-engine/settings.js +10 -10
- package/dist/safe-bash-docx-engine/shape-edit.js +20 -20
- package/dist/safe-bash-docx-engine/signatures.js +14 -14
- package/dist/safe-bash-docx-engine/stories.js +21 -21
- package/dist/safe-bash-docx-engine/structure-model-batch-operations.js +37 -37
- package/dist/safe-bash-docx-engine/style-model-batch-operations.js +26 -26
- package/dist/safe-bash-docx-engine/style-model-result-schema.js +43 -43
- package/dist/safe-bash-docx-engine/styles.js +17 -17
- package/dist/safe-bash-docx-engine/table-edit.js +26 -26
- package/dist/safe-bash-docx-engine/table-read.js +15 -15
- package/dist/safe-bash-docx-engine/template.js +21 -21
- package/dist/safe-bash-docx-engine/text-replace.js +19 -19
- package/dist/safe-bash-docx-engine/text-resource-read.js +15 -15
- package/dist/safe-bash-docx-engine/text.js +15 -15
- package/dist/safe-bash-docx-engine/validation.js +6 -6
- package/dist/safe-bash-docx-engine/xml-parts.js +21 -21
- package/dist/safe-bash-line-ending-engine/command.js +4 -4
- package/dist/safe-bash-line-ending-engine/index.js +7 -7
- package/dist/safe-bash-markdown-engine/commonmark-blocks.js +3 -3
- package/dist/safe-bash-markdown-engine/commonmark-inlines.js +3 -3
- package/dist/safe-bash-markdown-engine/gfm-syntax.js +2 -2
- package/dist/safe-bash-markdown-engine/index.js +4 -4
- package/dist/safe-bash-network-engine/aggregate.js +3 -3
- package/dist/safe-bash-network-engine/args.js +3 -3
- package/dist/safe-bash-network-engine/body.js +4 -4
- package/dist/safe-bash-network-engine/decode.js +3 -3
- package/dist/safe-bash-network-engine/fetch-transport.js +3 -3
- package/dist/safe-bash-network-engine/index.js +3 -3
- package/dist/safe-bash-network-engine/output.js +3 -3
- package/dist/safe-bash-network-engine/platform-portable.js +3 -3
- package/dist/safe-bash-network-engine/shared.js +2 -2
- package/dist/safe-bash-network-engine/transfer.js +9 -9
- package/dist/safe-bash-presentation-engine/accessibility.js +31 -30
- package/dist/safe-bash-presentation-engine/animation-editing.js +16 -15
- package/dist/safe-bash-presentation-engine/animations.js +16 -15
- package/dist/safe-bash-presentation-engine/backgrounds.js +17 -16
- package/dist/safe-bash-presentation-engine/bytes.js +4 -3
- package/dist/safe-bash-presentation-engine/chart-editing.js +34 -33
- package/dist/safe-bash-presentation-engine/chart-object-operations.js +25 -24
- package/dist/safe-bash-presentation-engine/charts.js +31 -30
- package/dist/safe-bash-presentation-engine/command-placeholder.js +60 -58
- package/dist/safe-bash-presentation-engine/comments.js +17 -16
- package/dist/safe-bash-presentation-engine/connector-operations.js +32 -31
- package/dist/safe-bash-presentation-engine/connectors.js +29 -28
- package/dist/safe-bash-presentation-engine/content-types.js +5 -4
- package/dist/safe-bash-presentation-engine/creation.js +7 -6
- package/dist/safe-bash-presentation-engine/diff.d.ts +1 -0
- package/dist/safe-bash-presentation-engine/diff.js +44 -33
- package/dist/safe-bash-presentation-engine/drawing-format.js +20 -19
- package/dist/safe-bash-presentation-engine/drawing-operations.js +31 -30
- package/dist/safe-bash-presentation-engine/drawing-schema.js +21 -20
- package/dist/safe-bash-presentation-engine/equations.js +17 -16
- package/dist/safe-bash-presentation-engine/errors.js +3 -2
- package/dist/safe-bash-presentation-engine/fields.js +17 -16
- package/dist/safe-bash-presentation-engine/font-metrics.js +4 -3
- package/dist/safe-bash-presentation-engine/image-extraction.js +20 -19
- package/dist/safe-bash-presentation-engine/image-formatting.js +32 -31
- package/dist/safe-bash-presentation-engine/image-insertion.js +18 -17
- package/dist/safe-bash-presentation-engine/image-replacement.js +21 -20
- package/dist/safe-bash-presentation-engine/image-value.js +5 -4
- package/dist/safe-bash-presentation-engine/images.js +19 -18
- package/dist/safe-bash-presentation-engine/index.js +135 -132
- package/dist/safe-bash-presentation-engine/layouts.js +16 -15
- package/dist/safe-bash-presentation-engine/length.js +4 -3
- package/dist/safe-bash-presentation-engine/links.js +16 -15
- package/dist/safe-bash-presentation-engine/masters.js +15 -14
- package/dist/safe-bash-presentation-engine/media-editing.js +24 -23
- package/dist/safe-bash-presentation-engine/media-extraction.js +17 -16
- package/dist/safe-bash-presentation-engine/media.js +16 -15
- package/dist/safe-bash-presentation-engine/memberships.js +15 -14
- package/dist/safe-bash-presentation-engine/notes.d.ts +1 -0
- package/dist/safe-bash-presentation-engine/notes.js +22 -15
- package/dist/safe-bash-presentation-engine/ole-enum.js +5 -4
- package/dist/safe-bash-presentation-engine/ole-insertion.js +20 -19
- package/dist/safe-bash-presentation-engine/opaque-objects.js +10 -9
- package/dist/safe-bash-presentation-engine/package-reader.js +6 -5
- package/dist/safe-bash-presentation-engine/package-tools.js +19 -18
- package/dist/safe-bash-presentation-engine/package-uri.js +4 -3
- package/dist/safe-bash-presentation-engine/package-writer.js +5 -4
- package/dist/safe-bash-presentation-engine/presentation-model.js +59 -57
- package/dist/safe-bash-presentation-engine/presentation-settings.js +14 -13
- package/dist/safe-bash-presentation-engine/properties.d.ts +2 -1
- package/dist/safe-bash-presentation-engine/properties.js +25 -15
- package/dist/safe-bash-presentation-engine/relationships.js +5 -4
- package/dist/safe-bash-presentation-engine/resource-limits.js +2 -1
- package/dist/safe-bash-presentation-engine/retained-diff.d.ts +56 -0
- package/dist/safe-bash-presentation-engine/retained-inspection.js +14 -13
- package/dist/safe-bash-presentation-engine/retained-notes.d.ts +27 -0
- package/dist/safe-bash-presentation-engine/retained-package.js +6 -5
- package/dist/safe-bash-presentation-engine/retained-properties.d.ts +26 -0
- package/dist/safe-bash-presentation-engine/retained-text.js +33 -517
- package/dist/safe-bash-presentation-engine/sanitize.js +20 -16
- package/dist/safe-bash-presentation-engine/selectors.js +11 -10
- package/dist/safe-bash-presentation-engine/shape-groups.js +31 -30
- package/dist/safe-bash-presentation-engine/shape-operations.js +30 -29
- package/dist/safe-bash-presentation-engine/shape-path-operations.js +32 -31
- package/dist/safe-bash-presentation-engine/shape-paths.js +16 -15
- package/dist/safe-bash-presentation-engine/shape-presets.js +4 -3
- package/dist/safe-bash-presentation-engine/shape-selection.js +31 -30
- package/dist/safe-bash-presentation-engine/shape-transforms.js +18 -17
- package/dist/safe-bash-presentation-engine/shapes.js +27 -26
- package/dist/safe-bash-presentation-engine/slide-copy.js +17 -16
- package/dist/safe-bash-presentation-engine/slide-import.js +18 -17
- package/dist/safe-bash-presentation-engine/slide-merge-split.js +20 -19
- package/dist/safe-bash-presentation-engine/slide-model.js +43 -42
- package/dist/safe-bash-presentation-engine/slide-removal.js +18 -17
- package/dist/safe-bash-presentation-engine/slide-transfer-budget.js +10 -9
- package/dist/safe-bash-presentation-engine/slides.js +19 -18
- package/dist/safe-bash-presentation-engine/table-operations.js +33 -32
- package/dist/safe-bash-presentation-engine/table-spans.js +32 -31
- package/dist/safe-bash-presentation-engine/tables.js +31 -30
- package/dist/safe-bash-presentation-engine/tags.js +16 -15
- package/dist/safe-bash-presentation-engine/template-bindings.js +33 -32
- package/dist/safe-bash-presentation-engine/template-repeat.js +40 -39
- package/dist/safe-bash-presentation-engine/text-fitting.js +27 -26
- package/dist/safe-bash-presentation-engine/text-frames.js +27 -26
- package/dist/safe-bash-presentation-engine/text-paragraphs.js +27 -26
- package/dist/safe-bash-presentation-engine/text-reading.js +12 -11
- package/dist/safe-bash-presentation-engine/text-replacement.js +17 -16
- package/dist/safe-bash-presentation-engine/text-runs.js +20 -19
- package/dist/safe-bash-presentation-engine/themes.js +16 -15
- package/dist/safe-bash-presentation-engine/transitions.js +16 -15
- package/dist/safe-bash-presentation-engine/validation.js +10 -9
- package/dist/safe-bash-presentation-engine/xml-parts.js +19 -18
- package/dist/safe-bash-presentation-engine/xml-view.js +4 -3
- package/dist/safe-bash-presentation-engine/xml.js +4 -3
- package/dist/safe-bash-query-engine/index.js +3 -3
- package/dist/safe-bash-query-engine/interpreter.js +2 -2
- package/dist/safe-bash-query-engine/query-core.js +3 -3
- package/dist/safe-bash-regex-engine/ere/matcher.js +3 -3
- package/dist/safe-bash-xml-engine/document.js +3 -3
- package/dist/safe-bash-xml-engine/evaluate.js +1 -1
- package/dist/safe-bash-xml-engine/index.js +4 -4
- package/dist/safe-bash-xml-engine/json.js +14 -10
- package/dist/safe-bash-xml-engine/query.js +2 -2
- package/dist/safe-bash-xml-engine/stored-document.d.ts +4 -0
- package/dist/safe-bash-xml-engine/stored-document.js +1 -1
- package/dist/safe-bash-xml-engine/stored-evaluate.js +3 -3
- package/dist/safe-bash-zip-engine/index.js +2 -2
- package/dist/safe-bash-zip-engine/zip/repair.js +2 -2
- package/dist/safe-bash-zip-engine/zip/sfx.js +2 -2
- package/dist/safe-bash-zip-engine/zip-format.js +2 -2
- package/dist/spreadsheet-format-xls/biff-properties-merge.js +88 -73
- package/dist/spreadsheet-format-xls/biff-properties.js +3 -3
- package/dist/spreadsheet-format-xls/biff-property-transcode.d.ts +6 -1
- package/dist/spreadsheet-format-xls/biff-property-transcode.js +15 -4
- package/dist/spreadsheet-format-xls/biff-property-values.d.ts +36 -0
- package/dist/spreadsheet-format-xls/biff-property-values.js +227 -0
- package/dist/xlsx-ast/comment-geometry.d.ts +12 -0
- package/dist/xlsx-ast/comment-geometry.js +71 -0
- package/dist/xlsx-ast/xlsx-metadata.d.ts +1 -1
- package/dist/xlsx-ast/xlsx-metadata.js +27 -2
- package/dist/xlsx-ast/xlsx-write-metadata.js +9 -1
- package/dist/xlsx-ast/xlsx.js +9 -4
- package/package.json +6 -3
- package/dist/safe-bash/command-chunks/biff-KRHJ63K3-VQPJCVIL.js +0 -5309
- package/dist/safe-bash/command-chunks/chunk-DBNJEXHK.js +0 -387
- package/dist/safe-bash/command-chunks/chunk-EV5G535P.js +0 -240
- package/dist/safe-bash/command-chunks/model-store-UB5DWMAP.js +0 -54
- package/dist/safe-bash/command-chunks/{chunk-NGSO645G.js → chunk-3ZVK2OAY.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-W2FKFEVY.js → chunk-4YSBUQPV.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-UJSLBBQ7.js → chunk-5MFRN3CB.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-AW4Q3GZW.js → chunk-5QXRIZSS.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-KUGV3SSL.js → chunk-CZXYWGVO.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-JWORWL72.js → chunk-DX7KU6YU.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-Z37OM247.js → chunk-E3BL7W5C.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-RIKNMBLZ.js → chunk-FEKECRJP.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-D3HW7R2N.js → chunk-FTZFCMVI.js} +9 -9
- package/dist/safe-bash/command-chunks/{chunk-KRRG4MGH.js → chunk-GEDO5V32.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-NBRXQUK7.js → chunk-M3OXQXCU.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-JRSZ5IGD.js → chunk-OAM2SUUI.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-HFKS6AET.js → chunk-OCOJMKDP.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-FMJKCVSQ.js → chunk-OOB7YCFQ.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-GGH376XQ.js → chunk-OU4VE5CR.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-DYERIXPU.js → chunk-QGTQJCKW.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-ZSQCROFE.js → chunk-RXXNLH7A.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-TI52LKLL.js → chunk-UVM6QG2H.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-BJXADHRT.js → chunk-WKU65Z3Q.js} +6 -6
- package/dist/safe-bash/command-chunks/{chunk-KGKF5NM2.js → chunk-WOXLPDO6.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-Y5ADXWBQ.js → chunk-WXW665TV.js} +4 -4
- package/dist/safe-bash/command-chunks/{chunk-FWCUEZ3K.js → chunk-WYBCSJFG.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-BXU5Y7I5.js → chunk-XI2LETBJ.js} +3 -3
- package/dist/safe-bash/command-chunks/{chunk-LNLACEAN.js → chunk-Y3ZRIZL7.js} +3 -3
|
@@ -1,11 +1,12 @@
|
|
|
1
|
+
import { BiffMutablePropertyValues } from './biff-property-values.js';
|
|
1
2
|
import { createBiffPropertyNameEncoder } from "./biff-property-name.js";
|
|
2
3
|
import { readBiffPropertyText } from "./biff-property-text.js";
|
|
3
|
-
import {
|
|
4
|
+
import { wideBiffPropertyBytes } from './biff-property-transcode.js';
|
|
4
5
|
import { stagePropertyBytes, propertyChunks } from './biff-property-bytes.js';
|
|
5
6
|
import { SsconvertError } from "../spreadsheet-engine/contracts.js";
|
|
6
7
|
import { Binary, invalidBiff } from "./biff-binary.js";
|
|
7
8
|
import { biffPropertyFields, biffPropertyFormats, readBiffProperties } from "./biff-properties.js";
|
|
8
|
-
import { propertyRange, readPropertySectionRanges,
|
|
9
|
+
import { propertyRange, readPropertySectionRanges, withPropertyValueRanges } from "./biff-property-range.js";
|
|
9
10
|
/** Rebuild offsets around original opaque spans. Never transcode their codepage. */
|
|
10
11
|
export async function mergeBiffProperties(book, streams, handled, context, charge, allocate, staged) {
|
|
11
12
|
const canonical = (name) => ["\u0005SummaryInformation", "\u0005DocumentSummaryInformation"].find(target => target.toUpperCase() === name.toUpperCase());
|
|
@@ -89,8 +90,16 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
89
90
|
const file = propertyRange(input, context), sections = [];
|
|
90
91
|
for await (const section of readPropertySectionRanges(file, admit, charge, context)) {
|
|
91
92
|
const bytes = file.slice(section.offset, section.end - section.offset);
|
|
92
|
-
|
|
93
|
-
|
|
93
|
+
let values;
|
|
94
|
+
if (biffPropertyFields.has(section.guid) || section.guid === biffPropertyFormats.custom) {
|
|
95
|
+
values = new BiffMutablePropertyValues(context, charge);
|
|
96
|
+
temporarySources.push(values);
|
|
97
|
+
await withPropertyValueRanges(bytes, admit, charge, context, async (source) => {
|
|
98
|
+
for await (const [id, value] of source.entries())
|
|
99
|
+
await values.set(id, value);
|
|
100
|
+
});
|
|
101
|
+
}
|
|
102
|
+
sections.push({ ...section, bytes, ...(values ? { values } : {}) });
|
|
94
103
|
}
|
|
95
104
|
return sections;
|
|
96
105
|
};
|
|
@@ -122,10 +131,10 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
122
131
|
}
|
|
123
132
|
};
|
|
124
133
|
const dictionary = async function* (section, names = true) {
|
|
125
|
-
const data = section.values?.get(0);
|
|
134
|
+
const data = await section.values?.get(0);
|
|
126
135
|
if (!data)
|
|
127
136
|
return;
|
|
128
|
-
const cp = await section.values?.get(1)?.u16(4) ?? 1252, count = await data.u32(0);
|
|
137
|
+
const cp = await (await section.values?.get(1))?.u16(4) ?? 1252, count = await data.u32(0);
|
|
129
138
|
data.check(4, count * 9);
|
|
130
139
|
if (names) {
|
|
131
140
|
charge(data.size);
|
|
@@ -152,6 +161,12 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
152
161
|
yield { id, name, bytes: data.slice(start, at - start) };
|
|
153
162
|
}
|
|
154
163
|
};
|
|
164
|
+
const reserve = staged?.reserve ?? ((length) => {
|
|
165
|
+
charge(length);
|
|
166
|
+
if (length > 0xffffffff || length > context.limits.outputBytes)
|
|
167
|
+
throw new SsconvertError("resource-limit", "ssconvert BIFF property output bytes limit exceeded");
|
|
168
|
+
return length;
|
|
169
|
+
});
|
|
155
170
|
const writeDictionary = async (section, plan) => {
|
|
156
171
|
const output = { length: plan.length, async *chunks() {
|
|
157
172
|
const header = new Uint8Array(4);
|
|
@@ -163,15 +178,13 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
163
178
|
yield* chunks(entry.bytes);
|
|
164
179
|
}
|
|
165
180
|
if (plan.append) {
|
|
166
|
-
charge(plan.append.
|
|
167
|
-
yield*
|
|
181
|
+
charge(plan.append.length);
|
|
182
|
+
yield* propertyChunks(plan.append);
|
|
168
183
|
}
|
|
169
184
|
} };
|
|
170
185
|
if (staged) {
|
|
171
186
|
staged.reserve(plan.length);
|
|
172
|
-
|
|
173
|
-
temporarySources.push(source);
|
|
174
|
-
section.values.set(0, propertyRange(source, context));
|
|
187
|
+
await section.values.set(0, { size: plan.length, chunks: output.chunks });
|
|
175
188
|
}
|
|
176
189
|
else {
|
|
177
190
|
const bytes = allocate(plan.length);
|
|
@@ -180,11 +193,11 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
180
193
|
bytes.set(part, at);
|
|
181
194
|
at += part.length;
|
|
182
195
|
}
|
|
183
|
-
section.values.set(0, propertyRange(bytes, context));
|
|
196
|
+
await section.values.set(0, propertyRange(bytes, context));
|
|
184
197
|
}
|
|
185
198
|
};
|
|
186
199
|
const remove = async (section, id) => {
|
|
187
|
-
section.values.delete(id);
|
|
200
|
+
await section.values.delete(id);
|
|
188
201
|
if (section.guid === biffPropertyFormats.custom) {
|
|
189
202
|
let length = 4, count = 0;
|
|
190
203
|
for await (const entry of dictionary(section))
|
|
@@ -198,18 +211,16 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
198
211
|
const take = async (property) => {
|
|
199
212
|
charge(fresh.get(property.stream).length);
|
|
200
213
|
const section = fresh.get(property.stream).find(section => section.offset === property.section);
|
|
201
|
-
const value = section.values.get(property.id);
|
|
214
|
+
const value = (await section.values.get(property.id));
|
|
202
215
|
await remove(section, property.id);
|
|
203
216
|
pending.delete(property.key);
|
|
204
217
|
return value;
|
|
205
218
|
};
|
|
206
219
|
const wide = async (source, section) => {
|
|
207
|
-
if (await source.u32(0) !== 30 || (await section.values.get(1)?.u16(4) ?? 1252) === 65001)
|
|
220
|
+
if (await source.u32(0) !== 30 || (await (await section.values.get(1))?.u16(4) ?? 1252) === 65001)
|
|
208
221
|
return source;
|
|
209
222
|
if (staged) {
|
|
210
|
-
|
|
211
|
-
temporarySources.push(output);
|
|
212
|
-
return propertyRange(output, context);
|
|
223
|
+
return wideBiffPropertyBytes(source, context, charge, staged.reserve);
|
|
213
224
|
}
|
|
214
225
|
const data = await materialize(source);
|
|
215
226
|
const value = new TextDecoder("utf-8", { fatal: true, ignoreBOM: true }).decode(data.slice(8, data.u32(4) - 1));
|
|
@@ -229,9 +240,11 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
229
240
|
};
|
|
230
241
|
for (const [name, snapshot] of snapshots) {
|
|
231
242
|
const seen = new Set();
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
243
|
+
function* modeled() {
|
|
244
|
+
if (snapshot.modeled) {
|
|
245
|
+
yield* snapshot.modeled;
|
|
246
|
+
return;
|
|
247
|
+
}
|
|
235
248
|
// SummaryInformation is read first. A legacy document-only snapshot lacks
|
|
236
249
|
// that earlier stream's ownership decisions: infer only unchanged values.
|
|
237
250
|
for (const property of original.values()) {
|
|
@@ -241,11 +254,11 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
241
254
|
if (name === "\u0005SummaryInformation" || snapshots.has("\u0005SummaryInformation") ||
|
|
242
255
|
Object.hasOwn(book.properties ?? {}, property.key) && same(property.value, book.properties?.[property.key])) {
|
|
243
256
|
admit(1);
|
|
244
|
-
|
|
257
|
+
yield [property.section, property.id, property.key];
|
|
245
258
|
}
|
|
246
259
|
}
|
|
247
260
|
}
|
|
248
|
-
for (const entry of modeled) {
|
|
261
|
+
for (const entry of modeled()) {
|
|
249
262
|
admit(1);
|
|
250
263
|
if (!Array.isArray(entry) || entry.length !== 3 || typeof entry[0] !== "number" || typeof entry[1] !== "number" || typeof entry[2] !== "string")
|
|
251
264
|
invalidBiff("invalid retained property identity");
|
|
@@ -265,7 +278,7 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
265
278
|
await take(replacement);
|
|
266
279
|
}
|
|
267
280
|
else if (replacement)
|
|
268
|
-
section.values.set(id, await wide(await take(replacement), section));
|
|
281
|
+
await section.values.set(id, await wide(await take(replacement), section));
|
|
269
282
|
}
|
|
270
283
|
}
|
|
271
284
|
const encodeName = createBiffPropertyNameEncoder(context, charge, accountText);
|
|
@@ -301,13 +314,13 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
301
314
|
await warn(property.key, "opaque name collision");
|
|
302
315
|
continue;
|
|
303
316
|
}
|
|
304
|
-
const cp = await values.get(1)?.u16(4) ?? 1252, text = encodeName(property.key, cp);
|
|
317
|
+
const cp = await (await values.get(1))?.u16(4) ?? 1252, text = encodeName(property.key, cp);
|
|
305
318
|
if (!text) {
|
|
306
319
|
await warn(property.key, "name cannot be encoded in the original codepage");
|
|
307
320
|
continue;
|
|
308
321
|
}
|
|
309
322
|
id = maximumId;
|
|
310
|
-
for (const key of values.
|
|
323
|
+
for await (const [key] of values.entries())
|
|
311
324
|
id = Math.max(id, key);
|
|
312
325
|
id++;
|
|
313
326
|
if (id > 0xffffffff) {
|
|
@@ -324,52 +337,29 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
324
337
|
if (length > size)
|
|
325
338
|
yield new Uint8Array(length - size);
|
|
326
339
|
} };
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
temporarySources.push(source);
|
|
332
|
-
bytes = propertyRange(source, context);
|
|
333
|
-
}
|
|
334
|
-
else {
|
|
335
|
-
const data = allocate(length);
|
|
336
|
-
let at = 0;
|
|
337
|
-
for (const part of entry.chunks()) {
|
|
338
|
-
data.set(part, at);
|
|
339
|
-
at += part.length;
|
|
340
|
-
}
|
|
341
|
-
bytes = propertyRange(data, context);
|
|
342
|
-
}
|
|
343
|
-
await writeDictionary(target, { length: dictionaryLength + bytes.size, count: count + 1, append: bytes });
|
|
340
|
+
// Preserve admission for the entry while writing its chunks directly into
|
|
341
|
+
// the rebuilt dictionary, without a separate store per inserted name.
|
|
342
|
+
reserve(length);
|
|
343
|
+
await writeDictionary(target, { length: dictionaryLength + length, count: count + 1, append: entry });
|
|
344
344
|
}
|
|
345
|
-
else if (values.
|
|
345
|
+
else if (await values.get(id)) {
|
|
346
346
|
await warn(property.key, "opaque property ID collision");
|
|
347
347
|
continue;
|
|
348
348
|
}
|
|
349
|
-
values.set(id, await wide(value, target));
|
|
349
|
+
await values.set(id, await wide(value, target));
|
|
350
350
|
}
|
|
351
|
-
const reserve = staged?.reserve ?? ((length) => {
|
|
352
|
-
charge(length);
|
|
353
|
-
if (length > 0xffffffff || length > context.limits.outputBytes)
|
|
354
|
-
throw new SsconvertError("resource-limit", "ssconvert BIFF property output bytes limit exceeded");
|
|
355
|
-
return length;
|
|
356
|
-
});
|
|
357
351
|
const encodeSection = (section) => {
|
|
358
352
|
if (!section.values)
|
|
359
353
|
return { length: section.bytes.size, chunks: () => chunks(section.bytes) };
|
|
360
354
|
const values = section.values;
|
|
361
|
-
|
|
362
|
-
for (const value of values.values())
|
|
363
|
-
length += Math.ceil(value.size / 4) * 4;
|
|
364
|
-
// Buffered output charges the section size here, as the old allocation did.
|
|
365
|
-
reserve(length);
|
|
355
|
+
const length = values.serializedSize;
|
|
366
356
|
return { length, async *chunks() {
|
|
367
357
|
const header = new Uint8Array(8), view = new DataView(header.buffer);
|
|
368
358
|
view.setUint32(0, length, true);
|
|
369
359
|
view.setUint32(4, values.size, true);
|
|
370
360
|
yield header;
|
|
371
361
|
let at = 8 + values.size * 8;
|
|
372
|
-
for (const [id, value] of values) {
|
|
362
|
+
for await (const [id, value] of values.entries()) {
|
|
373
363
|
charge(value.size);
|
|
374
364
|
const entry = new Uint8Array(8), view = new DataView(entry.buffer);
|
|
375
365
|
view.setUint32(0, id, true);
|
|
@@ -377,7 +367,7 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
377
367
|
yield entry;
|
|
378
368
|
at += Math.ceil(value.size / 4) * 4;
|
|
379
369
|
}
|
|
380
|
-
for (const value of values.
|
|
370
|
+
for await (const [, value] of values.entries()) {
|
|
381
371
|
yield* chunks(value);
|
|
382
372
|
const padding = (4 - value.size % 4) % 4;
|
|
383
373
|
if (padding)
|
|
@@ -388,36 +378,61 @@ export async function mergeBiffProperties(book, streams, handled, context, charg
|
|
|
388
378
|
for (const name of new Set([...streams.keys(), ...snapshots.keys()])) {
|
|
389
379
|
for (const section of fresh.get(name) ?? [])
|
|
390
380
|
charge(1 + section.values.size);
|
|
391
|
-
const remaining =
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
381
|
+
const remaining = async function* () {
|
|
382
|
+
for (const section of fresh.get(name) ?? []) {
|
|
383
|
+
charge(1);
|
|
384
|
+
for await (const [id] of section.values.entries()) {
|
|
385
|
+
charge(1);
|
|
386
|
+
if (id >= 2) {
|
|
387
|
+
yield section;
|
|
388
|
+
break;
|
|
389
|
+
}
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
};
|
|
393
|
+
let custom = false, document = false;
|
|
394
|
+
if (!old.has(name))
|
|
395
|
+
for await (const section of remaining()) {
|
|
396
|
+
custom ||= section.guid === biffPropertyFormats.custom;
|
|
397
|
+
document ||= section.guid === biffPropertyFormats.document;
|
|
398
|
+
}
|
|
399
|
+
const builtin = custom && !document ? fresh.get(name)?.find(section => section.guid === biffPropertyFormats.document) : undefined;
|
|
400
|
+
const sections = async function* () {
|
|
401
|
+
yield* old.get(name) ?? [];
|
|
395
402
|
if (builtin)
|
|
396
|
-
|
|
403
|
+
yield builtin;
|
|
404
|
+
yield* remaining();
|
|
405
|
+
};
|
|
406
|
+
let count = 0, length = 28;
|
|
407
|
+
for await (const section of sections()) {
|
|
408
|
+
charge(1);
|
|
409
|
+
count++;
|
|
410
|
+
const size = section.values?.serializedSize ?? section.bytes.size;
|
|
411
|
+
if (section.values)
|
|
412
|
+
reserve(size);
|
|
413
|
+
length += 20 + size;
|
|
397
414
|
}
|
|
398
|
-
|
|
399
|
-
if (!sections.length) {
|
|
415
|
+
if (!count) {
|
|
400
416
|
streams.delete(name);
|
|
401
417
|
continue;
|
|
402
418
|
}
|
|
403
|
-
const bodies = sections.map(encodeSection), length = 28 + sections.length * 20 + bodies.reduce((sum, body) => sum + body.length, 0);
|
|
404
419
|
const originalHeader = await (snapshots.get(name)?.bytes ?? propertyRange(streams.get(name), context)).read(0, 28);
|
|
405
420
|
const output = { length, async *chunks() {
|
|
406
421
|
const header = new Uint8Array(originalHeader);
|
|
407
|
-
new DataView(header.buffer).setUint32(24,
|
|
422
|
+
new DataView(header.buffer).setUint32(24, count, true);
|
|
408
423
|
yield header;
|
|
409
|
-
let at = 28 +
|
|
410
|
-
for (
|
|
424
|
+
let at = 28 + count * 20;
|
|
425
|
+
for await (const section of sections()) {
|
|
411
426
|
charge(1);
|
|
412
427
|
const entry = new Uint8Array(20), view = new DataView(entry.buffer);
|
|
413
428
|
for (let j = 0; j < 16; j++)
|
|
414
|
-
entry[j] = parseInt(
|
|
429
|
+
entry[j] = parseInt(section.guid.slice(j * 2, j * 2 + 2), 16);
|
|
415
430
|
view.setUint32(16, at, true);
|
|
416
431
|
yield entry;
|
|
417
|
-
at +=
|
|
432
|
+
at += section.values?.serializedSize ?? section.bytes.size;
|
|
418
433
|
}
|
|
419
|
-
for (const
|
|
420
|
-
yield*
|
|
434
|
+
for await (const section of sections())
|
|
435
|
+
yield* encodeSection(section).chunks();
|
|
421
436
|
} };
|
|
422
437
|
if (staged) {
|
|
423
438
|
reserve(length);
|
|
@@ -46,7 +46,7 @@ export async function readBiffProperties(streams, context, accountText, accountW
|
|
|
46
46
|
accountWork(file.size);
|
|
47
47
|
const sections = readPropertySectionRanges(file, admit, accountWork, context);
|
|
48
48
|
let unknown = false;
|
|
49
|
-
const modeled = [];
|
|
49
|
+
const modeled = retained ? [] : undefined;
|
|
50
50
|
for await (const { guid, offset, end } of sections) {
|
|
51
51
|
if (!biffPropertyFields.has(guid) && guid !== custom) {
|
|
52
52
|
unknown = true;
|
|
@@ -140,7 +140,7 @@ export async function readBiffProperties(streams, context, accountText, accountW
|
|
|
140
140
|
}
|
|
141
141
|
accountText(key);
|
|
142
142
|
properties[key] = value;
|
|
143
|
-
modeled
|
|
143
|
+
modeled?.push([offset, id, key]);
|
|
144
144
|
observe?.({ stream: streamName, section: offset, id, key, value });
|
|
145
145
|
}
|
|
146
146
|
});
|
|
@@ -148,7 +148,7 @@ export async function readBiffProperties(streams, context, accountText, accountW
|
|
|
148
148
|
unknown = true;
|
|
149
149
|
});
|
|
150
150
|
}
|
|
151
|
-
if (unknown && retained) {
|
|
151
|
+
if (unknown && retained && modeled) {
|
|
152
152
|
if (file.size * 2 > (context.limits.workbookTextBytes ?? context.limits.inputBytes * 2))
|
|
153
153
|
throw new SsconvertError("resource-limit", "ssconvert BIFF property retention limit exceeded");
|
|
154
154
|
let encoded = "";
|
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
import type { CapabilityContext } from "../spreadsheet-engine/contracts.js";
|
|
2
2
|
import type { BiffPropertyRange } from './biff-property-range.js';
|
|
3
3
|
import type { BiffPropertySource } from './biff-encrypted-properties-write.js';
|
|
4
|
-
/** Count UTF-16 units before
|
|
4
|
+
/** Count UTF-16 units before serialization; both passes retain only a bounded decoder window. */
|
|
5
|
+
export declare function wideBiffPropertyBytes(source: BiffPropertyRange, context: CapabilityContext, charge: (amount: number) => void, reserve: (length: number) => number): Promise<{
|
|
6
|
+
size: number;
|
|
7
|
+
chunks(): AsyncIterable<Uint8Array>;
|
|
8
|
+
}>;
|
|
9
|
+
/** Convenience API for callers that need an independently owned range source. */
|
|
5
10
|
export declare function stageWideBiffProperty(source: BiffPropertyRange, context: CapabilityContext, charge: (amount: number) => void, reserve: (length: number) => number): Promise<BiffPropertySource>;
|
|
@@ -1,20 +1,24 @@
|
|
|
1
1
|
import { stagePropertyBytes } from './biff-property-bytes.js';
|
|
2
|
-
/** Count UTF-16 units before
|
|
3
|
-
export async function
|
|
2
|
+
/** Count UTF-16 units before serialization; both passes retain only a bounded decoder window. */
|
|
3
|
+
export async function wideBiffPropertyBytes(source, context, charge, reserve) {
|
|
4
4
|
reserve(source.size);
|
|
5
5
|
const text = source.slice(8, await source.u32(4) - 1);
|
|
6
6
|
const parts = async function* () {
|
|
7
|
+
context.signal.throwIfAborted();
|
|
7
8
|
const decoder = new TextDecoder('utf-8', { fatal: true, ignoreBOM: true });
|
|
8
9
|
for (let at = 0; at < text.size;) {
|
|
10
|
+
context.signal.throwIfAborted();
|
|
9
11
|
const bytes = await text.read(at, Math.min(8192, text.size - at));
|
|
10
12
|
at += bytes.length;
|
|
11
13
|
try {
|
|
14
|
+
context.signal.throwIfAborted();
|
|
12
15
|
yield decoder.decode(bytes, { stream: true });
|
|
13
16
|
}
|
|
14
17
|
finally {
|
|
15
18
|
bytes.fill(0);
|
|
16
19
|
}
|
|
17
20
|
}
|
|
21
|
+
context.signal.throwIfAborted();
|
|
18
22
|
yield decoder.decode();
|
|
19
23
|
};
|
|
20
24
|
let units = 0;
|
|
@@ -22,7 +26,8 @@ export async function stageWideBiffProperty(source, context, charge, reserve) {
|
|
|
22
26
|
units += part.length;
|
|
23
27
|
charge(units);
|
|
24
28
|
const length = reserve(8 + (units + 1) * 2);
|
|
25
|
-
return
|
|
29
|
+
return { size: length, async *chunks() {
|
|
30
|
+
context.signal.throwIfAborted();
|
|
26
31
|
const header = new Uint8Array(8), view = new DataView(header.buffer);
|
|
27
32
|
view.setUint32(0, 31, true);
|
|
28
33
|
view.setUint32(4, units + 1, true);
|
|
@@ -36,10 +41,16 @@ export async function stageWideBiffProperty(source, context, charge, reserve) {
|
|
|
36
41
|
output.setUint16(i * 2, part.charCodeAt(at + i), true);
|
|
37
42
|
yield buffer.subarray(0, size * 2);
|
|
38
43
|
}
|
|
44
|
+
context.signal.throwIfAborted();
|
|
39
45
|
yield new Uint8Array(2);
|
|
40
46
|
}
|
|
41
47
|
finally {
|
|
42
48
|
buffer.fill(0);
|
|
43
49
|
}
|
|
44
|
-
} }
|
|
50
|
+
} };
|
|
51
|
+
}
|
|
52
|
+
/** Convenience API for callers that need an independently owned range source. */
|
|
53
|
+
export async function stageWideBiffProperty(source, context, charge, reserve) {
|
|
54
|
+
const output = await wideBiffPropertyBytes(source, context, charge, reserve);
|
|
55
|
+
return stagePropertyBytes({ length: output.size, chunks: output.chunks }, context);
|
|
45
56
|
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type CapabilityContext } from "../spreadsheet-engine/contracts.js";
|
|
2
|
+
import { BiffPropertyRange } from './biff-property-range.js';
|
|
3
|
+
/** Mutable insertion order with immutable payload snapshots. Deleted payloads remain
|
|
4
|
+
* readable until close, so values can be moved between independently edited sections. */
|
|
5
|
+
export declare class BiffMutablePropertyValues {
|
|
6
|
+
private readonly context;
|
|
7
|
+
private readonly charge;
|
|
8
|
+
private readonly storage;
|
|
9
|
+
private readonly index;
|
|
10
|
+
private readonly fallback;
|
|
11
|
+
private pending;
|
|
12
|
+
private closing;
|
|
13
|
+
private closed;
|
|
14
|
+
private initialized;
|
|
15
|
+
private first;
|
|
16
|
+
private last;
|
|
17
|
+
private count;
|
|
18
|
+
private paddedSize;
|
|
19
|
+
private readonly root;
|
|
20
|
+
constructor(context: CapabilityContext, charge: (amount: number) => void);
|
|
21
|
+
get size(): number;
|
|
22
|
+
get serializedSize(): number;
|
|
23
|
+
private check;
|
|
24
|
+
private allocate;
|
|
25
|
+
private io;
|
|
26
|
+
private read;
|
|
27
|
+
private write;
|
|
28
|
+
get(id: number): Promise<BiffPropertyRange | undefined>;
|
|
29
|
+
set(id: number, value: BiffPropertyRange | {
|
|
30
|
+
readonly size: number;
|
|
31
|
+
chunks(): AsyncIterable<Uint8Array>;
|
|
32
|
+
}): Promise<void>;
|
|
33
|
+
delete(id: number): Promise<boolean>;
|
|
34
|
+
entries(): AsyncGenerator<readonly [number, BiffPropertyRange]>;
|
|
35
|
+
close(): Promise<void>;
|
|
36
|
+
}
|