From c8626170e6a1d73c28f367a4109cd3ccb252f253 Mon Sep 17 00:00:00 2001 From: FNI18300 <50654937+FNI18300@users.noreply.github.com> Date: Tue, 23 Jun 2026 08:51:54 +0200 Subject: [PATCH] issue-10504 --- web/client/api/catalog/CSW.js | 2 +- web/client/api/catalog/__tests__/CSW-test.js | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/web/client/api/catalog/CSW.js b/web/client/api/catalog/CSW.js index 7dc7f22929d..aecd846e6f3 100644 --- a/web/client/api/catalog/CSW.js +++ b/web/client/api/catalog/CSW.js @@ -90,7 +90,7 @@ function getThumbnailFromDc(dc, options) { const URI = dc?.URI && castArray(dc.URI); let thumbURL; if (URI) { - const thumb = head(URI.filter(uri => uri.name === 'thumbnail')) || head(URI.filter(uri => !uri.name && uri.protocol?.indexOf('image/') > -1)); + const thumb = head(URI.filter(uri => uri.name === 'thumbnail')) || head(URI.filter(uri => uri.protocol?.indexOf('image/') > -1)); thumbURL = thumb ? thumb.value : null; } if (!thumbURL && dc && dc.references) { diff --git a/web/client/api/catalog/__tests__/CSW-test.js b/web/client/api/catalog/__tests__/CSW-test.js index a44b51e6370..cbb5c391e4d 100644 --- a/web/client/api/catalog/__tests__/CSW-test.js +++ b/web/client/api/catalog/__tests__/CSW-test.js @@ -694,6 +694,22 @@ describe('Test correctness of the CSW catalog APIs', () => { expect(records[0].thumbnail).toBe("/thumb"); }); + it('csw with DC thumbnail from dc:URI with non-thumbnail name and image protocol (#10504)', () => { + const cswRecords = [{ + dc: { + URI: [{ + TYPE_NAME: 'DC_1_1.URI', + protocol: 'image/png', + name: 'My description', + value: 'https://site.com/img/fish.png' + }] + } + }]; + const records = getCatalogRecords({ records: cswRecords }, {}); + expect(records.length).toBe(1); + expect(records[0].thumbnail).toBe('https://site.com/img/fish.png'); + }); + it('csw with DC references, no url, with thumbnail, with uri', () => { const cswRecords = [{ dc: {