* wip * update layoutHOC * wip * remove app router related code no longer used * remove more * await cookies, headers, params, serachparams * update yarn.lock * await cookies, headers, params, serachparams more * update yarn lock again * downgrade next-auth to 4.22.1 * update yarn lock * fix * update yarn lock * fix type checks * update yarn lock * await headers and cookies * restore pages folder * restore yarn.lock * update yarn.lock * await headers and cookies * remove * await params in API routes * updates * restore next.config.js * remove i18n from next.config.js * Fixed tests * Fixed types * Removed duplicate favicon.ico * Fixing more types * ImageResponse moved to next/og * Fixed prisma import issues * dynamic import for @ewsjs/xhr * remove deasync dep * dynamic import for @tryvital/vital-node * fix type checks * add back turbopack command * Type fix * Removed unneeded file * fix turbopack relative path errors * add comments * remove unneeded code * Fixed build errors * await apis * use Promise<Params> type in defaultResponderForAppDir util * refactor scim api route * fix type checks * separate app-routing.config into client-config and server-config * wip * refactor routing forms components * revert unneeded changes for easier review * fix * fix * use CustomTrans * fix type * fix unit tests * fix type error * fix build error * fix build error * fix build error * fix warnings * fix warnings * upgrade @tremor/react and tailwindcss * numCols -> numItems * fix forgot-password e2e test * fix 1 more e2e test * fix login e2e test * fix e2e tests * fix e2e tests * clean up * remove error * use tremor/react 2.11.0 * fix * rename CustomTrans to ServerTrans * address comment * fix test * fix ServerTrans * fix * fix type * fix ServerTrans usages 1 * fix translations * fix type checks * fix type checks * link styling * fix --------- Co-authored-by: Keith Williams <keithwillcode@gmail.com> Co-authored-by: Anik Dhabal Babu <81948346+anikdhabal@users.noreply.github.com>
104 lines
2.8 KiB
TypeScript
104 lines
2.8 KiB
TypeScript
import type { TFunction } from "i18next";
|
|
|
|
import { APP_NAME, WEBAPP_URL, IS_PRODUCTION } from "@calcom/lib/constants";
|
|
|
|
import { V2BaseEmailHtml, CallToAction } from "../components";
|
|
|
|
type TeamInvite = {
|
|
language: TFunction;
|
|
from: string;
|
|
to: string;
|
|
orgName: string;
|
|
joinLink: string;
|
|
};
|
|
|
|
export const OrgAutoInviteEmail = (
|
|
props: TeamInvite & Partial<React.ComponentProps<typeof V2BaseEmailHtml>>
|
|
) => {
|
|
return (
|
|
<V2BaseEmailHtml
|
|
subject={props.language("user_invited_you", {
|
|
user: props.from,
|
|
team: props.orgName,
|
|
appName: APP_NAME,
|
|
entity: "organization",
|
|
})}>
|
|
<p style={{ fontSize: "24px", marginBottom: "16px", textAlign: "center" }}>
|
|
<>
|
|
{props.language("organization_admin_invited_heading", {
|
|
orgName: props.orgName,
|
|
})}
|
|
</>
|
|
</p>
|
|
<img
|
|
style={{
|
|
borderRadius: "16px",
|
|
height: "270px",
|
|
display: "flex",
|
|
alignItems: "center",
|
|
justifyContent: "center",
|
|
}}
|
|
src={
|
|
IS_PRODUCTION
|
|
? `${WEBAPP_URL}/emails/calendar-email-hero.png`
|
|
: "http://localhost:3000/emails/calendar-email-hero.png"
|
|
}
|
|
alt=""
|
|
/>
|
|
<p
|
|
style={{
|
|
fontWeight: 400,
|
|
lineHeight: "24px",
|
|
marginBottom: "32px",
|
|
marginTop: "32px",
|
|
lineHeightStep: "24px",
|
|
}}>
|
|
<>
|
|
{props.language("organization_admin_invited_body", {
|
|
orgName: props.orgName,
|
|
})}
|
|
</>
|
|
</p>
|
|
<div style={{ display: "flex", justifyContent: "center" }}>
|
|
<CallToAction
|
|
label={props.language("email_user_cta", {
|
|
entity: "organization",
|
|
})}
|
|
href={props.joinLink}
|
|
endIconName="linkIcon"
|
|
/>
|
|
</div>
|
|
|
|
<div className="">
|
|
<p
|
|
style={{
|
|
fontWeight: 400,
|
|
lineHeight: "24px",
|
|
marginBottom: "32px",
|
|
marginTop: "32px",
|
|
lineHeightStep: "24px",
|
|
}}>
|
|
<>
|
|
{props.language("email_no_user_signoff", {
|
|
appName: APP_NAME,
|
|
entity: props.language("organization").toLowerCase(),
|
|
})}
|
|
</>
|
|
</p>
|
|
</div>
|
|
|
|
<div style={{ borderTop: "1px solid #E1E1E1", marginTop: "32px", paddingTop: "32px" }}>
|
|
<p style={{ fontWeight: 400, margin: 0 }}>
|
|
<>
|
|
{props.language("have_any_questions")}{" "}
|
|
<a href="mailto:support@cal.com" style={{ color: "#3E3E3E" }} target="_blank" rel="noreferrer">
|
|
<>{props.language("contact")}</>
|
|
</a>{" "}
|
|
{props.language("our_support_team")}
|
|
</>
|
|
</p>
|
|
</div>
|
|
</V2BaseEmailHtml>
|
|
);
|
|
};
|