From 4cf379c9b9b1bdd5b5ceea54238f3d646918d184 Mon Sep 17 00:00:00 2001 From: Igor Octaviano Date: Tue, 27 Aug 2024 08:49:48 -0300 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20SeriesInstanceUID=20fallb?= =?UTF-8?q?ack=20+=20update=20retrieve=20metadata=20filtered=20to=20check?= =?UTF-8?q?=20for=20lazy=20(#4346)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../utils/retrieveMetadataFiltered.js | 22 ++++++++++++------- platform/app/src/routes/Mode/Mode.tsx | 2 +- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js b/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js index a8ba2b18fce..5adc635b5a7 100644 --- a/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js +++ b/extensions/default/src/DicomWebDataSource/utils/retrieveMetadataFiltered.js @@ -39,16 +39,22 @@ function retrieveMetadataFiltered( ); }); - Promise.all(promises).then(results => { - const aggregatedResult = { preLoadData: [], promises: [] }; + if (enableStudyLazyLoad === true) { + Promise.all(promises).then(results => { + const aggregatedResult = { preLoadData: [], promises: [] }; - results.forEach(({ preLoadData, promises }) => { - aggregatedResult.preLoadData = aggregatedResult.preLoadData.concat(preLoadData); - aggregatedResult.promises = aggregatedResult.promises.concat(promises); - }); + results.forEach(({ preLoadData, promises }) => { + aggregatedResult.preLoadData = aggregatedResult.preLoadData.concat(preLoadData); + aggregatedResult.promises = aggregatedResult.promises.concat(promises); + }); - resolve(aggregatedResult); - }, reject); + resolve(aggregatedResult); + }, reject); + } else { + Promise.all(promises).then(results => { + resolve(results.flat()); + }, reject); + } }); } diff --git a/platform/app/src/routes/Mode/Mode.tsx b/platform/app/src/routes/Mode/Mode.tsx index 574520748e9..a73d614a456 100644 --- a/platform/app/src/routes/Mode/Mode.tsx +++ b/platform/app/src/routes/Mode/Mode.tsx @@ -252,7 +252,7 @@ export default function ModeRoute({ Array.from(query.keys()).reduce((acc: Record, val: string) => { const lowerVal = val.toLowerCase(); // Not sure why the case matters here - it doesn't in the URL - if (lowerVal === 'seriesinstanceuids') { + if (lowerVal === 'seriesinstanceuids' || lowerVal === 'seriesinstanceuid') { const seriesUIDs = getSplitParam(lowerVal, query); return { ...acc,