Skip to content

Commit 1c71da4

Browse files
committed
feat: stage utils
1 parent a5c1c4a commit 1c71da4

File tree

1 file changed

+33
-0
lines changed

1 file changed

+33
-0
lines changed

services/ama-bot/src/lib/queues.ts

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
import type { AMASession } from '@chatsift/backend-core';
2+
import type { Selectable } from 'kysely';
3+
4+
export enum CurrentlyInQueue {
5+
mod,
6+
guest,
7+
answers,
8+
}
9+
10+
interface GetNextQueueResult {
11+
kind: CurrentlyInQueue;
12+
queueId: string;
13+
}
14+
15+
export function getNextQueue(currently: CurrentlyInQueue, session: Selectable<AMASession>): GetNextQueueResult | null {
16+
switch (currently) {
17+
case CurrentlyInQueue.answers: {
18+
return null;
19+
}
20+
21+
case CurrentlyInQueue.guest: {
22+
return { kind: CurrentlyInQueue.answers, queueId: session.answersChannelId };
23+
}
24+
25+
case CurrentlyInQueue.mod: {
26+
if (session.guestQueueId) {
27+
return { kind: CurrentlyInQueue.guest, queueId: session.guestQueueId };
28+
}
29+
30+
return { kind: CurrentlyInQueue.answers, queueId: session.answersChannelId };
31+
}
32+
}
33+
}

0 commit comments

Comments
 (0)