* fix: round robin recurring don't send email if noEmail * fix: noEmail: false for non platform requests * fix: booking e2e tests * refactor: move bookings e2e tests in folder and uniform name * test: emails * test: team emails * reschedule and cancel emails with api key * test: round robin reassign emails * test: confirm and decline emails * test: confirm and decline emails * fix tests * test: recurring booking emails * remove unused imports and spies * fix test * remove log * chore: bump libraries * try to fix ci tests
30 lines
1.0 KiB
TypeScript
30 lines
1.0 KiB
TypeScript
import type { CalendarEvent, Person } from "@calcom/types/Calendar";
|
|
|
|
import { renderEmail } from "../";
|
|
import AttendeeScheduledEmail from "./attendee-scheduled-email";
|
|
|
|
export default class AttendeeDeclinedEmail extends AttendeeScheduledEmail {
|
|
protected async getNodeMailerPayload(): Promise<Record<string, unknown>> {
|
|
return {
|
|
to: `${this.attendee.name} <${this.attendee.email}>`,
|
|
from: `${this.calEvent.organizer.name} <${this.getMailerOptions().from}>`,
|
|
replyTo: this.calEvent.organizer.email,
|
|
subject: `${this.t("event_declined_subject", {
|
|
title: this.calEvent.title,
|
|
date: this.getFormattedDate(),
|
|
})}`,
|
|
html: await this.getHtml(this.calEvent, this.attendee),
|
|
text: this.getTextBody(
|
|
this.calEvent.recurringEvent?.count ? "event_request_declined_recurring" : "event_request_declined"
|
|
),
|
|
};
|
|
}
|
|
|
|
async getHtml(calEvent: CalendarEvent, attendee: Person) {
|
|
return await renderEmail("AttendeeDeclinedEmail", {
|
|
calEvent,
|
|
attendee,
|
|
});
|
|
}
|
|
}
|