Fix missing back-in-stock email Live Preview (404)
'back-in-stock' was added to the Payload-side email-templates type but never wired into this repo's own EmailTemplateType union or the Live Preview page's VALID_TYPES/fallback-heading maps — every other type is registered in three places, this one was only in one, so opening its Live Preview 404'd. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
@@ -20,6 +20,7 @@ const VALID_TYPES: EmailTemplateType[] = [
|
||||
"order-tracking-corrected",
|
||||
"order-delivered",
|
||||
"payment-method-switched",
|
||||
"back-in-stock",
|
||||
];
|
||||
|
||||
const STATUS_TYPE_FALLBACK_HEADING: Record<string, string> = {
|
||||
@@ -31,6 +32,7 @@ const STATUS_TYPE_FALLBACK_HEADING: Record<string, string> = {
|
||||
"order-tracking-corrected": "Korrigierte Sendungsnummer",
|
||||
"order-delivered": "Dein Paket ist angekommen",
|
||||
"payment-method-switched": "Erledigt!",
|
||||
"back-in-stock": "Wieder da!",
|
||||
};
|
||||
|
||||
// Entered exclusively via EmailTemplates.ts's admin.livePreview.url (a
|
||||
@@ -39,6 +41,14 @@ const STATUS_TYPE_FALLBACK_HEADING: Record<string, string> = {
|
||||
// draft:true so an unsaved edit in the admin shows up here immediately;
|
||||
// the actual sent email (orderEmail.ts) always reads the published version
|
||||
// instead.
|
||||
//
|
||||
// "back-in-stock" shares the generic order-status renderer below like
|
||||
// every other status type — an approximation, not pixel-identical (its
|
||||
// real send, lib/jobs/sendBackInStockEmails.ts on the Payload side, has no
|
||||
// order number/link at all, just a product name + "Jetzt ansehen" button),
|
||||
// same established gap as password-reset's own. Good enough to edit
|
||||
// subject/heading/bodyText/footerText live, which is what this page is
|
||||
// actually for.
|
||||
export default async function EmailPreviewPage({ params }: { params: Promise<{ type: string }> }) {
|
||||
const { type } = await params;
|
||||
if (!VALID_TYPES.includes(type as EmailTemplateType)) notFound();
|
||||
|
||||
@@ -336,6 +336,7 @@ export const ORDER_STATUS_EMAIL_ICON: Record<string, string> = {
|
||||
"order-tracking-corrected": "📦",
|
||||
"order-delivered": "🎉",
|
||||
"payment-method-switched": "💳",
|
||||
"back-in-stock": "🔔",
|
||||
};
|
||||
|
||||
export function renderOrderStatusHtml(
|
||||
|
||||
+2
-1
@@ -897,7 +897,8 @@ export type EmailTemplateType =
|
||||
| "order-tracking-added"
|
||||
| "order-tracking-corrected"
|
||||
| "order-delivered"
|
||||
| "payment-method-switched";
|
||||
| "payment-method-switched"
|
||||
| "back-in-stock";
|
||||
|
||||
type PayloadEmailTemplate = {
|
||||
type: EmailTemplateType;
|
||||
|
||||
Reference in New Issue
Block a user