@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,502 @@
|
|
|
1
|
+
import {
|
|
2
|
+
runMatrixStartupMaintenance
|
|
3
|
+
} from "../../../chunk-UV63XYFU.js";
|
|
4
|
+
import {
|
|
5
|
+
createMatrixMonitorStatusController
|
|
6
|
+
} from "../../../chunk-IUXAKDAY.js";
|
|
7
|
+
import {
|
|
8
|
+
createMatrixMonitorSyncLifecycle
|
|
9
|
+
} from "../../../chunk-ZFC44XJJ.js";
|
|
10
|
+
import "../../../chunk-MISZB5QJ.js";
|
|
11
|
+
import {
|
|
12
|
+
createMatrixMonitorTaskRunner
|
|
13
|
+
} from "../../../chunk-VA7ENH2S.js";
|
|
14
|
+
import {
|
|
15
|
+
createMatrixRoomInfoResolver
|
|
16
|
+
} from "../../../chunk-BHXZMHSX.js";
|
|
17
|
+
import {
|
|
18
|
+
createMatrixInboundEventDeduper
|
|
19
|
+
} from "../../../chunk-N5SNGZJV.js";
|
|
20
|
+
import {
|
|
21
|
+
shouldPromoteRecentInviteRoom
|
|
22
|
+
} from "../../../chunk-UIBV6IGR.js";
|
|
23
|
+
import {
|
|
24
|
+
registerMatrixAutoJoin
|
|
25
|
+
} from "../../../chunk-LZNW24OB.js";
|
|
26
|
+
import {
|
|
27
|
+
resolveMatrixMonitorConfig
|
|
28
|
+
} from "../../../chunk-YNYEQGVN.js";
|
|
29
|
+
import {
|
|
30
|
+
createDirectRoomTracker
|
|
31
|
+
} from "../../../chunk-IJCMYMZB.js";
|
|
32
|
+
import {
|
|
33
|
+
registerMatrixMonitorEvents
|
|
34
|
+
} from "../../../chunk-MDLLXMC3.js";
|
|
35
|
+
import "../../../chunk-QDT24CIA.js";
|
|
36
|
+
import {
|
|
37
|
+
createMatrixRoomMessageHandler
|
|
38
|
+
} from "../../../chunk-LXVPETLK.js";
|
|
39
|
+
import "../../../chunk-Q5QT7JBM.js";
|
|
40
|
+
import "../../../chunk-FVLJSB2W.js";
|
|
41
|
+
import "../../../chunk-T72EMFTX.js";
|
|
42
|
+
import "../../../chunk-6HX3DEXK.js";
|
|
43
|
+
import "../../../chunk-VHG4FNIJ.js";
|
|
44
|
+
import "../../../chunk-CSJO73LD.js";
|
|
45
|
+
import "../../../chunk-KHFWQ334.js";
|
|
46
|
+
import "../../../chunk-2KGHUHKU.js";
|
|
47
|
+
import "../../../chunk-W6SOBS7M.js";
|
|
48
|
+
import "../../../chunk-UAB5P5QO.js";
|
|
49
|
+
import "../../../chunk-OJTHE4B7.js";
|
|
50
|
+
import "../../../chunk-56HN4SH6.js";
|
|
51
|
+
import "../../../chunk-GLLRCKKE.js";
|
|
52
|
+
import "../../../chunk-XZSAN55E.js";
|
|
53
|
+
import "../../../chunk-O5IVKDX7.js";
|
|
54
|
+
import "../../../chunk-2NEQI4K6.js";
|
|
55
|
+
import "../../../chunk-PSL2AHIA.js";
|
|
56
|
+
import "../../../chunk-GI2ZANRY.js";
|
|
57
|
+
import "../../../chunk-BU2CTWBG.js";
|
|
58
|
+
import "../../../chunk-7MVZYR2T.js";
|
|
59
|
+
import "../../../chunk-3TRKKAVT.js";
|
|
60
|
+
import "../../../chunk-CPNIXMGX.js";
|
|
61
|
+
import {
|
|
62
|
+
setActiveMatrixClient
|
|
63
|
+
} from "../../../chunk-GD6L3SLC.js";
|
|
64
|
+
import "../../../chunk-CETZGSCP.js";
|
|
65
|
+
import "../../../chunk-VKOO6MIZ.js";
|
|
66
|
+
import "../../../chunk-RNGAGYCL.js";
|
|
67
|
+
import "../../../chunk-YXJ52FD5.js";
|
|
68
|
+
import "../../../chunk-EVFWZGFL.js";
|
|
69
|
+
import "../../../chunk-UWPHOAOC.js";
|
|
70
|
+
import "../../../chunk-E5HPDHCW.js";
|
|
71
|
+
import "../../../chunk-LVMK2GPM.js";
|
|
72
|
+
import "../../../chunk-AH4MLRYT.js";
|
|
73
|
+
import {
|
|
74
|
+
createMatrixThreadBindingManager
|
|
75
|
+
} from "../../../chunk-QI3NB7D5.js";
|
|
76
|
+
import "../../../chunk-EE4DHUUZ.js";
|
|
77
|
+
import "../../../chunk-Y3KJR4OG.js";
|
|
78
|
+
import "../../../chunk-2U6OZ7N2.js";
|
|
79
|
+
import "../../../chunk-HDPICD3P.js";
|
|
80
|
+
import "../../../chunk-5APBBTGW.js";
|
|
81
|
+
import "../../../chunk-KSEANSJE.js";
|
|
82
|
+
import "../../../chunk-3TOEIHG5.js";
|
|
83
|
+
import "../../../chunk-427SAQME.js";
|
|
84
|
+
import "../../../chunk-E75BJJZ2.js";
|
|
85
|
+
import "../../../chunk-LSVKDUNM.js";
|
|
86
|
+
import "../../../chunk-EHELTAAD.js";
|
|
87
|
+
import "../../../chunk-IU7EXXK7.js";
|
|
88
|
+
import "../../../chunk-THM2QV25.js";
|
|
89
|
+
import "../../../chunk-WDOKKRTE.js";
|
|
90
|
+
import "../../../chunk-JSZBX2TA.js";
|
|
91
|
+
import "../../../chunk-RPCVN3JA.js";
|
|
92
|
+
import "../../../chunk-MTMHGC3G.js";
|
|
93
|
+
import "../../../chunk-ALKRFDAW.js";
|
|
94
|
+
import "../../../chunk-D7Q6Z74D.js";
|
|
95
|
+
import "../../../chunk-IQYYEHSM.js";
|
|
96
|
+
import "../../../chunk-3JD6JSJD.js";
|
|
97
|
+
import "../../../chunk-6SOGH3TW.js";
|
|
98
|
+
import "../../../chunk-IOTLSMEQ.js";
|
|
99
|
+
import "../../../chunk-SAOUP24A.js";
|
|
100
|
+
import "../../../chunk-XQYIIPOJ.js";
|
|
101
|
+
import "../../../chunk-FYRKBNTI.js";
|
|
102
|
+
import "../../../chunk-YUPBD27Z.js";
|
|
103
|
+
import "../../../chunk-Z6IVJ6ZW.js";
|
|
104
|
+
import "../../../chunk-QATEENP2.js";
|
|
105
|
+
import {
|
|
106
|
+
releaseSharedClientInstance,
|
|
107
|
+
resolveSharedMatrixClient
|
|
108
|
+
} from "../../../chunk-62N5N4AC.js";
|
|
109
|
+
import {
|
|
110
|
+
isMatrixStartupAbortError
|
|
111
|
+
} from "../../../chunk-UXDDOSJC.js";
|
|
112
|
+
import "../../../chunk-MBIX6Z7U.js";
|
|
113
|
+
import "../../../chunk-BMFZL2P4.js";
|
|
114
|
+
import {
|
|
115
|
+
isBunRuntime
|
|
116
|
+
} from "../../../chunk-TRWT2N6Z.js";
|
|
117
|
+
import "../../../chunk-OQP4W4AR.js";
|
|
118
|
+
import {
|
|
119
|
+
GROUP_POLICY_BLOCKED_LABEL,
|
|
120
|
+
resolveAllowlistProviderRuntimeGroupPolicy,
|
|
121
|
+
resolveDefaultGroupPolicy,
|
|
122
|
+
resolveThreadBindingIdleTimeoutMsForChannel,
|
|
123
|
+
resolveThreadBindingMaxAgeMsForChannel,
|
|
124
|
+
warnMissingProviderGroupPolicyFallbackOnce
|
|
125
|
+
} from "../../../chunk-L5OUVMHK.js";
|
|
126
|
+
import {
|
|
127
|
+
resolveConfiguredMatrixBotUserIds
|
|
128
|
+
} from "../../../chunk-MIFIM4PI.js";
|
|
129
|
+
import "../../../chunk-2ZEPAW7U.js";
|
|
130
|
+
import "../../../chunk-WGXXKFN5.js";
|
|
131
|
+
import {
|
|
132
|
+
backfillMatrixAuthDeviceIdAfterStartup,
|
|
133
|
+
resolveMatrixAuth,
|
|
134
|
+
resolveMatrixAuthContext
|
|
135
|
+
} from "../../../chunk-ZJHBJWZX.js";
|
|
136
|
+
import "../../../chunk-3UFTTK7C.js";
|
|
137
|
+
import "../../../chunk-34UY6D6X.js";
|
|
138
|
+
import "../../../chunk-BBM6BR3Z.js";
|
|
139
|
+
import "../../../chunk-HTV3R73W.js";
|
|
140
|
+
import {
|
|
141
|
+
resolveMatrixAccountConfig
|
|
142
|
+
} from "../../../chunk-HP5HMWOM.js";
|
|
143
|
+
import "../../../chunk-2Z4IOUDZ.js";
|
|
144
|
+
import {
|
|
145
|
+
getMatrixRuntime
|
|
146
|
+
} from "../../../chunk-FHNEN6IR.js";
|
|
147
|
+
import "../../../chunk-UU5PSBSI.js";
|
|
148
|
+
import "../../../chunk-AQQGAE7N.js";
|
|
149
|
+
import "../../../chunk-SSEX66OL.js";
|
|
150
|
+
import "../../../chunk-BWA3D22L.js";
|
|
151
|
+
import "../../../chunk-MH74AJ3A.js";
|
|
152
|
+
import {
|
|
153
|
+
init_shims
|
|
154
|
+
} from "../../../chunk-7FLQSTPG.js";
|
|
155
|
+
|
|
156
|
+
// src/matrix/monitor/index.ts
|
|
157
|
+
init_shims();
|
|
158
|
+
import { format } from "node:util";
|
|
159
|
+
import { CHANNEL_APPROVAL_NATIVE_RUNTIME_CONTEXT_CAPABILITY } from "openclaw/plugin-sdk/approval-handler-adapter-runtime";
|
|
160
|
+
import { waitUntilAbort } from "openclaw/plugin-sdk/channel-lifecycle";
|
|
161
|
+
import { registerChannelRuntimeContext } from "openclaw/plugin-sdk/channel-runtime-context";
|
|
162
|
+
var DEFAULT_MEDIA_MAX_MB = 20;
|
|
163
|
+
async function monitorMatrixProvider(opts = {}) {
|
|
164
|
+
if (opts.abortSignal?.aborted) {
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
if (isBunRuntime()) {
|
|
168
|
+
throw new Error("Matrix provider requires Node (bun runtime not supported)");
|
|
169
|
+
}
|
|
170
|
+
const core = getMatrixRuntime();
|
|
171
|
+
let cfg = core.config.loadConfig();
|
|
172
|
+
if (cfg.channels?.["matrix"]?.enabled === false) {
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
const logger = core.logging.getChildLogger({ module: "matrix-auto-reply" });
|
|
176
|
+
const formatRuntimeMessage = (...args) => format(...args);
|
|
177
|
+
const runtime = opts.runtime ?? {
|
|
178
|
+
log: (...args) => {
|
|
179
|
+
logger.info(formatRuntimeMessage(...args));
|
|
180
|
+
},
|
|
181
|
+
error: (...args) => {
|
|
182
|
+
logger.error(formatRuntimeMessage(...args));
|
|
183
|
+
},
|
|
184
|
+
exit: (code) => {
|
|
185
|
+
throw new Error(`exit ${code}`);
|
|
186
|
+
}
|
|
187
|
+
};
|
|
188
|
+
const logVerboseMessage = (message) => {
|
|
189
|
+
if (!core.logging.shouldLogVerbose()) {
|
|
190
|
+
return;
|
|
191
|
+
}
|
|
192
|
+
logger.debug?.(message);
|
|
193
|
+
};
|
|
194
|
+
const authContext = resolveMatrixAuthContext({
|
|
195
|
+
cfg,
|
|
196
|
+
accountId: opts.accountId
|
|
197
|
+
});
|
|
198
|
+
const effectiveAccountId = authContext.accountId;
|
|
199
|
+
const accountConfig = resolveMatrixAccountConfig({
|
|
200
|
+
cfg,
|
|
201
|
+
accountId: effectiveAccountId
|
|
202
|
+
});
|
|
203
|
+
const allowlistOnly = accountConfig.allowlistOnly === true;
|
|
204
|
+
const accountAllowBots = accountConfig.allowBots;
|
|
205
|
+
let allowFrom = (accountConfig.dm?.allowFrom ?? []).map(String);
|
|
206
|
+
let groupAllowFrom = (accountConfig.groupAllowFrom ?? []).map(String);
|
|
207
|
+
let roomsConfig = accountConfig.groups ?? accountConfig.rooms;
|
|
208
|
+
let needsRoomAliasesForConfig = false;
|
|
209
|
+
const configuredBotUserIds = resolveConfiguredMatrixBotUserIds({
|
|
210
|
+
cfg,
|
|
211
|
+
accountId: effectiveAccountId
|
|
212
|
+
});
|
|
213
|
+
({ allowFrom, groupAllowFrom, roomsConfig } = await resolveMatrixMonitorConfig({
|
|
214
|
+
cfg,
|
|
215
|
+
accountId: effectiveAccountId,
|
|
216
|
+
allowFrom,
|
|
217
|
+
groupAllowFrom,
|
|
218
|
+
roomsConfig,
|
|
219
|
+
runtime
|
|
220
|
+
}));
|
|
221
|
+
needsRoomAliasesForConfig = Boolean(
|
|
222
|
+
roomsConfig && Object.keys(roomsConfig).some((key) => key.trim().startsWith("#"))
|
|
223
|
+
);
|
|
224
|
+
cfg = {
|
|
225
|
+
...cfg,
|
|
226
|
+
channels: {
|
|
227
|
+
...cfg.channels,
|
|
228
|
+
matrix: {
|
|
229
|
+
...cfg.channels?.["matrix"],
|
|
230
|
+
dm: {
|
|
231
|
+
...cfg.channels?.["matrix"]?.dm,
|
|
232
|
+
allowFrom
|
|
233
|
+
},
|
|
234
|
+
groupAllowFrom,
|
|
235
|
+
...roomsConfig ? { groups: roomsConfig } : {}
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
const auth = await resolveMatrixAuth({ cfg, accountId: effectiveAccountId });
|
|
240
|
+
const resolvedInitialSyncLimit = typeof opts.initialSyncLimit === "number" ? Math.max(0, Math.floor(opts.initialSyncLimit)) : auth.initialSyncLimit;
|
|
241
|
+
const authWithLimit = resolvedInitialSyncLimit === auth.initialSyncLimit ? auth : { ...auth, initialSyncLimit: resolvedInitialSyncLimit };
|
|
242
|
+
const statusController = createMatrixMonitorStatusController({
|
|
243
|
+
accountId: auth.accountId,
|
|
244
|
+
baseUrl: auth.homeserver,
|
|
245
|
+
statusSink: opts.setStatus
|
|
246
|
+
});
|
|
247
|
+
let cleanedUp = false;
|
|
248
|
+
let client = null;
|
|
249
|
+
let threadBindingManager = null;
|
|
250
|
+
let inboundDeduper = null;
|
|
251
|
+
const monitorTaskRunner = createMatrixMonitorTaskRunner({
|
|
252
|
+
logger,
|
|
253
|
+
logVerboseMessage
|
|
254
|
+
});
|
|
255
|
+
let syncLifecycle = null;
|
|
256
|
+
const cleanup = async (mode = "persist") => {
|
|
257
|
+
if (cleanedUp) {
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
cleanedUp = true;
|
|
261
|
+
try {
|
|
262
|
+
client?.stopSyncWithoutPersist();
|
|
263
|
+
if (client && mode === "persist") {
|
|
264
|
+
await client.drainPendingDecryptions("matrix monitor shutdown");
|
|
265
|
+
}
|
|
266
|
+
if (mode === "persist") {
|
|
267
|
+
await monitorTaskRunner.waitForIdle();
|
|
268
|
+
}
|
|
269
|
+
threadBindingManager?.stop();
|
|
270
|
+
await inboundDeduper?.stop();
|
|
271
|
+
if (client) {
|
|
272
|
+
await releaseSharedClientInstance(client, mode);
|
|
273
|
+
}
|
|
274
|
+
} finally {
|
|
275
|
+
syncLifecycle?.dispose();
|
|
276
|
+
statusController.markStopped();
|
|
277
|
+
setActiveMatrixClient(null, auth.accountId);
|
|
278
|
+
}
|
|
279
|
+
};
|
|
280
|
+
const defaultGroupPolicy = resolveDefaultGroupPolicy(cfg);
|
|
281
|
+
const { groupPolicy: groupPolicyRaw, providerMissingFallbackApplied } = resolveAllowlistProviderRuntimeGroupPolicy({
|
|
282
|
+
providerConfigPresent: cfg.channels?.["matrix"] !== void 0,
|
|
283
|
+
groupPolicy: accountConfig.groupPolicy,
|
|
284
|
+
defaultGroupPolicy
|
|
285
|
+
});
|
|
286
|
+
warnMissingProviderGroupPolicyFallbackOnce({
|
|
287
|
+
providerMissingFallbackApplied,
|
|
288
|
+
providerKey: "matrix",
|
|
289
|
+
accountId: effectiveAccountId,
|
|
290
|
+
blockedLabel: GROUP_POLICY_BLOCKED_LABEL.room,
|
|
291
|
+
log: (message) => logVerboseMessage(message)
|
|
292
|
+
});
|
|
293
|
+
const groupPolicy = allowlistOnly && groupPolicyRaw === "open" ? "allowlist" : groupPolicyRaw;
|
|
294
|
+
const replyToMode = opts.replyToMode ?? accountConfig.replyToMode ?? "off";
|
|
295
|
+
const threadReplies = accountConfig.threadReplies ?? "inbound";
|
|
296
|
+
const dmThreadReplies = accountConfig.dm?.threadReplies;
|
|
297
|
+
const threadBindingIdleTimeoutMs = resolveThreadBindingIdleTimeoutMsForChannel({
|
|
298
|
+
cfg,
|
|
299
|
+
channel: "matrix",
|
|
300
|
+
accountId: effectiveAccountId
|
|
301
|
+
});
|
|
302
|
+
const threadBindingMaxAgeMs = resolveThreadBindingMaxAgeMsForChannel({
|
|
303
|
+
cfg,
|
|
304
|
+
channel: "matrix",
|
|
305
|
+
accountId: effectiveAccountId
|
|
306
|
+
});
|
|
307
|
+
const dmConfig = accountConfig.dm;
|
|
308
|
+
const dmEnabled = dmConfig?.enabled ?? true;
|
|
309
|
+
const dmPolicyRaw = dmConfig?.policy ?? "pairing";
|
|
310
|
+
const dmPolicy = allowlistOnly && dmPolicyRaw !== "disabled" ? "allowlist" : dmPolicyRaw;
|
|
311
|
+
const dmSessionScope = dmConfig?.sessionScope ?? "per-user";
|
|
312
|
+
const textLimit = core.channel.text.resolveTextChunkLimit(cfg, "matrix", effectiveAccountId);
|
|
313
|
+
const globalGroupChatHistoryLimit = cfg.messages?.groupChat?.historyLimit;
|
|
314
|
+
const historyLimit = Math.max(0, accountConfig.historyLimit ?? globalGroupChatHistoryLimit ?? 0);
|
|
315
|
+
const mediaMaxMb = opts.mediaMaxMb ?? accountConfig.mediaMaxMb ?? DEFAULT_MEDIA_MAX_MB;
|
|
316
|
+
const mediaMaxBytes = Math.max(1, mediaMaxMb) * 1024 * 1024;
|
|
317
|
+
const streaming = accountConfig.streaming === true || accountConfig.streaming === "partial" ? "partial" : accountConfig.streaming === "quiet" ? "quiet" : "off";
|
|
318
|
+
const blockStreamingEnabled = accountConfig.blockStreaming === true;
|
|
319
|
+
const startupMs = Date.now();
|
|
320
|
+
const startupGraceMs = 0;
|
|
321
|
+
const warnedEncryptedRooms = /* @__PURE__ */ new Set();
|
|
322
|
+
const warnedCryptoMissingRooms = /* @__PURE__ */ new Set();
|
|
323
|
+
try {
|
|
324
|
+
client = await resolveSharedMatrixClient({
|
|
325
|
+
cfg,
|
|
326
|
+
auth: authWithLimit,
|
|
327
|
+
startClient: false,
|
|
328
|
+
accountId: auth.accountId
|
|
329
|
+
});
|
|
330
|
+
setActiveMatrixClient(client, auth.accountId);
|
|
331
|
+
inboundDeduper = await createMatrixInboundEventDeduper({
|
|
332
|
+
auth,
|
|
333
|
+
env: process.env
|
|
334
|
+
});
|
|
335
|
+
syncLifecycle = createMatrixMonitorSyncLifecycle({
|
|
336
|
+
client,
|
|
337
|
+
statusController,
|
|
338
|
+
isStopping: () => cleanedUp || opts.abortSignal?.aborted === true
|
|
339
|
+
});
|
|
340
|
+
const dropPreStartupMessages = !client.hasPersistedSyncState();
|
|
341
|
+
const { getRoomInfo, getMemberDisplayName } = createMatrixRoomInfoResolver(client);
|
|
342
|
+
const directTracker = createDirectRoomTracker(client, {
|
|
343
|
+
log: logVerboseMessage,
|
|
344
|
+
canPromoteRecentInvite: async (roomId) => shouldPromoteRecentInviteRoom({
|
|
345
|
+
roomId,
|
|
346
|
+
roomInfo: await getRoomInfo(roomId, { includeAliases: true }),
|
|
347
|
+
rooms: roomsConfig
|
|
348
|
+
}),
|
|
349
|
+
shouldKeepLocallyPromotedDirectRoom: async (roomId) => {
|
|
350
|
+
try {
|
|
351
|
+
const roomInfo = await getRoomInfo(roomId, { includeAliases: true });
|
|
352
|
+
if (!roomInfo.nameResolved || !roomInfo.aliasesResolved) {
|
|
353
|
+
return void 0;
|
|
354
|
+
}
|
|
355
|
+
return shouldPromoteRecentInviteRoom({
|
|
356
|
+
roomId,
|
|
357
|
+
roomInfo,
|
|
358
|
+
rooms: roomsConfig
|
|
359
|
+
});
|
|
360
|
+
} catch (err) {
|
|
361
|
+
logVerboseMessage(
|
|
362
|
+
`matrix: local promotion revalidation failed room=${roomId} (${String(err)})`
|
|
363
|
+
);
|
|
364
|
+
return void 0;
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
});
|
|
368
|
+
registerMatrixAutoJoin({ client, accountConfig, runtime });
|
|
369
|
+
const handleRoomMessage = createMatrixRoomMessageHandler({
|
|
370
|
+
client,
|
|
371
|
+
core,
|
|
372
|
+
cfg,
|
|
373
|
+
accountId: effectiveAccountId,
|
|
374
|
+
runtime,
|
|
375
|
+
logger,
|
|
376
|
+
logVerboseMessage,
|
|
377
|
+
allowFrom,
|
|
378
|
+
groupAllowFrom,
|
|
379
|
+
roomsConfig,
|
|
380
|
+
accountAllowBots,
|
|
381
|
+
configuredBotUserIds,
|
|
382
|
+
groupPolicy,
|
|
383
|
+
replyToMode,
|
|
384
|
+
threadReplies,
|
|
385
|
+
dmThreadReplies,
|
|
386
|
+
dmSessionScope,
|
|
387
|
+
streaming,
|
|
388
|
+
blockStreamingEnabled,
|
|
389
|
+
dmEnabled,
|
|
390
|
+
dmPolicy,
|
|
391
|
+
textLimit,
|
|
392
|
+
mediaMaxBytes,
|
|
393
|
+
historyLimit,
|
|
394
|
+
startupMs,
|
|
395
|
+
startupGraceMs,
|
|
396
|
+
dropPreStartupMessages,
|
|
397
|
+
inboundDeduper,
|
|
398
|
+
directTracker,
|
|
399
|
+
getRoomInfo,
|
|
400
|
+
getMemberDisplayName,
|
|
401
|
+
needsRoomAliasesForConfig
|
|
402
|
+
});
|
|
403
|
+
threadBindingManager = await createMatrixThreadBindingManager({
|
|
404
|
+
accountId: effectiveAccountId,
|
|
405
|
+
auth,
|
|
406
|
+
client,
|
|
407
|
+
env: process.env,
|
|
408
|
+
idleTimeoutMs: threadBindingIdleTimeoutMs,
|
|
409
|
+
maxAgeMs: threadBindingMaxAgeMs,
|
|
410
|
+
logVerboseMessage
|
|
411
|
+
});
|
|
412
|
+
logVerboseMessage(
|
|
413
|
+
`matrix: thread bindings ready account=${threadBindingManager.accountId} idleMs=${threadBindingIdleTimeoutMs} maxAgeMs=${threadBindingMaxAgeMs}`
|
|
414
|
+
);
|
|
415
|
+
registerMatrixMonitorEvents({
|
|
416
|
+
cfg,
|
|
417
|
+
client,
|
|
418
|
+
auth,
|
|
419
|
+
allowFrom,
|
|
420
|
+
dmEnabled,
|
|
421
|
+
dmPolicy,
|
|
422
|
+
readStoreAllowFrom: async () => await core.channel.pairing.readAllowFromStore({
|
|
423
|
+
channel: "matrix",
|
|
424
|
+
env: process.env,
|
|
425
|
+
accountId: effectiveAccountId
|
|
426
|
+
}).catch(() => []),
|
|
427
|
+
directTracker,
|
|
428
|
+
logVerboseMessage,
|
|
429
|
+
warnedEncryptedRooms,
|
|
430
|
+
warnedCryptoMissingRooms,
|
|
431
|
+
logger,
|
|
432
|
+
formatNativeDependencyHint: core.system.formatNativeDependencyHint,
|
|
433
|
+
onRoomMessage: handleRoomMessage,
|
|
434
|
+
runDetachedTask: monitorTaskRunner.runDetachedTask
|
|
435
|
+
});
|
|
436
|
+
logVerboseMessage("matrix: starting client");
|
|
437
|
+
await resolveSharedMatrixClient({
|
|
438
|
+
cfg,
|
|
439
|
+
auth: authWithLimit,
|
|
440
|
+
accountId: auth.accountId,
|
|
441
|
+
abortSignal: opts.abortSignal
|
|
442
|
+
});
|
|
443
|
+
logVerboseMessage("matrix: client started");
|
|
444
|
+
logger.info(`matrix: logged in as ${auth.userId}`);
|
|
445
|
+
void backfillMatrixAuthDeviceIdAfterStartup({
|
|
446
|
+
auth,
|
|
447
|
+
env: process.env,
|
|
448
|
+
abortSignal: opts.abortSignal
|
|
449
|
+
}).catch((err) => {
|
|
450
|
+
logVerboseMessage(`matrix: failed to backfill deviceId after startup (${String(err)})`);
|
|
451
|
+
});
|
|
452
|
+
registerChannelRuntimeContext({
|
|
453
|
+
channelRuntime: opts.channelRuntime,
|
|
454
|
+
channelId: "matrix",
|
|
455
|
+
accountId: effectiveAccountId,
|
|
456
|
+
capability: CHANNEL_APPROVAL_NATIVE_RUNTIME_CONTEXT_CAPABILITY,
|
|
457
|
+
context: {
|
|
458
|
+
client
|
|
459
|
+
},
|
|
460
|
+
abortSignal: opts.abortSignal
|
|
461
|
+
});
|
|
462
|
+
await runMatrixStartupMaintenance({
|
|
463
|
+
client,
|
|
464
|
+
auth,
|
|
465
|
+
accountId: effectiveAccountId,
|
|
466
|
+
effectiveAccountId,
|
|
467
|
+
accountConfig,
|
|
468
|
+
logger,
|
|
469
|
+
logVerboseMessage,
|
|
470
|
+
loadConfig: () => core.config.loadConfig(),
|
|
471
|
+
writeConfigFile: async (nextCfg) => await core.config.writeConfigFile(nextCfg),
|
|
472
|
+
loadWebMedia: async (url, maxBytes) => await core.media.loadWebMedia(url, maxBytes),
|
|
473
|
+
env: process.env,
|
|
474
|
+
abortSignal: opts.abortSignal
|
|
475
|
+
});
|
|
476
|
+
await Promise.race([
|
|
477
|
+
waitUntilAbort(opts.abortSignal, async () => {
|
|
478
|
+
try {
|
|
479
|
+
logVerboseMessage("matrix: stopping client");
|
|
480
|
+
await cleanup();
|
|
481
|
+
} catch (err) {
|
|
482
|
+
logger.warn("matrix: failed during monitor shutdown cleanup", {
|
|
483
|
+
error: String(err)
|
|
484
|
+
});
|
|
485
|
+
}
|
|
486
|
+
}),
|
|
487
|
+
syncLifecycle.waitForFatalStop()
|
|
488
|
+
]);
|
|
489
|
+
} catch (err) {
|
|
490
|
+
if (opts.abortSignal?.aborted === true && isMatrixStartupAbortError(err)) {
|
|
491
|
+
await cleanup("stop");
|
|
492
|
+
return;
|
|
493
|
+
}
|
|
494
|
+
statusController.noteUnexpectedError(err);
|
|
495
|
+
await cleanup();
|
|
496
|
+
throw err;
|
|
497
|
+
}
|
|
498
|
+
}
|
|
499
|
+
export {
|
|
500
|
+
monitorMatrixProvider
|
|
501
|
+
};
|
|
502
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/matrix/monitor/index.ts"],
|
|
4
|
+
"sourcesContent": ["import { format } from \"node:util\";\nimport { CHANNEL_APPROVAL_NATIVE_RUNTIME_CONTEXT_CAPABILITY } from \"openclaw/plugin-sdk/approval-handler-adapter-runtime\";\nimport { waitUntilAbort } from \"openclaw/plugin-sdk/channel-lifecycle\";\nimport { registerChannelRuntimeContext } from \"openclaw/plugin-sdk/channel-runtime-context\";\nimport {\n GROUP_POLICY_BLOCKED_LABEL,\n resolveThreadBindingIdleTimeoutMsForChannel,\n resolveThreadBindingMaxAgeMsForChannel,\n resolveAllowlistProviderRuntimeGroupPolicy,\n resolveDefaultGroupPolicy,\n warnMissingProviderGroupPolicyFallbackOnce,\n type RuntimeEnv,\n} from \"../../runtime-api.js\";\nimport { getMatrixRuntime } from \"../../runtime.js\";\nimport type { CoreConfig, ReplyToMode } from \"../../types.js\";\nimport { resolveMatrixAccountConfig } from \"../account-config.js\";\nimport { resolveConfiguredMatrixBotUserIds } from \"../accounts.js\";\nimport { setActiveMatrixClient } from \"../active-client.js\";\nimport {\n backfillMatrixAuthDeviceIdAfterStartup,\n isBunRuntime,\n resolveMatrixAuth,\n resolveMatrixAuthContext,\n resolveSharedMatrixClient,\n} from \"../client.js\";\nimport { releaseSharedClientInstance } from \"../client/shared.js\";\nimport type { MatrixClient } from \"../sdk.js\";\nimport { isMatrixStartupAbortError } from \"../startup-abort.js\";\nimport { createMatrixThreadBindingManager } from \"../thread-bindings.js\";\nimport { registerMatrixAutoJoin } from \"./auto-join.js\";\nimport { resolveMatrixMonitorConfig } from \"./config.js\";\nimport { createDirectRoomTracker } from \"./direct.js\";\nimport { registerMatrixMonitorEvents } from \"./events.js\";\nimport { createMatrixRoomMessageHandler } from \"./handler.js\";\nimport {\n createMatrixInboundEventDeduper,\n type MatrixInboundEventDeduper,\n} from \"./inbound-dedupe.js\";\nimport { shouldPromoteRecentInviteRoom } from \"./recent-invite.js\";\nimport { createMatrixRoomInfoResolver } from \"./room-info.js\";\nimport { runMatrixStartupMaintenance } from \"./startup.js\";\nimport { createMatrixMonitorStatusController } from \"./status.js\";\nimport { createMatrixMonitorSyncLifecycle } from \"./sync-lifecycle.js\";\nimport { createMatrixMonitorTaskRunner } from \"./task-runner.js\";\n\nexport type MonitorMatrixOpts = {\n runtime?: RuntimeEnv;\n channelRuntime?: import(\"openclaw/plugin-sdk/channel-core\").PluginRuntime[\"channel\"];\n abortSignal?: AbortSignal;\n mediaMaxMb?: number;\n initialSyncLimit?: number;\n replyToMode?: ReplyToMode;\n accountId?: string | null;\n setStatus?: (next: import(\"openclaw/plugin-sdk/channel-contract\").ChannelAccountSnapshot) => void;\n};\n\nconst DEFAULT_MEDIA_MAX_MB = 20;\n\nexport async function monitorMatrixProvider(opts: MonitorMatrixOpts = {}): Promise<void> {\n // Fast-cancel callers should not pay the full Matrix startup/import cost.\n if (opts.abortSignal?.aborted) {\n return;\n }\n if (isBunRuntime()) {\n throw new Error(\"Matrix provider requires Node (bun runtime not supported)\");\n }\n const core = getMatrixRuntime();\n let cfg = core.config.loadConfig() as CoreConfig;\n if (cfg.channels?.[\"matrix\"]?.enabled === false) {\n return;\n }\n\n const logger = core.logging.getChildLogger({ module: \"matrix-auto-reply\" });\n const formatRuntimeMessage = (...args: Parameters<RuntimeEnv[\"log\"]>) => format(...args);\n const runtime: RuntimeEnv = opts.runtime ?? {\n log: (...args) => {\n logger.info(formatRuntimeMessage(...args));\n },\n error: (...args) => {\n logger.error(formatRuntimeMessage(...args));\n },\n exit: (code: number): never => {\n throw new Error(`exit ${code}`);\n },\n };\n const logVerboseMessage = (message: string) => {\n if (!core.logging.shouldLogVerbose()) {\n return;\n }\n logger.debug?.(message);\n };\n\n const authContext = resolveMatrixAuthContext({\n cfg,\n accountId: opts.accountId,\n });\n const effectiveAccountId = authContext.accountId;\n\n // Resolve account-specific config for multi-account support\n const accountConfig = resolveMatrixAccountConfig({\n cfg,\n accountId: effectiveAccountId,\n });\n\n const allowlistOnly = accountConfig.allowlistOnly === true;\n const accountAllowBots = accountConfig.allowBots;\n let allowFrom: string[] = (accountConfig.dm?.allowFrom ?? []).map(String);\n let groupAllowFrom: string[] = (accountConfig.groupAllowFrom ?? []).map(String);\n let roomsConfig = accountConfig.groups ?? accountConfig.rooms;\n let needsRoomAliasesForConfig = false;\n const configuredBotUserIds = resolveConfiguredMatrixBotUserIds({\n cfg,\n accountId: effectiveAccountId,\n });\n\n ({ allowFrom, groupAllowFrom, roomsConfig } = await resolveMatrixMonitorConfig({\n cfg,\n accountId: effectiveAccountId,\n allowFrom,\n groupAllowFrom,\n roomsConfig,\n runtime,\n }));\n needsRoomAliasesForConfig = Boolean(\n roomsConfig && Object.keys(roomsConfig).some((key) => key.trim().startsWith(\"#\")),\n );\n\n cfg = {\n ...cfg,\n channels: {\n ...cfg.channels,\n matrix: {\n ...cfg.channels?.[\"matrix\"],\n dm: {\n ...cfg.channels?.[\"matrix\"]?.dm,\n allowFrom,\n },\n groupAllowFrom,\n ...(roomsConfig ? { groups: roomsConfig } : {}),\n },\n },\n };\n\n const auth = await resolveMatrixAuth({ cfg, accountId: effectiveAccountId });\n const resolvedInitialSyncLimit =\n typeof opts.initialSyncLimit === \"number\"\n ? Math.max(0, Math.floor(opts.initialSyncLimit))\n : auth.initialSyncLimit;\n const authWithLimit =\n resolvedInitialSyncLimit === auth.initialSyncLimit\n ? auth\n : { ...auth, initialSyncLimit: resolvedInitialSyncLimit };\n const statusController = createMatrixMonitorStatusController({\n accountId: auth.accountId,\n baseUrl: auth.homeserver,\n statusSink: opts.setStatus,\n });\n let cleanedUp = false;\n let client: MatrixClient | null = null;\n let threadBindingManager: { accountId: string; stop: () => void } | null = null;\n let inboundDeduper: MatrixInboundEventDeduper | null = null;\n const monitorTaskRunner = createMatrixMonitorTaskRunner({\n logger,\n logVerboseMessage,\n });\n let syncLifecycle: ReturnType<typeof createMatrixMonitorSyncLifecycle> | null = null;\n const cleanup = async (mode: \"persist\" | \"stop\" = \"persist\") => {\n if (cleanedUp) {\n return;\n }\n cleanedUp = true;\n try {\n client?.stopSyncWithoutPersist();\n if (client && mode === \"persist\") {\n await client.drainPendingDecryptions(\"matrix monitor shutdown\");\n }\n if (mode === \"persist\") {\n await monitorTaskRunner.waitForIdle();\n }\n threadBindingManager?.stop();\n await inboundDeduper?.stop();\n if (client) {\n await releaseSharedClientInstance(client, mode);\n }\n } finally {\n syncLifecycle?.dispose();\n statusController.markStopped();\n setActiveMatrixClient(null, auth.accountId);\n }\n };\n\n const defaultGroupPolicy = resolveDefaultGroupPolicy(cfg);\n const { groupPolicy: groupPolicyRaw, providerMissingFallbackApplied } =\n resolveAllowlistProviderRuntimeGroupPolicy({\n providerConfigPresent: cfg.channels?.[\"matrix\"] !== undefined,\n groupPolicy: accountConfig.groupPolicy,\n defaultGroupPolicy,\n });\n warnMissingProviderGroupPolicyFallbackOnce({\n providerMissingFallbackApplied,\n providerKey: \"matrix\",\n accountId: effectiveAccountId,\n blockedLabel: GROUP_POLICY_BLOCKED_LABEL.room,\n log: (message) => logVerboseMessage(message),\n });\n const groupPolicy = allowlistOnly && groupPolicyRaw === \"open\" ? \"allowlist\" : groupPolicyRaw;\n const replyToMode = opts.replyToMode ?? accountConfig.replyToMode ?? \"off\";\n const threadReplies = accountConfig.threadReplies ?? \"inbound\";\n const dmThreadReplies = accountConfig.dm?.threadReplies;\n const threadBindingIdleTimeoutMs = resolveThreadBindingIdleTimeoutMsForChannel({\n cfg,\n channel: \"matrix\",\n accountId: effectiveAccountId,\n });\n const threadBindingMaxAgeMs = resolveThreadBindingMaxAgeMsForChannel({\n cfg,\n channel: \"matrix\",\n accountId: effectiveAccountId,\n });\n const dmConfig = accountConfig.dm;\n const dmEnabled = dmConfig?.enabled ?? true;\n const dmPolicyRaw = dmConfig?.policy ?? \"pairing\";\n const dmPolicy = allowlistOnly && dmPolicyRaw !== \"disabled\" ? \"allowlist\" : dmPolicyRaw;\n const dmSessionScope = dmConfig?.sessionScope ?? \"per-user\";\n const textLimit = core.channel.text.resolveTextChunkLimit(cfg, \"matrix\", effectiveAccountId);\n const globalGroupChatHistoryLimit = (\n cfg.messages as { groupChat?: { historyLimit?: number } } | undefined\n )?.groupChat?.historyLimit;\n const historyLimit = Math.max(0, accountConfig.historyLimit ?? globalGroupChatHistoryLimit ?? 0);\n const mediaMaxMb = opts.mediaMaxMb ?? accountConfig.mediaMaxMb ?? DEFAULT_MEDIA_MAX_MB;\n const mediaMaxBytes = Math.max(1, mediaMaxMb) * 1024 * 1024;\n const streaming: \"partial\" | \"quiet\" | \"off\" =\n accountConfig.streaming === true || accountConfig.streaming === \"partial\"\n ? \"partial\"\n : accountConfig.streaming === \"quiet\"\n ? \"quiet\"\n : \"off\";\n const blockStreamingEnabled = accountConfig.blockStreaming === true;\n const startupMs = Date.now();\n const startupGraceMs = 0;\n const warnedEncryptedRooms = new Set<string>();\n const warnedCryptoMissingRooms = new Set<string>();\n\n try {\n client = await resolveSharedMatrixClient({\n cfg,\n auth: authWithLimit,\n startClient: false,\n accountId: auth.accountId,\n });\n setActiveMatrixClient(client, auth.accountId);\n inboundDeduper = await createMatrixInboundEventDeduper({\n auth,\n env: process.env,\n });\n syncLifecycle = createMatrixMonitorSyncLifecycle({\n client,\n statusController,\n isStopping: () => cleanedUp || opts.abortSignal?.aborted === true,\n });\n // Cold starts should ignore old room history, but once we have a persisted\n // /sync cursor we want restart backlogs to replay just like other channels.\n const dropPreStartupMessages = !client.hasPersistedSyncState();\n const { getRoomInfo, getMemberDisplayName } = createMatrixRoomInfoResolver(client);\n const directTracker = createDirectRoomTracker(client, {\n log: logVerboseMessage,\n canPromoteRecentInvite: async (roomId) =>\n shouldPromoteRecentInviteRoom({\n roomId,\n roomInfo: await getRoomInfo(roomId, { includeAliases: true }),\n rooms: roomsConfig,\n }),\n shouldKeepLocallyPromotedDirectRoom: async (roomId) => {\n try {\n const roomInfo = await getRoomInfo(roomId, { includeAliases: true });\n if (!roomInfo.nameResolved || !roomInfo.aliasesResolved) {\n return undefined;\n }\n return shouldPromoteRecentInviteRoom({\n roomId,\n roomInfo,\n rooms: roomsConfig,\n });\n } catch (err) {\n logVerboseMessage(\n `matrix: local promotion revalidation failed room=${roomId} (${String(err)})`,\n );\n return undefined;\n }\n },\n });\n registerMatrixAutoJoin({ client, accountConfig, runtime });\n const handleRoomMessage = createMatrixRoomMessageHandler({\n client,\n core,\n cfg,\n accountId: effectiveAccountId,\n runtime,\n logger,\n logVerboseMessage,\n allowFrom,\n groupAllowFrom,\n roomsConfig,\n accountAllowBots,\n configuredBotUserIds,\n groupPolicy,\n replyToMode,\n threadReplies,\n dmThreadReplies,\n dmSessionScope,\n streaming,\n blockStreamingEnabled,\n dmEnabled,\n dmPolicy,\n textLimit,\n mediaMaxBytes,\n historyLimit,\n startupMs,\n startupGraceMs,\n dropPreStartupMessages,\n inboundDeduper,\n directTracker,\n getRoomInfo,\n getMemberDisplayName,\n needsRoomAliasesForConfig,\n });\n threadBindingManager = await createMatrixThreadBindingManager({\n accountId: effectiveAccountId,\n auth,\n client,\n env: process.env,\n idleTimeoutMs: threadBindingIdleTimeoutMs,\n maxAgeMs: threadBindingMaxAgeMs,\n logVerboseMessage,\n });\n logVerboseMessage(\n `matrix: thread bindings ready account=${threadBindingManager.accountId} idleMs=${threadBindingIdleTimeoutMs} maxAgeMs=${threadBindingMaxAgeMs}`,\n );\n\n registerMatrixMonitorEvents({\n cfg,\n client,\n auth,\n allowFrom,\n dmEnabled,\n dmPolicy,\n readStoreAllowFrom: async () =>\n await core.channel.pairing\n .readAllowFromStore({\n channel: \"matrix\",\n env: process.env,\n accountId: effectiveAccountId,\n })\n .catch(() => []),\n directTracker,\n logVerboseMessage,\n warnedEncryptedRooms,\n warnedCryptoMissingRooms,\n logger,\n formatNativeDependencyHint: core.system.formatNativeDependencyHint,\n onRoomMessage: handleRoomMessage,\n runDetachedTask: monitorTaskRunner.runDetachedTask,\n });\n\n // Register Matrix thread bindings before the client starts syncing so threaded\n // commands during startup never observe Matrix as \"unavailable\".\n logVerboseMessage(\"matrix: starting client\");\n await resolveSharedMatrixClient({\n cfg,\n auth: authWithLimit,\n accountId: auth.accountId,\n abortSignal: opts.abortSignal,\n });\n logVerboseMessage(\"matrix: client started\");\n\n // Shared client is already started via resolveSharedMatrixClient.\n logger.info(`matrix: logged in as ${auth.userId}`);\n void backfillMatrixAuthDeviceIdAfterStartup({\n auth,\n env: process.env,\n abortSignal: opts.abortSignal,\n }).catch((err) => {\n logVerboseMessage(`matrix: failed to backfill deviceId after startup (${String(err)})`);\n });\n\n registerChannelRuntimeContext({\n channelRuntime: opts.channelRuntime,\n channelId: \"matrix\",\n accountId: effectiveAccountId,\n capability: CHANNEL_APPROVAL_NATIVE_RUNTIME_CONTEXT_CAPABILITY,\n context: {\n client,\n },\n abortSignal: opts.abortSignal,\n });\n\n await runMatrixStartupMaintenance({\n client,\n auth,\n accountId: effectiveAccountId,\n effectiveAccountId,\n accountConfig,\n logger,\n logVerboseMessage,\n loadConfig: () => core.config.loadConfig() as CoreConfig,\n writeConfigFile: async (nextCfg) => await core.config.writeConfigFile(nextCfg),\n loadWebMedia: async (url, maxBytes) => await core.media.loadWebMedia(url, maxBytes),\n env: process.env,\n abortSignal: opts.abortSignal,\n });\n\n await Promise.race([\n waitUntilAbort(opts.abortSignal, async () => {\n try {\n logVerboseMessage(\"matrix: stopping client\");\n await cleanup();\n } catch (err) {\n logger.warn(\"matrix: failed during monitor shutdown cleanup\", {\n error: String(err),\n });\n }\n }),\n syncLifecycle.waitForFatalStop(),\n ]);\n } catch (err) {\n if (opts.abortSignal?.aborted === true && isMatrixStartupAbortError(err)) {\n await cleanup(\"stop\");\n return;\n }\n statusController.noteUnexpectedError(err);\n await cleanup();\n throw err;\n }\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import {
|
|
2
|
+
resolveMatrixStoragePaths
|
|
3
|
+
} from "../../../chunk-3UFTTK7C.js";
|
|
4
|
+
import {
|
|
5
|
+
getMatrixRuntime
|
|
6
|
+
} from "../../../chunk-FHNEN6IR.js";
|
|
7
|
+
import "../../../chunk-UU5PSBSI.js";
|
|
8
|
+
import "../../../chunk-AQQGAE7N.js";
|
|
9
|
+
import "../../../chunk-SSEX66OL.js";
|
|
10
|
+
import "../../../chunk-BWA3D22L.js";
|
|
11
|
+
import "../../../chunk-MH74AJ3A.js";
|
|
12
|
+
import {
|
|
13
|
+
init_shims
|
|
14
|
+
} from "../../../chunk-7FLQSTPG.js";
|
|
15
|
+
|
|
16
|
+
// src/matrix/monitor/legacy-crypto-restore.ts
|
|
17
|
+
init_shims();
|
|
18
|
+
import fs from "node:fs/promises";
|
|
19
|
+
import os from "node:os";
|
|
20
|
+
import path from "node:path";
|
|
21
|
+
import { readJsonFileWithFallback, writeJsonFileAtomically } from "openclaw/plugin-sdk/json-store";
|
|
22
|
+
function isMigrationState(value) {
|
|
23
|
+
return Boolean(value) && typeof value === "object" && value.version === 1;
|
|
24
|
+
}
|
|
25
|
+
async function resolvePendingMigrationStatePath(params) {
|
|
26
|
+
const { rootDir } = resolveMatrixStoragePaths({
|
|
27
|
+
homeserver: params.auth.homeserver,
|
|
28
|
+
userId: params.auth.userId,
|
|
29
|
+
accessToken: params.auth.accessToken,
|
|
30
|
+
accountId: params.auth.accountId,
|
|
31
|
+
deviceId: params.auth.deviceId,
|
|
32
|
+
stateDir: params.stateDir
|
|
33
|
+
});
|
|
34
|
+
const directStatePath = path.join(rootDir, "legacy-crypto-migration.json");
|
|
35
|
+
const { value: directValue } = await readJsonFileWithFallback(directStatePath, null);
|
|
36
|
+
if (isMigrationState(directValue) && directValue.restoreStatus === "pending") {
|
|
37
|
+
return { statePath: directStatePath, value: directValue };
|
|
38
|
+
}
|
|
39
|
+
const accountStorageDir = path.dirname(rootDir);
|
|
40
|
+
let siblingEntries = [];
|
|
41
|
+
try {
|
|
42
|
+
siblingEntries = (await fs.readdir(accountStorageDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name).filter((entry) => path.join(accountStorageDir, entry) !== rootDir).toSorted((left, right) => left.localeCompare(right));
|
|
43
|
+
} catch {
|
|
44
|
+
return { statePath: directStatePath, value: directValue };
|
|
45
|
+
}
|
|
46
|
+
for (const sibling of siblingEntries) {
|
|
47
|
+
const siblingStatePath = path.join(accountStorageDir, sibling, "legacy-crypto-migration.json");
|
|
48
|
+
const { value } = await readJsonFileWithFallback(
|
|
49
|
+
siblingStatePath,
|
|
50
|
+
null
|
|
51
|
+
);
|
|
52
|
+
if (isMigrationState(value) && value.restoreStatus === "pending") {
|
|
53
|
+
return { statePath: siblingStatePath, value };
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
return { statePath: directStatePath, value: directValue };
|
|
57
|
+
}
|
|
58
|
+
async function maybeRestoreLegacyMatrixBackup(params) {
|
|
59
|
+
const env = params.env ?? process.env;
|
|
60
|
+
const stateDir = params.stateDir ?? getMatrixRuntime().state.resolveStateDir(env, os.homedir);
|
|
61
|
+
const { statePath, value } = await resolvePendingMigrationStatePath({
|
|
62
|
+
stateDir,
|
|
63
|
+
auth: params.auth
|
|
64
|
+
});
|
|
65
|
+
if (!isMigrationState(value) || value.restoreStatus !== "pending") {
|
|
66
|
+
return { kind: "skipped" };
|
|
67
|
+
}
|
|
68
|
+
const restore = await params.client.restoreRoomKeyBackup();
|
|
69
|
+
const localOnlyKeys = value.roomKeyCounts && value.roomKeyCounts.total > value.roomKeyCounts.backedUp ? value.roomKeyCounts.total - value.roomKeyCounts.backedUp : 0;
|
|
70
|
+
if (restore.success) {
|
|
71
|
+
await writeJsonFileAtomically(statePath, {
|
|
72
|
+
...value,
|
|
73
|
+
restoreStatus: "completed",
|
|
74
|
+
restoredAt: restore.restoredAt ?? (/* @__PURE__ */ new Date()).toISOString(),
|
|
75
|
+
importedCount: restore.imported,
|
|
76
|
+
totalCount: restore.total,
|
|
77
|
+
lastError: null
|
|
78
|
+
});
|
|
79
|
+
return {
|
|
80
|
+
kind: "restored",
|
|
81
|
+
imported: restore.imported,
|
|
82
|
+
total: restore.total,
|
|
83
|
+
localOnlyKeys
|
|
84
|
+
};
|
|
85
|
+
}
|
|
86
|
+
await writeJsonFileAtomically(statePath, {
|
|
87
|
+
...value,
|
|
88
|
+
lastError: restore.error ?? "unknown"
|
|
89
|
+
});
|
|
90
|
+
return {
|
|
91
|
+
kind: "failed",
|
|
92
|
+
error: restore.error ?? "unknown",
|
|
93
|
+
localOnlyKeys
|
|
94
|
+
};
|
|
95
|
+
}
|
|
96
|
+
export {
|
|
97
|
+
maybeRestoreLegacyMatrixBackup
|
|
98
|
+
};
|
|
99
|
+
//# sourceMappingURL=legacy-crypto-restore.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../../../../src/matrix/monitor/legacy-crypto-restore.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"node:fs/promises\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport { readJsonFileWithFallback, writeJsonFileAtomically } from \"openclaw/plugin-sdk/json-store\";\nimport { getMatrixRuntime } from \"../../runtime.js\";\nimport { resolveMatrixStoragePaths } from \"../client/storage.js\";\nimport type { MatrixAuth } from \"../client/types.js\";\nimport type { MatrixClient } from \"../sdk.js\";\n\ntype MatrixLegacyCryptoMigrationState = {\n version: 1;\n accountId: string;\n roomKeyCounts: {\n total: number;\n backedUp: number;\n } | null;\n restoreStatus: \"pending\" | \"completed\" | \"manual-action-required\";\n restoredAt?: string;\n importedCount?: number;\n totalCount?: number;\n lastError?: string | null;\n};\n\nexport type MatrixLegacyCryptoRestoreResult =\n | { kind: \"skipped\" }\n | {\n kind: \"restored\";\n imported: number;\n total: number;\n localOnlyKeys: number;\n }\n | {\n kind: \"failed\";\n error: string;\n localOnlyKeys: number;\n };\n\nfunction isMigrationState(value: unknown): value is MatrixLegacyCryptoMigrationState {\n return (\n Boolean(value) && typeof value === \"object\" && (value as { version?: unknown }).version === 1\n );\n}\n\nasync function resolvePendingMigrationStatePath(params: {\n stateDir: string;\n auth: Pick<MatrixAuth, \"homeserver\" | \"userId\" | \"accessToken\" | \"accountId\" | \"deviceId\">;\n}): Promise<{\n statePath: string;\n value: MatrixLegacyCryptoMigrationState | null;\n}> {\n const { rootDir } = resolveMatrixStoragePaths({\n homeserver: params.auth.homeserver,\n userId: params.auth.userId,\n accessToken: params.auth.accessToken,\n accountId: params.auth.accountId,\n deviceId: params.auth.deviceId,\n stateDir: params.stateDir,\n });\n const directStatePath = path.join(rootDir, \"legacy-crypto-migration.json\");\n const { value: directValue } =\n await readJsonFileWithFallback<MatrixLegacyCryptoMigrationState | null>(directStatePath, null);\n if (isMigrationState(directValue) && directValue.restoreStatus === \"pending\") {\n return { statePath: directStatePath, value: directValue };\n }\n\n const accountStorageDir = path.dirname(rootDir);\n let siblingEntries: string[] = [];\n try {\n siblingEntries = (await fs.readdir(accountStorageDir, { withFileTypes: true }))\n .filter((entry) => entry.isDirectory())\n .map((entry) => entry.name)\n .filter((entry) => path.join(accountStorageDir, entry) !== rootDir)\n .toSorted((left, right) => left.localeCompare(right));\n } catch {\n return { statePath: directStatePath, value: directValue };\n }\n\n for (const sibling of siblingEntries) {\n const siblingStatePath = path.join(accountStorageDir, sibling, \"legacy-crypto-migration.json\");\n const { value } = await readJsonFileWithFallback<MatrixLegacyCryptoMigrationState | null>(\n siblingStatePath,\n null,\n );\n if (isMigrationState(value) && value.restoreStatus === \"pending\") {\n return { statePath: siblingStatePath, value };\n }\n }\n return { statePath: directStatePath, value: directValue };\n}\n\nexport async function maybeRestoreLegacyMatrixBackup(params: {\n client: Pick<MatrixClient, \"restoreRoomKeyBackup\">;\n auth: Pick<MatrixAuth, \"homeserver\" | \"userId\" | \"accessToken\" | \"accountId\" | \"deviceId\">;\n env?: NodeJS.ProcessEnv;\n stateDir?: string;\n}): Promise<MatrixLegacyCryptoRestoreResult> {\n const env = params.env ?? process.env;\n const stateDir = params.stateDir ?? getMatrixRuntime().state.resolveStateDir(env, os.homedir);\n const { statePath, value } = await resolvePendingMigrationStatePath({\n stateDir,\n auth: params.auth,\n });\n if (!isMigrationState(value) || value.restoreStatus !== \"pending\") {\n return { kind: \"skipped\" };\n }\n\n const restore = await params.client.restoreRoomKeyBackup();\n const localOnlyKeys =\n value.roomKeyCounts && value.roomKeyCounts.total > value.roomKeyCounts.backedUp\n ? value.roomKeyCounts.total - value.roomKeyCounts.backedUp\n : 0;\n\n if (restore.success) {\n await writeJsonFileAtomically(statePath, {\n ...value,\n restoreStatus: \"completed\",\n restoredAt: restore.restoredAt ?? new Date().toISOString(),\n importedCount: restore.imported,\n totalCount: restore.total,\n lastError: null,\n } satisfies MatrixLegacyCryptoMigrationState);\n return {\n kind: \"restored\",\n imported: restore.imported,\n total: restore.total,\n localOnlyKeys,\n };\n }\n\n await writeJsonFileAtomically(statePath, {\n ...value,\n lastError: restore.error ?? \"unknown\",\n } satisfies MatrixLegacyCryptoMigrationState);\n return {\n kind: \"failed\",\n error: restore.error ?? \"unknown\",\n localOnlyKeys,\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|