All files / lib/libs/email/content email-templates.tsx

100% Statements 2/2
100% Branches 0/0
100% Functions 1/1
100% Lines 2/2

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37                          11x             112x                                
import { Body, Container, Head, Heading, Html, Preview, Text } from "@react-email/components";
import { EmailNav, EmailFooter } from "./email-components";
import { styles } from "./email-styles";
import { ReactNode } from "react";
 
interface BaseEmailTemplateProps {
  previewText: string;
  heading: string;
  children?: ReactNode;
  footerContent?: ReactNode;
  applicationEndpointUrl: string;
}
 
export const BaseEmailTemplate = ({
  previewText,
  heading,
  children,
  footerContent,
  applicationEndpointUrl,
}: BaseEmailTemplateProps) => (
  <Html>
    <Head />
    <Preview>{previewText}</Preview>
    <Body style={styles.main}>
      <Container style={styles.container}>
        <EmailNav appEndpointUrl={applicationEndpointUrl} />
        <div style={styles.section.primary}>
          <Heading style={styles.heading.h1}>{heading}</Heading>
          {children}
          <Text style={{ ...styles.text.base }}>Thank you.</Text>
        </div>
        <EmailFooter>{footerContent}</EmailFooter>
      </Container>
    </Body>
  </Html>
);