bigbluebutton-Github/bigbluebutton-html5/imports/ui/components/chat/chat-graphql/alert/queries.ts
2024-02-23 15:14:12 -03:00

62 lines
1.3 KiB
TypeScript

import { gql } from '@apollo/client';
export interface Message {
messageType: string;
chatId: string;
message: string;
messageId: string;
createdAt: string;
messageMetadata: string | null;
senderName: string | null;
senderRole: string | null;
}
export interface PublicMessageStreamResponse {
chat_message_public_stream: Array<Message>;
}
export interface PrivateMessageStreamResponse {
chat_message_private_stream: Array<Message>;
}
export const CHAT_MESSAGE_PUBLIC_STREAM = gql`
subscription chatMessages($createdAt: timestamptz!) {
chat_message_public_stream(
cursor: { initial_value: { createdAt: $createdAt }, ordering: ASC},
batch_size: 10
) {
chatId
createdAt
message
messageId
messageMetadata
messageType
senderName
senderRole
}
}
`;
export const CHAT_MESSAGE_PRIVATE_STREAM = gql`
subscription chatMessages($createdAt: timestamptz!) {
chat_message_private_stream(
cursor: { initial_value: { createdAt: $createdAt }, ordering: ASC},
batch_size: 10
) {
chatId
createdAt
message
messageId
messageMetadata
messageType
senderName
senderRole
}
}
`;
export default {
CHAT_MESSAGE_PRIVATE_STREAM,
CHAT_MESSAGE_PUBLIC_STREAM,
};