diff --git a/.changeset/eight-deers-repair.md b/.changeset/eight-deers-repair.md new file mode 100644 index 000000000000..653f4080a422 --- /dev/null +++ b/.changeset/eight-deers-repair.md @@ -0,0 +1,5 @@ +--- +'@astrojs/image': minor +--- + +Allows passing alt to getPicture diff --git a/packages/integrations/image/src/lib/get-image.ts b/packages/integrations/image/src/lib/get-image.ts index 3e32e6f3ed17..65526f653d09 100644 --- a/packages/integrations/image/src/lib/get-image.ts +++ b/packages/integrations/image/src/lib/get-image.ts @@ -11,6 +11,7 @@ import type { ImageMetadata } from '../vite-plugin-astro-image.js'; export interface GetImageTransform extends Omit { src: string | ImageMetadata | Promise<{ default: ImageMetadata }>; + alt: string; } function resolveSize(transform: TransformOptions): TransformOptions { diff --git a/packages/integrations/image/src/lib/get-picture.ts b/packages/integrations/image/src/lib/get-picture.ts index d4deebb79f70..37fea6de42cc 100644 --- a/packages/integrations/image/src/lib/get-picture.ts +++ b/packages/integrations/image/src/lib/get-picture.ts @@ -7,6 +7,7 @@ import { getImage } from './get-image.js'; export interface GetPictureParams { src: string | ImageMetadata | Promise<{ default: ImageMetadata }>; + alt: string; widths: number[]; formats: OutputFormat[]; aspectRatio?: TransformOptions['aspectRatio']; @@ -43,7 +44,7 @@ async function resolveFormats({ src, formats }: GetPictureParams) { } export async function getPicture(params: GetPictureParams): Promise { - const { src, widths, fit, position, background } = params; + const { src, alt, widths, fit, position, background } = params; if (!src) { throw new Error('[@astrojs/image] `src` is required'); @@ -71,6 +72,7 @@ export async function getPicture(params: GetPictureParams): Promise { const img = await getImage({ src, + alt, format, width, fit,