@unwanted/matrix-sdk-mini 34.12.0-2 → 34.12.0-3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (467) hide show
  1. package/git-revision.txt +1 -1
  2. package/lib/@types/global.d.js +0 -2
  3. package/lib/@types/global.d.js.map +1 -1
  4. package/lib/browser-index.d.ts.map +1 -1
  5. package/lib/browser-index.js +0 -11
  6. package/lib/browser-index.js.map +1 -1
  7. package/lib/client.d.ts +2 -1176
  8. package/lib/client.d.ts.map +1 -1
  9. package/lib/client.js +346 -2717
  10. package/lib/client.js.map +1 -1
  11. package/lib/embedded.d.ts +0 -22
  12. package/lib/embedded.d.ts.map +1 -1
  13. package/lib/embedded.js +24 -166
  14. package/lib/embedded.js.map +1 -1
  15. package/lib/event-mapper.d.ts.map +1 -1
  16. package/lib/event-mapper.js +0 -4
  17. package/lib/event-mapper.js.map +1 -1
  18. package/lib/matrix.d.ts +0 -19
  19. package/lib/matrix.d.ts.map +1 -1
  20. package/lib/matrix.js +1 -26
  21. package/lib/matrix.js.map +1 -1
  22. package/lib/models/MSC3089Branch.d.ts.map +1 -1
  23. package/lib/models/MSC3089Branch.js +0 -3
  24. package/lib/models/MSC3089Branch.js.map +1 -1
  25. package/lib/models/event.d.ts +0 -94
  26. package/lib/models/event.d.ts.map +1 -1
  27. package/lib/models/event.js +0 -274
  28. package/lib/models/event.js.map +1 -1
  29. package/lib/models/poll.d.ts.map +1 -1
  30. package/lib/models/poll.js +1 -5
  31. package/lib/models/poll.js.map +1 -1
  32. package/lib/models/relations-container.d.ts.map +1 -1
  33. package/lib/models/relations-container.js +1 -7
  34. package/lib/models/relations-container.js.map +1 -1
  35. package/lib/models/relations.d.ts +0 -1
  36. package/lib/models/relations.d.ts.map +1 -1
  37. package/lib/models/relations.js +0 -8
  38. package/lib/models/relations.js.map +1 -1
  39. package/lib/models/room-state.d.ts.map +1 -1
  40. package/lib/models/room-state.js +10 -26
  41. package/lib/models/room-state.js.map +1 -1
  42. package/lib/models/room.d.ts +0 -18
  43. package/lib/models/room.d.ts.map +1 -1
  44. package/lib/models/room.js +94 -148
  45. package/lib/models/room.js.map +1 -1
  46. package/lib/models/thread.d.ts.map +1 -1
  47. package/lib/models/thread.js +0 -1
  48. package/lib/models/thread.js.map +1 -1
  49. package/lib/sliding-sync-sdk.d.ts +2 -3
  50. package/lib/sliding-sync-sdk.d.ts.map +1 -1
  51. package/lib/sliding-sync-sdk.js +41 -90
  52. package/lib/sliding-sync-sdk.js.map +1 -1
  53. package/lib/sync.d.ts +0 -12
  54. package/lib/sync.d.ts.map +1 -1
  55. package/lib/sync.js +1 -73
  56. package/lib/sync.js.map +1 -1
  57. package/lib/testing.d.ts +0 -48
  58. package/lib/testing.d.ts.map +1 -1
  59. package/lib/testing.js +0 -105
  60. package/lib/testing.js.map +1 -1
  61. package/package.json +1 -3
  62. package/src/@types/global.d.ts +0 -3
  63. package/src/browser-index.ts +0 -11
  64. package/src/client.ts +57 -2732
  65. package/src/embedded.ts +3 -130
  66. package/src/event-mapper.ts +0 -4
  67. package/src/matrix.ts +0 -28
  68. package/src/models/MSC3089Branch.ts +0 -3
  69. package/src/models/event.ts +0 -289
  70. package/src/models/poll.ts +0 -6
  71. package/src/models/relations-container.ts +1 -8
  72. package/src/models/relations.ts +0 -8
  73. package/src/models/room-state.ts +2 -8
  74. package/src/models/room.ts +0 -62
  75. package/src/models/thread.ts +0 -1
  76. package/src/sliding-sync-sdk.ts +2 -72
  77. package/src/sync.ts +1 -98
  78. package/src/testing.ts +0 -108
  79. package/lib/@types/crypto.d.ts +0 -47
  80. package/lib/@types/crypto.d.ts.map +0 -1
  81. package/lib/@types/crypto.js +0 -1
  82. package/lib/@types/crypto.js.map +0 -1
  83. package/lib/@types/matrix-sdk-crypto-wasm.d.js +0 -1
  84. package/lib/@types/matrix-sdk-crypto-wasm.d.js.map +0 -1
  85. package/lib/common-crypto/CryptoBackend.d.ts +0 -240
  86. package/lib/common-crypto/CryptoBackend.d.ts.map +0 -1
  87. package/lib/common-crypto/CryptoBackend.js +0 -73
  88. package/lib/common-crypto/CryptoBackend.js.map +0 -1
  89. package/lib/common-crypto/key-passphrase.d.ts +0 -14
  90. package/lib/common-crypto/key-passphrase.d.ts.map +0 -1
  91. package/lib/common-crypto/key-passphrase.js +0 -33
  92. package/lib/common-crypto/key-passphrase.js.map +0 -1
  93. package/lib/crypto/CrossSigning.d.ts +0 -184
  94. package/lib/crypto/CrossSigning.d.ts.map +0 -1
  95. package/lib/crypto/CrossSigning.js +0 -718
  96. package/lib/crypto/CrossSigning.js.map +0 -1
  97. package/lib/crypto/DeviceList.d.ts +0 -216
  98. package/lib/crypto/DeviceList.d.ts.map +0 -1
  99. package/lib/crypto/DeviceList.js +0 -892
  100. package/lib/crypto/DeviceList.js.map +0 -1
  101. package/lib/crypto/EncryptionSetup.d.ts +0 -152
  102. package/lib/crypto/EncryptionSetup.d.ts.map +0 -1
  103. package/lib/crypto/EncryptionSetup.js +0 -356
  104. package/lib/crypto/EncryptionSetup.js.map +0 -1
  105. package/lib/crypto/OlmDevice.d.ts +0 -457
  106. package/lib/crypto/OlmDevice.d.ts.map +0 -1
  107. package/lib/crypto/OlmDevice.js +0 -1241
  108. package/lib/crypto/OlmDevice.js.map +0 -1
  109. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts +0 -109
  110. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts.map +0 -1
  111. package/lib/crypto/OutgoingRoomKeyRequestManager.js +0 -415
  112. package/lib/crypto/OutgoingRoomKeyRequestManager.js.map +0 -1
  113. package/lib/crypto/RoomList.d.ts +0 -26
  114. package/lib/crypto/RoomList.d.ts.map +0 -1
  115. package/lib/crypto/RoomList.js +0 -71
  116. package/lib/crypto/RoomList.js.map +0 -1
  117. package/lib/crypto/SecretSharing.d.ts +0 -24
  118. package/lib/crypto/SecretSharing.d.ts.map +0 -1
  119. package/lib/crypto/SecretSharing.js +0 -194
  120. package/lib/crypto/SecretSharing.js.map +0 -1
  121. package/lib/crypto/SecretStorage.d.ts +0 -55
  122. package/lib/crypto/SecretStorage.d.ts.map +0 -1
  123. package/lib/crypto/SecretStorage.js +0 -118
  124. package/lib/crypto/SecretStorage.js.map +0 -1
  125. package/lib/crypto/aes.d.ts +0 -6
  126. package/lib/crypto/aes.d.ts.map +0 -1
  127. package/lib/crypto/aes.js +0 -24
  128. package/lib/crypto/aes.js.map +0 -1
  129. package/lib/crypto/algorithms/base.d.ts +0 -156
  130. package/lib/crypto/algorithms/base.d.ts.map +0 -1
  131. package/lib/crypto/algorithms/base.js +0 -187
  132. package/lib/crypto/algorithms/base.js.map +0 -1
  133. package/lib/crypto/algorithms/index.d.ts +0 -4
  134. package/lib/crypto/algorithms/index.d.ts.map +0 -1
  135. package/lib/crypto/algorithms/index.js +0 -20
  136. package/lib/crypto/algorithms/index.js.map +0 -1
  137. package/lib/crypto/algorithms/megolm.d.ts +0 -385
  138. package/lib/crypto/algorithms/megolm.d.ts.map +0 -1
  139. package/lib/crypto/algorithms/megolm.js +0 -1822
  140. package/lib/crypto/algorithms/megolm.js.map +0 -1
  141. package/lib/crypto/algorithms/olm.d.ts +0 -5
  142. package/lib/crypto/algorithms/olm.d.ts.map +0 -1
  143. package/lib/crypto/algorithms/olm.js +0 -299
  144. package/lib/crypto/algorithms/olm.js.map +0 -1
  145. package/lib/crypto/api.d.ts +0 -32
  146. package/lib/crypto/api.d.ts.map +0 -1
  147. package/lib/crypto/api.js +0 -22
  148. package/lib/crypto/api.js.map +0 -1
  149. package/lib/crypto/backup.d.ts +0 -227
  150. package/lib/crypto/backup.d.ts.map +0 -1
  151. package/lib/crypto/backup.js +0 -824
  152. package/lib/crypto/backup.js.map +0 -1
  153. package/lib/crypto/crypto.d.ts +0 -3
  154. package/lib/crypto/crypto.d.ts.map +0 -1
  155. package/lib/crypto/crypto.js +0 -19
  156. package/lib/crypto/crypto.js.map +0 -1
  157. package/lib/crypto/dehydration.d.ts +0 -34
  158. package/lib/crypto/dehydration.d.ts.map +0 -1
  159. package/lib/crypto/dehydration.js +0 -252
  160. package/lib/crypto/dehydration.js.map +0 -1
  161. package/lib/crypto/device-converter.d.ts +0 -9
  162. package/lib/crypto/device-converter.d.ts.map +0 -1
  163. package/lib/crypto/device-converter.js +0 -42
  164. package/lib/crypto/device-converter.js.map +0 -1
  165. package/lib/crypto/deviceinfo.d.ts +0 -99
  166. package/lib/crypto/deviceinfo.d.ts.map +0 -1
  167. package/lib/crypto/deviceinfo.js +0 -148
  168. package/lib/crypto/deviceinfo.js.map +0 -1
  169. package/lib/crypto/index.d.ts +0 -1209
  170. package/lib/crypto/index.d.ts.map +0 -1
  171. package/lib/crypto/index.js +0 -4097
  172. package/lib/crypto/index.js.map +0 -1
  173. package/lib/crypto/key_passphrase.d.ts +0 -14
  174. package/lib/crypto/key_passphrase.d.ts.map +0 -1
  175. package/lib/crypto/key_passphrase.js +0 -44
  176. package/lib/crypto/key_passphrase.js.map +0 -1
  177. package/lib/crypto/keybackup.d.ts +0 -18
  178. package/lib/crypto/keybackup.d.ts.map +0 -1
  179. package/lib/crypto/keybackup.js +0 -1
  180. package/lib/crypto/keybackup.js.map +0 -1
  181. package/lib/crypto/olmlib.d.ts +0 -129
  182. package/lib/crypto/olmlib.d.ts.map +0 -1
  183. package/lib/crypto/olmlib.js +0 -492
  184. package/lib/crypto/olmlib.js.map +0 -1
  185. package/lib/crypto/recoverykey.d.ts +0 -2
  186. package/lib/crypto/recoverykey.d.ts.map +0 -1
  187. package/lib/crypto/recoverykey.js +0 -19
  188. package/lib/crypto/recoverykey.js.map +0 -1
  189. package/lib/crypto/store/base.d.ts +0 -252
  190. package/lib/crypto/store/base.d.ts.map +0 -1
  191. package/lib/crypto/store/base.js +0 -64
  192. package/lib/crypto/store/base.js.map +0 -1
  193. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts +0 -187
  194. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts.map +0 -1
  195. package/lib/crypto/store/indexeddb-crypto-store-backend.js +0 -1145
  196. package/lib/crypto/store/indexeddb-crypto-store-backend.js.map +0 -1
  197. package/lib/crypto/store/indexeddb-crypto-store.d.ts +0 -432
  198. package/lib/crypto/store/indexeddb-crypto-store.d.ts.map +0 -1
  199. package/lib/crypto/store/indexeddb-crypto-store.js +0 -728
  200. package/lib/crypto/store/indexeddb-crypto-store.js.map +0 -1
  201. package/lib/crypto/store/localStorage-crypto-store.d.ts +0 -119
  202. package/lib/crypto/store/localStorage-crypto-store.d.ts.map +0 -1
  203. package/lib/crypto/store/localStorage-crypto-store.js +0 -531
  204. package/lib/crypto/store/localStorage-crypto-store.js.map +0 -1
  205. package/lib/crypto/store/memory-crypto-store.d.ts +0 -215
  206. package/lib/crypto/store/memory-crypto-store.d.ts.map +0 -1
  207. package/lib/crypto/store/memory-crypto-store.js +0 -622
  208. package/lib/crypto/store/memory-crypto-store.js.map +0 -1
  209. package/lib/crypto/verification/Base.d.ts +0 -105
  210. package/lib/crypto/verification/Base.d.ts.map +0 -1
  211. package/lib/crypto/verification/Base.js +0 -372
  212. package/lib/crypto/verification/Base.js.map +0 -1
  213. package/lib/crypto/verification/Error.d.ts +0 -35
  214. package/lib/crypto/verification/Error.d.ts.map +0 -1
  215. package/lib/crypto/verification/Error.js +0 -86
  216. package/lib/crypto/verification/Error.js.map +0 -1
  217. package/lib/crypto/verification/IllegalMethod.d.ts +0 -15
  218. package/lib/crypto/verification/IllegalMethod.d.ts.map +0 -1
  219. package/lib/crypto/verification/IllegalMethod.js +0 -43
  220. package/lib/crypto/verification/IllegalMethod.js.map +0 -1
  221. package/lib/crypto/verification/QRCode.d.ts +0 -51
  222. package/lib/crypto/verification/QRCode.d.ts.map +0 -1
  223. package/lib/crypto/verification/QRCode.js +0 -277
  224. package/lib/crypto/verification/QRCode.js.map +0 -1
  225. package/lib/crypto/verification/SAS.d.ts +0 -27
  226. package/lib/crypto/verification/SAS.d.ts.map +0 -1
  227. package/lib/crypto/verification/SAS.js +0 -485
  228. package/lib/crypto/verification/SAS.js.map +0 -1
  229. package/lib/crypto/verification/SASDecimal.d.ts +0 -8
  230. package/lib/crypto/verification/SASDecimal.d.ts.map +0 -1
  231. package/lib/crypto/verification/SASDecimal.js +0 -34
  232. package/lib/crypto/verification/SASDecimal.js.map +0 -1
  233. package/lib/crypto/verification/request/Channel.d.ts +0 -18
  234. package/lib/crypto/verification/request/Channel.d.ts.map +0 -1
  235. package/lib/crypto/verification/request/Channel.js +0 -1
  236. package/lib/crypto/verification/request/Channel.js.map +0 -1
  237. package/lib/crypto/verification/request/InRoomChannel.d.ts +0 -113
  238. package/lib/crypto/verification/request/InRoomChannel.d.ts.map +0 -1
  239. package/lib/crypto/verification/request/InRoomChannel.js +0 -351
  240. package/lib/crypto/verification/request/InRoomChannel.js.map +0 -1
  241. package/lib/crypto/verification/request/ToDeviceChannel.d.ts +0 -105
  242. package/lib/crypto/verification/request/ToDeviceChannel.d.ts.map +0 -1
  243. package/lib/crypto/verification/request/ToDeviceChannel.js +0 -328
  244. package/lib/crypto/verification/request/ToDeviceChannel.js.map +0 -1
  245. package/lib/crypto/verification/request/VerificationRequest.d.ts +0 -227
  246. package/lib/crypto/verification/request/VerificationRequest.d.ts.map +0 -1
  247. package/lib/crypto/verification/request/VerificationRequest.js +0 -937
  248. package/lib/crypto/verification/request/VerificationRequest.js.map +0 -1
  249. package/lib/crypto-api/CryptoEvent.d.ts +0 -69
  250. package/lib/crypto-api/CryptoEvent.d.ts.map +0 -1
  251. package/lib/crypto-api/CryptoEvent.js +0 -33
  252. package/lib/crypto-api/CryptoEvent.js.map +0 -1
  253. package/lib/crypto-api/CryptoEventHandlerMap.d.ts +0 -16
  254. package/lib/crypto-api/CryptoEventHandlerMap.d.ts.map +0 -1
  255. package/lib/crypto-api/CryptoEventHandlerMap.js +0 -22
  256. package/lib/crypto-api/CryptoEventHandlerMap.js.map +0 -1
  257. package/lib/crypto-api/index.d.ts +0 -978
  258. package/lib/crypto-api/index.d.ts.map +0 -1
  259. package/lib/crypto-api/index.js +0 -304
  260. package/lib/crypto-api/index.js.map +0 -1
  261. package/lib/crypto-api/key-passphrase.d.ts +0 -11
  262. package/lib/crypto-api/key-passphrase.d.ts.map +0 -1
  263. package/lib/crypto-api/key-passphrase.js +0 -51
  264. package/lib/crypto-api/key-passphrase.js.map +0 -1
  265. package/lib/crypto-api/keybackup.d.ts +0 -88
  266. package/lib/crypto-api/keybackup.d.ts.map +0 -1
  267. package/lib/crypto-api/keybackup.js +0 -1
  268. package/lib/crypto-api/keybackup.js.map +0 -1
  269. package/lib/crypto-api/recovery-key.d.ts +0 -11
  270. package/lib/crypto-api/recovery-key.d.ts.map +0 -1
  271. package/lib/crypto-api/recovery-key.js +0 -65
  272. package/lib/crypto-api/recovery-key.js.map +0 -1
  273. package/lib/crypto-api/verification.d.ts +0 -344
  274. package/lib/crypto-api/verification.d.ts.map +0 -1
  275. package/lib/crypto-api/verification.js +0 -91
  276. package/lib/crypto-api/verification.js.map +0 -1
  277. package/lib/rendezvous/MSC4108SignInWithQR.d.ts +0 -112
  278. package/lib/rendezvous/MSC4108SignInWithQR.d.ts.map +0 -1
  279. package/lib/rendezvous/MSC4108SignInWithQR.js +0 -392
  280. package/lib/rendezvous/MSC4108SignInWithQR.js.map +0 -1
  281. package/lib/rendezvous/RendezvousChannel.d.ts +0 -27
  282. package/lib/rendezvous/RendezvousChannel.d.ts.map +0 -1
  283. package/lib/rendezvous/RendezvousChannel.js +0 -1
  284. package/lib/rendezvous/RendezvousChannel.js.map +0 -1
  285. package/lib/rendezvous/RendezvousCode.d.ts +0 -9
  286. package/lib/rendezvous/RendezvousCode.d.ts.map +0 -1
  287. package/lib/rendezvous/RendezvousCode.js +0 -1
  288. package/lib/rendezvous/RendezvousCode.js.map +0 -1
  289. package/lib/rendezvous/RendezvousError.d.ts +0 -6
  290. package/lib/rendezvous/RendezvousError.d.ts.map +0 -1
  291. package/lib/rendezvous/RendezvousError.js +0 -23
  292. package/lib/rendezvous/RendezvousError.js.map +0 -1
  293. package/lib/rendezvous/RendezvousFailureReason.d.ts +0 -31
  294. package/lib/rendezvous/RendezvousFailureReason.d.ts.map +0 -1
  295. package/lib/rendezvous/RendezvousFailureReason.js +0 -38
  296. package/lib/rendezvous/RendezvousFailureReason.js.map +0 -1
  297. package/lib/rendezvous/RendezvousIntent.d.ts +0 -5
  298. package/lib/rendezvous/RendezvousIntent.d.ts.map +0 -1
  299. package/lib/rendezvous/RendezvousIntent.js +0 -22
  300. package/lib/rendezvous/RendezvousIntent.js.map +0 -1
  301. package/lib/rendezvous/RendezvousTransport.d.ts +0 -36
  302. package/lib/rendezvous/RendezvousTransport.d.ts.map +0 -1
  303. package/lib/rendezvous/RendezvousTransport.js +0 -1
  304. package/lib/rendezvous/RendezvousTransport.js.map +0 -1
  305. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts +0 -58
  306. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts.map +0 -1
  307. package/lib/rendezvous/channels/MSC4108SecureChannel.js +0 -246
  308. package/lib/rendezvous/channels/MSC4108SecureChannel.js.map +0 -1
  309. package/lib/rendezvous/channels/index.d.ts +0 -2
  310. package/lib/rendezvous/channels/index.d.ts.map +0 -1
  311. package/lib/rendezvous/channels/index.js +0 -18
  312. package/lib/rendezvous/channels/index.js.map +0 -1
  313. package/lib/rendezvous/index.d.ts +0 -10
  314. package/lib/rendezvous/index.d.ts.map +0 -1
  315. package/lib/rendezvous/index.js +0 -23
  316. package/lib/rendezvous/index.js.map +0 -1
  317. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts +0 -61
  318. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts.map +0 -1
  319. package/lib/rendezvous/transports/MSC4108RendezvousSession.js +0 -253
  320. package/lib/rendezvous/transports/MSC4108RendezvousSession.js.map +0 -1
  321. package/lib/rendezvous/transports/index.d.ts +0 -2
  322. package/lib/rendezvous/transports/index.d.ts.map +0 -1
  323. package/lib/rendezvous/transports/index.js +0 -18
  324. package/lib/rendezvous/transports/index.js.map +0 -1
  325. package/lib/rust-crypto/CrossSigningIdentity.d.ts +0 -33
  326. package/lib/rust-crypto/CrossSigningIdentity.d.ts.map +0 -1
  327. package/lib/rust-crypto/CrossSigningIdentity.js +0 -157
  328. package/lib/rust-crypto/CrossSigningIdentity.js.map +0 -1
  329. package/lib/rust-crypto/DehydratedDeviceManager.d.ts +0 -98
  330. package/lib/rust-crypto/DehydratedDeviceManager.d.ts.map +0 -1
  331. package/lib/rust-crypto/DehydratedDeviceManager.js +0 -285
  332. package/lib/rust-crypto/DehydratedDeviceManager.js.map +0 -1
  333. package/lib/rust-crypto/KeyClaimManager.d.ts +0 -33
  334. package/lib/rust-crypto/KeyClaimManager.d.ts.map +0 -1
  335. package/lib/rust-crypto/KeyClaimManager.js +0 -82
  336. package/lib/rust-crypto/KeyClaimManager.js.map +0 -1
  337. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts +0 -43
  338. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +0 -1
  339. package/lib/rust-crypto/OutgoingRequestProcessor.js +0 -195
  340. package/lib/rust-crypto/OutgoingRequestProcessor.js.map +0 -1
  341. package/lib/rust-crypto/OutgoingRequestsManager.d.ts +0 -47
  342. package/lib/rust-crypto/OutgoingRequestsManager.d.ts.map +0 -1
  343. package/lib/rust-crypto/OutgoingRequestsManager.js +0 -148
  344. package/lib/rust-crypto/OutgoingRequestsManager.js.map +0 -1
  345. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts +0 -120
  346. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts.map +0 -1
  347. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js +0 -467
  348. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js.map +0 -1
  349. package/lib/rust-crypto/RoomEncryptor.d.ts +0 -98
  350. package/lib/rust-crypto/RoomEncryptor.d.ts.map +0 -1
  351. package/lib/rust-crypto/RoomEncryptor.js +0 -299
  352. package/lib/rust-crypto/RoomEncryptor.js.map +0 -1
  353. package/lib/rust-crypto/backup.d.ts +0 -254
  354. package/lib/rust-crypto/backup.d.ts.map +0 -1
  355. package/lib/rust-crypto/backup.js +0 -837
  356. package/lib/rust-crypto/backup.js.map +0 -1
  357. package/lib/rust-crypto/constants.d.ts +0 -3
  358. package/lib/rust-crypto/constants.d.ts.map +0 -1
  359. package/lib/rust-crypto/constants.js +0 -19
  360. package/lib/rust-crypto/constants.js.map +0 -1
  361. package/lib/rust-crypto/device-converter.d.ts +0 -28
  362. package/lib/rust-crypto/device-converter.d.ts.map +0 -1
  363. package/lib/rust-crypto/device-converter.js +0 -123
  364. package/lib/rust-crypto/device-converter.js.map +0 -1
  365. package/lib/rust-crypto/index.d.ts +0 -61
  366. package/lib/rust-crypto/index.d.ts.map +0 -1
  367. package/lib/rust-crypto/index.js +0 -152
  368. package/lib/rust-crypto/index.js.map +0 -1
  369. package/lib/rust-crypto/libolm_migration.d.ts +0 -81
  370. package/lib/rust-crypto/libolm_migration.d.ts.map +0 -1
  371. package/lib/rust-crypto/libolm_migration.js +0 -459
  372. package/lib/rust-crypto/libolm_migration.js.map +0 -1
  373. package/lib/rust-crypto/rust-crypto.d.ts +0 -556
  374. package/lib/rust-crypto/rust-crypto.d.ts.map +0 -1
  375. package/lib/rust-crypto/rust-crypto.js +0 -2016
  376. package/lib/rust-crypto/rust-crypto.js.map +0 -1
  377. package/lib/rust-crypto/secret-storage.d.ts +0 -22
  378. package/lib/rust-crypto/secret-storage.d.ts.map +0 -1
  379. package/lib/rust-crypto/secret-storage.js +0 -63
  380. package/lib/rust-crypto/secret-storage.js.map +0 -1
  381. package/lib/rust-crypto/verification.d.ts +0 -319
  382. package/lib/rust-crypto/verification.d.ts.map +0 -1
  383. package/lib/rust-crypto/verification.js +0 -816
  384. package/lib/rust-crypto/verification.js.map +0 -1
  385. package/lib/secret-storage.d.ts +0 -370
  386. package/lib/secret-storage.d.ts.map +0 -1
  387. package/lib/secret-storage.js +0 -466
  388. package/lib/secret-storage.js.map +0 -1
  389. package/src/@types/crypto.ts +0 -73
  390. package/src/@types/matrix-sdk-crypto-wasm.d.ts +0 -44
  391. package/src/common-crypto/CryptoBackend.ts +0 -302
  392. package/src/common-crypto/README.md +0 -4
  393. package/src/common-crypto/key-passphrase.ts +0 -43
  394. package/src/crypto/CrossSigning.ts +0 -773
  395. package/src/crypto/DeviceList.ts +0 -989
  396. package/src/crypto/EncryptionSetup.ts +0 -351
  397. package/src/crypto/OlmDevice.ts +0 -1500
  398. package/src/crypto/OutgoingRoomKeyRequestManager.ts +0 -485
  399. package/src/crypto/RoomList.ts +0 -70
  400. package/src/crypto/SecretSharing.ts +0 -240
  401. package/src/crypto/SecretStorage.ts +0 -136
  402. package/src/crypto/aes.ts +0 -23
  403. package/src/crypto/algorithms/base.ts +0 -236
  404. package/src/crypto/algorithms/index.ts +0 -20
  405. package/src/crypto/algorithms/megolm.ts +0 -2216
  406. package/src/crypto/algorithms/olm.ts +0 -381
  407. package/src/crypto/api.ts +0 -70
  408. package/src/crypto/backup.ts +0 -922
  409. package/src/crypto/crypto.ts +0 -18
  410. package/src/crypto/dehydration.ts +0 -272
  411. package/src/crypto/device-converter.ts +0 -45
  412. package/src/crypto/deviceinfo.ts +0 -158
  413. package/src/crypto/index.ts +0 -4414
  414. package/src/crypto/key_passphrase.ts +0 -42
  415. package/src/crypto/keybackup.ts +0 -47
  416. package/src/crypto/olmlib.ts +0 -539
  417. package/src/crypto/recoverykey.ts +0 -18
  418. package/src/crypto/store/base.ts +0 -348
  419. package/src/crypto/store/indexeddb-crypto-store-backend.ts +0 -1250
  420. package/src/crypto/store/indexeddb-crypto-store.ts +0 -845
  421. package/src/crypto/store/localStorage-crypto-store.ts +0 -579
  422. package/src/crypto/store/memory-crypto-store.ts +0 -680
  423. package/src/crypto/verification/Base.ts +0 -409
  424. package/src/crypto/verification/Error.ts +0 -76
  425. package/src/crypto/verification/IllegalMethod.ts +0 -50
  426. package/src/crypto/verification/QRCode.ts +0 -310
  427. package/src/crypto/verification/SAS.ts +0 -494
  428. package/src/crypto/verification/SASDecimal.ts +0 -37
  429. package/src/crypto/verification/request/Channel.ts +0 -34
  430. package/src/crypto/verification/request/InRoomChannel.ts +0 -371
  431. package/src/crypto/verification/request/ToDeviceChannel.ts +0 -354
  432. package/src/crypto/verification/request/VerificationRequest.ts +0 -976
  433. package/src/crypto-api/CryptoEvent.ts +0 -93
  434. package/src/crypto-api/CryptoEventHandlerMap.ts +0 -32
  435. package/src/crypto-api/index.ts +0 -1175
  436. package/src/crypto-api/key-passphrase.ts +0 -58
  437. package/src/crypto-api/keybackup.ts +0 -115
  438. package/src/crypto-api/recovery-key.ts +0 -69
  439. package/src/crypto-api/verification.ts +0 -408
  440. package/src/rendezvous/MSC4108SignInWithQR.ts +0 -444
  441. package/src/rendezvous/RendezvousChannel.ts +0 -48
  442. package/src/rendezvous/RendezvousCode.ts +0 -25
  443. package/src/rendezvous/RendezvousError.ts +0 -26
  444. package/src/rendezvous/RendezvousFailureReason.ts +0 -49
  445. package/src/rendezvous/RendezvousIntent.ts +0 -20
  446. package/src/rendezvous/RendezvousTransport.ts +0 -58
  447. package/src/rendezvous/channels/MSC4108SecureChannel.ts +0 -270
  448. package/src/rendezvous/channels/index.ts +0 -17
  449. package/src/rendezvous/index.ts +0 -25
  450. package/src/rendezvous/transports/MSC4108RendezvousSession.ts +0 -270
  451. package/src/rendezvous/transports/index.ts +0 -17
  452. package/src/rust-crypto/CrossSigningIdentity.ts +0 -183
  453. package/src/rust-crypto/DehydratedDeviceManager.ts +0 -306
  454. package/src/rust-crypto/KeyClaimManager.ts +0 -86
  455. package/src/rust-crypto/OutgoingRequestProcessor.ts +0 -236
  456. package/src/rust-crypto/OutgoingRequestsManager.ts +0 -143
  457. package/src/rust-crypto/PerSessionKeyBackupDownloader.ts +0 -501
  458. package/src/rust-crypto/RoomEncryptor.ts +0 -352
  459. package/src/rust-crypto/backup.ts +0 -881
  460. package/src/rust-crypto/constants.ts +0 -18
  461. package/src/rust-crypto/device-converter.ts +0 -128
  462. package/src/rust-crypto/index.ts +0 -237
  463. package/src/rust-crypto/libolm_migration.ts +0 -530
  464. package/src/rust-crypto/rust-crypto.ts +0 -2205
  465. package/src/rust-crypto/secret-storage.ts +0 -60
  466. package/src/rust-crypto/verification.ts +0 -830
  467. package/src/secret-storage.ts +0 -693
@@ -1,112 +0,0 @@
1
- import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousFailureListener } from "./index.ts";
2
- import { MatrixClient } from "../client.ts";
3
- import { MSC4108SecureChannel } from "./channels/MSC4108SecureChannel.ts";
4
- import { CryptoApi } from "../crypto-api/index.ts";
5
- /**
6
- * Enum representing the payload types transmissible over [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
7
- * secure channels.
8
- * @experimental Note that this is UNSTABLE and may have breaking changes without notice.
9
- */
10
- export declare enum PayloadType {
11
- Protocols = "m.login.protocols",
12
- Protocol = "m.login.protocol",
13
- Failure = "m.login.failure",
14
- Success = "m.login.success",
15
- Secrets = "m.login.secrets",
16
- ProtocolAccepted = "m.login.protocol_accepted",
17
- Declined = "m.login.declined"
18
- }
19
- /**
20
- * Type representing the base payload format for [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
21
- * messages sent over the secure channel.
22
- * @experimental Note that this is UNSTABLE and may have breaking changes without notice.
23
- */
24
- export interface MSC4108Payload {
25
- type: PayloadType;
26
- }
27
- interface SecretsPayload extends MSC4108Payload, Awaited<ReturnType<NonNullable<CryptoApi["exportSecretsBundle"]>>> {
28
- type: PayloadType.Secrets;
29
- }
30
- /**
31
- * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
32
- * sign in with QR + OIDC flow.
33
- * @experimental Note that this is UNSTABLE and may have breaking changes without notice.
34
- */
35
- export declare class MSC4108SignInWithQR {
36
- private readonly channel;
37
- private readonly didScanCode;
38
- private readonly client?;
39
- onFailure?: RendezvousFailureListener | undefined;
40
- private readonly ourIntent;
41
- private _code?;
42
- private expectingNewDeviceId?;
43
- /**
44
- * Returns the check code for the secure channel or undefined if not generated yet.
45
- */
46
- get checkCode(): string | undefined;
47
- /**
48
- * @param channel - The secure channel used for communication
49
- * @param client - The Matrix client in used on the device already logged in
50
- * @param didScanCode - Whether this side of the channel scanned the QR code from the other party
51
- * @param onFailure - Callback for when the rendezvous fails
52
- */
53
- constructor(channel: MSC4108SecureChannel, didScanCode: boolean, client?: MatrixClient | undefined, onFailure?: RendezvousFailureListener | undefined);
54
- /**
55
- * Returns the code representing the rendezvous suitable for rendering in a QR code or undefined if not generated yet.
56
- */
57
- get code(): Uint8Array | undefined;
58
- /**
59
- * Generate the code including doing partial set up of the channel where required.
60
- */
61
- generateCode(): Promise<void>;
62
- /**
63
- * Returns true if the device is the already logged in device reciprocating a new login on the other side of the channel.
64
- */
65
- get isExistingDevice(): boolean;
66
- /**
67
- * Returns true if the device is the new device logging in being reciprocated by the device on the other side of the channel.
68
- */
69
- get isNewDevice(): boolean;
70
- /**
71
- * The first step in the OIDC QR login process.
72
- * To be called after the QR code has been rendered or scanned.
73
- * The scanning device has to discover the homeserver details, if they scanned the code then they already have it.
74
- * If the new device is the one rendering the QR code then it has to wait be sent the homeserver details via the rendezvous channel.
75
- */
76
- negotiateProtocols(): Promise<{
77
- serverName?: string;
78
- }>;
79
- /**
80
- * The second & third step in the OIDC QR login process.
81
- * To be called after `negotiateProtocols` for the existing device.
82
- * To be called after OIDC negotiation for the new device. (Currently unsupported)
83
- */
84
- deviceAuthorizationGrant(): Promise<{
85
- verificationUri?: string;
86
- userCode?: string;
87
- }>;
88
- /**
89
- * The fifth (and final) step in the OIDC QR login process.
90
- * To be called after the new device has completed authentication.
91
- */
92
- shareSecrets(): Promise<{
93
- secrets?: Omit<SecretsPayload, "type">;
94
- }>;
95
- private receive;
96
- private send;
97
- /**
98
- * Decline the login on the existing device.
99
- */
100
- declineLoginOnExistingDevice(): Promise<void>;
101
- /**
102
- * Cancels the rendezvous session.
103
- * @param reason the reason for the cancellation
104
- */
105
- cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise<void>;
106
- /**
107
- * Closes the rendezvous session.
108
- */
109
- close(): Promise<void>;
110
- }
111
- export {};
112
- //# sourceMappingURL=MSC4108SignInWithQR.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MSC4108SignInWithQR.d.ts","sourceRoot":"","sources":["../../src/rendezvous/MSC4108SignInWithQR.ts"],"names":[],"mappings":"AAkBA,OAAO,EACH,6BAA6B,EAC7B,oBAAoB,EAEpB,yBAAyB,EAC5B,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAI1E,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD;;;;GAIG;AACH,oBAAY,WAAW;IACnB,SAAS,sBAAsB;IAC/B,QAAQ,qBAAqB;IAC7B,OAAO,oBAAoB;IAC3B,OAAO,oBAAoB;IAC3B,OAAO,oBAAoB;IAC3B,gBAAgB,8BAA8B;IAC9C,QAAQ,qBAAqB;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,WAAW,CAAC;CACrB;AA8CD,UAAU,cAAe,SAAQ,cAAc,EAAE,OAAO,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC/G,IAAI,EAAE,WAAW,CAAC,OAAO,CAAC;CAC7B;AAED;;;;GAIG;AACH,qBAAa,mBAAmB;IAmBxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,yBAAyB;IArBhD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAa;IACvC,OAAO,CAAC,KAAK,CAAC,CAAa;IAC3B,OAAO,CAAC,oBAAoB,CAAC,CAAS;IAEtC;;OAEG;IACH,IAAW,SAAS,IAAI,MAAM,GAAG,SAAS,CAEzC;IAED;;;;;OAKG;gBAEkB,OAAO,EAAE,oBAAoB,EAC7B,WAAW,EAAE,OAAO,EACpB,MAAM,CAAC,EAAE,YAAY,YAAA,EAC/B,SAAS,CAAC,EAAE,yBAAyB,YAAA;IAKhD;;OAEG;IACH,IAAW,IAAI,IAAI,UAAU,GAAG,SAAS,CAExC;IAED;;OAEG;IACU,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAY1C;;OAEG;IACH,IAAW,gBAAgB,IAAI,OAAO,CAErC;IAED;;OAEG;IACH,IAAW,WAAW,IAAI,OAAO,CAEhC;IAED;;;;;OAKG;IACU,kBAAkB,IAAI,OAAO,CAAC;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA+DnE;;;;OAIG;IACU,wBAAwB,IAAI,OAAO,CAAC;QAC7C,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IAiEF;;;OAGG;IACU,YAAY,IAAI,OAAO,CAAC;QAAE,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;KAAE,CAAC;YAyFlE,OAAO;YAIP,IAAI;IAIlB;;OAEG;IACU,4BAA4B,IAAI,OAAO,CAAC,IAAI,CAAC;IAU1D;;;OAGG;IACU,MAAM,CAAC,MAAM,EAAE,oBAAoB,GAAG,6BAA6B,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhG;;OAEG;IACU,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAGtC"}
@@ -1,392 +0,0 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
- import _defineProperty from "@babel/runtime/helpers/defineProperty";
3
- function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
4
- function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
5
- /*
6
- Copyright 2024 The Matrix.org Foundation C.I.C.
7
-
8
- Licensed under the Apache License, Version 2.0 (the "License");
9
- you may not use this file except in compliance with the License.
10
- You may obtain a copy of the License at
11
-
12
- http://www.apache.org/licenses/LICENSE-2.0
13
-
14
- Unless required by applicable law or agreed to in writing, software
15
- distributed under the License is distributed on an "AS IS" BASIS,
16
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17
- See the License for the specific language governing permissions and
18
- limitations under the License.
19
- */
20
-
21
- import { QrCodeMode } from "@matrix-org/matrix-sdk-crypto-wasm";
22
- import { ClientRendezvousFailureReason, MSC4108FailureReason, RendezvousError } from "./index.js";
23
- import { logger } from "../logger.js";
24
- import { MatrixError } from "../http-api/index.js";
25
- import { sleep } from "../utils.js";
26
- import { DEVICE_CODE_SCOPE, discoverAndValidateOIDCIssuerWellKnown } from "../oidc/index.js";
27
- /**
28
- * Enum representing the payload types transmissible over [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
29
- * secure channels.
30
- * @experimental Note that this is UNSTABLE and may have breaking changes without notice.
31
- */
32
- export var PayloadType = /*#__PURE__*/function (PayloadType) {
33
- PayloadType["Protocols"] = "m.login.protocols";
34
- PayloadType["Protocol"] = "m.login.protocol";
35
- PayloadType["Failure"] = "m.login.failure";
36
- PayloadType["Success"] = "m.login.success";
37
- PayloadType["Secrets"] = "m.login.secrets";
38
- PayloadType["ProtocolAccepted"] = "m.login.protocol_accepted";
39
- PayloadType["Declined"] = "m.login.declined";
40
- return PayloadType;
41
- }({});
42
-
43
- /**
44
- * Type representing the base payload format for [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
45
- * messages sent over the secure channel.
46
- * @experimental Note that this is UNSTABLE and may have breaking changes without notice.
47
- */
48
-
49
- function isDeviceAuthorizationGrantProtocolPayload(payload) {
50
- return payload.protocol === "device_authorization_grant";
51
- }
52
- /**
53
- * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)
54
- * sign in with QR + OIDC flow.
55
- * @experimental Note that this is UNSTABLE and may have breaking changes without notice.
56
- */
57
- export class MSC4108SignInWithQR {
58
- /**
59
- * Returns the check code for the secure channel or undefined if not generated yet.
60
- */
61
- get checkCode() {
62
- var _this$channel;
63
- return (_this$channel = this.channel) === null || _this$channel === void 0 ? void 0 : _this$channel.getCheckCode();
64
- }
65
-
66
- /**
67
- * @param channel - The secure channel used for communication
68
- * @param client - The Matrix client in used on the device already logged in
69
- * @param didScanCode - Whether this side of the channel scanned the QR code from the other party
70
- * @param onFailure - Callback for when the rendezvous fails
71
- */
72
- constructor(channel, didScanCode, client, onFailure) {
73
- this.channel = channel;
74
- this.didScanCode = didScanCode;
75
- this.client = client;
76
- this.onFailure = onFailure;
77
- _defineProperty(this, "ourIntent", void 0);
78
- _defineProperty(this, "_code", void 0);
79
- _defineProperty(this, "expectingNewDeviceId", void 0);
80
- this.ourIntent = client ? QrCodeMode.Reciprocate : QrCodeMode.Login;
81
- }
82
-
83
- /**
84
- * Returns the code representing the rendezvous suitable for rendering in a QR code or undefined if not generated yet.
85
- */
86
- get code() {
87
- return this._code;
88
- }
89
-
90
- /**
91
- * Generate the code including doing partial set up of the channel where required.
92
- */
93
- generateCode() {
94
- var _this = this;
95
- return _asyncToGenerator(function* () {
96
- if (_this._code) {
97
- return;
98
- }
99
- if (_this.ourIntent === QrCodeMode.Reciprocate && _this.client) {
100
- _this._code = yield _this.channel.generateCode(_this.ourIntent, _this.client.getDomain());
101
- } else if (_this.ourIntent === QrCodeMode.Login) {
102
- _this._code = yield _this.channel.generateCode(_this.ourIntent);
103
- }
104
- })();
105
- }
106
-
107
- /**
108
- * Returns true if the device is the already logged in device reciprocating a new login on the other side of the channel.
109
- */
110
- get isExistingDevice() {
111
- return this.ourIntent === QrCodeMode.Reciprocate;
112
- }
113
-
114
- /**
115
- * Returns true if the device is the new device logging in being reciprocated by the device on the other side of the channel.
116
- */
117
- get isNewDevice() {
118
- return !this.isExistingDevice;
119
- }
120
-
121
- /**
122
- * The first step in the OIDC QR login process.
123
- * To be called after the QR code has been rendered or scanned.
124
- * The scanning device has to discover the homeserver details, if they scanned the code then they already have it.
125
- * If the new device is the one rendering the QR code then it has to wait be sent the homeserver details via the rendezvous channel.
126
- */
127
- negotiateProtocols() {
128
- var _this2 = this;
129
- return _asyncToGenerator(function* () {
130
- logger.info("negotiateProtocols(isNewDevice=".concat(_this2.isNewDevice, " didScanCode=").concat(_this2.didScanCode, ")"));
131
- yield _this2.channel.connect();
132
- if (_this2.didScanCode) {
133
- // Secure Channel step 6 completed, we trust the channel
134
-
135
- if (_this2.isNewDevice) {
136
- // MSC4108-Flow: ExistingScanned - take homeserver from QR code which should already be set
137
- } else {
138
- var _oidcClientConfig;
139
- // MSC4108-Flow: NewScanned -send protocols message
140
- var oidcClientConfig;
141
- try {
142
- var {
143
- issuer
144
- } = yield _this2.client.getAuthIssuer();
145
- oidcClientConfig = yield discoverAndValidateOIDCIssuerWellKnown(issuer);
146
- } catch (e) {
147
- logger.error("Failed to discover OIDC metadata", e);
148
- }
149
- if ((_oidcClientConfig = oidcClientConfig) !== null && _oidcClientConfig !== void 0 && _oidcClientConfig.metadata.grant_types_supported.includes(DEVICE_CODE_SCOPE)) {
150
- yield _this2.send({
151
- type: PayloadType.Protocols,
152
- protocols: ["device_authorization_grant"],
153
- homeserver: _this2.client.getDomain()
154
- });
155
- } else {
156
- yield _this2.send({
157
- type: PayloadType.Failure,
158
- reason: MSC4108FailureReason.UnsupportedProtocol
159
- });
160
- throw new RendezvousError("Device code grant unsupported", MSC4108FailureReason.UnsupportedProtocol);
161
- }
162
- }
163
- } else if (_this2.isNewDevice) {
164
- // MSC4108-Flow: ExistingScanned - wait for protocols message
165
- logger.info("Waiting for protocols message");
166
- var payload = yield _this2.receive();
167
- if ((payload === null || payload === void 0 ? void 0 : payload.type) === PayloadType.Failure) {
168
- throw new RendezvousError("Failed", payload.reason);
169
- }
170
- if ((payload === null || payload === void 0 ? void 0 : payload.type) !== PayloadType.Protocols) {
171
- yield _this2.send({
172
- type: PayloadType.Failure,
173
- reason: MSC4108FailureReason.UnexpectedMessageReceived
174
- });
175
- throw new RendezvousError("Unexpected message received", MSC4108FailureReason.UnexpectedMessageReceived);
176
- }
177
- return {
178
- serverName: payload.homeserver
179
- };
180
- } else {
181
- // MSC4108-Flow: NewScanned - nothing to do
182
- }
183
- return {};
184
- })();
185
- }
186
-
187
- /**
188
- * The second & third step in the OIDC QR login process.
189
- * To be called after `negotiateProtocols` for the existing device.
190
- * To be called after OIDC negotiation for the new device. (Currently unsupported)
191
- */
192
- deviceAuthorizationGrant() {
193
- var _this3 = this;
194
- return _asyncToGenerator(function* () {
195
- if (_this3.isNewDevice) {
196
- throw new Error("New device flows around OIDC are not yet implemented");
197
- } else {
198
- // The user needs to do step 7 for the out-of-band confirmation
199
- // but, first we receive the protocol chosen by the other device so that
200
- // the confirmation_uri is ready to go
201
- logger.info("Waiting for protocol message");
202
- var payload = yield _this3.receive();
203
- if ((payload === null || payload === void 0 ? void 0 : payload.type) === PayloadType.Failure) {
204
- throw new RendezvousError("Failed", payload.reason);
205
- }
206
- if ((payload === null || payload === void 0 ? void 0 : payload.type) !== PayloadType.Protocol) {
207
- yield _this3.send({
208
- type: PayloadType.Failure,
209
- reason: MSC4108FailureReason.UnexpectedMessageReceived
210
- });
211
- throw new RendezvousError("Unexpected message received", MSC4108FailureReason.UnexpectedMessageReceived);
212
- }
213
- if (isDeviceAuthorizationGrantProtocolPayload(payload)) {
214
- var {
215
- device_authorization_grant: dag,
216
- device_id: expectingNewDeviceId
217
- } = payload;
218
- var {
219
- verification_uri: verificationUri,
220
- verification_uri_complete: verificationUriComplete
221
- } = dag;
222
- var deviceAlreadyExists = true;
223
- try {
224
- var _this3$client;
225
- yield (_this3$client = _this3.client) === null || _this3$client === void 0 ? void 0 : _this3$client.getDevice(expectingNewDeviceId);
226
- } catch (err) {
227
- if (err instanceof MatrixError && err.httpStatus === 404) {
228
- deviceAlreadyExists = false;
229
- }
230
- }
231
- if (deviceAlreadyExists) {
232
- yield _this3.send({
233
- type: PayloadType.Failure,
234
- reason: MSC4108FailureReason.DeviceAlreadyExists
235
- });
236
- throw new RendezvousError("Specified device ID already exists", MSC4108FailureReason.DeviceAlreadyExists);
237
- }
238
- _this3.expectingNewDeviceId = expectingNewDeviceId;
239
- return {
240
- verificationUri: verificationUriComplete !== null && verificationUriComplete !== void 0 ? verificationUriComplete : verificationUri
241
- };
242
- }
243
- yield _this3.send({
244
- type: PayloadType.Failure,
245
- reason: MSC4108FailureReason.UnsupportedProtocol
246
- });
247
- throw new RendezvousError("Received a request for an unsupported protocol", MSC4108FailureReason.UnsupportedProtocol);
248
- }
249
- })();
250
- }
251
-
252
- /**
253
- * The fifth (and final) step in the OIDC QR login process.
254
- * To be called after the new device has completed authentication.
255
- */
256
- shareSecrets() {
257
- var _this4 = this;
258
- return _asyncToGenerator(function* () {
259
- if (_this4.isNewDevice) {
260
- yield _this4.send({
261
- type: PayloadType.Success
262
- });
263
- // then wait for secrets
264
- logger.info("Waiting for secrets message");
265
- var payload = yield _this4.receive();
266
- if ((payload === null || payload === void 0 ? void 0 : payload.type) === PayloadType.Failure) {
267
- throw new RendezvousError("Failed", payload.reason);
268
- }
269
- if ((payload === null || payload === void 0 ? void 0 : payload.type) !== PayloadType.Secrets) {
270
- yield _this4.send({
271
- type: PayloadType.Failure,
272
- reason: MSC4108FailureReason.UnexpectedMessageReceived
273
- });
274
- throw new RendezvousError("Unexpected message received", MSC4108FailureReason.UnexpectedMessageReceived);
275
- }
276
- return {
277
- secrets: payload
278
- };
279
- // then done?
280
- } else {
281
- if (!_this4.expectingNewDeviceId) {
282
- throw new Error("No new device ID expected");
283
- }
284
- yield _this4.send({
285
- type: PayloadType.ProtocolAccepted
286
- });
287
- logger.info("Waiting for outcome message");
288
- var _payload = yield _this4.receive();
289
- if ((_payload === null || _payload === void 0 ? void 0 : _payload.type) === PayloadType.Failure) {
290
- throw new RendezvousError("Failed", _payload.reason);
291
- }
292
- if ((_payload === null || _payload === void 0 ? void 0 : _payload.type) === PayloadType.Declined) {
293
- throw new RendezvousError("User declined", ClientRendezvousFailureReason.UserDeclined);
294
- }
295
- if ((_payload === null || _payload === void 0 ? void 0 : _payload.type) !== PayloadType.Success) {
296
- yield _this4.send({
297
- type: PayloadType.Failure,
298
- reason: MSC4108FailureReason.UnexpectedMessageReceived
299
- });
300
- throw new RendezvousError("Unexpected message", MSC4108FailureReason.UnexpectedMessageReceived);
301
- }
302
- var timeout = Date.now() + 10000; // wait up to 10 seconds
303
- do {
304
- // is the device visible via the Homeserver?
305
- try {
306
- var _this4$client;
307
- var device = yield (_this4$client = _this4.client) === null || _this4$client === void 0 ? void 0 : _this4$client.getDevice(_this4.expectingNewDeviceId);
308
- if (device) {
309
- // if so, return the secrets
310
- var secretsBundle = yield _this4.client.getCrypto().exportSecretsBundle();
311
- if (_this4.channel.cancelled) {
312
- throw new RendezvousError("User cancelled", MSC4108FailureReason.UserCancelled);
313
- }
314
- // send secrets
315
- yield _this4.send(_objectSpread({
316
- type: PayloadType.Secrets
317
- }, secretsBundle));
318
- return {
319
- secrets: secretsBundle
320
- };
321
- // let the other side close the rendezvous session
322
- }
323
- } catch (err) {
324
- if (err instanceof MatrixError && err.httpStatus === 404) {
325
- // not found, so keep waiting until timeout
326
- } else {
327
- throw err;
328
- }
329
- }
330
- yield sleep(1000);
331
- } while (Date.now() < timeout);
332
- yield _this4.send({
333
- type: PayloadType.Failure,
334
- reason: MSC4108FailureReason.DeviceNotFound
335
- });
336
- throw new RendezvousError("New device not found", MSC4108FailureReason.DeviceNotFound);
337
- }
338
- })();
339
- }
340
- receive() {
341
- var _this5 = this;
342
- return _asyncToGenerator(function* () {
343
- return yield _this5.channel.secureReceive();
344
- })();
345
- }
346
- send(payload) {
347
- var _this6 = this;
348
- return _asyncToGenerator(function* () {
349
- yield _this6.channel.secureSend(payload);
350
- })();
351
- }
352
-
353
- /**
354
- * Decline the login on the existing device.
355
- */
356
- declineLoginOnExistingDevice() {
357
- var _this7 = this;
358
- return _asyncToGenerator(function* () {
359
- if (!_this7.isExistingDevice) {
360
- throw new Error("Can only decline login on existing device");
361
- }
362
- yield _this7.send({
363
- type: PayloadType.Failure,
364
- reason: MSC4108FailureReason.UserCancelled
365
- });
366
- })();
367
- }
368
-
369
- /**
370
- * Cancels the rendezvous session.
371
- * @param reason the reason for the cancellation
372
- */
373
- cancel(reason) {
374
- var _this8 = this;
375
- return _asyncToGenerator(function* () {
376
- var _this8$onFailure;
377
- (_this8$onFailure = _this8.onFailure) === null || _this8$onFailure === void 0 || _this8$onFailure.call(_this8, reason);
378
- yield _this8.channel.cancel(reason);
379
- })();
380
- }
381
-
382
- /**
383
- * Closes the rendezvous session.
384
- */
385
- close() {
386
- var _this9 = this;
387
- return _asyncToGenerator(function* () {
388
- yield _this9.channel.close();
389
- })();
390
- }
391
- }
392
- //# sourceMappingURL=MSC4108SignInWithQR.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"MSC4108SignInWithQR.js","names":["QrCodeMode","ClientRendezvousFailureReason","MSC4108FailureReason","RendezvousError","logger","MatrixError","sleep","DEVICE_CODE_SCOPE","discoverAndValidateOIDCIssuerWellKnown","PayloadType","isDeviceAuthorizationGrantProtocolPayload","payload","protocol","MSC4108SignInWithQR","checkCode","_this$channel","channel","getCheckCode","constructor","didScanCode","client","onFailure","_defineProperty","ourIntent","Reciprocate","Login","code","_code","generateCode","_this","_asyncToGenerator","getDomain","isExistingDevice","isNewDevice","negotiateProtocols","_this2","info","concat","connect","_oidcClientConfig","oidcClientConfig","issuer","getAuthIssuer","e","error","metadata","grant_types_supported","includes","send","type","Protocols","protocols","homeserver","Failure","reason","UnsupportedProtocol","receive","UnexpectedMessageReceived","serverName","deviceAuthorizationGrant","_this3","Error","Protocol","device_authorization_grant","dag","device_id","expectingNewDeviceId","verification_uri","verificationUri","verification_uri_complete","verificationUriComplete","deviceAlreadyExists","_this3$client","getDevice","err","httpStatus","DeviceAlreadyExists","shareSecrets","_this4","Success","Secrets","secrets","ProtocolAccepted","Declined","UserDeclined","timeout","Date","now","_this4$client","device","secretsBundle","getCrypto","exportSecretsBundle","cancelled","UserCancelled","_objectSpread","DeviceNotFound","_this5","secureReceive","_this6","secureSend","declineLoginOnExistingDevice","_this7","cancel","_this8","_this8$onFailure","call","close","_this9"],"sources":["../../src/rendezvous/MSC4108SignInWithQR.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 { QrCodeMode } from \"@matrix-org/matrix-sdk-crypto-wasm\";\n\nimport {\n ClientRendezvousFailureReason,\n MSC4108FailureReason,\n RendezvousError,\n RendezvousFailureListener,\n} from \"./index.ts\";\nimport { MatrixClient } from \"../client.ts\";\nimport { logger } from \"../logger.ts\";\nimport { MSC4108SecureChannel } from \"./channels/MSC4108SecureChannel.ts\";\nimport { MatrixError } from \"../http-api/index.ts\";\nimport { sleep } from \"../utils.ts\";\nimport { DEVICE_CODE_SCOPE, discoverAndValidateOIDCIssuerWellKnown, OidcClientConfig } from \"../oidc/index.ts\";\nimport { CryptoApi } from \"../crypto-api/index.ts\";\n\n/**\n * Enum representing the payload types transmissible over [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)\n * secure channels.\n * @experimental Note that this is UNSTABLE and may have breaking changes without notice.\n */\nexport enum PayloadType {\n Protocols = \"m.login.protocols\",\n Protocol = \"m.login.protocol\",\n Failure = \"m.login.failure\",\n Success = \"m.login.success\",\n Secrets = \"m.login.secrets\",\n ProtocolAccepted = \"m.login.protocol_accepted\",\n Declined = \"m.login.declined\",\n}\n\n/**\n * Type representing the base payload format for [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)\n * messages sent over the secure channel.\n * @experimental Note that this is UNSTABLE and may have breaking changes without notice.\n */\nexport interface MSC4108Payload {\n type: PayloadType;\n}\n\ninterface ProtocolsPayload extends MSC4108Payload {\n type: PayloadType.Protocols;\n protocols: string[];\n homeserver: string;\n}\n\ninterface ProtocolPayload extends MSC4108Payload {\n type: PayloadType.Protocol;\n protocol: Exclude<string, \"device_authorization_grant\">;\n device_id: string;\n}\n\ninterface DeviceAuthorizationGrantProtocolPayload extends ProtocolPayload {\n protocol: \"device_authorization_grant\";\n device_authorization_grant: {\n verification_uri: string;\n verification_uri_complete?: string;\n };\n}\n\nfunction isDeviceAuthorizationGrantProtocolPayload(\n payload: ProtocolPayload,\n): payload is DeviceAuthorizationGrantProtocolPayload {\n return payload.protocol === \"device_authorization_grant\";\n}\n\ninterface FailurePayload extends MSC4108Payload {\n type: PayloadType.Failure;\n reason: MSC4108FailureReason;\n homeserver?: string;\n}\n\ninterface DeclinedPayload extends MSC4108Payload {\n type: PayloadType.Declined;\n}\n\ninterface SuccessPayload extends MSC4108Payload {\n type: PayloadType.Success;\n}\n\ninterface AcceptedPayload extends MSC4108Payload {\n type: PayloadType.ProtocolAccepted;\n}\n\ninterface SecretsPayload extends MSC4108Payload, Awaited<ReturnType<NonNullable<CryptoApi[\"exportSecretsBundle\"]>>> {\n type: PayloadType.Secrets;\n}\n\n/**\n * Prototype of the unstable [MSC4108](https://github.com/matrix-org/matrix-spec-proposals/pull/4108)\n * sign in with QR + OIDC flow.\n * @experimental Note that this is UNSTABLE and may have breaking changes without notice.\n */\nexport class MSC4108SignInWithQR {\n private readonly ourIntent: QrCodeMode;\n private _code?: Uint8Array;\n private expectingNewDeviceId?: string;\n\n /**\n * Returns the check code for the secure channel or undefined if not generated yet.\n */\n public get checkCode(): string | undefined {\n return this.channel?.getCheckCode();\n }\n\n /**\n * @param channel - The secure channel used for communication\n * @param client - The Matrix client in used on the device already logged in\n * @param didScanCode - Whether this side of the channel scanned the QR code from the other party\n * @param onFailure - Callback for when the rendezvous fails\n */\n public constructor(\n private readonly channel: MSC4108SecureChannel,\n private readonly didScanCode: boolean,\n private readonly client?: MatrixClient,\n public onFailure?: RendezvousFailureListener,\n ) {\n this.ourIntent = client ? QrCodeMode.Reciprocate : QrCodeMode.Login;\n }\n\n /**\n * Returns the code representing the rendezvous suitable for rendering in a QR code or undefined if not generated yet.\n */\n public get code(): Uint8Array | undefined {\n return this._code;\n }\n\n /**\n * Generate the code including doing partial set up of the channel where required.\n */\n public async generateCode(): Promise<void> {\n if (this._code) {\n return;\n }\n\n if (this.ourIntent === QrCodeMode.Reciprocate && this.client) {\n this._code = await this.channel.generateCode(this.ourIntent, this.client.getDomain()!);\n } else if (this.ourIntent === QrCodeMode.Login) {\n this._code = await this.channel.generateCode(this.ourIntent);\n }\n }\n\n /**\n * Returns true if the device is the already logged in device reciprocating a new login on the other side of the channel.\n */\n public get isExistingDevice(): boolean {\n return this.ourIntent === QrCodeMode.Reciprocate;\n }\n\n /**\n * Returns true if the device is the new device logging in being reciprocated by the device on the other side of the channel.\n */\n public get isNewDevice(): boolean {\n return !this.isExistingDevice;\n }\n\n /**\n * The first step in the OIDC QR login process.\n * To be called after the QR code has been rendered or scanned.\n * The scanning device has to discover the homeserver details, if they scanned the code then they already have it.\n * If the new device is the one rendering the QR code then it has to wait be sent the homeserver details via the rendezvous channel.\n */\n public async negotiateProtocols(): Promise<{ serverName?: string }> {\n logger.info(`negotiateProtocols(isNewDevice=${this.isNewDevice} didScanCode=${this.didScanCode})`);\n await this.channel.connect();\n\n if (this.didScanCode) {\n // Secure Channel step 6 completed, we trust the channel\n\n if (this.isNewDevice) {\n // MSC4108-Flow: ExistingScanned - take homeserver from QR code which should already be set\n } else {\n // MSC4108-Flow: NewScanned -send protocols message\n let oidcClientConfig: OidcClientConfig | undefined;\n try {\n const { issuer } = await this.client!.getAuthIssuer();\n oidcClientConfig = await discoverAndValidateOIDCIssuerWellKnown(issuer);\n } catch (e) {\n logger.error(\"Failed to discover OIDC metadata\", e);\n }\n\n if (oidcClientConfig?.metadata.grant_types_supported.includes(DEVICE_CODE_SCOPE)) {\n await this.send<ProtocolsPayload>({\n type: PayloadType.Protocols,\n protocols: [\"device_authorization_grant\"],\n homeserver: this.client!.getDomain()!,\n });\n } else {\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UnsupportedProtocol,\n });\n throw new RendezvousError(\n \"Device code grant unsupported\",\n MSC4108FailureReason.UnsupportedProtocol,\n );\n }\n }\n } else if (this.isNewDevice) {\n // MSC4108-Flow: ExistingScanned - wait for protocols message\n logger.info(\"Waiting for protocols message\");\n const payload = await this.receive<ProtocolsPayload>();\n\n if (payload?.type === PayloadType.Failure) {\n throw new RendezvousError(\"Failed\", payload.reason);\n }\n\n if (payload?.type !== PayloadType.Protocols) {\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UnexpectedMessageReceived,\n });\n throw new RendezvousError(\n \"Unexpected message received\",\n MSC4108FailureReason.UnexpectedMessageReceived,\n );\n }\n\n return { serverName: payload.homeserver };\n } else {\n // MSC4108-Flow: NewScanned - nothing to do\n }\n return {};\n }\n\n /**\n * The second & third step in the OIDC QR login process.\n * To be called after `negotiateProtocols` for the existing device.\n * To be called after OIDC negotiation for the new device. (Currently unsupported)\n */\n public async deviceAuthorizationGrant(): Promise<{\n verificationUri?: string;\n userCode?: string;\n }> {\n if (this.isNewDevice) {\n throw new Error(\"New device flows around OIDC are not yet implemented\");\n } else {\n // The user needs to do step 7 for the out-of-band confirmation\n // but, first we receive the protocol chosen by the other device so that\n // the confirmation_uri is ready to go\n logger.info(\"Waiting for protocol message\");\n const payload = await this.receive<ProtocolPayload | DeviceAuthorizationGrantProtocolPayload>();\n\n if (payload?.type === PayloadType.Failure) {\n throw new RendezvousError(\"Failed\", payload.reason);\n }\n\n if (payload?.type !== PayloadType.Protocol) {\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UnexpectedMessageReceived,\n });\n throw new RendezvousError(\n \"Unexpected message received\",\n MSC4108FailureReason.UnexpectedMessageReceived,\n );\n }\n\n if (isDeviceAuthorizationGrantProtocolPayload(payload)) {\n const { device_authorization_grant: dag, device_id: expectingNewDeviceId } = payload;\n const { verification_uri: verificationUri, verification_uri_complete: verificationUriComplete } = dag;\n\n let deviceAlreadyExists = true;\n try {\n await this.client?.getDevice(expectingNewDeviceId);\n } catch (err: MatrixError | unknown) {\n if (err instanceof MatrixError && err.httpStatus === 404) {\n deviceAlreadyExists = false;\n }\n }\n\n if (deviceAlreadyExists) {\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.DeviceAlreadyExists,\n });\n throw new RendezvousError(\n \"Specified device ID already exists\",\n MSC4108FailureReason.DeviceAlreadyExists,\n );\n }\n\n this.expectingNewDeviceId = expectingNewDeviceId;\n\n return { verificationUri: verificationUriComplete ?? verificationUri };\n }\n\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UnsupportedProtocol,\n });\n throw new RendezvousError(\n \"Received a request for an unsupported protocol\",\n MSC4108FailureReason.UnsupportedProtocol,\n );\n }\n }\n\n /**\n * The fifth (and final) step in the OIDC QR login process.\n * To be called after the new device has completed authentication.\n */\n public async shareSecrets(): Promise<{ secrets?: Omit<SecretsPayload, \"type\"> }> {\n if (this.isNewDevice) {\n await this.send<SuccessPayload>({\n type: PayloadType.Success,\n });\n // then wait for secrets\n logger.info(\"Waiting for secrets message\");\n const payload = await this.receive<SecretsPayload>();\n if (payload?.type === PayloadType.Failure) {\n throw new RendezvousError(\"Failed\", payload.reason);\n }\n\n if (payload?.type !== PayloadType.Secrets) {\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UnexpectedMessageReceived,\n });\n throw new RendezvousError(\n \"Unexpected message received\",\n MSC4108FailureReason.UnexpectedMessageReceived,\n );\n }\n return { secrets: payload };\n // then done?\n } else {\n if (!this.expectingNewDeviceId) {\n throw new Error(\"No new device ID expected\");\n }\n await this.send<AcceptedPayload>({\n type: PayloadType.ProtocolAccepted,\n });\n\n logger.info(\"Waiting for outcome message\");\n const payload = await this.receive<SuccessPayload | DeclinedPayload>();\n\n if (payload?.type === PayloadType.Failure) {\n throw new RendezvousError(\"Failed\", payload.reason);\n }\n\n if (payload?.type === PayloadType.Declined) {\n throw new RendezvousError(\"User declined\", ClientRendezvousFailureReason.UserDeclined);\n }\n\n if (payload?.type !== PayloadType.Success) {\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UnexpectedMessageReceived,\n });\n throw new RendezvousError(\"Unexpected message\", MSC4108FailureReason.UnexpectedMessageReceived);\n }\n\n const timeout = Date.now() + 10000; // wait up to 10 seconds\n do {\n // is the device visible via the Homeserver?\n try {\n const device = await this.client?.getDevice(this.expectingNewDeviceId);\n\n if (device) {\n // if so, return the secrets\n const secretsBundle = await this.client!.getCrypto()!.exportSecretsBundle!();\n if (this.channel.cancelled) {\n throw new RendezvousError(\"User cancelled\", MSC4108FailureReason.UserCancelled);\n }\n // send secrets\n await this.send<SecretsPayload>({\n type: PayloadType.Secrets,\n ...secretsBundle,\n });\n return { secrets: secretsBundle };\n // let the other side close the rendezvous session\n }\n } catch (err: MatrixError | unknown) {\n if (err instanceof MatrixError && err.httpStatus === 404) {\n // not found, so keep waiting until timeout\n } else {\n throw err;\n }\n }\n await sleep(1000);\n } while (Date.now() < timeout);\n\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.DeviceNotFound,\n });\n throw new RendezvousError(\"New device not found\", MSC4108FailureReason.DeviceNotFound);\n }\n }\n\n private async receive<T extends MSC4108Payload>(): Promise<T | FailurePayload | undefined> {\n return (await this.channel.secureReceive()) as T | undefined;\n }\n\n private async send<T extends MSC4108Payload>(payload: T): Promise<void> {\n await this.channel.secureSend(payload);\n }\n\n /**\n * Decline the login on the existing device.\n */\n public async declineLoginOnExistingDevice(): Promise<void> {\n if (!this.isExistingDevice) {\n throw new Error(\"Can only decline login on existing device\");\n }\n await this.send<FailurePayload>({\n type: PayloadType.Failure,\n reason: MSC4108FailureReason.UserCancelled,\n });\n }\n\n /**\n * Cancels the rendezvous session.\n * @param reason the reason for the cancellation\n */\n public async cancel(reason: MSC4108FailureReason | ClientRendezvousFailureReason): Promise<void> {\n this.onFailure?.(reason);\n await this.channel.cancel(reason);\n }\n\n /**\n * Closes the rendezvous session.\n */\n public async close(): Promise<void> {\n await this.channel.close();\n }\n}\n"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,UAAU,QAAQ,oCAAoC;AAE/D,SACIC,6BAA6B,EAC7BC,oBAAoB,EACpBC,eAAe,QAEZ,YAAY;AAEnB,SAASC,MAAM,QAAQ,cAAc;AAErC,SAASC,WAAW,QAAQ,sBAAsB;AAClD,SAASC,KAAK,QAAQ,aAAa;AACnC,SAASC,iBAAiB,EAAEC,sCAAsC,QAA0B,kBAAkB;AAG9G;AACA;AACA;AACA;AACA;AACA,WAAYC,WAAW,0BAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA;;AAUvB;AACA;AACA;AACA;AACA;;AAyBA,SAASC,yCAAyCA,CAC9CC,OAAwB,EAC0B;EAClD,OAAOA,OAAO,CAACC,QAAQ,KAAK,4BAA4B;AAC5D;AAwBA;AACA;AACA;AACA;AACA;AACA,OAAO,MAAMC,mBAAmB,CAAC;EAK7B;AACJ;AACA;EACI,IAAWC,SAASA,CAAA,EAAuB;IAAA,IAAAC,aAAA;IACvC,QAAAA,aAAA,GAAO,IAAI,CAACC,OAAO,cAAAD,aAAA,uBAAZA,aAAA,CAAcE,YAAY,CAAC,CAAC;EACvC;;EAEA;AACJ;AACA;AACA;AACA;AACA;EACWC,WAAWA,CACGF,OAA6B,EAC7BG,WAAoB,EACpBC,MAAqB,EAC/BC,SAAqC,EAC9C;IAAA,KAJmBL,OAA6B,GAA7BA,OAA6B;IAAA,KAC7BG,WAAoB,GAApBA,WAAoB;IAAA,KACpBC,MAAqB,GAArBA,MAAqB;IAAA,KAC/BC,SAAqC,GAArCA,SAAqC;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAE5C,IAAI,CAACC,SAAS,GAAGH,MAAM,GAAGpB,UAAU,CAACwB,WAAW,GAAGxB,UAAU,CAACyB,KAAK;EACvE;;EAEA;AACJ;AACA;EACI,IAAWC,IAAIA,CAAA,EAA2B;IACtC,OAAO,IAAI,CAACC,KAAK;EACrB;;EAEA;AACJ;AACA;EACiBC,YAAYA,CAAA,EAAkB;IAAA,IAAAC,KAAA;IAAA,OAAAC,iBAAA;MACvC,IAAID,KAAI,CAACF,KAAK,EAAE;QACZ;MACJ;MAEA,IAAIE,KAAI,CAACN,SAAS,KAAKvB,UAAU,CAACwB,WAAW,IAAIK,KAAI,CAACT,MAAM,EAAE;QAC1DS,KAAI,CAACF,KAAK,SAASE,KAAI,CAACb,OAAO,CAACY,YAAY,CAACC,KAAI,CAACN,SAAS,EAAEM,KAAI,CAACT,MAAM,CAACW,SAAS,CAAC,CAAE,CAAC;MAC1F,CAAC,MAAM,IAAIF,KAAI,CAACN,SAAS,KAAKvB,UAAU,CAACyB,KAAK,EAAE;QAC5CI,KAAI,CAACF,KAAK,SAASE,KAAI,CAACb,OAAO,CAACY,YAAY,CAACC,KAAI,CAACN,SAAS,CAAC;MAChE;IAAC;EACL;;EAEA;AACJ;AACA;EACI,IAAWS,gBAAgBA,CAAA,EAAY;IACnC,OAAO,IAAI,CAACT,SAAS,KAAKvB,UAAU,CAACwB,WAAW;EACpD;;EAEA;AACJ;AACA;EACI,IAAWS,WAAWA,CAAA,EAAY;IAC9B,OAAO,CAAC,IAAI,CAACD,gBAAgB;EACjC;;EAEA;AACJ;AACA;AACA;AACA;AACA;EACiBE,kBAAkBA,CAAA,EAAqC;IAAA,IAAAC,MAAA;IAAA,OAAAL,iBAAA;MAChE1B,MAAM,CAACgC,IAAI,mCAAAC,MAAA,CAAmCF,MAAI,CAACF,WAAW,mBAAAI,MAAA,CAAgBF,MAAI,CAAChB,WAAW,MAAG,CAAC;MAClG,MAAMgB,MAAI,CAACnB,OAAO,CAACsB,OAAO,CAAC,CAAC;MAE5B,IAAIH,MAAI,CAAChB,WAAW,EAAE;QAClB;;QAEA,IAAIgB,MAAI,CAACF,WAAW,EAAE;UAClB;QAAA,CACH,MAAM;UAAA,IAAAM,iBAAA;UACH;UACA,IAAIC,gBAA8C;UAClD,IAAI;YACA,IAAM;cAAEC;YAAO,CAAC,SAASN,MAAI,CAACf,MAAM,CAAEsB,aAAa,CAAC,CAAC;YACrDF,gBAAgB,SAAShC,sCAAsC,CAACiC,MAAM,CAAC;UAC3E,CAAC,CAAC,OAAOE,CAAC,EAAE;YACRvC,MAAM,CAACwC,KAAK,CAAC,kCAAkC,EAAED,CAAC,CAAC;UACvD;UAEA,KAAAJ,iBAAA,GAAIC,gBAAgB,cAAAD,iBAAA,eAAhBA,iBAAA,CAAkBM,QAAQ,CAACC,qBAAqB,CAACC,QAAQ,CAACxC,iBAAiB,CAAC,EAAE;YAC9E,MAAM4B,MAAI,CAACa,IAAI,CAAmB;cAC9BC,IAAI,EAAExC,WAAW,CAACyC,SAAS;cAC3BC,SAAS,EAAE,CAAC,4BAA4B,CAAC;cACzCC,UAAU,EAAEjB,MAAI,CAACf,MAAM,CAAEW,SAAS,CAAC;YACvC,CAAC,CAAC;UACN,CAAC,MAAM;YACH,MAAMI,MAAI,CAACa,IAAI,CAAiB;cAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;cACzBC,MAAM,EAAEpD,oBAAoB,CAACqD;YACjC,CAAC,CAAC;YACF,MAAM,IAAIpD,eAAe,CACrB,+BAA+B,EAC/BD,oBAAoB,CAACqD,mBACzB,CAAC;UACL;QACJ;MACJ,CAAC,MAAM,IAAIpB,MAAI,CAACF,WAAW,EAAE;QACzB;QACA7B,MAAM,CAACgC,IAAI,CAAC,+BAA+B,CAAC;QAC5C,IAAMzB,OAAO,SAASwB,MAAI,CAACqB,OAAO,CAAmB,CAAC;QAEtD,IAAI,CAAA7C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAAC4C,OAAO,EAAE;UACvC,MAAM,IAAIlD,eAAe,CAAC,QAAQ,EAAEQ,OAAO,CAAC2C,MAAM,CAAC;QACvD;QAEA,IAAI,CAAA3C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAACyC,SAAS,EAAE;UACzC,MAAMf,MAAI,CAACa,IAAI,CAAiB;YAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;YACzBC,MAAM,EAAEpD,oBAAoB,CAACuD;UACjC,CAAC,CAAC;UACF,MAAM,IAAItD,eAAe,CACrB,6BAA6B,EAC7BD,oBAAoB,CAACuD,yBACzB,CAAC;QACL;QAEA,OAAO;UAAEC,UAAU,EAAE/C,OAAO,CAACyC;QAAW,CAAC;MAC7C,CAAC,MAAM;QACH;MAAA;MAEJ,OAAO,CAAC,CAAC;IAAC;EACd;;EAEA;AACJ;AACA;AACA;AACA;EACiBO,wBAAwBA,CAAA,EAGlC;IAAA,IAAAC,MAAA;IAAA,OAAA9B,iBAAA;MACC,IAAI8B,MAAI,CAAC3B,WAAW,EAAE;QAClB,MAAM,IAAI4B,KAAK,CAAC,sDAAsD,CAAC;MAC3E,CAAC,MAAM;QACH;QACA;QACA;QACAzD,MAAM,CAACgC,IAAI,CAAC,8BAA8B,CAAC;QAC3C,IAAMzB,OAAO,SAASiD,MAAI,CAACJ,OAAO,CAA4D,CAAC;QAE/F,IAAI,CAAA7C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAAC4C,OAAO,EAAE;UACvC,MAAM,IAAIlD,eAAe,CAAC,QAAQ,EAAEQ,OAAO,CAAC2C,MAAM,CAAC;QACvD;QAEA,IAAI,CAAA3C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAACqD,QAAQ,EAAE;UACxC,MAAMF,MAAI,CAACZ,IAAI,CAAiB;YAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;YACzBC,MAAM,EAAEpD,oBAAoB,CAACuD;UACjC,CAAC,CAAC;UACF,MAAM,IAAItD,eAAe,CACrB,6BAA6B,EAC7BD,oBAAoB,CAACuD,yBACzB,CAAC;QACL;QAEA,IAAI/C,yCAAyC,CAACC,OAAO,CAAC,EAAE;UACpD,IAAM;YAAEoD,0BAA0B,EAAEC,GAAG;YAAEC,SAAS,EAAEC;UAAqB,CAAC,GAAGvD,OAAO;UACpF,IAAM;YAAEwD,gBAAgB,EAAEC,eAAe;YAAEC,yBAAyB,EAAEC;UAAwB,CAAC,GAAGN,GAAG;UAErG,IAAIO,mBAAmB,GAAG,IAAI;UAC9B,IAAI;YAAA,IAAAC,aAAA;YACA,OAAAA,aAAA,GAAMZ,MAAI,CAACxC,MAAM,cAAAoD,aAAA,uBAAXA,aAAA,CAAaC,SAAS,CAACP,oBAAoB,CAAC;UACtD,CAAC,CAAC,OAAOQ,GAA0B,EAAE;YACjC,IAAIA,GAAG,YAAYrE,WAAW,IAAIqE,GAAG,CAACC,UAAU,KAAK,GAAG,EAAE;cACtDJ,mBAAmB,GAAG,KAAK;YAC/B;UACJ;UAEA,IAAIA,mBAAmB,EAAE;YACrB,MAAMX,MAAI,CAACZ,IAAI,CAAiB;cAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;cACzBC,MAAM,EAAEpD,oBAAoB,CAAC0E;YACjC,CAAC,CAAC;YACF,MAAM,IAAIzE,eAAe,CACrB,oCAAoC,EACpCD,oBAAoB,CAAC0E,mBACzB,CAAC;UACL;UAEAhB,MAAI,CAACM,oBAAoB,GAAGA,oBAAoB;UAEhD,OAAO;YAAEE,eAAe,EAAEE,uBAAuB,aAAvBA,uBAAuB,cAAvBA,uBAAuB,GAAIF;UAAgB,CAAC;QAC1E;QAEA,MAAMR,MAAI,CAACZ,IAAI,CAAiB;UAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;UACzBC,MAAM,EAAEpD,oBAAoB,CAACqD;QACjC,CAAC,CAAC;QACF,MAAM,IAAIpD,eAAe,CACrB,gDAAgD,EAChDD,oBAAoB,CAACqD,mBACzB,CAAC;MACL;IAAC;EACL;;EAEA;AACJ;AACA;AACA;EACiBsB,YAAYA,CAAA,EAAwD;IAAA,IAAAC,MAAA;IAAA,OAAAhD,iBAAA;MAC7E,IAAIgD,MAAI,CAAC7C,WAAW,EAAE;QAClB,MAAM6C,MAAI,CAAC9B,IAAI,CAAiB;UAC5BC,IAAI,EAAExC,WAAW,CAACsE;QACtB,CAAC,CAAC;QACF;QACA3E,MAAM,CAACgC,IAAI,CAAC,6BAA6B,CAAC;QAC1C,IAAMzB,OAAO,SAASmE,MAAI,CAACtB,OAAO,CAAiB,CAAC;QACpD,IAAI,CAAA7C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAAC4C,OAAO,EAAE;UACvC,MAAM,IAAIlD,eAAe,CAAC,QAAQ,EAAEQ,OAAO,CAAC2C,MAAM,CAAC;QACvD;QAEA,IAAI,CAAA3C,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAACuE,OAAO,EAAE;UACvC,MAAMF,MAAI,CAAC9B,IAAI,CAAiB;YAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;YACzBC,MAAM,EAAEpD,oBAAoB,CAACuD;UACjC,CAAC,CAAC;UACF,MAAM,IAAItD,eAAe,CACrB,6BAA6B,EAC7BD,oBAAoB,CAACuD,yBACzB,CAAC;QACL;QACA,OAAO;UAAEwB,OAAO,EAAEtE;QAAQ,CAAC;QAC3B;MACJ,CAAC,MAAM;QACH,IAAI,CAACmE,MAAI,CAACZ,oBAAoB,EAAE;UAC5B,MAAM,IAAIL,KAAK,CAAC,2BAA2B,CAAC;QAChD;QACA,MAAMiB,MAAI,CAAC9B,IAAI,CAAkB;UAC7BC,IAAI,EAAExC,WAAW,CAACyE;QACtB,CAAC,CAAC;QAEF9E,MAAM,CAACgC,IAAI,CAAC,6BAA6B,CAAC;QAC1C,IAAMzB,QAAO,SAASmE,MAAI,CAACtB,OAAO,CAAmC,CAAC;QAEtE,IAAI,CAAA7C,QAAO,aAAPA,QAAO,uBAAPA,QAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAAC4C,OAAO,EAAE;UACvC,MAAM,IAAIlD,eAAe,CAAC,QAAQ,EAAEQ,QAAO,CAAC2C,MAAM,CAAC;QACvD;QAEA,IAAI,CAAA3C,QAAO,aAAPA,QAAO,uBAAPA,QAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAAC0E,QAAQ,EAAE;UACxC,MAAM,IAAIhF,eAAe,CAAC,eAAe,EAAEF,6BAA6B,CAACmF,YAAY,CAAC;QAC1F;QAEA,IAAI,CAAAzE,QAAO,aAAPA,QAAO,uBAAPA,QAAO,CAAEsC,IAAI,MAAKxC,WAAW,CAACsE,OAAO,EAAE;UACvC,MAAMD,MAAI,CAAC9B,IAAI,CAAiB;YAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;YACzBC,MAAM,EAAEpD,oBAAoB,CAACuD;UACjC,CAAC,CAAC;UACF,MAAM,IAAItD,eAAe,CAAC,oBAAoB,EAAED,oBAAoB,CAACuD,yBAAyB,CAAC;QACnG;QAEA,IAAM4B,OAAO,GAAGC,IAAI,CAACC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;QACpC,GAAG;UACC;UACA,IAAI;YAAA,IAAAC,aAAA;YACA,IAAMC,MAAM,UAAAD,aAAA,GAASV,MAAI,CAAC1D,MAAM,cAAAoE,aAAA,uBAAXA,aAAA,CAAaf,SAAS,CAACK,MAAI,CAACZ,oBAAoB,CAAC;YAEtE,IAAIuB,MAAM,EAAE;cACR;cACA,IAAMC,aAAa,SAASZ,MAAI,CAAC1D,MAAM,CAAEuE,SAAS,CAAC,CAAC,CAAEC,mBAAmB,CAAE,CAAC;cAC5E,IAAId,MAAI,CAAC9D,OAAO,CAAC6E,SAAS,EAAE;gBACxB,MAAM,IAAI1F,eAAe,CAAC,gBAAgB,EAAED,oBAAoB,CAAC4F,aAAa,CAAC;cACnF;cACA;cACA,MAAMhB,MAAI,CAAC9B,IAAI,CAAA+C,aAAA;gBACX9C,IAAI,EAAExC,WAAW,CAACuE;cAAO,GACtBU,aAAa,CACnB,CAAC;cACF,OAAO;gBAAET,OAAO,EAAES;cAAc,CAAC;cACjC;YACJ;UACJ,CAAC,CAAC,OAAOhB,GAA0B,EAAE;YACjC,IAAIA,GAAG,YAAYrE,WAAW,IAAIqE,GAAG,CAACC,UAAU,KAAK,GAAG,EAAE;cACtD;YAAA,CACH,MAAM;cACH,MAAMD,GAAG;YACb;UACJ;UACA,MAAMpE,KAAK,CAAC,IAAI,CAAC;QACrB,CAAC,QAAQgF,IAAI,CAACC,GAAG,CAAC,CAAC,GAAGF,OAAO;QAE7B,MAAMP,MAAI,CAAC9B,IAAI,CAAiB;UAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;UACzBC,MAAM,EAAEpD,oBAAoB,CAAC8F;QACjC,CAAC,CAAC;QACF,MAAM,IAAI7F,eAAe,CAAC,sBAAsB,EAAED,oBAAoB,CAAC8F,cAAc,CAAC;MAC1F;IAAC;EACL;EAEcxC,OAAOA,CAAA,EAAsE;IAAA,IAAAyC,MAAA;IAAA,OAAAnE,iBAAA;MACvF,aAAcmE,MAAI,CAACjF,OAAO,CAACkF,aAAa,CAAC,CAAC;IAAmB;EACjE;EAEclD,IAAIA,CAA2BrC,OAAU,EAAiB;IAAA,IAAAwF,MAAA;IAAA,OAAArE,iBAAA;MACpE,MAAMqE,MAAI,CAACnF,OAAO,CAACoF,UAAU,CAACzF,OAAO,CAAC;IAAC;EAC3C;;EAEA;AACJ;AACA;EACiB0F,4BAA4BA,CAAA,EAAkB;IAAA,IAAAC,MAAA;IAAA,OAAAxE,iBAAA;MACvD,IAAI,CAACwE,MAAI,CAACtE,gBAAgB,EAAE;QACxB,MAAM,IAAI6B,KAAK,CAAC,2CAA2C,CAAC;MAChE;MACA,MAAMyC,MAAI,CAACtD,IAAI,CAAiB;QAC5BC,IAAI,EAAExC,WAAW,CAAC4C,OAAO;QACzBC,MAAM,EAAEpD,oBAAoB,CAAC4F;MACjC,CAAC,CAAC;IAAC;EACP;;EAEA;AACJ;AACA;AACA;EACiBS,MAAMA,CAACjD,MAA4D,EAAiB;IAAA,IAAAkD,MAAA;IAAA,OAAA1E,iBAAA;MAAA,IAAA2E,gBAAA;MAC7F,CAAAA,gBAAA,GAAAD,MAAI,CAACnF,SAAS,cAAAoF,gBAAA,eAAdA,gBAAA,CAAAC,IAAA,CAAAF,MAAI,EAAalD,MAAM,CAAC;MACxB,MAAMkD,MAAI,CAACxF,OAAO,CAACuF,MAAM,CAACjD,MAAM,CAAC;IAAC;EACtC;;EAEA;AACJ;AACA;EACiBqD,KAAKA,CAAA,EAAkB;IAAA,IAAAC,MAAA;IAAA,OAAA9E,iBAAA;MAChC,MAAM8E,MAAI,CAAC5F,OAAO,CAAC2F,KAAK,CAAC,CAAC;IAAC;EAC/B;AACJ","ignoreList":[]}
@@ -1,27 +0,0 @@
1
- import { RendezvousCode, RendezvousIntent, RendezvousFailureReason } from "./index.ts";
2
- export interface RendezvousChannel<T> {
3
- /**
4
- * @returns the checksum/confirmation digits to be shown to the user
5
- */
6
- connect(): Promise<string>;
7
- /**
8
- * Send a payload via the channel.
9
- * @param data - payload to send
10
- */
11
- send(data: T): Promise<void>;
12
- /**
13
- * Receive a payload from the channel.
14
- * @returns the received payload
15
- */
16
- receive(): Promise<Partial<T> | undefined>;
17
- /**
18
- * Close the channel and clear up any resources.
19
- */
20
- close(): Promise<void>;
21
- /**
22
- * @returns a representation of the channel that can be encoded in a QR or similar
23
- */
24
- generateCode(intent: RendezvousIntent): Promise<RendezvousCode>;
25
- cancel(reason: RendezvousFailureReason): Promise<void>;
26
- }
27
- //# sourceMappingURL=RendezvousChannel.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RendezvousChannel.d.ts","sourceRoot":"","sources":["../../src/rendezvous/RendezvousChannel.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAEvF,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAChC;;OAEG;IACH,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAE3B;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE7B;;;OAGG;IACH,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAE3C;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEvB;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAEhE,MAAM,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1D"}
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- {"version":3,"file":"RendezvousChannel.js","names":[],"sources":["../../src/rendezvous/RendezvousChannel.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 { RendezvousCode, RendezvousIntent, RendezvousFailureReason } from \"./index.ts\";\n\nexport interface RendezvousChannel<T> {\n /**\n * @returns the checksum/confirmation digits to be shown to the user\n */\n connect(): Promise<string>;\n\n /**\n * Send a payload via the channel.\n * @param data - payload to send\n */\n send(data: T): Promise<void>;\n\n /**\n * Receive a payload from the channel.\n * @returns the received payload\n */\n receive(): Promise<Partial<T> | undefined>;\n\n /**\n * Close the channel and clear up any resources.\n */\n close(): Promise<void>;\n\n /**\n * @returns a representation of the channel that can be encoded in a QR or similar\n */\n generateCode(intent: RendezvousIntent): Promise<RendezvousCode>;\n\n cancel(reason: RendezvousFailureReason): Promise<void>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -1,9 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
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":[]}
@@ -1,6 +0,0 @@
1
- import { RendezvousFailureReason } from "./index.ts";
2
- export declare class RendezvousError extends Error {
3
- readonly code: RendezvousFailureReason;
4
- constructor(message: string, code: RendezvousFailureReason);
5
- }
6
- //# sourceMappingURL=RendezvousError.d.ts.map
@@ -1 +0,0 @@
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"}