@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
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { IntegerTable } from "@poe-platform/safe-fs/storage";
|
|
2
|
+
import { SsconvertError } from "../spreadsheet-engine/contracts.js";
|
|
3
|
+
import { Binary, invalidBiff } from './biff-binary.js';
|
|
4
|
+
import { BiffPropertyRange, propertyRange } from './biff-property-range.js';
|
|
5
|
+
/** Mutable insertion order with immutable payload snapshots. Deleted payloads remain
|
|
6
|
+
* readable until close, so values can be moved between independently edited sections. */
|
|
7
|
+
export class BiffMutablePropertyValues {
|
|
8
|
+
context;
|
|
9
|
+
charge;
|
|
10
|
+
storage;
|
|
11
|
+
index;
|
|
12
|
+
fallback;
|
|
13
|
+
pending = Promise.resolve();
|
|
14
|
+
closing;
|
|
15
|
+
closed = false;
|
|
16
|
+
initialized = false;
|
|
17
|
+
first = 0;
|
|
18
|
+
last = 0;
|
|
19
|
+
count = 0;
|
|
20
|
+
paddedSize = 0;
|
|
21
|
+
root = { read: (at, count) => this.read(at, count), check: () => this.check() };
|
|
22
|
+
constructor(context, charge) {
|
|
23
|
+
this.context = context;
|
|
24
|
+
this.charge = charge;
|
|
25
|
+
this.storage = context.createWorkingStorage?.();
|
|
26
|
+
if (this.storage)
|
|
27
|
+
this.index = new IntegerTable({ allocate: length => this.allocate(length),
|
|
28
|
+
read: (at, length) => this.read(at, length), write: (at, bytes) => this.write(at, bytes) }, 64);
|
|
29
|
+
else
|
|
30
|
+
this.fallback = new Map();
|
|
31
|
+
context.own(() => this.close());
|
|
32
|
+
}
|
|
33
|
+
get size() { this.check(); return this.fallback?.size ?? this.count; }
|
|
34
|
+
get serializedSize() { return 8 + this.size * 8 + this.paddedSize; }
|
|
35
|
+
check() {
|
|
36
|
+
this.context.signal.throwIfAborted();
|
|
37
|
+
if (this.closed)
|
|
38
|
+
throw new SsconvertError('invalid-request', 'BIFF mutable property values are closed');
|
|
39
|
+
}
|
|
40
|
+
allocate(length) { this.check(); return this.storage.allocate(length); }
|
|
41
|
+
io(action) {
|
|
42
|
+
const result = this.pending.then(async () => { this.check(); const value = await action(); this.check(); return value; });
|
|
43
|
+
this.pending = result.then(() => undefined, () => undefined);
|
|
44
|
+
return result;
|
|
45
|
+
}
|
|
46
|
+
read(at, length) {
|
|
47
|
+
return this.io(async () => {
|
|
48
|
+
const bytes = await this.storage.read(at, length);
|
|
49
|
+
if (bytes.length !== length)
|
|
50
|
+
invalidBiff('truncated mutable property values');
|
|
51
|
+
return new Uint8Array(bytes);
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
async write(at, bytes) {
|
|
55
|
+
const owned = new Uint8Array(bytes);
|
|
56
|
+
try {
|
|
57
|
+
await this.io(() => this.storage.write(at, owned));
|
|
58
|
+
}
|
|
59
|
+
finally {
|
|
60
|
+
owned.fill(0);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
async get(id) {
|
|
64
|
+
this.check();
|
|
65
|
+
if (this.fallback)
|
|
66
|
+
return this.fallback.get(id);
|
|
67
|
+
const position = await this.index.get(BigInt(id));
|
|
68
|
+
this.check();
|
|
69
|
+
if (!position)
|
|
70
|
+
return undefined;
|
|
71
|
+
const record = new Binary(await this.read(Number(position), 32));
|
|
72
|
+
return new BiffPropertyRange(this.root, record.f64(8), record.f64(16));
|
|
73
|
+
}
|
|
74
|
+
async set(id, value) {
|
|
75
|
+
this.check();
|
|
76
|
+
if (!(value instanceof BiffPropertyRange) && (!Number.isSafeInteger(value.size) || value.size < 0 || value.size > this.context.limits.outputBytes))
|
|
77
|
+
throw new SsconvertError('resource-limit', 'Invalid BIFF mutable property serialization size');
|
|
78
|
+
if (this.fallback && value instanceof BiffPropertyRange) {
|
|
79
|
+
const previous = this.fallback.get(id);
|
|
80
|
+
this.fallback.set(id, value);
|
|
81
|
+
this.paddedSize += Math.ceil(value.size / 4) * 4 - Math.ceil((previous?.size ?? 0) / 4) * 4;
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const chunks = async function* () {
|
|
85
|
+
if (!(value instanceof BiffPropertyRange)) {
|
|
86
|
+
yield* value.chunks();
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
for (let at = 0; at < value.size;) {
|
|
90
|
+
const bytes = await value.read(at, Math.min(16384, value.size - at));
|
|
91
|
+
try {
|
|
92
|
+
at += bytes.length;
|
|
93
|
+
yield bytes;
|
|
94
|
+
}
|
|
95
|
+
finally {
|
|
96
|
+
bytes.fill(0);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
};
|
|
100
|
+
if (this.fallback) {
|
|
101
|
+
const bytes = new Uint8Array(value.size);
|
|
102
|
+
let at = 0;
|
|
103
|
+
for await (const part of chunks()) {
|
|
104
|
+
this.check();
|
|
105
|
+
if (part.length > bytes.length - at)
|
|
106
|
+
invalidBiff('invalid mutable property serialization size');
|
|
107
|
+
bytes.set(part, at);
|
|
108
|
+
at += part.length;
|
|
109
|
+
}
|
|
110
|
+
this.check();
|
|
111
|
+
if (at !== bytes.length)
|
|
112
|
+
invalidBiff('truncated mutable property serialization');
|
|
113
|
+
const previous = this.fallback.get(id);
|
|
114
|
+
this.fallback.set(id, propertyRange(bytes, this.context));
|
|
115
|
+
this.paddedSize += Math.ceil(bytes.length / 4) * 4 - Math.ceil((previous?.size ?? 0) / 4) * 4;
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
this.charge(value.size);
|
|
119
|
+
if (!this.initialized) {
|
|
120
|
+
this.allocate(8);
|
|
121
|
+
this.initialized = true;
|
|
122
|
+
}
|
|
123
|
+
const existing = await this.index.get(BigInt(id));
|
|
124
|
+
this.check();
|
|
125
|
+
const previousSize = existing ? new Binary(await this.read(Number(existing) + 16, 8)).f64(0) : 0;
|
|
126
|
+
const data = this.allocate(value.size);
|
|
127
|
+
const buffer = new Uint8Array(Math.min(16384, value.size));
|
|
128
|
+
let written = 0, used = 0;
|
|
129
|
+
try {
|
|
130
|
+
for await (const part of chunks()) {
|
|
131
|
+
this.check();
|
|
132
|
+
if (part.length > value.size - written - used)
|
|
133
|
+
invalidBiff('invalid mutable property serialization size');
|
|
134
|
+
for (let at = 0; at < part.length;) {
|
|
135
|
+
const count = Math.min(buffer.length - used, part.length - at);
|
|
136
|
+
buffer.set(part.subarray(at, at + count), used);
|
|
137
|
+
used += count;
|
|
138
|
+
at += count;
|
|
139
|
+
if (used === buffer.length) {
|
|
140
|
+
await this.write(data + written, buffer);
|
|
141
|
+
written += used;
|
|
142
|
+
used = 0;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
this.check();
|
|
147
|
+
if (written + used !== value.size)
|
|
148
|
+
invalidBiff('truncated mutable property serialization');
|
|
149
|
+
if (used)
|
|
150
|
+
await this.write(data + written, buffer.subarray(0, used));
|
|
151
|
+
}
|
|
152
|
+
finally {
|
|
153
|
+
buffer.fill(0);
|
|
154
|
+
}
|
|
155
|
+
const record = new Uint8Array(32), view = new DataView(record.buffer);
|
|
156
|
+
view.setFloat64(8, data, true);
|
|
157
|
+
view.setFloat64(16, value.size, true);
|
|
158
|
+
view.setUint32(24, id, true);
|
|
159
|
+
view.setUint32(28, 1, true);
|
|
160
|
+
if (existing) {
|
|
161
|
+
await this.write(Number(existing) + 8, record.subarray(8, 24));
|
|
162
|
+
this.paddedSize += Math.ceil(value.size / 4) * 4 - Math.ceil(previousSize / 4) * 4;
|
|
163
|
+
return;
|
|
164
|
+
}
|
|
165
|
+
const position = this.allocate(32);
|
|
166
|
+
await this.write(position, record);
|
|
167
|
+
if (this.last) {
|
|
168
|
+
view.setFloat64(0, position, true);
|
|
169
|
+
await this.write(this.last, record.subarray(0, 8));
|
|
170
|
+
}
|
|
171
|
+
else
|
|
172
|
+
this.first = position;
|
|
173
|
+
this.last = position;
|
|
174
|
+
await this.index.set(BigInt(id), BigInt(position));
|
|
175
|
+
this.check();
|
|
176
|
+
this.count++;
|
|
177
|
+
this.paddedSize += Math.ceil(value.size / 4) * 4;
|
|
178
|
+
}
|
|
179
|
+
async delete(id) {
|
|
180
|
+
this.check();
|
|
181
|
+
if (this.fallback) {
|
|
182
|
+
const previous = this.fallback.get(id);
|
|
183
|
+
if (!previous)
|
|
184
|
+
return false;
|
|
185
|
+
this.fallback.delete(id);
|
|
186
|
+
this.paddedSize -= Math.ceil(previous.size / 4) * 4;
|
|
187
|
+
return true;
|
|
188
|
+
}
|
|
189
|
+
const position = await this.index.get(BigInt(id));
|
|
190
|
+
this.check();
|
|
191
|
+
if (!position)
|
|
192
|
+
return false;
|
|
193
|
+
const previousSize = new Binary(await this.read(Number(position) + 16, 8)).f64(0);
|
|
194
|
+
await this.write(Number(position) + 28, new Uint8Array(4));
|
|
195
|
+
await this.index.set(BigInt(id), 0n);
|
|
196
|
+
this.check();
|
|
197
|
+
this.count--;
|
|
198
|
+
this.paddedSize -= Math.ceil(previousSize / 4) * 4;
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
201
|
+
async *entries() {
|
|
202
|
+
this.check();
|
|
203
|
+
if (this.fallback) {
|
|
204
|
+
for (const entry of this.fallback) {
|
|
205
|
+
this.check();
|
|
206
|
+
yield entry;
|
|
207
|
+
}
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
let position = this.first;
|
|
211
|
+
while (position) {
|
|
212
|
+
const record = new Binary(await this.read(position, 32));
|
|
213
|
+
position = record.f64(0);
|
|
214
|
+
if (record.u32(28))
|
|
215
|
+
yield [record.u32(24), new BiffPropertyRange(this.root, record.f64(8), record.f64(16))];
|
|
216
|
+
}
|
|
217
|
+
this.check();
|
|
218
|
+
}
|
|
219
|
+
close() {
|
|
220
|
+
if (!this.closing) {
|
|
221
|
+
this.closed = true;
|
|
222
|
+
this.fallback?.clear();
|
|
223
|
+
this.closing = this.pending.then(async () => { await this.storage?.close(); });
|
|
224
|
+
}
|
|
225
|
+
return this.closing;
|
|
226
|
+
}
|
|
227
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { MetadataNode } from "../spreadsheet-engine/codecs/xlsx-write-support.js";
|
|
2
|
+
interface CommentGeometry {
|
|
3
|
+
readonly style: Readonly<Record<string, string>>;
|
|
4
|
+
readonly anchor: string;
|
|
5
|
+
readonly flags: readonly {
|
|
6
|
+
name: string;
|
|
7
|
+
text: string;
|
|
8
|
+
}[];
|
|
9
|
+
}
|
|
10
|
+
/** Retain only scalar geometry for uniquely identified VML notes, never shape relationships or executable markup. */
|
|
11
|
+
export declare function readCommentGeometry(roots: readonly (MetadataNode | undefined)[], charge: (amount?: number) => void): ReadonlyMap<string, CommentGeometry | undefined>;
|
|
12
|
+
export {};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/** Retain only scalar geometry for uniquely identified VML notes, never shape relationships or executable markup. */
|
|
2
|
+
export function readCommentGeometry(roots, charge) {
|
|
3
|
+
const result = new Map();
|
|
4
|
+
const vml = "urn:schemas-microsoft-com:vml", excel = "urn:schemas-microsoft-com:office:excel";
|
|
5
|
+
for (const root of roots)
|
|
6
|
+
for (const shape of root?.children ?? []) {
|
|
7
|
+
charge();
|
|
8
|
+
if (shape.name !== "shape" || shape.namespace !== vml)
|
|
9
|
+
continue;
|
|
10
|
+
const data = shape.children.find(n => { charge(); return n.name === "ClientData" && n.namespace === excel && n.attributes.ObjectType === "Note"; });
|
|
11
|
+
if (!data)
|
|
12
|
+
continue;
|
|
13
|
+
const fields = new Map();
|
|
14
|
+
let duplicate = false;
|
|
15
|
+
for (const field of data.children) {
|
|
16
|
+
charge();
|
|
17
|
+
if (field.namespace !== excel)
|
|
18
|
+
continue;
|
|
19
|
+
duplicate ||= fields.has(field.name);
|
|
20
|
+
fields.set(field.name, field);
|
|
21
|
+
}
|
|
22
|
+
const rowText = fields.get("Row")?.text.trim(), columnText = fields.get("Column")?.text.trim();
|
|
23
|
+
if (!rowText || !columnText)
|
|
24
|
+
continue;
|
|
25
|
+
const row = Number(rowText), column = Number(columnText);
|
|
26
|
+
if (!Number.isInteger(row) || row < 0 || row >= 1048576 || !Number.isInteger(column) || column < 0 || column >= 16384)
|
|
27
|
+
continue;
|
|
28
|
+
const key = `${row}:${column}`;
|
|
29
|
+
if (result.has(key)) {
|
|
30
|
+
result.set(key, undefined);
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
// An invalid or duplicate source cannot lend its geometry to another note.
|
|
34
|
+
result.set(key, undefined);
|
|
35
|
+
const anchor = fields.get("Anchor")?.text, coordinates = anchor?.split(",").map(s => s.trim());
|
|
36
|
+
if (duplicate || !coordinates || coordinates.length !== 8 || coordinates.some(s => !s || !Number.isSafeInteger(Number(s)) || Number(s) < 0))
|
|
37
|
+
continue;
|
|
38
|
+
if ([0, 4].some(i => Number(coordinates[i]) >= 16384) || [2, 6].some(i => Number(coordinates[i]) >= 1048576))
|
|
39
|
+
continue;
|
|
40
|
+
const style = {};
|
|
41
|
+
for (const declaration of (shape.attributes.style ?? "").split(";")) {
|
|
42
|
+
charge();
|
|
43
|
+
const colon = declaration.indexOf(":");
|
|
44
|
+
if (colon < 0)
|
|
45
|
+
continue;
|
|
46
|
+
const name = declaration.slice(0, colon).trim().toLowerCase(), value = declaration.slice(colon + 1).trim().toLowerCase();
|
|
47
|
+
if (["margin-left", "margin-top", "width", "height"].includes(name)) {
|
|
48
|
+
const unit = ["pt", "px", "in", "cm", "mm", "pc"].find(u => value.endsWith(u));
|
|
49
|
+
const scalar = unit ? value.slice(0, -unit.length).trim() : value;
|
|
50
|
+
const number = Number(scalar);
|
|
51
|
+
if (scalar && Number.isFinite(number) && (unit || number === 0) && (!["width", "height"].includes(name) || number >= 0))
|
|
52
|
+
style[name] = `${number}${unit ?? ""}`;
|
|
53
|
+
}
|
|
54
|
+
else if (name === "visibility" && ["visible", "hidden"].includes(value))
|
|
55
|
+
style[name] = value;
|
|
56
|
+
else if (name === "z-index" && value && Number.isSafeInteger(Number(value)))
|
|
57
|
+
style[name] = value;
|
|
58
|
+
}
|
|
59
|
+
const flags = [];
|
|
60
|
+
for (const name of ["MoveWithCells", "SizeWithCells", "Visible", "AutoFill"]) {
|
|
61
|
+
const field = fields.get(name);
|
|
62
|
+
if (!field)
|
|
63
|
+
continue;
|
|
64
|
+
const text = field.text.trim();
|
|
65
|
+
if (["", "true", "false", "t", "f", "1", "0"].includes(text.toLowerCase()))
|
|
66
|
+
flags.push({ name, text });
|
|
67
|
+
}
|
|
68
|
+
result.set(key, { style, anchor: coordinates.join(", "), flags });
|
|
69
|
+
}
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
@@ -6,5 +6,5 @@ type SourceNode = XmlElement | MetadataNode;
|
|
|
6
6
|
export declare function gnode(name: string, attributes?: Readonly<Record<string, string | number>>, children?: readonly ImportedValue[], text?: string): ImportedValue;
|
|
7
7
|
/** Translate measured sheet metadata into the existing workbook codec model. */
|
|
8
8
|
export declare function readXlsxMetadata(sheet: SourceNode): readonly UnsupportedRecord[];
|
|
9
|
-
export declare function readXlsxComments(comments: XmlElement, context: CapabilityContext): UnsupportedRecord;
|
|
9
|
+
export declare function readXlsxComments(comments: XmlElement, context: CapabilityContext, drawings?: readonly XmlElement[]): UnsupportedRecord;
|
|
10
10
|
export {};
|
|
@@ -168,7 +168,31 @@ export function readXlsxMetadata(sheet) {
|
|
|
168
168
|
}
|
|
169
169
|
return records;
|
|
170
170
|
}
|
|
171
|
-
export function readXlsxComments(comments, context) {
|
|
171
|
+
export function readXlsxComments(comments, context, drawings = []) {
|
|
172
|
+
const printing = new Map();
|
|
173
|
+
const excel = "urn:schemas-microsoft-com:office:excel";
|
|
174
|
+
for (const drawing of drawings)
|
|
175
|
+
for (const shape of drawing.children) {
|
|
176
|
+
context.signal.throwIfAborted();
|
|
177
|
+
if (shape.namespace !== "urn:schemas-microsoft-com:vml" || shape.localName !== "shape")
|
|
178
|
+
continue;
|
|
179
|
+
for (const data of shape.children) {
|
|
180
|
+
if (data.namespace !== excel || data.localName !== "ClientData" || attribute(data, "ObjectType") !== "Note")
|
|
181
|
+
continue;
|
|
182
|
+
const fields = data.children.filter(n => n.namespace === excel);
|
|
183
|
+
const rowText = fields.find(n => n.localName === "Row")?.text.trim(), columnText = fields.find(n => n.localName === "Column")?.text.trim();
|
|
184
|
+
if (!rowText || !columnText)
|
|
185
|
+
continue;
|
|
186
|
+
const row = Number(rowText), column = Number(columnText);
|
|
187
|
+
if (!Number.isInteger(row) || row < 0 || row >= 1048576 || !Number.isInteger(column) || column < 0 || column >= 16384)
|
|
188
|
+
continue;
|
|
189
|
+
const key = formatA1(row, column);
|
|
190
|
+
const flags = fields.filter(n => n.localName === "PrintObject");
|
|
191
|
+
const ambiguous = printing.has(key) || flags.length > 1 || fields.filter(n => n.localName === "Row").length > 1 || fields.filter(n => n.localName === "Column").length > 1;
|
|
192
|
+
const value = flags[0]?.text.trim().toLowerCase();
|
|
193
|
+
printing.set(key, ambiguous ? undefined : ["false", "f", "0"].includes(value ?? "") ? 0 : 1);
|
|
194
|
+
}
|
|
195
|
+
}
|
|
172
196
|
const authors = comments.children.find(c => c.localName === "authors")?.children
|
|
173
197
|
.filter(c => c.localName === "author").map(c => decodeXlsxString(c.text)) ?? [];
|
|
174
198
|
const objects = [];
|
|
@@ -179,13 +203,14 @@ export function readXlsxComments(comments, context) {
|
|
|
179
203
|
const ref = attribute(comment, "ref");
|
|
180
204
|
if (!ref)
|
|
181
205
|
continue;
|
|
206
|
+
const position = parseA1(ref.split(":")[0]);
|
|
182
207
|
const author = authors[numeric(attribute(comment, "authorId"), 0)];
|
|
183
208
|
const text = readXlsxString(comment.children.find(c => c.localName === "text"), context);
|
|
184
209
|
// The Gnumeric markup codec cannot carry colon-bearing font names.
|
|
185
210
|
// The original comments part retains those rich nodes for XLSX transport.
|
|
186
211
|
const representable = text.richText?.every(run => typeof run.attributes.family !== "string" ||
|
|
187
212
|
!run.attributes.family.includes(":"));
|
|
188
|
-
objects.push(gnode("CellComment", { ObjectBound: ref.split(":")[0], ObjectOffset: "1 0 1 0", Direction: 17, Print: 1,
|
|
213
|
+
objects.push(gnode("CellComment", { ObjectBound: ref.split(":")[0], ObjectOffset: "1 0 1 0", Direction: 17, Print: printing.get(formatA1(position.row, position.column)) ?? 1,
|
|
189
214
|
...(author !== undefined ? { Author: author } : {}), Text: text.value,
|
|
190
215
|
...(text.richText?.length && representable ? { TextFormat: writeGnumericRichText(text.richText) } : {}) }));
|
|
191
216
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { readCommentGeometry } from "./comment-geometry.js";
|
|
1
2
|
import { parseA1, formatA1 } from "../spreadsheet-ast/index.js";
|
|
2
3
|
import { SsconvertError } from "../spreadsheet-engine/contracts.js";
|
|
3
4
|
import { escapeXlsx, metadataNode, writeRichString } from "../spreadsheet-engine/codecs/xlsx-write-support.js";
|
|
@@ -176,11 +177,18 @@ export async function writeXlsxSheetMetadata(sheet, number, xml, context, namesp
|
|
|
176
177
|
if (comments.length)
|
|
177
178
|
parts.push({ name: `comments${number}.xml`, relation: "comments", type: "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",
|
|
178
179
|
content: xml("comments", { xmlns: namespace }, xml("authors", {}, authors.map(a => xml("author", {}, escapeXlsx(encodeXlsxString(a)))).join("")) + xml("commentList", {}, comments.map(comment => xml("comment", { ref: comment.attributes.ObjectBound?.split(":")[0] ?? "A1", authorId: comment.attributes.Author === undefined ? undefined : authors.indexOf(comment.attributes.Author) }, commentText(comment))).join(""))) });
|
|
180
|
+
const geometries = readCommentGeometry(records.map(r => r.node), charge);
|
|
179
181
|
if (comments.length)
|
|
180
182
|
parts.push({ name: `drawings/vmlDrawing${number}.vml`, relation: "vmlDrawing", type: "application/vnd.openxmlformats-officedocument.vmlDrawing",
|
|
181
183
|
content: xml("xml", { "xmlns:v": "urn:schemas-microsoft-com:vml", "xmlns:o": "urn:schemas-microsoft-com:office:office", "xmlns:x": "urn:schemas-microsoft-com:office:excel" }, xml("v:shapetype", { id: "_x0000_t202" }) + comments.map((comment, index) => {
|
|
182
184
|
const position = parseA1(comment.attributes.ObjectBound?.split(":")[0] ?? "A1");
|
|
183
|
-
|
|
185
|
+
const retained = position && (!comment.attributes.ObjectOffset || comment.attributes.ObjectOffset === "1 0 1 0")
|
|
186
|
+
? geometries.get(`${position.row}:${position.column}`) : undefined;
|
|
187
|
+
const style = { position: "absolute", "margin-left": `${((position.column + 1) * 48).toFixed(2)}pt`,
|
|
188
|
+
"margin-top": `${(position.row * 12.75).toFixed(2)}pt`, width: "0.00pt", height: "0.00pt", "z-index": String(index + 1), visibility: "hidden", ...retained?.style };
|
|
189
|
+
return xml("v:shape", { type: "#_x0000_t202", fillcolor: "#ffffc0", style: Object.entries(style).map(([key, value]) => `${key}:${value};`).join("") }, xml("x:ClientData", { ObjectType: "Note" }, xml("x:Anchor", {}, retained?.anchor ?? `${position.column + 1}, 15, ${position.row}, 10, ${position.column + 3}, 15, ${position.row + 4}, 4`) +
|
|
190
|
+
(retained ? retained.flags.map(flag => xml(`x:${flag.name}`, {}, escapeXlsx(flag.text))).join("") : xml("x:MoveWithCells") + xml("x:SizeWithCells") + xml("x:AutoFill", {}, "False")) +
|
|
191
|
+
xml("x:PrintObject", {}, ["0", "false", "f"].includes((comment.attributes.Print ?? "1").toLowerCase()) ? "False" : "True") +
|
|
184
192
|
xml("x:Row", {}, String(position.row)) + xml("x:Column", {}, String(position.column))));
|
|
185
193
|
}).join("")) });
|
|
186
194
|
if (objects.children.every(n => ["CellComment", "GnmCellComment"].includes(n.name)))
|
package/dist/xlsx-ast/xlsx.js
CHANGED
|
@@ -1006,8 +1006,7 @@ export async function readXlsx(bytes, context, sourceMode = false) {
|
|
|
1006
1006
|
if (comments)
|
|
1007
1007
|
comments = await recognize(comments, "xlsx_comments_dtd", context);
|
|
1008
1008
|
records.push(...readXlsxMetadata(source));
|
|
1009
|
-
|
|
1010
|
-
records.push(readXlsxComments(comments, context));
|
|
1009
|
+
const noteDrawings = [];
|
|
1011
1010
|
for (const extension of children(child(source, "extLst"), "ext")) {
|
|
1012
1011
|
if (attr(extension, "uri") === undefined)
|
|
1013
1012
|
await context.diagnostic?.({ severity: "warning", code: "xlsx-extension",
|
|
@@ -1023,9 +1022,15 @@ export async function readXlsx(bytes, context, sourceMode = false) {
|
|
|
1023
1022
|
const referencedDrawing = ["drawing", "legacyDrawing", "legacyDrawingHF"].some(type => children(source, type)
|
|
1024
1023
|
.some(node => attr(node, "id", relationships) === part.id));
|
|
1025
1024
|
if (["comments", "pivotTable"].some(type => part.type === relationships + "/" + type)
|
|
1026
|
-
|| referencedDrawing && ["drawing", "vmlDrawing"].some(type => part.type === relationships + "/" + type))
|
|
1027
|
-
|
|
1025
|
+
|| referencedDrawing && ["drawing", "vmlDrawing"].some(type => part.type === relationships + "/" + type)) {
|
|
1026
|
+
const document = await opc.document(part.target);
|
|
1027
|
+
records.push(record(document, part.target));
|
|
1028
|
+
if (part.type === relationships + "/vmlDrawing" && children(source, "legacyDrawing").some(node => attr(node, "id", relationships) === part.id))
|
|
1029
|
+
noteDrawings.push(document);
|
|
1030
|
+
}
|
|
1028
1031
|
}
|
|
1032
|
+
if (comments)
|
|
1033
|
+
records.push(readXlsxComments(comments, context, noteDrawings));
|
|
1029
1034
|
const visibility = attr(sheetNode, "state");
|
|
1030
1035
|
const sheetView = child(child(source, "sheetViews"), "sheetView");
|
|
1031
1036
|
const viewAttributes = {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@poe-platform/safe-bash",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.816",
|
|
4
4
|
"description": "Extensible virtual shell with pluggable filesystems and streaming commands",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -1407,7 +1407,7 @@
|
|
|
1407
1407
|
"access": "public"
|
|
1408
1408
|
},
|
|
1409
1409
|
"dependencies": {
|
|
1410
|
-
"@poe-platform/safe-fs": "0.1.
|
|
1410
|
+
"@poe-platform/safe-fs": "0.1.816",
|
|
1411
1411
|
"pdf-lib": "1.17.1",
|
|
1412
1412
|
"@types/node": "^25.2.2",
|
|
1413
1413
|
"@formatjs/intl-numberformat": "9.4.0",
|
|
@@ -1719,6 +1719,7 @@
|
|
|
1719
1719
|
"./dist/safe-bash-command-html-to-markdown/options.js",
|
|
1720
1720
|
"./dist/safe-bash-command-html-to-markdown/parser.js",
|
|
1721
1721
|
"./dist/safe-bash-command-html-to-markdown/render.js",
|
|
1722
|
+
"./dist/safe-bash-command-html-to-markdown/stored-destination.js",
|
|
1722
1723
|
"./dist/safe-bash-command-html-to-markdown/stored-text.js",
|
|
1723
1724
|
"./dist/safe-bash-command-html-to-markdown/text.js",
|
|
1724
1725
|
"./dist/safe-bash-command-htmlq/index.js",
|
|
@@ -2462,7 +2463,6 @@
|
|
|
2462
2463
|
"./dist/safe-bash-zip-engine/zip/volumes.js",
|
|
2463
2464
|
"./dist/safe-bash-zip-engine/zip/zip64.js",
|
|
2464
2465
|
"./dist/safe-bash/chunks/chunk-5AVCMU3K.js",
|
|
2465
|
-
"./dist/safe-bash/chunks/chunk-5JCZEXEM.js",
|
|
2466
2466
|
"./dist/safe-bash/chunks/chunk-5QZXYRUF.js",
|
|
2467
2467
|
"./dist/safe-bash/chunks/chunk-5ZS237LB.js",
|
|
2468
2468
|
"./dist/safe-bash/chunks/chunk-A64DHHCT.js",
|
|
@@ -2477,6 +2477,7 @@
|
|
|
2477
2477
|
"./dist/safe-bash/chunks/chunk-Q3BXARJD.js",
|
|
2478
2478
|
"./dist/safe-bash/chunks/chunk-R6ASA7FI.js",
|
|
2479
2479
|
"./dist/safe-bash/chunks/chunk-RJ7D3WML.js",
|
|
2480
|
+
"./dist/safe-bash/chunks/chunk-SXSEF5E2.js",
|
|
2480
2481
|
"./dist/safe-bash/chunks/chunk-ZMTSEPTF.js",
|
|
2481
2482
|
"./dist/safe-bash/commands/apply-patch/index.js",
|
|
2482
2483
|
"./dist/safe-bash/commands/archive/index.js",
|
|
@@ -2845,6 +2846,7 @@
|
|
|
2845
2846
|
"./dist/spreadsheet-format-xls/biff-property-range.js",
|
|
2846
2847
|
"./dist/spreadsheet-format-xls/biff-property-text.js",
|
|
2847
2848
|
"./dist/spreadsheet-format-xls/biff-property-transcode.js",
|
|
2849
|
+
"./dist/spreadsheet-format-xls/biff-property-values.js",
|
|
2848
2850
|
"./dist/spreadsheet-format-xls/biff-range.js",
|
|
2849
2851
|
"./dist/spreadsheet-format-xls/biff-record-storage.js",
|
|
2850
2852
|
"./dist/spreadsheet-format-xls/biff-shared-strings.js",
|
|
@@ -2865,6 +2867,7 @@
|
|
|
2865
2867
|
"./dist/spreadsheet-format-xlsx/index.js",
|
|
2866
2868
|
"./dist/spreadsheet-format-xlsx/xlsx.js",
|
|
2867
2869
|
"./dist/xlsx-ast/cell-storage.js",
|
|
2870
|
+
"./dist/xlsx-ast/comment-geometry.js",
|
|
2868
2871
|
"./dist/xlsx-ast/external-link-export.js",
|
|
2869
2872
|
"./dist/xlsx-ast/external-links.js",
|
|
2870
2873
|
"./dist/xlsx-ast/formula-semantics.js",
|