@unwanted/matrix-sdk-mini 34.12.0-1
Sign up to get free protection for your applications and to get access to all the features.
- package/CHANGELOG.md +5910 -0
- package/LICENSE +177 -0
- package/README.md +459 -0
- package/git-revision.txt +1 -0
- package/lib/@types/AESEncryptedSecretStoragePayload.d.ts +14 -0
- package/lib/@types/AESEncryptedSecretStoragePayload.d.ts.map +1 -0
- package/lib/@types/AESEncryptedSecretStoragePayload.js +1 -0
- package/lib/@types/AESEncryptedSecretStoragePayload.js.map +1 -0
- package/lib/@types/IIdentityServerProvider.d.ts +9 -0
- package/lib/@types/IIdentityServerProvider.d.ts.map +1 -0
- package/lib/@types/IIdentityServerProvider.js +1 -0
- package/lib/@types/IIdentityServerProvider.js.map +1 -0
- package/lib/@types/PushRules.d.ts +140 -0
- package/lib/@types/PushRules.d.ts.map +1 -0
- package/lib/@types/PushRules.js +94 -0
- package/lib/@types/PushRules.js.map +1 -0
- package/lib/@types/another-json.d.js +0 -0
- package/lib/@types/another-json.d.js.map +1 -0
- package/lib/@types/auth.d.ts +208 -0
- package/lib/@types/auth.d.ts.map +1 -0
- package/lib/@types/auth.js +99 -0
- package/lib/@types/auth.js.map +1 -0
- package/lib/@types/beacon.d.ts +106 -0
- package/lib/@types/beacon.d.ts.map +1 -0
- package/lib/@types/beacon.js +119 -0
- package/lib/@types/beacon.js.map +1 -0
- package/lib/@types/common.d.ts +9 -0
- package/lib/@types/common.d.ts.map +1 -0
- package/lib/@types/common.js +1 -0
- package/lib/@types/common.js.map +1 -0
- package/lib/@types/crypto.d.ts +47 -0
- package/lib/@types/crypto.d.ts.map +1 -0
- package/lib/@types/crypto.js +1 -0
- package/lib/@types/crypto.js.map +1 -0
- package/lib/@types/event.d.ts +258 -0
- package/lib/@types/event.d.ts.map +1 -0
- package/lib/@types/event.js +239 -0
- package/lib/@types/event.js.map +1 -0
- package/lib/@types/events.d.ts +92 -0
- package/lib/@types/events.d.ts.map +1 -0
- package/lib/@types/events.js +1 -0
- package/lib/@types/events.js.map +1 -0
- package/lib/@types/extensible_events.d.ts +98 -0
- package/lib/@types/extensible_events.d.ts.map +1 -0
- package/lib/@types/extensible_events.js +116 -0
- package/lib/@types/extensible_events.js.map +1 -0
- package/lib/@types/global.d.js +20 -0
- package/lib/@types/global.d.js.map +1 -0
- package/lib/@types/local_notifications.d.ts +4 -0
- package/lib/@types/local_notifications.d.ts.map +1 -0
- package/lib/@types/local_notifications.js +1 -0
- package/lib/@types/local_notifications.js.map +1 -0
- package/lib/@types/location.d.ts +60 -0
- package/lib/@types/location.d.ts.map +1 -0
- package/lib/@types/location.js +67 -0
- package/lib/@types/location.js.map +1 -0
- package/lib/@types/matrix-sdk-crypto-wasm.d.js +1 -0
- package/lib/@types/matrix-sdk-crypto-wasm.d.js.map +1 -0
- package/lib/@types/media.d.ts +220 -0
- package/lib/@types/media.d.ts.map +1 -0
- package/lib/@types/media.js +1 -0
- package/lib/@types/media.js.map +1 -0
- package/lib/@types/membership.d.ts +41 -0
- package/lib/@types/membership.d.ts.map +1 -0
- package/lib/@types/membership.js +37 -0
- package/lib/@types/membership.js.map +1 -0
- package/lib/@types/oidc-client-ts.d.js +18 -0
- package/lib/@types/oidc-client-ts.d.js.map +1 -0
- package/lib/@types/partials.d.ts +39 -0
- package/lib/@types/partials.d.ts.map +1 -0
- package/lib/@types/partials.js +53 -0
- package/lib/@types/partials.js.map +1 -0
- package/lib/@types/polls.d.ts +88 -0
- package/lib/@types/polls.d.ts.map +1 -0
- package/lib/@types/polls.js +86 -0
- package/lib/@types/polls.js.map +1 -0
- package/lib/@types/read_receipts.d.ts +36 -0
- package/lib/@types/read_receipts.d.ts.map +1 -0
- package/lib/@types/read_receipts.js +27 -0
- package/lib/@types/read_receipts.js.map +1 -0
- package/lib/@types/registration.d.ts +85 -0
- package/lib/@types/registration.d.ts.map +1 -0
- package/lib/@types/registration.js +1 -0
- package/lib/@types/registration.js.map +1 -0
- package/lib/@types/requests.d.ts +241 -0
- package/lib/@types/requests.d.ts.map +1 -0
- package/lib/@types/requests.js +28 -0
- package/lib/@types/requests.js.map +1 -0
- package/lib/@types/search.d.ts +90 -0
- package/lib/@types/search.d.ts.map +1 -0
- package/lib/@types/search.js +30 -0
- package/lib/@types/search.js.map +1 -0
- package/lib/@types/signed.d.ts +9 -0
- package/lib/@types/signed.d.ts.map +1 -0
- package/lib/@types/signed.js +1 -0
- package/lib/@types/signed.js.map +1 -0
- package/lib/@types/spaces.d.ts +16 -0
- package/lib/@types/spaces.d.ts.map +1 -0
- package/lib/@types/spaces.js +1 -0
- package/lib/@types/spaces.js.map +1 -0
- package/lib/@types/state_events.d.ts +116 -0
- package/lib/@types/state_events.d.ts.map +1 -0
- package/lib/@types/state_events.js +1 -0
- package/lib/@types/state_events.js.map +1 -0
- package/lib/@types/synapse.d.ts +19 -0
- package/lib/@types/synapse.d.ts.map +1 -0
- package/lib/@types/synapse.js +1 -0
- package/lib/@types/synapse.js.map +1 -0
- package/lib/@types/sync.d.ts +8 -0
- package/lib/@types/sync.d.ts.map +1 -0
- package/lib/@types/sync.js +25 -0
- package/lib/@types/sync.js.map +1 -0
- package/lib/@types/threepids.d.ts +12 -0
- package/lib/@types/threepids.d.ts.map +1 -0
- package/lib/@types/threepids.js +24 -0
- package/lib/@types/threepids.js.map +1 -0
- package/lib/@types/topic.d.ts +48 -0
- package/lib/@types/topic.d.ts.map +1 -0
- package/lib/@types/topic.js +57 -0
- package/lib/@types/topic.js.map +1 -0
- package/lib/@types/uia.d.ts +12 -0
- package/lib/@types/uia.d.ts.map +1 -0
- package/lib/@types/uia.js +1 -0
- package/lib/@types/uia.js.map +1 -0
- package/lib/NamespacedValue.d.ts +33 -0
- package/lib/NamespacedValue.d.ts.map +1 -0
- package/lib/NamespacedValue.js +113 -0
- package/lib/NamespacedValue.js.map +1 -0
- package/lib/ReEmitter.d.ts +15 -0
- package/lib/ReEmitter.d.ts.map +1 -0
- package/lib/ReEmitter.js +87 -0
- package/lib/ReEmitter.js.map +1 -0
- package/lib/ToDeviceMessageQueue.d.ts +28 -0
- package/lib/ToDeviceMessageQueue.d.ts.map +1 -0
- package/lib/ToDeviceMessageQueue.js +135 -0
- package/lib/ToDeviceMessageQueue.js.map +1 -0
- package/lib/autodiscovery.d.ts +136 -0
- package/lib/autodiscovery.d.ts.map +1 -0
- package/lib/autodiscovery.js +464 -0
- package/lib/autodiscovery.js.map +1 -0
- package/lib/base64.d.ts +28 -0
- package/lib/base64.d.ts.map +1 -0
- package/lib/base64.js +88 -0
- package/lib/base64.js.map +1 -0
- package/lib/browser-index.d.ts +8 -0
- package/lib/browser-index.d.ts.map +1 -0
- package/lib/browser-index.js +35 -0
- package/lib/browser-index.js.map +1 -0
- package/lib/client.d.ts +4232 -0
- package/lib/client.d.ts.map +1 -0
- package/lib/client.js +8622 -0
- package/lib/client.js.map +1 -0
- package/lib/common-crypto/CryptoBackend.d.ts +240 -0
- package/lib/common-crypto/CryptoBackend.d.ts.map +1 -0
- package/lib/common-crypto/CryptoBackend.js +73 -0
- package/lib/common-crypto/CryptoBackend.js.map +1 -0
- package/lib/common-crypto/key-passphrase.d.ts +14 -0
- package/lib/common-crypto/key-passphrase.d.ts.map +1 -0
- package/lib/common-crypto/key-passphrase.js +33 -0
- package/lib/common-crypto/key-passphrase.js.map +1 -0
- package/lib/content-helpers.d.ts +90 -0
- package/lib/content-helpers.d.ts.map +1 -0
- package/lib/content-helpers.js +250 -0
- package/lib/content-helpers.js.map +1 -0
- package/lib/content-repo.d.ts +24 -0
- package/lib/content-repo.d.ts.map +1 -0
- package/lib/content-repo.js +104 -0
- package/lib/content-repo.js.map +1 -0
- package/lib/crypto/CrossSigning.d.ts +184 -0
- package/lib/crypto/CrossSigning.d.ts.map +1 -0
- package/lib/crypto/CrossSigning.js +718 -0
- package/lib/crypto/CrossSigning.js.map +1 -0
- package/lib/crypto/DeviceList.d.ts +216 -0
- package/lib/crypto/DeviceList.d.ts.map +1 -0
- package/lib/crypto/DeviceList.js +892 -0
- package/lib/crypto/DeviceList.js.map +1 -0
- package/lib/crypto/EncryptionSetup.d.ts +152 -0
- package/lib/crypto/EncryptionSetup.d.ts.map +1 -0
- package/lib/crypto/EncryptionSetup.js +356 -0
- package/lib/crypto/EncryptionSetup.js.map +1 -0
- package/lib/crypto/OlmDevice.d.ts +457 -0
- package/lib/crypto/OlmDevice.d.ts.map +1 -0
- package/lib/crypto/OlmDevice.js +1241 -0
- package/lib/crypto/OlmDevice.js.map +1 -0
- package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts +109 -0
- package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts.map +1 -0
- package/lib/crypto/OutgoingRoomKeyRequestManager.js +415 -0
- package/lib/crypto/OutgoingRoomKeyRequestManager.js.map +1 -0
- package/lib/crypto/RoomList.d.ts +26 -0
- package/lib/crypto/RoomList.d.ts.map +1 -0
- package/lib/crypto/RoomList.js +71 -0
- package/lib/crypto/RoomList.js.map +1 -0
- package/lib/crypto/SecretSharing.d.ts +24 -0
- package/lib/crypto/SecretSharing.d.ts.map +1 -0
- package/lib/crypto/SecretSharing.js +194 -0
- package/lib/crypto/SecretSharing.js.map +1 -0
- package/lib/crypto/SecretStorage.d.ts +55 -0
- package/lib/crypto/SecretStorage.d.ts.map +1 -0
- package/lib/crypto/SecretStorage.js +118 -0
- package/lib/crypto/SecretStorage.js.map +1 -0
- package/lib/crypto/aes.d.ts +6 -0
- package/lib/crypto/aes.d.ts.map +1 -0
- package/lib/crypto/aes.js +24 -0
- package/lib/crypto/aes.js.map +1 -0
- package/lib/crypto/algorithms/base.d.ts +156 -0
- package/lib/crypto/algorithms/base.d.ts.map +1 -0
- package/lib/crypto/algorithms/base.js +187 -0
- package/lib/crypto/algorithms/base.js.map +1 -0
- package/lib/crypto/algorithms/index.d.ts +4 -0
- package/lib/crypto/algorithms/index.d.ts.map +1 -0
- package/lib/crypto/algorithms/index.js +20 -0
- package/lib/crypto/algorithms/index.js.map +1 -0
- package/lib/crypto/algorithms/megolm.d.ts +385 -0
- package/lib/crypto/algorithms/megolm.d.ts.map +1 -0
- package/lib/crypto/algorithms/megolm.js +1822 -0
- package/lib/crypto/algorithms/megolm.js.map +1 -0
- package/lib/crypto/algorithms/olm.d.ts +5 -0
- package/lib/crypto/algorithms/olm.d.ts.map +1 -0
- package/lib/crypto/algorithms/olm.js +299 -0
- package/lib/crypto/algorithms/olm.js.map +1 -0
- package/lib/crypto/api.d.ts +32 -0
- package/lib/crypto/api.d.ts.map +1 -0
- package/lib/crypto/api.js +22 -0
- package/lib/crypto/api.js.map +1 -0
- package/lib/crypto/backup.d.ts +227 -0
- package/lib/crypto/backup.d.ts.map +1 -0
- package/lib/crypto/backup.js +824 -0
- package/lib/crypto/backup.js.map +1 -0
- package/lib/crypto/crypto.d.ts +3 -0
- package/lib/crypto/crypto.d.ts.map +1 -0
- package/lib/crypto/crypto.js +19 -0
- package/lib/crypto/crypto.js.map +1 -0
- package/lib/crypto/dehydration.d.ts +34 -0
- package/lib/crypto/dehydration.d.ts.map +1 -0
- package/lib/crypto/dehydration.js +252 -0
- package/lib/crypto/dehydration.js.map +1 -0
- package/lib/crypto/device-converter.d.ts +9 -0
- package/lib/crypto/device-converter.d.ts.map +1 -0
- package/lib/crypto/device-converter.js +42 -0
- package/lib/crypto/device-converter.js.map +1 -0
- package/lib/crypto/deviceinfo.d.ts +99 -0
- package/lib/crypto/deviceinfo.d.ts.map +1 -0
- package/lib/crypto/deviceinfo.js +148 -0
- package/lib/crypto/deviceinfo.js.map +1 -0
- package/lib/crypto/index.d.ts +1209 -0
- package/lib/crypto/index.d.ts.map +1 -0
- package/lib/crypto/index.js +4097 -0
- package/lib/crypto/index.js.map +1 -0
- package/lib/crypto/key_passphrase.d.ts +14 -0
- package/lib/crypto/key_passphrase.d.ts.map +1 -0
- package/lib/crypto/key_passphrase.js +44 -0
- package/lib/crypto/key_passphrase.js.map +1 -0
- package/lib/crypto/keybackup.d.ts +18 -0
- package/lib/crypto/keybackup.d.ts.map +1 -0
- package/lib/crypto/keybackup.js +1 -0
- package/lib/crypto/keybackup.js.map +1 -0
- package/lib/crypto/olmlib.d.ts +129 -0
- package/lib/crypto/olmlib.d.ts.map +1 -0
- package/lib/crypto/olmlib.js +492 -0
- package/lib/crypto/olmlib.js.map +1 -0
- package/lib/crypto/recoverykey.d.ts +2 -0
- package/lib/crypto/recoverykey.d.ts.map +1 -0
- package/lib/crypto/recoverykey.js +19 -0
- package/lib/crypto/recoverykey.js.map +1 -0
- package/lib/crypto/store/base.d.ts +252 -0
- package/lib/crypto/store/base.d.ts.map +1 -0
- package/lib/crypto/store/base.js +64 -0
- package/lib/crypto/store/base.js.map +1 -0
- package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts +187 -0
- package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts.map +1 -0
- package/lib/crypto/store/indexeddb-crypto-store-backend.js +1145 -0
- package/lib/crypto/store/indexeddb-crypto-store-backend.js.map +1 -0
- package/lib/crypto/store/indexeddb-crypto-store.d.ts +432 -0
- package/lib/crypto/store/indexeddb-crypto-store.d.ts.map +1 -0
- package/lib/crypto/store/indexeddb-crypto-store.js +728 -0
- package/lib/crypto/store/indexeddb-crypto-store.js.map +1 -0
- package/lib/crypto/store/localStorage-crypto-store.d.ts +119 -0
- package/lib/crypto/store/localStorage-crypto-store.d.ts.map +1 -0
- package/lib/crypto/store/localStorage-crypto-store.js +531 -0
- package/lib/crypto/store/localStorage-crypto-store.js.map +1 -0
- package/lib/crypto/store/memory-crypto-store.d.ts +215 -0
- package/lib/crypto/store/memory-crypto-store.d.ts.map +1 -0
- package/lib/crypto/store/memory-crypto-store.js +622 -0
- package/lib/crypto/store/memory-crypto-store.js.map +1 -0
- package/lib/crypto/verification/Base.d.ts +105 -0
- package/lib/crypto/verification/Base.d.ts.map +1 -0
- package/lib/crypto/verification/Base.js +372 -0
- package/lib/crypto/verification/Base.js.map +1 -0
- package/lib/crypto/verification/Error.d.ts +35 -0
- package/lib/crypto/verification/Error.d.ts.map +1 -0
- package/lib/crypto/verification/Error.js +86 -0
- package/lib/crypto/verification/Error.js.map +1 -0
- package/lib/crypto/verification/IllegalMethod.d.ts +15 -0
- package/lib/crypto/verification/IllegalMethod.d.ts.map +1 -0
- package/lib/crypto/verification/IllegalMethod.js +43 -0
- package/lib/crypto/verification/IllegalMethod.js.map +1 -0
- package/lib/crypto/verification/QRCode.d.ts +51 -0
- package/lib/crypto/verification/QRCode.d.ts.map +1 -0
- package/lib/crypto/verification/QRCode.js +277 -0
- package/lib/crypto/verification/QRCode.js.map +1 -0
- package/lib/crypto/verification/SAS.d.ts +27 -0
- package/lib/crypto/verification/SAS.d.ts.map +1 -0
- package/lib/crypto/verification/SAS.js +485 -0
- package/lib/crypto/verification/SAS.js.map +1 -0
- package/lib/crypto/verification/SASDecimal.d.ts +8 -0
- package/lib/crypto/verification/SASDecimal.d.ts.map +1 -0
- package/lib/crypto/verification/SASDecimal.js +34 -0
- package/lib/crypto/verification/SASDecimal.js.map +1 -0
- package/lib/crypto/verification/request/Channel.d.ts +18 -0
- package/lib/crypto/verification/request/Channel.d.ts.map +1 -0
- package/lib/crypto/verification/request/Channel.js +1 -0
- package/lib/crypto/verification/request/Channel.js.map +1 -0
- package/lib/crypto/verification/request/InRoomChannel.d.ts +113 -0
- package/lib/crypto/verification/request/InRoomChannel.d.ts.map +1 -0
- package/lib/crypto/verification/request/InRoomChannel.js +351 -0
- package/lib/crypto/verification/request/InRoomChannel.js.map +1 -0
- package/lib/crypto/verification/request/ToDeviceChannel.d.ts +105 -0
- package/lib/crypto/verification/request/ToDeviceChannel.d.ts.map +1 -0
- package/lib/crypto/verification/request/ToDeviceChannel.js +328 -0
- package/lib/crypto/verification/request/ToDeviceChannel.js.map +1 -0
- package/lib/crypto/verification/request/VerificationRequest.d.ts +227 -0
- package/lib/crypto/verification/request/VerificationRequest.d.ts.map +1 -0
- package/lib/crypto/verification/request/VerificationRequest.js +937 -0
- package/lib/crypto/verification/request/VerificationRequest.js.map +1 -0
- package/lib/crypto-api/CryptoEvent.d.ts +69 -0
- package/lib/crypto-api/CryptoEvent.d.ts.map +1 -0
- package/lib/crypto-api/CryptoEvent.js +33 -0
- package/lib/crypto-api/CryptoEvent.js.map +1 -0
- package/lib/crypto-api/CryptoEventHandlerMap.d.ts +16 -0
- package/lib/crypto-api/CryptoEventHandlerMap.d.ts.map +1 -0
- package/lib/crypto-api/CryptoEventHandlerMap.js +22 -0
- package/lib/crypto-api/CryptoEventHandlerMap.js.map +1 -0
- package/lib/crypto-api/index.d.ts +978 -0
- package/lib/crypto-api/index.d.ts.map +1 -0
- package/lib/crypto-api/index.js +304 -0
- package/lib/crypto-api/index.js.map +1 -0
- package/lib/crypto-api/key-passphrase.d.ts +11 -0
- package/lib/crypto-api/key-passphrase.d.ts.map +1 -0
- package/lib/crypto-api/key-passphrase.js +51 -0
- package/lib/crypto-api/key-passphrase.js.map +1 -0
- package/lib/crypto-api/keybackup.d.ts +88 -0
- package/lib/crypto-api/keybackup.d.ts.map +1 -0
- package/lib/crypto-api/keybackup.js +1 -0
- package/lib/crypto-api/keybackup.js.map +1 -0
- package/lib/crypto-api/recovery-key.d.ts +11 -0
- package/lib/crypto-api/recovery-key.d.ts.map +1 -0
- package/lib/crypto-api/recovery-key.js +65 -0
- package/lib/crypto-api/recovery-key.js.map +1 -0
- package/lib/crypto-api/verification.d.ts +344 -0
- package/lib/crypto-api/verification.d.ts.map +1 -0
- package/lib/crypto-api/verification.js +91 -0
- package/lib/crypto-api/verification.js.map +1 -0
- package/lib/digest.d.ts +10 -0
- package/lib/digest.d.ts.map +1 -0
- package/lib/digest.js +40 -0
- package/lib/digest.js.map +1 -0
- package/lib/embedded.d.ts +143 -0
- package/lib/embedded.d.ts.map +1 -0
- package/lib/embedded.js +567 -0
- package/lib/embedded.js.map +1 -0
- package/lib/errors.d.ts +24 -0
- package/lib/errors.d.ts.map +1 -0
- package/lib/errors.js +51 -0
- package/lib/errors.js.map +1 -0
- package/lib/event-mapper.d.ts +10 -0
- package/lib/event-mapper.d.ts.map +1 -0
- package/lib/event-mapper.js +81 -0
- package/lib/event-mapper.js.map +1 -0
- package/lib/extensible_events_v1/ExtensibleEvent.d.ts +38 -0
- package/lib/extensible_events_v1/ExtensibleEvent.d.ts.map +1 -0
- package/lib/extensible_events_v1/ExtensibleEvent.js +57 -0
- package/lib/extensible_events_v1/ExtensibleEvent.js.map +1 -0
- package/lib/extensible_events_v1/InvalidEventError.d.ts +7 -0
- package/lib/extensible_events_v1/InvalidEventError.d.ts.map +1 -0
- package/lib/extensible_events_v1/InvalidEventError.js +25 -0
- package/lib/extensible_events_v1/InvalidEventError.js.map +1 -0
- package/lib/extensible_events_v1/MessageEvent.d.ts +45 -0
- package/lib/extensible_events_v1/MessageEvent.d.ts.map +1 -0
- package/lib/extensible_events_v1/MessageEvent.js +134 -0
- package/lib/extensible_events_v1/MessageEvent.js.map +1 -0
- package/lib/extensible_events_v1/PollEndEvent.d.ts +33 -0
- package/lib/extensible_events_v1/PollEndEvent.d.ts.map +1 -0
- package/lib/extensible_events_v1/PollEndEvent.js +88 -0
- package/lib/extensible_events_v1/PollEndEvent.js.map +1 -0
- package/lib/extensible_events_v1/PollResponseEvent.d.ts +49 -0
- package/lib/extensible_events_v1/PollResponseEvent.d.ts.map +1 -0
- package/lib/extensible_events_v1/PollResponseEvent.js +135 -0
- package/lib/extensible_events_v1/PollResponseEvent.js.map +1 -0
- package/lib/extensible_events_v1/PollStartEvent.d.ts +71 -0
- package/lib/extensible_events_v1/PollStartEvent.d.ts.map +1 -0
- package/lib/extensible_events_v1/PollStartEvent.js +185 -0
- package/lib/extensible_events_v1/PollStartEvent.js.map +1 -0
- package/lib/extensible_events_v1/utilities.d.ts +14 -0
- package/lib/extensible_events_v1/utilities.d.ts.map +1 -0
- package/lib/extensible_events_v1/utilities.js +34 -0
- package/lib/extensible_events_v1/utilities.js.map +1 -0
- package/lib/feature.d.ts +20 -0
- package/lib/feature.d.ts.map +1 -0
- package/lib/feature.js +85 -0
- package/lib/feature.js.map +1 -0
- package/lib/filter-component.d.ts +64 -0
- package/lib/filter-component.d.ts.map +1 -0
- package/lib/filter-component.js +167 -0
- package/lib/filter-component.js.map +1 -0
- package/lib/filter.d.ts +97 -0
- package/lib/filter.d.ts.map +1 -0
- package/lib/filter.js +207 -0
- package/lib/filter.js.map +1 -0
- package/lib/http-api/errors.d.ts +80 -0
- package/lib/http-api/errors.d.ts.map +1 -0
- package/lib/http-api/errors.js +185 -0
- package/lib/http-api/errors.js.map +1 -0
- package/lib/http-api/fetch.d.ts +114 -0
- package/lib/http-api/fetch.d.ts.map +1 -0
- package/lib/http-api/fetch.js +346 -0
- package/lib/http-api/fetch.js.map +1 -0
- package/lib/http-api/index.d.ts +33 -0
- package/lib/http-api/index.d.ts.map +1 -0
- package/lib/http-api/index.js +180 -0
- package/lib/http-api/index.js.map +1 -0
- package/lib/http-api/interface.d.ts +142 -0
- package/lib/http-api/interface.d.ts.map +1 -0
- package/lib/http-api/interface.js +35 -0
- package/lib/http-api/interface.js.map +1 -0
- package/lib/http-api/method.d.ts +10 -0
- package/lib/http-api/method.d.ts.map +1 -0
- package/lib/http-api/method.js +27 -0
- package/lib/http-api/method.js.map +1 -0
- package/lib/http-api/prefix.d.ts +31 -0
- package/lib/http-api/prefix.d.ts.map +1 -0
- package/lib/http-api/prefix.js +32 -0
- package/lib/http-api/prefix.js.map +1 -0
- package/lib/http-api/utils.d.ts +37 -0
- package/lib/http-api/utils.d.ts.map +1 -0
- package/lib/http-api/utils.js +178 -0
- package/lib/http-api/utils.js.map +1 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +24 -0
- package/lib/index.js.map +1 -0
- package/lib/indexeddb-helpers.d.ts +10 -0
- package/lib/indexeddb-helpers.d.ts.map +1 -0
- package/lib/indexeddb-helpers.js +51 -0
- package/lib/indexeddb-helpers.js.map +1 -0
- package/lib/indexeddb-worker.d.ts +7 -0
- package/lib/indexeddb-worker.d.ts.map +1 -0
- package/lib/indexeddb-worker.js +25 -0
- package/lib/indexeddb-worker.js.map +1 -0
- package/lib/interactive-auth.d.ts +337 -0
- package/lib/interactive-auth.d.ts.map +1 -0
- package/lib/interactive-auth.js +557 -0
- package/lib/interactive-auth.js.map +1 -0
- package/lib/logger.d.ts +81 -0
- package/lib/logger.d.ts.map +1 -0
- package/lib/logger.js +139 -0
- package/lib/logger.js.map +1 -0
- package/lib/matrix.d.ts +118 -0
- package/lib/matrix.d.ts.map +1 -0
- package/lib/matrix.js +146 -0
- package/lib/matrix.js.map +1 -0
- package/lib/matrixrtc/CallMembership.d.ts +66 -0
- package/lib/matrixrtc/CallMembership.d.ts.map +1 -0
- package/lib/matrixrtc/CallMembership.js +197 -0
- package/lib/matrixrtc/CallMembership.js.map +1 -0
- package/lib/matrixrtc/LivekitFocus.d.ts +16 -0
- package/lib/matrixrtc/LivekitFocus.d.ts.map +1 -0
- package/lib/matrixrtc/LivekitFocus.js +20 -0
- package/lib/matrixrtc/LivekitFocus.js.map +1 -0
- package/lib/matrixrtc/MatrixRTCSession.d.ts +295 -0
- package/lib/matrixrtc/MatrixRTCSession.d.ts.map +1 -0
- package/lib/matrixrtc/MatrixRTCSession.js +1043 -0
- package/lib/matrixrtc/MatrixRTCSession.js.map +1 -0
- package/lib/matrixrtc/MatrixRTCSessionManager.d.ts +40 -0
- package/lib/matrixrtc/MatrixRTCSessionManager.d.ts.map +1 -0
- package/lib/matrixrtc/MatrixRTCSessionManager.js +146 -0
- package/lib/matrixrtc/MatrixRTCSessionManager.js.map +1 -0
- package/lib/matrixrtc/focus.d.ts +10 -0
- package/lib/matrixrtc/focus.d.ts.map +1 -0
- package/lib/matrixrtc/focus.js +1 -0
- package/lib/matrixrtc/focus.js.map +1 -0
- package/lib/matrixrtc/index.d.ts +7 -0
- package/lib/matrixrtc/index.d.ts.map +1 -0
- package/lib/matrixrtc/index.js +21 -0
- package/lib/matrixrtc/index.js.map +1 -0
- package/lib/matrixrtc/types.d.ts +19 -0
- package/lib/matrixrtc/types.d.ts.map +1 -0
- package/lib/matrixrtc/types.js +1 -0
- package/lib/matrixrtc/types.js.map +1 -0
- package/lib/models/MSC3089Branch.d.ts +98 -0
- package/lib/models/MSC3089Branch.d.ts.map +1 -0
- package/lib/models/MSC3089Branch.js +240 -0
- package/lib/models/MSC3089Branch.js.map +1 -0
- package/lib/models/MSC3089TreeSpace.d.ts +165 -0
- package/lib/models/MSC3089TreeSpace.d.ts.map +1 -0
- package/lib/models/MSC3089TreeSpace.js +520 -0
- package/lib/models/MSC3089TreeSpace.js.map +1 -0
- package/lib/models/ToDeviceMessage.d.ts +17 -0
- package/lib/models/ToDeviceMessage.d.ts.map +1 -0
- package/lib/models/ToDeviceMessage.js +1 -0
- package/lib/models/ToDeviceMessage.js.map +1 -0
- package/lib/models/beacon.d.ts +53 -0
- package/lib/models/beacon.d.ts.map +1 -0
- package/lib/models/beacon.js +174 -0
- package/lib/models/beacon.js.map +1 -0
- package/lib/models/compare-event-ordering.d.ts +24 -0
- package/lib/models/compare-event-ordering.d.ts.map +1 -0
- package/lib/models/compare-event-ordering.js +120 -0
- package/lib/models/compare-event-ordering.js.map +1 -0
- package/lib/models/device.d.ts +45 -0
- package/lib/models/device.d.ts.map +1 -0
- package/lib/models/device.js +77 -0
- package/lib/models/device.js.map +1 -0
- package/lib/models/event-context.d.ts +62 -0
- package/lib/models/event-context.d.ts.map +1 -0
- package/lib/models/event-context.js +113 -0
- package/lib/models/event-context.js.map +1 -0
- package/lib/models/event-status.d.ts +19 -0
- package/lib/models/event-status.d.ts.map +1 -0
- package/lib/models/event-status.js +30 -0
- package/lib/models/event-status.js.map +1 -0
- package/lib/models/event-timeline-set.d.ts +312 -0
- package/lib/models/event-timeline-set.d.ts.map +1 -0
- package/lib/models/event-timeline-set.js +813 -0
- package/lib/models/event-timeline-set.js.map +1 -0
- package/lib/models/event-timeline.d.ts +219 -0
- package/lib/models/event-timeline.d.ts.map +1 -0
- package/lib/models/event-timeline.js +455 -0
- package/lib/models/event-timeline.js.map +1 -0
- package/lib/models/event.d.ts +811 -0
- package/lib/models/event.d.ts.map +1 -0
- package/lib/models/event.js +1520 -0
- package/lib/models/event.js.map +1 -0
- package/lib/models/invites-ignorer.d.ts +136 -0
- package/lib/models/invites-ignorer.d.ts.map +1 -0
- package/lib/models/invites-ignorer.js +382 -0
- package/lib/models/invites-ignorer.js.map +1 -0
- package/lib/models/poll.d.ts +67 -0
- package/lib/models/poll.d.ts.map +1 -0
- package/lib/models/poll.js +241 -0
- package/lib/models/poll.js.map +1 -0
- package/lib/models/profile-keys.d.ts +8 -0
- package/lib/models/profile-keys.d.ts.map +1 -0
- package/lib/models/profile-keys.js +8 -0
- package/lib/models/profile-keys.js.map +1 -0
- package/lib/models/read-receipt.d.ts +115 -0
- package/lib/models/read-receipt.d.ts.map +1 -0
- package/lib/models/read-receipt.js +366 -0
- package/lib/models/read-receipt.js.map +1 -0
- package/lib/models/related-relations.d.ts +11 -0
- package/lib/models/related-relations.d.ts.map +1 -0
- package/lib/models/related-relations.js +33 -0
- package/lib/models/related-relations.js.map +1 -0
- package/lib/models/relations-container.d.ts +44 -0
- package/lib/models/relations-container.d.ts.map +1 -0
- package/lib/models/relations-container.js +132 -0
- package/lib/models/relations-container.js.map +1 -0
- package/lib/models/relations.d.ts +114 -0
- package/lib/models/relations.d.ts.map +1 -0
- package/lib/models/relations.js +354 -0
- package/lib/models/relations.js.map +1 -0
- package/lib/models/room-member.d.ts +204 -0
- package/lib/models/room-member.d.ts.map +1 -0
- package/lib/models/room-member.js +360 -0
- package/lib/models/room-member.js.map +1 -0
- package/lib/models/room-receipts.d.ts +39 -0
- package/lib/models/room-receipts.d.ts.map +1 -0
- package/lib/models/room-receipts.js +392 -0
- package/lib/models/room-receipts.js.map +1 -0
- package/lib/models/room-state.d.ts +468 -0
- package/lib/models/room-state.d.ts.map +1 -0
- package/lib/models/room-state.js +984 -0
- package/lib/models/room-state.js.map +1 -0
- package/lib/models/room-summary.d.ts +29 -0
- package/lib/models/room-summary.d.ts.map +1 -0
- package/lib/models/room-summary.js +28 -0
- package/lib/models/room-summary.js.map +1 -0
- package/lib/models/room.d.ts +1203 -0
- package/lib/models/room.d.ts.map +1 -0
- package/lib/models/room.js +3336 -0
- package/lib/models/room.js.map +1 -0
- package/lib/models/search-result.d.ts +20 -0
- package/lib/models/search-result.d.ts.map +1 -0
- package/lib/models/search-result.js +52 -0
- package/lib/models/search-result.js.map +1 -0
- package/lib/models/thread.d.ts +246 -0
- package/lib/models/thread.d.ts.map +1 -0
- package/lib/models/thread.js +861 -0
- package/lib/models/thread.js.map +1 -0
- package/lib/models/typed-event-emitter.d.ts +157 -0
- package/lib/models/typed-event-emitter.d.ts.map +1 -0
- package/lib/models/typed-event-emitter.js +227 -0
- package/lib/models/typed-event-emitter.js.map +1 -0
- package/lib/models/user.d.ts +195 -0
- package/lib/models/user.d.ts.map +1 -0
- package/lib/models/user.js +218 -0
- package/lib/models/user.js.map +1 -0
- package/lib/oidc/authorize.d.ts +90 -0
- package/lib/oidc/authorize.d.ts.map +1 -0
- package/lib/oidc/authorize.js +278 -0
- package/lib/oidc/authorize.js.map +1 -0
- package/lib/oidc/discovery.d.ts +14 -0
- package/lib/oidc/discovery.d.ts.map +1 -0
- package/lib/oidc/discovery.js +66 -0
- package/lib/oidc/discovery.js.map +1 -0
- package/lib/oidc/error.d.ts +18 -0
- package/lib/oidc/error.d.ts.map +1 -0
- package/lib/oidc/error.js +35 -0
- package/lib/oidc/error.js.map +1 -0
- package/lib/oidc/index.d.ts +17 -0
- package/lib/oidc/index.d.ts.map +1 -0
- package/lib/oidc/index.js +29 -0
- package/lib/oidc/index.js.map +1 -0
- package/lib/oidc/register.d.ts +43 -0
- package/lib/oidc/register.d.ts.map +1 -0
- package/lib/oidc/register.js +96 -0
- package/lib/oidc/register.js.map +1 -0
- package/lib/oidc/tokenRefresher.d.ts +69 -0
- package/lib/oidc/tokenRefresher.d.ts.map +1 -0
- package/lib/oidc/tokenRefresher.js +148 -0
- package/lib/oidc/tokenRefresher.js.map +1 -0
- package/lib/oidc/validate.d.ts +90 -0
- package/lib/oidc/validate.d.ts.map +1 -0
- package/lib/oidc/validate.js +194 -0
- package/lib/oidc/validate.js.map +1 -0
- package/lib/pushprocessor.d.ts +128 -0
- package/lib/pushprocessor.d.ts.map +1 -0
- package/lib/pushprocessor.js +685 -0
- package/lib/pushprocessor.js.map +1 -0
- package/lib/randomstring.d.ts +5 -0
- package/lib/randomstring.d.ts.map +1 -0
- package/lib/randomstring.js +43 -0
- package/lib/randomstring.js.map +1 -0
- package/lib/realtime-callbacks.d.ts +18 -0
- package/lib/realtime-callbacks.d.ts.map +1 -0
- package/lib/realtime-callbacks.js +177 -0
- package/lib/realtime-callbacks.js.map +1 -0
- package/lib/receipt-accumulator.d.ts +51 -0
- package/lib/receipt-accumulator.d.ts.map +1 -0
- package/lib/receipt-accumulator.js +164 -0
- package/lib/receipt-accumulator.js.map +1 -0
- package/lib/rendezvous/MSC4108SignInWithQR.d.ts +112 -0
- package/lib/rendezvous/MSC4108SignInWithQR.d.ts.map +1 -0
- package/lib/rendezvous/MSC4108SignInWithQR.js +392 -0
- package/lib/rendezvous/MSC4108SignInWithQR.js.map +1 -0
- package/lib/rendezvous/RendezvousChannel.d.ts +27 -0
- package/lib/rendezvous/RendezvousChannel.d.ts.map +1 -0
- package/lib/rendezvous/RendezvousChannel.js +1 -0
- package/lib/rendezvous/RendezvousChannel.js.map +1 -0
- package/lib/rendezvous/RendezvousCode.d.ts +9 -0
- package/lib/rendezvous/RendezvousCode.d.ts.map +1 -0
- package/lib/rendezvous/RendezvousCode.js +1 -0
- package/lib/rendezvous/RendezvousCode.js.map +1 -0
- package/lib/rendezvous/RendezvousError.d.ts +6 -0
- package/lib/rendezvous/RendezvousError.d.ts.map +1 -0
- package/lib/rendezvous/RendezvousError.js +23 -0
- package/lib/rendezvous/RendezvousError.js.map +1 -0
- package/lib/rendezvous/RendezvousFailureReason.d.ts +31 -0
- package/lib/rendezvous/RendezvousFailureReason.d.ts.map +1 -0
- package/lib/rendezvous/RendezvousFailureReason.js +38 -0
- package/lib/rendezvous/RendezvousFailureReason.js.map +1 -0
- package/lib/rendezvous/RendezvousIntent.d.ts +5 -0
- package/lib/rendezvous/RendezvousIntent.d.ts.map +1 -0
- package/lib/rendezvous/RendezvousIntent.js +22 -0
- package/lib/rendezvous/RendezvousIntent.js.map +1 -0
- package/lib/rendezvous/RendezvousTransport.d.ts +36 -0
- package/lib/rendezvous/RendezvousTransport.d.ts.map +1 -0
- package/lib/rendezvous/RendezvousTransport.js +1 -0
- package/lib/rendezvous/RendezvousTransport.js.map +1 -0
- package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts +58 -0
- package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts.map +1 -0
- package/lib/rendezvous/channels/MSC4108SecureChannel.js +246 -0
- package/lib/rendezvous/channels/MSC4108SecureChannel.js.map +1 -0
- package/lib/rendezvous/channels/index.d.ts +2 -0
- package/lib/rendezvous/channels/index.d.ts.map +1 -0
- package/lib/rendezvous/channels/index.js +18 -0
- package/lib/rendezvous/channels/index.js.map +1 -0
- package/lib/rendezvous/index.d.ts +10 -0
- package/lib/rendezvous/index.d.ts.map +1 -0
- package/lib/rendezvous/index.js +23 -0
- package/lib/rendezvous/index.js.map +1 -0
- package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts +61 -0
- package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts.map +1 -0
- package/lib/rendezvous/transports/MSC4108RendezvousSession.js +253 -0
- package/lib/rendezvous/transports/MSC4108RendezvousSession.js.map +1 -0
- package/lib/rendezvous/transports/index.d.ts +2 -0
- package/lib/rendezvous/transports/index.d.ts.map +1 -0
- package/lib/rendezvous/transports/index.js +18 -0
- package/lib/rendezvous/transports/index.js.map +1 -0
- package/lib/room-hierarchy.d.ts +35 -0
- package/lib/room-hierarchy.d.ts.map +1 -0
- package/lib/room-hierarchy.js +136 -0
- package/lib/room-hierarchy.js.map +1 -0
- package/lib/rust-crypto/CrossSigningIdentity.d.ts +33 -0
- package/lib/rust-crypto/CrossSigningIdentity.d.ts.map +1 -0
- package/lib/rust-crypto/CrossSigningIdentity.js +157 -0
- package/lib/rust-crypto/CrossSigningIdentity.js.map +1 -0
- package/lib/rust-crypto/DehydratedDeviceManager.d.ts +98 -0
- package/lib/rust-crypto/DehydratedDeviceManager.d.ts.map +1 -0
- package/lib/rust-crypto/DehydratedDeviceManager.js +285 -0
- package/lib/rust-crypto/DehydratedDeviceManager.js.map +1 -0
- package/lib/rust-crypto/KeyClaimManager.d.ts +33 -0
- package/lib/rust-crypto/KeyClaimManager.d.ts.map +1 -0
- package/lib/rust-crypto/KeyClaimManager.js +82 -0
- package/lib/rust-crypto/KeyClaimManager.js.map +1 -0
- package/lib/rust-crypto/OutgoingRequestProcessor.d.ts +43 -0
- package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +1 -0
- package/lib/rust-crypto/OutgoingRequestProcessor.js +195 -0
- package/lib/rust-crypto/OutgoingRequestProcessor.js.map +1 -0
- package/lib/rust-crypto/OutgoingRequestsManager.d.ts +47 -0
- package/lib/rust-crypto/OutgoingRequestsManager.d.ts.map +1 -0
- package/lib/rust-crypto/OutgoingRequestsManager.js +148 -0
- package/lib/rust-crypto/OutgoingRequestsManager.js.map +1 -0
- package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts +120 -0
- package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts.map +1 -0
- package/lib/rust-crypto/PerSessionKeyBackupDownloader.js +467 -0
- package/lib/rust-crypto/PerSessionKeyBackupDownloader.js.map +1 -0
- package/lib/rust-crypto/RoomEncryptor.d.ts +98 -0
- package/lib/rust-crypto/RoomEncryptor.d.ts.map +1 -0
- package/lib/rust-crypto/RoomEncryptor.js +299 -0
- package/lib/rust-crypto/RoomEncryptor.js.map +1 -0
- package/lib/rust-crypto/backup.d.ts +254 -0
- package/lib/rust-crypto/backup.d.ts.map +1 -0
- package/lib/rust-crypto/backup.js +837 -0
- package/lib/rust-crypto/backup.js.map +1 -0
- package/lib/rust-crypto/constants.d.ts +3 -0
- package/lib/rust-crypto/constants.d.ts.map +1 -0
- package/lib/rust-crypto/constants.js +19 -0
- package/lib/rust-crypto/constants.js.map +1 -0
- package/lib/rust-crypto/device-converter.d.ts +28 -0
- package/lib/rust-crypto/device-converter.d.ts.map +1 -0
- package/lib/rust-crypto/device-converter.js +123 -0
- package/lib/rust-crypto/device-converter.js.map +1 -0
- package/lib/rust-crypto/index.d.ts +61 -0
- package/lib/rust-crypto/index.d.ts.map +1 -0
- package/lib/rust-crypto/index.js +152 -0
- package/lib/rust-crypto/index.js.map +1 -0
- package/lib/rust-crypto/libolm_migration.d.ts +81 -0
- package/lib/rust-crypto/libolm_migration.d.ts.map +1 -0
- package/lib/rust-crypto/libolm_migration.js +459 -0
- package/lib/rust-crypto/libolm_migration.js.map +1 -0
- package/lib/rust-crypto/rust-crypto.d.ts +556 -0
- package/lib/rust-crypto/rust-crypto.d.ts.map +1 -0
- package/lib/rust-crypto/rust-crypto.js +2016 -0
- package/lib/rust-crypto/rust-crypto.js.map +1 -0
- package/lib/rust-crypto/secret-storage.d.ts +22 -0
- package/lib/rust-crypto/secret-storage.d.ts.map +1 -0
- package/lib/rust-crypto/secret-storage.js +63 -0
- package/lib/rust-crypto/secret-storage.js.map +1 -0
- package/lib/rust-crypto/verification.d.ts +319 -0
- package/lib/rust-crypto/verification.d.ts.map +1 -0
- package/lib/rust-crypto/verification.js +816 -0
- package/lib/rust-crypto/verification.js.map +1 -0
- package/lib/scheduler.d.ts +132 -0
- package/lib/scheduler.d.ts.map +1 -0
- package/lib/scheduler.js +259 -0
- package/lib/scheduler.js.map +1 -0
- package/lib/secret-storage.d.ts +370 -0
- package/lib/secret-storage.d.ts.map +1 -0
- package/lib/secret-storage.js +466 -0
- package/lib/secret-storage.js.map +1 -0
- package/lib/serverCapabilities.d.ts +72 -0
- package/lib/serverCapabilities.d.ts.map +1 -0
- package/lib/serverCapabilities.js +105 -0
- package/lib/serverCapabilities.js.map +1 -0
- package/lib/service-types.d.ts +5 -0
- package/lib/service-types.d.ts.map +1 -0
- package/lib/service-types.js +22 -0
- package/lib/service-types.js.map +1 -0
- package/lib/sliding-sync-sdk.d.ts +107 -0
- package/lib/sliding-sync-sdk.d.ts.map +1 -0
- package/lib/sliding-sync-sdk.js +903 -0
- package/lib/sliding-sync-sdk.js.map +1 -0
- package/lib/sliding-sync.d.ts +343 -0
- package/lib/sliding-sync.d.ts.map +1 -0
- package/lib/sliding-sync.js +817 -0
- package/lib/sliding-sync.js.map +1 -0
- package/lib/store/index.d.ts +201 -0
- package/lib/store/index.d.ts.map +1 -0
- package/lib/store/index.js +1 -0
- package/lib/store/index.js.map +1 -0
- package/lib/store/indexeddb-backend.d.ts +24 -0
- package/lib/store/indexeddb-backend.d.ts.map +1 -0
- package/lib/store/indexeddb-backend.js +1 -0
- package/lib/store/indexeddb-backend.js.map +1 -0
- package/lib/store/indexeddb-local-backend.d.ts +129 -0
- package/lib/store/indexeddb-local-backend.d.ts.map +1 -0
- package/lib/store/indexeddb-local-backend.js +597 -0
- package/lib/store/indexeddb-local-backend.js.map +1 -0
- package/lib/store/indexeddb-remote-backend.d.ts +79 -0
- package/lib/store/indexeddb-remote-backend.d.ts.map +1 -0
- package/lib/store/indexeddb-remote-backend.js +210 -0
- package/lib/store/indexeddb-remote-backend.js.map +1 -0
- package/lib/store/indexeddb-store-worker.d.ts +35 -0
- package/lib/store/indexeddb-store-worker.d.ts.map +1 -0
- package/lib/store/indexeddb-store-worker.js +146 -0
- package/lib/store/indexeddb-store-worker.js.map +1 -0
- package/lib/store/indexeddb.d.ts +142 -0
- package/lib/store/indexeddb.d.ts.map +1 -0
- package/lib/store/indexeddb.js +347 -0
- package/lib/store/indexeddb.js.map +1 -0
- package/lib/store/local-storage-events-emitter.d.ts +30 -0
- package/lib/store/local-storage-events-emitter.d.ts.map +1 -0
- package/lib/store/local-storage-events-emitter.js +37 -0
- package/lib/store/local-storage-events-emitter.js.map +1 -0
- package/lib/store/memory.d.ts +209 -0
- package/lib/store/memory.d.ts.map +1 -0
- package/lib/store/memory.js +432 -0
- package/lib/store/memory.js.map +1 -0
- package/lib/store/stub.d.ts +161 -0
- package/lib/store/stub.d.ts.map +1 -0
- package/lib/store/stub.js +268 -0
- package/lib/store/stub.js.map +1 -0
- package/lib/sync-accumulator.d.ts +172 -0
- package/lib/sync-accumulator.d.ts.map +1 -0
- package/lib/sync-accumulator.js +532 -0
- package/lib/sync-accumulator.js.map +1 -0
- package/lib/sync.d.ts +260 -0
- package/lib/sync.d.ts.map +1 -0
- package/lib/sync.js +1686 -0
- package/lib/sync.js.map +1 -0
- package/lib/testing.d.ts +81 -0
- package/lib/testing.d.ts.map +1 -0
- package/lib/testing.js +162 -0
- package/lib/testing.js.map +1 -0
- package/lib/thread-utils.d.ts +10 -0
- package/lib/thread-utils.d.ts.map +1 -0
- package/lib/thread-utils.js +31 -0
- package/lib/thread-utils.js.map +1 -0
- package/lib/timeline-window.d.ts +168 -0
- package/lib/timeline-window.d.ts.map +1 -0
- package/lib/timeline-window.js +494 -0
- package/lib/timeline-window.js.map +1 -0
- package/lib/types.d.ts +33 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +33 -0
- package/lib/types.js.map +1 -0
- package/lib/utils/decryptAESSecretStorageItem.d.ts +12 -0
- package/lib/utils/decryptAESSecretStorageItem.d.ts.map +1 -0
- package/lib/utils/decryptAESSecretStorageItem.js +50 -0
- package/lib/utils/decryptAESSecretStorageItem.js.map +1 -0
- package/lib/utils/encryptAESSecretStorageItem.d.ts +16 -0
- package/lib/utils/encryptAESSecretStorageItem.d.ts.map +1 -0
- package/lib/utils/encryptAESSecretStorageItem.js +68 -0
- package/lib/utils/encryptAESSecretStorageItem.js.map +1 -0
- package/lib/utils/internal/deriveKeys.d.ts +10 -0
- package/lib/utils/internal/deriveKeys.d.ts.map +1 -0
- package/lib/utils/internal/deriveKeys.js +60 -0
- package/lib/utils/internal/deriveKeys.js.map +1 -0
- package/lib/utils.d.ts +267 -0
- package/lib/utils.d.ts.map +1 -0
- package/lib/utils.js +749 -0
- package/lib/utils.js.map +1 -0
- package/lib/version-support.d.ts +19 -0
- package/lib/version-support.d.ts.map +1 -0
- package/lib/version-support.js +37 -0
- package/lib/version-support.js.map +1 -0
- package/lib/webrtc/audioContext.d.ts +15 -0
- package/lib/webrtc/audioContext.d.ts.map +1 -0
- package/lib/webrtc/audioContext.js +46 -0
- package/lib/webrtc/audioContext.js.map +1 -0
- package/lib/webrtc/call.d.ts +560 -0
- package/lib/webrtc/call.d.ts.map +1 -0
- package/lib/webrtc/call.js +2541 -0
- package/lib/webrtc/call.js.map +1 -0
- package/lib/webrtc/callEventHandler.d.ts +37 -0
- package/lib/webrtc/callEventHandler.d.ts.map +1 -0
- package/lib/webrtc/callEventHandler.js +344 -0
- package/lib/webrtc/callEventHandler.js.map +1 -0
- package/lib/webrtc/callEventTypes.d.ts +73 -0
- package/lib/webrtc/callEventTypes.d.ts.map +1 -0
- package/lib/webrtc/callEventTypes.js +13 -0
- package/lib/webrtc/callEventTypes.js.map +1 -0
- package/lib/webrtc/callFeed.d.ts +128 -0
- package/lib/webrtc/callFeed.d.ts.map +1 -0
- package/lib/webrtc/callFeed.js +289 -0
- package/lib/webrtc/callFeed.js.map +1 -0
- package/lib/webrtc/groupCall.d.ts +323 -0
- package/lib/webrtc/groupCall.d.ts.map +1 -0
- package/lib/webrtc/groupCall.js +1337 -0
- package/lib/webrtc/groupCall.js.map +1 -0
- package/lib/webrtc/groupCallEventHandler.d.ts +31 -0
- package/lib/webrtc/groupCallEventHandler.d.ts.map +1 -0
- package/lib/webrtc/groupCallEventHandler.js +178 -0
- package/lib/webrtc/groupCallEventHandler.js.map +1 -0
- package/lib/webrtc/mediaHandler.d.ts +89 -0
- package/lib/webrtc/mediaHandler.d.ts.map +1 -0
- package/lib/webrtc/mediaHandler.js +437 -0
- package/lib/webrtc/mediaHandler.js.map +1 -0
- package/lib/webrtc/stats/callFeedStatsReporter.d.ts +8 -0
- package/lib/webrtc/stats/callFeedStatsReporter.d.ts.map +1 -0
- package/lib/webrtc/stats/callFeedStatsReporter.js +82 -0
- package/lib/webrtc/stats/callFeedStatsReporter.js.map +1 -0
- package/lib/webrtc/stats/callStatsReportGatherer.d.ts +25 -0
- package/lib/webrtc/stats/callStatsReportGatherer.d.ts.map +1 -0
- package/lib/webrtc/stats/callStatsReportGatherer.js +199 -0
- package/lib/webrtc/stats/callStatsReportGatherer.js.map +1 -0
- package/lib/webrtc/stats/callStatsReportSummary.d.ts +17 -0
- package/lib/webrtc/stats/callStatsReportSummary.d.ts.map +1 -0
- package/lib/webrtc/stats/callStatsReportSummary.js +1 -0
- package/lib/webrtc/stats/callStatsReportSummary.js.map +1 -0
- package/lib/webrtc/stats/connectionStats.d.ts +28 -0
- package/lib/webrtc/stats/connectionStats.d.ts.map +1 -0
- package/lib/webrtc/stats/connectionStats.js +26 -0
- package/lib/webrtc/stats/connectionStats.js.map +1 -0
- package/lib/webrtc/stats/connectionStatsBuilder.d.ts +5 -0
- package/lib/webrtc/stats/connectionStatsBuilder.d.ts.map +1 -0
- package/lib/webrtc/stats/connectionStatsBuilder.js +27 -0
- package/lib/webrtc/stats/connectionStatsBuilder.js.map +1 -0
- package/lib/webrtc/stats/connectionStatsReportBuilder.d.ts +7 -0
- package/lib/webrtc/stats/connectionStatsReportBuilder.d.ts.map +1 -0
- package/lib/webrtc/stats/connectionStatsReportBuilder.js +121 -0
- package/lib/webrtc/stats/connectionStatsReportBuilder.js.map +1 -0
- package/lib/webrtc/stats/groupCallStats.d.ts +22 -0
- package/lib/webrtc/stats/groupCallStats.d.ts.map +1 -0
- package/lib/webrtc/stats/groupCallStats.js +78 -0
- package/lib/webrtc/stats/groupCallStats.js.map +1 -0
- package/lib/webrtc/stats/media/mediaSsrcHandler.d.ts +10 -0
- package/lib/webrtc/stats/media/mediaSsrcHandler.d.ts.map +1 -0
- package/lib/webrtc/stats/media/mediaSsrcHandler.js +57 -0
- package/lib/webrtc/stats/media/mediaSsrcHandler.js.map +1 -0
- package/lib/webrtc/stats/media/mediaTrackHandler.d.ts +12 -0
- package/lib/webrtc/stats/media/mediaTrackHandler.d.ts.map +1 -0
- package/lib/webrtc/stats/media/mediaTrackHandler.js +62 -0
- package/lib/webrtc/stats/media/mediaTrackHandler.js.map +1 -0
- package/lib/webrtc/stats/media/mediaTrackStats.d.ts +86 -0
- package/lib/webrtc/stats/media/mediaTrackStats.d.ts.map +1 -0
- package/lib/webrtc/stats/media/mediaTrackStats.js +142 -0
- package/lib/webrtc/stats/media/mediaTrackStats.js.map +1 -0
- package/lib/webrtc/stats/media/mediaTrackStatsHandler.d.ts +22 -0
- package/lib/webrtc/stats/media/mediaTrackStatsHandler.d.ts.map +1 -0
- package/lib/webrtc/stats/media/mediaTrackStatsHandler.js +76 -0
- package/lib/webrtc/stats/media/mediaTrackStatsHandler.js.map +1 -0
- package/lib/webrtc/stats/statsReport.d.ts +99 -0
- package/lib/webrtc/stats/statsReport.d.ts.map +1 -0
- package/lib/webrtc/stats/statsReport.js +32 -0
- package/lib/webrtc/stats/statsReport.js.map +1 -0
- package/lib/webrtc/stats/statsReportEmitter.d.ts +15 -0
- package/lib/webrtc/stats/statsReportEmitter.d.ts.map +1 -0
- package/lib/webrtc/stats/statsReportEmitter.js +33 -0
- package/lib/webrtc/stats/statsReportEmitter.js.map +1 -0
- package/lib/webrtc/stats/summaryStatsReportGatherer.d.ts +16 -0
- package/lib/webrtc/stats/summaryStatsReportGatherer.d.ts.map +1 -0
- package/lib/webrtc/stats/summaryStatsReportGatherer.js +116 -0
- package/lib/webrtc/stats/summaryStatsReportGatherer.js.map +1 -0
- package/lib/webrtc/stats/trackStatsBuilder.d.ts +19 -0
- package/lib/webrtc/stats/trackStatsBuilder.d.ts.map +1 -0
- package/lib/webrtc/stats/trackStatsBuilder.js +168 -0
- package/lib/webrtc/stats/trackStatsBuilder.js.map +1 -0
- package/lib/webrtc/stats/transportStats.d.ts +11 -0
- package/lib/webrtc/stats/transportStats.d.ts.map +1 -0
- package/lib/webrtc/stats/transportStats.js +1 -0
- package/lib/webrtc/stats/transportStats.js.map +1 -0
- package/lib/webrtc/stats/transportStatsBuilder.d.ts +5 -0
- package/lib/webrtc/stats/transportStatsBuilder.d.ts.map +1 -0
- package/lib/webrtc/stats/transportStatsBuilder.js +34 -0
- package/lib/webrtc/stats/transportStatsBuilder.js.map +1 -0
- package/lib/webrtc/stats/valueFormatter.d.ts +4 -0
- package/lib/webrtc/stats/valueFormatter.d.ts.map +1 -0
- package/lib/webrtc/stats/valueFormatter.js +25 -0
- package/lib/webrtc/stats/valueFormatter.js.map +1 -0
- package/package.json +134 -0
- package/src/@types/AESEncryptedSecretStoragePayload.ts +29 -0
- package/src/@types/IIdentityServerProvider.ts +24 -0
- package/src/@types/PushRules.ts +209 -0
- package/src/@types/another-json.d.ts +19 -0
- package/src/@types/auth.ts +252 -0
- package/src/@types/beacon.ts +140 -0
- package/src/@types/common.ts +22 -0
- package/src/@types/crypto.ts +73 -0
- package/src/@types/event.ts +370 -0
- package/src/@types/events.ts +119 -0
- package/src/@types/extensible_events.ts +150 -0
- package/src/@types/global.d.ts +70 -0
- package/src/@types/local_notifications.ts +19 -0
- package/src/@types/location.ts +92 -0
- package/src/@types/matrix-sdk-crypto-wasm.d.ts +44 -0
- package/src/@types/media.ts +245 -0
- package/src/@types/membership.ts +57 -0
- package/src/@types/oidc-client-ts.d.ts +24 -0
- package/src/@types/partials.ts +67 -0
- package/src/@types/polls.ts +119 -0
- package/src/@types/read_receipts.ts +61 -0
- package/src/@types/registration.ts +102 -0
- package/src/@types/requests.ts +314 -0
- package/src/@types/search.ts +119 -0
- package/src/@types/signed.ts +25 -0
- package/src/@types/spaces.ts +37 -0
- package/src/@types/state_events.ts +147 -0
- package/src/@types/synapse.ts +40 -0
- package/src/@types/sync.ts +27 -0
- package/src/@types/threepids.ts +29 -0
- package/src/@types/topic.ts +63 -0
- package/src/@types/uia.ts +29 -0
- package/src/NamespacedValue.ts +123 -0
- package/src/ReEmitter.ts +93 -0
- package/src/ToDeviceMessageQueue.ts +153 -0
- package/src/autodiscovery.ts +505 -0
- package/src/base64.ts +88 -0
- package/src/browser-index.ts +44 -0
- package/src/client.ts +10474 -0
- package/src/common-crypto/CryptoBackend.ts +302 -0
- package/src/common-crypto/README.md +4 -0
- package/src/common-crypto/key-passphrase.ts +43 -0
- package/src/content-helpers.ts +288 -0
- package/src/content-repo.ts +117 -0
- package/src/crypto/CrossSigning.ts +773 -0
- package/src/crypto/DeviceList.ts +989 -0
- package/src/crypto/EncryptionSetup.ts +351 -0
- package/src/crypto/OlmDevice.ts +1500 -0
- package/src/crypto/OutgoingRoomKeyRequestManager.ts +485 -0
- package/src/crypto/RoomList.ts +70 -0
- package/src/crypto/SecretSharing.ts +240 -0
- package/src/crypto/SecretStorage.ts +136 -0
- package/src/crypto/aes.ts +23 -0
- package/src/crypto/algorithms/base.ts +236 -0
- package/src/crypto/algorithms/index.ts +20 -0
- package/src/crypto/algorithms/megolm.ts +2216 -0
- package/src/crypto/algorithms/olm.ts +381 -0
- package/src/crypto/api.ts +70 -0
- package/src/crypto/backup.ts +922 -0
- package/src/crypto/crypto.ts +18 -0
- package/src/crypto/dehydration.ts +272 -0
- package/src/crypto/device-converter.ts +45 -0
- package/src/crypto/deviceinfo.ts +158 -0
- package/src/crypto/index.ts +4414 -0
- package/src/crypto/key_passphrase.ts +42 -0
- package/src/crypto/keybackup.ts +47 -0
- package/src/crypto/olmlib.ts +539 -0
- package/src/crypto/recoverykey.ts +18 -0
- package/src/crypto/store/base.ts +348 -0
- package/src/crypto/store/indexeddb-crypto-store-backend.ts +1250 -0
- package/src/crypto/store/indexeddb-crypto-store.ts +845 -0
- package/src/crypto/store/localStorage-crypto-store.ts +579 -0
- package/src/crypto/store/memory-crypto-store.ts +680 -0
- package/src/crypto/verification/Base.ts +409 -0
- package/src/crypto/verification/Error.ts +76 -0
- package/src/crypto/verification/IllegalMethod.ts +50 -0
- package/src/crypto/verification/QRCode.ts +310 -0
- package/src/crypto/verification/SAS.ts +494 -0
- package/src/crypto/verification/SASDecimal.ts +37 -0
- package/src/crypto/verification/request/Channel.ts +34 -0
- package/src/crypto/verification/request/InRoomChannel.ts +371 -0
- package/src/crypto/verification/request/ToDeviceChannel.ts +354 -0
- package/src/crypto/verification/request/VerificationRequest.ts +976 -0
- package/src/crypto-api/CryptoEvent.ts +93 -0
- package/src/crypto-api/CryptoEventHandlerMap.ts +32 -0
- package/src/crypto-api/index.ts +1175 -0
- package/src/crypto-api/key-passphrase.ts +58 -0
- package/src/crypto-api/keybackup.ts +115 -0
- package/src/crypto-api/recovery-key.ts +69 -0
- package/src/crypto-api/verification.ts +408 -0
- package/src/digest.ts +34 -0
- package/src/embedded.ts +631 -0
- package/src/errors.ts +54 -0
- package/src/event-mapper.ts +97 -0
- package/src/extensible_events_v1/ExtensibleEvent.ts +58 -0
- package/src/extensible_events_v1/InvalidEventError.ts +24 -0
- package/src/extensible_events_v1/MessageEvent.ts +145 -0
- package/src/extensible_events_v1/PollEndEvent.ts +97 -0
- package/src/extensible_events_v1/PollResponseEvent.ts +148 -0
- package/src/extensible_events_v1/PollStartEvent.ts +207 -0
- package/src/extensible_events_v1/utilities.ts +35 -0
- package/src/feature.ts +87 -0
- package/src/filter-component.ts +207 -0
- package/src/filter.ts +245 -0
- package/src/http-api/errors.ts +199 -0
- package/src/http-api/fetch.ts +383 -0
- package/src/http-api/index.ts +191 -0
- package/src/http-api/interface.ts +178 -0
- package/src/http-api/method.ts +25 -0
- package/src/http-api/prefix.ts +48 -0
- package/src/http-api/utils.ts +200 -0
- package/src/index.ts +25 -0
- package/src/indexeddb-helpers.ts +50 -0
- package/src/indexeddb-worker.ts +24 -0
- package/src/interactive-auth.ts +694 -0
- package/src/logger.ts +185 -0
- package/src/matrix.ts +177 -0
- package/src/matrixrtc/CallMembership.ts +247 -0
- package/src/matrixrtc/LivekitFocus.ts +39 -0
- package/src/matrixrtc/MatrixRTCSession.ts +1319 -0
- package/src/matrixrtc/MatrixRTCSessionManager.ts +166 -0
- package/src/matrixrtc/focus.ts +25 -0
- package/src/matrixrtc/index.ts +22 -0
- package/src/matrixrtc/types.ts +36 -0
- package/src/models/MSC3089Branch.ts +272 -0
- package/src/models/MSC3089TreeSpace.ts +565 -0
- package/src/models/ToDeviceMessage.ts +38 -0
- package/src/models/beacon.ts +214 -0
- package/src/models/compare-event-ordering.ts +139 -0
- package/src/models/device.ts +85 -0
- package/src/models/event-context.ts +110 -0
- package/src/models/event-status.ts +39 -0
- package/src/models/event-timeline-set.ts +979 -0
- package/src/models/event-timeline.ts +476 -0
- package/src/models/event.ts +1751 -0
- package/src/models/invites-ignorer.ts +376 -0
- package/src/models/poll.ts +285 -0
- package/src/models/profile-keys.ts +7 -0
- package/src/models/read-receipt.ts +422 -0
- package/src/models/related-relations.ts +39 -0
- package/src/models/relations-container.ts +149 -0
- package/src/models/relations.ts +368 -0
- package/src/models/room-member.ts +457 -0
- package/src/models/room-receipts.ts +439 -0
- package/src/models/room-state.ts +1130 -0
- package/src/models/room-summary.ts +47 -0
- package/src/models/room.ts +3822 -0
- package/src/models/search-result.ts +57 -0
- package/src/models/thread.ts +923 -0
- package/src/models/typed-event-emitter.ts +246 -0
- package/src/models/user.ts +302 -0
- package/src/oidc/authorize.ts +274 -0
- package/src/oidc/discovery.ts +60 -0
- package/src/oidc/error.ts +33 -0
- package/src/oidc/index.ts +34 -0
- package/src/oidc/register.ts +123 -0
- package/src/oidc/tokenRefresher.ts +149 -0
- package/src/oidc/validate.ts +282 -0
- package/src/pushprocessor.ts +837 -0
- package/src/randomstring.ts +51 -0
- package/src/realtime-callbacks.ts +191 -0
- package/src/receipt-accumulator.ts +189 -0
- package/src/rendezvous/MSC4108SignInWithQR.ts +444 -0
- package/src/rendezvous/RendezvousChannel.ts +48 -0
- package/src/rendezvous/RendezvousCode.ts +25 -0
- package/src/rendezvous/RendezvousError.ts +26 -0
- package/src/rendezvous/RendezvousFailureReason.ts +49 -0
- package/src/rendezvous/RendezvousIntent.ts +20 -0
- package/src/rendezvous/RendezvousTransport.ts +58 -0
- package/src/rendezvous/channels/MSC4108SecureChannel.ts +270 -0
- package/src/rendezvous/channels/index.ts +17 -0
- package/src/rendezvous/index.ts +25 -0
- package/src/rendezvous/transports/MSC4108RendezvousSession.ts +270 -0
- package/src/rendezvous/transports/index.ts +17 -0
- package/src/room-hierarchy.ts +152 -0
- package/src/rust-crypto/CrossSigningIdentity.ts +183 -0
- package/src/rust-crypto/DehydratedDeviceManager.ts +306 -0
- package/src/rust-crypto/KeyClaimManager.ts +86 -0
- package/src/rust-crypto/OutgoingRequestProcessor.ts +236 -0
- package/src/rust-crypto/OutgoingRequestsManager.ts +143 -0
- package/src/rust-crypto/PerSessionKeyBackupDownloader.ts +501 -0
- package/src/rust-crypto/RoomEncryptor.ts +352 -0
- package/src/rust-crypto/backup.ts +881 -0
- package/src/rust-crypto/constants.ts +18 -0
- package/src/rust-crypto/device-converter.ts +128 -0
- package/src/rust-crypto/index.ts +237 -0
- package/src/rust-crypto/libolm_migration.ts +530 -0
- package/src/rust-crypto/rust-crypto.ts +2205 -0
- package/src/rust-crypto/secret-storage.ts +60 -0
- package/src/rust-crypto/verification.ts +830 -0
- package/src/scheduler.ts +309 -0
- package/src/secret-storage.ts +693 -0
- package/src/serverCapabilities.ts +139 -0
- package/src/service-types.ts +20 -0
- package/src/sliding-sync-sdk.ts +1026 -0
- package/src/sliding-sync.ts +965 -0
- package/src/store/index.ts +261 -0
- package/src/store/indexeddb-backend.ts +41 -0
- package/src/store/indexeddb-local-backend.ts +610 -0
- package/src/store/indexeddb-remote-backend.ts +213 -0
- package/src/store/indexeddb-store-worker.ts +157 -0
- package/src/store/indexeddb.ts +397 -0
- package/src/store/local-storage-events-emitter.ts +46 -0
- package/src/store/memory.ts +448 -0
- package/src/store/stub.ts +280 -0
- package/src/sync-accumulator.ts +689 -0
- package/src/sync.ts +1920 -0
- package/src/testing.ts +191 -0
- package/src/thread-utils.ts +31 -0
- package/src/timeline-window.ts +536 -0
- package/src/types.ts +59 -0
- package/src/utils/decryptAESSecretStorageItem.ts +54 -0
- package/src/utils/encryptAESSecretStorageItem.ts +73 -0
- package/src/utils/internal/deriveKeys.ts +63 -0
- package/src/utils.ts +763 -0
- package/src/version-support.ts +36 -0
- package/src/webrtc/audioContext.ts +44 -0
- package/src/webrtc/call.ts +3074 -0
- package/src/webrtc/callEventHandler.ts +425 -0
- package/src/webrtc/callEventTypes.ts +93 -0
- package/src/webrtc/callFeed.ts +364 -0
- package/src/webrtc/groupCall.ts +1735 -0
- package/src/webrtc/groupCallEventHandler.ts +234 -0
- package/src/webrtc/mediaHandler.ts +484 -0
- package/src/webrtc/stats/callFeedStatsReporter.ts +94 -0
- package/src/webrtc/stats/callStatsReportGatherer.ts +219 -0
- package/src/webrtc/stats/callStatsReportSummary.ts +30 -0
- package/src/webrtc/stats/connectionStats.ts +47 -0
- package/src/webrtc/stats/connectionStatsBuilder.ts +28 -0
- package/src/webrtc/stats/connectionStatsReportBuilder.ts +140 -0
- package/src/webrtc/stats/groupCallStats.ts +93 -0
- package/src/webrtc/stats/media/mediaSsrcHandler.ts +57 -0
- package/src/webrtc/stats/media/mediaTrackHandler.ts +76 -0
- package/src/webrtc/stats/media/mediaTrackStats.ts +176 -0
- package/src/webrtc/stats/media/mediaTrackStatsHandler.ts +90 -0
- package/src/webrtc/stats/statsReport.ts +133 -0
- package/src/webrtc/stats/statsReportEmitter.ts +49 -0
- package/src/webrtc/stats/summaryStatsReportGatherer.ts +148 -0
- package/src/webrtc/stats/trackStatsBuilder.ts +207 -0
- package/src/webrtc/stats/transportStats.ts +26 -0
- package/src/webrtc/stats/transportStatsBuilder.ts +48 -0
- package/src/webrtc/stats/valueFormatter.ts +27 -0
@@ -0,0 +1,9 @@
|
|
1
|
+
import { RendezvousTransportDetails, RendezvousIntent } from "./index.ts";
|
2
|
+
export interface RendezvousCode {
|
3
|
+
intent: RendezvousIntent;
|
4
|
+
rendezvous?: {
|
5
|
+
transport: RendezvousTransportDetails;
|
6
|
+
algorithm: string;
|
7
|
+
};
|
8
|
+
}
|
9
|
+
//# sourceMappingURL=RendezvousCode.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousCode.d.ts","sourceRoot":"","sources":["../../src/rendezvous/RendezvousCode.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE1E,MAAM,WAAW,cAAc;IAC3B,MAAM,EAAE,gBAAgB,CAAC;IACzB,UAAU,CAAC,EAAE;QACT,SAAS,EAAE,0BAA0B,CAAC;QACtC,SAAS,EAAE,MAAM,CAAC;KACrB,CAAC;CACL"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousCode.js","names":[],"sources":["../../src/rendezvous/RendezvousCode.ts"],"sourcesContent":["/*\nCopyright 2022 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { RendezvousTransportDetails, RendezvousIntent } from \"./index.ts\";\n\nexport interface RendezvousCode {\n intent: RendezvousIntent;\n rendezvous?: {\n transport: RendezvousTransportDetails;\n algorithm: string;\n };\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousError.d.ts","sourceRoot":"","sources":["../../src/rendezvous/RendezvousError.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAErD,qBAAa,eAAgB,SAAQ,KAAK;aAGlB,IAAI,EAAE,uBAAuB;gBAD7C,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,uBAAuB;CAIpD"}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
/*
|
2
|
+
Copyright 2022 The Matrix.org Foundation C.I.C.
|
3
|
+
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
you may not use this file except in compliance with the License.
|
6
|
+
You may obtain a copy of the License at
|
7
|
+
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
See the License for the specific language governing permissions and
|
14
|
+
limitations under the License.
|
15
|
+
*/
|
16
|
+
|
17
|
+
export class RendezvousError extends Error {
|
18
|
+
constructor(message, code) {
|
19
|
+
super(message);
|
20
|
+
this.code = code;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
//# sourceMappingURL=RendezvousError.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousError.js","names":["RendezvousError","Error","constructor","message","code"],"sources":["../../src/rendezvous/RendezvousError.ts"],"sourcesContent":["/*\nCopyright 2022 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { RendezvousFailureReason } from \"./index.ts\";\n\nexport class RendezvousError extends Error {\n public constructor(\n message: string,\n public readonly code: RendezvousFailureReason,\n ) {\n super(message);\n }\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA,OAAO,MAAMA,eAAe,SAASC,KAAK,CAAC;EAChCC,WAAWA,CACdC,OAAe,EACCC,IAA6B,EAC/C;IACE,KAAK,CAACD,OAAO,CAAC;IAAC,KAFCC,IAA6B,GAA7BA,IAA6B;EAGjD;AACJ","ignoreList":[]}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
export type RendezvousFailureListener = (reason: RendezvousFailureReason) => void;
|
2
|
+
export type RendezvousFailureReason = MSC4108FailureReason | ClientRendezvousFailureReason;
|
3
|
+
export declare enum MSC4108FailureReason {
|
4
|
+
AuthorizationExpired = "authorization_expired",
|
5
|
+
DeviceAlreadyExists = "device_already_exists",
|
6
|
+
DeviceNotFound = "device_not_found",
|
7
|
+
UnexpectedMessageReceived = "unexpected_message_received",
|
8
|
+
UnsupportedProtocol = "unsupported_protocol",
|
9
|
+
UserCancelled = "user_cancelled"
|
10
|
+
}
|
11
|
+
export declare enum ClientRendezvousFailureReason {
|
12
|
+
/** The sign in request has expired */
|
13
|
+
Expired = "expired",
|
14
|
+
/** The homeserver is lacking support for the required features */
|
15
|
+
HomeserverLacksSupport = "homeserver_lacks_support",
|
16
|
+
/** The secure channel verification failed meaning that it might be compromised */
|
17
|
+
InsecureChannelDetected = "insecure_channel_detected",
|
18
|
+
/** An invalid/incompatible QR code was scanned */
|
19
|
+
InvalidCode = "invalid_code",
|
20
|
+
/** The other device is not signed in */
|
21
|
+
OtherDeviceNotSignedIn = "other_device_not_signed_in",
|
22
|
+
/** The other device is already signed in */
|
23
|
+
OtherDeviceAlreadySignedIn = "other_device_already_signed_in",
|
24
|
+
/** Other */
|
25
|
+
Unknown = "unknown",
|
26
|
+
/** The user declined the sign in request */
|
27
|
+
UserDeclined = "user_declined",
|
28
|
+
/** The rendezvous request is missing an ETag header */
|
29
|
+
ETagMissing = "etag_missing"
|
30
|
+
}
|
31
|
+
//# sourceMappingURL=RendezvousFailureReason.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousFailureReason.d.ts","sourceRoot":"","sources":["../../src/rendezvous/RendezvousFailureReason.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,yBAAyB,GAAG,CAAC,MAAM,EAAE,uBAAuB,KAAK,IAAI,CAAC;AAElF,MAAM,MAAM,uBAAuB,GAAG,oBAAoB,GAAG,6BAA6B,CAAC;AAE3F,oBAAY,oBAAoB;IAC5B,oBAAoB,0BAA0B;IAC9C,mBAAmB,0BAA0B;IAC7C,cAAc,qBAAqB;IACnC,yBAAyB,gCAAgC;IACzD,mBAAmB,yBAAyB;IAC5C,aAAa,mBAAmB;CACnC;AAED,oBAAY,6BAA6B;IACrC,sCAAsC;IACtC,OAAO,YAAY;IACnB,kEAAkE;IAClE,sBAAsB,6BAA6B;IACnD,kFAAkF;IAClF,uBAAuB,8BAA8B;IACrD,kDAAkD;IAClD,WAAW,iBAAiB;IAC5B,wCAAwC;IACxC,sBAAsB,+BAA+B;IACrD,4CAA4C;IAC5C,0BAA0B,mCAAmC;IAC7D,YAAY;IACZ,OAAO,YAAY;IACnB,4CAA4C;IAC5C,YAAY,kBAAkB;IAC9B,uDAAuD;IACvD,WAAW,iBAAiB;CAC/B"}
|
@@ -0,0 +1,38 @@
|
|
1
|
+
/*
|
2
|
+
Copyright 2022 The Matrix.org Foundation C.I.C.
|
3
|
+
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
you may not use this file except in compliance with the License.
|
6
|
+
You may obtain a copy of the License at
|
7
|
+
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
See the License for the specific language governing permissions and
|
14
|
+
limitations under the License.
|
15
|
+
*/
|
16
|
+
|
17
|
+
export var MSC4108FailureReason = /*#__PURE__*/function (MSC4108FailureReason) {
|
18
|
+
MSC4108FailureReason["AuthorizationExpired"] = "authorization_expired";
|
19
|
+
MSC4108FailureReason["DeviceAlreadyExists"] = "device_already_exists";
|
20
|
+
MSC4108FailureReason["DeviceNotFound"] = "device_not_found";
|
21
|
+
MSC4108FailureReason["UnexpectedMessageReceived"] = "unexpected_message_received";
|
22
|
+
MSC4108FailureReason["UnsupportedProtocol"] = "unsupported_protocol";
|
23
|
+
MSC4108FailureReason["UserCancelled"] = "user_cancelled";
|
24
|
+
return MSC4108FailureReason;
|
25
|
+
}({});
|
26
|
+
export var ClientRendezvousFailureReason = /*#__PURE__*/function (ClientRendezvousFailureReason) {
|
27
|
+
ClientRendezvousFailureReason["Expired"] = "expired";
|
28
|
+
ClientRendezvousFailureReason["HomeserverLacksSupport"] = "homeserver_lacks_support";
|
29
|
+
ClientRendezvousFailureReason["InsecureChannelDetected"] = "insecure_channel_detected";
|
30
|
+
ClientRendezvousFailureReason["InvalidCode"] = "invalid_code";
|
31
|
+
ClientRendezvousFailureReason["OtherDeviceNotSignedIn"] = "other_device_not_signed_in";
|
32
|
+
ClientRendezvousFailureReason["OtherDeviceAlreadySignedIn"] = "other_device_already_signed_in";
|
33
|
+
ClientRendezvousFailureReason["Unknown"] = "unknown";
|
34
|
+
ClientRendezvousFailureReason["UserDeclined"] = "user_declined";
|
35
|
+
ClientRendezvousFailureReason["ETagMissing"] = "etag_missing";
|
36
|
+
return ClientRendezvousFailureReason;
|
37
|
+
}({});
|
38
|
+
//# sourceMappingURL=RendezvousFailureReason.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousFailureReason.js","names":["MSC4108FailureReason","ClientRendezvousFailureReason"],"sources":["../../src/rendezvous/RendezvousFailureReason.ts"],"sourcesContent":["/*\nCopyright 2022 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport type RendezvousFailureListener = (reason: RendezvousFailureReason) => void;\n\nexport type RendezvousFailureReason = MSC4108FailureReason | ClientRendezvousFailureReason;\n\nexport enum MSC4108FailureReason {\n AuthorizationExpired = \"authorization_expired\",\n DeviceAlreadyExists = \"device_already_exists\",\n DeviceNotFound = \"device_not_found\",\n UnexpectedMessageReceived = \"unexpected_message_received\",\n UnsupportedProtocol = \"unsupported_protocol\",\n UserCancelled = \"user_cancelled\",\n}\n\nexport enum ClientRendezvousFailureReason {\n /** The sign in request has expired */\n Expired = \"expired\",\n /** The homeserver is lacking support for the required features */\n HomeserverLacksSupport = \"homeserver_lacks_support\",\n /** The secure channel verification failed meaning that it might be compromised */\n InsecureChannelDetected = \"insecure_channel_detected\",\n /** An invalid/incompatible QR code was scanned */\n InvalidCode = \"invalid_code\",\n /** The other device is not signed in */\n OtherDeviceNotSignedIn = \"other_device_not_signed_in\",\n /** The other device is already signed in */\n OtherDeviceAlreadySignedIn = \"other_device_already_signed_in\",\n /** Other */\n Unknown = \"unknown\",\n /** The user declined the sign in request */\n UserDeclined = \"user_declined\",\n /** The rendezvous request is missing an ETag header */\n ETagMissing = \"etag_missing\",\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAMA,WAAYA,oBAAoB,0BAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAApBA,oBAAoB;EAAA,OAApBA,oBAAoB;AAAA;AAShC,WAAYC,6BAA6B,0BAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAA7BA,6BAA6B;EAAA,OAA7BA,6BAA6B;AAAA","ignoreList":[]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousIntent.d.ts","sourceRoot":"","sources":["../../src/rendezvous/RendezvousIntent.ts"],"names":[],"mappings":"AAgBA,oBAAY,gBAAgB;IACxB,mBAAmB,gBAAgB;IACnC,oCAAoC,sBAAsB;CAC7D"}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
/*
|
2
|
+
Copyright 2022 The Matrix.org Foundation C.I.C.
|
3
|
+
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
you may not use this file except in compliance with the License.
|
6
|
+
You may obtain a copy of the License at
|
7
|
+
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
See the License for the specific language governing permissions and
|
14
|
+
limitations under the License.
|
15
|
+
*/
|
16
|
+
|
17
|
+
export var RendezvousIntent = /*#__PURE__*/function (RendezvousIntent) {
|
18
|
+
RendezvousIntent["LOGIN_ON_NEW_DEVICE"] = "login.start";
|
19
|
+
RendezvousIntent["RECIPROCATE_LOGIN_ON_EXISTING_DEVICE"] = "login.reciprocate";
|
20
|
+
return RendezvousIntent;
|
21
|
+
}({});
|
22
|
+
//# sourceMappingURL=RendezvousIntent.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousIntent.js","names":["RendezvousIntent"],"sources":["../../src/rendezvous/RendezvousIntent.ts"],"sourcesContent":["/*\nCopyright 2022 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport enum RendezvousIntent {\n LOGIN_ON_NEW_DEVICE = \"login.start\",\n RECIPROCATE_LOGIN_ON_EXISTING_DEVICE = \"login.reciprocate\",\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,WAAYA,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA","ignoreList":[]}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import { RendezvousFailureListener, RendezvousFailureReason } from "./index.ts";
|
2
|
+
export interface RendezvousTransportDetails {
|
3
|
+
type: string;
|
4
|
+
}
|
5
|
+
/**
|
6
|
+
* Interface representing a generic rendezvous transport.
|
7
|
+
*/
|
8
|
+
export interface RendezvousTransport<T> {
|
9
|
+
/**
|
10
|
+
* Ready state of the transport. This is set to true when the transport is ready to be used.
|
11
|
+
*/
|
12
|
+
readonly ready: boolean;
|
13
|
+
/**
|
14
|
+
* Listener for cancellation events. This is called when the rendezvous is cancelled or fails.
|
15
|
+
*/
|
16
|
+
onFailure?: RendezvousFailureListener;
|
17
|
+
/**
|
18
|
+
* @returns the transport details that can be encoded in a QR or similar
|
19
|
+
*/
|
20
|
+
details(): Promise<RendezvousTransportDetails>;
|
21
|
+
/**
|
22
|
+
* Send data via the transport.
|
23
|
+
* @param data - the data itself
|
24
|
+
*/
|
25
|
+
send(data: T): Promise<void>;
|
26
|
+
/**
|
27
|
+
* Receive data from the transport.
|
28
|
+
*/
|
29
|
+
receive(): Promise<Partial<T> | undefined>;
|
30
|
+
/**
|
31
|
+
* Cancel the rendezvous. This will call `onCancelled()` if it is set.
|
32
|
+
* @param reason - the reason for the cancellation/failure
|
33
|
+
*/
|
34
|
+
cancel(reason: RendezvousFailureReason): Promise<void>;
|
35
|
+
}
|
36
|
+
//# sourceMappingURL=RendezvousTransport.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousTransport.d.ts","sourceRoot":"","sources":["../../src/rendezvous/RendezvousTransport.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAEhF,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB,CAAC,CAAC;IAClC;;OAEG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE,yBAAyB,CAAC;IAEtC;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,0BAA0B,CAAC,CAAC;IAE/C;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7B;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAE3C;;;OAGG;IACH,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D"}
|
@@ -0,0 +1 @@
|
|
1
|
+
export {};
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"RendezvousTransport.js","names":[],"sources":["../../src/rendezvous/RendezvousTransport.ts"],"sourcesContent":["/*\nCopyright 2022 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport { RendezvousFailureListener, RendezvousFailureReason } from \"./index.ts\";\n\nexport interface RendezvousTransportDetails {\n type: string;\n}\n\n/**\n * Interface representing a generic rendezvous transport.\n */\nexport interface RendezvousTransport<T> {\n /**\n * Ready state of the transport. This is set to true when the transport is ready to be used.\n */\n readonly ready: boolean;\n\n /**\n * Listener for cancellation events. This is called when the rendezvous is cancelled or fails.\n */\n onFailure?: RendezvousFailureListener;\n\n /**\n * @returns the transport details that can be encoded in a QR or similar\n */\n details(): Promise<RendezvousTransportDetails>;\n\n /**\n * Send data via the transport.\n * @param data - the data itself\n */\n send(data: T): Promise<void>;\n\n /**\n * Receive data from the transport.\n */\n receive(): Promise<Partial<T> | undefined>;\n\n /**\n * Cancel the rendezvous. This will call `onCancelled()` if it is set.\n * @param reason - the reason for the cancellation/failure\n */\n cancel(reason: RendezvousFailureReason): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
|
@@ -0,0 +1,58 @@
|
|
1
|
+
import { Curve25519PublicKey, QrCodeMode } from "@matrix-org/matrix-sdk-crypto-wasm";
|
2
|
+
import { ClientRendezvousFailureReason, MSC4108FailureReason, MSC4108Payload, RendezvousFailureListener } from "../index.ts";
|
3
|
+
import { MSC4108RendezvousSession } from "../transports/MSC4108RendezvousSession.ts";
|
4
|
+
/**
|
5
|
+
* Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
|
6
|
+
* secure rendezvous session protocol.
|
7
|
+
* @experimental Note that this is UNSTABLE and may have breaking changes without notice.
|
8
|
+
* Imports @matrix-org/matrix-sdk-crypto-wasm so should be async-imported to avoid bundling the WASM into the main bundle.
|
9
|
+
*/
|
10
|
+
export declare class MSC4108SecureChannel {
|
11
|
+
private rendezvousSession;
|
12
|
+
private theirPublicKey?;
|
13
|
+
onFailure?: RendezvousFailureListener | undefined;
|
14
|
+
private readonly secureChannel;
|
15
|
+
private establishedChannel?;
|
16
|
+
private connected;
|
17
|
+
constructor(rendezvousSession: MSC4108RendezvousSession, theirPublicKey?: Curve25519PublicKey | undefined, onFailure?: RendezvousFailureListener | undefined);
|
18
|
+
/**
|
19
|
+
* Generate a QR code for the current session.
|
20
|
+
* @param mode the mode to generate the QR code in, either `Login` or `Reciprocate`.
|
21
|
+
* @param serverName the name of the homeserver to connect to, as defined by server discovery in the spec, required for `Reciprocate` mode.
|
22
|
+
*/
|
23
|
+
generateCode(mode: QrCodeMode.Login): Promise<Uint8Array>;
|
24
|
+
generateCode(mode: QrCodeMode.Reciprocate, serverName: string): Promise<Uint8Array>;
|
25
|
+
/**
|
26
|
+
* Returns the check code for the secure channel or undefined if not generated yet.
|
27
|
+
*/
|
28
|
+
getCheckCode(): string | undefined;
|
29
|
+
/**
|
30
|
+
* Connects and establishes a secure channel with the other device.
|
31
|
+
*/
|
32
|
+
connect(): Promise<void>;
|
33
|
+
private decrypt;
|
34
|
+
private encrypt;
|
35
|
+
/**
|
36
|
+
* Sends a payload securely to the other device.
|
37
|
+
* @param payload the payload to encrypt and send
|
38
|
+
*/
|
39
|
+
secureSend<T extends MSC4108Payload>(payload: T): Promise<void>;
|
40
|
+
/**
|
41
|
+
* Receives an encrypted payload from the other device and decrypts it.
|
42
|
+
*/
|
43
|
+
secureReceive<T extends MSC4108Payload>(): Promise<Partial<T> | undefined>;
|
44
|
+
/**
|
45
|
+
* Closes the secure channel.
|
46
|
+
*/
|
47
|
+
close(): Promise<void>;
|
48
|
+
/**
|
49
|
+
* Cancels the secure channel.
|
50
|
+
* @param reason the reason for the cancellation
|
51
|
+
*/
|
52
|
+
cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise<void>;
|
53
|
+
/**
|
54
|
+
* Returns whether the rendezvous session has been cancelled.
|
55
|
+
*/
|
56
|
+
get cancelled(): boolean;
|
57
|
+
}
|
58
|
+
//# sourceMappingURL=MSC4108SecureChannel.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MSC4108SecureChannel.d.ts","sourceRoot":"","sources":["../../../src/rendezvous/channels/MSC4108SecureChannel.ts"],"names":[],"mappings":"AAgBA,OAAO,EACH,mBAAmB,EAInB,UAAU,EACb,MAAM,oCAAoC,CAAC;AAE5C,OAAO,EACH,6BAA6B,EAC7B,oBAAoB,EACpB,cAAc,EAEd,yBAAyB,EAC5B,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAGrF;;;;;GAKG;AACH,qBAAa,oBAAoB;IAMzB,OAAO,CAAC,iBAAiB;IACzB,OAAO,CAAC,cAAc,CAAC;IAChB,SAAS,CAAC,EAAE,yBAAyB;IAPhD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAQ;IACtC,OAAO,CAAC,kBAAkB,CAAC,CAAmB;IAC9C,OAAO,CAAC,SAAS,CAAS;gBAGd,iBAAiB,EAAE,wBAAwB,EAC3C,cAAc,CAAC,EAAE,mBAAmB,YAAA,EACrC,SAAS,CAAC,EAAE,yBAAyB,YAAA;IAKhD;;;;OAIG;IACU,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;IACzD,YAAY,CAAC,IAAI,EAAE,UAAU,CAAC,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAehG;;OAEG;IACI,YAAY,IAAI,MAAM,GAAG,SAAS;IAWzC;;OAEG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAsGvB,OAAO;YAQP,OAAO;IAQrB;;;OAGG;IACU,UAAU,CAAC,CAAC,SAAS,cAAc,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5E;;OAEG;IACU,aAAa,CAAC,CAAC,SAAS,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;IAgBvF;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAInC;;;OAGG;IACU,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAShG;;OAEG;IACH,IAAW,SAAS,IAAI,OAAO,CAE9B;CACJ"}
|
@@ -0,0 +1,246 @@
|
|
1
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
2
|
+
import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
3
|
+
/*
|
4
|
+
Copyright 2024 The Matrix.org Foundation C.I.C.
|
5
|
+
|
6
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
7
|
+
you may not use this file except in compliance with the License.
|
8
|
+
You may obtain a copy of the License at
|
9
|
+
|
10
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
11
|
+
|
12
|
+
Unless required by applicable law or agreed to in writing, software
|
13
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
14
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
15
|
+
See the License for the specific language governing permissions and
|
16
|
+
limitations under the License.
|
17
|
+
*/
|
18
|
+
|
19
|
+
import { Ecies, QrCodeData, QrCodeMode } from "@matrix-org/matrix-sdk-crypto-wasm";
|
20
|
+
import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousError } from "../index.js";
|
21
|
+
import { logger } from "../../logger.js";
|
22
|
+
|
23
|
+
/**
|
24
|
+
* Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
|
25
|
+
* secure rendezvous session protocol.
|
26
|
+
* @experimental Note that this is UNSTABLE and may have breaking changes without notice.
|
27
|
+
* Imports @matrix-org/matrix-sdk-crypto-wasm so should be async-imported to avoid bundling the WASM into the main bundle.
|
28
|
+
*/
|
29
|
+
export class MSC4108SecureChannel {
|
30
|
+
constructor(rendezvousSession, theirPublicKey, onFailure) {
|
31
|
+
this.rendezvousSession = rendezvousSession;
|
32
|
+
this.theirPublicKey = theirPublicKey;
|
33
|
+
this.onFailure = onFailure;
|
34
|
+
_defineProperty(this, "secureChannel", void 0);
|
35
|
+
_defineProperty(this, "establishedChannel", void 0);
|
36
|
+
_defineProperty(this, "connected", false);
|
37
|
+
this.secureChannel = new Ecies();
|
38
|
+
}
|
39
|
+
|
40
|
+
/**
|
41
|
+
* Generate a QR code for the current session.
|
42
|
+
* @param mode the mode to generate the QR code in, either `Login` or `Reciprocate`.
|
43
|
+
* @param serverName the name of the homeserver to connect to, as defined by server discovery in the spec, required for `Reciprocate` mode.
|
44
|
+
*/
|
45
|
+
|
46
|
+
generateCode(mode, serverName) {
|
47
|
+
var _this = this;
|
48
|
+
return _asyncToGenerator(function* () {
|
49
|
+
var {
|
50
|
+
url
|
51
|
+
} = _this.rendezvousSession;
|
52
|
+
if (!url) {
|
53
|
+
throw new Error("No rendezvous session URL");
|
54
|
+
}
|
55
|
+
return new QrCodeData(_this.secureChannel.public_key(), url, mode === QrCodeMode.Reciprocate ? serverName : undefined).toBytes();
|
56
|
+
})();
|
57
|
+
}
|
58
|
+
|
59
|
+
/**
|
60
|
+
* Returns the check code for the secure channel or undefined if not generated yet.
|
61
|
+
*/
|
62
|
+
getCheckCode() {
|
63
|
+
var _this$establishedChan;
|
64
|
+
var x = (_this$establishedChan = this.establishedChannel) === null || _this$establishedChan === void 0 ? void 0 : _this$establishedChan.check_code();
|
65
|
+
if (!x) {
|
66
|
+
return undefined;
|
67
|
+
}
|
68
|
+
return Array.from(x.as_bytes()).map(b => "".concat(b % 10)).join("");
|
69
|
+
}
|
70
|
+
|
71
|
+
/**
|
72
|
+
* Connects and establishes a secure channel with the other device.
|
73
|
+
*/
|
74
|
+
connect() {
|
75
|
+
var _this2 = this;
|
76
|
+
return _asyncToGenerator(function* () {
|
77
|
+
if (_this2.connected) {
|
78
|
+
throw new Error("Channel already connected");
|
79
|
+
}
|
80
|
+
if (_this2.theirPublicKey) {
|
81
|
+
// We are the scanning device
|
82
|
+
var result = _this2.secureChannel.establish_outbound_channel(_this2.theirPublicKey, "MATRIX_QR_CODE_LOGIN_INITIATE");
|
83
|
+
_this2.establishedChannel = result.channel;
|
84
|
+
|
85
|
+
/*
|
86
|
+
Secure Channel step 4. Device S sends the initial message
|
87
|
+
Nonce := 0
|
88
|
+
SH := ECDH(Ss, Gp)
|
89
|
+
EncKey := HKDF_SHA256(SH, "MATRIX_QR_CODE_LOGIN|" || Gp || "|" || Sp, 0, 32)
|
90
|
+
TaggedCiphertext := ChaCha20Poly1305_Encrypt(EncKey, Nonce, "MATRIX_QR_CODE_LOGIN_INITIATE")
|
91
|
+
Nonce := Nonce + 2
|
92
|
+
LoginInitiateMessage := UnpaddedBase64(TaggedCiphertext) || "|" || UnpaddedBase64(Sp)
|
93
|
+
*/
|
94
|
+
{
|
95
|
+
logger.info("Sending LoginInitiateMessage");
|
96
|
+
yield _this2.rendezvousSession.send(result.initial_message);
|
97
|
+
}
|
98
|
+
|
99
|
+
/*
|
100
|
+
Secure Channel step 6. Verification by Device S
|
101
|
+
Nonce_G := 1
|
102
|
+
(TaggedCiphertext, Sp) := Unpack(Message)
|
103
|
+
Plaintext := ChaCha20Poly1305_Decrypt(EncKey, Nonce_G, TaggedCiphertext)
|
104
|
+
Nonce_G := Nonce_G + 2
|
105
|
+
unless Plaintext == "MATRIX_QR_CODE_LOGIN_OK":
|
106
|
+
FAIL
|
107
|
+
*/
|
108
|
+
{
|
109
|
+
logger.info("Waiting for LoginOkMessage");
|
110
|
+
var ciphertext = yield _this2.rendezvousSession.receive();
|
111
|
+
if (!ciphertext) {
|
112
|
+
throw new RendezvousError("No response from other device", MSC4108FailureReason.UnexpectedMessageReceived);
|
113
|
+
}
|
114
|
+
var candidateLoginOkMessage = yield _this2.decrypt(ciphertext);
|
115
|
+
if (candidateLoginOkMessage !== "MATRIX_QR_CODE_LOGIN_OK") {
|
116
|
+
throw new RendezvousError("Invalid response from other device", ClientRendezvousFailureReason.InsecureChannelDetected);
|
117
|
+
}
|
118
|
+
|
119
|
+
// Step 6 is now complete. We trust the channel
|
120
|
+
}
|
121
|
+
} else {
|
122
|
+
/*
|
123
|
+
Secure Channel step 5. Device G confirms
|
124
|
+
Nonce_S := 0
|
125
|
+
(TaggedCiphertext, Sp) := Unpack(LoginInitiateMessage)
|
126
|
+
SH := ECDH(Gs, Sp)
|
127
|
+
EncKey := HKDF_SHA256(SH, "MATRIX_QR_CODE_LOGIN|" || Gp || "|" || Sp, 0, 32)
|
128
|
+
Plaintext := ChaCha20Poly1305_Decrypt(EncKey, Nonce_S, TaggedCiphertext)
|
129
|
+
Nonce_S := Nonce_S + 2
|
130
|
+
*/
|
131
|
+
// wait for the other side to send us their public key
|
132
|
+
logger.info("Waiting for LoginInitiateMessage");
|
133
|
+
var loginInitiateMessage = yield _this2.rendezvousSession.receive();
|
134
|
+
if (!loginInitiateMessage) {
|
135
|
+
throw new Error("No response from other device");
|
136
|
+
}
|
137
|
+
var {
|
138
|
+
channel,
|
139
|
+
message: candidateLoginInitiateMessage
|
140
|
+
} = _this2.secureChannel.establish_inbound_channel(loginInitiateMessage);
|
141
|
+
_this2.establishedChannel = channel;
|
142
|
+
if (candidateLoginInitiateMessage !== "MATRIX_QR_CODE_LOGIN_INITIATE") {
|
143
|
+
throw new RendezvousError("Invalid response from other device", ClientRendezvousFailureReason.InsecureChannelDetected);
|
144
|
+
}
|
145
|
+
logger.info("LoginInitiateMessage received");
|
146
|
+
logger.info("Sending LoginOkMessage");
|
147
|
+
var loginOkMessage = yield _this2.encrypt("MATRIX_QR_CODE_LOGIN_OK");
|
148
|
+
yield _this2.rendezvousSession.send(loginOkMessage);
|
149
|
+
|
150
|
+
// Step 5 is complete. We don't yet trust the channel
|
151
|
+
|
152
|
+
// next step will be for the user to confirm the check code on the other device
|
153
|
+
}
|
154
|
+
_this2.connected = true;
|
155
|
+
})();
|
156
|
+
}
|
157
|
+
decrypt(ciphertext) {
|
158
|
+
var _this3 = this;
|
159
|
+
return _asyncToGenerator(function* () {
|
160
|
+
if (!_this3.establishedChannel) {
|
161
|
+
throw new Error("Channel closed");
|
162
|
+
}
|
163
|
+
return _this3.establishedChannel.decrypt(ciphertext);
|
164
|
+
})();
|
165
|
+
}
|
166
|
+
encrypt(plaintext) {
|
167
|
+
var _this4 = this;
|
168
|
+
return _asyncToGenerator(function* () {
|
169
|
+
if (!_this4.establishedChannel) {
|
170
|
+
throw new Error("Channel closed");
|
171
|
+
}
|
172
|
+
return _this4.establishedChannel.encrypt(plaintext);
|
173
|
+
})();
|
174
|
+
}
|
175
|
+
|
176
|
+
/**
|
177
|
+
* Sends a payload securely to the other device.
|
178
|
+
* @param payload the payload to encrypt and send
|
179
|
+
*/
|
180
|
+
secureSend(payload) {
|
181
|
+
var _this5 = this;
|
182
|
+
return _asyncToGenerator(function* () {
|
183
|
+
if (!_this5.connected) {
|
184
|
+
throw new Error("Channel closed");
|
185
|
+
}
|
186
|
+
var stringifiedPayload = JSON.stringify(payload);
|
187
|
+
logger.debug("=> {\"type\": ".concat(JSON.stringify(payload.type), ", ...}"));
|
188
|
+
yield _this5.rendezvousSession.send(yield _this5.encrypt(stringifiedPayload));
|
189
|
+
})();
|
190
|
+
}
|
191
|
+
|
192
|
+
/**
|
193
|
+
* Receives an encrypted payload from the other device and decrypts it.
|
194
|
+
*/
|
195
|
+
secureReceive() {
|
196
|
+
var _this6 = this;
|
197
|
+
return _asyncToGenerator(function* () {
|
198
|
+
if (!_this6.establishedChannel) {
|
199
|
+
throw new Error("Channel closed");
|
200
|
+
}
|
201
|
+
var ciphertext = yield _this6.rendezvousSession.receive();
|
202
|
+
if (!ciphertext) {
|
203
|
+
return undefined;
|
204
|
+
}
|
205
|
+
var plaintext = yield _this6.decrypt(ciphertext);
|
206
|
+
var json = JSON.parse(plaintext);
|
207
|
+
logger.debug("<= {\"type\": ".concat(JSON.stringify(json.type), ", ...}"));
|
208
|
+
return json;
|
209
|
+
})();
|
210
|
+
}
|
211
|
+
|
212
|
+
/**
|
213
|
+
* Closes the secure channel.
|
214
|
+
*/
|
215
|
+
close() {
|
216
|
+
var _this7 = this;
|
217
|
+
return _asyncToGenerator(function* () {
|
218
|
+
yield _this7.rendezvousSession.close();
|
219
|
+
})();
|
220
|
+
}
|
221
|
+
|
222
|
+
/**
|
223
|
+
* Cancels the secure channel.
|
224
|
+
* @param reason the reason for the cancellation
|
225
|
+
*/
|
226
|
+
cancel(reason) {
|
227
|
+
var _this8 = this;
|
228
|
+
return _asyncToGenerator(function* () {
|
229
|
+
try {
|
230
|
+
var _this8$onFailure;
|
231
|
+
yield _this8.rendezvousSession.cancel(reason);
|
232
|
+
(_this8$onFailure = _this8.onFailure) === null || _this8$onFailure === void 0 || _this8$onFailure.call(_this8, reason);
|
233
|
+
} finally {
|
234
|
+
yield _this8.close();
|
235
|
+
}
|
236
|
+
})();
|
237
|
+
}
|
238
|
+
|
239
|
+
/**
|
240
|
+
* Returns whether the rendezvous session has been cancelled.
|
241
|
+
*/
|
242
|
+
get cancelled() {
|
243
|
+
return this.rendezvousSession.cancelled;
|
244
|
+
}
|
245
|
+
}
|
246
|
+
//# sourceMappingURL=MSC4108SecureChannel.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"MSC4108SecureChannel.js","names":["Ecies","QrCodeData","QrCodeMode","ClientRendezvousFailureReason","MSC4108FailureReason","RendezvousError","logger","MSC4108SecureChannel","constructor","rendezvousSession","theirPublicKey","onFailure","_defineProperty","secureChannel","generateCode","mode","serverName","_this","_asyncToGenerator","url","Error","public_key","Reciprocate","undefined","toBytes","getCheckCode","_this$establishedChan","x","establishedChannel","check_code","Array","from","as_bytes","map","b","concat","join","connect","_this2","connected","result","establish_outbound_channel","channel","info","send","initial_message","ciphertext","receive","UnexpectedMessageReceived","candidateLoginOkMessage","decrypt","InsecureChannelDetected","loginInitiateMessage","message","candidateLoginInitiateMessage","establish_inbound_channel","loginOkMessage","encrypt","_this3","plaintext","_this4","secureSend","payload","_this5","stringifiedPayload","JSON","stringify","debug","type","secureReceive","_this6","json","parse","close","_this7","cancel","reason","_this8","_this8$onFailure","call","cancelled"],"sources":["../../../src/rendezvous/channels/MSC4108SecureChannel.ts"],"sourcesContent":["/*\nCopyright 2024 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nimport {\n Curve25519PublicKey,\n Ecies,\n EstablishedEcies,\n QrCodeData,\n QrCodeMode,\n} from \"@matrix-org/matrix-sdk-crypto-wasm\";\n\nimport {\n ClientRendezvousFailureReason,\n MSC4108FailureReason,\n MSC4108Payload,\n RendezvousError,\n RendezvousFailureListener,\n} from \"../index.ts\";\nimport { MSC4108RendezvousSession } from \"../transports/MSC4108RendezvousSession.ts\";\nimport { logger } from \"../../logger.ts\";\n\n/**\n * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)\n * secure rendezvous session protocol.\n * @experimental Note that this is UNSTABLE and may have breaking changes without notice.\n * Imports @matrix-org/matrix-sdk-crypto-wasm so should be async-imported to avoid bundling the WASM into the main bundle.\n */\nexport class MSC4108SecureChannel {\n private readonly secureChannel: Ecies;\n private establishedChannel?: EstablishedEcies;\n private connected = false;\n\n public constructor(\n private rendezvousSession: MSC4108RendezvousSession,\n private theirPublicKey?: Curve25519PublicKey,\n public onFailure?: RendezvousFailureListener,\n ) {\n this.secureChannel = new Ecies();\n }\n\n /**\n * Generate a QR code for the current session.\n * @param mode the mode to generate the QR code in, either `Login` or `Reciprocate`.\n * @param serverName the name of the homeserver to connect to, as defined by server discovery in the spec, required for `Reciprocate` mode.\n */\n public async generateCode(mode: QrCodeMode.Login): Promise<Uint8Array>;\n public async generateCode(mode: QrCodeMode.Reciprocate, serverName: string): Promise<Uint8Array>;\n public async generateCode(mode: QrCodeMode, serverName?: string): Promise<Uint8Array> {\n const { url } = this.rendezvousSession;\n\n if (!url) {\n throw new Error(\"No rendezvous session URL\");\n }\n\n return new QrCodeData(\n this.secureChannel.public_key(),\n url,\n mode === QrCodeMode.Reciprocate ? serverName : undefined,\n ).toBytes();\n }\n\n /**\n * Returns the check code for the secure channel or undefined if not generated yet.\n */\n public getCheckCode(): string | undefined {\n const x = this.establishedChannel?.check_code();\n\n if (!x) {\n return undefined;\n }\n return Array.from(x.as_bytes())\n .map((b) => `${b % 10}`)\n .join(\"\");\n }\n\n /**\n * Connects and establishes a secure channel with the other device.\n */\n public async connect(): Promise<void> {\n if (this.connected) {\n throw new Error(\"Channel already connected\");\n }\n\n if (this.theirPublicKey) {\n // We are the scanning device\n const result = this.secureChannel.establish_outbound_channel(\n this.theirPublicKey,\n \"MATRIX_QR_CODE_LOGIN_INITIATE\",\n );\n this.establishedChannel = result.channel;\n\n /*\n Secure Channel step 4. Device S sends the initial message\n\n Nonce := 0\n SH := ECDH(Ss, Gp)\n EncKey := HKDF_SHA256(SH, \"MATRIX_QR_CODE_LOGIN|\" || Gp || \"|\" || Sp, 0, 32)\n TaggedCiphertext := ChaCha20Poly1305_Encrypt(EncKey, Nonce, \"MATRIX_QR_CODE_LOGIN_INITIATE\")\n Nonce := Nonce + 2\n LoginInitiateMessage := UnpaddedBase64(TaggedCiphertext) || \"|\" || UnpaddedBase64(Sp)\n */\n {\n logger.info(\"Sending LoginInitiateMessage\");\n await this.rendezvousSession.send(result.initial_message);\n }\n\n /*\n Secure Channel step 6. Verification by Device S\n\n Nonce_G := 1\n (TaggedCiphertext, Sp) := Unpack(Message)\n Plaintext := ChaCha20Poly1305_Decrypt(EncKey, Nonce_G, TaggedCiphertext)\n Nonce_G := Nonce_G + 2\n\n unless Plaintext == \"MATRIX_QR_CODE_LOGIN_OK\":\n FAIL\n */\n {\n logger.info(\"Waiting for LoginOkMessage\");\n const ciphertext = await this.rendezvousSession.receive();\n\n if (!ciphertext) {\n throw new RendezvousError(\n \"No response from other device\",\n MSC4108FailureReason.UnexpectedMessageReceived,\n );\n }\n const candidateLoginOkMessage = await this.decrypt(ciphertext);\n\n if (candidateLoginOkMessage !== \"MATRIX_QR_CODE_LOGIN_OK\") {\n throw new RendezvousError(\n \"Invalid response from other device\",\n ClientRendezvousFailureReason.InsecureChannelDetected,\n );\n }\n\n // Step 6 is now complete. We trust the channel\n }\n } else {\n /*\n Secure Channel step 5. Device G confirms\n\n Nonce_S := 0\n (TaggedCiphertext, Sp) := Unpack(LoginInitiateMessage)\n SH := ECDH(Gs, Sp)\n EncKey := HKDF_SHA256(SH, \"MATRIX_QR_CODE_LOGIN|\" || Gp || \"|\" || Sp, 0, 32)\n Plaintext := ChaCha20Poly1305_Decrypt(EncKey, Nonce_S, TaggedCiphertext)\n Nonce_S := Nonce_S + 2\n */\n // wait for the other side to send us their public key\n logger.info(\"Waiting for LoginInitiateMessage\");\n const loginInitiateMessage = await this.rendezvousSession.receive();\n if (!loginInitiateMessage) {\n throw new Error(\"No response from other device\");\n }\n\n const { channel, message: candidateLoginInitiateMessage } =\n this.secureChannel.establish_inbound_channel(loginInitiateMessage);\n this.establishedChannel = channel;\n\n if (candidateLoginInitiateMessage !== \"MATRIX_QR_CODE_LOGIN_INITIATE\") {\n throw new RendezvousError(\n \"Invalid response from other device\",\n ClientRendezvousFailureReason.InsecureChannelDetected,\n );\n }\n logger.info(\"LoginInitiateMessage received\");\n\n logger.info(\"Sending LoginOkMessage\");\n const loginOkMessage = await this.encrypt(\"MATRIX_QR_CODE_LOGIN_OK\");\n await this.rendezvousSession.send(loginOkMessage);\n\n // Step 5 is complete. We don't yet trust the channel\n\n // next step will be for the user to confirm the check code on the other device\n }\n\n this.connected = true;\n }\n\n private async decrypt(ciphertext: string): Promise<string> {\n if (!this.establishedChannel) {\n throw new Error(\"Channel closed\");\n }\n\n return this.establishedChannel.decrypt(ciphertext);\n }\n\n private async encrypt(plaintext: string): Promise<string> {\n if (!this.establishedChannel) {\n throw new Error(\"Channel closed\");\n }\n\n return this.establishedChannel.encrypt(plaintext);\n }\n\n /**\n * Sends a payload securely to the other device.\n * @param payload the payload to encrypt and send\n */\n public async secureSend<T extends MSC4108Payload>(payload: T): Promise<void> {\n if (!this.connected) {\n throw new Error(\"Channel closed\");\n }\n\n const stringifiedPayload = JSON.stringify(payload);\n logger.debug(`=> {\"type\": ${JSON.stringify(payload.type)}, ...}`);\n\n await this.rendezvousSession.send(await this.encrypt(stringifiedPayload));\n }\n\n /**\n * Receives an encrypted payload from the other device and decrypts it.\n */\n public async secureReceive<T extends MSC4108Payload>(): Promise<Partial<T> | undefined> {\n if (!this.establishedChannel) {\n throw new Error(\"Channel closed\");\n }\n\n const ciphertext = await this.rendezvousSession.receive();\n if (!ciphertext) {\n return undefined;\n }\n const plaintext = await this.decrypt(ciphertext);\n const json = JSON.parse(plaintext);\n\n logger.debug(`<= {\"type\": ${JSON.stringify(json.type)}, ...}`);\n return json as Partial<T> | undefined;\n }\n\n /**\n * Closes the secure channel.\n */\n public async close(): Promise<void> {\n await this.rendezvousSession.close();\n }\n\n /**\n * Cancels the secure channel.\n * @param reason the reason for the cancellation\n */\n public async cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise<void> {\n try {\n await this.rendezvousSession.cancel(reason);\n this.onFailure?.(reason);\n } finally {\n await this.close();\n }\n }\n\n /**\n * Returns whether the rendezvous session has been cancelled.\n */\n public get cancelled(): boolean {\n return this.rendezvousSession.cancelled;\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rendezvous/channels/index.ts"],"names":[],"mappings":"AAgBA,cAAc,2BAA2B,CAAC"}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
/*
|
2
|
+
Copyright 2022 The Matrix.org Foundation C.I.C.
|
3
|
+
|
4
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
you may not use this file except in compliance with the License.
|
6
|
+
You may obtain a copy of the License at
|
7
|
+
|
8
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
|
10
|
+
Unless required by applicable law or agreed to in writing, software
|
11
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
See the License for the specific language governing permissions and
|
14
|
+
limitations under the License.
|
15
|
+
*/
|
16
|
+
|
17
|
+
export * from "./MSC4108SecureChannel.js";
|
18
|
+
//# sourceMappingURL=index.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/rendezvous/channels/index.ts"],"sourcesContent":["/*\nCopyright 2022 The Matrix.org Foundation C.I.C.\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n*/\n\nexport * from \"./MSC4108SecureChannel.ts\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,cAAc,2BAA2B","ignoreList":[]}
|
@@ -0,0 +1,10 @@
|
|
1
|
+
export * from "./MSC4108SignInWithQR.ts";
|
2
|
+
export type * from "./RendezvousChannel.ts";
|
3
|
+
export type * from "./RendezvousCode.ts";
|
4
|
+
export * from "./RendezvousError.ts";
|
5
|
+
export * from "./RendezvousFailureReason.ts";
|
6
|
+
export * from "./RendezvousIntent.ts";
|
7
|
+
export type * from "./RendezvousTransport.ts";
|
8
|
+
export * from "./transports/index.ts";
|
9
|
+
export * from "./channels/index.ts";
|
10
|
+
//# sourceMappingURL=index.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/rendezvous/index.ts"],"names":[],"mappings":"AAgBA,cAAc,0BAA0B,CAAC;AACzC,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,qBAAqB,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,uBAAuB,CAAC;AACtC,mBAAmB,0BAA0B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC"}
|