matrix-js-sdk 42.0.0 → 42.1.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.
- package/CHANGELOG.md +17 -0
- package/lib/@types/PushRules.d.ts.map +1 -1
- package/lib/@types/PushRules.js +0 -5
- package/lib/@types/PushRules.js.map +1 -1
- package/lib/@types/auth.d.ts.map +1 -1
- package/lib/@types/auth.js +0 -5
- package/lib/@types/auth.js.map +1 -1
- package/lib/@types/crypto.d.ts.map +1 -1
- package/lib/@types/crypto.js.map +1 -1
- package/lib/@types/event.d.ts +3 -1
- package/lib/@types/event.d.ts.map +1 -1
- package/lib/@types/event.js +1 -0
- package/lib/@types/event.js.map +1 -1
- package/lib/@types/extensible_events.js.map +1 -1
- package/lib/@types/matrix-sdk-crypto-wasm.d.js.map +1 -1
- package/lib/@types/media.js.map +1 -1
- package/lib/@types/partials.d.ts.map +1 -1
- package/lib/@types/partials.js.map +1 -1
- package/lib/@types/requests.d.ts.map +1 -1
- package/lib/@types/requests.js +0 -5
- package/lib/@types/requests.js.map +1 -1
- package/lib/@types/search.d.ts.map +1 -1
- package/lib/@types/search.js +0 -3
- package/lib/@types/search.js.map +1 -1
- package/lib/@types/spaces.d.ts.map +1 -1
- package/lib/@types/spaces.js.map +1 -1
- package/lib/@types/synapse.d.ts.map +1 -1
- package/lib/@types/synapse.js.map +1 -1
- package/lib/@types/threepids.js.map +1 -1
- package/lib/ToDeviceMessageQueue.d.ts.map +1 -1
- package/lib/ToDeviceMessageQueue.js +0 -2
- package/lib/ToDeviceMessageQueue.js.map +1 -1
- package/lib/browser-index.d.ts.map +1 -1
- package/lib/browser-index.js +3 -1
- package/lib/browser-index.js.map +1 -1
- package/lib/client.d.ts +5 -8
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +5 -46
- package/lib/client.js.map +1 -1
- package/lib/common-crypto/key-passphrase.d.ts.map +1 -1
- package/lib/common-crypto/key-passphrase.js +0 -3
- package/lib/common-crypto/key-passphrase.js.map +1 -1
- package/lib/crypto/store/base.d.ts.map +1 -1
- package/lib/crypto/store/base.js +0 -9
- package/lib/crypto/store/base.js.map +1 -1
- package/lib/crypto/store/indexeddb-crypto-store-backend.js.map +1 -1
- package/lib/crypto/store/localStorage-crypto-store.d.ts.map +1 -1
- package/lib/crypto/store/localStorage-crypto-store.js +0 -2
- package/lib/crypto/store/localStorage-crypto-store.js.map +1 -1
- package/lib/crypto-api/keybackup.d.ts +13 -6
- package/lib/crypto-api/keybackup.d.ts.map +1 -1
- package/lib/crypto-api/keybackup.js.map +1 -1
- package/lib/embedded.d.ts.map +1 -1
- package/lib/embedded.js +0 -5
- package/lib/embedded.js.map +1 -1
- package/lib/feature.d.ts.map +1 -1
- package/lib/feature.js +0 -3
- package/lib/feature.js.map +1 -1
- package/lib/filter-component.d.ts.map +1 -1
- package/lib/filter-component.js +2 -5
- package/lib/filter-component.js.map +1 -1
- package/lib/filter.d.ts.map +1 -1
- package/lib/filter.js +0 -4
- package/lib/filter.js.map +1 -1
- package/lib/http-api/interface.d.ts.map +1 -1
- package/lib/http-api/interface.js.map +1 -1
- package/lib/http-api/refresh.d.ts.map +1 -1
- package/lib/http-api/refresh.js +0 -3
- package/lib/http-api/refresh.js.map +1 -1
- package/lib/interactive-auth.d.ts.map +1 -1
- package/lib/interactive-auth.js +5 -6
- package/lib/interactive-auth.js.map +1 -1
- package/lib/logger.d.ts.map +1 -1
- package/lib/logger.js +0 -2
- package/lib/logger.js.map +1 -1
- package/lib/matrixrtc/CallMembership.d.ts +3 -3
- package/lib/matrixrtc/CallMembership.js +5 -5
- package/lib/matrixrtc/CallMembership.js.map +1 -1
- package/lib/matrixrtc/MatrixRTCSession.d.ts +18 -1
- package/lib/matrixrtc/MatrixRTCSession.d.ts.map +1 -1
- package/lib/matrixrtc/MatrixRTCSession.js +56 -4
- package/lib/matrixrtc/MatrixRTCSession.js.map +1 -1
- package/lib/matrixrtc/MatrixRTCSessionManager.d.ts +14 -1
- package/lib/matrixrtc/MatrixRTCSessionManager.d.ts.map +1 -1
- package/lib/matrixrtc/MatrixRTCSessionManager.js +20 -1
- package/lib/matrixrtc/MatrixRTCSessionManager.js.map +1 -1
- package/lib/matrixrtc/MembershipManager.d.ts.map +1 -1
- package/lib/matrixrtc/MembershipManager.js +9 -6
- package/lib/matrixrtc/MembershipManager.js.map +1 -1
- package/lib/matrixrtc/index.d.ts +1 -1
- package/lib/matrixrtc/index.d.ts.map +1 -1
- package/lib/matrixrtc/index.js +1 -1
- package/lib/matrixrtc/index.js.map +1 -1
- package/lib/matrixrtc/membershipData/rtc.d.ts +6 -3
- package/lib/matrixrtc/membershipData/rtc.d.ts.map +1 -1
- package/lib/matrixrtc/membershipData/rtc.js +7 -4
- package/lib/matrixrtc/membershipData/rtc.js.map +1 -1
- package/lib/matrixrtc/types.d.ts +19 -6
- package/lib/matrixrtc/types.d.ts.map +1 -1
- package/lib/matrixrtc/types.js +11 -1
- package/lib/matrixrtc/types.js.map +1 -1
- package/lib/models/event.d.ts.map +1 -1
- package/lib/models/event.js +0 -6
- package/lib/models/event.js.map +1 -1
- package/lib/models/room-state.d.ts.map +1 -1
- package/lib/models/room-state.js.map +1 -1
- package/lib/models/room.d.ts.map +1 -1
- package/lib/models/room.js +6 -6
- package/lib/models/room.js.map +1 -1
- package/lib/models/thread.d.ts +2 -2
- package/lib/models/thread.d.ts.map +1 -1
- package/lib/models/thread.js.map +1 -1
- package/lib/realtime-callbacks.js +0 -1
- package/lib/realtime-callbacks.js.map +1 -1
- package/lib/rendezvous/transports/MSC4108RendezvousSession.d.ts.map +1 -1
- package/lib/rendezvous/transports/MSC4108RendezvousSession.js +0 -1
- package/lib/rendezvous/transports/MSC4108RendezvousSession.js.map +1 -1
- package/lib/rust-crypto/OutgoingRequestProcessor.d.ts.map +1 -1
- package/lib/rust-crypto/OutgoingRequestProcessor.js +0 -2
- package/lib/rust-crypto/OutgoingRequestProcessor.js.map +1 -1
- package/lib/rust-crypto/backup.d.ts +21 -1
- package/lib/rust-crypto/backup.d.ts.map +1 -1
- package/lib/rust-crypto/backup.js +62 -21
- package/lib/rust-crypto/backup.js.map +1 -1
- package/lib/rust-crypto/device-converter.d.ts.map +1 -1
- package/lib/rust-crypto/device-converter.js +1 -0
- package/lib/rust-crypto/device-converter.js.map +1 -1
- package/lib/rust-crypto/index.d.ts +7 -0
- package/lib/rust-crypto/index.d.ts.map +1 -1
- package/lib/rust-crypto/index.js +3 -3
- package/lib/rust-crypto/index.js.map +1 -1
- package/lib/rust-crypto/libolm_migration.d.ts.map +1 -1
- package/lib/rust-crypto/libolm_migration.js +0 -2
- package/lib/rust-crypto/libolm_migration.js.map +1 -1
- package/lib/rust-crypto/rust-crypto.d.ts.map +1 -1
- package/lib/rust-crypto/rust-crypto.js +0 -3
- package/lib/rust-crypto/rust-crypto.js.map +1 -1
- package/lib/scheduler.d.ts.map +1 -1
- package/lib/scheduler.js +0 -3
- package/lib/scheduler.js.map +1 -1
- package/lib/sliding-sync-sdk.d.ts.map +1 -1
- package/lib/sliding-sync-sdk.js +6 -0
- package/lib/sliding-sync-sdk.js.map +1 -1
- package/lib/sliding-sync.d.ts.map +1 -1
- package/lib/sliding-sync.js +3 -0
- package/lib/sliding-sync.js.map +1 -1
- package/lib/store/indexeddb.d.ts.map +1 -1
- package/lib/store/indexeddb.js +0 -2
- package/lib/store/indexeddb.js.map +1 -1
- package/lib/store/memory.d.ts.map +1 -1
- package/lib/store/memory.js +7 -9
- package/lib/store/memory.js.map +1 -1
- package/lib/sync-accumulator.d.ts.map +1 -1
- package/lib/sync-accumulator.js +1 -5
- package/lib/sync-accumulator.js.map +1 -1
- package/lib/sync.d.ts.map +1 -1
- package/lib/sync.js +1 -1
- package/lib/sync.js.map +1 -1
- package/lib/timeline-window.d.ts.map +1 -1
- package/lib/timeline-window.js +0 -1
- package/lib/timeline-window.js.map +1 -1
- package/lib/utils/internal/deriveKeys.d.ts.map +1 -1
- package/lib/utils/internal/deriveKeys.js +0 -1
- package/lib/utils/internal/deriveKeys.js.map +1 -1
- package/lib/webrtc/callEventTypes.d.ts.map +1 -1
- package/lib/webrtc/callEventTypes.js +0 -5
- package/lib/webrtc/callEventTypes.js.map +1 -1
- package/package.json +5 -5
- package/src/@types/PushRules.ts +0 -5
- package/src/@types/auth.ts +0 -6
- package/src/@types/crypto.ts +2 -6
- package/src/@types/event.ts +3 -0
- package/src/@types/extensible_events.ts +4 -4
- package/src/@types/matrix-sdk-crypto-wasm.d.ts +0 -1
- package/src/@types/media.ts +1 -1
- package/src/@types/partials.ts +0 -2
- package/src/@types/requests.ts +0 -5
- package/src/@types/search.ts +0 -2
- package/src/@types/spaces.ts +0 -2
- package/src/@types/synapse.ts +0 -2
- package/src/@types/threepids.ts +2 -2
- package/src/ToDeviceMessageQueue.ts +0 -2
- package/src/browser-index.ts +3 -3
- package/src/client.ts +18 -61
- package/src/common-crypto/key-passphrase.ts +0 -1
- package/src/crypto/store/base.ts +1 -8
- package/src/crypto/store/indexeddb-crypto-store-backend.ts +1 -1
- package/src/crypto/store/localStorage-crypto-store.ts +0 -1
- package/src/crypto-api/keybackup.ts +14 -7
- package/src/embedded.ts +0 -5
- package/src/feature.ts +0 -3
- package/src/filter-component.ts +1 -2
- package/src/filter.ts +0 -3
- package/src/http-api/interface.ts +0 -1
- package/src/http-api/refresh.ts +0 -1
- package/src/interactive-auth.ts +4 -4
- package/src/logger.ts +0 -2
- package/src/matrixrtc/CallMembership.ts +5 -5
- package/src/matrixrtc/MatrixRTCSession.ts +70 -3
- package/src/matrixrtc/MatrixRTCSessionManager.ts +21 -2
- package/src/matrixrtc/MembershipManager.ts +8 -5
- package/src/matrixrtc/index.ts +1 -1
- package/src/matrixrtc/membershipData/rtc.ts +18 -7
- package/src/matrixrtc/types.ts +24 -7
- package/src/models/event.ts +0 -3
- package/src/models/room-state.ts +0 -3
- package/src/models/room.ts +6 -6
- package/src/models/thread.ts +2 -2
- package/src/realtime-callbacks.ts +0 -1
- package/src/rendezvous/transports/MSC4108RendezvousSession.ts +0 -1
- package/src/rust-crypto/OutgoingRequestProcessor.ts +0 -1
- package/src/rust-crypto/backup.ts +66 -28
- package/src/rust-crypto/device-converter.ts +1 -0
- package/src/rust-crypto/index.ts +11 -0
- package/src/rust-crypto/libolm_migration.ts +0 -2
- package/src/rust-crypto/rust-crypto.ts +0 -3
- package/src/scheduler.ts +0 -3
- package/src/sliding-sync-sdk.ts +3 -0
- package/src/sliding-sync.ts +2 -0
- package/src/store/indexeddb.ts +0 -2
- package/src/store/memory.ts +7 -9
- package/src/sync-accumulator.ts +1 -3
- package/src/sync.ts +1 -3
- package/src/timeline-window.ts +0 -1
- package/src/utils/internal/deriveKeys.ts +0 -1
- package/src/webrtc/callEventTypes.ts +0 -5
package/src/scheduler.ts
CHANGED
|
@@ -40,14 +40,12 @@ interface IQueueEntry<T> {
|
|
|
40
40
|
*/
|
|
41
41
|
type ProcessFunction<T> = (event: MatrixEvent) => Promise<T>;
|
|
42
42
|
|
|
43
|
-
// eslint-disable-next-line camelcase
|
|
44
43
|
export class MatrixScheduler<T = ISendEventResponse> {
|
|
45
44
|
/**
|
|
46
45
|
* Default retry algorithm for the matrix scheduler. Retries events up to 4 times with exponential backoff.
|
|
47
46
|
* @param attempts - Number of attempts that have been made, including the one that just failed (ie. starting at 1)
|
|
48
47
|
* @see retryAlgorithm
|
|
49
48
|
*/
|
|
50
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
51
49
|
public static RETRY_BACKOFF_RATELIMIT(event: MatrixEvent | null, attempts: number, err: MatrixError): number {
|
|
52
50
|
return calculateRetryBackoff(err, attempts, false);
|
|
53
51
|
}
|
|
@@ -57,7 +55,6 @@ export class MatrixScheduler<T = ISendEventResponse> {
|
|
|
57
55
|
* concurrently.
|
|
58
56
|
* @see queueAlgorithm
|
|
59
57
|
*/
|
|
60
|
-
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
61
58
|
public static QUEUE_MESSAGES(event: MatrixEvent): string | null {
|
|
62
59
|
// enqueue messages or events that associate with another event (redactions and relations)
|
|
63
60
|
if (event.getType() === EventType.RoomMessage || event.hasAssociation()) {
|
package/src/sliding-sync-sdk.ts
CHANGED
|
@@ -199,6 +199,7 @@ class ExtensionAccountData implements Extension<ExtensionAccountDataRequest, Ext
|
|
|
199
199
|
this.processGlobalAccountData(data.global);
|
|
200
200
|
}
|
|
201
201
|
|
|
202
|
+
// oxlint-disable-next-line guard-for-in
|
|
202
203
|
for (const roomId in data.rooms) {
|
|
203
204
|
const accountDataEvents = mapEvents(this.client, roomId, data.rooms[roomId]);
|
|
204
205
|
const room = this.client.getRoom(roomId);
|
|
@@ -266,6 +267,7 @@ class ExtensionTyping implements Extension<ExtensionTypingRequest, ExtensionTypi
|
|
|
266
267
|
return;
|
|
267
268
|
}
|
|
268
269
|
|
|
270
|
+
// oxlint-disable-next-line guard-for-in
|
|
269
271
|
for (const roomId in data.rooms) {
|
|
270
272
|
processEphemeralEvents(this.client, roomId, [data.rooms[roomId]]);
|
|
271
273
|
}
|
|
@@ -302,6 +304,7 @@ class ExtensionReceipts implements Extension<ExtensionReceiptsRequest, Extension
|
|
|
302
304
|
return;
|
|
303
305
|
}
|
|
304
306
|
|
|
307
|
+
// oxlint-disable-next-line guard-for-in
|
|
305
308
|
for (const roomId in data.rooms) {
|
|
306
309
|
processEphemeralEvents(this.client, roomId, [data.rooms[roomId]]);
|
|
307
310
|
}
|
package/src/sliding-sync.ts
CHANGED
|
@@ -479,6 +479,7 @@ export class SlidingSync extends TypedEventEmitter<SlidingSyncEvent, SlidingSync
|
|
|
479
479
|
|
|
480
480
|
private async getExtensionRequest(isInitial: boolean): Promise<Record<string, object | undefined>> {
|
|
481
481
|
const ext: Record<string, object | undefined> = {};
|
|
482
|
+
// oxlint-disable-next-line guard-for-in
|
|
482
483
|
for (const extName in this.extensions) {
|
|
483
484
|
ext[extName] = await this.extensions[extName].onRequest(isInitial);
|
|
484
485
|
}
|
|
@@ -655,6 +656,7 @@ export class SlidingSync extends TypedEventEmitter<SlidingSyncEvent, SlidingSync
|
|
|
655
656
|
}
|
|
656
657
|
await this.onPreExtensionsResponse(resp.extensions);
|
|
657
658
|
|
|
659
|
+
// oxlint-disable-next-line guard-for-in
|
|
658
660
|
for (const roomId in resp.rooms) {
|
|
659
661
|
await this.invokeRoomDataListeners(roomId, resp!.rooms[roomId]);
|
|
660
662
|
}
|
package/src/store/indexeddb.ts
CHANGED
|
@@ -14,8 +14,6 @@ See the License for the specific language governing permissions and
|
|
|
14
14
|
limitations under the License.
|
|
15
15
|
*/
|
|
16
16
|
|
|
17
|
-
/* eslint-disable @babel/no-invalid-this */
|
|
18
|
-
|
|
19
17
|
import { MemoryStore, type IOpts as IBaseOpts } from "./memory.ts";
|
|
20
18
|
import { LocalIndexedDBStoreBackend } from "./indexeddb-local-backend.ts";
|
|
21
19
|
import { RemoteIndexedDBStoreBackend } from "./indexeddb-remote-backend.ts";
|
package/src/store/memory.ts
CHANGED
|
@@ -259,7 +259,9 @@ export class MemoryStore implements IStore {
|
|
|
259
259
|
if (isValidFilterId(value)) {
|
|
260
260
|
return value;
|
|
261
261
|
}
|
|
262
|
-
} catch {
|
|
262
|
+
} catch {
|
|
263
|
+
// Do nothing
|
|
264
|
+
}
|
|
263
265
|
return null;
|
|
264
266
|
}
|
|
265
267
|
|
|
@@ -277,7 +279,9 @@ export class MemoryStore implements IStore {
|
|
|
277
279
|
} else {
|
|
278
280
|
this.localStorage.removeItem(key);
|
|
279
281
|
}
|
|
280
|
-
} catch {
|
|
282
|
+
} catch {
|
|
283
|
+
// Do nothing
|
|
284
|
+
}
|
|
281
285
|
}
|
|
282
286
|
|
|
283
287
|
/**
|
|
@@ -288,13 +292,7 @@ export class MemoryStore implements IStore {
|
|
|
288
292
|
*/
|
|
289
293
|
public storeAccountDataEvents(events: MatrixEvent[]): void {
|
|
290
294
|
events.forEach((event) => {
|
|
291
|
-
|
|
292
|
-
const isDeleted = !Object.keys(event.getContent()).length;
|
|
293
|
-
if (isDeleted) {
|
|
294
|
-
this.accountData.delete(event.getType());
|
|
295
|
-
} else {
|
|
296
|
-
this.accountData.set(event.getType(), event);
|
|
297
|
-
}
|
|
295
|
+
this.accountData.set(event.getType(), event);
|
|
298
296
|
});
|
|
299
297
|
}
|
|
300
298
|
|
package/src/sync-accumulator.ts
CHANGED
|
@@ -54,7 +54,6 @@ export interface IEphemeral {
|
|
|
54
54
|
events: IMinimalEvent[];
|
|
55
55
|
}
|
|
56
56
|
|
|
57
|
-
/* eslint-disable camelcase */
|
|
58
57
|
interface UnreadNotificationCounts {
|
|
59
58
|
highlight_count?: number;
|
|
60
59
|
notification_count?: number;
|
|
@@ -210,7 +209,6 @@ export interface ISyncResponse {
|
|
|
210
209
|
"device_unused_fallback_key_types"?: string[];
|
|
211
210
|
"org.matrix.msc2732.device_unused_fallback_key_types"?: string[];
|
|
212
211
|
}
|
|
213
|
-
/* eslint-enable camelcase */
|
|
214
212
|
|
|
215
213
|
export enum Category {
|
|
216
214
|
Invite = "invite",
|
|
@@ -607,7 +605,7 @@ export class SyncAccumulator {
|
|
|
607
605
|
for (let i = startIndex; i < currentData._timeline.length; i++) {
|
|
608
606
|
if (currentData._timeline[i].token) {
|
|
609
607
|
// keep all events after this, including this one
|
|
610
|
-
currentData._timeline = currentData._timeline.slice(i
|
|
608
|
+
currentData._timeline = currentData._timeline.slice(i);
|
|
611
609
|
break;
|
|
612
610
|
}
|
|
613
611
|
}
|
package/src/sync.ts
CHANGED
|
@@ -170,9 +170,7 @@ interface ISyncParams {
|
|
|
170
170
|
"filter"?: string;
|
|
171
171
|
"timeout": number;
|
|
172
172
|
"since"?: string;
|
|
173
|
-
// eslint-disable-next-line camelcase
|
|
174
173
|
"full_state"?: boolean;
|
|
175
|
-
// eslint-disable-next-line camelcase
|
|
176
174
|
"set_presence"?: SetPresence;
|
|
177
175
|
"_cacheBuster"?: string | number; // not part of the API itself
|
|
178
176
|
"org.matrix.msc4222.use_state_after"?: boolean; // https://github.com/matrix-org/matrix-spec-proposals/pull/4222
|
|
@@ -1764,7 +1762,7 @@ export class SyncApi {
|
|
|
1764
1762
|
// fire listeners
|
|
1765
1763
|
member.setMembershipEvent(inviteEvent, room.currentState);
|
|
1766
1764
|
},
|
|
1767
|
-
function (
|
|
1765
|
+
function () {
|
|
1768
1766
|
// OH WELL.
|
|
1769
1767
|
},
|
|
1770
1768
|
);
|
package/src/timeline-window.ts
CHANGED
|
@@ -394,7 +394,6 @@ export class TimelineWindow {
|
|
|
394
394
|
// iterate through each timeline between this.start and this.end
|
|
395
395
|
// (inclusive).
|
|
396
396
|
let timeline: EventTimeline | null = this.start.timeline;
|
|
397
|
-
// eslint-disable-next-line no-constant-condition
|
|
398
397
|
while (timeline) {
|
|
399
398
|
const events = timeline.getEvents();
|
|
400
399
|
|
|
@@ -31,7 +31,6 @@ export async function deriveKeys(key: Uint8Array<ArrayBuffer>, name: string): Pr
|
|
|
31
31
|
{
|
|
32
32
|
name: "HKDF",
|
|
33
33
|
salt: zeroSalt,
|
|
34
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
35
34
|
// @ts-ignore: https://github.com/microsoft/TypeScript-DOM-lib-generator/pull/879
|
|
36
35
|
info: new TextEncoder().encode(name),
|
|
37
36
|
hash: "SHA-256",
|
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
// allow non-camelcase as these are events type that go onto the wire
|
|
2
|
-
/* eslint-disable camelcase */
|
|
3
|
-
|
|
4
1
|
import { type CallErrorCode } from "./call.ts";
|
|
5
2
|
import { NamespacedValue } from "../NamespacedValue.ts";
|
|
6
3
|
|
|
@@ -97,5 +94,3 @@ export interface MCallCandidates extends MCallBase {
|
|
|
97
94
|
export interface MCallHangupReject extends MCallBase {
|
|
98
95
|
reason?: CallErrorCode;
|
|
99
96
|
}
|
|
100
|
-
|
|
101
|
-
/* eslint-enable camelcase */
|