summaryrefslogtreecommitdiff
path: root/packages/backend/src/core/GlobalEventService.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/backend/src/core/GlobalEventService.ts')
-rw-r--r--packages/backend/src/core/GlobalEventService.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/packages/backend/src/core/GlobalEventService.ts b/packages/backend/src/core/GlobalEventService.ts
index 9f4de5f985..2c2687a90c 100644
--- a/packages/backend/src/core/GlobalEventService.ts
+++ b/packages/backend/src/core/GlobalEventService.ts
@@ -14,11 +14,13 @@ import type {
MainStreamTypes,
NoteStreamTypes,
UserListStreamTypes,
+ RoleTimelineStreamTypes,
} from '@/server/api/stream/types.js';
import type { Packed } from '@/misc/json-schema.js';
import { DI } from '@/di-symbols.js';
import type { Config } from '@/config.js';
import { bindThis } from '@/decorators.js';
+import { Role } from '@/models';
@Injectable()
export class GlobalEventService {
@@ -82,6 +84,11 @@ export class GlobalEventService {
}
@bindThis
+ public publishRoleTimelineStream<K extends keyof RoleTimelineStreamTypes>(roleId: Role['id'], type: K, value?: RoleTimelineStreamTypes[K]): void {
+ this.publish(`roleTimelineStream:${roleId}`, type, typeof value === 'undefined' ? null : value);
+ }
+
+ @bindThis
public publishNotesStream(note: Packed<'Note'>): void {
this.publish('notesStream', null, note);
}