@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,183 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createMatrixVerificationEventRouter
|
|
3
|
+
} from "./chunk-QDT24CIA.js";
|
|
4
|
+
import {
|
|
5
|
+
EventType
|
|
6
|
+
} from "./chunk-GLLRCKKE.js";
|
|
7
|
+
import {
|
|
8
|
+
formatMatrixEncryptedEventDisabledWarning
|
|
9
|
+
} from "./chunk-BU2CTWBG.js";
|
|
10
|
+
import {
|
|
11
|
+
init_shims
|
|
12
|
+
} from "./chunk-7FLQSTPG.js";
|
|
13
|
+
|
|
14
|
+
// src/matrix/monitor/events.ts
|
|
15
|
+
init_shims();
|
|
16
|
+
import { normalizeOptionalString } from "openclaw/plugin-sdk/text-runtime";
|
|
17
|
+
function formatMatrixSelfDecryptionHint(accountId) {
|
|
18
|
+
return `matrix: failed to decrypt a message from this same Matrix user. This usually means another Matrix device did not share the room key, or another OpenClaw runtime is using the same account. Check 'openclaw matrix verify status --verbose --account ${accountId}' and 'openclaw matrix devices list --account ${accountId}'.`;
|
|
19
|
+
}
|
|
20
|
+
async function resolveMatrixSelfUserId(client, logVerboseMessage) {
|
|
21
|
+
if (typeof client.getUserId !== "function") {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
try {
|
|
25
|
+
return await client.getUserId() ?? null;
|
|
26
|
+
} catch (err) {
|
|
27
|
+
logVerboseMessage(`matrix: failed resolving self user id for decrypt warning: ${String(err)}`);
|
|
28
|
+
return null;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
function registerMatrixMonitorEvents(params) {
|
|
32
|
+
const {
|
|
33
|
+
cfg,
|
|
34
|
+
client,
|
|
35
|
+
auth,
|
|
36
|
+
allowFrom,
|
|
37
|
+
dmEnabled,
|
|
38
|
+
dmPolicy,
|
|
39
|
+
readStoreAllowFrom,
|
|
40
|
+
directTracker,
|
|
41
|
+
logVerboseMessage,
|
|
42
|
+
warnedEncryptedRooms,
|
|
43
|
+
warnedCryptoMissingRooms,
|
|
44
|
+
logger,
|
|
45
|
+
formatNativeDependencyHint,
|
|
46
|
+
onRoomMessage,
|
|
47
|
+
runDetachedTask
|
|
48
|
+
} = params;
|
|
49
|
+
const { routeVerificationEvent, routeVerificationSummary } = createMatrixVerificationEventRouter({
|
|
50
|
+
client,
|
|
51
|
+
allowFrom,
|
|
52
|
+
dmEnabled,
|
|
53
|
+
dmPolicy,
|
|
54
|
+
readStoreAllowFrom,
|
|
55
|
+
logVerboseMessage
|
|
56
|
+
});
|
|
57
|
+
const runMonitorTask = (label, task) => {
|
|
58
|
+
if (runDetachedTask) {
|
|
59
|
+
return runDetachedTask(label, task);
|
|
60
|
+
}
|
|
61
|
+
return Promise.resolve().then(task).catch((error) => {
|
|
62
|
+
logVerboseMessage(`matrix: ${label} failed (${String(error)})`);
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
client.on("room.message", (roomId, event) => {
|
|
66
|
+
if (routeVerificationEvent(roomId, event)) {
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
void runMonitorTask(
|
|
70
|
+
`room message handler room=${roomId} id=${event.event_id ?? "unknown"}`,
|
|
71
|
+
async () => {
|
|
72
|
+
await onRoomMessage(roomId, event);
|
|
73
|
+
}
|
|
74
|
+
);
|
|
75
|
+
});
|
|
76
|
+
client.on("room.encrypted_event", (roomId, event) => {
|
|
77
|
+
const eventId = event?.event_id ?? "unknown";
|
|
78
|
+
const eventType = event?.type ?? "unknown";
|
|
79
|
+
logVerboseMessage(`matrix: encrypted event room=${roomId} type=${eventType} id=${eventId}`);
|
|
80
|
+
});
|
|
81
|
+
client.on("room.decrypted_event", (roomId, event) => {
|
|
82
|
+
const eventId = event?.event_id ?? "unknown";
|
|
83
|
+
const eventType = event?.type ?? "unknown";
|
|
84
|
+
logVerboseMessage(`matrix: decrypted event room=${roomId} type=${eventType} id=${eventId}`);
|
|
85
|
+
});
|
|
86
|
+
client.on(
|
|
87
|
+
"room.failed_decryption",
|
|
88
|
+
async (roomId, event, error) => {
|
|
89
|
+
const selfUserId = await resolveMatrixSelfUserId(client, logVerboseMessage);
|
|
90
|
+
const sender = typeof event.sender === "string" ? event.sender : null;
|
|
91
|
+
const senderMatchesOwnUser = Boolean(selfUserId && sender && selfUserId === sender);
|
|
92
|
+
logger.warn("Failed to decrypt message", {
|
|
93
|
+
roomId,
|
|
94
|
+
eventId: event.event_id,
|
|
95
|
+
sender,
|
|
96
|
+
senderMatchesOwnUser,
|
|
97
|
+
error: error.message
|
|
98
|
+
});
|
|
99
|
+
if (senderMatchesOwnUser) {
|
|
100
|
+
logger.warn(formatMatrixSelfDecryptionHint(auth.accountId), {
|
|
101
|
+
roomId,
|
|
102
|
+
eventId: event.event_id,
|
|
103
|
+
sender
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
logVerboseMessage(
|
|
107
|
+
`matrix: failed decrypt room=${roomId} id=${event.event_id ?? "unknown"} error=${error.message}`
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
);
|
|
111
|
+
client.on("verification.summary", (summary) => {
|
|
112
|
+
void runMonitorTask("verification summary handler", async () => {
|
|
113
|
+
await routeVerificationSummary(summary);
|
|
114
|
+
});
|
|
115
|
+
});
|
|
116
|
+
client.on("room.invite", (roomId, event) => {
|
|
117
|
+
directTracker?.invalidateRoom(roomId);
|
|
118
|
+
const eventId = event?.event_id ?? "unknown";
|
|
119
|
+
const sender = event?.sender ?? "unknown";
|
|
120
|
+
const invitee = normalizeOptionalString(event?.state_key) ?? "";
|
|
121
|
+
const senderIsInvitee = Boolean(invitee) && (normalizeOptionalString(event?.sender) ?? "") === invitee;
|
|
122
|
+
const isDirect = event?.content?.is_direct === true;
|
|
123
|
+
const rememberedSender = normalizeOptionalString(event?.sender);
|
|
124
|
+
if (rememberedSender && !senderIsInvitee) {
|
|
125
|
+
directTracker?.rememberInvite?.(roomId, rememberedSender);
|
|
126
|
+
}
|
|
127
|
+
logVerboseMessage(
|
|
128
|
+
`matrix: invite room=${roomId} sender=${sender} direct=${String(isDirect)} id=${eventId}`
|
|
129
|
+
);
|
|
130
|
+
});
|
|
131
|
+
client.on("room.join", (roomId, event) => {
|
|
132
|
+
directTracker?.invalidateRoom(roomId);
|
|
133
|
+
const eventId = event?.event_id ?? "unknown";
|
|
134
|
+
logVerboseMessage(`matrix: join room=${roomId} id=${eventId}`);
|
|
135
|
+
});
|
|
136
|
+
client.on("room.event", (roomId, event) => {
|
|
137
|
+
const eventType = event?.type ?? "unknown";
|
|
138
|
+
if (eventType === EventType.RoomMessageEncrypted) {
|
|
139
|
+
logVerboseMessage(
|
|
140
|
+
`matrix: encrypted raw event room=${roomId} id=${event?.event_id ?? "unknown"}`
|
|
141
|
+
);
|
|
142
|
+
if (auth.encryption !== true && !warnedEncryptedRooms.has(roomId)) {
|
|
143
|
+
warnedEncryptedRooms.add(roomId);
|
|
144
|
+
const warning = formatMatrixEncryptedEventDisabledWarning(cfg, auth.accountId);
|
|
145
|
+
logger.warn(warning, { roomId });
|
|
146
|
+
}
|
|
147
|
+
if (auth.encryption === true && !client.crypto && !warnedCryptoMissingRooms.has(roomId)) {
|
|
148
|
+
warnedCryptoMissingRooms.add(roomId);
|
|
149
|
+
const hint = formatNativeDependencyHint({
|
|
150
|
+
packageName: "@matrix-org/matrix-sdk-crypto-nodejs",
|
|
151
|
+
manager: "pnpm",
|
|
152
|
+
downloadCommand: "node node_modules/@matrix-org/matrix-sdk-crypto-nodejs/download-lib.js"
|
|
153
|
+
});
|
|
154
|
+
const warning = `matrix: encryption enabled but crypto is unavailable; ${hint}`;
|
|
155
|
+
logger.warn(warning, { roomId });
|
|
156
|
+
}
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
if (eventType === EventType.RoomMember) {
|
|
160
|
+
directTracker?.invalidateRoom(roomId);
|
|
161
|
+
const membership = event?.content?.membership;
|
|
162
|
+
const stateKey = event.state_key ?? "";
|
|
163
|
+
logVerboseMessage(
|
|
164
|
+
`matrix: member event room=${roomId} stateKey=${stateKey} membership=${membership ?? "unknown"}`
|
|
165
|
+
);
|
|
166
|
+
}
|
|
167
|
+
if (eventType === EventType.Reaction) {
|
|
168
|
+
void runMonitorTask(
|
|
169
|
+
`reaction handler room=${roomId} id=${event.event_id ?? "unknown"}`,
|
|
170
|
+
async () => {
|
|
171
|
+
await onRoomMessage(roomId, event);
|
|
172
|
+
}
|
|
173
|
+
);
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
routeVerificationEvent(roomId, event);
|
|
177
|
+
});
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
export {
|
|
181
|
+
registerMatrixMonitorEvents
|
|
182
|
+
};
|
|
183
|
+
//# sourceMappingURL=chunk-MDLLXMC3.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/matrix/monitor/events.ts"],
|
|
4
|
+
"sourcesContent": ["import { normalizeOptionalString } from \"openclaw/plugin-sdk/text-runtime\";\nimport type { PluginRuntime, RuntimeLogger } from \"../../runtime-api.js\";\nimport type { CoreConfig } from \"../../types.js\";\nimport type { MatrixAuth } from \"../client.js\";\nimport { formatMatrixEncryptedEventDisabledWarning } from \"../encryption-guidance.js\";\nimport type { MatrixClient } from \"../sdk.js\";\nimport type { MatrixRawEvent } from \"./types.js\";\nimport { EventType } from \"./types.js\";\nimport { createMatrixVerificationEventRouter } from \"./verification-events.js\";\n\nfunction formatMatrixSelfDecryptionHint(accountId: string): string {\n return (\n \"matrix: failed to decrypt a message from this same Matrix user. \" +\n \"This usually means another Matrix device did not share the room key, or another OpenClaw runtime is using the same account. \" +\n `Check 'openclaw matrix verify status --verbose --account ${accountId}' and 'openclaw matrix devices list --account ${accountId}'.`\n );\n}\n\nasync function resolveMatrixSelfUserId(\n client: MatrixClient,\n logVerboseMessage: (message: string) => void,\n): Promise<string | null> {\n if (typeof client.getUserId !== \"function\") {\n return null;\n }\n try {\n return (await client.getUserId()) ?? null;\n } catch (err) {\n logVerboseMessage(`matrix: failed resolving self user id for decrypt warning: ${String(err)}`);\n return null;\n }\n}\n\nexport function registerMatrixMonitorEvents(params: {\n cfg: CoreConfig;\n client: MatrixClient;\n auth: MatrixAuth;\n allowFrom: string[];\n dmEnabled: boolean;\n dmPolicy: \"open\" | \"pairing\" | \"allowlist\" | \"disabled\";\n readStoreAllowFrom: () => Promise<string[]>;\n directTracker?: {\n invalidateRoom: (roomId: string) => void;\n rememberInvite?: (roomId: string, remoteUserId: string) => void;\n };\n logVerboseMessage: (message: string) => void;\n warnedEncryptedRooms: Set<string>;\n warnedCryptoMissingRooms: Set<string>;\n logger: RuntimeLogger;\n formatNativeDependencyHint: PluginRuntime[\"system\"][\"formatNativeDependencyHint\"];\n onRoomMessage: (roomId: string, event: MatrixRawEvent) => void | Promise<void>;\n runDetachedTask?: (label: string, task: () => Promise<void>) => Promise<void>;\n}): void {\n const {\n cfg,\n client,\n auth,\n allowFrom,\n dmEnabled,\n dmPolicy,\n readStoreAllowFrom,\n directTracker,\n logVerboseMessage,\n warnedEncryptedRooms,\n warnedCryptoMissingRooms,\n logger,\n formatNativeDependencyHint,\n onRoomMessage,\n runDetachedTask,\n } = params;\n const { routeVerificationEvent, routeVerificationSummary } = createMatrixVerificationEventRouter({\n client,\n allowFrom,\n dmEnabled,\n dmPolicy,\n readStoreAllowFrom,\n logVerboseMessage,\n });\n\n const runMonitorTask = (label: string, task: () => Promise<void>) => {\n if (runDetachedTask) {\n return runDetachedTask(label, task);\n }\n return Promise.resolve()\n .then(task)\n .catch((error) => {\n logVerboseMessage(`matrix: ${label} failed (${String(error)})`);\n });\n };\n\n client.on(\"room.message\", (roomId: string, event: MatrixRawEvent) => {\n if (routeVerificationEvent(roomId, event)) {\n return;\n }\n void runMonitorTask(\n `room message handler room=${roomId} id=${event.event_id ?? \"unknown\"}`,\n async () => {\n await onRoomMessage(roomId, event);\n },\n );\n });\n\n client.on(\"room.encrypted_event\", (roomId: string, event: MatrixRawEvent) => {\n const eventId = event?.event_id ?? \"unknown\";\n const eventType = event?.type ?? \"unknown\";\n logVerboseMessage(`matrix: encrypted event room=${roomId} type=${eventType} id=${eventId}`);\n });\n\n client.on(\"room.decrypted_event\", (roomId: string, event: MatrixRawEvent) => {\n const eventId = event?.event_id ?? \"unknown\";\n const eventType = event?.type ?? \"unknown\";\n logVerboseMessage(`matrix: decrypted event room=${roomId} type=${eventType} id=${eventId}`);\n });\n\n client.on(\n \"room.failed_decryption\",\n async (roomId: string, event: MatrixRawEvent, error: Error) => {\n const selfUserId = await resolveMatrixSelfUserId(client, logVerboseMessage);\n const sender = typeof event.sender === \"string\" ? event.sender : null;\n const senderMatchesOwnUser = Boolean(selfUserId && sender && selfUserId === sender);\n logger.warn(\"Failed to decrypt message\", {\n roomId,\n eventId: event.event_id,\n sender,\n senderMatchesOwnUser,\n error: error.message,\n });\n if (senderMatchesOwnUser) {\n logger.warn(formatMatrixSelfDecryptionHint(auth.accountId), {\n roomId,\n eventId: event.event_id,\n sender,\n });\n }\n logVerboseMessage(\n `matrix: failed decrypt room=${roomId} id=${event.event_id ?? \"unknown\"} error=${error.message}`,\n );\n },\n );\n\n client.on(\"verification.summary\", (summary) => {\n void runMonitorTask(\"verification summary handler\", async () => {\n await routeVerificationSummary(summary);\n });\n });\n\n client.on(\"room.invite\", (roomId: string, event: MatrixRawEvent) => {\n directTracker?.invalidateRoom(roomId);\n const eventId = event?.event_id ?? \"unknown\";\n const sender = event?.sender ?? \"unknown\";\n const invitee = normalizeOptionalString(event?.state_key) ?? \"\";\n const senderIsInvitee =\n Boolean(invitee) && (normalizeOptionalString(event?.sender) ?? \"\") === invitee;\n const isDirect = (event?.content as { is_direct?: boolean } | undefined)?.is_direct === true;\n const rememberedSender = normalizeOptionalString(event?.sender);\n if (rememberedSender && !senderIsInvitee) {\n directTracker?.rememberInvite?.(roomId, rememberedSender);\n }\n logVerboseMessage(\n `matrix: invite room=${roomId} sender=${sender} direct=${String(isDirect)} id=${eventId}`,\n );\n });\n\n client.on(\"room.join\", (roomId: string, event: MatrixRawEvent) => {\n directTracker?.invalidateRoom(roomId);\n const eventId = event?.event_id ?? \"unknown\";\n logVerboseMessage(`matrix: join room=${roomId} id=${eventId}`);\n });\n\n client.on(\"room.event\", (roomId: string, event: MatrixRawEvent) => {\n const eventType = event?.type ?? \"unknown\";\n if (eventType === EventType.RoomMessageEncrypted) {\n logVerboseMessage(\n `matrix: encrypted raw event room=${roomId} id=${event?.event_id ?? \"unknown\"}`,\n );\n if (auth.encryption !== true && !warnedEncryptedRooms.has(roomId)) {\n warnedEncryptedRooms.add(roomId);\n const warning = formatMatrixEncryptedEventDisabledWarning(cfg, auth.accountId);\n logger.warn(warning, { roomId });\n }\n if (auth.encryption === true && !client.crypto && !warnedCryptoMissingRooms.has(roomId)) {\n warnedCryptoMissingRooms.add(roomId);\n const hint = formatNativeDependencyHint({\n packageName: \"@matrix-org/matrix-sdk-crypto-nodejs\",\n manager: \"pnpm\",\n downloadCommand: \"node node_modules/@matrix-org/matrix-sdk-crypto-nodejs/download-lib.js\",\n });\n const warning = `matrix: encryption enabled but crypto is unavailable; ${hint}`;\n logger.warn(warning, { roomId });\n }\n return;\n }\n if (eventType === EventType.RoomMember) {\n directTracker?.invalidateRoom(roomId);\n const membership = (event?.content as { membership?: string } | undefined)?.membership;\n const stateKey = (event as { state_key?: string }).state_key ?? \"\";\n logVerboseMessage(\n `matrix: member event room=${roomId} stateKey=${stateKey} membership=${membership ?? \"unknown\"}`,\n );\n }\n if (eventType === EventType.Reaction) {\n void runMonitorTask(\n `reaction handler room=${roomId} id=${event.event_id ?? \"unknown\"}`,\n async () => {\n await onRoomMessage(roomId, event);\n },\n );\n return;\n }\n\n routeVerificationEvent(roomId, event);\n });\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import {
|
|
2
|
+
resolveLegacyMatrixFlatStoreTarget
|
|
3
|
+
} from "./chunk-GNYG6I36.js";
|
|
4
|
+
import {
|
|
5
|
+
resolveMatrixLegacyFlatStoragePaths
|
|
6
|
+
} from "./chunk-MH74AJ3A.js";
|
|
7
|
+
import {
|
|
8
|
+
init_shims
|
|
9
|
+
} from "./chunk-7FLQSTPG.js";
|
|
10
|
+
|
|
11
|
+
// src/legacy-state.ts
|
|
12
|
+
init_shims();
|
|
13
|
+
import fs from "node:fs";
|
|
14
|
+
import os from "node:os";
|
|
15
|
+
import path from "node:path";
|
|
16
|
+
import { resolveStateDir } from "openclaw/plugin-sdk/state-paths";
|
|
17
|
+
function resolveLegacyMatrixPaths(env) {
|
|
18
|
+
const stateDir = resolveStateDir(env, os.homedir);
|
|
19
|
+
return resolveMatrixLegacyFlatStoragePaths(stateDir);
|
|
20
|
+
}
|
|
21
|
+
function resolveMatrixMigrationPlan(params) {
|
|
22
|
+
const legacy = resolveLegacyMatrixPaths(params.env);
|
|
23
|
+
if (!fs.existsSync(legacy.storagePath) && !fs.existsSync(legacy.cryptoPath)) {
|
|
24
|
+
return null;
|
|
25
|
+
}
|
|
26
|
+
const target = resolveLegacyMatrixFlatStoreTarget({
|
|
27
|
+
cfg: params.cfg,
|
|
28
|
+
env: params.env,
|
|
29
|
+
detectedPath: legacy.rootDir,
|
|
30
|
+
detectedKind: "state"
|
|
31
|
+
});
|
|
32
|
+
if ("warning" in target) {
|
|
33
|
+
return target;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
accountId: target.accountId,
|
|
37
|
+
legacyStoragePath: legacy.storagePath,
|
|
38
|
+
legacyCryptoPath: legacy.cryptoPath,
|
|
39
|
+
targetRootDir: target.rootDir,
|
|
40
|
+
targetStoragePath: path.join(target.rootDir, "bot-storage.json"),
|
|
41
|
+
targetCryptoPath: path.join(target.rootDir, "crypto"),
|
|
42
|
+
selectionNote: target.selectionNote
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
function detectLegacyMatrixState(params) {
|
|
46
|
+
return resolveMatrixMigrationPlan({
|
|
47
|
+
cfg: params.cfg,
|
|
48
|
+
env: params.env ?? process.env
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
function moveLegacyPath(params) {
|
|
52
|
+
if (!fs.existsSync(params.sourcePath)) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
if (fs.existsSync(params.targetPath)) {
|
|
56
|
+
params.warnings.push(
|
|
57
|
+
`Matrix legacy ${params.label} not migrated because the target already exists (${params.targetPath}).`
|
|
58
|
+
);
|
|
59
|
+
return;
|
|
60
|
+
}
|
|
61
|
+
try {
|
|
62
|
+
fs.mkdirSync(path.dirname(params.targetPath), { recursive: true });
|
|
63
|
+
fs.renameSync(params.sourcePath, params.targetPath);
|
|
64
|
+
params.changes.push(
|
|
65
|
+
`Migrated Matrix legacy ${params.label}: ${params.sourcePath} -> ${params.targetPath}`
|
|
66
|
+
);
|
|
67
|
+
} catch (err) {
|
|
68
|
+
params.warnings.push(
|
|
69
|
+
`Failed migrating Matrix legacy ${params.label} (${params.sourcePath} -> ${params.targetPath}): ${String(err)}`
|
|
70
|
+
);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
async function autoMigrateLegacyMatrixState(params) {
|
|
74
|
+
const env = params.env ?? process.env;
|
|
75
|
+
const detection = detectLegacyMatrixState({ cfg: params.cfg, env });
|
|
76
|
+
if (!detection) {
|
|
77
|
+
return { migrated: false, changes: [], warnings: [] };
|
|
78
|
+
}
|
|
79
|
+
if ("warning" in detection) {
|
|
80
|
+
params.log?.warn?.(`matrix: ${detection.warning}`);
|
|
81
|
+
return { migrated: false, changes: [], warnings: [detection.warning] };
|
|
82
|
+
}
|
|
83
|
+
const changes = [];
|
|
84
|
+
const warnings = [];
|
|
85
|
+
moveLegacyPath({
|
|
86
|
+
sourcePath: detection.legacyStoragePath,
|
|
87
|
+
targetPath: detection.targetStoragePath,
|
|
88
|
+
label: "sync store",
|
|
89
|
+
changes,
|
|
90
|
+
warnings
|
|
91
|
+
});
|
|
92
|
+
moveLegacyPath({
|
|
93
|
+
sourcePath: detection.legacyCryptoPath,
|
|
94
|
+
targetPath: detection.targetCryptoPath,
|
|
95
|
+
label: "crypto store",
|
|
96
|
+
changes,
|
|
97
|
+
warnings
|
|
98
|
+
});
|
|
99
|
+
if (changes.length > 0) {
|
|
100
|
+
const details = [
|
|
101
|
+
...changes.map((entry) => `- ${entry}`),
|
|
102
|
+
...detection.selectionNote ? [`- ${detection.selectionNote}`] : [],
|
|
103
|
+
"- No user action required."
|
|
104
|
+
];
|
|
105
|
+
params.log?.info?.(
|
|
106
|
+
`matrix: plugin upgraded in place for account "${detection.accountId}".
|
|
107
|
+
${details.join("\n")}`
|
|
108
|
+
);
|
|
109
|
+
}
|
|
110
|
+
if (warnings.length > 0) {
|
|
111
|
+
params.log?.warn?.(
|
|
112
|
+
`matrix: legacy state migration warnings:
|
|
113
|
+
${warnings.map((entry) => `- ${entry}`).join("\n")}`
|
|
114
|
+
);
|
|
115
|
+
}
|
|
116
|
+
return {
|
|
117
|
+
migrated: changes.length > 0,
|
|
118
|
+
changes,
|
|
119
|
+
warnings
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
export {
|
|
124
|
+
detectLegacyMatrixState,
|
|
125
|
+
autoMigrateLegacyMatrixState
|
|
126
|
+
};
|
|
127
|
+
//# sourceMappingURL=chunk-MEI5HTWV.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/legacy-state.ts"],
|
|
4
|
+
"sourcesContent": ["import fs from \"node:fs\";\nimport os from \"node:os\";\nimport path from \"node:path\";\nimport type { OpenClawConfig } from \"openclaw/plugin-sdk/config-runtime\";\nimport { resolveStateDir } from \"openclaw/plugin-sdk/state-paths\";\nimport { resolveLegacyMatrixFlatStoreTarget } from \"./migration-config.js\";\nimport { resolveMatrixLegacyFlatStoragePaths } from \"./storage-paths.js\";\n\nexport type MatrixLegacyStateMigrationResult = {\n migrated: boolean;\n changes: string[];\n warnings: string[];\n};\n\ntype MatrixLegacyStatePlan = {\n accountId: string;\n legacyStoragePath: string;\n legacyCryptoPath: string;\n targetRootDir: string;\n targetStoragePath: string;\n targetCryptoPath: string;\n selectionNote?: string;\n};\n\nfunction resolveLegacyMatrixPaths(env: NodeJS.ProcessEnv): {\n rootDir: string;\n storagePath: string;\n cryptoPath: string;\n} {\n const stateDir = resolveStateDir(env, os.homedir);\n return resolveMatrixLegacyFlatStoragePaths(stateDir);\n}\n\nfunction resolveMatrixMigrationPlan(params: {\n cfg: OpenClawConfig;\n env: NodeJS.ProcessEnv;\n}): MatrixLegacyStatePlan | { warning: string } | null {\n const legacy = resolveLegacyMatrixPaths(params.env);\n if (!fs.existsSync(legacy.storagePath) && !fs.existsSync(legacy.cryptoPath)) {\n return null;\n }\n\n const target = resolveLegacyMatrixFlatStoreTarget({\n cfg: params.cfg,\n env: params.env,\n detectedPath: legacy.rootDir,\n detectedKind: \"state\",\n });\n if (\"warning\" in target) {\n return target;\n }\n\n return {\n accountId: target.accountId,\n legacyStoragePath: legacy.storagePath,\n legacyCryptoPath: legacy.cryptoPath,\n targetRootDir: target.rootDir,\n targetStoragePath: path.join(target.rootDir, \"bot-storage.json\"),\n targetCryptoPath: path.join(target.rootDir, \"crypto\"),\n selectionNote: target.selectionNote,\n };\n}\n\nexport function detectLegacyMatrixState(params: {\n cfg: OpenClawConfig;\n env?: NodeJS.ProcessEnv;\n}): MatrixLegacyStatePlan | { warning: string } | null {\n return resolveMatrixMigrationPlan({\n cfg: params.cfg,\n env: params.env ?? process.env,\n });\n}\n\nfunction moveLegacyPath(params: {\n sourcePath: string;\n targetPath: string;\n label: string;\n changes: string[];\n warnings: string[];\n}): void {\n if (!fs.existsSync(params.sourcePath)) {\n return;\n }\n if (fs.existsSync(params.targetPath)) {\n params.warnings.push(\n `Matrix legacy ${params.label} not migrated because the target already exists (${params.targetPath}).`,\n );\n return;\n }\n try {\n fs.mkdirSync(path.dirname(params.targetPath), { recursive: true });\n fs.renameSync(params.sourcePath, params.targetPath);\n params.changes.push(\n `Migrated Matrix legacy ${params.label}: ${params.sourcePath} -> ${params.targetPath}`,\n );\n } catch (err) {\n params.warnings.push(\n `Failed migrating Matrix legacy ${params.label} (${params.sourcePath} -> ${params.targetPath}): ${String(err)}`,\n );\n }\n}\n\nexport async function autoMigrateLegacyMatrixState(params: {\n cfg: OpenClawConfig;\n env?: NodeJS.ProcessEnv;\n log?: { info?: (message: string) => void; warn?: (message: string) => void };\n}): Promise<MatrixLegacyStateMigrationResult> {\n const env = params.env ?? process.env;\n const detection = detectLegacyMatrixState({ cfg: params.cfg, env });\n if (!detection) {\n return { migrated: false, changes: [], warnings: [] };\n }\n if (\"warning\" in detection) {\n params.log?.warn?.(`matrix: ${detection.warning}`);\n return { migrated: false, changes: [], warnings: [detection.warning] };\n }\n\n const changes: string[] = [];\n const warnings: string[] = [];\n moveLegacyPath({\n sourcePath: detection.legacyStoragePath,\n targetPath: detection.targetStoragePath,\n label: \"sync store\",\n changes,\n warnings,\n });\n moveLegacyPath({\n sourcePath: detection.legacyCryptoPath,\n targetPath: detection.targetCryptoPath,\n label: \"crypto store\",\n changes,\n warnings,\n });\n\n if (changes.length > 0) {\n const details = [\n ...changes.map((entry) => `- ${entry}`),\n ...(detection.selectionNote ? [`- ${detection.selectionNote}`] : []),\n \"- No user action required.\",\n ];\n params.log?.info?.(\n `matrix: plugin upgraded in place for account \"${detection.accountId}\".\\n${details.join(\"\\n\")}`,\n );\n }\n if (warnings.length > 0) {\n params.log?.warn?.(\n `matrix: legacy state migration warnings:\\n${warnings.map((entry) => `- ${entry}`).join(\"\\n\")}`,\n );\n }\n\n return {\n migrated: changes.length > 0,\n changes,\n warnings,\n };\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import {
|
|
2
|
+
init_shims
|
|
3
|
+
} from "./chunk-7FLQSTPG.js";
|
|
4
|
+
|
|
5
|
+
// src/storage-paths.ts
|
|
6
|
+
init_shims();
|
|
7
|
+
import crypto from "node:crypto";
|
|
8
|
+
import path from "node:path";
|
|
9
|
+
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-id";
|
|
10
|
+
import { normalizeLowercaseStringOrEmpty } from "openclaw/plugin-sdk/text-runtime";
|
|
11
|
+
function sanitizeMatrixPathSegment(value) {
|
|
12
|
+
const cleaned = normalizeLowercaseStringOrEmpty(value).replace(/[^a-z0-9._-]+/g, "_").replace(/^_+|_+$/g, "");
|
|
13
|
+
return cleaned || "unknown";
|
|
14
|
+
}
|
|
15
|
+
function resolveMatrixHomeserverKey(homeserver) {
|
|
16
|
+
try {
|
|
17
|
+
const url = new URL(homeserver);
|
|
18
|
+
if (url.host) {
|
|
19
|
+
return sanitizeMatrixPathSegment(url.host);
|
|
20
|
+
}
|
|
21
|
+
} catch {
|
|
22
|
+
}
|
|
23
|
+
return sanitizeMatrixPathSegment(homeserver);
|
|
24
|
+
}
|
|
25
|
+
function hashMatrixAccessToken(accessToken) {
|
|
26
|
+
return crypto.createHash("sha256").update(accessToken).digest("hex").slice(0, 16);
|
|
27
|
+
}
|
|
28
|
+
function resolveMatrixCredentialsFilename(accountId) {
|
|
29
|
+
const normalized = normalizeAccountId(accountId);
|
|
30
|
+
return normalized === DEFAULT_ACCOUNT_ID ? "credentials.json" : `credentials-${normalized}.json`;
|
|
31
|
+
}
|
|
32
|
+
function resolveMatrixCredentialsDir(stateDir) {
|
|
33
|
+
return path.join(stateDir, "credentials", "lobi");
|
|
34
|
+
}
|
|
35
|
+
function resolveMatrixCredentialsPath(params) {
|
|
36
|
+
return path.join(
|
|
37
|
+
resolveMatrixCredentialsDir(params.stateDir),
|
|
38
|
+
resolveMatrixCredentialsFilename(params.accountId)
|
|
39
|
+
);
|
|
40
|
+
}
|
|
41
|
+
function resolveMatrixLegacyFlatStoreRoot(stateDir) {
|
|
42
|
+
return path.join(stateDir, "lobi");
|
|
43
|
+
}
|
|
44
|
+
function resolveMatrixLegacyFlatStoragePaths(stateDir) {
|
|
45
|
+
const rootDir = resolveMatrixLegacyFlatStoreRoot(stateDir);
|
|
46
|
+
return {
|
|
47
|
+
rootDir,
|
|
48
|
+
storagePath: path.join(rootDir, "bot-storage.json"),
|
|
49
|
+
cryptoPath: path.join(rootDir, "crypto")
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
function resolveMatrixAccountStorageRoot(params) {
|
|
53
|
+
const accountKey = sanitizeMatrixPathSegment(params.accountId ?? DEFAULT_ACCOUNT_ID);
|
|
54
|
+
const userKey = sanitizeMatrixPathSegment(params.userId);
|
|
55
|
+
const serverKey = resolveMatrixHomeserverKey(params.homeserver);
|
|
56
|
+
const tokenHash = hashMatrixAccessToken(params.accessToken);
|
|
57
|
+
return {
|
|
58
|
+
rootDir: path.join(
|
|
59
|
+
params.stateDir,
|
|
60
|
+
"lobi",
|
|
61
|
+
"accounts",
|
|
62
|
+
accountKey,
|
|
63
|
+
`${serverKey}__${userKey}`,
|
|
64
|
+
tokenHash
|
|
65
|
+
),
|
|
66
|
+
accountKey,
|
|
67
|
+
tokenHash
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
export {
|
|
72
|
+
sanitizeMatrixPathSegment,
|
|
73
|
+
resolveMatrixHomeserverKey,
|
|
74
|
+
hashMatrixAccessToken,
|
|
75
|
+
resolveMatrixCredentialsFilename,
|
|
76
|
+
resolveMatrixCredentialsDir,
|
|
77
|
+
resolveMatrixCredentialsPath,
|
|
78
|
+
resolveMatrixLegacyFlatStoreRoot,
|
|
79
|
+
resolveMatrixLegacyFlatStoragePaths,
|
|
80
|
+
resolveMatrixAccountStorageRoot
|
|
81
|
+
};
|
|
82
|
+
//# sourceMappingURL=chunk-MH74AJ3A.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/storage-paths.ts"],
|
|
4
|
+
"sourcesContent": ["import crypto from \"node:crypto\";\nimport path from \"node:path\";\nimport { DEFAULT_ACCOUNT_ID, normalizeAccountId } from \"openclaw/plugin-sdk/account-id\";\nimport { normalizeLowercaseStringOrEmpty } from \"openclaw/plugin-sdk/text-runtime\";\n\nexport function sanitizeMatrixPathSegment(value: string): string {\n const cleaned = normalizeLowercaseStringOrEmpty(value)\n .replace(/[^a-z0-9._-]+/g, \"_\")\n .replace(/^_+|_+$/g, \"\");\n return cleaned || \"unknown\";\n}\n\nexport function resolveMatrixHomeserverKey(homeserver: string): string {\n try {\n const url = new URL(homeserver);\n if (url.host) {\n return sanitizeMatrixPathSegment(url.host);\n }\n } catch {\n // fall through\n }\n return sanitizeMatrixPathSegment(homeserver);\n}\n\nexport function hashMatrixAccessToken(accessToken: string): string {\n return crypto.createHash(\"sha256\").update(accessToken).digest(\"hex\").slice(0, 16);\n}\n\nexport function resolveMatrixCredentialsFilename(accountId?: string | null): string {\n const normalized = normalizeAccountId(accountId);\n return normalized === DEFAULT_ACCOUNT_ID ? \"credentials.json\" : `credentials-${normalized}.json`;\n}\n\nexport function resolveMatrixCredentialsDir(stateDir: string): string {\n return path.join(stateDir, \"credentials\", \"lobi\");\n}\n\nexport function resolveMatrixCredentialsPath(params: {\n stateDir: string;\n accountId?: string | null;\n}): string {\n return path.join(\n resolveMatrixCredentialsDir(params.stateDir),\n resolveMatrixCredentialsFilename(params.accountId),\n );\n}\n\nexport function resolveMatrixLegacyFlatStoreRoot(stateDir: string): string {\n return path.join(stateDir, \"lobi\");\n}\n\nexport function resolveMatrixLegacyFlatStoragePaths(stateDir: string): {\n rootDir: string;\n storagePath: string;\n cryptoPath: string;\n} {\n const rootDir = resolveMatrixLegacyFlatStoreRoot(stateDir);\n return {\n rootDir,\n storagePath: path.join(rootDir, \"bot-storage.json\"),\n cryptoPath: path.join(rootDir, \"crypto\"),\n };\n}\n\nexport function resolveMatrixAccountStorageRoot(params: {\n stateDir: string;\n homeserver: string;\n userId: string;\n accessToken: string;\n accountId?: string | null;\n}): {\n rootDir: string;\n accountKey: string;\n tokenHash: string;\n} {\n const accountKey = sanitizeMatrixPathSegment(params.accountId ?? DEFAULT_ACCOUNT_ID);\n const userKey = sanitizeMatrixPathSegment(params.userId);\n const serverKey = resolveMatrixHomeserverKey(params.homeserver);\n const tokenHash = hashMatrixAccessToken(params.accessToken);\n return {\n rootDir: path.join(\n params.stateDir,\n \"lobi\",\n \"accounts\",\n accountKey,\n `${serverKey}__${userKey}`,\n tokenHash,\n ),\n accountKey,\n tokenHash,\n };\n}\n"],
|
|
5
|
+
"mappings": ";;;;;AAAA;AAAA,OAAO,YAAY;AACnB,OAAO,UAAU;AACjB,SAAS,oBAAoB,0BAA0B;AACvD,SAAS,uCAAuC;AAEzC,SAAS,0BAA0B,OAAuB;AAC/D,QAAM,UAAU,gCAAgC,KAAK,EAClD,QAAQ,kBAAkB,GAAG,EAC7B,QAAQ,YAAY,EAAE;AACzB,SAAO,WAAW;AACpB;AAEO,SAAS,2BAA2B,YAA4B;AACrE,MAAI;AACF,UAAM,MAAM,IAAI,IAAI,UAAU;AAC9B,QAAI,IAAI,MAAM;AACZ,aAAO,0BAA0B,IAAI,IAAI;AAAA,IAC3C;AAAA,EACF,QAAQ;AAAA,EAER;AACA,SAAO,0BAA0B,UAAU;AAC7C;AAEO,SAAS,sBAAsB,aAA6B;AACjE,SAAO,OAAO,WAAW,QAAQ,EAAE,OAAO,WAAW,EAAE,OAAO,KAAK,EAAE,MAAM,GAAG,EAAE;AAClF;AAEO,SAAS,iCAAiC,WAAmC;AAClF,QAAM,aAAa,mBAAmB,SAAS;AAC/C,SAAO,eAAe,qBAAqB,qBAAqB,eAAe,UAAU;AAC3F;AAEO,SAAS,4BAA4B,UAA0B;AACpE,SAAO,KAAK,KAAK,UAAU,eAAe,MAAM;AAClD;AAEO,SAAS,6BAA6B,QAGlC;AACT,SAAO,KAAK;AAAA,IACV,4BAA4B,OAAO,QAAQ;AAAA,IAC3C,iCAAiC,OAAO,SAAS;AAAA,EACnD;AACF;AAEO,SAAS,iCAAiC,UAA0B;AACzE,SAAO,KAAK,KAAK,UAAU,MAAM;AACnC;AAEO,SAAS,oCAAoC,UAIlD;AACA,QAAM,UAAU,iCAAiC,QAAQ;AACzD,SAAO;AAAA,IACL;AAAA,IACA,aAAa,KAAK,KAAK,SAAS,kBAAkB;AAAA,IAClD,YAAY,KAAK,KAAK,SAAS,QAAQ;AAAA,EACzC;AACF;AAEO,SAAS,gCAAgC,QAU9C;AACA,QAAM,aAAa,0BAA0B,OAAO,aAAa,kBAAkB;AACnF,QAAM,UAAU,0BAA0B,OAAO,MAAM;AACvD,QAAM,YAAY,2BAA2B,OAAO,UAAU;AAC9D,QAAM,YAAY,sBAAsB,OAAO,WAAW;AAC1D,SAAO;AAAA,IACL,SAAS,KAAK;AAAA,MACZ,OAAO;AAAA,MACP;AAAA,MACA;AAAA,MACA;AAAA,MACA,GAAG,SAAS,KAAK,OAAO;AAAA,MACxB;AAAA,IACF;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import {
|
|
2
|
+
credentialsMatchConfig,
|
|
3
|
+
loadMatrixCredentials
|
|
4
|
+
} from "./chunk-2ZEPAW7U.js";
|
|
5
|
+
import {
|
|
6
|
+
resolveGlobalMatrixEnvConfig,
|
|
7
|
+
resolveScopedMatrixEnvConfig
|
|
8
|
+
} from "./chunk-ZJHBJWZX.js";
|
|
9
|
+
import {
|
|
10
|
+
findMatrixAccountConfig,
|
|
11
|
+
resolveMatrixAccountConfig,
|
|
12
|
+
resolveMatrixBaseConfig
|
|
13
|
+
} from "./chunk-HP5HMWOM.js";
|
|
14
|
+
import {
|
|
15
|
+
resolveConfiguredMatrixAccountIds,
|
|
16
|
+
resolveMatrixDefaultOrOnlyAccountId
|
|
17
|
+
} from "./chunk-UU5PSBSI.js";
|
|
18
|
+
import {
|
|
19
|
+
resolveMatrixAccountStringValues
|
|
20
|
+
} from "./chunk-SSEX66OL.js";
|
|
21
|
+
import {
|
|
22
|
+
init_shims
|
|
23
|
+
} from "./chunk-7FLQSTPG.js";
|
|
24
|
+
|
|
25
|
+
// src/matrix/accounts.ts
|
|
26
|
+
init_shims();
|
|
27
|
+
import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from "openclaw/plugin-sdk/account-id";
|
|
28
|
+
import { hasConfiguredSecretInput } from "openclaw/plugin-sdk/secret-input";
|
|
29
|
+
import { normalizeOptionalString } from "openclaw/plugin-sdk/text-runtime";
|
|
30
|
+
function clean(value) {
|
|
31
|
+
return normalizeOptionalString(value) ?? "";
|
|
32
|
+
}
|
|
33
|
+
function resolveMatrixAccountAuthView(params) {
|
|
34
|
+
const normalizedAccountId = normalizeAccountId(params.accountId);
|
|
35
|
+
const matrix = resolveMatrixBaseConfig(params.cfg);
|
|
36
|
+
const account = findMatrixAccountConfig(params.cfg, normalizedAccountId) ?? {};
|
|
37
|
+
const resolvedStrings = resolveMatrixAccountStringValues({
|
|
38
|
+
accountId: normalizedAccountId,
|
|
39
|
+
account: {
|
|
40
|
+
homeserver: clean(account.homeserver),
|
|
41
|
+
userId: clean(account.userId),
|
|
42
|
+
accessToken: typeof account.accessToken === "string" ? clean(account.accessToken) : "",
|
|
43
|
+
password: typeof account.password === "string" ? clean(account.password) : "",
|
|
44
|
+
deviceId: clean(account.deviceId),
|
|
45
|
+
deviceName: clean(account.deviceName)
|
|
46
|
+
},
|
|
47
|
+
scopedEnv: resolveScopedMatrixEnvConfig(normalizedAccountId, params.env),
|
|
48
|
+
channel: {
|
|
49
|
+
homeserver: clean(matrix.homeserver),
|
|
50
|
+
userId: clean(matrix.userId),
|
|
51
|
+
accessToken: typeof matrix.accessToken === "string" ? clean(matrix.accessToken) : "",
|
|
52
|
+
password: typeof matrix.password === "string" ? clean(matrix.password) : "",
|
|
53
|
+
deviceId: clean(matrix.deviceId),
|
|
54
|
+
deviceName: clean(matrix.deviceName)
|
|
55
|
+
},
|
|
56
|
+
globalEnv: resolveGlobalMatrixEnvConfig(params.env)
|
|
57
|
+
});
|
|
58
|
+
return {
|
|
59
|
+
homeserver: resolvedStrings.homeserver,
|
|
60
|
+
userId: resolvedStrings.userId,
|
|
61
|
+
accessToken: resolvedStrings.accessToken || void 0,
|
|
62
|
+
password: resolvedStrings.password || void 0
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
function resolveMatrixAccountUserId(params) {
|
|
66
|
+
const env = params.env ?? process.env;
|
|
67
|
+
const authView = resolveMatrixAccountAuthView({
|
|
68
|
+
cfg: params.cfg,
|
|
69
|
+
accountId: params.accountId,
|
|
70
|
+
env
|
|
71
|
+
});
|
|
72
|
+
const configuredUserId = authView.userId.trim();
|
|
73
|
+
if (configuredUserId) {
|
|
74
|
+
return configuredUserId;
|
|
75
|
+
}
|
|
76
|
+
const stored = loadMatrixCredentials(env, params.accountId);
|
|
77
|
+
if (!stored) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
if (authView.homeserver && stored.homeserver !== authView.homeserver) {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
if (authView.accessToken && stored.accessToken !== authView.accessToken) {
|
|
84
|
+
return null;
|
|
85
|
+
}
|
|
86
|
+
return stored.userId.trim() || null;
|
|
87
|
+
}
|
|
88
|
+
function listMatrixAccountIds(cfg) {
|
|
89
|
+
const ids = resolveConfiguredMatrixAccountIds(cfg, process.env);
|
|
90
|
+
return ids.length > 0 ? ids : [DEFAULT_ACCOUNT_ID];
|
|
91
|
+
}
|
|
92
|
+
function resolveDefaultMatrixAccountId(cfg) {
|
|
93
|
+
return normalizeAccountId(resolveMatrixDefaultOrOnlyAccountId(cfg));
|
|
94
|
+
}
|
|
95
|
+
function resolveConfiguredMatrixBotUserIds(params) {
|
|
96
|
+
const env = params.env ?? process.env;
|
|
97
|
+
const currentAccountId = normalizeAccountId(params.accountId);
|
|
98
|
+
const accountIds = new Set(resolveConfiguredMatrixAccountIds(params.cfg, env));
|
|
99
|
+
if (resolveMatrixAccount({ cfg: params.cfg, accountId: DEFAULT_ACCOUNT_ID, env }).configured) {
|
|
100
|
+
accountIds.add(DEFAULT_ACCOUNT_ID);
|
|
101
|
+
}
|
|
102
|
+
const ids = /* @__PURE__ */ new Set();
|
|
103
|
+
for (const accountId of accountIds) {
|
|
104
|
+
if (normalizeAccountId(accountId) === currentAccountId) {
|
|
105
|
+
continue;
|
|
106
|
+
}
|
|
107
|
+
if (!resolveMatrixAccount({ cfg: params.cfg, accountId, env }).configured) {
|
|
108
|
+
continue;
|
|
109
|
+
}
|
|
110
|
+
const userId = resolveMatrixAccountUserId({
|
|
111
|
+
cfg: params.cfg,
|
|
112
|
+
accountId,
|
|
113
|
+
env
|
|
114
|
+
});
|
|
115
|
+
if (userId) {
|
|
116
|
+
ids.add(userId);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return ids;
|
|
120
|
+
}
|
|
121
|
+
function resolveMatrixAccount(params) {
|
|
122
|
+
const env = params.env ?? process.env;
|
|
123
|
+
const accountId = normalizeAccountId(
|
|
124
|
+
params.accountId ?? resolveDefaultMatrixAccountId(params.cfg)
|
|
125
|
+
);
|
|
126
|
+
const matrixBase = resolveMatrixBaseConfig(params.cfg);
|
|
127
|
+
const base = resolveMatrixAccountConfig({ cfg: params.cfg, accountId, env });
|
|
128
|
+
const explicitAuthConfig = accountId === DEFAULT_ACCOUNT_ID ? base : findMatrixAccountConfig(params.cfg, accountId) ?? {};
|
|
129
|
+
const enabled = base.enabled !== false && matrixBase.enabled !== false;
|
|
130
|
+
const authView = resolveMatrixAccountAuthView({
|
|
131
|
+
cfg: params.cfg,
|
|
132
|
+
accountId,
|
|
133
|
+
env
|
|
134
|
+
});
|
|
135
|
+
const hasHomeserver = Boolean(authView.homeserver);
|
|
136
|
+
const hasUserId = Boolean(authView.userId);
|
|
137
|
+
const hasAccessToken = Boolean(authView.accessToken) || hasConfiguredSecretInput(explicitAuthConfig.accessToken);
|
|
138
|
+
const hasPassword = Boolean(authView.password);
|
|
139
|
+
const hasPasswordAuth = hasUserId && (hasPassword || hasConfiguredSecretInput(explicitAuthConfig.password));
|
|
140
|
+
const stored = loadMatrixCredentials(env, accountId);
|
|
141
|
+
const hasStored = stored && authView.homeserver ? credentialsMatchConfig(stored, {
|
|
142
|
+
homeserver: authView.homeserver,
|
|
143
|
+
userId: authView.userId || ""
|
|
144
|
+
}) : false;
|
|
145
|
+
const configured = hasHomeserver && (hasAccessToken || hasPasswordAuth || hasStored);
|
|
146
|
+
return {
|
|
147
|
+
accountId,
|
|
148
|
+
enabled,
|
|
149
|
+
name: normalizeOptionalString(base.name),
|
|
150
|
+
configured,
|
|
151
|
+
homeserver: authView.homeserver || void 0,
|
|
152
|
+
userId: authView.userId || void 0,
|
|
153
|
+
config: base
|
|
154
|
+
};
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
export {
|
|
158
|
+
listMatrixAccountIds,
|
|
159
|
+
resolveDefaultMatrixAccountId,
|
|
160
|
+
resolveConfiguredMatrixBotUserIds,
|
|
161
|
+
resolveMatrixAccount
|
|
162
|
+
};
|
|
163
|
+
//# sourceMappingURL=chunk-MIFIM4PI.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/matrix/accounts.ts"],
|
|
4
|
+
"sourcesContent": ["import { DEFAULT_ACCOUNT_ID, normalizeAccountId } from \"openclaw/plugin-sdk/account-id\";\nimport { hasConfiguredSecretInput } from \"openclaw/plugin-sdk/secret-input\";\nimport { normalizeOptionalString } from \"openclaw/plugin-sdk/text-runtime\";\nimport {\n resolveConfiguredMatrixAccountIds,\n resolveMatrixDefaultOrOnlyAccountId,\n} from \"../account-selection.js\";\nimport { resolveMatrixAccountStringValues } from \"../auth-precedence.js\";\nimport type { CoreConfig, MatrixConfig } from \"../types.js\";\nimport {\n findMatrixAccountConfig,\n resolveMatrixAccountConfig,\n resolveMatrixBaseConfig,\n} from \"./account-config.js\";\nimport { resolveGlobalMatrixEnvConfig, resolveScopedMatrixEnvConfig } from \"./client/env-auth.js\";\nimport { credentialsMatchConfig, loadMatrixCredentials } from \"./credentials-read.js\";\n\nexport type ResolvedMatrixAccount = {\n accountId: string;\n enabled: boolean;\n name?: string;\n configured: boolean;\n homeserver?: string;\n userId?: string;\n config: MatrixConfig;\n};\n\nfunction clean(value: unknown): string {\n return normalizeOptionalString(value) ?? \"\";\n}\n\nfunction resolveMatrixAccountAuthView(params: {\n cfg: CoreConfig;\n accountId: string;\n env: NodeJS.ProcessEnv;\n}): {\n homeserver: string;\n userId: string;\n accessToken?: string;\n password?: string;\n} {\n const normalizedAccountId = normalizeAccountId(params.accountId);\n const matrix = resolveMatrixBaseConfig(params.cfg);\n const account = findMatrixAccountConfig(params.cfg, normalizedAccountId) ?? {};\n const resolvedStrings = resolveMatrixAccountStringValues({\n accountId: normalizedAccountId,\n account: {\n homeserver: clean(account.homeserver),\n userId: clean(account.userId),\n accessToken: typeof account.accessToken === \"string\" ? clean(account.accessToken) : \"\",\n password: typeof account.password === \"string\" ? clean(account.password) : \"\",\n deviceId: clean(account.deviceId),\n deviceName: clean(account.deviceName),\n },\n scopedEnv: resolveScopedMatrixEnvConfig(normalizedAccountId, params.env),\n channel: {\n homeserver: clean(matrix.homeserver),\n userId: clean(matrix.userId),\n accessToken: typeof matrix.accessToken === \"string\" ? clean(matrix.accessToken) : \"\",\n password: typeof matrix.password === \"string\" ? clean(matrix.password) : \"\",\n deviceId: clean(matrix.deviceId),\n deviceName: clean(matrix.deviceName),\n },\n globalEnv: resolveGlobalMatrixEnvConfig(params.env),\n });\n return {\n homeserver: resolvedStrings.homeserver,\n userId: resolvedStrings.userId,\n accessToken: resolvedStrings.accessToken || undefined,\n password: resolvedStrings.password || undefined,\n };\n}\n\nfunction resolveMatrixAccountUserId(params: {\n cfg: CoreConfig;\n accountId: string;\n env?: NodeJS.ProcessEnv;\n}): string | null {\n const env = params.env ?? process.env;\n const authView = resolveMatrixAccountAuthView({\n cfg: params.cfg,\n accountId: params.accountId,\n env,\n });\n const configuredUserId = authView.userId.trim();\n if (configuredUserId) {\n return configuredUserId;\n }\n\n const stored = loadMatrixCredentials(env, params.accountId);\n if (!stored) {\n return null;\n }\n if (authView.homeserver && stored.homeserver !== authView.homeserver) {\n return null;\n }\n if (authView.accessToken && stored.accessToken !== authView.accessToken) {\n return null;\n }\n return stored.userId.trim() || null;\n}\n\nexport function listMatrixAccountIds(cfg: CoreConfig): string[] {\n const ids = resolveConfiguredMatrixAccountIds(cfg, process.env);\n return ids.length > 0 ? ids : [DEFAULT_ACCOUNT_ID];\n}\n\nexport function resolveDefaultMatrixAccountId(cfg: CoreConfig): string {\n return normalizeAccountId(resolveMatrixDefaultOrOnlyAccountId(cfg));\n}\n\nexport function resolveConfiguredMatrixBotUserIds(params: {\n cfg: CoreConfig;\n accountId?: string | null;\n env?: NodeJS.ProcessEnv;\n}): Set<string> {\n const env = params.env ?? process.env;\n const currentAccountId = normalizeAccountId(params.accountId);\n const accountIds = new Set(resolveConfiguredMatrixAccountIds(params.cfg, env));\n if (resolveMatrixAccount({ cfg: params.cfg, accountId: DEFAULT_ACCOUNT_ID, env }).configured) {\n accountIds.add(DEFAULT_ACCOUNT_ID);\n }\n const ids = new Set<string>();\n\n for (const accountId of accountIds) {\n if (normalizeAccountId(accountId) === currentAccountId) {\n continue;\n }\n if (!resolveMatrixAccount({ cfg: params.cfg, accountId, env }).configured) {\n continue;\n }\n const userId = resolveMatrixAccountUserId({\n cfg: params.cfg,\n accountId,\n env,\n });\n if (userId) {\n ids.add(userId);\n }\n }\n\n return ids;\n}\n\nexport function resolveMatrixAccount(params: {\n cfg: CoreConfig;\n accountId?: string | null;\n env?: NodeJS.ProcessEnv;\n}): ResolvedMatrixAccount {\n const env = params.env ?? process.env;\n const accountId = normalizeAccountId(\n params.accountId ?? resolveDefaultMatrixAccountId(params.cfg),\n );\n const matrixBase = resolveMatrixBaseConfig(params.cfg);\n const base = resolveMatrixAccountConfig({ cfg: params.cfg, accountId, env });\n const explicitAuthConfig =\n accountId === DEFAULT_ACCOUNT_ID\n ? base\n : (findMatrixAccountConfig(params.cfg, accountId) ?? {});\n const enabled = base.enabled !== false && matrixBase.enabled !== false;\n\n const authView = resolveMatrixAccountAuthView({\n cfg: params.cfg,\n accountId,\n env,\n });\n const hasHomeserver = Boolean(authView.homeserver);\n const hasUserId = Boolean(authView.userId);\n const hasAccessToken =\n Boolean(authView.accessToken) || hasConfiguredSecretInput(explicitAuthConfig.accessToken);\n const hasPassword = Boolean(authView.password);\n const hasPasswordAuth =\n hasUserId && (hasPassword || hasConfiguredSecretInput(explicitAuthConfig.password));\n const stored = loadMatrixCredentials(env, accountId);\n const hasStored =\n stored && authView.homeserver\n ? credentialsMatchConfig(stored, {\n homeserver: authView.homeserver,\n userId: authView.userId || \"\",\n })\n : false;\n const configured = hasHomeserver && (hasAccessToken || hasPasswordAuth || hasStored);\n return {\n accountId,\n enabled,\n name: normalizeOptionalString(base.name),\n configured,\n homeserver: authView.homeserver || undefined,\n userId: authView.userId || undefined,\n config: base,\n };\n}\n\nexport { resolveMatrixAccountConfig } from \"./account-config.js\";\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": []
|
|
7
|
+
}
|