@archipelagolab/lobi 1.0.0 → 1.0.5
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/LICENSE +13 -17
- package/README.md +136 -0
- package/dist/APEv2Parser-6EMKXRZS.js +15 -0
- package/dist/APEv2Parser-6EMKXRZS.js.map +7 -0
- package/dist/AiffParser-E6XWRTXM.js +194 -0
- package/dist/AiffParser-E6XWRTXM.js.map +7 -0
- package/dist/AsfParser-WSOH2JQY.js +620 -0
- package/dist/AsfParser-WSOH2JQY.js.map +7 -0
- package/dist/DsdiffParser-EUWJ4YAR.js +192 -0
- package/dist/DsdiffParser-EUWJ4YAR.js.map +7 -0
- package/dist/DsfParser-R6TPBJIY.js +114 -0
- package/dist/DsfParser-R6TPBJIY.js.map +7 -0
- package/dist/FlacParser-VDASGZ3E.js +16 -0
- package/dist/FlacParser-VDASGZ3E.js.map +7 -0
- package/dist/MP4Parser-64RGJLUM.js +1145 -0
- package/dist/MP4Parser-64RGJLUM.js.map +7 -0
- package/dist/MatroskaParser-O6RXAKYA.js +662 -0
- package/dist/MatroskaParser-O6RXAKYA.js.map +7 -0
- package/dist/MpegParser-B6NX6DS3.js +652 -0
- package/dist/MpegParser-B6NX6DS3.js.map +7 -0
- package/dist/MusepackParser-WUBT63DS.js +331 -0
- package/dist/MusepackParser-WUBT63DS.js.map +7 -0
- package/dist/OggParser-ZY6E5C2P.js +448 -0
- package/dist/OggParser-ZY6E5C2P.js.map +7 -0
- package/dist/WavPackParser-5KTCSQEU.js +209 -0
- package/dist/WavPackParser-5KTCSQEU.js.map +7 -0
- package/dist/WaveParser-RZSHVQPZ.js +300 -0
- package/dist/WaveParser-RZSHVQPZ.js.map +7 -0
- package/dist/auth-presence.js +46 -0
- package/dist/auth-presence.js.map +7 -0
- package/dist/channel-plugin-api.js +79 -0
- package/dist/channel-plugin-api.js.map +7 -0
- package/dist/chunk-22WAAZ6I.js +114 -0
- package/dist/chunk-22WAAZ6I.js.map +7 -0
- package/dist/chunk-2A6HEFSO.js +676 -0
- package/dist/chunk-2A6HEFSO.js.map +7 -0
- package/dist/chunk-2KGHUHKU.js +169 -0
- package/dist/chunk-2KGHUHKU.js.map +7 -0
- package/dist/chunk-2NEQI4K6.js +171 -0
- package/dist/chunk-2NEQI4K6.js.map +7 -0
- package/dist/chunk-2OSJ3MTW.js +175 -0
- package/dist/chunk-2OSJ3MTW.js.map +7 -0
- package/dist/chunk-2Q626TDO.js +27 -0
- package/dist/chunk-2Q626TDO.js.map +7 -0
- package/dist/chunk-2U6OZ7N2.js +155 -0
- package/dist/chunk-2U6OZ7N2.js.map +7 -0
- package/dist/chunk-2Z4IOUDZ.js +129 -0
- package/dist/chunk-2Z4IOUDZ.js.map +7 -0
- package/dist/chunk-2ZEPAW7U.js +154 -0
- package/dist/chunk-2ZEPAW7U.js.map +7 -0
- package/dist/chunk-2ZI6JK5O.js +63 -0
- package/dist/chunk-2ZI6JK5O.js.map +7 -0
- package/dist/chunk-34UY6D6X.js +36 -0
- package/dist/chunk-34UY6D6X.js.map +7 -0
- package/dist/chunk-3JD6JSJD.js +111 -0
- package/dist/chunk-3JD6JSJD.js.map +7 -0
- package/dist/chunk-3TOEIHG5.js +314 -0
- package/dist/chunk-3TOEIHG5.js.map +7 -0
- package/dist/chunk-3TRKKAVT.js +130 -0
- package/dist/chunk-3TRKKAVT.js.map +7 -0
- package/dist/chunk-3UFTTK7C.js +418 -0
- package/dist/chunk-3UFTTK7C.js.map +7 -0
- package/dist/chunk-3XO6AAIC.js +25 -0
- package/dist/chunk-3XO6AAIC.js.map +7 -0
- package/dist/chunk-427SAQME.js +321 -0
- package/dist/chunk-427SAQME.js.map +7 -0
- package/dist/chunk-4JVNTZAI.js +80 -0
- package/dist/chunk-4JVNTZAI.js.map +7 -0
- package/dist/chunk-4O3BEYYM.js +187 -0
- package/dist/chunk-4O3BEYYM.js.map +7 -0
- package/dist/chunk-4Z2N4GW6.js +247 -0
- package/dist/chunk-4Z2N4GW6.js.map +7 -0
- package/dist/chunk-56HN4SH6.js +46 -0
- package/dist/chunk-56HN4SH6.js.map +7 -0
- package/dist/chunk-5APBBTGW.js +7 -0
- package/dist/chunk-5APBBTGW.js.map +7 -0
- package/dist/chunk-5LNGMBWW.js +93 -0
- package/dist/chunk-5LNGMBWW.js.map +7 -0
- package/dist/chunk-5XFQSYZ4.js +52 -0
- package/dist/chunk-5XFQSYZ4.js.map +7 -0
- package/dist/chunk-62N5N4AC.js +241 -0
- package/dist/chunk-62N5N4AC.js.map +7 -0
- package/dist/chunk-6HX3DEXK.js +178 -0
- package/dist/chunk-6HX3DEXK.js.map +7 -0
- package/dist/chunk-6NO5VEVV.js +18 -0
- package/dist/chunk-6NO5VEVV.js.map +7 -0
- package/dist/chunk-6PZGDVLR.js +465 -0
- package/dist/chunk-6PZGDVLR.js.map +7 -0
- package/dist/chunk-6SOGH3TW.js +163 -0
- package/dist/chunk-6SOGH3TW.js.map +7 -0
- package/dist/chunk-72TGY3LX.js +104 -0
- package/dist/chunk-72TGY3LX.js.map +7 -0
- package/dist/chunk-76IE55K7.js +392 -0
- package/dist/chunk-76IE55K7.js.map +7 -0
- package/dist/chunk-7F3242AO.js +86 -0
- package/dist/chunk-7F3242AO.js.map +7 -0
- package/dist/chunk-7FLQSTPG.js +57 -0
- package/dist/chunk-7FLQSTPG.js.map +7 -0
- package/dist/chunk-7MP46JBP.js +177 -0
- package/dist/chunk-7MP46JBP.js.map +7 -0
- package/dist/chunk-7MVZYR2T.js +87 -0
- package/dist/chunk-7MVZYR2T.js.map +7 -0
- package/dist/chunk-7N7ISMPG.js +50 -0
- package/dist/chunk-7N7ISMPG.js.map +7 -0
- package/dist/chunk-7S7LQQPX.js +127 -0
- package/dist/chunk-7S7LQQPX.js.map +7 -0
- package/dist/chunk-7TTNY5FK.js +21 -0
- package/dist/chunk-7TTNY5FK.js.map +7 -0
- package/dist/chunk-7W73QCTR.js +244 -0
- package/dist/chunk-7W73QCTR.js.map +7 -0
- package/dist/chunk-7XXLU33Y.js +76 -0
- package/dist/chunk-7XXLU33Y.js.map +7 -0
- package/dist/chunk-AAO7BQEV.js +258 -0
- package/dist/chunk-AAO7BQEV.js.map +7 -0
- package/dist/chunk-AH4MLRYT.js +91 -0
- package/dist/chunk-AH4MLRYT.js.map +7 -0
- package/dist/chunk-AHKR32FH.js +7 -0
- package/dist/chunk-AHKR32FH.js.map +7 -0
- package/dist/chunk-ALKRFDAW.js +94 -0
- package/dist/chunk-ALKRFDAW.js.map +7 -0
- package/dist/chunk-AQQGAE7N.js +12 -0
- package/dist/chunk-AQQGAE7N.js.map +7 -0
- package/dist/chunk-AWW3YUGJ.js +193 -0
- package/dist/chunk-AWW3YUGJ.js.map +7 -0
- package/dist/chunk-AX7VEEWJ.js +158 -0
- package/dist/chunk-AX7VEEWJ.js.map +7 -0
- package/dist/chunk-BAX7Q6GR.js +55 -0
- package/dist/chunk-BAX7Q6GR.js.map +7 -0
- package/dist/chunk-BBM6BR3Z.js +28 -0
- package/dist/chunk-BBM6BR3Z.js.map +7 -0
- package/dist/chunk-BHXZMHSX.js +109 -0
- package/dist/chunk-BHXZMHSX.js.map +7 -0
- package/dist/chunk-BIUXDLVY.js +62 -0
- package/dist/chunk-BIUXDLVY.js.map +7 -0
- package/dist/chunk-BMFZL2P4.js +97 -0
- package/dist/chunk-BMFZL2P4.js.map +7 -0
- package/dist/chunk-BQXEXK4H.js +114 -0
- package/dist/chunk-BQXEXK4H.js.map +7 -0
- package/dist/chunk-BU2CTWBG.js +30 -0
- package/dist/chunk-BU2CTWBG.js.map +7 -0
- package/dist/chunk-BVKSCLF7.js +195 -0
- package/dist/chunk-BVKSCLF7.js.map +7 -0
- package/dist/chunk-BWA3D22L.js +88 -0
- package/dist/chunk-BWA3D22L.js.map +7 -0
- package/dist/chunk-CE24RSPL.js +506 -0
- package/dist/chunk-CE24RSPL.js.map +7 -0
- package/dist/chunk-CETZGSCP.js +71 -0
- package/dist/chunk-CETZGSCP.js.map +7 -0
- package/dist/chunk-CGBWMONK.js +412 -0
- package/dist/chunk-CGBWMONK.js.map +7 -0
- package/dist/chunk-CPNIXMGX.js +127 -0
- package/dist/chunk-CPNIXMGX.js.map +7 -0
- package/dist/chunk-CSJO73LD.js +84 -0
- package/dist/chunk-CSJO73LD.js.map +7 -0
- package/dist/chunk-CTKBDSL6.js +81 -0
- package/dist/chunk-CTKBDSL6.js.map +7 -0
- package/dist/chunk-CY6WHUCW.js +54 -0
- package/dist/chunk-CY6WHUCW.js.map +7 -0
- package/dist/chunk-D7Q6Z74D.js +123 -0
- package/dist/chunk-D7Q6Z74D.js.map +7 -0
- package/dist/chunk-DZIM4OWK.js +17 -0
- package/dist/chunk-DZIM4OWK.js.map +7 -0
- package/dist/chunk-E3GC4V5V.js +30 -0
- package/dist/chunk-E3GC4V5V.js.map +7 -0
- package/dist/chunk-E5HPDHCW.js +34 -0
- package/dist/chunk-E5HPDHCW.js.map +7 -0
- package/dist/chunk-E75BJJZ2.js +635 -0
- package/dist/chunk-E75BJJZ2.js.map +7 -0
- package/dist/chunk-EE4DHUUZ.js +472 -0
- package/dist/chunk-EE4DHUUZ.js.map +7 -0
- package/dist/chunk-EHELTAAD.js +198 -0
- package/dist/chunk-EHELTAAD.js.map +7 -0
- package/dist/chunk-EKXPSI7Z.js +135 -0
- package/dist/chunk-EKXPSI7Z.js.map +7 -0
- package/dist/chunk-ERCH75SH.js +292 -0
- package/dist/chunk-ERCH75SH.js.map +7 -0
- package/dist/chunk-EVFWZGFL.js +235 -0
- package/dist/chunk-EVFWZGFL.js.map +7 -0
- package/dist/chunk-EVPBRKMZ.js +45 -0
- package/dist/chunk-EVPBRKMZ.js.map +7 -0
- package/dist/chunk-F6AFJHWV.js +45 -0
- package/dist/chunk-F6AFJHWV.js.map +7 -0
- package/dist/chunk-FG4NVFKM.js +455 -0
- package/dist/chunk-FG4NVFKM.js.map +7 -0
- package/dist/chunk-FHNEN6IR.js +14 -0
- package/dist/chunk-FHNEN6IR.js.map +7 -0
- package/dist/chunk-FQ4R7IOX.js +32 -0
- package/dist/chunk-FQ4R7IOX.js.map +7 -0
- package/dist/chunk-FQPYAPJJ.js +124 -0
- package/dist/chunk-FQPYAPJJ.js.map +7 -0
- package/dist/chunk-FQTLJO4W.js +335 -0
- package/dist/chunk-FQTLJO4W.js.map +7 -0
- package/dist/chunk-FVLJSB2W.js +124 -0
- package/dist/chunk-FVLJSB2W.js.map +7 -0
- package/dist/chunk-FYRKBNTI.js +18 -0
- package/dist/chunk-FYRKBNTI.js.map +7 -0
- package/dist/chunk-GD6L3SLC.js +30 -0
- package/dist/chunk-GD6L3SLC.js.map +7 -0
- package/dist/chunk-GI2ZANRY.js +24 -0
- package/dist/chunk-GI2ZANRY.js.map +7 -0
- package/dist/chunk-GK3XVKXT.js +737 -0
- package/dist/chunk-GK3XVKXT.js.map +7 -0
- package/dist/chunk-GKOWCDQV.js +699 -0
- package/dist/chunk-GKOWCDQV.js.map +7 -0
- package/dist/chunk-GLLRCKKE.js +26 -0
- package/dist/chunk-GLLRCKKE.js.map +7 -0
- package/dist/chunk-GNYG6I36.js +175 -0
- package/dist/chunk-GNYG6I36.js.map +7 -0
- package/dist/chunk-GVYGUH2V.js +7 -0
- package/dist/chunk-GVYGUH2V.js.map +7 -0
- package/dist/chunk-GZAGAWSU.js +28 -0
- package/dist/chunk-GZAGAWSU.js.map +7 -0
- package/dist/chunk-H23E72SB.js +163 -0
- package/dist/chunk-H23E72SB.js.map +7 -0
- package/dist/chunk-H6YVV7GE.js +22 -0
- package/dist/chunk-H6YVV7GE.js.map +7 -0
- package/dist/chunk-HDPICD3P.js +4890 -0
- package/dist/chunk-HDPICD3P.js.map +7 -0
- package/dist/chunk-HP5HMWOM.js +123 -0
- package/dist/chunk-HP5HMWOM.js.map +7 -0
- package/dist/chunk-HQSHS6IB.js +88 -0
- package/dist/chunk-HQSHS6IB.js.map +7 -0
- package/dist/chunk-HTV3R73W.js +51 -0
- package/dist/chunk-HTV3R73W.js.map +7 -0
- package/dist/chunk-IJCMYMZB.js +239 -0
- package/dist/chunk-IJCMYMZB.js.map +7 -0
- package/dist/chunk-INNENDEE.js +472 -0
- package/dist/chunk-INNENDEE.js.map +7 -0
- package/dist/chunk-IOTLSMEQ.js +177 -0
- package/dist/chunk-IOTLSMEQ.js.map +7 -0
- package/dist/chunk-IQYYEHSM.js +300 -0
- package/dist/chunk-IQYYEHSM.js.map +7 -0
- package/dist/chunk-IRA5NJ4Q.js +21 -0
- package/dist/chunk-IRA5NJ4Q.js.map +7 -0
- package/dist/chunk-IU7EXXK7.js +1662 -0
- package/dist/chunk-IU7EXXK7.js.map +7 -0
- package/dist/chunk-IUXAKDAY.js +102 -0
- package/dist/chunk-IUXAKDAY.js.map +7 -0
- package/dist/chunk-JMYIFYY5.js +233 -0
- package/dist/chunk-JMYIFYY5.js.map +7 -0
- package/dist/chunk-JSZBX2TA.js +5853 -0
- package/dist/chunk-JSZBX2TA.js.map +7 -0
- package/dist/chunk-KHFWQ334.js +138 -0
- package/dist/chunk-KHFWQ334.js.map +7 -0
- package/dist/chunk-KJW6JLM6.js +95 -0
- package/dist/chunk-KJW6JLM6.js.map +7 -0
- package/dist/chunk-KSEANSJE.js +40 -0
- package/dist/chunk-KSEANSJE.js.map +7 -0
- package/dist/chunk-KVU54E6W.js +63 -0
- package/dist/chunk-KVU54E6W.js.map +7 -0
- package/dist/chunk-L5OUVMHK.js +174 -0
- package/dist/chunk-L5OUVMHK.js.map +7 -0
- package/dist/chunk-LIVQ7GIO.js +86 -0
- package/dist/chunk-LIVQ7GIO.js.map +7 -0
- package/dist/chunk-LO4F6E3N.js +163 -0
- package/dist/chunk-LO4F6E3N.js.map +7 -0
- package/dist/chunk-LSVKDUNM.js +151 -0
- package/dist/chunk-LSVKDUNM.js.map +7 -0
- package/dist/chunk-LVMK2GPM.js +18 -0
- package/dist/chunk-LVMK2GPM.js.map +7 -0
- package/dist/chunk-LXVPETLK.js +1405 -0
- package/dist/chunk-LXVPETLK.js.map +7 -0
- package/dist/chunk-LZNW24OB.js +78 -0
- package/dist/chunk-LZNW24OB.js.map +7 -0
- package/dist/chunk-MAF6PSCJ.js +44 -0
- package/dist/chunk-MAF6PSCJ.js.map +7 -0
- package/dist/chunk-MBIX6Z7U.js +80 -0
- package/dist/chunk-MBIX6Z7U.js.map +7 -0
- package/dist/chunk-MDLLXMC3.js +183 -0
- package/dist/chunk-MDLLXMC3.js.map +7 -0
- package/dist/chunk-MEI5HTWV.js +127 -0
- package/dist/chunk-MEI5HTWV.js.map +7 -0
- package/dist/chunk-MH74AJ3A.js +82 -0
- package/dist/chunk-MH74AJ3A.js.map +7 -0
- package/dist/chunk-MIFIM4PI.js +163 -0
- package/dist/chunk-MIFIM4PI.js.map +7 -0
- package/dist/chunk-MISZB5QJ.js +22 -0
- package/dist/chunk-MISZB5QJ.js.map +7 -0
- package/dist/chunk-MJ27XQYG.js +125 -0
- package/dist/chunk-MJ27XQYG.js.map +7 -0
- package/dist/chunk-MLQY5SKR.js +52 -0
- package/dist/chunk-MLQY5SKR.js.map +7 -0
- package/dist/chunk-MTMHGC3G.js +39 -0
- package/dist/chunk-MTMHGC3G.js.map +7 -0
- package/dist/chunk-MWBAW3YV.js +244 -0
- package/dist/chunk-MWBAW3YV.js.map +7 -0
- package/dist/chunk-MZGGB2YT.js +50 -0
- package/dist/chunk-MZGGB2YT.js.map +7 -0
- package/dist/chunk-N5SNGZJV.js +217 -0
- package/dist/chunk-N5SNGZJV.js.map +7 -0
- package/dist/chunk-NGCTBYQ3.js +181 -0
- package/dist/chunk-NGCTBYQ3.js.map +7 -0
- package/dist/chunk-NMUX7SGU.js +676 -0
- package/dist/chunk-NMUX7SGU.js.map +7 -0
- package/dist/chunk-NO7GMLNU.js +292 -0
- package/dist/chunk-NO7GMLNU.js.map +7 -0
- package/dist/chunk-NTOGVX2Y.js +92 -0
- package/dist/chunk-NTOGVX2Y.js.map +7 -0
- package/dist/chunk-O5IVKDX7.js +30 -0
- package/dist/chunk-O5IVKDX7.js.map +7 -0
- package/dist/chunk-OFWMLQMU.js +7287 -0
- package/dist/chunk-OFWMLQMU.js.map +7 -0
- package/dist/chunk-OJ3ZUKBI.js +73 -0
- package/dist/chunk-OJ3ZUKBI.js.map +7 -0
- package/dist/chunk-OJTHE4B7.js +50 -0
- package/dist/chunk-OJTHE4B7.js.map +7 -0
- package/dist/chunk-OOYPYBTA.js +446 -0
- package/dist/chunk-OOYPYBTA.js.map +7 -0
- package/dist/chunk-OQP4W4AR.js +105 -0
- package/dist/chunk-OQP4W4AR.js.map +7 -0
- package/dist/chunk-OVTT2EKA.js +516 -0
- package/dist/chunk-OVTT2EKA.js.map +7 -0
- package/dist/chunk-P5N63LBS.js +94 -0
- package/dist/chunk-P5N63LBS.js.map +7 -0
- package/dist/chunk-PARITZ7F.js +28 -0
- package/dist/chunk-PARITZ7F.js.map +7 -0
- package/dist/chunk-PBQK4KY4.js +195 -0
- package/dist/chunk-PBQK4KY4.js.map +7 -0
- package/dist/chunk-PSL2AHIA.js +27 -0
- package/dist/chunk-PSL2AHIA.js.map +7 -0
- package/dist/chunk-Q5QT7JBM.js +92 -0
- package/dist/chunk-Q5QT7JBM.js.map +7 -0
- package/dist/chunk-Q7WA5DCR.js +62 -0
- package/dist/chunk-Q7WA5DCR.js.map +7 -0
- package/dist/chunk-QATEENP2.js +7 -0
- package/dist/chunk-QATEENP2.js.map +7 -0
- package/dist/chunk-QDT24CIA.js +485 -0
- package/dist/chunk-QDT24CIA.js.map +7 -0
- package/dist/chunk-QI3NB7D5.js +455 -0
- package/dist/chunk-QI3NB7D5.js.map +7 -0
- package/dist/chunk-QIDAVXSX.js +106 -0
- package/dist/chunk-QIDAVXSX.js.map +7 -0
- package/dist/chunk-QKIGQVP2.js +104 -0
- package/dist/chunk-QKIGQVP2.js.map +7 -0
- package/dist/chunk-QNJENPK2.js +81 -0
- package/dist/chunk-QNJENPK2.js.map +7 -0
- package/dist/chunk-REVXXWAS.js +31 -0
- package/dist/chunk-REVXXWAS.js.map +7 -0
- package/dist/chunk-RFH4HRZP.js +94 -0
- package/dist/chunk-RFH4HRZP.js.map +7 -0
- package/dist/chunk-RNGAGYCL.js +49 -0
- package/dist/chunk-RNGAGYCL.js.map +7 -0
- package/dist/chunk-RPCVN3JA.js +261 -0
- package/dist/chunk-RPCVN3JA.js.map +7 -0
- package/dist/chunk-RQQE5DDT.js +193 -0
- package/dist/chunk-RQQE5DDT.js.map +7 -0
- package/dist/chunk-RVOD3ESA.js +38 -0
- package/dist/chunk-RVOD3ESA.js.map +7 -0
- package/dist/chunk-SAOUP24A.js +70 -0
- package/dist/chunk-SAOUP24A.js.map +7 -0
- package/dist/chunk-SFZL2TCV.js +55 -0
- package/dist/chunk-SFZL2TCV.js.map +7 -0
- package/dist/chunk-SJPFUXBV.js +45 -0
- package/dist/chunk-SJPFUXBV.js.map +7 -0
- package/dist/chunk-SLIUQWAR.js +58 -0
- package/dist/chunk-SLIUQWAR.js.map +7 -0
- package/dist/chunk-SSEX66OL.js +39 -0
- package/dist/chunk-SSEX66OL.js.map +7 -0
- package/dist/chunk-SX2LOHOX.js +251 -0
- package/dist/chunk-SX2LOHOX.js.map +7 -0
- package/dist/chunk-T72EMFTX.js +74 -0
- package/dist/chunk-T72EMFTX.js.map +7 -0
- package/dist/chunk-TA2QJPPG.js +169 -0
- package/dist/chunk-TA2QJPPG.js.map +7 -0
- package/dist/chunk-TFEETDNY.js +78 -0
- package/dist/chunk-TFEETDNY.js.map +7 -0
- package/dist/chunk-THM2QV25.js +108 -0
- package/dist/chunk-THM2QV25.js.map +7 -0
- package/dist/chunk-TRWT2N6Z.js +15 -0
- package/dist/chunk-TRWT2N6Z.js.map +7 -0
- package/dist/chunk-TTXEM54Y.js +76 -0
- package/dist/chunk-TTXEM54Y.js.map +7 -0
- package/dist/chunk-U4LVIY5F.js +1405 -0
- package/dist/chunk-U4LVIY5F.js.map +7 -0
- package/dist/chunk-U767LCSG.js +78 -0
- package/dist/chunk-U767LCSG.js.map +7 -0
- package/dist/chunk-U7GKLHU6.js +120 -0
- package/dist/chunk-U7GKLHU6.js.map +7 -0
- package/dist/chunk-UAB5P5QO.js +60 -0
- package/dist/chunk-UAB5P5QO.js.map +7 -0
- package/dist/chunk-UEHPJQBL.js +38 -0
- package/dist/chunk-UEHPJQBL.js.map +7 -0
- package/dist/chunk-UIBV6IGR.js +31 -0
- package/dist/chunk-UIBV6IGR.js.map +7 -0
- package/dist/chunk-UIYFRUET.js +16352 -0
- package/dist/chunk-UIYFRUET.js.map +7 -0
- package/dist/chunk-UJS3TIVS.js +52 -0
- package/dist/chunk-UJS3TIVS.js.map +7 -0
- package/dist/chunk-UU5PSBSI.js +176 -0
- package/dist/chunk-UU5PSBSI.js.map +7 -0
- package/dist/chunk-UV63XYFU.js +173 -0
- package/dist/chunk-UV63XYFU.js.map +7 -0
- package/dist/chunk-UWPHOAOC.js +29 -0
- package/dist/chunk-UWPHOAOC.js.map +7 -0
- package/dist/chunk-UXDDOSJC.js +52 -0
- package/dist/chunk-UXDDOSJC.js.map +7 -0
- package/dist/chunk-V3VAOMCO.js +465 -0
- package/dist/chunk-V3VAOMCO.js.map +7 -0
- package/dist/chunk-VA7ENH2S.js +38 -0
- package/dist/chunk-VA7ENH2S.js.map +7 -0
- package/dist/chunk-VFPDFLVE.js +516 -0
- package/dist/chunk-VFPDFLVE.js.map +7 -0
- package/dist/chunk-VHG4FNIJ.js +93 -0
- package/dist/chunk-VHG4FNIJ.js.map +7 -0
- package/dist/chunk-VKOO6MIZ.js +51 -0
- package/dist/chunk-VKOO6MIZ.js.map +7 -0
- package/dist/chunk-VKXKRZG7.js +62 -0
- package/dist/chunk-VKXKRZG7.js.map +7 -0
- package/dist/chunk-VUOLPEUZ.js +7 -0
- package/dist/chunk-VUOLPEUZ.js.map +7 -0
- package/dist/chunk-W6SOBS7M.js +138 -0
- package/dist/chunk-W6SOBS7M.js.map +7 -0
- package/dist/chunk-WDOKKRTE.js +7 -0
- package/dist/chunk-WDOKKRTE.js.map +7 -0
- package/dist/chunk-WGXXKFN5.js +7 -0
- package/dist/chunk-WGXXKFN5.js.map +7 -0
- package/dist/chunk-WHPUUP3J.js +25 -0
- package/dist/chunk-WHPUUP3J.js.map +7 -0
- package/dist/chunk-XF7LD6VV.js +122 -0
- package/dist/chunk-XF7LD6VV.js.map +7 -0
- package/dist/chunk-XFTXM3RE.js +64 -0
- package/dist/chunk-XFTXM3RE.js.map +7 -0
- package/dist/chunk-XJABPO2T.js +235 -0
- package/dist/chunk-XJABPO2T.js.map +7 -0
- package/dist/chunk-XK6VF3H7.js +3586 -0
- package/dist/chunk-XK6VF3H7.js.map +7 -0
- package/dist/chunk-XQYIIPOJ.js +266 -0
- package/dist/chunk-XQYIIPOJ.js.map +7 -0
- package/dist/chunk-XZSAN55E.js +58 -0
- package/dist/chunk-XZSAN55E.js.map +7 -0
- package/dist/chunk-Y3KJR4OG.js +64 -0
- package/dist/chunk-Y3KJR4OG.js.map +7 -0
- package/dist/chunk-Y4JKH7FF.js +45 -0
- package/dist/chunk-Y4JKH7FF.js.map +7 -0
- package/dist/chunk-Y6CJN4ID.js +31 -0
- package/dist/chunk-Y6CJN4ID.js.map +7 -0
- package/dist/chunk-YABGJU5M.js +271 -0
- package/dist/chunk-YABGJU5M.js.map +7 -0
- package/dist/chunk-YEJH7ZC2.js +34 -0
- package/dist/chunk-YEJH7ZC2.js.map +7 -0
- package/dist/chunk-YFTE4H54.js +44117 -0
- package/dist/chunk-YFTE4H54.js.map +7 -0
- package/dist/chunk-YNJYMD43.js +392 -0
- package/dist/chunk-YNJYMD43.js.map +7 -0
- package/dist/chunk-YNYEQGVN.js +251 -0
- package/dist/chunk-YNYEQGVN.js.map +7 -0
- package/dist/chunk-YUPBD27Z.js +70 -0
- package/dist/chunk-YUPBD27Z.js.map +7 -0
- package/dist/chunk-YXJ52FD5.js +271 -0
- package/dist/chunk-YXJ52FD5.js.map +7 -0
- package/dist/chunk-YZGORRQN.js +3101 -0
- package/dist/chunk-YZGORRQN.js.map +7 -0
- package/dist/chunk-Z6IVJ6ZW.js +30 -0
- package/dist/chunk-Z6IVJ6ZW.js.map +7 -0
- package/dist/chunk-ZFC44XJJ.js +86 -0
- package/dist/chunk-ZFC44XJJ.js.map +7 -0
- package/dist/chunk-ZJDJC5TP.js +82 -0
- package/dist/chunk-ZJDJC5TP.js.map +7 -0
- package/dist/chunk-ZJGZNPDK.js +171 -0
- package/dist/chunk-ZJGZNPDK.js.map +7 -0
- package/dist/chunk-ZJHBJWZX.js +699 -0
- package/dist/chunk-ZJHBJWZX.js.map +7 -0
- package/dist/chunk-ZNOTD65D.js +95 -0
- package/dist/chunk-ZNOTD65D.js.map +7 -0
- package/dist/chunk-ZQ2QIFXW.js +122 -0
- package/dist/chunk-ZQ2QIFXW.js.map +7 -0
- package/dist/chunk-ZRMXPQGY.js +241 -0
- package/dist/chunk-ZRMXPQGY.js.map +7 -0
- package/dist/chunk-ZVEE5IDC.js +3101 -0
- package/dist/chunk-ZVEE5IDC.js.map +7 -0
- package/dist/cli-metadata.js +12 -0
- package/dist/cli-metadata.js.map +7 -0
- package/dist/contract-api.js +104 -0
- package/dist/contract-api.js.map +7 -0
- package/dist/dist-F3K7S5SS.js +549 -0
- package/dist/dist-F3K7S5SS.js.map +7 -0
- package/dist/helper-api.js +51 -0
- package/dist/helper-api.js.map +7 -0
- package/dist/index.js +71 -0
- package/dist/index.js.map +7 -0
- package/dist/magic-string.es-V5NOGTUV.js +1315 -0
- package/dist/magic-string.es-V5NOGTUV.js.map +7 -0
- package/dist/openclaw.plugin.json +23 -0
- package/dist/package.json +59 -0
- package/dist/plugin-entry.handlers.runtime-POD4CSHM.js +20 -0
- package/dist/plugin-entry.handlers.runtime-POD4CSHM.js.map +7 -0
- package/dist/plugin-entry.handlers.runtime-YOSG6V6U.js +20 -0
- package/dist/plugin-entry.handlers.runtime-YOSG6V6U.js.map +7 -0
- package/dist/runtime-api.js +104 -0
- package/dist/runtime-api.js.map +7 -0
- package/dist/rust-crypto-H35BXWUU.js +5323 -0
- package/dist/rust-crypto-H35BXWUU.js.map +7 -0
- package/dist/secret-contract-api.js +18 -0
- package/dist/secret-contract-api.js.map +7 -0
- package/dist/setup-entry.js +23 -0
- package/dist/setup-entry.js.map +7 -0
- package/dist/src/account-selection.js +19 -0
- package/dist/src/account-selection.js.map +7 -0
- package/dist/src/actions.js +24 -0
- package/dist/src/actions.js.map +7 -0
- package/dist/src/approval-auth.js +27 -0
- package/dist/src/approval-auth.js.map +7 -0
- package/dist/src/approval-handler.runtime.js +378 -0
- package/dist/src/approval-handler.runtime.js.map +7 -0
- package/dist/src/approval-ids.js +9 -0
- package/dist/src/approval-ids.js.map +7 -0
- package/dist/src/approval-native.js +28 -0
- package/dist/src/approval-native.js.map +7 -0
- package/dist/src/approval-reactions.js +20 -0
- package/dist/src/approval-reactions.js.map +7 -0
- package/dist/src/auth-precedence.js +8 -0
- package/dist/src/auth-precedence.js.map +7 -0
- package/dist/src/channel-account-paths.js +11 -0
- package/dist/src/channel-account-paths.js.map +7 -0
- package/dist/src/channel.js +74 -0
- package/dist/src/channel.js.map +7 -0
- package/dist/src/channel.runtime.js +82 -0
- package/dist/src/channel.runtime.js.map +7 -0
- package/dist/src/cli-metadata.js +8 -0
- package/dist/src/cli-metadata.js.map +7 -0
- package/dist/src/cli.js +936 -0
- package/dist/src/cli.js.map +7 -0
- package/dist/src/config-adapter.js +26 -0
- package/dist/src/config-adapter.js.map +7 -0
- package/dist/src/config-schema.js +8 -0
- package/dist/src/config-schema.js.map +7 -0
- package/dist/src/directory-live.js +35 -0
- package/dist/src/directory-live.js.map +7 -0
- package/dist/src/doctor-contract.js +11 -0
- package/dist/src/doctor-contract.js.map +7 -0
- package/dist/src/doctor.js +42 -0
- package/dist/src/doctor.js.map +7 -0
- package/dist/src/env-vars.js +12 -0
- package/dist/src/env-vars.js.map +7 -0
- package/dist/src/exec-approval-resolver.js +10 -0
- package/dist/src/exec-approval-resolver.js.map +7 -0
- package/dist/src/exec-approvals.js +51 -0
- package/dist/src/exec-approvals.js.map +7 -0
- package/dist/src/group-mentions.js +28 -0
- package/dist/src/group-mentions.js.map +7 -0
- package/dist/src/legacy-crypto-inspector-availability.js +8 -0
- package/dist/src/legacy-crypto-inspector-availability.js.map +7 -0
- package/dist/src/legacy-crypto.js +26 -0
- package/dist/src/legacy-crypto.js.map +7 -0
- package/dist/src/legacy-state.js +24 -0
- package/dist/src/legacy-state.js.map +7 -0
- package/dist/src/matrix/account-config.js +16 -0
- package/dist/src/matrix/account-config.js.map +7 -0
- package/dist/src/matrix/accounts.js +31 -0
- package/dist/src/matrix/accounts.js.map +7 -0
- package/dist/src/matrix/actions/client.js +40 -0
- package/dist/src/matrix/actions/client.js.map +7 -0
- package/dist/src/matrix/actions/devices.js +42 -0
- package/dist/src/matrix/actions/devices.js.map +7 -0
- package/dist/src/matrix/actions/limits.js +8 -0
- package/dist/src/matrix/actions/limits.js.map +7 -0
- package/dist/src/matrix/actions/messages.js +49 -0
- package/dist/src/matrix/actions/messages.js.map +7 -0
- package/dist/src/matrix/actions/pins.js +46 -0
- package/dist/src/matrix/actions/pins.js.map +7 -0
- package/dist/src/matrix/actions/polls.js +37 -0
- package/dist/src/matrix/actions/polls.js.map +7 -0
- package/dist/src/matrix/actions/profile.js +38 -0
- package/dist/src/matrix/actions/profile.js.map +7 -0
- package/dist/src/matrix/actions/reactions.js +40 -0
- package/dist/src/matrix/actions/reactions.js.map +7 -0
- package/dist/src/matrix/actions/room.js +40 -0
- package/dist/src/matrix/actions/room.js.map +7 -0
- package/dist/src/matrix/actions/summary.js +19 -0
- package/dist/src/matrix/actions/summary.js.map +7 -0
- package/dist/src/matrix/actions/types.js +13 -0
- package/dist/src/matrix/actions/types.js.map +7 -0
- package/dist/src/matrix/actions/verification.js +77 -0
- package/dist/src/matrix/actions/verification.js.map +7 -0
- package/dist/src/matrix/actions.js +126 -0
- package/dist/src/matrix/actions.js.map +7 -0
- package/dist/src/matrix/active-client.js +10 -0
- package/dist/src/matrix/active-client.js.map +7 -0
- package/dist/src/matrix/async-lock.js +8 -0
- package/dist/src/matrix/async-lock.js.map +7 -0
- package/dist/src/matrix/backup-health.js +10 -0
- package/dist/src/matrix/backup-health.js.map +7 -0
- package/dist/src/matrix/client/config-runtime-api.js +24 -0
- package/dist/src/matrix/client/config-runtime-api.js.map +7 -0
- package/dist/src/matrix/client/config-secret-input.runtime.js +11 -0
- package/dist/src/matrix/client/config-secret-input.runtime.js.map +7 -0
- package/dist/src/matrix/client/config.js +42 -0
- package/dist/src/matrix/client/config.js.map +7 -0
- package/dist/src/matrix/client/create-client.js +20 -0
- package/dist/src/matrix/client/create-client.js.map +7 -0
- package/dist/src/matrix/client/env-auth.js +26 -0
- package/dist/src/matrix/client/env-auth.js.map +7 -0
- package/dist/src/matrix/client/file-sync-store.js +23 -0
- package/dist/src/matrix/client/file-sync-store.js.map +7 -0
- package/dist/src/matrix/client/logging.js +17 -0
- package/dist/src/matrix/client/logging.js.map +7 -0
- package/dist/src/matrix/client/migration-snapshot.runtime.js +13 -0
- package/dist/src/matrix/client/migration-snapshot.runtime.js.map +7 -0
- package/dist/src/matrix/client/private-network-host.js +8 -0
- package/dist/src/matrix/client/private-network-host.js.map +7 -0
- package/dist/src/matrix/client/runtime.js +8 -0
- package/dist/src/matrix/client/runtime.js.map +7 -0
- package/dist/src/matrix/client/shared.js +34 -0
- package/dist/src/matrix/client/shared.js.map +7 -0
- package/dist/src/matrix/client/storage.js +26 -0
- package/dist/src/matrix/client/storage.js.map +7 -0
- package/dist/src/matrix/client/types.js +7 -0
- package/dist/src/matrix/client/types.js.map +7 -0
- package/dist/src/matrix/client-bootstrap.js +15 -0
- package/dist/src/matrix/client-bootstrap.js.map +7 -0
- package/dist/src/matrix/client-resolver.test-helpers.js +122 -0
- package/dist/src/matrix/client-resolver.test-helpers.js.map +7 -0
- package/dist/src/matrix/client.js +63 -0
- package/dist/src/matrix/client.js.map +7 -0
- package/dist/src/matrix/config-paths.js +12 -0
- package/dist/src/matrix/config-paths.js.map +7 -0
- package/dist/src/matrix/config-update.js +17 -0
- package/dist/src/matrix/config-update.js.map +7 -0
- package/dist/src/matrix/credentials-read.js +22 -0
- package/dist/src/matrix/credentials-read.js.map +7 -0
- package/dist/src/matrix/credentials-write.runtime.js +24 -0
- package/dist/src/matrix/credentials-write.runtime.js.map +7 -0
- package/dist/src/matrix/credentials.js +90 -0
- package/dist/src/matrix/credentials.js.map +7 -0
- package/dist/src/matrix/deps.js +12 -0
- package/dist/src/matrix/deps.js.map +7 -0
- package/dist/src/matrix/device-health.js +10 -0
- package/dist/src/matrix/device-health.js.map +7 -0
- package/dist/src/matrix/direct-management.js +18 -0
- package/dist/src/matrix/direct-management.js.map +7 -0
- package/dist/src/matrix/direct-room.js +18 -0
- package/dist/src/matrix/direct-room.js.map +7 -0
- package/dist/src/matrix/draft-stream.js +33 -0
- package/dist/src/matrix/draft-stream.js.map +7 -0
- package/dist/src/matrix/encryption-guidance.js +17 -0
- package/dist/src/matrix/encryption-guidance.js.map +7 -0
- package/dist/src/matrix/errors.js +12 -0
- package/dist/src/matrix/errors.js.map +7 -0
- package/dist/src/matrix/format.js +13 -0
- package/dist/src/matrix/format.js.map +7 -0
- package/dist/src/matrix/legacy-crypto-inspector.js +73 -0
- package/dist/src/matrix/legacy-crypto-inspector.js.map +7 -0
- package/dist/src/matrix/media-errors.js +12 -0
- package/dist/src/matrix/media-errors.js.map +7 -0
- package/dist/src/matrix/media-text.js +22 -0
- package/dist/src/matrix/media-text.js.map +7 -0
- package/dist/src/matrix/monitor/access-state.js +9 -0
- package/dist/src/matrix/monitor/access-state.js.map +7 -0
- package/dist/src/matrix/monitor/ack-config.js +10 -0
- package/dist/src/matrix/monitor/ack-config.js.map +7 -0
- package/dist/src/matrix/monitor/allowlist.js +12 -0
- package/dist/src/matrix/monitor/allowlist.js.map +7 -0
- package/dist/src/matrix/monitor/auto-join.js +9 -0
- package/dist/src/matrix/monitor/auto-join.js.map +7 -0
- package/dist/src/matrix/monitor/config.js +37 -0
- package/dist/src/matrix/monitor/config.js.map +7 -0
- package/dist/src/matrix/monitor/context-summary.js +13 -0
- package/dist/src/matrix/monitor/context-summary.js.map +7 -0
- package/dist/src/matrix/monitor/direct.js +13 -0
- package/dist/src/matrix/monitor/direct.js.map +7 -0
- package/dist/src/matrix/monitor/events.js +20 -0
- package/dist/src/matrix/monitor/events.js.map +7 -0
- package/dist/src/matrix/monitor/handler.js +76 -0
- package/dist/src/matrix/monitor/handler.js.map +7 -0
- package/dist/src/matrix/monitor/handler.test-helpers.js +268 -0
- package/dist/src/matrix/monitor/handler.test-helpers.js.map +7 -0
- package/dist/src/matrix/monitor/inbound-dedupe.js +17 -0
- package/dist/src/matrix/monitor/inbound-dedupe.js.map +7 -0
- package/dist/src/matrix/monitor/index.js +502 -0
- package/dist/src/matrix/monitor/index.js.map +7 -0
- package/dist/src/matrix/monitor/legacy-crypto-restore.js +99 -0
- package/dist/src/matrix/monitor/legacy-crypto-restore.js.map +7 -0
- package/dist/src/matrix/monitor/location.js +11 -0
- package/dist/src/matrix/monitor/location.js.map +7 -0
- package/dist/src/matrix/monitor/media.js +10 -0
- package/dist/src/matrix/monitor/media.js.map +7 -0
- package/dist/src/matrix/monitor/mentions.js +9 -0
- package/dist/src/matrix/monitor/mentions.js.map +7 -0
- package/dist/src/matrix/monitor/reaction-events.js +38 -0
- package/dist/src/matrix/monitor/reaction-events.js.map +7 -0
- package/dist/src/matrix/monitor/recent-invite.js +10 -0
- package/dist/src/matrix/monitor/recent-invite.js.map +7 -0
- package/dist/src/matrix/monitor/replies.js +33 -0
- package/dist/src/matrix/monitor/replies.js.map +7 -0
- package/dist/src/matrix/monitor/reply-context.js +14 -0
- package/dist/src/matrix/monitor/reply-context.js.map +7 -0
- package/dist/src/matrix/monitor/room-history.js +10 -0
- package/dist/src/matrix/monitor/room-history.js.map +7 -0
- package/dist/src/matrix/monitor/room-info.js +9 -0
- package/dist/src/matrix/monitor/room-info.js.map +7 -0
- package/dist/src/matrix/monitor/rooms.js +9 -0
- package/dist/src/matrix/monitor/rooms.js.map +7 -0
- package/dist/src/matrix/monitor/route.js +12 -0
- package/dist/src/matrix/monitor/route.js.map +7 -0
- package/dist/src/matrix/monitor/runtime-api.js +40 -0
- package/dist/src/matrix/monitor/runtime-api.js.map +7 -0
- package/dist/src/matrix/monitor/startup-verification.js +174 -0
- package/dist/src/matrix/monitor/startup-verification.js.map +7 -0
- package/dist/src/matrix/monitor/startup.js +9 -0
- package/dist/src/matrix/monitor/startup.js.map +7 -0
- package/dist/src/matrix/monitor/status.js +10 -0
- package/dist/src/matrix/monitor/status.js.map +7 -0
- package/dist/src/matrix/monitor/sync-lifecycle.js +9 -0
- package/dist/src/matrix/monitor/sync-lifecycle.js.map +7 -0
- package/dist/src/matrix/monitor/task-runner.js +8 -0
- package/dist/src/matrix/monitor/task-runner.js.map +7 -0
- package/dist/src/matrix/monitor/thread-context.js +14 -0
- package/dist/src/matrix/monitor/thread-context.js.map +7 -0
- package/dist/src/matrix/monitor/threads.js +16 -0
- package/dist/src/matrix/monitor/threads.js.map +7 -0
- package/dist/src/matrix/monitor/types.js +11 -0
- package/dist/src/matrix/monitor/types.js.map +7 -0
- package/dist/src/matrix/monitor/verification-events.js +13 -0
- package/dist/src/matrix/monitor/verification-events.js.map +7 -0
- package/dist/src/matrix/monitor/verification-utils.js +16 -0
- package/dist/src/matrix/monitor/verification-utils.js.map +7 -0
- package/dist/src/matrix/outbound-media-runtime.js +9 -0
- package/dist/src/matrix/outbound-media-runtime.js.map +7 -0
- package/dist/src/matrix/poll-summary.js +14 -0
- package/dist/src/matrix/poll-summary.js.map +7 -0
- package/dist/src/matrix/poll-types.js +55 -0
- package/dist/src/matrix/poll-types.js.map +7 -0
- package/dist/src/matrix/probe.js +9 -0
- package/dist/src/matrix/probe.js.map +7 -0
- package/dist/src/matrix/probe.runtime.js +30 -0
- package/dist/src/matrix/probe.runtime.js.map +7 -0
- package/dist/src/matrix/profile.js +16 -0
- package/dist/src/matrix/profile.js.map +7 -0
- package/dist/src/matrix/reaction-common.js +26 -0
- package/dist/src/matrix/reaction-common.js.map +7 -0
- package/dist/src/matrix/sdk/crypto-bootstrap.js +15 -0
- package/dist/src/matrix/sdk/crypto-bootstrap.js.map +7 -0
- package/dist/src/matrix/sdk/crypto-facade.js +8 -0
- package/dist/src/matrix/sdk/crypto-facade.js.map +7 -0
- package/dist/src/matrix/sdk/crypto-node.runtime.js +15 -0
- package/dist/src/matrix/sdk/crypto-node.runtime.js.map +7 -0
- package/dist/src/matrix/sdk/crypto-runtime.js +84 -0
- package/dist/src/matrix/sdk/crypto-runtime.js.map +7 -0
- package/dist/src/matrix/sdk/decrypt-bridge.js +11 -0
- package/dist/src/matrix/sdk/decrypt-bridge.js.map +7 -0
- package/dist/src/matrix/sdk/event-helpers.js +12 -0
- package/dist/src/matrix/sdk/event-helpers.js.map +7 -0
- package/dist/src/matrix/sdk/http-client.js +13 -0
- package/dist/src/matrix/sdk/http-client.js.map +7 -0
- package/dist/src/matrix/sdk/idb-persistence-lock.js +12 -0
- package/dist/src/matrix/sdk/idb-persistence-lock.js.map +7 -0
- package/dist/src/matrix/sdk/idb-persistence.js +13 -0
- package/dist/src/matrix/sdk/idb-persistence.js.map +7 -0
- package/dist/src/matrix/sdk/idb-persistence.test-helpers.js +83 -0
- package/dist/src/matrix/sdk/idb-persistence.test-helpers.js.map +7 -0
- package/dist/src/matrix/sdk/logger.js +15 -0
- package/dist/src/matrix/sdk/logger.js.map +7 -0
- package/dist/src/matrix/sdk/read-response-with-limit.js +8 -0
- package/dist/src/matrix/sdk/read-response-with-limit.js.map +7 -0
- package/dist/src/matrix/sdk/recovery-key-store.js +14 -0
- package/dist/src/matrix/sdk/recovery-key-store.js.map +7 -0
- package/dist/src/matrix/sdk/transport.js +13 -0
- package/dist/src/matrix/sdk/transport.js.map +7 -0
- package/dist/src/matrix/sdk/types.js +7 -0
- package/dist/src/matrix/sdk/types.js.map +7 -0
- package/dist/src/matrix/sdk/verification-manager.js +11 -0
- package/dist/src/matrix/sdk/verification-manager.js.map +7 -0
- package/dist/src/matrix/sdk/verification-status.js +12 -0
- package/dist/src/matrix/sdk/verification-status.js.map +7 -0
- package/dist/src/matrix/sdk.js +1375 -0
- package/dist/src/matrix/sdk.js.map +7 -0
- package/dist/src/matrix/send/client.js +14 -0
- package/dist/src/matrix/send/client.js.map +7 -0
- package/dist/src/matrix/send/formatting.js +29 -0
- package/dist/src/matrix/send/formatting.js.map +7 -0
- package/dist/src/matrix/send/media.js +26 -0
- package/dist/src/matrix/send/media.js.map +7 -0
- package/dist/src/matrix/send/targets.js +15 -0
- package/dist/src/matrix/send/targets.js.map +7 -0
- package/dist/src/matrix/send/types.js +17 -0
- package/dist/src/matrix/send/types.js.map +7 -0
- package/dist/src/matrix/send.js +51 -0
- package/dist/src/matrix/send.js.map +7 -0
- package/dist/src/matrix/session-store-metadata.js +15 -0
- package/dist/src/matrix/session-store-metadata.js.map +7 -0
- package/dist/src/matrix/startup-abort.js +14 -0
- package/dist/src/matrix/startup-abort.js.map +7 -0
- package/dist/src/matrix/sync-state.js +12 -0
- package/dist/src/matrix/sync-state.js.map +7 -0
- package/dist/src/matrix/target-ids.js +20 -0
- package/dist/src/matrix/target-ids.js.map +7 -0
- package/dist/src/matrix/thread-bindings-shared.js +34 -0
- package/dist/src/matrix/thread-bindings-shared.js.map +7 -0
- package/dist/src/matrix/thread-bindings.js +49 -0
- package/dist/src/matrix/thread-bindings.js.map +7 -0
- package/dist/src/matrix-migration.runtime.js +45 -0
- package/dist/src/matrix-migration.runtime.js.map +7 -0
- package/dist/src/migration-config.js +29 -0
- package/dist/src/migration-config.js.map +7 -0
- package/dist/src/migration-snapshot-backup.js +12 -0
- package/dist/src/migration-snapshot-backup.js.map +7 -0
- package/dist/src/migration-snapshot.js +38 -0
- package/dist/src/migration-snapshot.js.map +7 -0
- package/dist/src/onboarding.js +43 -0
- package/dist/src/onboarding.js.map +7 -0
- package/dist/src/onboarding.test-harness.js +124 -0
- package/dist/src/onboarding.test-harness.js.map +7 -0
- package/dist/src/outbound.js +33 -0
- package/dist/src/outbound.js.map +7 -0
- package/dist/src/plugin-entry.runtime.js +15 -0
- package/dist/src/plugin-entry.runtime.js.map +7 -0
- package/dist/src/profile-update.js +41 -0
- package/dist/src/profile-update.js.map +7 -0
- package/dist/src/record-shared.js +8 -0
- package/dist/src/record-shared.js.map +7 -0
- package/dist/src/resolve-targets.js +34 -0
- package/dist/src/resolve-targets.js.map +7 -0
- package/dist/src/resolver.js +8 -0
- package/dist/src/resolver.js.map +7 -0
- package/dist/src/runtime-api.js +120 -0
- package/dist/src/runtime-api.js.map +7 -0
- package/dist/src/runtime.js +10 -0
- package/dist/src/runtime.js.map +7 -0
- package/dist/src/secret-contract.js +13 -0
- package/dist/src/secret-contract.js.map +7 -0
- package/dist/src/session-route.js +25 -0
- package/dist/src/session-route.js.map +7 -0
- package/dist/src/setup-bootstrap.js +124 -0
- package/dist/src/setup-bootstrap.js.map +7 -0
- package/dist/src/setup-config.js +28 -0
- package/dist/src/setup-config.js.map +7 -0
- package/dist/src/setup-contract.js +16 -0
- package/dist/src/setup-contract.js.map +7 -0
- package/dist/src/setup-core.js +25 -0
- package/dist/src/setup-core.js.map +7 -0
- package/dist/src/setup-surface.js +45 -0
- package/dist/src/setup-surface.js.map +7 -0
- package/dist/src/startup-maintenance.js +29 -0
- package/dist/src/startup-maintenance.js.map +7 -0
- package/dist/src/storage-paths.js +24 -0
- package/dist/src/storage-paths.js.map +7 -0
- package/dist/src/test-helpers.js +49 -0
- package/dist/src/test-helpers.js.map +7 -0
- package/dist/src/test-mocks.js +40 -0
- package/dist/src/test-mocks.js.map +7 -0
- package/dist/src/test-runtime.js +65 -0
- package/dist/src/test-runtime.js.map +7 -0
- package/dist/src/tool-actions.js +68 -0
- package/dist/src/tool-actions.js.map +7 -0
- package/dist/src/tool-actions.runtime.js +73 -0
- package/dist/src/tool-actions.runtime.js.map +7 -0
- package/dist/src/types.js +7 -0
- package/dist/src/types.js.map +7 -0
- package/dist/test-api.js +82 -0
- package/dist/test-api.js.map +7 -0
- package/dist/thread-bindings-runtime.js +15 -0
- package/dist/thread-bindings-runtime.js.map +7 -0
- package/package.json +12 -6
- package/CHANGELOG.md +0 -164
- package/ENDOFFILE +0 -0
- package/EOF +0 -0
- package/SPEC-SUPPORT.md +0 -116
- package/YAMLEND +0 -0
- package/api.ts +0 -18
- package/archipelagolab-lobi-1.0.0.tgz +0 -0
- package/auth-presence.ts +0 -56
- package/channel-plugin-api.ts +0 -3
- package/cli-metadata.ts +0 -11
- package/contract-api.ts +0 -17
- package/docs/CHECKLIST.md +0 -83
- package/docs/FORK_SDK_GUIDE.md +0 -279
- package/helper-api.ts +0 -3
- package/index.test.ts +0 -61
- package/index.ts +0 -65
- package/plugin-entry.handlers.runtime.ts +0 -1
- package/runtime-api.ts +0 -54
- package/runtime-heavy-api.ts +0 -1
- package/scripts/migrate-to-lobi.sh +0 -72
- package/secret-contract-api.ts +0 -5
- package/setup-entry.ts +0 -13
- package/src/account-selection.test.ts +0 -124
- package/src/account-selection.ts +0 -226
- package/src/actions.account-propagation.test.ts +0 -251
- package/src/actions.test.ts +0 -251
- package/src/actions.ts +0 -336
- package/src/approval-auth.test.ts +0 -23
- package/src/approval-auth.ts +0 -25
- package/src/approval-handler.runtime.test.ts +0 -46
- package/src/approval-handler.runtime.ts +0 -400
- package/src/approval-ids.ts +0 -6
- package/src/approval-native.test.ts +0 -329
- package/src/approval-native.ts +0 -336
- package/src/approval-reactions.test.ts +0 -107
- package/src/approval-reactions.ts +0 -158
- package/src/auth-precedence.ts +0 -61
- package/src/channel-account-paths.ts +0 -92
- package/src/channel.account-paths.test.ts +0 -102
- package/src/channel.directory.test.ts +0 -601
- package/src/channel.resolve.test.ts +0 -38
- package/src/channel.runtime.ts +0 -16
- package/src/channel.setup.test.ts +0 -269
- package/src/channel.ts +0 -570
- package/src/cli-metadata.ts +0 -19
- package/src/cli.test.ts +0 -1015
- package/src/cli.ts +0 -1198
- package/src/config-adapter.ts +0 -41
- package/src/config-schema.test.ts +0 -90
- package/src/config-schema.ts +0 -114
- package/src/directory-live.test.ts +0 -200
- package/src/directory-live.ts +0 -238
- package/src/doctor-contract.ts +0 -287
- package/src/doctor.test.ts +0 -440
- package/src/doctor.ts +0 -262
- package/src/env-vars.ts +0 -92
- package/src/exec-approval-resolver.test.ts +0 -68
- package/src/exec-approval-resolver.ts +0 -23
- package/src/exec-approvals.test.ts +0 -483
- package/src/exec-approvals.ts +0 -290
- package/src/group-mentions.ts +0 -41
- package/src/legacy-crypto-inspector-availability.test.ts +0 -81
- package/src/legacy-crypto-inspector-availability.ts +0 -60
- package/src/legacy-crypto.test.ts +0 -234
- package/src/legacy-crypto.ts +0 -549
- package/src/legacy-state.test.ts +0 -86
- package/src/legacy-state.ts +0 -156
- package/src/matrix/account-config.ts +0 -150
- package/src/matrix/accounts.readiness.test.ts +0 -27
- package/src/matrix/accounts.test.ts +0 -757
- package/src/matrix/accounts.ts +0 -194
- package/src/matrix/actions/client.test.ts +0 -215
- package/src/matrix/actions/client.ts +0 -31
- package/src/matrix/actions/devices.test.ts +0 -114
- package/src/matrix/actions/devices.ts +0 -34
- package/src/matrix/actions/limits.test.ts +0 -15
- package/src/matrix/actions/limits.ts +0 -6
- package/src/matrix/actions/messages.test.ts +0 -289
- package/src/matrix/actions/messages.ts +0 -123
- package/src/matrix/actions/pins.test.ts +0 -74
- package/src/matrix/actions/pins.ts +0 -64
- package/src/matrix/actions/polls.test.ts +0 -71
- package/src/matrix/actions/polls.ts +0 -109
- package/src/matrix/actions/profile.test.ts +0 -109
- package/src/matrix/actions/profile.ts +0 -37
- package/src/matrix/actions/reactions.test.ts +0 -135
- package/src/matrix/actions/reactions.ts +0 -59
- package/src/matrix/actions/room.test.ts +0 -79
- package/src/matrix/actions/room.ts +0 -71
- package/src/matrix/actions/summary.test.ts +0 -87
- package/src/matrix/actions/summary.ts +0 -88
- package/src/matrix/actions/types.ts +0 -82
- package/src/matrix/actions/verification.test.ts +0 -105
- package/src/matrix/actions/verification.ts +0 -237
- package/src/matrix/actions.ts +0 -37
- package/src/matrix/active-client.ts +0 -26
- package/src/matrix/async-lock.ts +0 -18
- package/src/matrix/backup-health.ts +0 -115
- package/src/matrix/client/config-runtime-api.ts +0 -14
- package/src/matrix/client/config-secret-input.runtime.ts +0 -1
- package/src/matrix/client/config.ts +0 -982
- package/src/matrix/client/create-client.test.ts +0 -115
- package/src/matrix/client/create-client.ts +0 -101
- package/src/matrix/client/env-auth.ts +0 -6
- package/src/matrix/client/file-sync-store.test.ts +0 -265
- package/src/matrix/client/file-sync-store.ts +0 -289
- package/src/matrix/client/logging.ts +0 -123
- package/src/matrix/client/migration-snapshot.runtime.ts +0 -1
- package/src/matrix/client/private-network-host.ts +0 -56
- package/src/matrix/client/runtime.ts +0 -4
- package/src/matrix/client/shared.test.ts +0 -344
- package/src/matrix/client/shared.ts +0 -306
- package/src/matrix/client/storage.test.ts +0 -634
- package/src/matrix/client/storage.ts +0 -544
- package/src/matrix/client/types.ts +0 -50
- package/src/matrix/client-bootstrap.test.ts +0 -84
- package/src/matrix/client-bootstrap.ts +0 -164
- package/src/matrix/client-resolver.test-helpers.ts +0 -147
- package/src/matrix/client.test.ts +0 -1521
- package/src/matrix/client.ts +0 -23
- package/src/matrix/config-paths.ts +0 -31
- package/src/matrix/config-update.test.ts +0 -237
- package/src/matrix/config-update.ts +0 -291
- package/src/matrix/credentials-read.ts +0 -206
- package/src/matrix/credentials-write.runtime.ts +0 -26
- package/src/matrix/credentials.test.ts +0 -501
- package/src/matrix/credentials.ts +0 -95
- package/src/matrix/deps.test.ts +0 -74
- package/src/matrix/deps.ts +0 -225
- package/src/matrix/device-health.test.ts +0 -45
- package/src/matrix/device-health.ts +0 -31
- package/src/matrix/direct-management.test.ts +0 -350
- package/src/matrix/direct-management.ts +0 -347
- package/src/matrix/direct-room.test.ts +0 -61
- package/src/matrix/direct-room.ts +0 -128
- package/src/matrix/draft-stream.test.ts +0 -406
- package/src/matrix/draft-stream.ts +0 -216
- package/src/matrix/encryption-guidance.ts +0 -27
- package/src/matrix/errors.ts +0 -21
- package/src/matrix/format.test.ts +0 -340
- package/src/matrix/format.ts +0 -428
- package/src/matrix/legacy-crypto-inspector.ts +0 -95
- package/src/matrix/media-errors.ts +0 -20
- package/src/matrix/media-text.ts +0 -169
- package/src/matrix/monitor/access-state.test.ts +0 -45
- package/src/matrix/monitor/access-state.ts +0 -77
- package/src/matrix/monitor/ack-config.test.ts +0 -57
- package/src/matrix/monitor/ack-config.ts +0 -26
- package/src/matrix/monitor/allowlist.test.ts +0 -45
- package/src/matrix/monitor/allowlist.ts +0 -94
- package/src/matrix/monitor/auto-join.test.ts +0 -203
- package/src/matrix/monitor/auto-join.ts +0 -86
- package/src/matrix/monitor/config.test.ts +0 -197
- package/src/matrix/monitor/config.ts +0 -303
- package/src/matrix/monitor/context-summary.ts +0 -43
- package/src/matrix/monitor/direct.test.ts +0 -529
- package/src/matrix/monitor/direct.ts +0 -270
- package/src/matrix/monitor/events.test.ts +0 -1524
- package/src/matrix/monitor/events.ts +0 -213
- package/src/matrix/monitor/handler.body-for-agent.test.ts +0 -396
- package/src/matrix/monitor/handler.group-history.test.ts +0 -648
- package/src/matrix/monitor/handler.media-failure.test.ts +0 -267
- package/src/matrix/monitor/handler.test-helpers.ts +0 -308
- package/src/matrix/monitor/handler.test.ts +0 -2952
- package/src/matrix/monitor/handler.thread-root-media.test.ts +0 -82
- package/src/matrix/monitor/handler.ts +0 -1679
- package/src/matrix/monitor/inbound-dedupe.test.ts +0 -146
- package/src/matrix/monitor/inbound-dedupe.ts +0 -267
- package/src/matrix/monitor/index.test.ts +0 -920
- package/src/matrix/monitor/index.ts +0 -434
- package/src/matrix/monitor/legacy-crypto-restore.test.ts +0 -206
- package/src/matrix/monitor/legacy-crypto-restore.ts +0 -139
- package/src/matrix/monitor/location.ts +0 -100
- package/src/matrix/monitor/media.test.ts +0 -159
- package/src/matrix/monitor/media.ts +0 -119
- package/src/matrix/monitor/mentions.test.ts +0 -289
- package/src/matrix/monitor/mentions.ts +0 -177
- package/src/matrix/monitor/reaction-events.test.ts +0 -326
- package/src/matrix/monitor/reaction-events.ts +0 -187
- package/src/matrix/monitor/recent-invite.test.ts +0 -92
- package/src/matrix/monitor/recent-invite.ts +0 -30
- package/src/matrix/monitor/replies.test.ts +0 -265
- package/src/matrix/monitor/replies.ts +0 -136
- package/src/matrix/monitor/reply-context.test.ts +0 -276
- package/src/matrix/monitor/reply-context.ts +0 -92
- package/src/matrix/monitor/room-history.test.ts +0 -258
- package/src/matrix/monitor/room-history.ts +0 -301
- package/src/matrix/monitor/room-info.test.ts +0 -201
- package/src/matrix/monitor/room-info.ts +0 -126
- package/src/matrix/monitor/rooms.test.ts +0 -121
- package/src/matrix/monitor/rooms.ts +0 -52
- package/src/matrix/monitor/route.test.ts +0 -255
- package/src/matrix/monitor/route.ts +0 -178
- package/src/matrix/monitor/runtime-api.ts +0 -31
- package/src/matrix/monitor/startup-verification.test.ts +0 -294
- package/src/matrix/monitor/startup-verification.ts +0 -237
- package/src/matrix/monitor/startup.test.ts +0 -257
- package/src/matrix/monitor/startup.ts +0 -218
- package/src/matrix/monitor/status.ts +0 -111
- package/src/matrix/monitor/sync-lifecycle.test.ts +0 -224
- package/src/matrix/monitor/sync-lifecycle.ts +0 -91
- package/src/matrix/monitor/task-runner.ts +0 -38
- package/src/matrix/monitor/thread-context.test.ts +0 -149
- package/src/matrix/monitor/thread-context.ts +0 -108
- package/src/matrix/monitor/threads.test.ts +0 -68
- package/src/matrix/monitor/threads.ts +0 -85
- package/src/matrix/monitor/types.ts +0 -30
- package/src/matrix/monitor/verification-events.ts +0 -627
- package/src/matrix/monitor/verification-utils.test.ts +0 -47
- package/src/matrix/monitor/verification-utils.ts +0 -46
- package/src/matrix/outbound-media-runtime.ts +0 -1
- package/src/matrix/poll-summary.ts +0 -110
- package/src/matrix/poll-types.test.ts +0 -205
- package/src/matrix/poll-types.ts +0 -433
- package/src/matrix/probe.runtime.ts +0 -4
- package/src/matrix/probe.test.ts +0 -154
- package/src/matrix/probe.ts +0 -96
- package/src/matrix/profile.test.ts +0 -154
- package/src/matrix/profile.ts +0 -184
- package/src/matrix/reaction-common.test.ts +0 -96
- package/src/matrix/reaction-common.ts +0 -147
- package/src/matrix/sdk/crypto-bootstrap.test.ts +0 -505
- package/src/matrix/sdk/crypto-bootstrap.ts +0 -341
- package/src/matrix/sdk/crypto-facade.test.ts +0 -197
- package/src/matrix/sdk/crypto-facade.ts +0 -207
- package/src/matrix/sdk/crypto-node.runtime.test.ts +0 -27
- package/src/matrix/sdk/crypto-node.runtime.ts +0 -9
- package/src/matrix/sdk/crypto-runtime.ts +0 -11
- package/src/matrix/sdk/decrypt-bridge.ts +0 -356
- package/src/matrix/sdk/event-helpers.test.ts +0 -60
- package/src/matrix/sdk/event-helpers.ts +0 -71
- package/src/matrix/sdk/http-client.test.ts +0 -134
- package/src/matrix/sdk/http-client.ts +0 -87
- package/src/matrix/sdk/idb-persistence-lock.ts +0 -51
- package/src/matrix/sdk/idb-persistence.lock-order.test.ts +0 -108
- package/src/matrix/sdk/idb-persistence.test-helpers.ts +0 -88
- package/src/matrix/sdk/idb-persistence.test.ts +0 -149
- package/src/matrix/sdk/idb-persistence.ts +0 -283
- package/src/matrix/sdk/logger.test.ts +0 -25
- package/src/matrix/sdk/logger.ts +0 -108
- package/src/matrix/sdk/read-response-with-limit.ts +0 -19
- package/src/matrix/sdk/recovery-key-store.test.ts +0 -385
- package/src/matrix/sdk/recovery-key-store.ts +0 -430
- package/src/matrix/sdk/transport.test.ts +0 -161
- package/src/matrix/sdk/transport.ts +0 -344
- package/src/matrix/sdk/types.ts +0 -236
- package/src/matrix/sdk/verification-manager.test.ts +0 -509
- package/src/matrix/sdk/verification-manager.ts +0 -694
- package/src/matrix/sdk/verification-status.ts +0 -23
- package/src/matrix/sdk.test.ts +0 -2568
- package/src/matrix/sdk.ts +0 -1789
- package/src/matrix/send/client.test.ts +0 -174
- package/src/matrix/send/client.ts +0 -90
- package/src/matrix/send/formatting.ts +0 -189
- package/src/matrix/send/media.ts +0 -244
- package/src/matrix/send/targets.test.ts +0 -254
- package/src/matrix/send/targets.ts +0 -104
- package/src/matrix/send/types.ts +0 -134
- package/src/matrix/send.test.ts +0 -958
- package/src/matrix/send.ts +0 -609
- package/src/matrix/session-store-metadata.ts +0 -108
- package/src/matrix/startup-abort.ts +0 -44
- package/src/matrix/sync-state.ts +0 -27
- package/src/matrix/target-ids.ts +0 -102
- package/src/matrix/thread-bindings-shared.ts +0 -201
- package/src/matrix/thread-bindings.test.ts +0 -673
- package/src/matrix/thread-bindings.ts +0 -577
- package/src/matrix-migration.runtime.ts +0 -9
- package/src/migration-config.test.ts +0 -228
- package/src/migration-config.ts +0 -243
- package/src/migration-snapshot-backup.ts +0 -117
- package/src/migration-snapshot.test.ts +0 -184
- package/src/migration-snapshot.ts +0 -55
- package/src/onboarding.resolve.test.ts +0 -55
- package/src/onboarding.test-harness.ts +0 -158
- package/src/onboarding.test.ts +0 -665
- package/src/onboarding.ts +0 -773
- package/src/outbound.test.ts +0 -173
- package/src/outbound.ts +0 -78
- package/src/plugin-entry.runtime.js +0 -159
- package/src/plugin-entry.runtime.test.ts +0 -108
- package/src/plugin-entry.runtime.ts +0 -68
- package/src/profile-update.ts +0 -68
- package/src/record-shared.ts +0 -3
- package/src/resolve-targets.test.ts +0 -178
- package/src/resolve-targets.ts +0 -175
- package/src/resolver.ts +0 -21
- package/src/runtime-api.ts +0 -144
- package/src/runtime.ts +0 -7
- package/src/secret-contract.ts +0 -174
- package/src/session-route.test.ts +0 -315
- package/src/session-route.ts +0 -113
- package/src/setup-bootstrap.ts +0 -94
- package/src/setup-config.ts +0 -222
- package/src/setup-contract.ts +0 -89
- package/src/setup-core.test.ts +0 -326
- package/src/setup-core.ts +0 -50
- package/src/setup-surface.ts +0 -4
- package/src/startup-maintenance.test.ts +0 -227
- package/src/startup-maintenance.ts +0 -114
- package/src/storage-paths.ts +0 -92
- package/src/test-helpers.ts +0 -42
- package/src/test-mocks.ts +0 -55
- package/src/test-runtime.ts +0 -72
- package/src/test-support/monitor-route-test-support.ts +0 -8
- package/src/tool-actions.runtime.ts +0 -1
- package/src/tool-actions.test.ts +0 -422
- package/src/tool-actions.ts +0 -498
- package/src/types.ts +0 -230
- package/test-api.ts +0 -2
- package/thread-bindings-runtime.ts +0 -4
- package/tsconfig.json +0 -16
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../node_modules/music-metadata/lib/asf/AsfParser.js", "../../../node_modules/music-metadata/lib/asf/AsfGuid.js", "../../../node_modules/win-guid/lib/guid.js", "../../../node_modules/music-metadata/lib/asf/AsfObject.js", "../../../node_modules/music-metadata/lib/asf/AsfUtil.js"],
|
|
4
|
+
"sourcesContent": ["import initDebug from 'debug';\nimport { TrackType } from '../type.js';\nimport AsfGuid from './AsfGuid.js';\nimport * as AsfObject from './AsfObject.js';\nimport { BasicParser } from '../common/BasicParser.js';\nimport { AsfContentParseError } from './AsfObject.js';\nconst debug = initDebug('music-metadata:parser:ASF');\nconst headerType = 'asf';\n/**\n * Windows Media Metadata Usage Guidelines\n * - Ref: https://msdn.microsoft.com/en-us/library/ms867702.aspx\n *\n * Ref:\n * - https://tools.ietf.org/html/draft-fleischman-asf-01\n * - https://hwiegman.home.xs4all.nl/fileformats/asf/ASF_Specification.pdf\n * - http://drang.s4.xrea.com/program/tips/id3tag/wmp/index.html\n * - https://msdn.microsoft.com/en-us/library/windows/desktop/ee663575(v=vs.85).aspx\n */\nexport class AsfParser extends BasicParser {\n async parse() {\n const header = await this.tokenizer.readToken(AsfObject.TopLevelHeaderObjectToken);\n if (!header.objectId.equals(AsfGuid.HeaderObject)) {\n throw new AsfContentParseError(`expected asf header; but was not found; got: ${header.objectId.str}`);\n }\n await this.parseObjectHeader(header.numberOfHeaderObjects);\n }\n async parseObjectHeader(numberOfObjectHeaders) {\n let tags;\n do {\n // Parse common header of the ASF Object (3.1)\n const header = await this.tokenizer.readToken(AsfObject.HeaderObjectToken);\n // Parse data part of the ASF Object\n debug('header GUID=%s', header.objectId.str);\n switch (header.objectId.str) {\n case AsfObject.FilePropertiesObject.guid.str: { // 3.2\n const fpo = await this.tokenizer.readToken(new AsfObject.FilePropertiesObject(header));\n this.metadata.setFormat('duration', Number(fpo.playDuration / BigInt(1000)) / 10000 - Number(fpo.preroll) / 1000);\n this.metadata.setFormat('bitrate', fpo.maximumBitrate);\n break;\n }\n case AsfObject.StreamPropertiesObject.guid.str: { // 3.3\n const spo = await this.tokenizer.readToken(new AsfObject.StreamPropertiesObject(header));\n this.metadata.setFormat('container', `ASF/${spo.streamType}`);\n break;\n }\n case AsfObject.HeaderExtensionObject.guid.str: { // 3.4\n const extHeader = await this.tokenizer.readToken(new AsfObject.HeaderExtensionObject());\n await this.parseExtensionObject(extHeader.extensionDataSize);\n break;\n }\n case AsfObject.ContentDescriptionObjectState.guid.str: // 3.10\n tags = await this.tokenizer.readToken(new AsfObject.ContentDescriptionObjectState(header));\n await this.addTags(tags);\n break;\n case AsfObject.ExtendedContentDescriptionObjectState.guid.str: // 3.11\n tags = await this.tokenizer.readToken(new AsfObject.ExtendedContentDescriptionObjectState(header));\n await this.addTags(tags);\n break;\n case AsfGuid.CodecListObject.str: {\n const codecs = await AsfObject.readCodecEntries(this.tokenizer);\n codecs.forEach(codec => {\n this.metadata.addStreamInfo({\n type: codec.type.videoCodec ? TrackType.video : TrackType.audio,\n codecName: codec.codecName\n });\n });\n const audioCodecs = codecs.filter(codec => codec.type.audioCodec).map(codec => codec.codecName).join('/');\n this.metadata.setFormat('codec', audioCodecs);\n break;\n }\n case AsfGuid.StreamBitratePropertiesObject.str:\n // ToDo?\n await this.tokenizer.ignore(header.objectSize - AsfObject.HeaderObjectToken.len);\n break;\n case AsfGuid.PaddingObject.str:\n // ToDo: register bytes pad\n debug('Padding: %s bytes', header.objectSize - AsfObject.HeaderObjectToken.len);\n await this.tokenizer.ignore(header.objectSize - AsfObject.HeaderObjectToken.len);\n break;\n default:\n this.metadata.addWarning(`Ignore ASF-Object-GUID: ${header.objectId.str}`);\n debug('Ignore ASF-Object-GUID: %s', header.objectId.str);\n await this.tokenizer.readToken(new AsfObject.IgnoreObjectState(header));\n }\n } while (--numberOfObjectHeaders);\n // done\n }\n async addTags(tags) {\n await Promise.all(tags.map(({ id, value }) => this.metadata.addTag(headerType, id, value)));\n }\n async parseExtensionObject(extensionSize) {\n do {\n // Parse common header of the ASF Object (3.1)\n const header = await this.tokenizer.readToken(AsfObject.HeaderObjectToken);\n const remaining = header.objectSize - AsfObject.HeaderObjectToken.len;\n if (remaining < 0) {\n throw new AsfContentParseError(`Invalid ASF header object size: ${header.objectSize}`);\n }\n // Parse data part of the ASF Object\n switch (header.objectId.str) {\n case AsfObject.ExtendedStreamPropertiesObjectState.guid.str: // 4.1\n // ToDo: extended stream header properties are ignored\n await this.tokenizer.readToken(new AsfObject.ExtendedStreamPropertiesObjectState(header));\n break;\n case AsfObject.MetadataObjectState.guid.str: { // 4.7\n const moTags = await this.tokenizer.readToken(new AsfObject.MetadataObjectState(header));\n await this.addTags(moTags);\n break;\n }\n case AsfObject.MetadataLibraryObjectState.guid.str: { // 4.8\n const mlTags = await this.tokenizer.readToken(new AsfObject.MetadataLibraryObjectState(header));\n await this.addTags(mlTags);\n break;\n }\n case AsfGuid.PaddingObject.str:\n // ToDo: register bytes pad\n await this.tokenizer.ignore(remaining);\n break;\n case AsfGuid.CompatibilityObject.str:\n await this.tokenizer.ignore(remaining);\n break;\n case AsfGuid.ASF_Index_Placeholder_Object.str:\n await this.tokenizer.ignore(remaining);\n break;\n default:\n this.metadata.addWarning(`Ignore ASF-Object-GUID: ${header.objectId.str}`);\n // console.log(\"Ignore ASF-Object-GUID: %s\", header.objectId.str);\n await this.tokenizer.readToken(new AsfObject.IgnoreObjectState(header));\n break;\n }\n extensionSize -= header.objectSize;\n } while (extensionSize > 0);\n }\n}\n", "import { parseWindowsGuid, Guid } from 'win-guid';\n/**\n * Ref:\n * - https://tools.ietf.org/html/draft-fleischman-asf-01, Appendix A: ASF GUIDs\n * - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html\n * - http://drang.s4.xrea.com/program/tips/id3tag/wmp/index.html\n * - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html\n *\n * ASF File Structure:\n * - https://msdn.microsoft.com/en-us/library/windows/desktop/ee663575(v=vs.85).aspx\n *\n * ASF GUIDs:\n * - http://drang.s4.xrea.com/program/tips/id3tag/wmp/10_asf_guids.html\n * - https://github.com/dji-sdk/FFmpeg/blob/master/libavformat/asf.c\n */\nclass AsfGuid {\n static fromBin(bin, offset = 0) {\n return new AsfGuid(AsfGuid.decode(bin, offset));\n }\n /**\n * Decode GUID in format like \"B503BF5F-2EA9-CF11-8EE3-00C00C205365\"\n * @param objectId Binary GUID\n * @param offset Read offset in bytes, default 0\n * @returns GUID as dashed hexadecimal representation\n */\n static decode(objectId, offset = 0) {\n return new Guid(objectId.subarray(offset, offset + 16)).toString();\n }\n /**\n * Decode stream type\n * @param mediaType Media type GUID\n * @returns Media type\n */\n static decodeMediaType(mediaType) {\n switch (mediaType.str) {\n case AsfGuid.AudioMedia.str: return 'audio';\n case AsfGuid.VideoMedia.str: return 'video';\n case AsfGuid.CommandMedia.str: return 'command';\n case AsfGuid.Degradable_JPEG_Media.str: return 'degradable-jpeg';\n case AsfGuid.FileTransferMedia.str: return 'file-transfer';\n case AsfGuid.BinaryMedia.str: return 'binary';\n }\n }\n /**\n * Encode GUID\n * @param guid GUID like: \"B503BF5F-2EA9-CF11-8EE3-00C00C205365\"\n * @returns Encoded Binary GUID\n */\n static encode(guid) {\n return parseWindowsGuid(guid);\n }\n constructor(str) {\n this.str = str;\n }\n equals(guid) {\n return this.str === guid.str;\n }\n toBin() {\n return AsfGuid.encode(this.str);\n }\n}\n// 10.1 Top-level ASF object GUIDs\nAsfGuid.HeaderObject = new AsfGuid(\"75B22630-668E-11CF-A6D9-00AA0062CE6C\");\nAsfGuid.DataObject = new AsfGuid(\"75B22636-668E-11CF-A6D9-00AA0062CE6C\");\nAsfGuid.SimpleIndexObject = new AsfGuid(\"33000890-E5B1-11CF-89F4-00A0C90349CB\");\nAsfGuid.IndexObject = new AsfGuid(\"D6E229D3-35DA-11D1-9034-00A0C90349BE\");\nAsfGuid.MediaObjectIndexObject = new AsfGuid(\"FEB103F8-12AD-4C64-840F-2A1D2F7AD48C\");\nAsfGuid.TimecodeIndexObject = new AsfGuid(\"3CB73FD0-0C4A-4803-953D-EDF7B6228F0C\");\n// 10.2 Header Object GUIDs\nAsfGuid.FilePropertiesObject = new AsfGuid(\"8CABDCA1-A947-11CF-8EE4-00C00C205365\");\nAsfGuid.StreamPropertiesObject = new AsfGuid(\"B7DC0791-A9B7-11CF-8EE6-00C00C205365\");\nAsfGuid.HeaderExtensionObject = new AsfGuid(\"5FBF03B5-A92E-11CF-8EE3-00C00C205365\");\nAsfGuid.CodecListObject = new AsfGuid(\"86D15240-311D-11D0-A3A4-00A0C90348F6\");\nAsfGuid.ScriptCommandObject = new AsfGuid(\"1EFB1A30-0B62-11D0-A39B-00A0C90348F6\");\nAsfGuid.MarkerObject = new AsfGuid(\"F487CD01-A951-11CF-8EE6-00C00C205365\");\nAsfGuid.BitrateMutualExclusionObject = new AsfGuid(\"D6E229DC-35DA-11D1-9034-00A0C90349BE\");\nAsfGuid.ErrorCorrectionObject = new AsfGuid(\"75B22635-668E-11CF-A6D9-00AA0062CE6C\");\nAsfGuid.ContentDescriptionObject = new AsfGuid(\"75B22633-668E-11CF-A6D9-00AA0062CE6C\");\nAsfGuid.ExtendedContentDescriptionObject = new AsfGuid(\"D2D0A440-E307-11D2-97F0-00A0C95EA850\");\nAsfGuid.ContentBrandingObject = new AsfGuid(\"2211B3FA-BD23-11D2-B4B7-00A0C955FC6E\");\nAsfGuid.StreamBitratePropertiesObject = new AsfGuid(\"7BF875CE-468D-11D1-8D82-006097C9A2B2\");\nAsfGuid.ContentEncryptionObject = new AsfGuid(\"2211B3FB-BD23-11D2-B4B7-00A0C955FC6E\");\nAsfGuid.ExtendedContentEncryptionObject = new AsfGuid(\"298AE614-2622-4C17-B935-DAE07EE9289C\");\nAsfGuid.DigitalSignatureObject = new AsfGuid(\"2211B3FC-BD23-11D2-B4B7-00A0C955FC6E\");\nAsfGuid.PaddingObject = new AsfGuid(\"1806D474-CADF-4509-A4BA-9AABCB96AAE8\");\n// 10.3 Header Extension Object GUIDs\nAsfGuid.ExtendedStreamPropertiesObject = new AsfGuid(\"14E6A5CB-C672-4332-8399-A96952065B5A\");\nAsfGuid.AdvancedMutualExclusionObject = new AsfGuid(\"A08649CF-4775-4670-8A16-6E35357566CD\");\nAsfGuid.GroupMutualExclusionObject = new AsfGuid(\"D1465A40-5A79-4338-B71B-E36B8FD6C249\");\nAsfGuid.StreamPrioritizationObject = new AsfGuid(\"D4FED15B-88D3-454F-81F0-ED5C45999E24\");\nAsfGuid.BandwidthSharingObject = new AsfGuid(\"A69609E6-517B-11D2-B6AF-00C04FD908E9\");\nAsfGuid.LanguageListObject = new AsfGuid(\"7C4346A9-EFE0-4BFC-B229-393EDE415C85\");\nAsfGuid.MetadataObject = new AsfGuid(\"C5F8CBEA-5BAF-4877-8467-AA8C44FA4CCA\");\nAsfGuid.MetadataLibraryObject = new AsfGuid(\"44231C94-9498-49D1-A141-1D134E457054\");\nAsfGuid.IndexParametersObject = new AsfGuid(\"D6E229DF-35DA-11D1-9034-00A0C90349BE\");\nAsfGuid.MediaObjectIndexParametersObject = new AsfGuid(\"6B203BAD-3F11-48E4-ACA8-D7613DE2CFA7\");\nAsfGuid.TimecodeIndexParametersObject = new AsfGuid(\"F55E496D-9797-4B5D-8C8B-604DFE9BFB24\");\nAsfGuid.CompatibilityObject = new AsfGuid(\"26F18B5D-4584-47EC-9F5F-0E651F0452C9\");\nAsfGuid.AdvancedContentEncryptionObject = new AsfGuid(\"43058533-6981-49E6-9B74-AD12CB86D58C\");\n// 10.4 Stream Properties Object Stream Type GUIDs\nAsfGuid.AudioMedia = new AsfGuid(\"F8699E40-5B4D-11CF-A8FD-00805F5C442B\");\nAsfGuid.VideoMedia = new AsfGuid(\"BC19EFC0-5B4D-11CF-A8FD-00805F5C442B\");\nAsfGuid.CommandMedia = new AsfGuid(\"59DACFC0-59E6-11D0-A3AC-00A0C90348F6\");\nAsfGuid.JFIF_Media = new AsfGuid(\"B61BE100-5B4E-11CF-A8FD-00805F5C442B\");\nAsfGuid.Degradable_JPEG_Media = new AsfGuid(\"35907DE0-E415-11CF-A917-00805F5C442B\");\nAsfGuid.FileTransferMedia = new AsfGuid(\"91BD222C-F21C-497A-8B6D-5AA86BFC0185\");\nAsfGuid.BinaryMedia = new AsfGuid(\"3AFB65E2-47EF-40F2-AC2C-70A90D71D343\");\nAsfGuid.ASF_Index_Placeholder_Object = new AsfGuid(\"D9AADE20-7C17-4F9C-BC28-8555DD98E2A2\");\nexport default AsfGuid;\n", "/**\n * Parse canonical GUID string (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)\n * into Windows / CFBF byte order.\n */\nexport function parseWindowsGuid(guid) {\n let s = guid.trim();\n // Keep validation readable and strict, avoid lowercasing allocations\n if (s.length !== 36 ||\n s[8] !== \"-\" ||\n s[13] !== \"-\" ||\n s[18] !== \"-\" ||\n s[23] !== \"-\") {\n throw new Error(`Invalid GUID format: ${guid}`);\n }\n let v;\n const out = new Uint8Array(16);\n // Data1: 8 hex, uint32 little-endian\n v = parseInt(s.slice(0, 8), 16);\n out[0] = v & 0xff;\n out[1] = (v >>> 8) & 0xff;\n out[2] = (v >>> 16) & 0xff;\n out[3] = (v >>> 24) & 0xff;\n // Data2: 4 hex, uint16 little-endian\n v = parseInt(s.slice(9, 13), 16);\n out[4] = v & 0xff;\n out[5] = (v >>> 8) & 0xff;\n // Data3: 4 hex, uint16 little-endian\n v = parseInt(s.slice(14, 18), 16);\n out[6] = v & 0xff;\n out[7] = (v >>> 8) & 0xff;\n // Data4: 4 hex, as-is (string order)\n v = parseInt(s.slice(19, 23), 16);\n out[8] = (v >>> 8) & 0xff;\n out[9] = v & 0xff;\n // Data5: 12 hex, 6 bytes, as-is (string order)\n // Parse as two chunks to avoid any precision worries, keep it simple.\n v = parseInt(s.slice(24, 32), 16); // 8 hex -> 4 bytes\n out[10] = (v >>> 24) & 0xff;\n out[11] = (v >>> 16) & 0xff;\n out[12] = (v >>> 8) & 0xff;\n out[13] = v & 0xff;\n v = parseInt(s.slice(32, 36), 16); // 4 hex -> 2 bytes\n out[14] = (v >>> 8) & 0xff;\n out[15] = v & 0xff;\n // Ensure all parsed parts were valid hex (parseInt can yield NaN)\n for (let i = 0; i < 16; i++) {\n if (!Number.isFinite(out[i])) {\n throw new Error(`Invalid GUID format: ${guid}`);\n }\n }\n // Also catch NaN early (more useful error locality)\n // If any parseInt produced NaN, assignments above would have become 0,\n // so instead validate hex characters directly with a lightweight check.\n // (Keeps code small while staying strict.)\n if (!/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/.test(s)) {\n throw new Error(`Invalid GUID format: ${guid}`);\n }\n return out;\n}\nexport class Guid {\n constructor(bytes) {\n if (bytes.length !== 16)\n throw new Error(\"GUID must be exactly 16 bytes\");\n this.bytes = bytes;\n }\n static fromString(guid) {\n return new Guid(parseWindowsGuid(guid));\n }\n /**\n * Convert Windows / CFBF byte order into canonical GUID string:\n * xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx\n */\n toString() {\n const b = this.bytes;\n const hx = (n) => n.toString(16).padStart(2, \"0\");\n // Data1 (uint32 LE) -> big-endian text\n const g1 = hx(b[3]) + hx(b[2]) + hx(b[1]) + hx(b[0]);\n // Data2 (uint16 LE)\n const g2 = hx(b[5]) + hx(b[4]);\n // Data3 (uint16 LE)\n const g3 = hx(b[7]) + hx(b[6]);\n // Data4 (as-is)\n const g4 = hx(b[8]) + hx(b[9]);\n // Data5 (as-is)\n const g5 = hx(b[10]) +\n hx(b[11]) +\n hx(b[12]) +\n hx(b[13]) +\n hx(b[14]) +\n hx(b[15]);\n return `${g1}-${g2}-${g3}-${g4}-${g5}`.toUpperCase();\n }\n /**\n * Compare against a Uint8Array containing GUID bytes\n * in Windows / CFBF layout.\n */\n equals(buf, offset = 0) {\n if (offset < 0 || buf.length - offset < 16)\n return false;\n const a = this.bytes;\n for (let i = 0; i < 16; i++) {\n if (buf[offset + i] !== a[i])\n return false;\n }\n return true;\n }\n}\n", "// ASF Objects\nimport * as Token from 'token-types';\nimport * as util from '../common/Util.js';\nimport AsfGuid from './AsfGuid.js';\nimport { getParserForAttr, parseUnicodeAttr } from './AsfUtil.js';\nimport { AttachedPictureType } from '../id3v2/ID3v2Token.js';\nimport { makeUnexpectedFileContentError } from '../ParseError.js';\nexport class AsfContentParseError extends makeUnexpectedFileContentError('ASF') {\n}\n/**\n * Data Type: Specifies the type of information being stored. The following values are recognized.\n */\nexport const DataType = {\n /**\n * Unicode string. The data consists of a sequence of Unicode characters.\n */\n UnicodeString: 0,\n /**\n * BYTE array. The type of data is implementation-specific.\n */\n ByteArray: 1,\n /**\n * BOOL. The data is 2 bytes long and should be interpreted as a 16-bit unsigned integer. Only 0x0000 or 0x0001 are permitted values.\n */\n Bool: 2,\n /**\n * DWORD. The data is 4 bytes long and should be interpreted as a 32-bit unsigned integer.\n */\n DWord: 3,\n /**\n * QWORD. The data is 8 bytes long and should be interpreted as a 64-bit unsigned integer.\n */\n QWord: 4,\n /**\n * WORD. The data is 2 bytes long and should be interpreted as a 16-bit unsigned integer.\n */\n Word: 5\n};\n/**\n * Token for: 3. ASF top-level Header Object\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3\n */\nexport const TopLevelHeaderObjectToken = {\n len: 30,\n get: (buf, off) => {\n return {\n objectId: AsfGuid.fromBin(buf, off),\n objectSize: Number(Token.UINT64_LE.get(buf, off + 16)),\n numberOfHeaderObjects: Token.UINT32_LE.get(buf, off + 24)\n // Reserved: 2 bytes\n };\n }\n};\n/**\n * Token for: 3.1 Header Object (mandatory, one only)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_1\n */\nexport const HeaderObjectToken = {\n len: 24,\n get: (buf, off) => {\n return {\n objectId: AsfGuid.fromBin(buf, off),\n objectSize: Number(Token.UINT64_LE.get(buf, off + 16))\n };\n }\n};\nexport class State {\n constructor(header) {\n this.len = Number(header.objectSize) - HeaderObjectToken.len;\n }\n postProcessTag(tags, name, valueType, data) {\n if (name === 'WM/Picture') {\n tags.push({ id: name, value: WmPictureToken.fromBuffer(data) });\n }\n else {\n const parseAttr = getParserForAttr(valueType);\n if (!parseAttr) {\n throw new AsfContentParseError(`unexpected value headerType: ${valueType}`);\n }\n tags.push({ id: name, value: parseAttr(data) });\n }\n }\n}\n// ToDo: use ignore type\nexport class IgnoreObjectState extends State {\n get(_buf, _off) {\n return null;\n }\n}\n/**\n * Token for: 3.2: File Properties Object (mandatory, one only)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_2\n */\nexport class FilePropertiesObject extends State {\n get(buf, off) {\n return {\n fileId: AsfGuid.fromBin(buf, off),\n fileSize: Token.UINT64_LE.get(buf, off + 16),\n creationDate: Token.UINT64_LE.get(buf, off + 24),\n dataPacketsCount: Token.UINT64_LE.get(buf, off + 32),\n playDuration: Token.UINT64_LE.get(buf, off + 40),\n sendDuration: Token.UINT64_LE.get(buf, off + 48),\n preroll: Token.UINT64_LE.get(buf, off + 56),\n flags: {\n broadcast: util.getBit(buf, off + 64, 24),\n seekable: util.getBit(buf, off + 64, 25)\n },\n // flagsNumeric: Token.UINT32_LE.get(buf, off + 64),\n minimumDataPacketSize: Token.UINT32_LE.get(buf, off + 68),\n maximumDataPacketSize: Token.UINT32_LE.get(buf, off + 72),\n maximumBitrate: Token.UINT32_LE.get(buf, off + 76)\n };\n }\n}\nFilePropertiesObject.guid = AsfGuid.FilePropertiesObject;\n/**\n * Token for: 3.3 Stream Properties Object (mandatory, one per stream)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_3\n */\nexport class StreamPropertiesObject extends State {\n get(buf, off) {\n return {\n streamType: AsfGuid.decodeMediaType(AsfGuid.fromBin(buf, off)),\n errorCorrectionType: AsfGuid.fromBin(buf, off + 8)\n // ToDo\n };\n }\n}\nStreamPropertiesObject.guid = AsfGuid.StreamPropertiesObject;\n/**\n * 3.4: Header Extension Object (mandatory, one only)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_4\n */\nexport class HeaderExtensionObject {\n constructor() {\n this.len = 22;\n }\n get(buf, off) {\n const view = new DataView(buf.buffer, off);\n return {\n reserved1: AsfGuid.fromBin(buf, off),\n reserved2: view.getUint16(16, true),\n extensionDataSize: view.getUint16(18, true)\n };\n }\n}\nHeaderExtensionObject.guid = AsfGuid.HeaderExtensionObject;\n/**\n * 3.5: The Codec List Object provides user-friendly information about the codecs and formats used to encode the content found in the ASF file.\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_5\n */\nconst CodecListObjectHeader = {\n len: 20,\n get: (buf, off) => {\n const view = new DataView(buf.buffer, off);\n return {\n entryCount: view.getUint16(16, true)\n };\n }\n};\nasync function readString(tokenizer) {\n const length = await tokenizer.readNumber(Token.UINT16_LE);\n return (await tokenizer.readToken(new Token.StringType(length * 2, 'utf-16le'))).replace('\\0', '');\n}\n/**\n * 3.5: Read the Codec-List-Object, which provides user-friendly information about the codecs and formats used to encode the content found in the ASF file.\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_5\n */\nexport async function readCodecEntries(tokenizer) {\n const codecHeader = await tokenizer.readToken(CodecListObjectHeader);\n const entries = [];\n for (let i = 0; i < codecHeader.entryCount; ++i) {\n entries.push(await readCodecEntry(tokenizer));\n }\n return entries;\n}\nasync function readInformation(tokenizer) {\n const length = await tokenizer.readNumber(Token.UINT16_LE);\n const buf = new Uint8Array(length);\n await tokenizer.readBuffer(buf);\n return buf;\n}\n/**\n * Read Codec-Entries\n * @param tokenizer\n */\nasync function readCodecEntry(tokenizer) {\n const type = await tokenizer.readNumber(Token.UINT16_LE);\n return {\n type: {\n videoCodec: (type & 0x0001) === 0x0001,\n audioCodec: (type & 0x0002) === 0x0002\n },\n codecName: await readString(tokenizer),\n description: await readString(tokenizer),\n information: await readInformation(tokenizer)\n };\n}\n/**\n * 3.10 Content Description Object (optional, one only)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_10\n */\nexport class ContentDescriptionObjectState extends State {\n get(buf, off) {\n const tags = [];\n const view = new DataView(buf.buffer, off);\n let pos = 10;\n for (let i = 0; i < ContentDescriptionObjectState.contentDescTags.length; ++i) {\n const length = view.getUint16(i * 2, true);\n if (length > 0) {\n const tagName = ContentDescriptionObjectState.contentDescTags[i];\n const end = pos + length;\n tags.push({ id: tagName, value: parseUnicodeAttr(buf.subarray(off + pos, off + end)) });\n pos = end;\n }\n }\n return tags;\n }\n}\nContentDescriptionObjectState.guid = AsfGuid.ContentDescriptionObject;\nContentDescriptionObjectState.contentDescTags = ['Title', 'Author', 'Copyright', 'Description', 'Rating'];\n/**\n * 3.11 Extended Content Description Object (optional, one only)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/03_asf_top_level_header_object.html#3_11\n */\nexport class ExtendedContentDescriptionObjectState extends State {\n get(buf, off) {\n const tags = [];\n const view = new DataView(buf.buffer, off);\n const attrCount = view.getUint16(0, true);\n let pos = 2;\n for (let i = 0; i < attrCount; i += 1) {\n const nameLen = view.getUint16(pos, true);\n pos += 2;\n const name = parseUnicodeAttr(buf.subarray(off + pos, off + pos + nameLen));\n pos += nameLen;\n const valueType = view.getUint16(pos, true);\n pos += 2;\n const valueLen = view.getUint16(pos, true);\n pos += 2;\n const value = buf.subarray(off + pos, off + pos + valueLen);\n pos += valueLen;\n this.postProcessTag(tags, name, valueType, value);\n }\n return tags;\n }\n}\nExtendedContentDescriptionObjectState.guid = AsfGuid.ExtendedContentDescriptionObject;\n/**\n * 4.1 Extended Stream Properties Object (optional, 1 per media stream)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/04_objects_in_the_asf_header_extension_object.html#4_1\n */\nexport class ExtendedStreamPropertiesObjectState extends State {\n get(buf, off) {\n const view = new DataView(buf.buffer, off);\n return {\n startTime: Token.UINT64_LE.get(buf, off),\n endTime: Token.UINT64_LE.get(buf, off + 8),\n dataBitrate: view.getInt32(12, true),\n bufferSize: view.getInt32(16, true),\n initialBufferFullness: view.getInt32(20, true),\n alternateDataBitrate: view.getInt32(24, true),\n alternateBufferSize: view.getInt32(28, true),\n alternateInitialBufferFullness: view.getInt32(32, true),\n maximumObjectSize: view.getInt32(36, true),\n flags: {\n reliableFlag: util.getBit(buf, off + 40, 0),\n seekableFlag: util.getBit(buf, off + 40, 1),\n resendLiveCleanpointsFlag: util.getBit(buf, off + 40, 2)\n },\n // flagsNumeric: Token.UINT32_LE.get(buf, off + 64),\n streamNumber: view.getInt16(42, true),\n streamLanguageId: view.getInt16(44, true),\n averageTimePerFrame: view.getInt32(52, true),\n streamNameCount: view.getInt32(54, true),\n payloadExtensionSystems: view.getInt32(56, true),\n streamNames: [], // ToDo\n streamPropertiesObject: null\n };\n }\n}\nExtendedStreamPropertiesObjectState.guid = AsfGuid.ExtendedStreamPropertiesObject;\n/**\n * 4.7 Metadata Object (optional, 0 or 1)\n * Ref: http://drang.s4.xrea.com/program/tips/id3tag/wmp/04_objects_in_the_asf_header_extension_object.html#4_7\n */\nexport class MetadataObjectState extends State {\n get(uint8Array, off) {\n const tags = [];\n const view = new DataView(uint8Array.buffer, off);\n const descriptionRecordsCount = view.getUint16(0, true);\n let pos = 2;\n for (let i = 0; i < descriptionRecordsCount; i += 1) {\n pos += 4;\n const nameLen = view.getUint16(pos, true);\n pos += 2;\n const dataType = view.getUint16(pos, true);\n pos += 2;\n const dataLen = view.getUint32(pos, true);\n pos += 4;\n const name = parseUnicodeAttr(uint8Array.subarray(off + pos, off + pos + nameLen));\n pos += nameLen;\n const data = uint8Array.subarray(off + pos, off + pos + dataLen);\n pos += dataLen;\n this.postProcessTag(tags, name, dataType, data);\n }\n return tags;\n }\n}\nMetadataObjectState.guid = AsfGuid.MetadataObject;\n// 4.8\tMetadata Library Object (optional, 0 or 1)\nexport class MetadataLibraryObjectState extends MetadataObjectState {\n}\nMetadataLibraryObjectState.guid = AsfGuid.MetadataLibraryObject;\n/**\n * Ref: https://msdn.microsoft.com/en-us/library/windows/desktop/dd757977(v=vs.85).aspx\n */\nexport class WmPictureToken {\n static fromBuffer(buffer) {\n const pic = new WmPictureToken(buffer.length);\n return pic.get(buffer, 0);\n }\n constructor(len) {\n this.len = len;\n }\n get(buffer, offset) {\n const view = new DataView(buffer.buffer, offset);\n const typeId = view.getUint8(0);\n const size = view.getInt32(1, true);\n let index = 5;\n while (view.getUint16(index) !== 0) {\n index += 2;\n }\n const format = new Token.StringType(index - 5, 'utf-16le').get(buffer, 5);\n while (view.getUint16(index) !== 0) {\n index += 2;\n }\n const description = new Token.StringType(index - 5, 'utf-16le').get(buffer, 5);\n return {\n type: AttachedPictureType[typeId],\n format,\n description,\n size,\n data: buffer.slice(index + 4)\n };\n }\n}\n", "import * as Token from 'token-types';\nimport * as util from '../common/Util.js';\nexport function getParserForAttr(i) {\n return attributeParsers[i];\n}\nexport function parseUnicodeAttr(uint8Array) {\n return util.stripNulls(util.decodeString(uint8Array, 'utf-16le'));\n}\nconst attributeParsers = [\n parseUnicodeAttr,\n parseByteArrayAttr,\n parseBoolAttr,\n parseDWordAttr,\n parseQWordAttr,\n parseWordAttr,\n parseByteArrayAttr\n];\nfunction parseByteArrayAttr(buf) {\n return new Uint8Array(buf);\n}\nfunction parseBoolAttr(buf, offset = 0) {\n return parseWordAttr(buf, offset) === 1;\n}\nfunction parseDWordAttr(buf, offset = 0) {\n return Token.UINT32_LE.get(buf, offset);\n}\nfunction parseQWordAttr(buf, offset = 0) {\n return Token.UINT64_LE.get(buf, offset);\n}\nfunction parseWordAttr(buf, offset = 0) {\n return Token.UINT16_LE.get(buf, offset);\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["initDebug"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,192 @@
|
|
|
1
|
+
import {
|
|
2
|
+
ID3v2Parser
|
|
3
|
+
} from "./chunk-GK3XVKXT.js";
|
|
4
|
+
import "./chunk-3TOEIHG5.js";
|
|
5
|
+
import {
|
|
6
|
+
FourCcToken
|
|
7
|
+
} from "./chunk-427SAQME.js";
|
|
8
|
+
import {
|
|
9
|
+
fromBuffer
|
|
10
|
+
} from "./chunk-E75BJJZ2.js";
|
|
11
|
+
import "./chunk-LSVKDUNM.js";
|
|
12
|
+
import "./chunk-EHELTAAD.js";
|
|
13
|
+
import {
|
|
14
|
+
BasicParser,
|
|
15
|
+
INT64_BE,
|
|
16
|
+
StringType,
|
|
17
|
+
UINT16_BE,
|
|
18
|
+
UINT32_BE,
|
|
19
|
+
UINT32_LE,
|
|
20
|
+
UINT8,
|
|
21
|
+
Uint8ArrayType,
|
|
22
|
+
makeUnexpectedFileContentError,
|
|
23
|
+
require_src
|
|
24
|
+
} from "./chunk-IU7EXXK7.js";
|
|
25
|
+
import {
|
|
26
|
+
__toESM,
|
|
27
|
+
init_shims
|
|
28
|
+
} from "./chunk-7FLQSTPG.js";
|
|
29
|
+
|
|
30
|
+
// ../../node_modules/music-metadata/lib/dsdiff/DsdiffParser.js
|
|
31
|
+
init_shims();
|
|
32
|
+
var import_debug = __toESM(require_src(), 1);
|
|
33
|
+
|
|
34
|
+
// ../../node_modules/music-metadata/lib/dsdiff/DsdiffToken.js
|
|
35
|
+
init_shims();
|
|
36
|
+
var ChunkHeader64 = {
|
|
37
|
+
len: 12,
|
|
38
|
+
get: (buf, off) => {
|
|
39
|
+
return {
|
|
40
|
+
// Group-ID
|
|
41
|
+
chunkID: FourCcToken.get(buf, off),
|
|
42
|
+
// Size
|
|
43
|
+
chunkSize: INT64_BE.get(buf, off + 4)
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
// ../../node_modules/music-metadata/lib/dsdiff/DsdiffParser.js
|
|
49
|
+
var debug = (0, import_debug.default)("music-metadata:parser:aiff");
|
|
50
|
+
var DsdiffContentParseError = class extends makeUnexpectedFileContentError("DSDIFF") {
|
|
51
|
+
};
|
|
52
|
+
var DsdiffParser = class extends BasicParser {
|
|
53
|
+
async parse() {
|
|
54
|
+
const header = await this.tokenizer.readToken(ChunkHeader64);
|
|
55
|
+
if (header.chunkID !== "FRM8")
|
|
56
|
+
throw new DsdiffContentParseError("Unexpected chunk-ID");
|
|
57
|
+
this.metadata.setAudioOnly();
|
|
58
|
+
const type = (await this.tokenizer.readToken(FourCcToken)).trim();
|
|
59
|
+
switch (type) {
|
|
60
|
+
case "DSD":
|
|
61
|
+
this.metadata.setFormat("container", `DSDIFF/${type}`);
|
|
62
|
+
this.metadata.setFormat("lossless", true);
|
|
63
|
+
return this.readFmt8Chunks(header.chunkSize - BigInt(FourCcToken.len));
|
|
64
|
+
default:
|
|
65
|
+
throw new DsdiffContentParseError(`Unsupported DSDIFF type: ${type}`);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
async readFmt8Chunks(remainingSize) {
|
|
69
|
+
while (remainingSize >= ChunkHeader64.len) {
|
|
70
|
+
const chunkHeader = await this.tokenizer.readToken(ChunkHeader64);
|
|
71
|
+
debug(`Chunk id=${chunkHeader.chunkID}`);
|
|
72
|
+
await this.readData(chunkHeader);
|
|
73
|
+
remainingSize -= BigInt(ChunkHeader64.len) + chunkHeader.chunkSize;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
async readData(header) {
|
|
77
|
+
debug(`Reading data of chunk[ID=${header.chunkID}, size=${header.chunkSize}]`);
|
|
78
|
+
const p0 = this.tokenizer.position;
|
|
79
|
+
switch (header.chunkID.trim()) {
|
|
80
|
+
case "FVER": {
|
|
81
|
+
const version = await this.tokenizer.readToken(UINT32_LE);
|
|
82
|
+
debug(`DSDIFF version=${version}`);
|
|
83
|
+
break;
|
|
84
|
+
}
|
|
85
|
+
case "PROP": {
|
|
86
|
+
const propType = await this.tokenizer.readToken(FourCcToken);
|
|
87
|
+
if (propType !== "SND ")
|
|
88
|
+
throw new DsdiffContentParseError("Unexpected PROP-chunk ID");
|
|
89
|
+
await this.handleSoundPropertyChunks(header.chunkSize - BigInt(FourCcToken.len));
|
|
90
|
+
break;
|
|
91
|
+
}
|
|
92
|
+
case "ID3": {
|
|
93
|
+
const id3_data = await this.tokenizer.readToken(new Uint8ArrayType(Number(header.chunkSize)));
|
|
94
|
+
const rst = fromBuffer(id3_data);
|
|
95
|
+
await new ID3v2Parser().parse(this.metadata, rst, this.options);
|
|
96
|
+
break;
|
|
97
|
+
}
|
|
98
|
+
case "DSD":
|
|
99
|
+
if (this.metadata.format.numberOfChannels) {
|
|
100
|
+
this.metadata.setFormat("numberOfSamples", Number(header.chunkSize * BigInt(8) / BigInt(this.metadata.format.numberOfChannels)));
|
|
101
|
+
}
|
|
102
|
+
if (this.metadata.format.numberOfSamples && this.metadata.format.sampleRate) {
|
|
103
|
+
this.metadata.setFormat("duration", this.metadata.format.numberOfSamples / this.metadata.format.sampleRate);
|
|
104
|
+
}
|
|
105
|
+
break;
|
|
106
|
+
default:
|
|
107
|
+
debug(`Ignore chunk[ID=${header.chunkID}, size=${header.chunkSize}]`);
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
110
|
+
const remaining = header.chunkSize - BigInt(this.tokenizer.position - p0);
|
|
111
|
+
if (remaining > 0) {
|
|
112
|
+
debug(`After Parsing chunk, remaining ${remaining} bytes`);
|
|
113
|
+
await this.tokenizer.ignore(Number(remaining));
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
async handleSoundPropertyChunks(remainingSize) {
|
|
117
|
+
debug(`Parsing sound-property-chunks, remainingSize=${remainingSize}`);
|
|
118
|
+
while (remainingSize > 0) {
|
|
119
|
+
const sndPropHeader = await this.tokenizer.readToken(ChunkHeader64);
|
|
120
|
+
debug(`Sound-property-chunk[ID=${sndPropHeader.chunkID}, size=${sndPropHeader.chunkSize}]`);
|
|
121
|
+
const p0 = this.tokenizer.position;
|
|
122
|
+
switch (sndPropHeader.chunkID.trim()) {
|
|
123
|
+
case "FS": {
|
|
124
|
+
const sampleRate = await this.tokenizer.readToken(UINT32_BE);
|
|
125
|
+
this.metadata.setFormat("sampleRate", sampleRate);
|
|
126
|
+
break;
|
|
127
|
+
}
|
|
128
|
+
case "CHNL": {
|
|
129
|
+
const numChannels = await this.tokenizer.readToken(UINT16_BE);
|
|
130
|
+
this.metadata.setFormat("numberOfChannels", numChannels);
|
|
131
|
+
await this.handleChannelChunks(sndPropHeader.chunkSize - BigInt(UINT16_BE.len));
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
case "CMPR": {
|
|
135
|
+
const compressionIdCode = (await this.tokenizer.readToken(FourCcToken)).trim();
|
|
136
|
+
const count = await this.tokenizer.readToken(UINT8);
|
|
137
|
+
const compressionName = await this.tokenizer.readToken(new StringType(count, "ascii"));
|
|
138
|
+
if (compressionIdCode === "DSD") {
|
|
139
|
+
this.metadata.setFormat("lossless", true);
|
|
140
|
+
this.metadata.setFormat("bitsPerSample", 1);
|
|
141
|
+
}
|
|
142
|
+
this.metadata.setFormat("codec", `${compressionIdCode} (${compressionName})`);
|
|
143
|
+
break;
|
|
144
|
+
}
|
|
145
|
+
case "ABSS": {
|
|
146
|
+
const hours = await this.tokenizer.readToken(UINT16_BE);
|
|
147
|
+
const minutes = await this.tokenizer.readToken(UINT8);
|
|
148
|
+
const seconds = await this.tokenizer.readToken(UINT8);
|
|
149
|
+
const samples = await this.tokenizer.readToken(UINT32_BE);
|
|
150
|
+
debug(`ABSS ${hours}:${minutes}:${seconds}.${samples}`);
|
|
151
|
+
break;
|
|
152
|
+
}
|
|
153
|
+
case "LSCO": {
|
|
154
|
+
const lsConfig = await this.tokenizer.readToken(UINT16_BE);
|
|
155
|
+
debug(`LSCO lsConfig=${lsConfig}`);
|
|
156
|
+
break;
|
|
157
|
+
}
|
|
158
|
+
default:
|
|
159
|
+
debug(`Unknown sound-property-chunk[ID=${sndPropHeader.chunkID}, size=${sndPropHeader.chunkSize}]`);
|
|
160
|
+
await this.tokenizer.ignore(Number(sndPropHeader.chunkSize));
|
|
161
|
+
}
|
|
162
|
+
const remaining = sndPropHeader.chunkSize - BigInt(this.tokenizer.position - p0);
|
|
163
|
+
if (remaining > 0) {
|
|
164
|
+
debug(`After Parsing sound-property-chunk ${sndPropHeader.chunkSize}, remaining ${remaining} bytes`);
|
|
165
|
+
await this.tokenizer.ignore(Number(remaining));
|
|
166
|
+
}
|
|
167
|
+
remainingSize -= BigInt(ChunkHeader64.len) + sndPropHeader.chunkSize;
|
|
168
|
+
debug(`Parsing sound-property-chunks, remainingSize=${remainingSize}`);
|
|
169
|
+
}
|
|
170
|
+
if (this.metadata.format.lossless && this.metadata.format.sampleRate && this.metadata.format.numberOfChannels && this.metadata.format.bitsPerSample) {
|
|
171
|
+
const bitrate = this.metadata.format.sampleRate * this.metadata.format.numberOfChannels * this.metadata.format.bitsPerSample;
|
|
172
|
+
this.metadata.setFormat("bitrate", bitrate);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
async handleChannelChunks(remainingSize) {
|
|
176
|
+
debug(`Parsing channel-chunks, remainingSize=${remainingSize}`);
|
|
177
|
+
const channels = [];
|
|
178
|
+
while (remainingSize >= FourCcToken.len) {
|
|
179
|
+
const channelId = await this.tokenizer.readToken(FourCcToken);
|
|
180
|
+
debug(`Channel[ID=${channelId}]`);
|
|
181
|
+
channels.push(channelId);
|
|
182
|
+
remainingSize -= BigInt(FourCcToken.len);
|
|
183
|
+
}
|
|
184
|
+
debug(`Channels: ${channels.join(", ")}`);
|
|
185
|
+
return channels;
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
export {
|
|
189
|
+
DsdiffContentParseError,
|
|
190
|
+
DsdiffParser
|
|
191
|
+
};
|
|
192
|
+
//# sourceMappingURL=DsdiffParser-EUWJ4YAR.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../node_modules/music-metadata/lib/dsdiff/DsdiffParser.js", "../../../node_modules/music-metadata/lib/dsdiff/DsdiffToken.js"],
|
|
4
|
+
"sourcesContent": ["import * as Token from 'token-types';\nimport initDebug from 'debug';\nimport * as strtok3 from 'strtok3';\nimport { FourCcToken } from '../common/FourCC.js';\nimport { BasicParser } from '../common/BasicParser.js';\nimport { ID3v2Parser } from '../id3v2/ID3v2Parser.js';\nimport { ChunkHeader64 } from './DsdiffToken.js';\nimport { makeUnexpectedFileContentError } from '../ParseError.js';\nconst debug = initDebug('music-metadata:parser:aiff');\nexport class DsdiffContentParseError extends makeUnexpectedFileContentError('DSDIFF') {\n}\n/**\n * DSDIFF - Direct Stream Digital Interchange File Format (Phillips)\n *\n * Ref:\n * - http://www.sonicstudio.com/pdf/dsd/DSDIFF_1.5_Spec.pdf\n */\nexport class DsdiffParser extends BasicParser {\n async parse() {\n const header = await this.tokenizer.readToken(ChunkHeader64);\n if (header.chunkID !== 'FRM8')\n throw new DsdiffContentParseError('Unexpected chunk-ID');\n this.metadata.setAudioOnly();\n const type = (await this.tokenizer.readToken(FourCcToken)).trim();\n switch (type) {\n case 'DSD':\n this.metadata.setFormat('container', `DSDIFF/${type}`);\n this.metadata.setFormat('lossless', true);\n return this.readFmt8Chunks(header.chunkSize - BigInt(FourCcToken.len));\n default:\n throw new DsdiffContentParseError(`Unsupported DSDIFF type: ${type}`);\n }\n }\n async readFmt8Chunks(remainingSize) {\n while (remainingSize >= ChunkHeader64.len) {\n const chunkHeader = await this.tokenizer.readToken(ChunkHeader64);\n // If the data is an odd number of bytes in length, a pad byte must be added at the end\n debug(`Chunk id=${chunkHeader.chunkID}`);\n await this.readData(chunkHeader);\n remainingSize -= (BigInt(ChunkHeader64.len) + chunkHeader.chunkSize);\n }\n }\n async readData(header) {\n debug(`Reading data of chunk[ID=${header.chunkID}, size=${header.chunkSize}]`);\n const p0 = this.tokenizer.position;\n switch (header.chunkID.trim()) {\n case 'FVER': { // 3.1 FORMAT VERSION CHUNK\n const version = await this.tokenizer.readToken(Token.UINT32_LE);\n debug(`DSDIFF version=${version}`);\n break;\n }\n case 'PROP': { // 3.2 PROPERTY CHUNK\n const propType = await this.tokenizer.readToken(FourCcToken);\n if (propType !== 'SND ')\n throw new DsdiffContentParseError('Unexpected PROP-chunk ID');\n await this.handleSoundPropertyChunks(header.chunkSize - BigInt(FourCcToken.len));\n break;\n }\n case 'ID3': { // Unofficial ID3 tag support\n const id3_data = await this.tokenizer.readToken(new Token.Uint8ArrayType(Number(header.chunkSize)));\n const rst = strtok3.fromBuffer(id3_data);\n await new ID3v2Parser().parse(this.metadata, rst, this.options);\n break;\n }\n case 'DSD':\n if (this.metadata.format.numberOfChannels) {\n this.metadata.setFormat('numberOfSamples', Number(header.chunkSize * BigInt(8) / BigInt(this.metadata.format.numberOfChannels)));\n }\n if (this.metadata.format.numberOfSamples && this.metadata.format.sampleRate) {\n this.metadata.setFormat('duration', this.metadata.format.numberOfSamples / this.metadata.format.sampleRate);\n }\n break;\n default:\n debug(`Ignore chunk[ID=${header.chunkID}, size=${header.chunkSize}]`);\n break;\n }\n const remaining = header.chunkSize - BigInt(this.tokenizer.position - p0);\n if (remaining > 0) {\n debug(`After Parsing chunk, remaining ${remaining} bytes`);\n await this.tokenizer.ignore(Number(remaining));\n }\n }\n async handleSoundPropertyChunks(remainingSize) {\n debug(`Parsing sound-property-chunks, remainingSize=${remainingSize}`);\n while (remainingSize > 0) {\n const sndPropHeader = await this.tokenizer.readToken(ChunkHeader64);\n debug(`Sound-property-chunk[ID=${sndPropHeader.chunkID}, size=${sndPropHeader.chunkSize}]`);\n const p0 = this.tokenizer.position;\n switch (sndPropHeader.chunkID.trim()) {\n case 'FS': { // 3.2.1 Sample Rate Chunk\n const sampleRate = await this.tokenizer.readToken(Token.UINT32_BE);\n this.metadata.setFormat('sampleRate', sampleRate);\n break;\n }\n case 'CHNL': { // 3.2.2 Channels Chunk\n const numChannels = await this.tokenizer.readToken(Token.UINT16_BE);\n this.metadata.setFormat('numberOfChannels', numChannels);\n await this.handleChannelChunks(sndPropHeader.chunkSize - BigInt(Token.UINT16_BE.len));\n break;\n }\n case 'CMPR': { // 3.2.3 Compression Type Chunk\n const compressionIdCode = (await this.tokenizer.readToken(FourCcToken)).trim();\n const count = await this.tokenizer.readToken(Token.UINT8);\n const compressionName = await this.tokenizer.readToken(new Token.StringType(count, 'ascii'));\n if (compressionIdCode === 'DSD') {\n this.metadata.setFormat('lossless', true);\n this.metadata.setFormat('bitsPerSample', 1);\n }\n this.metadata.setFormat('codec', `${compressionIdCode} (${compressionName})`);\n break;\n }\n case 'ABSS': { // 3.2.4 Absolute Start Time Chunk\n const hours = await this.tokenizer.readToken(Token.UINT16_BE);\n const minutes = await this.tokenizer.readToken(Token.UINT8);\n const seconds = await this.tokenizer.readToken(Token.UINT8);\n const samples = await this.tokenizer.readToken(Token.UINT32_BE);\n debug(`ABSS ${hours}:${minutes}:${seconds}.${samples}`);\n break;\n }\n case 'LSCO': { // 3.2.5 Loudspeaker Configuration Chunk\n const lsConfig = await this.tokenizer.readToken(Token.UINT16_BE);\n debug(`LSCO lsConfig=${lsConfig}`);\n break;\n }\n default:\n debug(`Unknown sound-property-chunk[ID=${sndPropHeader.chunkID}, size=${sndPropHeader.chunkSize}]`);\n await this.tokenizer.ignore(Number(sndPropHeader.chunkSize));\n }\n const remaining = sndPropHeader.chunkSize - BigInt(this.tokenizer.position - p0);\n if (remaining > 0) {\n debug(`After Parsing sound-property-chunk ${sndPropHeader.chunkSize}, remaining ${remaining} bytes`);\n await this.tokenizer.ignore(Number(remaining));\n }\n remainingSize -= BigInt(ChunkHeader64.len) + sndPropHeader.chunkSize;\n debug(`Parsing sound-property-chunks, remainingSize=${remainingSize}`);\n }\n if (this.metadata.format.lossless && this.metadata.format.sampleRate && this.metadata.format.numberOfChannels && this.metadata.format.bitsPerSample) {\n const bitrate = this.metadata.format.sampleRate * this.metadata.format.numberOfChannels * this.metadata.format.bitsPerSample;\n this.metadata.setFormat('bitrate', bitrate);\n }\n }\n async handleChannelChunks(remainingSize) {\n debug(`Parsing channel-chunks, remainingSize=${remainingSize}`);\n const channels = [];\n while (remainingSize >= FourCcToken.len) {\n const channelId = await this.tokenizer.readToken(FourCcToken);\n debug(`Channel[ID=${channelId}]`);\n channels.push(channelId);\n remainingSize -= BigInt(FourCcToken.len);\n }\n debug(`Channels: ${channels.join(', ')}`);\n return channels;\n }\n}\n", "import * as Token from 'token-types';\nimport { FourCcToken } from '../common/FourCC.js';\n/**\n * DSDIFF chunk header\n * The data-size encoding is deviating from EA-IFF 85\n * Ref: http://www.sonicstudio.com/pdf/dsd/DSDIFF_1.5_Spec.pdf\n */\nexport const ChunkHeader64 = {\n len: 12,\n get: (buf, off) => {\n return {\n // Group-ID\n chunkID: FourCcToken.get(buf, off),\n // Size\n chunkSize: Token.INT64_BE.get(buf, off + 4)\n };\n }\n};\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA,mBAAsB;;;ACDtB;AAOO,IAAM,gBAAgB;AAAA,EACzB,KAAK;AAAA,EACL,KAAK,CAAC,KAAK,QAAQ;AACf,WAAO;AAAA;AAAA,MAEH,SAAS,YAAY,IAAI,KAAK,GAAG;AAAA;AAAA,MAEjC,WAAiB,SAAS,IAAI,KAAK,MAAM,CAAC;AAAA,IAC9C;AAAA,EACJ;AACJ;;;ADTA,IAAM,YAAQ,aAAAA,SAAU,4BAA4B;AAC7C,IAAM,0BAAN,cAAsC,+BAA+B,QAAQ,EAAE;AACtF;AAOO,IAAM,eAAN,cAA2B,YAAY;AAAA,EAC1C,MAAM,QAAQ;AACV,UAAM,SAAS,MAAM,KAAK,UAAU,UAAU,aAAa;AAC3D,QAAI,OAAO,YAAY;AACnB,YAAM,IAAI,wBAAwB,qBAAqB;AAC3D,SAAK,SAAS,aAAa;AAC3B,UAAM,QAAQ,MAAM,KAAK,UAAU,UAAU,WAAW,GAAG,KAAK;AAChE,YAAQ,MAAM;AAAA,MACV,KAAK;AACD,aAAK,SAAS,UAAU,aAAa,UAAU,IAAI,EAAE;AACrD,aAAK,SAAS,UAAU,YAAY,IAAI;AACxC,eAAO,KAAK,eAAe,OAAO,YAAY,OAAO,YAAY,GAAG,CAAC;AAAA,MACzE;AACI,cAAM,IAAI,wBAAwB,4BAA4B,IAAI,EAAE;AAAA,IAC5E;AAAA,EACJ;AAAA,EACA,MAAM,eAAe,eAAe;AAChC,WAAO,iBAAiB,cAAc,KAAK;AACvC,YAAM,cAAc,MAAM,KAAK,UAAU,UAAU,aAAa;AAEhE,YAAM,YAAY,YAAY,OAAO,EAAE;AACvC,YAAM,KAAK,SAAS,WAAW;AAC/B,uBAAkB,OAAO,cAAc,GAAG,IAAI,YAAY;AAAA,IAC9D;AAAA,EACJ;AAAA,EACA,MAAM,SAAS,QAAQ;AACnB,UAAM,4BAA4B,OAAO,OAAO,UAAU,OAAO,SAAS,GAAG;AAC7E,UAAM,KAAK,KAAK,UAAU;AAC1B,YAAQ,OAAO,QAAQ,KAAK,GAAG;AAAA,MAC3B,KAAK,QAAQ;AACT,cAAM,UAAU,MAAM,KAAK,UAAU,UAAgB,SAAS;AAC9D,cAAM,kBAAkB,OAAO,EAAE;AACjC;AAAA,MACJ;AAAA,MACA,KAAK,QAAQ;AACT,cAAM,WAAW,MAAM,KAAK,UAAU,UAAU,WAAW;AAC3D,YAAI,aAAa;AACb,gBAAM,IAAI,wBAAwB,0BAA0B;AAChE,cAAM,KAAK,0BAA0B,OAAO,YAAY,OAAO,YAAY,GAAG,CAAC;AAC/E;AAAA,MACJ;AAAA,MACA,KAAK,OAAO;AACR,cAAM,WAAW,MAAM,KAAK,UAAU,UAAU,IAAU,eAAe,OAAO,OAAO,SAAS,CAAC,CAAC;AAClG,cAAM,MAAc,WAAW,QAAQ;AACvC,cAAM,IAAI,YAAY,EAAE,MAAM,KAAK,UAAU,KAAK,KAAK,OAAO;AAC9D;AAAA,MACJ;AAAA,MACA,KAAK;AACD,YAAI,KAAK,SAAS,OAAO,kBAAkB;AACvC,eAAK,SAAS,UAAU,mBAAmB,OAAO,OAAO,YAAY,OAAO,CAAC,IAAI,OAAO,KAAK,SAAS,OAAO,gBAAgB,CAAC,CAAC;AAAA,QACnI;AACA,YAAI,KAAK,SAAS,OAAO,mBAAmB,KAAK,SAAS,OAAO,YAAY;AACzE,eAAK,SAAS,UAAU,YAAY,KAAK,SAAS,OAAO,kBAAkB,KAAK,SAAS,OAAO,UAAU;AAAA,QAC9G;AACA;AAAA,MACJ;AACI,cAAM,mBAAmB,OAAO,OAAO,UAAU,OAAO,SAAS,GAAG;AACpE;AAAA,IACR;AACA,UAAM,YAAY,OAAO,YAAY,OAAO,KAAK,UAAU,WAAW,EAAE;AACxE,QAAI,YAAY,GAAG;AACf,YAAM,kCAAkC,SAAS,QAAQ;AACzD,YAAM,KAAK,UAAU,OAAO,OAAO,SAAS,CAAC;AAAA,IACjD;AAAA,EACJ;AAAA,EACA,MAAM,0BAA0B,eAAe;AAC3C,UAAM,gDAAgD,aAAa,EAAE;AACrE,WAAO,gBAAgB,GAAG;AACtB,YAAM,gBAAgB,MAAM,KAAK,UAAU,UAAU,aAAa;AAClE,YAAM,2BAA2B,cAAc,OAAO,UAAU,cAAc,SAAS,GAAG;AAC1F,YAAM,KAAK,KAAK,UAAU;AAC1B,cAAQ,cAAc,QAAQ,KAAK,GAAG;AAAA,QAClC,KAAK,MAAM;AACP,gBAAM,aAAa,MAAM,KAAK,UAAU,UAAgB,SAAS;AACjE,eAAK,SAAS,UAAU,cAAc,UAAU;AAChD;AAAA,QACJ;AAAA,QACA,KAAK,QAAQ;AACT,gBAAM,cAAc,MAAM,KAAK,UAAU,UAAgB,SAAS;AAClE,eAAK,SAAS,UAAU,oBAAoB,WAAW;AACvD,gBAAM,KAAK,oBAAoB,cAAc,YAAY,OAAa,UAAU,GAAG,CAAC;AACpF;AAAA,QACJ;AAAA,QACA,KAAK,QAAQ;AACT,gBAAM,qBAAqB,MAAM,KAAK,UAAU,UAAU,WAAW,GAAG,KAAK;AAC7E,gBAAM,QAAQ,MAAM,KAAK,UAAU,UAAgB,KAAK;AACxD,gBAAM,kBAAkB,MAAM,KAAK,UAAU,UAAU,IAAU,WAAW,OAAO,OAAO,CAAC;AAC3F,cAAI,sBAAsB,OAAO;AAC7B,iBAAK,SAAS,UAAU,YAAY,IAAI;AACxC,iBAAK,SAAS,UAAU,iBAAiB,CAAC;AAAA,UAC9C;AACA,eAAK,SAAS,UAAU,SAAS,GAAG,iBAAiB,KAAK,eAAe,GAAG;AAC5E;AAAA,QACJ;AAAA,QACA,KAAK,QAAQ;AACT,gBAAM,QAAQ,MAAM,KAAK,UAAU,UAAgB,SAAS;AAC5D,gBAAM,UAAU,MAAM,KAAK,UAAU,UAAgB,KAAK;AAC1D,gBAAM,UAAU,MAAM,KAAK,UAAU,UAAgB,KAAK;AAC1D,gBAAM,UAAU,MAAM,KAAK,UAAU,UAAgB,SAAS;AAC9D,gBAAM,QAAQ,KAAK,IAAI,OAAO,IAAI,OAAO,IAAI,OAAO,EAAE;AACtD;AAAA,QACJ;AAAA,QACA,KAAK,QAAQ;AACT,gBAAM,WAAW,MAAM,KAAK,UAAU,UAAgB,SAAS;AAC/D,gBAAM,iBAAiB,QAAQ,EAAE;AACjC;AAAA,QACJ;AAAA,QACA;AACI,gBAAM,mCAAmC,cAAc,OAAO,UAAU,cAAc,SAAS,GAAG;AAClG,gBAAM,KAAK,UAAU,OAAO,OAAO,cAAc,SAAS,CAAC;AAAA,MACnE;AACA,YAAM,YAAY,cAAc,YAAY,OAAO,KAAK,UAAU,WAAW,EAAE;AAC/E,UAAI,YAAY,GAAG;AACf,cAAM,sCAAsC,cAAc,SAAS,eAAe,SAAS,QAAQ;AACnG,cAAM,KAAK,UAAU,OAAO,OAAO,SAAS,CAAC;AAAA,MACjD;AACA,uBAAiB,OAAO,cAAc,GAAG,IAAI,cAAc;AAC3D,YAAM,gDAAgD,aAAa,EAAE;AAAA,IACzE;AACA,QAAI,KAAK,SAAS,OAAO,YAAY,KAAK,SAAS,OAAO,cAAc,KAAK,SAAS,OAAO,oBAAoB,KAAK,SAAS,OAAO,eAAe;AACjJ,YAAM,UAAU,KAAK,SAAS,OAAO,aAAa,KAAK,SAAS,OAAO,mBAAmB,KAAK,SAAS,OAAO;AAC/G,WAAK,SAAS,UAAU,WAAW,OAAO;AAAA,IAC9C;AAAA,EACJ;AAAA,EACA,MAAM,oBAAoB,eAAe;AACrC,UAAM,yCAAyC,aAAa,EAAE;AAC9D,UAAM,WAAW,CAAC;AAClB,WAAO,iBAAiB,YAAY,KAAK;AACrC,YAAM,YAAY,MAAM,KAAK,UAAU,UAAU,WAAW;AAC5D,YAAM,cAAc,SAAS,GAAG;AAChC,eAAS,KAAK,SAAS;AACvB,uBAAiB,OAAO,YAAY,GAAG;AAAA,IAC3C;AACA,UAAM,aAAa,SAAS,KAAK,IAAI,CAAC,EAAE;AACxC,WAAO;AAAA,EACX;AACJ;",
|
|
6
|
+
"names": ["initDebug"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
import {
|
|
2
|
+
AbstractID3Parser
|
|
3
|
+
} from "./chunk-OJ3ZUKBI.js";
|
|
4
|
+
import {
|
|
5
|
+
ID3v2Parser
|
|
6
|
+
} from "./chunk-GK3XVKXT.js";
|
|
7
|
+
import "./chunk-3TOEIHG5.js";
|
|
8
|
+
import {
|
|
9
|
+
FourCcToken
|
|
10
|
+
} from "./chunk-427SAQME.js";
|
|
11
|
+
import "./chunk-E75BJJZ2.js";
|
|
12
|
+
import "./chunk-LSVKDUNM.js";
|
|
13
|
+
import "./chunk-EHELTAAD.js";
|
|
14
|
+
import {
|
|
15
|
+
INT32_LE,
|
|
16
|
+
INT64_LE,
|
|
17
|
+
UINT64_LE,
|
|
18
|
+
makeUnexpectedFileContentError,
|
|
19
|
+
require_src
|
|
20
|
+
} from "./chunk-IU7EXXK7.js";
|
|
21
|
+
import {
|
|
22
|
+
__toESM,
|
|
23
|
+
init_shims
|
|
24
|
+
} from "./chunk-7FLQSTPG.js";
|
|
25
|
+
|
|
26
|
+
// ../../node_modules/music-metadata/lib/dsf/DsfParser.js
|
|
27
|
+
init_shims();
|
|
28
|
+
var import_debug = __toESM(require_src(), 1);
|
|
29
|
+
|
|
30
|
+
// ../../node_modules/music-metadata/lib/dsf/DsfChunk.js
|
|
31
|
+
init_shims();
|
|
32
|
+
var ChunkHeader = {
|
|
33
|
+
len: 12,
|
|
34
|
+
get: (buf, off) => {
|
|
35
|
+
return { id: FourCcToken.get(buf, off), size: UINT64_LE.get(buf, off + 4) };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var DsdChunk = {
|
|
39
|
+
len: 16,
|
|
40
|
+
get: (buf, off) => {
|
|
41
|
+
return {
|
|
42
|
+
fileSize: INT64_LE.get(buf, off),
|
|
43
|
+
metadataPointer: INT64_LE.get(buf, off + 8)
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
var FormatChunk = {
|
|
48
|
+
len: 40,
|
|
49
|
+
get: (buf, off) => {
|
|
50
|
+
return {
|
|
51
|
+
formatVersion: INT32_LE.get(buf, off),
|
|
52
|
+
formatID: INT32_LE.get(buf, off + 4),
|
|
53
|
+
channelType: INT32_LE.get(buf, off + 8),
|
|
54
|
+
channelNum: INT32_LE.get(buf, off + 12),
|
|
55
|
+
samplingFrequency: INT32_LE.get(buf, off + 16),
|
|
56
|
+
bitsPerSample: INT32_LE.get(buf, off + 20),
|
|
57
|
+
sampleCount: INT64_LE.get(buf, off + 24),
|
|
58
|
+
blockSizePerChannel: INT32_LE.get(buf, off + 32)
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
// ../../node_modules/music-metadata/lib/dsf/DsfParser.js
|
|
64
|
+
var debug = (0, import_debug.default)("music-metadata:parser:DSF");
|
|
65
|
+
var DsdContentParseError = class extends makeUnexpectedFileContentError("DSD") {
|
|
66
|
+
};
|
|
67
|
+
var DsfParser = class extends AbstractID3Parser {
|
|
68
|
+
async postId3v2Parse() {
|
|
69
|
+
const p0 = this.tokenizer.position;
|
|
70
|
+
const chunkHeader = await this.tokenizer.readToken(ChunkHeader);
|
|
71
|
+
if (chunkHeader.id !== "DSD ")
|
|
72
|
+
throw new DsdContentParseError("Invalid chunk signature");
|
|
73
|
+
this.metadata.setFormat("container", "DSF");
|
|
74
|
+
this.metadata.setFormat("lossless", true);
|
|
75
|
+
this.metadata.setAudioOnly();
|
|
76
|
+
const dsdChunk = await this.tokenizer.readToken(DsdChunk);
|
|
77
|
+
if (dsdChunk.metadataPointer === BigInt(0)) {
|
|
78
|
+
debug("No ID3v2 tag present");
|
|
79
|
+
} else {
|
|
80
|
+
debug(`expect ID3v2 at offset=${dsdChunk.metadataPointer}`);
|
|
81
|
+
await this.parseChunks(dsdChunk.fileSize - chunkHeader.size);
|
|
82
|
+
await this.tokenizer.ignore(Number(dsdChunk.metadataPointer) - this.tokenizer.position - p0);
|
|
83
|
+
return new ID3v2Parser().parse(this.metadata, this.tokenizer, this.options);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
async parseChunks(bytesRemaining) {
|
|
87
|
+
while (bytesRemaining >= ChunkHeader.len) {
|
|
88
|
+
const chunkHeader = await this.tokenizer.readToken(ChunkHeader);
|
|
89
|
+
debug(`Parsing chunk name=${chunkHeader.id} size=${chunkHeader.size}`);
|
|
90
|
+
switch (chunkHeader.id) {
|
|
91
|
+
case "fmt ": {
|
|
92
|
+
const formatChunk = await this.tokenizer.readToken(FormatChunk);
|
|
93
|
+
this.metadata.setFormat("numberOfChannels", formatChunk.channelNum);
|
|
94
|
+
this.metadata.setFormat("sampleRate", formatChunk.samplingFrequency);
|
|
95
|
+
this.metadata.setFormat("bitsPerSample", formatChunk.bitsPerSample);
|
|
96
|
+
this.metadata.setFormat("numberOfSamples", formatChunk.sampleCount);
|
|
97
|
+
this.metadata.setFormat("duration", Number(formatChunk.sampleCount) / formatChunk.samplingFrequency);
|
|
98
|
+
const bitrate = formatChunk.bitsPerSample * formatChunk.samplingFrequency * formatChunk.channelNum;
|
|
99
|
+
this.metadata.setFormat("bitrate", bitrate);
|
|
100
|
+
return;
|
|
101
|
+
}
|
|
102
|
+
default:
|
|
103
|
+
this.tokenizer.ignore(Number(chunkHeader.size) - ChunkHeader.len);
|
|
104
|
+
break;
|
|
105
|
+
}
|
|
106
|
+
bytesRemaining -= chunkHeader.size;
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
};
|
|
110
|
+
export {
|
|
111
|
+
DsdContentParseError,
|
|
112
|
+
DsfParser
|
|
113
|
+
};
|
|
114
|
+
//# sourceMappingURL=DsfParser-R6TPBJIY.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../node_modules/music-metadata/lib/dsf/DsfParser.js", "../../../node_modules/music-metadata/lib/dsf/DsfChunk.js"],
|
|
4
|
+
"sourcesContent": ["import initDebug from 'debug';\nimport { AbstractID3Parser } from '../id3v2/AbstractID3Parser.js';\nimport { ChunkHeader, DsdChunk, FormatChunk } from './DsfChunk.js';\nimport { ID3v2Parser } from \"../id3v2/ID3v2Parser.js\";\nimport { makeUnexpectedFileContentError } from '../ParseError.js';\nconst debug = initDebug('music-metadata:parser:DSF');\nexport class DsdContentParseError extends makeUnexpectedFileContentError('DSD') {\n}\n/**\n * DSF (dsd stream file) File Parser\n * Ref: https://dsd-guide.com/sites/default/files/white-papers/DSFFileFormatSpec_E.pdf\n */\nexport class DsfParser extends AbstractID3Parser {\n async postId3v2Parse() {\n const p0 = this.tokenizer.position; // mark start position, normally 0\n const chunkHeader = await this.tokenizer.readToken(ChunkHeader);\n if (chunkHeader.id !== 'DSD ')\n throw new DsdContentParseError('Invalid chunk signature');\n this.metadata.setFormat('container', 'DSF');\n this.metadata.setFormat('lossless', true);\n this.metadata.setAudioOnly();\n const dsdChunk = await this.tokenizer.readToken(DsdChunk);\n if (dsdChunk.metadataPointer === BigInt(0)) {\n debug(\"No ID3v2 tag present\");\n }\n else {\n debug(`expect ID3v2 at offset=${dsdChunk.metadataPointer}`);\n await this.parseChunks(dsdChunk.fileSize - chunkHeader.size);\n // Jump to ID3 header\n await this.tokenizer.ignore(Number(dsdChunk.metadataPointer) - this.tokenizer.position - p0);\n return new ID3v2Parser().parse(this.metadata, this.tokenizer, this.options);\n }\n }\n async parseChunks(bytesRemaining) {\n while (bytesRemaining >= ChunkHeader.len) {\n const chunkHeader = await this.tokenizer.readToken(ChunkHeader);\n debug(`Parsing chunk name=${chunkHeader.id} size=${chunkHeader.size}`);\n switch (chunkHeader.id) {\n case 'fmt ': {\n const formatChunk = await this.tokenizer.readToken(FormatChunk);\n this.metadata.setFormat('numberOfChannels', formatChunk.channelNum);\n this.metadata.setFormat('sampleRate', formatChunk.samplingFrequency);\n this.metadata.setFormat('bitsPerSample', formatChunk.bitsPerSample);\n this.metadata.setFormat('numberOfSamples', formatChunk.sampleCount);\n this.metadata.setFormat('duration', Number(formatChunk.sampleCount) / formatChunk.samplingFrequency);\n const bitrate = formatChunk.bitsPerSample * formatChunk.samplingFrequency * formatChunk.channelNum;\n this.metadata.setFormat('bitrate', bitrate);\n return; // We got what we want, stop further processing of chunks\n }\n default:\n this.tokenizer.ignore(Number(chunkHeader.size) - ChunkHeader.len);\n break;\n }\n bytesRemaining -= chunkHeader.size;\n }\n }\n}\n", "import * as Token from 'token-types';\nimport { FourCcToken } from '../common/FourCC.js';\n/**\n * Common chunk DSD header: the 'chunk name (Four-CC)' & chunk size\n */\nexport const ChunkHeader = {\n len: 12,\n get: (buf, off) => {\n return { id: FourCcToken.get(buf, off), size: Token.UINT64_LE.get(buf, off + 4) };\n }\n};\n/**\n * Common chunk DSD header: the 'chunk name (Four-CC)' & chunk size\n */\nexport const DsdChunk = {\n len: 16,\n get: (buf, off) => {\n return {\n fileSize: Token.INT64_LE.get(buf, off),\n metadataPointer: Token.INT64_LE.get(buf, off + 8)\n };\n }\n};\nexport const ChannelType = {\n mono: 1,\n stereo: 2,\n channels: 3,\n quad: 4,\n '4 channels': 5,\n '5 channels': 6,\n '5.1 channels': 7\n};\n/**\n * Common chunk DSD header: the 'chunk name (Four-CC)' & chunk size\n */\nexport const FormatChunk = {\n len: 40,\n get: (buf, off) => {\n return {\n formatVersion: Token.INT32_LE.get(buf, off),\n formatID: Token.INT32_LE.get(buf, off + 4),\n channelType: Token.INT32_LE.get(buf, off + 8),\n channelNum: Token.INT32_LE.get(buf, off + 12),\n samplingFrequency: Token.INT32_LE.get(buf, off + 16),\n bitsPerSample: Token.INT32_LE.get(buf, off + 20),\n sampleCount: Token.INT64_LE.get(buf, off + 24),\n blockSizePerChannel: Token.INT32_LE.get(buf, off + 32)\n };\n }\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["initDebug"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FlacParser
|
|
3
|
+
} from "./chunk-OOYPYBTA.js";
|
|
4
|
+
import "./chunk-OJ3ZUKBI.js";
|
|
5
|
+
import "./chunk-GK3XVKXT.js";
|
|
6
|
+
import "./chunk-3TOEIHG5.js";
|
|
7
|
+
import "./chunk-427SAQME.js";
|
|
8
|
+
import "./chunk-E75BJJZ2.js";
|
|
9
|
+
import "./chunk-LSVKDUNM.js";
|
|
10
|
+
import "./chunk-EHELTAAD.js";
|
|
11
|
+
import "./chunk-IU7EXXK7.js";
|
|
12
|
+
import "./chunk-7FLQSTPG.js";
|
|
13
|
+
export {
|
|
14
|
+
FlacParser
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=FlacParser-VDASGZ3E.js.map
|