You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
35 lines
928 B
TypeScript
35 lines
928 B
TypeScript
import { Message } from './Message';
|
|
import { AttachmentType } from '../../../types/Attachment';
|
|
import { QuotedAttachmentType } from '../../../components/conversation/Quote';
|
|
|
|
interface OpenGroupMessageParams {
|
|
timestamp: number;
|
|
identifier: string;
|
|
server: string;
|
|
attachments: [AttachmentType];
|
|
body?: string;
|
|
quote?: QuotedAttachmentType;
|
|
}
|
|
|
|
export class OpenGroupMessage extends Message {
|
|
public readonly server: string;
|
|
public readonly body?: string;
|
|
public readonly attachments: [AttachmentType]; // TODO: Not sure if we should only use a subset of this type
|
|
public readonly quote?: QuotedAttachmentType;
|
|
|
|
constructor({
|
|
identifier,
|
|
timestamp,
|
|
server,
|
|
attachments,
|
|
body,
|
|
quote,
|
|
} : OpenGroupMessageParams) {
|
|
super({ timestamp, identifier });
|
|
this.server = server;
|
|
this.body = body;
|
|
this.attachments = attachments;
|
|
this.quote = quote;
|
|
}
|
|
}
|