Merge branch 'IDTEAM-1.26.0' into 'main'
[ProtonMail-WebClient.git] / packages / shared / lib / calendar / mailIntegration / AddAttendeeError.ts
blob6cbb23d3929de6015acf8ad95a1db87620150bc2
1 import { c, msgid } from 'ttag';
3 import { MAX_ATTENDEES } from '@proton/shared/lib/calendar/constants';
5 export enum ADD_EVENT_ERROR_TYPE {
6     TOO_MANY_PARTICIPANTS,
9 const getErrorMessage = (errorType: ADD_EVENT_ERROR_TYPE, maxAttendees = MAX_ATTENDEES) => {
10     if (errorType === ADD_EVENT_ERROR_TYPE.TOO_MANY_PARTICIPANTS) {
11         return c('Error adding participants to a calendar event').ngettext(
12             msgid`At most ${maxAttendees} participant is allowed per invitation`,
13             `At most ${maxAttendees} participants are allowed per invitation`,
14             maxAttendees
15         );
16     }
17     return '';
20 export class AddAttendeeError extends Error {
21     type: ADD_EVENT_ERROR_TYPE;
23     externalError?: Error;
25     constructor(errorType: ADD_EVENT_ERROR_TYPE, externalError?: Error, maxAttendees?: number) {
26         super(getErrorMessage(errorType, maxAttendees));
27         this.type = errorType;
28         this.externalError = externalError;
29         Object.setPrototypeOf(this, AddAttendeeError.prototype);
30     }