mirror of
https://github.com/fosrl/pangolin.git
synced 2025-07-27 22:25:58 +02:00
standard email signature
This commit is contained in:
parent
b96be3b649
commit
9f2d449527
8 changed files with 31 additions and 28 deletions
|
@ -13,6 +13,7 @@ import {
|
||||||
EmailGreeting,
|
EmailGreeting,
|
||||||
EmailHeading,
|
EmailHeading,
|
||||||
EmailLetterHead,
|
EmailLetterHead,
|
||||||
|
EmailSignature,
|
||||||
EmailText
|
EmailText
|
||||||
} from "./components/Email";
|
} from "./components/Email";
|
||||||
|
|
||||||
|
@ -47,9 +48,7 @@ export const ConfirmPasswordReset = ({ email }: Props) => {
|
||||||
</EmailText>
|
</EmailText>
|
||||||
|
|
||||||
<EmailFooter>
|
<EmailFooter>
|
||||||
Best regards,
|
<EmailSignature />
|
||||||
<br />
|
|
||||||
Fossorial
|
|
||||||
</EmailFooter>
|
</EmailFooter>
|
||||||
</EmailContainer>
|
</EmailContainer>
|
||||||
</Body>
|
</Body>
|
||||||
|
|
|
@ -14,6 +14,7 @@ import {
|
||||||
EmailHeading,
|
EmailHeading,
|
||||||
EmailLetterHead,
|
EmailLetterHead,
|
||||||
EmailSection,
|
EmailSection,
|
||||||
|
EmailSignature,
|
||||||
EmailText
|
EmailText
|
||||||
} from "./components/Email";
|
} from "./components/Email";
|
||||||
import CopyCodeBox from "./components/CopyCodeBox";
|
import CopyCodeBox from "./components/CopyCodeBox";
|
||||||
|
@ -59,9 +60,7 @@ export const ResetPasswordCode = ({ email, code, link }: Props) => {
|
||||||
</EmailText>
|
</EmailText>
|
||||||
|
|
||||||
<EmailFooter>
|
<EmailFooter>
|
||||||
Best regards,
|
<EmailSignature />
|
||||||
<br />
|
|
||||||
Fossorial
|
|
||||||
</EmailFooter>
|
</EmailFooter>
|
||||||
</EmailContainer>
|
</EmailContainer>
|
||||||
</Body>
|
</Body>
|
||||||
|
|
|
@ -13,7 +13,8 @@ import {
|
||||||
EmailText,
|
EmailText,
|
||||||
EmailFooter,
|
EmailFooter,
|
||||||
EmailSection,
|
EmailSection,
|
||||||
EmailGreeting
|
EmailGreeting,
|
||||||
|
EmailSignature
|
||||||
} from "./components/Email";
|
} from "./components/Email";
|
||||||
import { themeColors } from "./lib/theme";
|
import { themeColors } from "./lib/theme";
|
||||||
import CopyCodeBox from "./components/CopyCodeBox";
|
import CopyCodeBox from "./components/CopyCodeBox";
|
||||||
|
@ -60,9 +61,7 @@ export const ResourceOTPCode = ({
|
||||||
</EmailSection>
|
</EmailSection>
|
||||||
|
|
||||||
<EmailFooter>
|
<EmailFooter>
|
||||||
Best regards,
|
<EmailSignature />
|
||||||
<br />
|
|
||||||
Fossorial
|
|
||||||
</EmailFooter>
|
</EmailFooter>
|
||||||
</EmailContainer>
|
</EmailContainer>
|
||||||
</Body>
|
</Body>
|
||||||
|
|
|
@ -14,6 +14,7 @@ import {
|
||||||
EmailHeading,
|
EmailHeading,
|
||||||
EmailLetterHead,
|
EmailLetterHead,
|
||||||
EmailSection,
|
EmailSection,
|
||||||
|
EmailSignature,
|
||||||
EmailText
|
EmailText
|
||||||
} from "./components/Email";
|
} from "./components/Email";
|
||||||
import ButtonLink from "./components/ButtonLink";
|
import ButtonLink from "./components/ButtonLink";
|
||||||
|
@ -70,9 +71,7 @@ export const SendInviteLink = ({
|
||||||
</EmailSection>
|
</EmailSection>
|
||||||
|
|
||||||
<EmailFooter>
|
<EmailFooter>
|
||||||
Best regards,
|
<EmailSignature />
|
||||||
<br />
|
|
||||||
Fossorial
|
|
||||||
</EmailFooter>
|
</EmailFooter>
|
||||||
</EmailContainer>
|
</EmailContainer>
|
||||||
</Body>
|
</Body>
|
||||||
|
|
|
@ -13,6 +13,7 @@ import {
|
||||||
EmailGreeting,
|
EmailGreeting,
|
||||||
EmailHeading,
|
EmailHeading,
|
||||||
EmailLetterHead,
|
EmailLetterHead,
|
||||||
|
EmailSignature,
|
||||||
EmailText
|
EmailText
|
||||||
} from "./components/Email";
|
} from "./components/Email";
|
||||||
|
|
||||||
|
@ -61,9 +62,7 @@ export const TwoFactorAuthNotification = ({ email, enabled }: Props) => {
|
||||||
)}
|
)}
|
||||||
|
|
||||||
<EmailFooter>
|
<EmailFooter>
|
||||||
Best regards,
|
<EmailSignature />
|
||||||
<br />
|
|
||||||
Fossorial
|
|
||||||
</EmailFooter>
|
</EmailFooter>
|
||||||
</EmailContainer>
|
</EmailContainer>
|
||||||
</Body>
|
</Body>
|
||||||
|
|
|
@ -1,10 +1,4 @@
|
||||||
import {
|
import { Body, Head, Html, Preview, Tailwind } from "@react-email/components";
|
||||||
Body,
|
|
||||||
Head,
|
|
||||||
Html,
|
|
||||||
Preview,
|
|
||||||
Tailwind
|
|
||||||
} from "@react-email/components";
|
|
||||||
import * as React from "react";
|
import * as React from "react";
|
||||||
import { themeColors } from "./lib/theme";
|
import { themeColors } from "./lib/theme";
|
||||||
import {
|
import {
|
||||||
|
@ -14,6 +8,7 @@ import {
|
||||||
EmailHeading,
|
EmailHeading,
|
||||||
EmailLetterHead,
|
EmailLetterHead,
|
||||||
EmailSection,
|
EmailSection,
|
||||||
|
EmailSignature,
|
||||||
EmailText
|
EmailText
|
||||||
} from "./components/Email";
|
} from "./components/Email";
|
||||||
import CopyCodeBox from "./components/CopyCodeBox";
|
import CopyCodeBox from "./components/CopyCodeBox";
|
||||||
|
@ -60,9 +55,7 @@ export const VerifyEmail = ({
|
||||||
</EmailText>
|
</EmailText>
|
||||||
|
|
||||||
<EmailFooter>
|
<EmailFooter>
|
||||||
Best regards,
|
<EmailSignature />
|
||||||
<br />
|
|
||||||
Fossorial
|
|
||||||
</EmailFooter>
|
</EmailFooter>
|
||||||
</EmailContainer>
|
</EmailContainer>
|
||||||
</Body>
|
</Body>
|
||||||
|
|
|
@ -56,7 +56,7 @@ export function EmailHeading({ children }: { children: React.ReactNode }) {
|
||||||
}
|
}
|
||||||
|
|
||||||
export function EmailGreeting({ children }: { children: React.ReactNode }) {
|
export function EmailGreeting({ children }: { children: React.ReactNode }) {
|
||||||
return <p className="text-lg text-gray-700 my-4">{children}</p>;
|
return <p className="text-base text-gray-700 my-4">{children}</p>;
|
||||||
}
|
}
|
||||||
|
|
||||||
// EmailText: For general text content
|
// EmailText: For general text content
|
||||||
|
@ -82,10 +82,20 @@ export function EmailSection({
|
||||||
children: React.ReactNode;
|
children: React.ReactNode;
|
||||||
className?: string;
|
className?: string;
|
||||||
}) {
|
}) {
|
||||||
return <div className={`text-center my-4 ${className}`}>{children}</div>;
|
return <div className={`text-center my-6 ${className}`}>{children}</div>;
|
||||||
}
|
}
|
||||||
|
|
||||||
// EmailFooter: For closing or signature
|
// EmailFooter: For closing or signature
|
||||||
export function EmailFooter({ children }: { children: React.ReactNode }) {
|
export function EmailFooter({ children }: { children: React.ReactNode }) {
|
||||||
return <div className="text-sm text-gray-500 mt-6">{children}</div>;
|
return <div className="text-sm text-gray-500 mt-6">{children}</div>;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function EmailSignature() {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
Best regards,
|
||||||
|
<br />
|
||||||
|
Fossorial
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
|
@ -76,6 +76,11 @@ export default function GeneralPage() {
|
||||||
|
|
||||||
updateSite({ name: data.name });
|
updateSite({ name: data.name });
|
||||||
|
|
||||||
|
toast({
|
||||||
|
title: "Site updated",
|
||||||
|
description: "The site has been updated."
|
||||||
|
});
|
||||||
|
|
||||||
setLoading(false);
|
setLoading(false);
|
||||||
|
|
||||||
router.refresh();
|
router.refresh();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue