import { Body, Container, Html, Markdown, Preview } from 'jsx-email' import { Signature } from './components/Signature.tsx' import type { Template } from '../types.ts' import { BaseStyle, bodyCss, messageCss, textCss } from './styles/base.tsx' import type { JSX } from 'preact' function Message( { summary, body }: { summary?: string; body: string }, ): JSX.Element { return ( <Html lang='fr' style={{ fontSize: '14px' }}> <BaseStyle /> <Preview>{summary}</Preview> <Body style={bodyCss}> <Container style={messageCss}> <Markdown style={textCss}>{body}</Markdown> </Container> <Signature /> </Body> </Html> ) } const template: Template<typeof Message, Parameters<typeof Message>[0]> = { props: [ { name: 'Résumé', description: 'Résumé du mail.', required: false, multiline: false, tag: 'summary', }, { name: 'Message', description: 'Contenu du mail (markdown).', required: true, multiline: true, tag: 'body', }, ], name: 'message', description: 'Message mail en markdown.', builder: Message, } export default template //summary <90c