Merge pull request #5488 from matrix-org/travis/chat-effects-widgets

Run chat effects on events sent by widgets too
This commit is contained in:
Travis Ralston 2020-12-11 21:52:24 -07:00 committed by GitHub
commit b870de14ed
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -40,6 +40,9 @@ import { WidgetPermissionCustomisations } from "../../customisations/WidgetPermi
import { OIDCState, WidgetPermissionStore } from "./WidgetPermissionStore";
import { WidgetType } from "../../widgets/WidgetType";
import { EventType } from "matrix-js-sdk/src/@types/event";
import { CHAT_EFFECTS } from "../../effects";
import { containsEmoji } from "../../effects/utils";
import dis from "../../dispatcher/dispatcher";
// TODO: Purge this from the universe
@ -123,6 +126,14 @@ export class StopGapWidgetDriver extends WidgetDriver {
} else {
// message event
r = await client.sendEvent(roomId, eventType, content);
if (eventType === EventType.RoomMessage) {
CHAT_EFFECTS.forEach((effect) => {
if (containsEmoji(content, effect.emojis)) {
dis.dispatch({action: `effects.${effect.command}`});
}
});
}
}
return {roomId, eventId: r.event_id};