@unwanted/matrix-sdk-mini 34.12.0 → 34.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (698) hide show
  1. package/git-revision.txt +1 -1
  2. package/lib/@types/event.d.ts +0 -19
  3. package/lib/@types/event.d.ts.map +1 -1
  4. package/lib/@types/event.js.map +1 -1
  5. package/lib/@types/global.d.js +0 -2
  6. package/lib/@types/global.d.js.map +1 -1
  7. package/lib/autodiscovery.d.ts +1 -1
  8. package/lib/autodiscovery.d.ts.map +1 -1
  9. package/lib/autodiscovery.js.map +1 -1
  10. package/lib/base64.d.ts +3 -6
  11. package/lib/base64.d.ts.map +1 -1
  12. package/lib/base64.js +43 -36
  13. package/lib/base64.js.map +1 -1
  14. package/lib/browser-index.d.ts.map +1 -1
  15. package/lib/browser-index.js +0 -11
  16. package/lib/browser-index.js.map +1 -1
  17. package/lib/client.d.ts +2 -1298
  18. package/lib/client.d.ts.map +1 -1
  19. package/lib/client.js +348 -2967
  20. package/lib/client.js.map +1 -1
  21. package/lib/digest.d.ts +2 -2
  22. package/lib/digest.d.ts.map +1 -1
  23. package/lib/digest.js +2 -2
  24. package/lib/digest.js.map +1 -1
  25. package/lib/embedded.d.ts +0 -22
  26. package/lib/embedded.d.ts.map +1 -1
  27. package/lib/embedded.js +58 -168
  28. package/lib/embedded.js.map +1 -1
  29. package/lib/event-mapper.d.ts.map +1 -1
  30. package/lib/event-mapper.js +0 -4
  31. package/lib/event-mapper.js.map +1 -1
  32. package/lib/matrix.d.ts +0 -25
  33. package/lib/matrix.d.ts.map +1 -1
  34. package/lib/matrix.js +1 -30
  35. package/lib/matrix.js.map +1 -1
  36. package/lib/models/MSC3089Branch.d.ts.map +1 -1
  37. package/lib/models/MSC3089Branch.js +0 -3
  38. package/lib/models/MSC3089Branch.js.map +1 -1
  39. package/lib/models/event-timeline-set.d.ts +6 -10
  40. package/lib/models/event-timeline-set.d.ts.map +1 -1
  41. package/lib/models/event-timeline-set.js +28 -36
  42. package/lib/models/event-timeline-set.js.map +1 -1
  43. package/lib/models/event-timeline.d.ts +7 -2
  44. package/lib/models/event-timeline.d.ts.map +1 -1
  45. package/lib/models/event-timeline.js +8 -9
  46. package/lib/models/event-timeline.js.map +1 -1
  47. package/lib/models/event.d.ts +1 -95
  48. package/lib/models/event.d.ts.map +1 -1
  49. package/lib/models/event.js +11 -281
  50. package/lib/models/event.js.map +1 -1
  51. package/lib/models/poll.d.ts.map +1 -1
  52. package/lib/models/poll.js +1 -5
  53. package/lib/models/poll.js.map +1 -1
  54. package/lib/models/relations-container.d.ts.map +1 -1
  55. package/lib/models/relations-container.js +1 -7
  56. package/lib/models/relations-container.js.map +1 -1
  57. package/lib/models/relations.d.ts +0 -1
  58. package/lib/models/relations.d.ts.map +1 -1
  59. package/lib/models/relations.js +0 -8
  60. package/lib/models/relations.js.map +1 -1
  61. package/lib/models/room-state.d.ts +2 -13
  62. package/lib/models/room-state.d.ts.map +1 -1
  63. package/lib/models/room-state.js +12 -56
  64. package/lib/models/room-state.js.map +1 -1
  65. package/lib/models/room.d.ts +2 -20
  66. package/lib/models/room.d.ts.map +1 -1
  67. package/lib/models/room.js +121 -162
  68. package/lib/models/room.js.map +1 -1
  69. package/lib/models/thread.d.ts.map +1 -1
  70. package/lib/models/thread.js +5 -4
  71. package/lib/models/thread.js.map +1 -1
  72. package/lib/sliding-sync-sdk.d.ts +3 -4
  73. package/lib/sliding-sync-sdk.d.ts.map +1 -1
  74. package/lib/sliding-sync-sdk.js +55 -102
  75. package/lib/sliding-sync-sdk.js.map +1 -1
  76. package/lib/sliding-sync.js +9 -6
  77. package/lib/sliding-sync.js.map +1 -1
  78. package/lib/store/indexeddb.d.ts +1 -1
  79. package/lib/store/indexeddb.d.ts.map +1 -1
  80. package/lib/store/indexeddb.js.map +1 -1
  81. package/lib/sync-accumulator.d.ts +6 -4
  82. package/lib/sync-accumulator.d.ts.map +1 -1
  83. package/lib/sync-accumulator.js +23 -12
  84. package/lib/sync-accumulator.js.map +1 -1
  85. package/lib/sync.d.ts +10 -13
  86. package/lib/sync.d.ts.map +1 -1
  87. package/lib/sync.js +94 -115
  88. package/lib/sync.js.map +1 -1
  89. package/lib/testing.d.ts +0 -48
  90. package/lib/testing.d.ts.map +1 -1
  91. package/lib/testing.js +0 -105
  92. package/lib/testing.js.map +1 -1
  93. package/lib/types.d.ts +0 -1
  94. package/lib/types.d.ts.map +1 -1
  95. package/lib/types.js.map +1 -1
  96. package/package.json +10 -11
  97. package/src/@types/event.ts +2 -36
  98. package/src/@types/global.d.ts +21 -4
  99. package/src/autodiscovery.ts +1 -1
  100. package/src/base64.ts +38 -40
  101. package/src/browser-index.ts +0 -11
  102. package/src/client.ts +68 -3087
  103. package/src/digest.ts +3 -3
  104. package/src/embedded.ts +38 -134
  105. package/src/event-mapper.ts +0 -4
  106. package/src/matrix.ts +0 -41
  107. package/src/models/MSC3089Branch.ts +0 -3
  108. package/src/models/event-timeline-set.ts +17 -38
  109. package/src/models/event-timeline.ts +10 -5
  110. package/src/models/event.ts +8 -295
  111. package/src/models/poll.ts +0 -6
  112. package/src/models/relations-container.ts +1 -8
  113. package/src/models/relations.ts +0 -8
  114. package/src/models/room-state.ts +4 -37
  115. package/src/models/room.ts +18 -68
  116. package/src/models/thread.ts +4 -3
  117. package/src/sliding-sync-sdk.ts +10 -83
  118. package/src/sliding-sync.ts +6 -6
  119. package/src/store/indexeddb.ts +1 -1
  120. package/src/sync-accumulator.ts +33 -16
  121. package/src/sync.ts +112 -143
  122. package/src/testing.ts +0 -108
  123. package/src/types.ts +0 -1
  124. package/CHANGELOG.md +0 -5910
  125. package/lib/@types/AESEncryptedSecretStoragePayload.d.ts +0 -14
  126. package/lib/@types/AESEncryptedSecretStoragePayload.d.ts.map +0 -1
  127. package/lib/@types/AESEncryptedSecretStoragePayload.js +0 -1
  128. package/lib/@types/AESEncryptedSecretStoragePayload.js.map +0 -1
  129. package/lib/@types/crypto.d.ts +0 -47
  130. package/lib/@types/crypto.d.ts.map +0 -1
  131. package/lib/@types/crypto.js +0 -1
  132. package/lib/@types/crypto.js.map +0 -1
  133. package/lib/@types/matrix-sdk-crypto-wasm.d.js +0 -1
  134. package/lib/@types/matrix-sdk-crypto-wasm.d.js.map +0 -1
  135. package/lib/common-crypto/CryptoBackend.d.ts +0 -240
  136. package/lib/common-crypto/CryptoBackend.d.ts.map +0 -1
  137. package/lib/common-crypto/CryptoBackend.js +0 -73
  138. package/lib/common-crypto/CryptoBackend.js.map +0 -1
  139. package/lib/common-crypto/key-passphrase.d.ts +0 -14
  140. package/lib/common-crypto/key-passphrase.d.ts.map +0 -1
  141. package/lib/common-crypto/key-passphrase.js +0 -33
  142. package/lib/common-crypto/key-passphrase.js.map +0 -1
  143. package/lib/crypto/CrossSigning.d.ts +0 -184
  144. package/lib/crypto/CrossSigning.d.ts.map +0 -1
  145. package/lib/crypto/CrossSigning.js +0 -718
  146. package/lib/crypto/CrossSigning.js.map +0 -1
  147. package/lib/crypto/DeviceList.d.ts +0 -216
  148. package/lib/crypto/DeviceList.d.ts.map +0 -1
  149. package/lib/crypto/DeviceList.js +0 -892
  150. package/lib/crypto/DeviceList.js.map +0 -1
  151. package/lib/crypto/EncryptionSetup.d.ts +0 -152
  152. package/lib/crypto/EncryptionSetup.d.ts.map +0 -1
  153. package/lib/crypto/EncryptionSetup.js +0 -356
  154. package/lib/crypto/EncryptionSetup.js.map +0 -1
  155. package/lib/crypto/OlmDevice.d.ts +0 -457
  156. package/lib/crypto/OlmDevice.d.ts.map +0 -1
  157. package/lib/crypto/OlmDevice.js +0 -1241
  158. package/lib/crypto/OlmDevice.js.map +0 -1
  159. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts +0 -109
  160. package/lib/crypto/OutgoingRoomKeyRequestManager.d.ts.map +0 -1
  161. package/lib/crypto/OutgoingRoomKeyRequestManager.js +0 -415
  162. package/lib/crypto/OutgoingRoomKeyRequestManager.js.map +0 -1
  163. package/lib/crypto/RoomList.d.ts +0 -26
  164. package/lib/crypto/RoomList.d.ts.map +0 -1
  165. package/lib/crypto/RoomList.js +0 -71
  166. package/lib/crypto/RoomList.js.map +0 -1
  167. package/lib/crypto/SecretSharing.d.ts +0 -24
  168. package/lib/crypto/SecretSharing.d.ts.map +0 -1
  169. package/lib/crypto/SecretSharing.js +0 -194
  170. package/lib/crypto/SecretSharing.js.map +0 -1
  171. package/lib/crypto/SecretStorage.d.ts +0 -55
  172. package/lib/crypto/SecretStorage.d.ts.map +0 -1
  173. package/lib/crypto/SecretStorage.js +0 -118
  174. package/lib/crypto/SecretStorage.js.map +0 -1
  175. package/lib/crypto/aes.d.ts +0 -6
  176. package/lib/crypto/aes.d.ts.map +0 -1
  177. package/lib/crypto/aes.js +0 -24
  178. package/lib/crypto/aes.js.map +0 -1
  179. package/lib/crypto/algorithms/base.d.ts +0 -156
  180. package/lib/crypto/algorithms/base.d.ts.map +0 -1
  181. package/lib/crypto/algorithms/base.js +0 -187
  182. package/lib/crypto/algorithms/base.js.map +0 -1
  183. package/lib/crypto/algorithms/index.d.ts +0 -4
  184. package/lib/crypto/algorithms/index.d.ts.map +0 -1
  185. package/lib/crypto/algorithms/index.js +0 -20
  186. package/lib/crypto/algorithms/index.js.map +0 -1
  187. package/lib/crypto/algorithms/megolm.d.ts +0 -385
  188. package/lib/crypto/algorithms/megolm.d.ts.map +0 -1
  189. package/lib/crypto/algorithms/megolm.js +0 -1822
  190. package/lib/crypto/algorithms/megolm.js.map +0 -1
  191. package/lib/crypto/algorithms/olm.d.ts +0 -5
  192. package/lib/crypto/algorithms/olm.d.ts.map +0 -1
  193. package/lib/crypto/algorithms/olm.js +0 -299
  194. package/lib/crypto/algorithms/olm.js.map +0 -1
  195. package/lib/crypto/api.d.ts +0 -32
  196. package/lib/crypto/api.d.ts.map +0 -1
  197. package/lib/crypto/api.js +0 -22
  198. package/lib/crypto/api.js.map +0 -1
  199. package/lib/crypto/backup.d.ts +0 -227
  200. package/lib/crypto/backup.d.ts.map +0 -1
  201. package/lib/crypto/backup.js +0 -824
  202. package/lib/crypto/backup.js.map +0 -1
  203. package/lib/crypto/crypto.d.ts +0 -3
  204. package/lib/crypto/crypto.d.ts.map +0 -1
  205. package/lib/crypto/crypto.js +0 -19
  206. package/lib/crypto/crypto.js.map +0 -1
  207. package/lib/crypto/dehydration.d.ts +0 -34
  208. package/lib/crypto/dehydration.d.ts.map +0 -1
  209. package/lib/crypto/dehydration.js +0 -252
  210. package/lib/crypto/dehydration.js.map +0 -1
  211. package/lib/crypto/device-converter.d.ts +0 -9
  212. package/lib/crypto/device-converter.d.ts.map +0 -1
  213. package/lib/crypto/device-converter.js +0 -42
  214. package/lib/crypto/device-converter.js.map +0 -1
  215. package/lib/crypto/deviceinfo.d.ts +0 -99
  216. package/lib/crypto/deviceinfo.d.ts.map +0 -1
  217. package/lib/crypto/deviceinfo.js +0 -148
  218. package/lib/crypto/deviceinfo.js.map +0 -1
  219. package/lib/crypto/index.d.ts +0 -1210
  220. package/lib/crypto/index.d.ts.map +0 -1
  221. package/lib/crypto/index.js +0 -4101
  222. package/lib/crypto/index.js.map +0 -1
  223. package/lib/crypto/key_passphrase.d.ts +0 -14
  224. package/lib/crypto/key_passphrase.d.ts.map +0 -1
  225. package/lib/crypto/key_passphrase.js +0 -44
  226. package/lib/crypto/key_passphrase.js.map +0 -1
  227. package/lib/crypto/keybackup.d.ts +0 -18
  228. package/lib/crypto/keybackup.d.ts.map +0 -1
  229. package/lib/crypto/keybackup.js +0 -1
  230. package/lib/crypto/keybackup.js.map +0 -1
  231. package/lib/crypto/olmlib.d.ts +0 -129
  232. package/lib/crypto/olmlib.d.ts.map +0 -1
  233. package/lib/crypto/olmlib.js +0 -492
  234. package/lib/crypto/olmlib.js.map +0 -1
  235. package/lib/crypto/recoverykey.d.ts +0 -2
  236. package/lib/crypto/recoverykey.d.ts.map +0 -1
  237. package/lib/crypto/recoverykey.js +0 -19
  238. package/lib/crypto/recoverykey.js.map +0 -1
  239. package/lib/crypto/store/base.d.ts +0 -252
  240. package/lib/crypto/store/base.d.ts.map +0 -1
  241. package/lib/crypto/store/base.js +0 -64
  242. package/lib/crypto/store/base.js.map +0 -1
  243. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts +0 -187
  244. package/lib/crypto/store/indexeddb-crypto-store-backend.d.ts.map +0 -1
  245. package/lib/crypto/store/indexeddb-crypto-store-backend.js +0 -1145
  246. package/lib/crypto/store/indexeddb-crypto-store-backend.js.map +0 -1
  247. package/lib/crypto/store/indexeddb-crypto-store.d.ts +0 -432
  248. package/lib/crypto/store/indexeddb-crypto-store.d.ts.map +0 -1
  249. package/lib/crypto/store/indexeddb-crypto-store.js +0 -728
  250. package/lib/crypto/store/indexeddb-crypto-store.js.map +0 -1
  251. package/lib/crypto/store/localStorage-crypto-store.d.ts +0 -119
  252. package/lib/crypto/store/localStorage-crypto-store.d.ts.map +0 -1
  253. package/lib/crypto/store/localStorage-crypto-store.js +0 -531
  254. package/lib/crypto/store/localStorage-crypto-store.js.map +0 -1
  255. package/lib/crypto/store/memory-crypto-store.d.ts +0 -215
  256. package/lib/crypto/store/memory-crypto-store.d.ts.map +0 -1
  257. package/lib/crypto/store/memory-crypto-store.js +0 -622
  258. package/lib/crypto/store/memory-crypto-store.js.map +0 -1
  259. package/lib/crypto/verification/Base.d.ts +0 -105
  260. package/lib/crypto/verification/Base.d.ts.map +0 -1
  261. package/lib/crypto/verification/Base.js +0 -372
  262. package/lib/crypto/verification/Base.js.map +0 -1
  263. package/lib/crypto/verification/Error.d.ts +0 -35
  264. package/lib/crypto/verification/Error.d.ts.map +0 -1
  265. package/lib/crypto/verification/Error.js +0 -86
  266. package/lib/crypto/verification/Error.js.map +0 -1
  267. package/lib/crypto/verification/IllegalMethod.d.ts +0 -15
  268. package/lib/crypto/verification/IllegalMethod.d.ts.map +0 -1
  269. package/lib/crypto/verification/IllegalMethod.js +0 -43
  270. package/lib/crypto/verification/IllegalMethod.js.map +0 -1
  271. package/lib/crypto/verification/QRCode.d.ts +0 -51
  272. package/lib/crypto/verification/QRCode.d.ts.map +0 -1
  273. package/lib/crypto/verification/QRCode.js +0 -277
  274. package/lib/crypto/verification/QRCode.js.map +0 -1
  275. package/lib/crypto/verification/SAS.d.ts +0 -27
  276. package/lib/crypto/verification/SAS.d.ts.map +0 -1
  277. package/lib/crypto/verification/SAS.js +0 -485
  278. package/lib/crypto/verification/SAS.js.map +0 -1
  279. package/lib/crypto/verification/SASDecimal.d.ts +0 -8
  280. package/lib/crypto/verification/SASDecimal.d.ts.map +0 -1
  281. package/lib/crypto/verification/SASDecimal.js +0 -34
  282. package/lib/crypto/verification/SASDecimal.js.map +0 -1
  283. package/lib/crypto/verification/request/Channel.d.ts +0 -18
  284. package/lib/crypto/verification/request/Channel.d.ts.map +0 -1
  285. package/lib/crypto/verification/request/Channel.js +0 -1
  286. package/lib/crypto/verification/request/Channel.js.map +0 -1
  287. package/lib/crypto/verification/request/InRoomChannel.d.ts +0 -113
  288. package/lib/crypto/verification/request/InRoomChannel.d.ts.map +0 -1
  289. package/lib/crypto/verification/request/InRoomChannel.js +0 -351
  290. package/lib/crypto/verification/request/InRoomChannel.js.map +0 -1
  291. package/lib/crypto/verification/request/ToDeviceChannel.d.ts +0 -105
  292. package/lib/crypto/verification/request/ToDeviceChannel.d.ts.map +0 -1
  293. package/lib/crypto/verification/request/ToDeviceChannel.js +0 -328
  294. package/lib/crypto/verification/request/ToDeviceChannel.js.map +0 -1
  295. package/lib/crypto/verification/request/VerificationRequest.d.ts +0 -227
  296. package/lib/crypto/verification/request/VerificationRequest.d.ts.map +0 -1
  297. package/lib/crypto/verification/request/VerificationRequest.js +0 -937
  298. package/lib/crypto/verification/request/VerificationRequest.js.map +0 -1
  299. package/lib/crypto-api/CryptoEvent.d.ts +0 -69
  300. package/lib/crypto-api/CryptoEvent.d.ts.map +0 -1
  301. package/lib/crypto-api/CryptoEvent.js +0 -33
  302. package/lib/crypto-api/CryptoEvent.js.map +0 -1
  303. package/lib/crypto-api/CryptoEventHandlerMap.d.ts +0 -16
  304. package/lib/crypto-api/CryptoEventHandlerMap.d.ts.map +0 -1
  305. package/lib/crypto-api/CryptoEventHandlerMap.js +0 -22
  306. package/lib/crypto-api/CryptoEventHandlerMap.js.map +0 -1
  307. package/lib/crypto-api/index.d.ts +0 -978
  308. package/lib/crypto-api/index.d.ts.map +0 -1
  309. package/lib/crypto-api/index.js +0 -304
  310. package/lib/crypto-api/index.js.map +0 -1
  311. package/lib/crypto-api/key-passphrase.d.ts +0 -11
  312. package/lib/crypto-api/key-passphrase.d.ts.map +0 -1
  313. package/lib/crypto-api/key-passphrase.js +0 -51
  314. package/lib/crypto-api/key-passphrase.js.map +0 -1
  315. package/lib/crypto-api/keybackup.d.ts +0 -88
  316. package/lib/crypto-api/keybackup.d.ts.map +0 -1
  317. package/lib/crypto-api/keybackup.js +0 -1
  318. package/lib/crypto-api/keybackup.js.map +0 -1
  319. package/lib/crypto-api/recovery-key.d.ts +0 -11
  320. package/lib/crypto-api/recovery-key.d.ts.map +0 -1
  321. package/lib/crypto-api/recovery-key.js +0 -65
  322. package/lib/crypto-api/recovery-key.js.map +0 -1
  323. package/lib/crypto-api/verification.d.ts +0 -344
  324. package/lib/crypto-api/verification.d.ts.map +0 -1
  325. package/lib/crypto-api/verification.js +0 -91
  326. package/lib/crypto-api/verification.js.map +0 -1
  327. package/lib/matrixrtc/CallMembership.d.ts +0 -66
  328. package/lib/matrixrtc/CallMembership.d.ts.map +0 -1
  329. package/lib/matrixrtc/CallMembership.js +0 -197
  330. package/lib/matrixrtc/CallMembership.js.map +0 -1
  331. package/lib/matrixrtc/LivekitFocus.d.ts +0 -16
  332. package/lib/matrixrtc/LivekitFocus.d.ts.map +0 -1
  333. package/lib/matrixrtc/LivekitFocus.js +0 -20
  334. package/lib/matrixrtc/LivekitFocus.js.map +0 -1
  335. package/lib/matrixrtc/MatrixRTCSession.d.ts +0 -295
  336. package/lib/matrixrtc/MatrixRTCSession.d.ts.map +0 -1
  337. package/lib/matrixrtc/MatrixRTCSession.js +0 -1043
  338. package/lib/matrixrtc/MatrixRTCSession.js.map +0 -1
  339. package/lib/matrixrtc/MatrixRTCSessionManager.d.ts +0 -40
  340. package/lib/matrixrtc/MatrixRTCSessionManager.d.ts.map +0 -1
  341. package/lib/matrixrtc/MatrixRTCSessionManager.js +0 -146
  342. package/lib/matrixrtc/MatrixRTCSessionManager.js.map +0 -1
  343. package/lib/matrixrtc/focus.d.ts +0 -10
  344. package/lib/matrixrtc/focus.d.ts.map +0 -1
  345. package/lib/matrixrtc/focus.js +0 -1
  346. package/lib/matrixrtc/focus.js.map +0 -1
  347. package/lib/matrixrtc/index.d.ts +0 -7
  348. package/lib/matrixrtc/index.d.ts.map +0 -1
  349. package/lib/matrixrtc/index.js +0 -21
  350. package/lib/matrixrtc/index.js.map +0 -1
  351. package/lib/matrixrtc/types.d.ts +0 -19
  352. package/lib/matrixrtc/types.d.ts.map +0 -1
  353. package/lib/matrixrtc/types.js +0 -1
  354. package/lib/matrixrtc/types.js.map +0 -1
  355. package/lib/rendezvous/MSC4108SignInWithQR.d.ts +0 -112
  356. package/lib/rendezvous/MSC4108SignInWithQR.d.ts.map +0 -1
  357. package/lib/rendezvous/MSC4108SignInWithQR.js +0 -392
  358. package/lib/rendezvous/MSC4108SignInWithQR.js.map +0 -1
  359. package/lib/rendezvous/RendezvousChannel.d.ts +0 -27
  360. package/lib/rendezvous/RendezvousChannel.d.ts.map +0 -1
  361. package/lib/rendezvous/RendezvousChannel.js +0 -1
  362. package/lib/rendezvous/RendezvousChannel.js.map +0 -1
  363. package/lib/rendezvous/RendezvousCode.d.ts +0 -9
  364. package/lib/rendezvous/RendezvousCode.d.ts.map +0 -1
  365. package/lib/rendezvous/RendezvousCode.js +0 -1
  366. package/lib/rendezvous/RendezvousCode.js.map +0 -1
  367. package/lib/rendezvous/RendezvousError.d.ts +0 -6
  368. package/lib/rendezvous/RendezvousError.d.ts.map +0 -1
  369. package/lib/rendezvous/RendezvousError.js +0 -23
  370. package/lib/rendezvous/RendezvousError.js.map +0 -1
  371. package/lib/rendezvous/RendezvousFailureReason.d.ts +0 -31
  372. package/lib/rendezvous/RendezvousFailureReason.d.ts.map +0 -1
  373. package/lib/rendezvous/RendezvousFailureReason.js +0 -38
  374. package/lib/rendezvous/RendezvousFailureReason.js.map +0 -1
  375. package/lib/rendezvous/RendezvousIntent.d.ts +0 -5
  376. package/lib/rendezvous/RendezvousIntent.d.ts.map +0 -1
  377. package/lib/rendezvous/RendezvousIntent.js +0 -22
  378. package/lib/rendezvous/RendezvousIntent.js.map +0 -1
  379. package/lib/rendezvous/RendezvousTransport.d.ts +0 -36
  380. package/lib/rendezvous/RendezvousTransport.d.ts.map +0 -1
  381. package/lib/rendezvous/RendezvousTransport.js +0 -1
  382. package/lib/rendezvous/RendezvousTransport.js.map +0 -1
  383. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts +0 -58
  384. package/lib/rendezvous/channels/MSC4108SecureChannel.d.ts.map +0 -1
  385. package/lib/rendezvous/channels/MSC4108SecureChannel.js +0 -246
  386. package/lib/rendezvous/channels/MSC4108SecureChannel.js.map +0 -1
  387. package/lib/rendezvous/channels/index.d.ts +0 -2
  388. package/lib/rendezvous/channels/index.d.ts.map +0 -1
  389. package/lib/rendezvous/channels/index.js +0 -18
  390. package/lib/rendezvous/channels/index.js.map +0 -1
  391. package/lib/rendezvous/index.d.ts +0 -10
  392. package/lib/rendezvous/index.d.ts.map +0 -1
  393. package/lib/rendezvous/index.js +0 -23
  394. package/lib/rendezvous/index.js.map +0 -1
  395. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts +0 -61
  396. package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts.map +0 -1
  397. package/lib/rendezvous/transports/MSC4108RendezvousSession.js +0 -253
  398. package/lib/rendezvous/transports/MSC4108RendezvousSession.js.map +0 -1
  399. package/lib/rendezvous/transports/index.d.ts +0 -2
  400. package/lib/rendezvous/transports/index.d.ts.map +0 -1
  401. package/lib/rendezvous/transports/index.js +0 -18
  402. package/lib/rendezvous/transports/index.js.map +0 -1
  403. package/lib/rust-crypto/CrossSigningIdentity.d.ts +0 -33
  404. package/lib/rust-crypto/CrossSigningIdentity.d.ts.map +0 -1
  405. package/lib/rust-crypto/CrossSigningIdentity.js +0 -157
  406. package/lib/rust-crypto/CrossSigningIdentity.js.map +0 -1
  407. package/lib/rust-crypto/DehydratedDeviceManager.d.ts +0 -98
  408. package/lib/rust-crypto/DehydratedDeviceManager.d.ts.map +0 -1
  409. package/lib/rust-crypto/DehydratedDeviceManager.js +0 -285
  410. package/lib/rust-crypto/DehydratedDeviceManager.js.map +0 -1
  411. package/lib/rust-crypto/KeyClaimManager.d.ts +0 -33
  412. package/lib/rust-crypto/KeyClaimManager.d.ts.map +0 -1
  413. package/lib/rust-crypto/KeyClaimManager.js +0 -82
  414. package/lib/rust-crypto/KeyClaimManager.js.map +0 -1
  415. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts +0 -43
  416. package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +0 -1
  417. package/lib/rust-crypto/OutgoingRequestProcessor.js +0 -195
  418. package/lib/rust-crypto/OutgoingRequestProcessor.js.map +0 -1
  419. package/lib/rust-crypto/OutgoingRequestsManager.d.ts +0 -47
  420. package/lib/rust-crypto/OutgoingRequestsManager.d.ts.map +0 -1
  421. package/lib/rust-crypto/OutgoingRequestsManager.js +0 -148
  422. package/lib/rust-crypto/OutgoingRequestsManager.js.map +0 -1
  423. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts +0 -120
  424. package/lib/rust-crypto/PerSessionKeyBackupDownloader.d.ts.map +0 -1
  425. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js +0 -467
  426. package/lib/rust-crypto/PerSessionKeyBackupDownloader.js.map +0 -1
  427. package/lib/rust-crypto/RoomEncryptor.d.ts +0 -98
  428. package/lib/rust-crypto/RoomEncryptor.d.ts.map +0 -1
  429. package/lib/rust-crypto/RoomEncryptor.js +0 -299
  430. package/lib/rust-crypto/RoomEncryptor.js.map +0 -1
  431. package/lib/rust-crypto/backup.d.ts +0 -254
  432. package/lib/rust-crypto/backup.d.ts.map +0 -1
  433. package/lib/rust-crypto/backup.js +0 -837
  434. package/lib/rust-crypto/backup.js.map +0 -1
  435. package/lib/rust-crypto/constants.d.ts +0 -3
  436. package/lib/rust-crypto/constants.d.ts.map +0 -1
  437. package/lib/rust-crypto/constants.js +0 -19
  438. package/lib/rust-crypto/constants.js.map +0 -1
  439. package/lib/rust-crypto/device-converter.d.ts +0 -28
  440. package/lib/rust-crypto/device-converter.d.ts.map +0 -1
  441. package/lib/rust-crypto/device-converter.js +0 -123
  442. package/lib/rust-crypto/device-converter.js.map +0 -1
  443. package/lib/rust-crypto/index.d.ts +0 -61
  444. package/lib/rust-crypto/index.d.ts.map +0 -1
  445. package/lib/rust-crypto/index.js +0 -152
  446. package/lib/rust-crypto/index.js.map +0 -1
  447. package/lib/rust-crypto/libolm_migration.d.ts +0 -81
  448. package/lib/rust-crypto/libolm_migration.d.ts.map +0 -1
  449. package/lib/rust-crypto/libolm_migration.js +0 -459
  450. package/lib/rust-crypto/libolm_migration.js.map +0 -1
  451. package/lib/rust-crypto/rust-crypto.d.ts +0 -556
  452. package/lib/rust-crypto/rust-crypto.d.ts.map +0 -1
  453. package/lib/rust-crypto/rust-crypto.js +0 -2016
  454. package/lib/rust-crypto/rust-crypto.js.map +0 -1
  455. package/lib/rust-crypto/secret-storage.d.ts +0 -22
  456. package/lib/rust-crypto/secret-storage.d.ts.map +0 -1
  457. package/lib/rust-crypto/secret-storage.js +0 -63
  458. package/lib/rust-crypto/secret-storage.js.map +0 -1
  459. package/lib/rust-crypto/verification.d.ts +0 -319
  460. package/lib/rust-crypto/verification.d.ts.map +0 -1
  461. package/lib/rust-crypto/verification.js +0 -816
  462. package/lib/rust-crypto/verification.js.map +0 -1
  463. package/lib/secret-storage.d.ts +0 -370
  464. package/lib/secret-storage.d.ts.map +0 -1
  465. package/lib/secret-storage.js +0 -466
  466. package/lib/secret-storage.js.map +0 -1
  467. package/lib/utils/decryptAESSecretStorageItem.d.ts +0 -12
  468. package/lib/utils/decryptAESSecretStorageItem.d.ts.map +0 -1
  469. package/lib/utils/decryptAESSecretStorageItem.js +0 -50
  470. package/lib/utils/decryptAESSecretStorageItem.js.map +0 -1
  471. package/lib/utils/encryptAESSecretStorageItem.d.ts +0 -16
  472. package/lib/utils/encryptAESSecretStorageItem.d.ts.map +0 -1
  473. package/lib/utils/encryptAESSecretStorageItem.js +0 -68
  474. package/lib/utils/encryptAESSecretStorageItem.js.map +0 -1
  475. package/lib/utils/internal/deriveKeys.d.ts +0 -10
  476. package/lib/utils/internal/deriveKeys.d.ts.map +0 -1
  477. package/lib/utils/internal/deriveKeys.js +0 -60
  478. package/lib/utils/internal/deriveKeys.js.map +0 -1
  479. package/lib/webrtc/audioContext.d.ts +0 -15
  480. package/lib/webrtc/audioContext.d.ts.map +0 -1
  481. package/lib/webrtc/audioContext.js +0 -46
  482. package/lib/webrtc/audioContext.js.map +0 -1
  483. package/lib/webrtc/call.d.ts +0 -560
  484. package/lib/webrtc/call.d.ts.map +0 -1
  485. package/lib/webrtc/call.js +0 -2541
  486. package/lib/webrtc/call.js.map +0 -1
  487. package/lib/webrtc/callEventHandler.d.ts +0 -37
  488. package/lib/webrtc/callEventHandler.d.ts.map +0 -1
  489. package/lib/webrtc/callEventHandler.js +0 -344
  490. package/lib/webrtc/callEventHandler.js.map +0 -1
  491. package/lib/webrtc/callEventTypes.d.ts +0 -73
  492. package/lib/webrtc/callEventTypes.d.ts.map +0 -1
  493. package/lib/webrtc/callEventTypes.js +0 -13
  494. package/lib/webrtc/callEventTypes.js.map +0 -1
  495. package/lib/webrtc/callFeed.d.ts +0 -128
  496. package/lib/webrtc/callFeed.d.ts.map +0 -1
  497. package/lib/webrtc/callFeed.js +0 -289
  498. package/lib/webrtc/callFeed.js.map +0 -1
  499. package/lib/webrtc/groupCall.d.ts +0 -323
  500. package/lib/webrtc/groupCall.d.ts.map +0 -1
  501. package/lib/webrtc/groupCall.js +0 -1337
  502. package/lib/webrtc/groupCall.js.map +0 -1
  503. package/lib/webrtc/groupCallEventHandler.d.ts +0 -31
  504. package/lib/webrtc/groupCallEventHandler.d.ts.map +0 -1
  505. package/lib/webrtc/groupCallEventHandler.js +0 -178
  506. package/lib/webrtc/groupCallEventHandler.js.map +0 -1
  507. package/lib/webrtc/mediaHandler.d.ts +0 -89
  508. package/lib/webrtc/mediaHandler.d.ts.map +0 -1
  509. package/lib/webrtc/mediaHandler.js +0 -437
  510. package/lib/webrtc/mediaHandler.js.map +0 -1
  511. package/lib/webrtc/stats/callFeedStatsReporter.d.ts +0 -8
  512. package/lib/webrtc/stats/callFeedStatsReporter.d.ts.map +0 -1
  513. package/lib/webrtc/stats/callFeedStatsReporter.js +0 -82
  514. package/lib/webrtc/stats/callFeedStatsReporter.js.map +0 -1
  515. package/lib/webrtc/stats/callStatsReportGatherer.d.ts +0 -25
  516. package/lib/webrtc/stats/callStatsReportGatherer.d.ts.map +0 -1
  517. package/lib/webrtc/stats/callStatsReportGatherer.js +0 -199
  518. package/lib/webrtc/stats/callStatsReportGatherer.js.map +0 -1
  519. package/lib/webrtc/stats/callStatsReportSummary.d.ts +0 -17
  520. package/lib/webrtc/stats/callStatsReportSummary.d.ts.map +0 -1
  521. package/lib/webrtc/stats/callStatsReportSummary.js +0 -1
  522. package/lib/webrtc/stats/callStatsReportSummary.js.map +0 -1
  523. package/lib/webrtc/stats/connectionStats.d.ts +0 -28
  524. package/lib/webrtc/stats/connectionStats.d.ts.map +0 -1
  525. package/lib/webrtc/stats/connectionStats.js +0 -26
  526. package/lib/webrtc/stats/connectionStats.js.map +0 -1
  527. package/lib/webrtc/stats/connectionStatsBuilder.d.ts +0 -5
  528. package/lib/webrtc/stats/connectionStatsBuilder.d.ts.map +0 -1
  529. package/lib/webrtc/stats/connectionStatsBuilder.js +0 -27
  530. package/lib/webrtc/stats/connectionStatsBuilder.js.map +0 -1
  531. package/lib/webrtc/stats/connectionStatsReportBuilder.d.ts +0 -7
  532. package/lib/webrtc/stats/connectionStatsReportBuilder.d.ts.map +0 -1
  533. package/lib/webrtc/stats/connectionStatsReportBuilder.js +0 -121
  534. package/lib/webrtc/stats/connectionStatsReportBuilder.js.map +0 -1
  535. package/lib/webrtc/stats/groupCallStats.d.ts +0 -22
  536. package/lib/webrtc/stats/groupCallStats.d.ts.map +0 -1
  537. package/lib/webrtc/stats/groupCallStats.js +0 -78
  538. package/lib/webrtc/stats/groupCallStats.js.map +0 -1
  539. package/lib/webrtc/stats/media/mediaSsrcHandler.d.ts +0 -10
  540. package/lib/webrtc/stats/media/mediaSsrcHandler.d.ts.map +0 -1
  541. package/lib/webrtc/stats/media/mediaSsrcHandler.js +0 -57
  542. package/lib/webrtc/stats/media/mediaSsrcHandler.js.map +0 -1
  543. package/lib/webrtc/stats/media/mediaTrackHandler.d.ts +0 -12
  544. package/lib/webrtc/stats/media/mediaTrackHandler.d.ts.map +0 -1
  545. package/lib/webrtc/stats/media/mediaTrackHandler.js +0 -62
  546. package/lib/webrtc/stats/media/mediaTrackHandler.js.map +0 -1
  547. package/lib/webrtc/stats/media/mediaTrackStats.d.ts +0 -86
  548. package/lib/webrtc/stats/media/mediaTrackStats.d.ts.map +0 -1
  549. package/lib/webrtc/stats/media/mediaTrackStats.js +0 -142
  550. package/lib/webrtc/stats/media/mediaTrackStats.js.map +0 -1
  551. package/lib/webrtc/stats/media/mediaTrackStatsHandler.d.ts +0 -22
  552. package/lib/webrtc/stats/media/mediaTrackStatsHandler.d.ts.map +0 -1
  553. package/lib/webrtc/stats/media/mediaTrackStatsHandler.js +0 -76
  554. package/lib/webrtc/stats/media/mediaTrackStatsHandler.js.map +0 -1
  555. package/lib/webrtc/stats/statsReport.d.ts +0 -99
  556. package/lib/webrtc/stats/statsReport.d.ts.map +0 -1
  557. package/lib/webrtc/stats/statsReport.js +0 -32
  558. package/lib/webrtc/stats/statsReport.js.map +0 -1
  559. package/lib/webrtc/stats/statsReportEmitter.d.ts +0 -15
  560. package/lib/webrtc/stats/statsReportEmitter.d.ts.map +0 -1
  561. package/lib/webrtc/stats/statsReportEmitter.js +0 -33
  562. package/lib/webrtc/stats/statsReportEmitter.js.map +0 -1
  563. package/lib/webrtc/stats/summaryStatsReportGatherer.d.ts +0 -16
  564. package/lib/webrtc/stats/summaryStatsReportGatherer.d.ts.map +0 -1
  565. package/lib/webrtc/stats/summaryStatsReportGatherer.js +0 -116
  566. package/lib/webrtc/stats/summaryStatsReportGatherer.js.map +0 -1
  567. package/lib/webrtc/stats/trackStatsBuilder.d.ts +0 -19
  568. package/lib/webrtc/stats/trackStatsBuilder.d.ts.map +0 -1
  569. package/lib/webrtc/stats/trackStatsBuilder.js +0 -168
  570. package/lib/webrtc/stats/trackStatsBuilder.js.map +0 -1
  571. package/lib/webrtc/stats/transportStats.d.ts +0 -11
  572. package/lib/webrtc/stats/transportStats.d.ts.map +0 -1
  573. package/lib/webrtc/stats/transportStats.js +0 -1
  574. package/lib/webrtc/stats/transportStats.js.map +0 -1
  575. package/lib/webrtc/stats/transportStatsBuilder.d.ts +0 -5
  576. package/lib/webrtc/stats/transportStatsBuilder.d.ts.map +0 -1
  577. package/lib/webrtc/stats/transportStatsBuilder.js +0 -34
  578. package/lib/webrtc/stats/transportStatsBuilder.js.map +0 -1
  579. package/lib/webrtc/stats/valueFormatter.d.ts +0 -4
  580. package/lib/webrtc/stats/valueFormatter.d.ts.map +0 -1
  581. package/lib/webrtc/stats/valueFormatter.js +0 -25
  582. package/lib/webrtc/stats/valueFormatter.js.map +0 -1
  583. package/src/@types/AESEncryptedSecretStoragePayload.ts +0 -29
  584. package/src/@types/crypto.ts +0 -73
  585. package/src/@types/matrix-sdk-crypto-wasm.d.ts +0 -44
  586. package/src/common-crypto/CryptoBackend.ts +0 -302
  587. package/src/common-crypto/README.md +0 -4
  588. package/src/common-crypto/key-passphrase.ts +0 -43
  589. package/src/crypto/CrossSigning.ts +0 -773
  590. package/src/crypto/DeviceList.ts +0 -989
  591. package/src/crypto/EncryptionSetup.ts +0 -351
  592. package/src/crypto/OlmDevice.ts +0 -1500
  593. package/src/crypto/OutgoingRoomKeyRequestManager.ts +0 -485
  594. package/src/crypto/RoomList.ts +0 -70
  595. package/src/crypto/SecretSharing.ts +0 -240
  596. package/src/crypto/SecretStorage.ts +0 -136
  597. package/src/crypto/aes.ts +0 -23
  598. package/src/crypto/algorithms/base.ts +0 -236
  599. package/src/crypto/algorithms/index.ts +0 -20
  600. package/src/crypto/algorithms/megolm.ts +0 -2216
  601. package/src/crypto/algorithms/olm.ts +0 -381
  602. package/src/crypto/api.ts +0 -70
  603. package/src/crypto/backup.ts +0 -922
  604. package/src/crypto/crypto.ts +0 -18
  605. package/src/crypto/dehydration.ts +0 -272
  606. package/src/crypto/device-converter.ts +0 -45
  607. package/src/crypto/deviceinfo.ts +0 -158
  608. package/src/crypto/index.ts +0 -4418
  609. package/src/crypto/key_passphrase.ts +0 -42
  610. package/src/crypto/keybackup.ts +0 -47
  611. package/src/crypto/olmlib.ts +0 -539
  612. package/src/crypto/recoverykey.ts +0 -18
  613. package/src/crypto/store/base.ts +0 -348
  614. package/src/crypto/store/indexeddb-crypto-store-backend.ts +0 -1250
  615. package/src/crypto/store/indexeddb-crypto-store.ts +0 -845
  616. package/src/crypto/store/localStorage-crypto-store.ts +0 -579
  617. package/src/crypto/store/memory-crypto-store.ts +0 -680
  618. package/src/crypto/verification/Base.ts +0 -409
  619. package/src/crypto/verification/Error.ts +0 -76
  620. package/src/crypto/verification/IllegalMethod.ts +0 -50
  621. package/src/crypto/verification/QRCode.ts +0 -310
  622. package/src/crypto/verification/SAS.ts +0 -494
  623. package/src/crypto/verification/SASDecimal.ts +0 -37
  624. package/src/crypto/verification/request/Channel.ts +0 -34
  625. package/src/crypto/verification/request/InRoomChannel.ts +0 -371
  626. package/src/crypto/verification/request/ToDeviceChannel.ts +0 -354
  627. package/src/crypto/verification/request/VerificationRequest.ts +0 -976
  628. package/src/crypto-api/CryptoEvent.ts +0 -93
  629. package/src/crypto-api/CryptoEventHandlerMap.ts +0 -32
  630. package/src/crypto-api/index.ts +0 -1175
  631. package/src/crypto-api/key-passphrase.ts +0 -58
  632. package/src/crypto-api/keybackup.ts +0 -115
  633. package/src/crypto-api/recovery-key.ts +0 -69
  634. package/src/crypto-api/verification.ts +0 -408
  635. package/src/matrixrtc/CallMembership.ts +0 -247
  636. package/src/matrixrtc/LivekitFocus.ts +0 -39
  637. package/src/matrixrtc/MatrixRTCSession.ts +0 -1319
  638. package/src/matrixrtc/MatrixRTCSessionManager.ts +0 -166
  639. package/src/matrixrtc/focus.ts +0 -25
  640. package/src/matrixrtc/index.ts +0 -22
  641. package/src/matrixrtc/types.ts +0 -36
  642. package/src/rendezvous/MSC4108SignInWithQR.ts +0 -444
  643. package/src/rendezvous/RendezvousChannel.ts +0 -48
  644. package/src/rendezvous/RendezvousCode.ts +0 -25
  645. package/src/rendezvous/RendezvousError.ts +0 -26
  646. package/src/rendezvous/RendezvousFailureReason.ts +0 -49
  647. package/src/rendezvous/RendezvousIntent.ts +0 -20
  648. package/src/rendezvous/RendezvousTransport.ts +0 -58
  649. package/src/rendezvous/channels/MSC4108SecureChannel.ts +0 -270
  650. package/src/rendezvous/channels/index.ts +0 -17
  651. package/src/rendezvous/index.ts +0 -25
  652. package/src/rendezvous/transports/MSC4108RendezvousSession.ts +0 -270
  653. package/src/rendezvous/transports/index.ts +0 -17
  654. package/src/rust-crypto/CrossSigningIdentity.ts +0 -183
  655. package/src/rust-crypto/DehydratedDeviceManager.ts +0 -306
  656. package/src/rust-crypto/KeyClaimManager.ts +0 -86
  657. package/src/rust-crypto/OutgoingRequestProcessor.ts +0 -236
  658. package/src/rust-crypto/OutgoingRequestsManager.ts +0 -143
  659. package/src/rust-crypto/PerSessionKeyBackupDownloader.ts +0 -501
  660. package/src/rust-crypto/RoomEncryptor.ts +0 -352
  661. package/src/rust-crypto/backup.ts +0 -881
  662. package/src/rust-crypto/constants.ts +0 -18
  663. package/src/rust-crypto/device-converter.ts +0 -128
  664. package/src/rust-crypto/index.ts +0 -237
  665. package/src/rust-crypto/libolm_migration.ts +0 -530
  666. package/src/rust-crypto/rust-crypto.ts +0 -2205
  667. package/src/rust-crypto/secret-storage.ts +0 -60
  668. package/src/rust-crypto/verification.ts +0 -830
  669. package/src/secret-storage.ts +0 -693
  670. package/src/utils/decryptAESSecretStorageItem.ts +0 -54
  671. package/src/utils/encryptAESSecretStorageItem.ts +0 -73
  672. package/src/utils/internal/deriveKeys.ts +0 -63
  673. package/src/webrtc/audioContext.ts +0 -44
  674. package/src/webrtc/call.ts +0 -3074
  675. package/src/webrtc/callEventHandler.ts +0 -425
  676. package/src/webrtc/callEventTypes.ts +0 -93
  677. package/src/webrtc/callFeed.ts +0 -364
  678. package/src/webrtc/groupCall.ts +0 -1735
  679. package/src/webrtc/groupCallEventHandler.ts +0 -234
  680. package/src/webrtc/mediaHandler.ts +0 -484
  681. package/src/webrtc/stats/callFeedStatsReporter.ts +0 -94
  682. package/src/webrtc/stats/callStatsReportGatherer.ts +0 -219
  683. package/src/webrtc/stats/callStatsReportSummary.ts +0 -30
  684. package/src/webrtc/stats/connectionStats.ts +0 -47
  685. package/src/webrtc/stats/connectionStatsBuilder.ts +0 -28
  686. package/src/webrtc/stats/connectionStatsReportBuilder.ts +0 -140
  687. package/src/webrtc/stats/groupCallStats.ts +0 -93
  688. package/src/webrtc/stats/media/mediaSsrcHandler.ts +0 -57
  689. package/src/webrtc/stats/media/mediaTrackHandler.ts +0 -76
  690. package/src/webrtc/stats/media/mediaTrackStats.ts +0 -176
  691. package/src/webrtc/stats/media/mediaTrackStatsHandler.ts +0 -90
  692. package/src/webrtc/stats/statsReport.ts +0 -133
  693. package/src/webrtc/stats/statsReportEmitter.ts +0 -49
  694. package/src/webrtc/stats/summaryStatsReportGatherer.ts +0 -148
  695. package/src/webrtc/stats/trackStatsBuilder.ts +0 -207
  696. package/src/webrtc/stats/transportStats.ts +0 -26
  697. package/src/webrtc/stats/transportStatsBuilder.ts +0 -48
  698. package/src/webrtc/stats/valueFormatter.ts +0 -27
package/lib/testing.d.ts CHANGED
@@ -7,7 +7,6 @@
7
7
  */
8
8
  import { IContent, IUnsigned, MatrixEvent } from "./models/event.ts";
9
9
  import { EventType } from "./@types/event.ts";
10
- import { DecryptionFailureCode } from "./crypto-api/index.ts";
11
10
  /**
12
11
  * Create a {@link MatrixEvent}.
13
12
  *
@@ -31,51 +30,4 @@ export declare function mkMatrixEvent(opts: {
31
30
  /** Optional `unsigned` data for the event. */
32
31
  unsigned?: IUnsigned;
33
32
  }): MatrixEvent;
34
- /**
35
- * Create a `MatrixEvent` representing a successfully-decrypted `m.room.encrypted` event.
36
- *
37
- * @param opts - Values for the event.
38
- */
39
- export declare function mkEncryptedMatrixEvent(opts: {
40
- /** Room ID of the event. */
41
- roomId: string;
42
- /** The sender of the event. */
43
- sender: string;
44
- /** The type the event will have, once it has been decrypted. */
45
- plainType: EventType | string;
46
- /** The content the event will have, once it has been decrypted. */
47
- plainContent: IContent;
48
- /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */
49
- eventId?: string;
50
- }): Promise<MatrixEvent>;
51
- /**
52
- * Create a `MatrixEvent` representing a `m.room.encrypted` event which could not be decrypted.
53
- *
54
- * @param opts - Values for the event.
55
- */
56
- export declare function mkDecryptionFailureMatrixEvent(opts: {
57
- /** Room ID of the event. */
58
- roomId: string;
59
- /** The sender of the event. */
60
- sender: string;
61
- /** The reason code for the failure */
62
- code: DecryptionFailureCode;
63
- /** A textual reason for the failure */
64
- msg: string;
65
- /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */
66
- eventId?: string;
67
- }): Promise<MatrixEvent>;
68
- /**
69
- * Given an event previously returned by {@link mkDecryptionFailureMatrixEvent}, simulate a successful re-decryption
70
- * attempt.
71
- *
72
- * @param mxEvent - The event that will be decrypted.
73
- * @param opts - New data for the successful decryption.
74
- */
75
- export declare function decryptExistingEvent(mxEvent: MatrixEvent, opts: {
76
- /** The type the event will have, once it has been decrypted. */
77
- plainType: EventType | string;
78
- /** The content the event will have, once it has been decrypted. */
79
- plainContent: IContent;
80
- }): Promise<void>;
81
33
  //# sourceMappingURL=testing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAgBA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE7E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAG9D;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAChC,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC;IAEf,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IAEf,6BAA6B;IAC7B,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAEzB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,iGAAiG;IACjG,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wGAAwG;IACxG,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4BAA4B;IAC5B,OAAO,EAAE,QAAQ,CAAC;IAElB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB,GAAG,WAAW,CAyBd;AAED;;;;GAIG;AACH,wBAAsB,sBAAsB,CAAC,IAAI,EAAE;IAC/C,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC;IAEf,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IAEf,gEAAgE;IAChE,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC;IAE9B,mEAAmE;IACnE,YAAY,EAAE,QAAQ,CAAC;IAEvB,wGAAwG;IACxG,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,WAAW,CAAC,CAWvB;AAED;;;;GAIG;AACH,wBAAsB,8BAA8B,CAAC,IAAI,EAAE;IACvD,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC;IAEf,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IAEf,sCAAsC;IACtC,IAAI,EAAE,qBAAqB,CAAC;IAE5B,uCAAuC;IACvC,GAAG,EAAE,MAAM,CAAC;IAEZ,wGAAwG;IACxG,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,OAAO,CAAC,WAAW,CAAC,CAgBvB;AAED;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACtC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE;IACF,gEAAgE;IAChE,SAAS,EAAE,SAAS,GAAG,MAAM,CAAC;IAE9B,mEAAmE;IACnE,YAAY,EAAE,QAAQ,CAAC;CAC1B,GACF,OAAO,CAAC,IAAI,CAAC,CAgBf"}
1
+ {"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../src/testing.ts"],"names":[],"mappings":"AAgBA;;;;;;GAMG;AAEH,OAAO,EAAE,QAAQ,EAAU,SAAS,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE7E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAChC,4BAA4B;IAC5B,MAAM,EAAE,MAAM,CAAC;IAEf,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IAEf,6BAA6B;IAC7B,IAAI,EAAE,SAAS,GAAG,MAAM,CAAC;IAEzB,wFAAwF;IACxF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB,iGAAiG;IACjG,EAAE,CAAC,EAAE,MAAM,CAAC;IAEZ,wGAAwG;IACxG,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,4BAA4B;IAC5B,OAAO,EAAE,QAAQ,CAAC;IAElB,8CAA8C;IAC9C,QAAQ,CAAC,EAAE,SAAS,CAAC;CACxB,GAAG,WAAW,CAyBd"}
package/lib/testing.js CHANGED
@@ -1,4 +1,3 @@
1
- import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
2
1
  /*
3
2
  Copyright 2024 The Matrix.org Foundation C.I.C.
4
3
 
@@ -24,8 +23,6 @@ limitations under the License.
24
23
  */
25
24
 
26
25
  import { MatrixEvent } from "./models/event.js";
27
- import { EventType } from "./@types/event.js";
28
- import { DecryptionError } from "./crypto/algorithms/index.js";
29
26
  /**
30
27
  * Create a {@link MatrixEvent}.
31
28
  *
@@ -57,106 +54,4 @@ export function mkMatrixEvent(opts) {
57
54
  };
58
55
  return mxEvent;
59
56
  }
60
-
61
- /**
62
- * Create a `MatrixEvent` representing a successfully-decrypted `m.room.encrypted` event.
63
- *
64
- * @param opts - Values for the event.
65
- */
66
- export function mkEncryptedMatrixEvent(_x) {
67
- return _mkEncryptedMatrixEvent.apply(this, arguments);
68
- }
69
-
70
- /**
71
- * Create a `MatrixEvent` representing a `m.room.encrypted` event which could not be decrypted.
72
- *
73
- * @param opts - Values for the event.
74
- */
75
- function _mkEncryptedMatrixEvent() {
76
- _mkEncryptedMatrixEvent = _asyncToGenerator(function* (opts) {
77
- var mxEvent = mkMatrixEvent({
78
- type: EventType.RoomMessageEncrypted,
79
- roomId: opts.roomId,
80
- sender: opts.sender,
81
- content: {
82
- algorithm: "m.megolm.v1.aes-sha2"
83
- },
84
- eventId: opts.eventId
85
- });
86
- yield decryptExistingEvent(mxEvent, {
87
- plainType: opts.plainType,
88
- plainContent: opts.plainContent
89
- });
90
- return mxEvent;
91
- });
92
- return _mkEncryptedMatrixEvent.apply(this, arguments);
93
- }
94
- export function mkDecryptionFailureMatrixEvent(_x2) {
95
- return _mkDecryptionFailureMatrixEvent.apply(this, arguments);
96
- }
97
-
98
- /**
99
- * Given an event previously returned by {@link mkDecryptionFailureMatrixEvent}, simulate a successful re-decryption
100
- * attempt.
101
- *
102
- * @param mxEvent - The event that will be decrypted.
103
- * @param opts - New data for the successful decryption.
104
- */
105
- function _mkDecryptionFailureMatrixEvent() {
106
- _mkDecryptionFailureMatrixEvent = _asyncToGenerator(function* (opts) {
107
- var mxEvent = mkMatrixEvent({
108
- type: EventType.RoomMessageEncrypted,
109
- roomId: opts.roomId,
110
- sender: opts.sender,
111
- content: {
112
- algorithm: "m.megolm.v1.aes-sha2"
113
- },
114
- eventId: opts.eventId
115
- });
116
- var mockCrypto = {
117
- decryptEvent: function () {
118
- var _decryptEvent = _asyncToGenerator(function* (_ev) {
119
- throw new DecryptionError(opts.code, opts.msg);
120
- });
121
- function decryptEvent(_x5) {
122
- return _decryptEvent.apply(this, arguments);
123
- }
124
- return decryptEvent;
125
- }()
126
- };
127
- yield mxEvent.attemptDecryption(mockCrypto);
128
- return mxEvent;
129
- });
130
- return _mkDecryptionFailureMatrixEvent.apply(this, arguments);
131
- }
132
- export function decryptExistingEvent(_x3, _x4) {
133
- return _decryptExistingEvent.apply(this, arguments);
134
- }
135
- function _decryptExistingEvent() {
136
- _decryptExistingEvent = _asyncToGenerator(function* (mxEvent, opts) {
137
- var decryptionResult = {
138
- claimedEd25519Key: "",
139
- clearEvent: {
140
- type: opts.plainType,
141
- content: opts.plainContent
142
- },
143
- forwardingCurve25519KeyChain: [],
144
- senderCurve25519Key: "",
145
- untrusted: false
146
- };
147
- var mockCrypto = {
148
- decryptEvent: function () {
149
- var _decryptEvent2 = _asyncToGenerator(function* (_ev) {
150
- return decryptionResult;
151
- });
152
- function decryptEvent(_x6) {
153
- return _decryptEvent2.apply(this, arguments);
154
- }
155
- return decryptEvent;
156
- }()
157
- };
158
- yield mxEvent.attemptDecryption(mockCrypto);
159
- });
160
- return _decryptExistingEvent.apply(this, arguments);
161
- }
162
57
  //# sourceMappingURL=testing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"testing.js","names":["MatrixEvent","EventType","DecryptionError","mkMatrixEvent","opts","_opts$eventId","_opts$ts","event","type","room_id","roomId","sender","content","event_id","eventId","Math","random","origin_server_ts","ts","unsigned","stateKey","undefined","state_key","mxEvent","userId","membership","name","rawDisplayName","getAvatarUrl","getMxcAvatarUrl","mkEncryptedMatrixEvent","_x","_mkEncryptedMatrixEvent","apply","arguments","_asyncToGenerator","RoomMessageEncrypted","algorithm","decryptExistingEvent","plainType","plainContent","mkDecryptionFailureMatrixEvent","_x2","_mkDecryptionFailureMatrixEvent","mockCrypto","decryptEvent","_decryptEvent","_ev","code","msg","_x5","attemptDecryption","_x3","_x4","_decryptExistingEvent","decryptionResult","claimedEd25519Key","clearEvent","forwardingCurve25519KeyChain","senderCurve25519Key","untrusted","_decryptEvent2","_x6"],"sources":["../src/testing.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\n/**\n * This file is a secondary entrypoint for the js-sdk library, exposing utilities which might be useful for writing tests.\n *\n * In general, it should not be included in runtime applications.\n *\n * @packageDocumentation\n */\n\nimport { IContent, IEvent, IUnsigned, MatrixEvent } from \"./models/event.ts\";\nimport { RoomMember } from \"./models/room-member.ts\";\nimport { EventType } from \"./@types/event.ts\";\nimport { DecryptionError } from \"./crypto/algorithms/index.ts\";\nimport { DecryptionFailureCode } from \"./crypto-api/index.ts\";\nimport { EventDecryptionResult } from \"./common-crypto/CryptoBackend.ts\";\n\n/**\n * Create a {@link MatrixEvent}.\n *\n * @param opts - Values for the event.\n */\nexport function mkMatrixEvent(opts: {\n /** Room ID of the event. */\n roomId: string;\n\n /** The sender of the event. */\n sender: string;\n\n /** The type of the event. */\n type: EventType | string;\n\n /** Optional `state_key` for the event. If unspecified, a non-state event is created. */\n stateKey?: string;\n\n /** Optional `origin_server_ts` for the event. If unspecified, the timestamp will be set to 0. */\n ts?: number;\n\n /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */\n eventId?: string;\n\n /** Content of the event. */\n content: IContent;\n\n /** Optional `unsigned` data for the event. */\n unsigned?: IUnsigned;\n}): MatrixEvent {\n const event: Partial<IEvent> = {\n type: opts.type,\n room_id: opts.roomId,\n sender: opts.sender,\n content: opts.content,\n event_id: opts.eventId ?? \"$\" + Math.random() + \"-\" + Math.random(),\n origin_server_ts: opts.ts ?? 0,\n unsigned: opts.unsigned,\n };\n if (opts.stateKey !== undefined) {\n event.state_key = opts.stateKey;\n }\n\n const mxEvent = new MatrixEvent(event);\n mxEvent.sender = {\n userId: opts.sender,\n membership: \"join\",\n name: opts.sender,\n rawDisplayName: opts.sender,\n roomId: opts.sender,\n getAvatarUrl: () => {},\n getMxcAvatarUrl: () => {},\n } as unknown as RoomMember;\n return mxEvent;\n}\n\n/**\n * Create a `MatrixEvent` representing a successfully-decrypted `m.room.encrypted` event.\n *\n * @param opts - Values for the event.\n */\nexport async function mkEncryptedMatrixEvent(opts: {\n /** Room ID of the event. */\n roomId: string;\n\n /** The sender of the event. */\n sender: string;\n\n /** The type the event will have, once it has been decrypted. */\n plainType: EventType | string;\n\n /** The content the event will have, once it has been decrypted. */\n plainContent: IContent;\n\n /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */\n eventId?: string;\n}): Promise<MatrixEvent> {\n const mxEvent = mkMatrixEvent({\n type: EventType.RoomMessageEncrypted,\n roomId: opts.roomId,\n sender: opts.sender,\n content: { algorithm: \"m.megolm.v1.aes-sha2\" },\n eventId: opts.eventId,\n });\n\n await decryptExistingEvent(mxEvent, { plainType: opts.plainType, plainContent: opts.plainContent });\n return mxEvent;\n}\n\n/**\n * Create a `MatrixEvent` representing a `m.room.encrypted` event which could not be decrypted.\n *\n * @param opts - Values for the event.\n */\nexport async function mkDecryptionFailureMatrixEvent(opts: {\n /** Room ID of the event. */\n roomId: string;\n\n /** The sender of the event. */\n sender: string;\n\n /** The reason code for the failure */\n code: DecryptionFailureCode;\n\n /** A textual reason for the failure */\n msg: string;\n\n /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */\n eventId?: string;\n}): Promise<MatrixEvent> {\n const mxEvent = mkMatrixEvent({\n type: EventType.RoomMessageEncrypted,\n roomId: opts.roomId,\n sender: opts.sender,\n content: { algorithm: \"m.megolm.v1.aes-sha2\" },\n eventId: opts.eventId,\n });\n\n const mockCrypto = {\n decryptEvent: async (_ev): Promise<EventDecryptionResult> => {\n throw new DecryptionError(opts.code, opts.msg);\n },\n } as Parameters<MatrixEvent[\"attemptDecryption\"]>[0];\n await mxEvent.attemptDecryption(mockCrypto);\n return mxEvent;\n}\n\n/**\n * Given an event previously returned by {@link mkDecryptionFailureMatrixEvent}, simulate a successful re-decryption\n * attempt.\n *\n * @param mxEvent - The event that will be decrypted.\n * @param opts - New data for the successful decryption.\n */\nexport async function decryptExistingEvent(\n mxEvent: MatrixEvent,\n opts: {\n /** The type the event will have, once it has been decrypted. */\n plainType: EventType | string;\n\n /** The content the event will have, once it has been decrypted. */\n plainContent: IContent;\n },\n): Promise<void> {\n const decryptionResult: EventDecryptionResult = {\n claimedEd25519Key: \"\",\n clearEvent: {\n type: opts.plainType,\n content: opts.plainContent,\n },\n forwardingCurve25519KeyChain: [],\n senderCurve25519Key: \"\",\n untrusted: false,\n };\n\n const mockCrypto = {\n decryptEvent: async (_ev): Promise<EventDecryptionResult> => decryptionResult,\n } as Parameters<MatrixEvent[\"attemptDecryption\"]>[0];\n await mxEvent.attemptDecryption(mockCrypto);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"testing.js","names":["MatrixEvent","mkMatrixEvent","opts","_opts$eventId","_opts$ts","event","type","room_id","roomId","sender","content","event_id","eventId","Math","random","origin_server_ts","ts","unsigned","stateKey","undefined","state_key","mxEvent","userId","membership","name","rawDisplayName","getAvatarUrl","getMxcAvatarUrl"],"sources":["../src/testing.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\n/**\n * This file is a secondary entrypoint for the js-sdk library, exposing utilities which might be useful for writing tests.\n *\n * In general, it should not be included in runtime applications.\n *\n * @packageDocumentation\n */\n\nimport { IContent, IEvent, IUnsigned, MatrixEvent } from \"./models/event.ts\";\nimport { RoomMember } from \"./models/room-member.ts\";\nimport { EventType } from \"./@types/event.ts\";\n\n/**\n * Create a {@link MatrixEvent}.\n *\n * @param opts - Values for the event.\n */\nexport function mkMatrixEvent(opts: {\n /** Room ID of the event. */\n roomId: string;\n\n /** The sender of the event. */\n sender: string;\n\n /** The type of the event. */\n type: EventType | string;\n\n /** Optional `state_key` for the event. If unspecified, a non-state event is created. */\n stateKey?: string;\n\n /** Optional `origin_server_ts` for the event. If unspecified, the timestamp will be set to 0. */\n ts?: number;\n\n /** Optional `event_id` for the event. If provided will be used as event ID; else an ID is generated. */\n eventId?: string;\n\n /** Content of the event. */\n content: IContent;\n\n /** Optional `unsigned` data for the event. */\n unsigned?: IUnsigned;\n}): MatrixEvent {\n const event: Partial<IEvent> = {\n type: opts.type,\n room_id: opts.roomId,\n sender: opts.sender,\n content: opts.content,\n event_id: opts.eventId ?? \"$\" + Math.random() + \"-\" + Math.random(),\n origin_server_ts: opts.ts ?? 0,\n unsigned: opts.unsigned,\n };\n if (opts.stateKey !== undefined) {\n event.state_key = opts.stateKey;\n }\n\n const mxEvent = new MatrixEvent(event);\n mxEvent.sender = {\n userId: opts.sender,\n membership: \"join\",\n name: opts.sender,\n rawDisplayName: opts.sender,\n roomId: opts.sender,\n getAvatarUrl: () => {},\n getMxcAvatarUrl: () => {},\n } as unknown as RoomMember;\n return mxEvent;\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAAsCA,WAAW,QAAQ,mBAAmB;AAI5E;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,aAAaA,CAACC,IAwB7B,EAAe;EAAA,IAAAC,aAAA,EAAAC,QAAA;EACZ,IAAMC,KAAsB,GAAG;IAC3BC,IAAI,EAAEJ,IAAI,CAACI,IAAI;IACfC,OAAO,EAAEL,IAAI,CAACM,MAAM;IACpBC,MAAM,EAAEP,IAAI,CAACO,MAAM;IACnBC,OAAO,EAAER,IAAI,CAACQ,OAAO;IACrBC,QAAQ,GAAAR,aAAA,GAAED,IAAI,CAACU,OAAO,cAAAT,aAAA,cAAAA,aAAA,GAAI,GAAG,GAAGU,IAAI,CAACC,MAAM,CAAC,CAAC,GAAG,GAAG,GAAGD,IAAI,CAACC,MAAM,CAAC,CAAC;IACnEC,gBAAgB,GAAAX,QAAA,GAAEF,IAAI,CAACc,EAAE,cAAAZ,QAAA,cAAAA,QAAA,GAAI,CAAC;IAC9Ba,QAAQ,EAAEf,IAAI,CAACe;EACnB,CAAC;EACD,IAAIf,IAAI,CAACgB,QAAQ,KAAKC,SAAS,EAAE;IAC7Bd,KAAK,CAACe,SAAS,GAAGlB,IAAI,CAACgB,QAAQ;EACnC;EAEA,IAAMG,OAAO,GAAG,IAAIrB,WAAW,CAACK,KAAK,CAAC;EACtCgB,OAAO,CAACZ,MAAM,GAAG;IACba,MAAM,EAAEpB,IAAI,CAACO,MAAM;IACnBc,UAAU,EAAE,MAAM;IAClBC,IAAI,EAAEtB,IAAI,CAACO,MAAM;IACjBgB,cAAc,EAAEvB,IAAI,CAACO,MAAM;IAC3BD,MAAM,EAAEN,IAAI,CAACO,MAAM;IACnBiB,YAAY,EAAEA,CAAA,KAAM,CAAC,CAAC;IACtBC,eAAe,EAAEA,CAAA,KAAM,CAAC;EAC5B,CAA0B;EAC1B,OAAON,OAAO;AAClB","ignoreList":[]}
package/lib/types.d.ts CHANGED
@@ -3,7 +3,6 @@ export * from "./@types/membership.ts";
3
3
  export type * from "./@types/event.ts";
4
4
  export type * from "./@types/events.ts";
5
5
  export type * from "./@types/state_events.ts";
6
- export type * from "./@types/AESEncryptedSecretStoragePayload.ts";
7
6
  /** The different methods for device and user verification */
8
7
  export declare enum VerificationMethod {
9
8
  /** Short authentication string (emoji or decimals).
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAuBA,mBAAmB,mBAAmB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,8CAA8C,CAAC;AAElE,6DAA6D;AAC7D,oBAAY,kBAAkB;IAC1B;;;OAGG;IACH,GAAG,aAAa;IAEhB;;;;OAIG;IACH,UAAU,sBAAsB;IAEhC;;;;OAIG;IACH,UAAU,sBAAsB;IAEhC;;;;OAIG;IACH,WAAW,qBAAqB;CACnC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAuBA,mBAAmB,mBAAmB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,0BAA0B,CAAC;AAE9C,6DAA6D;AAC7D,oBAAY,kBAAkB;IAC1B;;;OAGG;IACH,GAAG,aAAa;IAEhB;;;;OAIG;IACH,UAAU,sBAAsB;IAEhC;;;;OAIG;IACH,UAAU,sBAAsB;IAEhC;;;;OAIG;IACH,WAAW,qBAAqB;CACnC"}
package/lib/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","names":["VerificationMethod"],"sources":["../src/types.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\n/*\n * This file is a secondary entrypoint for the js-sdk library, for use by Typescript projects.\n * It exposes low-level types and interfaces reflecting structures defined in the Matrix specification.\n *\n * Remember to only export *public* types from this file.\n */\n\nexport type * from \"./@types/media.ts\";\nexport * from \"./@types/membership.ts\";\nexport type * from \"./@types/event.ts\";\nexport type * from \"./@types/events.ts\";\nexport type * from \"./@types/state_events.ts\";\nexport type * from \"./@types/AESEncryptedSecretStoragePayload.ts\";\n\n/** The different methods for device and user verification */\nexport enum VerificationMethod {\n /** Short authentication string (emoji or decimals).\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#short-authentication-string-sas-verification\n */\n Sas = \"m.sas.v1\",\n\n /**\n * Verification by showing a QR code which is scanned by the other device.\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes\n */\n ShowQrCode = \"m.qr_code.show.v1\",\n\n /**\n * Verification by scanning a QR code that is shown by the other device.\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes\n */\n ScanQrCode = \"m.qr_code.scan.v1\",\n\n /**\n * Verification by confirming that we have scanned a QR code.\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes\n */\n Reciprocate = \"m.reciprocate.v1\",\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAGA,cAAc,wBAAwB;AAMtC;AACA,WAAYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA","ignoreList":[]}
1
+ {"version":3,"file":"types.js","names":["VerificationMethod"],"sources":["../src/types.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\n/*\n * This file is a secondary entrypoint for the js-sdk library, for use by Typescript projects.\n * It exposes low-level types and interfaces reflecting structures defined in the Matrix specification.\n *\n * Remember to only export *public* types from this file.\n */\n\nexport type * from \"./@types/media.ts\";\nexport * from \"./@types/membership.ts\";\nexport type * from \"./@types/event.ts\";\nexport type * from \"./@types/events.ts\";\nexport type * from \"./@types/state_events.ts\";\n\n/** The different methods for device and user verification */\nexport enum VerificationMethod {\n /** Short authentication string (emoji or decimals).\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#short-authentication-string-sas-verification\n */\n Sas = \"m.sas.v1\",\n\n /**\n * Verification by showing a QR code which is scanned by the other device.\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes\n */\n ShowQrCode = \"m.qr_code.show.v1\",\n\n /**\n * Verification by scanning a QR code that is shown by the other device.\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes\n */\n ScanQrCode = \"m.qr_code.scan.v1\",\n\n /**\n * Verification by confirming that we have scanned a QR code.\n *\n * @see https://spec.matrix.org/v1.9/client-server-api/#qr-codes\n */\n Reciprocate = \"m.reciprocate.v1\",\n}\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAGA,cAAc,wBAAwB;AAKtC;AACA,WAAYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unwanted/matrix-sdk-mini",
3
- "version": "34.12.0",
3
+ "version": "34.13.0",
4
4
  "description": "Matrix Client-Server mini SDK for Javascript",
5
5
  "engines": {
6
6
  "node": ">=20.0.0"
@@ -50,8 +50,6 @@
50
50
  ],
51
51
  "dependencies": {
52
52
  "@babel/runtime": "^7.12.5",
53
- "@matrix-org/matrix-sdk-crypto-wasm": "^9.0.0",
54
- "@matrix-org/olm": "3.2.15",
55
53
  "another-json": "^0.2.0",
56
54
  "bs58": "^6.0.0",
57
55
  "content-type": "^1.0.4",
@@ -61,7 +59,7 @@
61
59
  "matrix-widget-api": "^1.10.0",
62
60
  "oidc-client-ts": "^3.0.1",
63
61
  "p-retry": "4",
64
- "sdp-transform": "^2.14.1",
62
+ "sdp-transform": "^2.15.0",
65
63
  "unhomoglyph": "^1.0.6",
66
64
  "uuid": "11"
67
65
  },
@@ -100,7 +98,7 @@
100
98
  "eslint-import-resolver-typescript": "^3.5.1",
101
99
  "eslint-plugin-import": "^2.26.0",
102
100
  "eslint-plugin-jest": "^28.0.0",
103
- "eslint-plugin-jsdoc": "^50.0.0",
101
+ "eslint-plugin-jsdoc": "^50.6.0",
104
102
  "eslint-plugin-matrix-org": "^2.0.1",
105
103
  "eslint-plugin-n": "^14.0.0",
106
104
  "eslint-plugin-tsdoc": "^0.3.0",
@@ -113,15 +111,15 @@
113
111
  "jest-environment-jsdom": "^29.0.0",
114
112
  "jest-localstorage-mock": "^2.4.6",
115
113
  "jest-mock": "^29.0.0",
116
- "knip": "^5.0.0",
114
+ "knip": "^5.38.1",
117
115
  "lint-staged": "^15.0.2",
118
116
  "matrix-mock-request": "^2.5.0",
119
117
  "node-fetch": "^2.7.0",
120
- "prettier": "3.3.3",
118
+ "prettier": "3.4.1",
121
119
  "rimraf": "^6.0.0",
122
120
  "ts-node": "^10.9.2",
123
- "typedoc": "^0.26.0",
124
- "typedoc-plugin-coverage": "^3.0.0",
121
+ "typedoc": "^0.27.0",
122
+ "typedoc-plugin-coverage": "^3.4.0",
125
123
  "typedoc-plugin-mdn-links": "^3.0.3",
126
124
  "typedoc-plugin-missing-exports": "^3.0.0",
127
125
  "typescript": "^5.4.2"
@@ -130,5 +128,6 @@
130
128
  "outputDirectory": "coverage",
131
129
  "outputName": "jest-sonar-report.xml",
132
130
  "relativePaths": true
133
- }
134
- }
131
+ },
132
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
133
+ }
@@ -35,29 +35,13 @@ import {
35
35
  SpaceChildEventContent,
36
36
  SpaceParentEventContent,
37
37
  } from "./state_events.ts";
38
- import {
39
- ExperimentalGroupCallRoomMemberState,
40
- IGroupCallRoomMemberState,
41
- IGroupCallRoomState,
42
- } from "../webrtc/groupCall.ts";
38
+
43
39
  import { MSC3089EventContent } from "../models/MSC3089Branch.ts";
44
40
  import { M_BEACON, M_BEACON_INFO, MBeaconEventContent, MBeaconInfoEventContent } from "./beacon.ts";
45
41
  import { XOR } from "./common.ts";
46
42
  import { ReactionEventContent, RoomMessageEventContent, StickerEventContent } from "./events.ts";
47
- import {
48
- MCallAnswer,
49
- MCallBase,
50
- MCallCandidates,
51
- MCallHangupReject,
52
- MCallInviteNegotiate,
53
- MCallReplacesEvent,
54
- MCallSelectAnswer,
55
- SDPStreamMetadata,
56
- SDPStreamMetadataKey,
57
- } from "../webrtc/callEventTypes.ts";
58
- import { EncryptionKeysEventContent, ICallNotifyContent } from "../matrixrtc/types.ts";
43
+
59
44
  import { M_POLL_END, M_POLL_START, PollEndEventContent, PollStartEventContent } from "./polls.ts";
60
- import { SessionMembershipData } from "../matrixrtc/CallMembership.ts";
61
45
 
62
46
  export enum EventType {
63
47
  // Room state events
@@ -312,17 +296,6 @@ export interface TimelineEvents {
312
296
  [EventType.RoomMessage]: RoomMessageEventContent;
313
297
  [EventType.Sticker]: StickerEventContent;
314
298
  [EventType.Reaction]: ReactionEventContent;
315
- [EventType.CallReplaces]: MCallReplacesEvent;
316
- [EventType.CallAnswer]: MCallAnswer;
317
- [EventType.CallSelectAnswer]: MCallSelectAnswer;
318
- [EventType.CallNegotiate]: Omit<MCallInviteNegotiate, "offer">;
319
- [EventType.CallInvite]: MCallInviteNegotiate;
320
- [EventType.CallCandidates]: MCallCandidates;
321
- [EventType.CallHangup]: MCallHangupReject;
322
- [EventType.CallReject]: MCallHangupReject;
323
- [EventType.CallSDPStreamMetadataChangedPrefix]: MCallBase & { [SDPStreamMetadataKey]: SDPStreamMetadata };
324
- [EventType.CallEncryptionKeysPrefix]: EncryptionKeysEventContent;
325
- [EventType.CallNotify]: ICallNotifyContent;
326
299
  [M_BEACON.name]: MBeaconEventContent;
327
300
  [M_POLL_START.name]: PollStartEventContent;
328
301
  [M_POLL_END.name]: PollEndEventContent;
@@ -355,13 +328,6 @@ export interface StateEvents {
355
328
  [EventType.PolicyRuleRoom]: XOR<PolicyRuleEventContent, {}>;
356
329
  [EventType.PolicyRuleServer]: XOR<PolicyRuleEventContent, {}>;
357
330
 
358
- // MSC3401
359
- [EventType.GroupCallPrefix]: IGroupCallRoomState;
360
- [EventType.GroupCallMemberPrefix]: XOR<
361
- XOR<IGroupCallRoomMemberState, ExperimentalGroupCallRoomMemberState>,
362
- XOR<SessionMembershipData, {}>
363
- >;
364
-
365
331
  // MSC3089
366
332
  [UNSTABLE_MSC3089_BRANCH.name]: MSC3089EventContent;
367
333
 
@@ -14,9 +14,6 @@ See the License for the specific language governing permissions and
14
14
  limitations under the License.
15
15
  */
16
16
 
17
- // this is needed to tell TS about globalThis.Olm
18
- import "@matrix-org/olm";
19
-
20
17
  export {};
21
18
 
22
19
  declare global {
@@ -65,6 +62,26 @@ declare global {
65
62
  interface Navigator {
66
63
  // We check for the webkit-prefixed getUserMedia to detect if we're
67
64
  // on webkit: we should check if we still need to do this
68
- webkitGetUserMedia: DummyInterfaceWeShouldntBeUsingThis;
65
+ webkitGetUserMedia?: DummyInterfaceWeShouldntBeUsingThis;
66
+ }
67
+
68
+ export interface Uint8ArrayToBase64Options {
69
+ alphabet?: "base64" | "base64url";
70
+ omitPadding?: boolean;
71
+ }
72
+
73
+ interface Uint8Array {
74
+ // https://tc39.es/proposal-arraybuffer-base64/spec/#sec-uint8array.prototype.tobase64
75
+ toBase64?(options?: Uint8ArrayToBase64Options): string;
76
+ }
77
+
78
+ export interface Uint8ArrayFromBase64Options {
79
+ alphabet?: "base64"; // Our fallback code only handles base64.
80
+ lastChunkHandling?: "loose"; // Our fallback code doesn't support other handling at this time.
81
+ }
82
+
83
+ interface Uint8ArrayConstructor {
84
+ // https://tc39.es/proposal-arraybuffer-base64/spec/#sec-uint8array.frombase64
85
+ fromBase64?(base64: string, options?: Uint8ArrayFromBase64Options): Uint8Array;
69
86
  }
70
87
  }
@@ -130,7 +130,7 @@ export class AutoDiscovery {
130
130
  * configuration, which may include error states. Rejects on unexpected
131
131
  * failure, not when verification fails.
132
132
  */
133
- public static async fromDiscoveryConfig(wellknown: IClientWellKnown): Promise<ClientConfig> {
133
+ public static async fromDiscoveryConfig(wellknown?: IClientWellKnown): Promise<ClientConfig> {
134
134
  // Step 1 is to get the config, which is provided to us here.
135
135
 
136
136
  // We default to an error state to make the first few checks easier to
package/src/base64.ts CHANGED
@@ -18,30 +18,32 @@ limitations under the License.
18
18
  * Base64 encoding and decoding utilities
19
19
  */
20
20
 
21
+ function toBase64(uint8Array: Uint8Array, options: Uint8ArrayToBase64Options): string {
22
+ if (typeof uint8Array.toBase64 === "function") {
23
+ // Currently this is only supported in Firefox,
24
+ // but we match the options in the hope in the future we can rely on it for all environments.
25
+ // https://tc39.es/proposal-arraybuffer-base64/spec/#sec-uint8array.prototype.tobase64
26
+ return uint8Array.toBase64(options);
27
+ }
28
+
29
+ let base64 = btoa(uint8Array.reduce((acc, current) => acc + String.fromCharCode(current), ""));
30
+ if (options.omitPadding) {
31
+ base64 = base64.replace(/={1,2}$/, "");
32
+ }
33
+ if (options.alphabet === "base64url") {
34
+ base64 = base64.replace(/\+/g, "-").replace(/\//g, "_");
35
+ }
36
+
37
+ return base64;
38
+ }
39
+
21
40
  /**
22
41
  * Encode a typed array of uint8 as base64.
23
42
  * @param uint8Array - The data to encode.
24
43
  * @returns The base64.
25
44
  */
26
- export function encodeBase64(uint8Array: ArrayBuffer | Uint8Array): string {
27
- // A brief note on the state of base64 encoding in Javascript.
28
- // As of 2023, there is still no common native impl between both browsers and
29
- // node. Older Webpack provides an impl for Buffer and there is a polyfill class
30
- // for it. There are also plenty of pure js impls, eg. base64-js which has 2336
31
- // dependents at current count. Using this would probably be fine although it's
32
- // a little under-docced and run by an individual. The node impl works fine,
33
- // the browser impl works but predates Uint8Array and so only uses strings.
34
- // Right now, switching between native (or polyfilled) impls like this feels
35
- // like the least bad option, but... *shrugs*.
36
- if (typeof Buffer === "function") {
37
- return Buffer.from(uint8Array).toString("base64");
38
- } else if (typeof btoa === "function" && uint8Array instanceof Uint8Array) {
39
- // ArrayBuffer is a node concept so the param should always be a Uint8Array on
40
- // the browser. We need to check because ArrayBuffers don't have reduce.
41
- return btoa(uint8Array.reduce((acc, current) => acc + String.fromCharCode(current), ""));
42
- } else {
43
- throw new Error("No base64 impl found!");
44
- }
45
+ export function encodeBase64(uint8Array: Uint8Array): string {
46
+ return toBase64(uint8Array, { alphabet: "base64", omitPadding: false });
45
47
  }
46
48
 
47
49
  /**
@@ -49,8 +51,8 @@ export function encodeBase64(uint8Array: ArrayBuffer | Uint8Array): string {
49
51
  * @param uint8Array - The data to encode.
50
52
  * @returns The unpadded base64.
51
53
  */
52
- export function encodeUnpaddedBase64(uint8Array: ArrayBuffer | Uint8Array): string {
53
- return encodeBase64(uint8Array).replace(/={1,2}$/, "");
54
+ export function encodeUnpaddedBase64(uint8Array: Uint8Array): string {
55
+ return toBase64(uint8Array, { alphabet: "base64", omitPadding: true });
54
56
  }
55
57
 
56
58
  /**
@@ -58,8 +60,19 @@ export function encodeUnpaddedBase64(uint8Array: ArrayBuffer | Uint8Array): stri
58
60
  * @param uint8Array - The data to encode.
59
61
  * @returns The unpadded base64.
60
62
  */
61
- export function encodeUnpaddedBase64Url(uint8Array: ArrayBuffer | Uint8Array): string {
62
- return encodeUnpaddedBase64(uint8Array).replace(/\+/g, "-").replace(/\//g, "_");
63
+ export function encodeUnpaddedBase64Url(uint8Array: Uint8Array): string {
64
+ return toBase64(uint8Array, { alphabet: "base64url", omitPadding: true });
65
+ }
66
+
67
+ function fromBase64(base64: string, options: Uint8ArrayFromBase64Options): Uint8Array {
68
+ if (typeof Uint8Array.fromBase64 === "function") {
69
+ // Currently this is only supported in Firefox,
70
+ // but we match the options in the hope in the future we can rely on it for all environments.
71
+ // https://tc39.es/proposal-arraybuffer-base64/spec/#sec-uint8array.frombase64
72
+ return Uint8Array.fromBase64(base64, options);
73
+ }
74
+
75
+ return Uint8Array.from(atob(base64), (c) => c.charCodeAt(0));
63
76
  }
64
77
 
65
78
  /**
@@ -68,21 +81,6 @@ export function encodeUnpaddedBase64Url(uint8Array: ArrayBuffer | Uint8Array): s
68
81
  * @returns The decoded data.
69
82
  */
70
83
  export function decodeBase64(base64: string): Uint8Array {
71
- // See encodeBase64 for a short treatise on base64 en/decoding in JS
72
- if (typeof Buffer === "function") {
73
- return Buffer.from(base64, "base64");
74
- } else if (typeof atob === "function") {
75
- const itFunc = function* (): Generator<number> {
76
- const decoded = atob(
77
- // built-in atob doesn't support base64url: convert so we support either
78
- base64.replace(/-/g, "+").replace(/_/g, "/"),
79
- );
80
- for (let i = 0; i < decoded.length; ++i) {
81
- yield decoded.charCodeAt(i);
82
- }
83
- };
84
- return Uint8Array.from(itFunc());
85
- } else {
86
- throw new Error("No base64 impl found!");
87
- }
84
+ // The function requires us to select an alphabet, but we don't know if base64url was used so we convert.
85
+ return fromBase64(base64.replace(/-/g, "+").replace(/_/g, "/"), { alphabet: "base64", lastChunkHandling: "loose" });
88
86
  }
@@ -29,16 +29,5 @@ if (globalThis.__js_sdk_entrypoint) {
29
29
  }
30
30
  globalThis.__js_sdk_entrypoint = true;
31
31
 
32
- // just *accessing* indexedDB throws an exception in firefox with indexeddb disabled.
33
- let indexedDB: IDBFactory | undefined;
34
- try {
35
- indexedDB = globalThis.indexedDB;
36
- } catch {}
37
-
38
- // if our browser (appears to) support indexeddb, use an indexeddb crypto store.
39
- if (indexedDB) {
40
- matrixcs.setCryptoStoreFactory(() => new matrixcs.IndexedDBCryptoStore(indexedDB!, "matrix-js-sdk:crypto"));
41
- }
42
-
43
32
  export * from "./matrix.ts";
44
33
  globalThis.matrixcs = matrixcs;