Apply strictNullChecks to src/stores/widgets/* (#10324)
* Apply `strictNullChecks` to src/stores/widgets/* * Iterate * Iterate
This commit is contained in:
committed by
GitHub
parent
0c1c3f1cde
commit
c0e40217f3
@@ -285,7 +285,7 @@ export class StopGapWidget extends EventEmitter {
|
||||
this.messaging = new ClientWidgetApi(this.mockWidget, iframe, driver);
|
||||
this.messaging.on("preparing", () => this.emit("preparing"));
|
||||
this.messaging.on("ready", () => {
|
||||
WidgetMessagingStore.instance.storeMessaging(this.mockWidget, this.roomId, this.messaging);
|
||||
WidgetMessagingStore.instance.storeMessaging(this.mockWidget, this.roomId, this.messaging!);
|
||||
this.emit("ready");
|
||||
});
|
||||
this.messaging.on("capabilitiesNotified", () => this.emit("capabilitiesNotified"));
|
||||
@@ -347,7 +347,7 @@ export class StopGapWidget extends EventEmitter {
|
||||
if (this.messaging?.hasCapability(MatrixCapabilities.AlwaysOnScreen)) {
|
||||
ActiveWidgetStore.instance.setWidgetPersistence(
|
||||
this.mockWidget.id,
|
||||
this.roomId,
|
||||
this.roomId ?? null,
|
||||
ev.detail.data.value,
|
||||
);
|
||||
ev.preventDefault();
|
||||
@@ -393,14 +393,12 @@ export class StopGapWidget extends EventEmitter {
|
||||
const integType = data?.integType as string;
|
||||
const integId = <string>data?.integId;
|
||||
|
||||
const roomId = SdkContextClass.instance.roomViewStore.getRoomId();
|
||||
const room = roomId ? this.client.getRoom(roomId) : undefined;
|
||||
if (!room) return;
|
||||
|
||||
// noinspection JSIgnoredPromiseFromCall
|
||||
IntegrationManagers.sharedInstance()
|
||||
.getPrimaryManager()
|
||||
.open(
|
||||
this.client.getRoom(SdkContextClass.instance.roomViewStore.getRoomId()),
|
||||
`type_${integType}`,
|
||||
integId,
|
||||
);
|
||||
IntegrationManagers.sharedInstance()?.getPrimaryManager()?.open(room, `type_${integType}`, integId);
|
||||
},
|
||||
);
|
||||
}
|
||||
@@ -434,7 +432,7 @@ export class StopGapWidget extends EventEmitter {
|
||||
if (managers.hasManager()) {
|
||||
// TODO: Pick the right manager for the widget
|
||||
const defaultManager = managers.getPrimaryManager();
|
||||
if (WidgetUtils.isScalarUrl(defaultManager.apiUrl)) {
|
||||
if (defaultManager && WidgetUtils.isScalarUrl(defaultManager.apiUrl)) {
|
||||
const scalar = defaultManager.getScalarClient();
|
||||
this.scalarToken = await scalar.getScalarToken();
|
||||
}
|
||||
@@ -452,7 +450,10 @@ export class StopGapWidget extends EventEmitter {
|
||||
* @param opts
|
||||
*/
|
||||
public stopMessaging(opts = { forceDestroy: false }): void {
|
||||
if (!opts?.forceDestroy && ActiveWidgetStore.instance.getWidgetPersistence(this.mockWidget.id, this.roomId)) {
|
||||
if (
|
||||
!opts?.forceDestroy &&
|
||||
ActiveWidgetStore.instance.getWidgetPersistence(this.mockWidget.id, this.roomId ?? null)
|
||||
) {
|
||||
logger.log("Skipping destroy - persistent widget");
|
||||
return;
|
||||
}
|
||||
@@ -500,9 +501,11 @@ export class StopGapWidget extends EventEmitter {
|
||||
|
||||
let isBeforeMark = true;
|
||||
|
||||
const room = this.client.getRoom(ev.getRoomId()!);
|
||||
if (!room) return;
|
||||
// Timelines are most recent last, so reverse the order and limit ourselves to 100 events
|
||||
// to avoid overusing the CPU.
|
||||
const timeline = this.client.getRoom(ev.getRoomId()!).getLiveTimeline();
|
||||
const timeline = room.getLiveTimeline();
|
||||
const events = arrayFastClone(timeline.getEvents()).reverse().slice(0, 100);
|
||||
|
||||
for (const timelineEvent of events) {
|
||||
@@ -533,7 +536,7 @@ export class StopGapWidget extends EventEmitter {
|
||||
}
|
||||
|
||||
const raw = ev.getEffectiveEvent();
|
||||
this.messaging.feedEvent(raw as IRoomEvent, this.eventListenerRoomId).catch((e) => {
|
||||
this.messaging.feedEvent(raw as IRoomEvent, this.eventListenerRoomId!).catch((e) => {
|
||||
logger.error("Error sending event to widget: ", e);
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user