From 7f212f0831d8cd899a86fb94899a7cad8ec280db Mon Sep 17 00:00:00 2001 From: Matthew Phillips Date: Thu, 28 Dec 2023 15:08:04 -0500 Subject: [PATCH] Support remote images with encoded characters (#9540) * Support remote images with encoded characters * Add a changeset * Update .changeset/small-snakes-build.md Co-authored-by: Florian Lefebvre --------- Co-authored-by: Florian Lefebvre --- .changeset/small-snakes-build.md | 5 +++++ .../astro/src/assets/utils/transformToPath.ts | 2 +- packages/astro/test/core-image.test.js | 11 ++++++++++- .../documents/ProductCoverImages/ghost.webp | Bin 0 -> 36138 bytes .../core-image-ssg/src/pages/index.astro | 4 ++++ 5 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 .changeset/small-snakes-build.md create mode 100644 packages/astro/test/fixtures/core-image-ssg/public/documents/ProductCoverImages/ghost.webp diff --git a/.changeset/small-snakes-build.md b/.changeset/small-snakes-build.md new file mode 100644 index 000000000000..9f1c9f8ac0ec --- /dev/null +++ b/.changeset/small-snakes-build.md @@ -0,0 +1,5 @@ +--- +"astro": patch +--- + +Fixes remote images with encoded characters diff --git a/packages/astro/src/assets/utils/transformToPath.ts b/packages/astro/src/assets/utils/transformToPath.ts index affeea8eb4ac..dd8d17fbeaf3 100644 --- a/packages/astro/src/assets/utils/transformToPath.ts +++ b/packages/astro/src/assets/utils/transformToPath.ts @@ -10,7 +10,7 @@ export function propsToFilename(transform: ImageTransform, hash: string) { isESMImportedImage(transform.src) ? transform.src.src : transform.src ); const ext = extname(filename); - filename = basename(filename, ext); + filename = decodeURIComponent(basename(filename, ext)); let outputExt = transform.format ? `.${transform.format}` : ext; return `/${filename}_${hash}${outputExt}`; diff --git a/packages/astro/test/core-image.test.js b/packages/astro/test/core-image.test.js index 0d9b690b4817..9dcf0fae5666 100644 --- a/packages/astro/test/core-image.test.js +++ b/packages/astro/test/core-image.test.js @@ -747,7 +747,7 @@ describe('astro:image', () => { root: './fixtures/core-image-ssg/', image: { service: testImageService(), - domains: ['astro.build'], + domains: ['astro.build', 'avatars.githubusercontent.com'], }, }); // Remove cache directory @@ -945,6 +945,15 @@ describe('astro:image', () => { expect(data).to.be.an.instanceOf(Buffer); }); + it('supports images with encoded characters in url', async () => { + const html = await fixture.readFile('/index.html'); + const $ = cheerio.load(html); + const img = $('#encoded-chars img'); + const src = img.attr('src') + const data = await fixture.readFile(src); + expect(data).to.not.be.undefined; + }); + describe('custom service in build', () => { it('uses configured hashes properties', async () => { await fixture.build(); diff --git a/packages/astro/test/fixtures/core-image-ssg/public/documents/ProductCoverImages/ghost.webp b/packages/astro/test/fixtures/core-image-ssg/public/documents/ProductCoverImages/ghost.webp new file mode 100644 index 0000000000000000000000000000000000000000..9c5d391ac3ecb981c355872a815027a43ff14474 GIT binary patch literal 36138 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%0A@bOEfaK2j0JQA=QTkNl27!Ad>Z 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
dqJ|Oz)<{MDs^(90qR2~BYg4$-zlpre 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
?nm|>+4*% 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 literal 0 HcmV?d00001 diff --git a/packages/astro/test/fixtures/core-image-ssg/src/pages/index.astro b/packages/astro/test/fixtures/core-image-ssg/src/pages/index.astro index d7f9b05519a5..43dc5613d2e8 100644 --- a/packages/astro/test/fixtures/core-image-ssg/src/pages/index.astro +++ b/packages/astro/test/fixtures/core-image-ssg/src/pages/index.astro @@ -14,5 +14,9 @@ import myImage from "../assets/penguin1.jpg";
fred
+ +
+ fred2 +