import { Body, Button, Column, Container, Head, Heading, Hr, Html, Img, Link, Preview, Row, Section, Tailwind, Text, } from 'react-email'; interface VercelInviteUserEmailProps { username?: string; userImage?: string; invitedByUsername?: string; invitedByEmail?: string; teamName?: string; teamImage?: string; inviteLink?: string; inviteFromIp?: string; inviteFromLocation?: string; } const baseUrl = process.env.VERCEL_URL ? `https://${process.env.VERCEL_URL}` : ''; export const VercelInviteUserEmail = ({ username, userImage, invitedByUsername, invitedByEmail, teamName, teamImage, inviteLink, inviteFromIp, inviteFromLocation, }: VercelInviteUserEmailProps) => { const previewText = `Join ${invitedByUsername} on Vercel`; return ( {previewText}
Vercel
Join {teamName} on Vercel Hello {username}, {invitedByUsername} ( {invitedByEmail} ) has invited you to the {teamName} team on{' '} Vercel.
invited you to
or copy and paste this URL into your browser:{' '} {inviteLink}
This invitation was intended for{' '} {username}. This invite was sent from {inviteFromIp}{' '} located in{' '} {inviteFromLocation}. If you were not expecting this invitation, you can ignore this email. If you are concerned about your account's safety, please reply to this email to get in touch with us.
); }; VercelInviteUserEmail.PreviewProps = { username: 'alanturing', userImage: `${baseUrl}/static/vercel-user.png`, invitedByUsername: 'Alan', invitedByEmail: 'alan.turing@example.com', teamName: 'Enigma', teamImage: `${baseUrl}/static/vercel-team.png`, inviteLink: 'https://vercel.com/teams/invite/foo', inviteFromIp: '204.13.186.218', inviteFromLocation: 'São Paulo, Brazil', } as VercelInviteUserEmailProps;