import { Body, Button, Column, Container, Head, Heading, Hr, Html, Img, Link, Preview, Row, Section, Tailwind, Text, } from "@react-email/components"; import * as React from "react"; 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; export default VercelInviteUserEmail;