From 019b797bf83201d2d4834cc9e0dde30f6a48daa2 Mon Sep 17 00:00:00 2001 From: Bjorn Lu Date: Wed, 19 Jul 2023 15:52:50 +0800 Subject: [PATCH] Fix redirects map object-form value validation (#7701) --- .changeset/eleven-eyes-jog.md | 5 +++++ packages/astro/src/core/config/schema.ts | 21 ++++++++++++++++++++- 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 .changeset/eleven-eyes-jog.md diff --git a/.changeset/eleven-eyes-jog.md b/.changeset/eleven-eyes-jog.md new file mode 100644 index 0000000000..ebd4b4fe1f --- /dev/null +++ b/.changeset/eleven-eyes-jog.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fix redirects map object-form value validation diff --git a/packages/astro/src/core/config/schema.ts b/packages/astro/src/core/config/schema.ts index 16bfbbac72..70c9e03a72 100644 --- a/packages/astro/src/core/config/schema.ts +++ b/packages/astro/src/core/config/schema.ts @@ -149,7 +149,26 @@ export const AstroConfigSchema = z.object({ .optional() .default({}) ), - redirects: z.record(z.string(), z.string()).default(ASTRO_CONFIG_DEFAULTS.redirects), + redirects: z + .record( + z.string(), + z.union([ + z.string(), + z.object({ + status: z.union([ + z.literal(300), + z.literal(301), + z.literal(302), + z.literal(303), + z.literal(304), + z.literal(307), + z.literal(308), + ]), + destination: z.string(), + }), + ]) + ) + .default(ASTRO_CONFIG_DEFAULTS.redirects), image: z .object({ service: z.object({