diff options
author | 2023-08-29 17:54:24 +0200 | |
---|---|---|
committer | 2023-08-29 17:54:24 +0200 | |
commit | 8450379db854fb1eaa9f38f21d65db240bc616cd (patch) | |
tree | 41e2302306b8be656aa129328f35ac94a06f1abc | |
parent | a78175c1b86031ecdf946893b7b73968b279a43c (diff) | |
download | astro-8450379db854fb1eaa9f38f21d65db240bc616cd.tar.gz astro-8450379db854fb1eaa9f38f21d65db240bc616cd.tar.zst astro-8450379db854fb1eaa9f38f21d65db240bc616cd.zip |
fix: settings requiring service to be set when settings domains or remotePatterns (#8266)
-rw-r--r-- | .changeset/many-impalas-sit.md | 5 | ||||
-rw-r--r-- | packages/astro/src/core/config/schema.ts | 27 |
2 files changed, 21 insertions, 11 deletions
diff --git a/.changeset/many-impalas-sit.md b/.changeset/many-impalas-sit.md new file mode 100644 index 000000000..ad48de4f3 --- /dev/null +++ b/.changeset/many-impalas-sit.md @@ -0,0 +1,5 @@ +--- +'astro': patch +--- + +Fix `image.service` requiring to be set manually when `image.domains` or `image.remotePatterns` was assigned a value diff --git a/packages/astro/src/core/config/schema.ts b/packages/astro/src/core/config/schema.ts index 21d153143..46ed2a01f 100644 --- a/packages/astro/src/core/config/schema.ts +++ b/packages/astro/src/core/config/schema.ts @@ -29,6 +29,9 @@ const ASTRO_CONFIG_DEFAULTS = { split: false, excludeMiddleware: false, }, + image: { + service: { entrypoint: 'astro/assets/services/sharp', config: {} }, + }, compressHTML: true, server: { host: false, @@ -180,14 +183,18 @@ export const AstroConfigSchema = z.object({ .default(ASTRO_CONFIG_DEFAULTS.redirects), image: z .object({ - service: z.object({ - entrypoint: z.union([ - z.literal('astro/assets/services/sharp'), - z.literal('astro/assets/services/squoosh'), - z.string(), - ]), - config: z.record(z.any()).default({}), - }), + service: z + .object({ + entrypoint: z + .union([ + z.literal('astro/assets/services/sharp'), + z.literal('astro/assets/services/squoosh'), + z.string(), + ]) + .default(ASTRO_CONFIG_DEFAULTS.image.service.entrypoint), + config: z.record(z.any()).default({}), + }) + .default(ASTRO_CONFIG_DEFAULTS.image.service), domains: z.array(z.string()).default([]), remotePatterns: z .array( @@ -213,9 +220,7 @@ export const AstroConfigSchema = z.object({ ) .default([]), }) - .default({ - service: { entrypoint: 'astro/assets/services/sharp', config: {} }, - }), + .default(ASTRO_CONFIG_DEFAULTS.image), markdown: z .object({ drafts: z.boolean().default(false), |