mirror of
https://github.com/hanzoai/sign.git
synced 2026-10-21 01:21:51 +00:00
Emails, the signing page's title, the sealed PDF's reason, the sign-in refusal and the dialogs still said Hanzo Sign. The catalogs change with the strings, message for message, so every translation keeps its id.
67 lines
2.2 KiB
TypeScript
67 lines
2.2 KiB
TypeScript
import { msg } from '@lingui/core/macro';
|
|
import { useLingui } from '@lingui/react';
|
|
|
|
import { Body, Container, Head, Html, Img, Preview, Section } from '../components';
|
|
import { useBranding } from '../providers/branding';
|
|
import type { TemplateDocumentCompletedProps } from '../template-components/template-document-completed';
|
|
import { TemplateDocumentCompleted } from '../template-components/template-document-completed';
|
|
import { TemplateFooter } from '../template-components/template-footer';
|
|
|
|
export type DocumentCompletedEmailTemplateProps = Partial<TemplateDocumentCompletedProps> & {
|
|
customBody?: string;
|
|
};
|
|
|
|
export const DocumentCompletedEmailTemplate = ({
|
|
downloadLink = 'https://esign.hanzo.ai',
|
|
documentName = 'Open Source Pledge.pdf',
|
|
assetBaseUrl = 'http://localhost:3002',
|
|
customBody,
|
|
}: DocumentCompletedEmailTemplateProps) => {
|
|
const { _ } = useLingui();
|
|
const branding = useBranding();
|
|
|
|
const previewText = msg`Completed Document`;
|
|
|
|
const getAssetUrl = (path: string) => {
|
|
return new URL(path, assetBaseUrl).toString();
|
|
};
|
|
|
|
return (
|
|
<Html>
|
|
<Head />
|
|
<Preview>{_(previewText)}</Preview>
|
|
|
|
<Body className="mx-auto my-auto font-sans">
|
|
<Section className="bg-white">
|
|
<Container className="mx-auto mb-2 mt-8 max-w-xl rounded-lg border border-solid border-slate-200 p-2 backdrop-blur-sm">
|
|
<Section className="p-2">
|
|
{branding.brandingEnabled && branding.brandingLogo ? (
|
|
<Img src={branding.brandingLogo} alt="Branding Logo" className="mb-4 h-6" />
|
|
) : (
|
|
<Img
|
|
src={getAssetUrl('/static/logo.png')}
|
|
alt="Hanzo eSign Logo"
|
|
className="mb-4 h-6"
|
|
/>
|
|
)}
|
|
|
|
<TemplateDocumentCompleted
|
|
downloadLink={downloadLink}
|
|
documentName={documentName}
|
|
assetBaseUrl={assetBaseUrl}
|
|
customBody={customBody}
|
|
/>
|
|
</Section>
|
|
</Container>
|
|
|
|
<Container className="mx-auto max-w-xl">
|
|
<TemplateFooter />
|
|
</Container>
|
|
</Section>
|
|
</Body>
|
|
</Html>
|
|
);
|
|
};
|
|
|
|
export default DocumentCompletedEmailTemplate;
|