mirror of
https://github.com/aljazceru/opencode.git
synced 2025-12-18 16:34:18 +01:00
100 lines
2.7 KiB
TypeScript
100 lines
2.7 KiB
TypeScript
// @ts-nocheck
|
|
import React from "react"
|
|
import {
|
|
Img,
|
|
Row,
|
|
Html,
|
|
Link,
|
|
Body,
|
|
Head,
|
|
Button,
|
|
Column,
|
|
Preview,
|
|
Section,
|
|
Container,
|
|
} from "@jsx-email/all"
|
|
import { Text, Fonts, Title, A, Span } from "../components"
|
|
import {
|
|
unit,
|
|
body,
|
|
frame,
|
|
headingText,
|
|
container,
|
|
contentText,
|
|
button,
|
|
contentHighlightText,
|
|
linkText,
|
|
buttonText,
|
|
} from "../styles"
|
|
|
|
const CONSOLE_URL = "https://opencode.ai/"
|
|
|
|
interface InviteEmailProps {
|
|
inviter: string
|
|
workspaceID: string
|
|
workspaceName: string
|
|
assetsUrl: string
|
|
}
|
|
export const InviteEmail = ({
|
|
inviter = "test@anoma.ly",
|
|
workspaceID = "wrk_01K6XFY7V53T8XN0A7X8G9BTN3",
|
|
workspaceName = "anomaly",
|
|
assetsUrl = `${CONSOLE_URL}email`,
|
|
}: InviteEmailProps) => {
|
|
const messagePlain = `${inviter} invited you to join the ${workspaceName} workspace.`
|
|
const url = `${CONSOLE_URL}workspace/${workspaceID}`
|
|
return (
|
|
<Html lang="en">
|
|
<Head>
|
|
<Title>{`OpenCode — ${messagePlain}`}</Title>
|
|
</Head>
|
|
<Fonts assetsUrl={assetsUrl} />
|
|
<Preview>{messagePlain}</Preview>
|
|
<Body style={body} id={Math.random().toString()}>
|
|
<Container style={container}>
|
|
<Section style={frame}>
|
|
<Row>
|
|
<Column>
|
|
<A href={`${CONSOLE_URL}zen`}>
|
|
<Img height="32" alt="OpenCode Logo" src={`${assetsUrl}/logo.png`} />
|
|
</A>
|
|
</Column>
|
|
</Row>
|
|
|
|
<Section style={{ padding: `${unit * 2}px 0 0 0` }}>
|
|
<Text style={headingText}>Join your team's OpenCode workspace</Text>
|
|
<Text style={contentText}>
|
|
You have been invited by <Span style={contentHighlightText}>{inviter}</Span> to join
|
|
the <Span style={contentHighlightText}>{workspaceName}</Span> workspace on OpenCode.
|
|
</Text>
|
|
</Section>
|
|
|
|
<Section style={{ padding: `${unit}px 0 0 0` }}>
|
|
<Button style={button} href={url}>
|
|
<Text style={buttonText}>
|
|
Join workspace
|
|
<Img
|
|
width="24"
|
|
height="24"
|
|
src={`${assetsUrl}/right-arrow.png`}
|
|
alt="Arrow right"
|
|
/>
|
|
</Text>
|
|
</Button>
|
|
</Section>
|
|
|
|
<Section style={{ padding: `${unit}px 0 0 0` }}>
|
|
<Text style={contentText}>Button not working? Copy the following link...</Text>
|
|
<Link href={url}>
|
|
<Text style={linkText}>{url}</Text>
|
|
</Link>
|
|
</Section>
|
|
</Section>
|
|
</Container>
|
|
</Body>
|
|
</Html>
|
|
)
|
|
}
|
|
|
|
export default InviteEmail
|