From 6ba2ec9e9cd38e91c5efba1b516bdecb5f75e7fe Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Tue, 10 May 2022 12:02:37 +0200 Subject: [PATCH 01/54] IDC ENH: 2 servers fetching --- platform/core/src/DICOMSR/dataExchange.js | 9 - .../src/DICOMSR/handleStructuredReport.js | 8 +- .../utils/findMostRecentStructuredReport.js | 15 +- .../src/studies/retrieveStudiesMetadata.js | 6 +- .../core/src/studies/retrieveStudyMetadata.js | 28 +-- .../studies/services/wado/retrieveMetadata.js | 35 +-- platform/viewer/public/config/default.js | 23 +- platform/viewer/src/OHIFStandaloneViewer.js | 19 +- .../connectedComponents/ConnectedViewer.js | 15 +- .../ConnectedViewerRetrieveStudyData.js | 7 +- .../viewer/src/connectedComponents/Viewer.js | 31 ++- .../src/connectedComponents/ViewerMain.js | 8 +- .../ViewerRetrieveStudyData.js | 232 +++++++++++------- platform/viewer/src/customHooks/useServer.js | 16 +- .../src/googleCloud/utils/getServers.js | 1 + platform/viewer/src/routes/routesUtil.js | 44 +++- 16 files changed, 308 insertions(+), 189 deletions(-) diff --git a/platform/core/src/DICOMSR/dataExchange.js b/platform/core/src/DICOMSR/dataExchange.js index 0d2b66630e1..8006b75faea 100644 --- a/platform/core/src/DICOMSR/dataExchange.js +++ b/platform/core/src/DICOMSR/dataExchange.js @@ -7,14 +7,6 @@ import { } from './handleStructuredReport'; import findMostRecentStructuredReport from './utils/findMostRecentStructuredReport'; -/** - * - * @typedef serverType - * @property {string} type - type of the server - * @property {string} wadoRoot - server wado root url - * - */ - /** * Function to be registered into MeasurementAPI to retrieve measurements from DICOM Structured Reports * @@ -32,7 +24,6 @@ const retrieveMeasurements = (server, external = {}) => { const serverUrl = server.wadoRoot; const studies = utils.studyMetadataManager.all(); - const latestSeries = findMostRecentStructuredReport(studies); if (!latestSeries) return Promise.resolve({}); diff --git a/platform/core/src/DICOMSR/handleStructuredReport.js b/platform/core/src/DICOMSR/handleStructuredReport.js index d3306fa5a70..167bc405e47 100644 --- a/platform/core/src/DICOMSR/handleStructuredReport.js +++ b/platform/core/src/DICOMSR/handleStructuredReport.js @@ -35,11 +35,11 @@ const retrieveMeasurementFromSR = async ( const dicomWeb = new api.DICOMwebClient(config); - const instance = series.getFirstInstance(); + const instance = series.instances[0]; const options = { - studyInstanceUID: instance.getStudyInstanceUID(), - seriesInstanceUID: instance.getSeriesInstanceUID(), - sopInstanceUID: instance.getSOPInstanceUID(), + studyInstanceUID: instance.metadata.StudyInstanceUID, + seriesInstanceUID: instance.metadata.SeriesInstanceUID, + sopInstanceUID: instance.metadata.SOPInstanceUID, }; const part10SRArrayBuffer = await dicomWeb.retrieveInstance(options); diff --git a/platform/core/src/DICOMSR/utils/findMostRecentStructuredReport.js b/platform/core/src/DICOMSR/utils/findMostRecentStructuredReport.js index 8c9bd9cec8d..c3a5c79bcce 100644 --- a/platform/core/src/DICOMSR/utils/findMostRecentStructuredReport.js +++ b/platform/core/src/DICOMSR/utils/findMostRecentStructuredReport.js @@ -8,12 +8,13 @@ const findMostRecentStructuredReport = studies => { let mostRecentStructuredReport; studies.forEach(study => { - const allSeries = study.getSeries ? study.getSeries() : []; + const allData = study.getData ? study.getData() : []; + const allSeries = allData.series; allSeries.forEach(series => { // Skip series that may not have instances yet // This can happen if we have retrieved just the initial // details about the series via QIDO-RS, but not the full metadata - if (!series || series.getInstanceCount() === 0) { + if (!series || !series.instances || series.instances.length === 0) { return; } @@ -44,8 +45,8 @@ const isStructuredReportSeries = series => { '1.2.840.10008.5.1.4.1.1.88.34', // COMPREHENSIVE_3D_SR ]; - const firstInstance = series.getFirstInstance(); - const SOPClassUID = firstInstance.getData().metadata.SOPClassUID; + const firstInstance = series.instances[0]; + const SOPClassUID = firstInstance.metadata.SOPClassUID; return supportedSopClassUIDs.includes(SOPClassUID); }; @@ -59,9 +60,9 @@ const isStructuredReportSeries = series => { */ const compareSeriesDate = (series1, series2) => { return ( - series1._data.SeriesDate > series2._data.SeriesDate || - (series1._data.SeriesDate === series2._data.SeriesDate && - series1._data.SeriesTime > series2._data.SeriesTime) + series1.SeriesDate > series2.SeriesDate || + (series1.SeriesDate === series2.SeriesDate && + series1.SeriesTime > series2.SeriesTime) ); }; diff --git a/platform/core/src/studies/retrieveStudiesMetadata.js b/platform/core/src/studies/retrieveStudiesMetadata.js index e6ffd730932..e1cf6c3794c 100644 --- a/platform/core/src/studies/retrieveStudiesMetadata.js +++ b/platform/core/src/studies/retrieveStudiesMetadata.js @@ -7,7 +7,7 @@ import { retrieveStudyMetadata } from './retrieveStudyMetadata'; * This function calls retrieveStudyMetadata several times, asynchronously, * and waits for all of the results to be returned. * - * @param {Object} server Object with server configuration parameters + * @param {Array} servers array with server Objects with server configuration parameters * @param {Array} studyInstanceUIDs The UIDs of the Studies to be retrieved * @param {Object} [filters] - Object containing filters to be applied on retrieve metadata process * @param {string} [filter.seriesInstanceUID] - series instance uid to filter results against @@ -16,7 +16,7 @@ import { retrieveStudyMetadata } from './retrieveStudyMetadata'; * @returns {Promise} that will be resolved with the metadata or rejected with the error */ export default function retrieveStudiesMetadata( - server, + servers, studyInstanceUIDs, filters, separateSeriesInstanceUIDFilters = false @@ -28,7 +28,7 @@ export default function retrieveStudiesMetadata( studyInstanceUIDs.forEach(function(StudyInstanceUID) { // Send the call and resolve or reject the related promise based on its outcome const promise = retrieveStudyMetadata( - server, + servers, StudyInstanceUID, filters, separateSeriesInstanceUIDFilters diff --git a/platform/core/src/studies/retrieveStudyMetadata.js b/platform/core/src/studies/retrieveStudyMetadata.js index ad931ef1239..4a818b8e25f 100644 --- a/platform/core/src/studies/retrieveStudyMetadata.js +++ b/platform/core/src/studies/retrieveStudyMetadata.js @@ -7,7 +7,7 @@ const StudyMetaDataPromises = new Map(); /** * Retrieves study metadata * - * @param {Object} server Object with server configuration parameters + * @param {Array} servers array with server Objects with server configuration parameters * @param {string} StudyInstanceUID The UID of the Study to be retrieved * @param {Object} [filters] - Object containing filters to be applied on retrieve metadata process * @param {string} [filter.seriesInstanceUID] - series instance uid to filter results against @@ -16,7 +16,7 @@ const StudyMetaDataPromises = new Map(); * @returns {Promise} that will be resolved with the metadata or rejected with the error */ export function retrieveStudyMetadata( - server, + servers, StudyInstanceUID, filters, separateSeriesInstanceUIDFilters = false @@ -25,8 +25,10 @@ export function retrieveStudyMetadata( // and further requests for that metadata will always fail. On failure, we probably need to remove the // corresponding promise from the "StudyMetaDataPromises" map... - if (!server) { - throw new Error(`${moduleName}: Required 'server' parameter not provided.`); + if (!servers) { + throw new Error( + `${moduleName}: Required 'servers' parameter not provided.` + ); } if (!StudyInstanceUID) { throw new Error( @@ -48,20 +50,12 @@ export function retrieveStudyMetadata( separateSeriesInstanceUIDFilters ) { promise = __separateSeriesRequestToAggregatePromiseateSeriesRequestToAggregatePromise( - server, + servers, StudyInstanceUID, filters ); } else { - promise = RetrieveMetadata(server, StudyInstanceUID, filters); - - /* - promise = new Promise((resolve, reject) => { - RetrieveMetadata(server, StudyInstanceUID, filters).then(function(data) { - resolve(data); - }, reject); - }); - */ + promise = RetrieveMetadata(servers, StudyInstanceUID, filters); } // Store the promise in cache @@ -72,12 +66,12 @@ export function retrieveStudyMetadata( /** * Splits up seriesInstanceUID filters to multiple calls for platforms - * @param {Object} server Object with server configuration parameters + * @param {Array} servers array with server Objects with server configuration parameters * @param {string} StudyInstanceUID The UID of the Study to be retrieved * @param {Object} filters - Object containing filters to be applied on retrieve metadata process */ function __separateSeriesRequestToAggregatePromiseateSeriesRequestToAggregatePromise( - server, + servers, StudyInstanceUID, filters ) { @@ -93,7 +87,7 @@ function __separateSeriesRequestToAggregatePromiseateSeriesRequestToAggregatePro }); promises.push( - RetrieveMetadata(server, StudyInstanceUID, seriesSpecificFilters) + RetrieveMetadata(servers, StudyInstanceUID, seriesSpecificFilters) ); }); diff --git a/platform/core/src/studies/services/wado/retrieveMetadata.js b/platform/core/src/studies/services/wado/retrieveMetadata.js index f3c544450ef..3a25e3e7d81 100644 --- a/platform/core/src/studies/services/wado/retrieveMetadata.js +++ b/platform/core/src/studies/services/wado/retrieveMetadata.js @@ -5,26 +5,33 @@ import RetrieveMetadataLoaderAsync from './retrieveMetadataLoaderAsync'; * Retrieve Study metadata from a DICOM server. If the server is configured to use lazy load, only the first series * will be loaded and the property "studyLoader" will be set to let consumer load remaining series as needed. * - * @param {Object} server Object with server configuration parameters + * @param {Array} servers array with server Objects with server configuration parameters * @param {string} StudyInstanceUID The Study Instance UID of the study which needs to be loaded * @param {Object} [filters] - Object containing filters to be applied on retrieve metadata process * @param {string} [filter.seriesInstanceUID] - series instance uid to filter results against - * @returns {Object} A study descriptor object + * @returns {Array} A study descriptor object for each server */ -async function RetrieveMetadata(server, StudyInstanceUID, filters = {}) { - const RetrieveMetadataLoader = - server.enableStudyLazyLoad != false - ? RetrieveMetadataLoaderAsync - : RetrieveMetadataLoaderSync; +async function RetrieveMetadata(servers, StudyInstanceUID, filters = {}) { + return new Promise((resolve, reject) => { + const studyMetadataPromises = servers.map(server => { + const RetrieveMetadataLoader = + server.enableStudyLazyLoad != false + ? RetrieveMetadataLoaderAsync + : RetrieveMetadataLoaderSync; - const retrieveMetadataLoader = new RetrieveMetadataLoader( - server, - StudyInstanceUID, - filters - ); - const studyMetadata = retrieveMetadataLoader.execLoad(); + const retrieveMetadataLoader = new RetrieveMetadataLoader( + server, + StudyInstanceUID, + filters + ); + const studyMetadataPromise = retrieveMetadataLoader.execLoad(); + return studyMetadataPromise; + }); - return studyMetadata; + Promise.all(studyMetadataPromises).then(results => { + resolve(results); + }, reject); + }); } export default RetrieveMetadata; diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index bb80b6381d2..5cf863b9a57 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -18,7 +18,7 @@ window.config = { servers: { dicomWeb: [ { - name: 'DCM4CHEE', + name: 'dcmjs', wadoUriRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/wado', qidoRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs', wadoRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs', @@ -26,10 +26,29 @@ window.config = { imageRendering: 'wadors', thumbnailRendering: 'wadors', enableStudyLazyLoad: true, - supportsFuzzyMatching: true, }, ], }, + enableGoogleCloudAdapter: true, + healthcareApiEndpoint: 'https://healthcare.googleapis.com/v1', + oidc: [ + { + // ~ REQUIRED + // Authorization Server URL + authority: 'https://accounts.google.com', + client_id: + 'YOURCLIENTID.apps.googleusercontent.com', + redirect_uri: '/callback', // `OHIFStandaloneViewer.js` + response_type: 'id_token token', + scope: + 'email profile openid https://www.googleapis.com/auth/cloudplatformprojects.readonly https://www.googleapis.com/auth/cloud-healthcare', // email profile openid + // ~ OPTIONAL + post_logout_redirect_uri: '/logout-redirect.html', + revoke_uri: 'https://accounts.google.com/o/oauth2/revoke?token=', + automaticSilentRenew: true, + revokeAccessTokenOnSignout: true, + }, + ], // Extensions should be able to suggest default values for these? // Or we can require that these be explicitly set diff --git a/platform/viewer/src/OHIFStandaloneViewer.js b/platform/viewer/src/OHIFStandaloneViewer.js index ae3af51ad3b..33bf5355b0c 100644 --- a/platform/viewer/src/OHIFStandaloneViewer.js +++ b/platform/viewer/src/OHIFStandaloneViewer.js @@ -5,7 +5,12 @@ import { Route, Switch } from 'react-router-dom'; import { NProgress } from '@tanem/react-nprogress'; import { CSSTransition } from 'react-transition-group'; import { connect } from 'react-redux'; -import { ViewerbaseDragDropContext, ErrorBoundary, asyncComponent, retryImport } from '@ohif/ui'; +import { + ViewerbaseDragDropContext, + ErrorBoundary, + asyncComponent, + retryImport, +} from '@ohif/ui'; import { SignoutCallbackComponent } from 'redux-oidc'; import * as RoutesUtil from './routes/routesUtil'; @@ -17,7 +22,9 @@ import './theme-tide.css'; // Contexts import AppContext from './context/AppContext'; const CallbackPage = asyncComponent(() => - retryImport(() => import(/* webpackChunkName: "CallbackPage" */ './routes/CallbackPage.js')) + retryImport(() => + import(/* webpackChunkName: "CallbackPage" */ './routes/CallbackPage.js') + ) ); class OHIFStandaloneViewer extends Component { @@ -202,10 +209,10 @@ class OHIFStandaloneViewer extends Component { {match === null ? ( <> ) : ( - - - - )} + + + + )} )} diff --git a/platform/viewer/src/connectedComponents/ConnectedViewer.js b/platform/viewer/src/connectedComponents/ConnectedViewer.js index a2373d6705d..1bc6ee67fcf 100644 --- a/platform/viewer/src/connectedComponents/ConnectedViewer.js +++ b/platform/viewer/src/connectedComponents/ConnectedViewer.js @@ -6,7 +6,20 @@ const { setTimepoints, setMeasurements } = OHIF.redux.actions; const getActiveServer = servers => { const isActive = a => a.active === true; - return servers.servers.find(isActive); + const isGoogleStore = a => a.isGoogleStore === true; + + let activeServers = 0; + servers.servers.forEach(server => { + if (server.active === true) { + activeServers = activeServers + 1; + } + }); + + if (activeServers > 1) { + return servers.servers.find(isActive && isGoogleStore); + } else { + return servers.servers.find(isActive); + } }; const mapStateToProps = state => { diff --git a/platform/viewer/src/connectedComponents/ConnectedViewerRetrieveStudyData.js b/platform/viewer/src/connectedComponents/ConnectedViewerRetrieveStudyData.js index f675e9ef1a0..c41874a65f3 100644 --- a/platform/viewer/src/connectedComponents/ConnectedViewerRetrieveStudyData.js +++ b/platform/viewer/src/connectedComponents/ConnectedViewerRetrieveStudyData.js @@ -3,13 +3,10 @@ import ViewerRetrieveStudyData from './ViewerRetrieveStudyData.js'; import OHIF from '@ohif/core'; const { clearViewportSpecificData, setStudyData } = OHIF.redux.actions; -const isActive = a => a.active === true; - -const mapStateToProps = (state, ownProps) => { - const activeServer = state.servers.servers.find(isActive); +const mapStateToProps = state => { return { - server: ownProps.server || activeServer, + servers: state.servers.servers, }; }; const mapDispatchToProps = dispatch => { diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index bdd0e6238a7..48d42f8df8f 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -67,19 +67,6 @@ class Viewer extends Component { constructor(props) { super(props); - const { activeServer } = this.props; - const server = Object.assign({}, activeServer); - - const external = { servicesManager }; - - OHIF.measurements.MeasurementApi.setConfiguration({ - dataExchange: { - retrieve: server => DICOMSR.retrieveMeasurements(server, external), - store: DICOMSR.storeMeasurements, - }, - server, - }); - OHIF.measurements.TimepointApi.setConfiguration({ dataExchange: { retrieve: this.retrieveTimepoints, @@ -197,8 +184,8 @@ class Viewer extends Component { if (studies) { const PatientID = studies[0] && studies[0].PatientID; - timepointApi.retrieveTimepoints({ PatientID }); if (isStudyLoaded) { + timepointApi.retrieveTimepoints({ PatientID }); this.measurementApi.retrieveMeasurements(PatientID, [ currentTimepointId, ]); @@ -231,8 +218,8 @@ class Viewer extends Component { isStudyLoaded, activeViewportIndex, viewports, + activeServer, } = this.props; - const activeViewport = viewports[activeViewportIndex]; const activeDisplaySetInstanceUID = activeViewport ? activeViewport.displaySetInstanceUID @@ -257,7 +244,19 @@ class Viewer extends Component { activeDisplaySetInstanceUID, }); } - if (isStudyLoaded && isStudyLoaded !== prevProps.isStudyLoaded) { + if (prevProps.studies !== studies && studies.length !== 0) { + const server = Object.assign({}, activeServer); + console.info('bella4', server, studies); + const external = { servicesManager }; + + OHIF.measurements.MeasurementApi.setConfiguration({ + dataExchange: { + retrieve: server => DICOMSR.retrieveMeasurements(server, external), + store: DICOMSR.storeMeasurements, + }, + server, + }); + const PatientID = studies[0] && studies[0].PatientID; const { currentTimepointId } = this; diff --git a/platform/viewer/src/connectedComponents/ViewerMain.js b/platform/viewer/src/connectedComponents/ViewerMain.js index 6b0a7b8b93b..d035e34cd82 100644 --- a/platform/viewer/src/connectedComponents/ViewerMain.js +++ b/platform/viewer/src/connectedComponents/ViewerMain.js @@ -50,9 +50,11 @@ class ViewerMain extends Component { return; } - return study.displaySets.find(displaySet => { + const displaySet = study.displaySets.find(displaySet => { return displaySet.displaySetInstanceUID === displaySetInstanceUID; }); + + return displaySet; } componentDidMount() { @@ -139,6 +141,10 @@ class ViewerMain extends Component { displaySetInstanceUID ); + if (!displaySet) { + return; + } + const { LoggerService, UINotificationService } = servicesManager.services; if (displaySet.isDerived) { diff --git a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js index 0c5ad2248cf..b1d7cf58012 100644 --- a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js +++ b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js @@ -12,8 +12,8 @@ import AppContext from '../context/AppContext'; import NotFound from '../routes/NotFound'; const { OHIFStudyMetadata, OHIFSeriesMetadata } = metadata; -const { retrieveStudiesMetadata, deleteStudyMetadataPromise } = studies; -const { studyMetadataManager, makeCancelable } = utils; +const { retrieveStudiesMetadata } = studies; +const { studyMetadataManager } = utils; const _promoteToFront = (list, values, searchMethod) => { let listCopy = [...list]; @@ -171,8 +171,6 @@ const _addSeriesToStudy = (studyMetadata, series) => { study.derivedDisplaySets = studyMetadata.getDerivedDatasets({ Modality: series.Modality, }); - - _updateStudyMetadataManager(study, studyMetadata); }; const _updateStudyMetadataManager = (study, studyMetadata) => { @@ -181,15 +179,6 @@ const _updateStudyMetadataManager = (study, studyMetadata) => { if (!studyMetadataManager.get(StudyInstanceUID)) { studyMetadataManager.add(studyMetadata); } -}; - -const _updateStudyDisplaySets = (study, studyMetadata) => { - const sopClassHandlerModules = - extensionManager.modules['sopClassHandlerModule']; - - if (!study.displaySets) { - study.displaySets = studyMetadata.createDisplaySets(sopClassHandlerModules); - } if (study.derivedDisplaySets) { studyMetadata._addDerivedDisplaySets(study.derivedDisplaySets); @@ -206,7 +195,7 @@ const _thinStudyData = study => { }; function ViewerRetrieveStudyData({ - server, + servers, studyInstanceUIDs, seriesInstanceUIDs, clearViewportSpecificData, @@ -223,8 +212,6 @@ function ViewerRetrieveStudyData({ maxConcurrentMetadataRequests, } = appConfig; - let cancelableSeriesPromises; - let cancelableStudiesPromises; /** * Callback method when study is totally loaded * @param {object} study study loaded @@ -257,52 +244,154 @@ function ViewerRetrieveStudyData({ 'Query parameters were not totally applied. It might be using original series list for given study.', snackbarContext ); - - setStudies([...studies, study]); }; /** * Method to process studies. It will update displaySet, studyMetadata, load remaining series, ... - * @param {Array} studiesData Array of studies retrieved from server + * @param {Array} studiesData Array of studies retrieved from server, each study is an array (each element is a server) * @param {Object} [filters] - Object containing filters to be applied * @param {string} [filters.seriesInstanceUID] - series instance uid to filter results against */ - const processStudies = (studiesData, filters) => { + const processStudies = async (studiesData, filters) => { + studiesData = [].concat(...studiesData); if (Array.isArray(studiesData) && studiesData.length > 0) { // Map studies to new format, update metadata manager? - const studies = studiesData.map(study => { - setStudyData(study.StudyInstanceUID, _thinStudyData(study)); + const studiesLoading = await Promise.all( + await studiesData.map(async study => { + const studyMetadata = new OHIFStudyMetadata( + study, + study.StudyInstanceUID + ); + + // Attempt to load remaning series if any + try { + await loadRemainingSeries(studyMetadata); + } catch (error) { + if (error) { + setError(error); + log.error(error); + } + } + + return study; + }) + ); + + // for one StudyUID we could have N study object at this point (for N server). + // we merge them in 1 unique study, since OHIF-v2 assume only one object for each StudyUID. + // duplicate series will be removed. + let mergedStudies = []; + for (let i = 0; i < studiesLoading.length; i++) { + const study = studiesLoading[i]; const studyMetadata = new OHIFStudyMetadata( study, study.StudyInstanceUID ); - _updateStudyDisplaySets(study, studyMetadata); - _updateStudyMetadataManager(study, studyMetadata); + _addSeriesToStudy(studyMetadata, study.series[0]); - // Attempt to load remaning series if any - cancelableSeriesPromises[study.StudyInstanceUID] = makeCancelable( - loadRemainingSeries(studyMetadata) - ) - .then(result => { - if (result && !result.isCanceled) { - studyDidLoad(study, studyMetadata, filters); - } - }) - .catch(error => { - if (error && !error.isCanceled) { - setError(error); - log.error(error); + if (mergedStudies.length !== 0) { + const found = mergedStudies.find( + mergedStudy => + mergedStudy.StudyInstanceUID === study.StudyInstanceUID + ); + + if (found !== -1) { + continue; + } + } + + for (let j = 0; j < studiesLoading.length; j++) { + if (i === j) { + continue; + } + + const comparedStudy = studiesLoading[j]; + if (study.StudyInstanceUID !== comparedStudy.StudyInstanceUID) { + continue; + } + + if (comparedStudy.series && comparedStudy.series.length !== 0) { + comparedStudy.series.forEach(series => { + if (study.series.length !== 0) { + const found = study.series.find( + studySeries => + studySeries.SeriesInstanceUID === series.SeriesInstanceUID + ); + if (found) { + return; + } + } + + study.series.push(series); + _addSeriesToStudy(studyMetadata, series); + }); + } + + if ( + comparedStudy.derivedDisplaySets && + comparedStudy.derivedDisplaySets.length !== 0 + ) { + comparedStudy.derivedDisplaySets.forEach(derivedDisplaySet => { + if (study.derivedDisplaySets.length !== 0) { + const found = study.derivedDisplaySets.find( + studyDerivedDisplaySet => + studyDerivedDisplaySet.SeriesInstanceUID === + derivedDisplaySet.SeriesInstanceUID + ); + if (found) { + return; + } + } + + study.derivedDisplaySets.push(derivedDisplaySet); + }); + } + + if ( + comparedStudy.displaySets && + comparedStudy.displaySets.length !== 0 + ) { + comparedStudy.displaySets.forEach(displaySet => { + if (study.displaySets.length !== 0) { + const found = study.displaySets.find( + studyDisplaySet => + studyDisplaySet.SeriesInstanceUID === + displaySet.SeriesInstanceUID + ); + if (found) { + return; + } + } + + study.displaySets.push(displaySet); + }); + } + + if (comparedStudy.seriesMap) { + for (let key in comparedStudy.seriesMap) { + for (let prop in study.seriesMap) { + if (prop === key) { + continue; + } + } + + study.seriesMap[key] = comparedStudy.seriesMap[key]; } - }) - .finally(() => { - setIsStudyLoaded(true); - }); + } + } - return study; - }); + study.displaySets.forEach(displaySet => { + studyMetadata.addDisplaySet(displaySet); + }); - setStudies(studies); + _updateStudyMetadataManager(study, studyMetadata); + setStudyData(study.StudyInstanceUID, _thinStudyData(study)); + studyDidLoad(study, studyMetadata, filters); + mergedStudies.push(study); + } + + setStudies(mergedStudies); } }; @@ -330,12 +419,12 @@ function ViewerRetrieveStudyData({ return remainingPromises; }; - const loadStudies = async () => { + const loadStudies = useCallback(async () => { try { const filters = {}; // Use the first, discard others const seriesInstanceUID = seriesInstanceUIDs && seriesInstanceUIDs[0]; - const retrieveParams = [server, studyInstanceUIDs]; + const retrieveParams = [servers, studyInstanceUIDs]; if (seriesInstanceUID) { filters.seriesInstanceUID = seriesInstanceUID; @@ -352,42 +441,22 @@ function ViewerRetrieveStudyData({ retrieveParams.push(true); // Seperate SeriesInstanceUID filter calls. } - cancelableStudiesPromises[studyInstanceUIDs] = makeCancelable( - retrieveStudiesMetadata(...retrieveParams) - ) - .then(result => { - if (result && !result.isCanceled) { - processStudies(result, filters); - } - }) - .catch(error => { - if (error && !error.isCanceled) { - setError(error); - log.error(error); - } - }); + try { + const result = await retrieveStudiesMetadata(...retrieveParams); + await processStudies(result, filters); + setIsStudyLoaded(true); + } catch (error) { + if (error) { + setError(error); + log.error(error); + } + } } catch (error) { if (error) { setError(error); log.error(error); } } - }; - - const purgeCancellablePromises = useCallback(() => { - for (let studyInstanceUIDs in cancelableStudiesPromises) { - if ('cancel' in cancelableStudiesPromises[studyInstanceUIDs]) { - cancelableStudiesPromises[studyInstanceUIDs].cancel(); - } - } - - for (let studyInstanceUIDs in cancelableSeriesPromises) { - if ('cancel' in cancelableSeriesPromises[studyInstanceUIDs]) { - cancelableSeriesPromises[studyInstanceUIDs].cancel(); - deleteStudyMetadataPromise(studyInstanceUIDs); - studyMetadataManager.remove(studyInstanceUIDs); - } - } }); const prevStudyInstanceUIDs = usePrevious(studyInstanceUIDs); @@ -400,18 +469,13 @@ function ViewerRetrieveStudyData({ if (hasStudyInstanceUIDsChanged) { studyMetadataManager.purge(); - purgeCancellablePromises(); } - }, [prevStudyInstanceUIDs, purgeCancellablePromises, studyInstanceUIDs]); + }, [prevStudyInstanceUIDs, studyInstanceUIDs]); useEffect(() => { - cancelableSeriesPromises = {}; - cancelableStudiesPromises = {}; loadStudies(); - return () => { - purgeCancellablePromises(); - }; + return () => {}; }, []); if (error) { @@ -435,7 +499,7 @@ function ViewerRetrieveStudyData({ ViewerRetrieveStudyData.propTypes = { studyInstanceUIDs: PropTypes.array.isRequired, seriesInstanceUIDs: PropTypes.array, - server: PropTypes.object, + servers: PropTypes.object, clearViewportSpecificData: PropTypes.func.isRequired, setStudyData: PropTypes.func.isRequired, }; diff --git a/platform/viewer/src/customHooks/useServer.js b/platform/viewer/src/customHooks/useServer.js index b3d93e6b4bb..d49f55306ac 100644 --- a/platform/viewer/src/customHooks/useServer.js +++ b/platform/viewer/src/customHooks/useServer.js @@ -4,7 +4,6 @@ import usePrevious from './usePrevious'; import * as GoogleCloudUtilServers from '../googleCloud/utils/getServers'; import { useSelector, useDispatch } from 'react-redux'; -import isEqual from 'lodash.isequal'; // Contexts import AppContext from '../context/AppContext'; @@ -64,11 +63,7 @@ const useServerFromUrl = ( previousServers, activeServer, urlBasedServers, - appConfig, - project, - location, - dataset, - dicomStore + appConfig ) => { // update state from url available only when gcloud on if (!appConfig.enableGoogleCloudAdapter) { @@ -109,7 +104,6 @@ export default function useServer({ const servers = useSelector(state => state && state.servers); const previousServers = usePrevious(servers); const dispatch = useDispatch(); - const { appConfig = {} } = useContext(AppContext); const activeServer = getActiveServer(servers); @@ -128,8 +122,14 @@ export default function useServer({ ); if (shouldUpdateServer) { - setServers(dispatch, urlBasedServers); + const mergedServers = [...servers.servers, ...urlBasedServers]; + setServers(dispatch, mergedServers); + return mergedServers[0]; } else if (isValidServer(activeServer, appConfig)) { return activeServer; } + + if (servers.servers && servers.servers.length > 0) { + return servers.servers[0]; + } } diff --git a/platform/viewer/src/googleCloud/utils/getServers.js b/platform/viewer/src/googleCloud/utils/getServers.js index 8fcac04e114..b84204754a8 100644 --- a/platform/viewer/src/googleCloud/utils/getServers.js +++ b/platform/viewer/src/googleCloud/utils/getServers.js @@ -20,6 +20,7 @@ const getServers = (data, name) => { thumbnailRendering: 'wadors', type: 'dicomWeb', active: true, + isGoogleStore: true, wadoUriRoot, qidoRoot, wadoRoot, diff --git a/platform/viewer/src/routes/routesUtil.js b/platform/viewer/src/routes/routesUtil.js index 8601edf1035..4ed17bdc12b 100644 --- a/platform/viewer/src/routes/routesUtil.js +++ b/platform/viewer/src/routes/routesUtil.js @@ -6,27 +6,37 @@ const { urlUtil: UrlUtil } = OHIF.utils; // Dynamic Import Routes (CodeSplitting) const IHEInvokeImageDisplay = asyncComponent(() => retryImport(() => - import(/* webpackChunkName: "IHEInvokeImageDisplay" */ './IHEInvokeImageDisplay.js') + import( + /* webpackChunkName: "IHEInvokeImageDisplay" */ './IHEInvokeImageDisplay.js' + ) ) ); const ViewerRouting = asyncComponent(() => - retryImport(() => import(/* webpackChunkName: "ViewerRouting" */ './ViewerRouting.js')) + retryImport(() => + import(/* webpackChunkName: "ViewerRouting" */ './ViewerRouting.js') + ) ); const StudyListRouting = asyncComponent(() => - retryImport(() => import( - /* webpackChunkName: "StudyListRouting" */ '../studylist/StudyListRouting.js' - )) + retryImport(() => + import( + /* webpackChunkName: "StudyListRouting" */ '../studylist/StudyListRouting.js' + ) + ) ); const StandaloneRouting = asyncComponent(() => - retryImport(() => import( - /* webpackChunkName: "ConnectedStandaloneRouting" */ '../connectedComponents/ConnectedStandaloneRouting.js' - )) + retryImport(() => + import( + /* webpackChunkName: "ConnectedStandaloneRouting" */ '../connectedComponents/ConnectedStandaloneRouting.js' + ) + ) ); const ViewerLocalFileData = asyncComponent(() => - retryImport(() => import( - /* webpackChunkName: "ViewerLocalFileData" */ '../connectedComponents/ViewerLocalFileData.js' - )) + retryImport(() => + import( + /* webpackChunkName: "ViewerLocalFileData" */ '../connectedComponents/ViewerLocalFileData.js' + ) + ) ); const reload = () => window.location.reload(); @@ -54,7 +64,7 @@ const ROUTES_DEF = { }, IHEInvokeImageDisplay: { path: '/IHEInvokeImageDisplay', - component: IHEInvokeImageDisplay + component: IHEInvokeImageDisplay, }, }, gcloud: { @@ -77,6 +87,16 @@ const ROUTES_DEF = { }, }, }, + defaultAndgcloud: { + viewer: { + path: + '/viewer/:studyInstanceUIDs!secondGoogleServer=/projects/:project/locations/:location/datasets/:dataset/dicomStores/:dicomStore/study/:studyInstanceUIDs', + component: ViewerRouting, + condition: appConfig => { + return !!appConfig.enableGoogleCloudAdapter; + }, + }, + }, }; const getRoutes = appConfig => { From 78acc031f32dc716491862513daf553fa0fe7699 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Fri, 13 May 2022 12:09:01 +0200 Subject: [PATCH 02/54] minor fixes --- .../core/src/studies/retrieveStudyMetadata.js | 24 +++++++++---------- platform/core/src/utils/urlUtil.js | 6 ++++- platform/viewer/public/config/default.js | 16 ++++++++----- .../viewer/src/connectedComponents/Viewer.js | 1 - .../ViewerRetrieveStudyData.js | 8 ++++--- platform/viewer/src/index.js | 8 +++---- platform/viewer/src/routes/routesUtil.js | 2 +- 7 files changed, 37 insertions(+), 28 deletions(-) diff --git a/platform/core/src/studies/retrieveStudyMetadata.js b/platform/core/src/studies/retrieveStudyMetadata.js index 4a818b8e25f..5e6c7a078f0 100644 --- a/platform/core/src/studies/retrieveStudyMetadata.js +++ b/platform/core/src/studies/retrieveStudyMetadata.js @@ -78,6 +78,9 @@ function __separateSeriesRequestToAggregatePromiseateSeriesRequestToAggregatePro const { seriesInstanceUID } = filters; const seriesInstanceUIDs = seriesInstanceUID.split(','); + const googleServers = servers.filter(server => server.isGoogleStore === true); + const nonGoogleServers = servers.filter(server => !server.isGoogleStore); + return new Promise((resolve, reject) => { const promises = []; @@ -87,22 +90,19 @@ function __separateSeriesRequestToAggregatePromiseateSeriesRequestToAggregatePro }); promises.push( - RetrieveMetadata(servers, StudyInstanceUID, seriesSpecificFilters) + RetrieveMetadata( + nonGoogleServers, + StudyInstanceUID, + seriesSpecificFilters + ) ); }); - Promise.all(promises).then(results => { - const data = results[0]; - - let series = []; + promises.push(RetrieveMetadata(googleServers, StudyInstanceUID)); - results.forEach(result => { - series = [...series, ...result.series]; - }); - - data.series = series; - - resolve(data); + Promise.all(promises).then(results => { + results = [].concat(...results); + resolve(results); }, reject); }); } diff --git a/platform/core/src/utils/urlUtil.js b/platform/core/src/utils/urlUtil.js index ddc91ac9b5b..6168f5f78da 100644 --- a/platform/core/src/utils/urlUtil.js +++ b/platform/core/src/utils/urlUtil.js @@ -40,8 +40,12 @@ const parse = toParse => { return {}; }; const parseParam = paramStr => { - const _paramDecoded = decode(paramStr); + let _paramDecoded = decode(paramStr); if (_paramDecoded && typeof _paramDecoded === 'string') { + const indexOfFirst = _paramDecoded.indexOf('!secondGoogleServer='); + if (indexOfFirst !== -1) { + _paramDecoded = _paramDecoded.substring(0, indexOfFirst); + } return _paramDecoded.split(PARAM_SEPARATOR); } }; diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index 5cf863b9a57..f1a5be161a2 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -3,7 +3,7 @@ window.config = { routerBasename: '/', extensions: [], showStudyList: true, - filterQueryParam: false, + filterQueryParam: true, disableServersCache: false, studyPrefetcher: { enabled: true, @@ -18,10 +18,13 @@ window.config = { servers: { dicomWeb: [ { - name: 'dcmjs', - wadoUriRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/wado', - qidoRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs', - wadoRoot: 'https://server.dcmjs.org/dcm4chee-arc/aets/DCM4CHEE/rs', + name: 'IDC', + wadoUriRoot: + 'https://dev-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + qidoRoot: + 'https://dev-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + wadoRoot: + 'https://dev-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoSupportsIncludeField: true, imageRendering: 'wadors', thumbnailRendering: 'wadors', @@ -29,6 +32,7 @@ window.config = { }, ], }, + enableGoogleCloudAdapter: true, healthcareApiEndpoint: 'https://healthcare.googleapis.com/v1', oidc: [ @@ -37,7 +41,7 @@ window.config = { // Authorization Server URL authority: 'https://accounts.google.com', client_id: - 'YOURCLIENTID.apps.googleusercontent.com', + 'client_id.apps.googleusercontent.com', redirect_uri: '/callback', // `OHIFStandaloneViewer.js` response_type: 'id_token token', scope: diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index 48d42f8df8f..97a4a3f75dd 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -246,7 +246,6 @@ class Viewer extends Component { } if (prevProps.studies !== studies && studies.length !== 0) { const server = Object.assign({}, activeServer); - console.info('bella4', server, studies); const external = { servicesManager }; OHIF.measurements.MeasurementApi.setConfiguration({ diff --git a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js index b1d7cf58012..d241ca7b1ba 100644 --- a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js +++ b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js @@ -288,7 +288,9 @@ function ViewerRetrieveStudyData({ study.StudyInstanceUID ); - _addSeriesToStudy(studyMetadata, study.series[0]); + study.series.forEach(series => { + _addSeriesToStudy(studyMetadata, series); + }); if (mergedStudies.length !== 0) { const found = mergedStudies.find( @@ -419,7 +421,7 @@ function ViewerRetrieveStudyData({ return remainingPromises; }; - const loadStudies = useCallback(async () => { + const loadStudies = async () => { try { const filters = {}; // Use the first, discard others @@ -457,7 +459,7 @@ function ViewerRetrieveStudyData({ log.error(error); } } - }); + }; const prevStudyInstanceUIDs = usePrevious(studyInstanceUIDs); diff --git a/platform/viewer/src/index.js b/platform/viewer/src/index.js index cff2d6b32cb..d119fdc3a18 100644 --- a/platform/viewer/src/index.js +++ b/platform/viewer/src/index.js @@ -29,9 +29,9 @@ import OHIFDicomSegmentationExtension from '@ohif/extension-dicom-segmentation'; import OHIFDicomRtExtension from '@ohif/extension-dicom-rt'; import OHIFDicomMicroscopyExtension from '@ohif/extension-dicom-microscopy'; import OHIFDicomPDFExtension from '@ohif/extension-dicom-pdf'; -//import OHIFDicomTagBrowserExtension from '@ohif/extension-dicom-tag-browser'; +import OHIFDicomTagBrowserExtension from '@ohif/extension-dicom-tag-browser'; // Add this for Debugging purposes: -//import OHIFDebuggingExtension from '@ohif/extension-debugging'; +import OHIFDebuggingExtension from '@ohif/extension-debugging'; import { version } from '../package.json'; /* @@ -53,8 +53,8 @@ const appProps = { OHIFDicomPDFExtension, OHIFDicomSegmentationExtension, OHIFDicomRtExtension, - //OHIFDebuggingExtension, - //OHIFDicomTagBrowserExtension, + OHIFDebuggingExtension, + OHIFDicomTagBrowserExtension, ], }; diff --git a/platform/viewer/src/routes/routesUtil.js b/platform/viewer/src/routes/routesUtil.js index 4ed17bdc12b..85cbb42ae01 100644 --- a/platform/viewer/src/routes/routesUtil.js +++ b/platform/viewer/src/routes/routesUtil.js @@ -90,7 +90,7 @@ const ROUTES_DEF = { defaultAndgcloud: { viewer: { path: - '/viewer/:studyInstanceUIDs!secondGoogleServer=/projects/:project/locations/:location/datasets/:dataset/dicomStores/:dicomStore/study/:studyInstanceUIDs', + '/viewer/:studyInstanceUIDs!secondGoogleServer=/projects/:project/locations/:location/datasets/:dataset/dicomStores/:dicomStore', component: ViewerRouting, condition: appConfig => { return !!appConfig.enableGoogleCloudAdapter; From 4575fec063403f238cb36cc1a08a8c45d5d76740 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Sat, 18 Jun 2022 01:36:26 +0200 Subject: [PATCH 03/54] update --- .../hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache | 196 ++++++++++++++++++ .firebaserc | 5 + firebase.json | 16 ++ .../components/studyBrowser/StudyBrowser.js | 2 + .../src/components/studyBrowser/Thumbnail.js | 19 +- platform/viewer/public/config/default.js | 16 +- .../viewer/src/connectedComponents/Viewer.js | 38 ++++ .../ViewerRetrieveStudyData.js | 4 +- 8 files changed, 284 insertions(+), 12 deletions(-) create mode 100644 .firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache create mode 100644 .firebaserc create mode 100644 firebase.json diff --git a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache new file mode 100644 index 00000000000..3827fbcb6b8 --- /dev/null +++ b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache @@ -0,0 +1,196 @@ +0.c9df1a4df9f379045b3b.css,1655503880008,9938cf5538f651d4077a555c19573759b17656f7d7a7a3a8af8f951d246771fc +0.c9df1a4df9f379045b3b.css.map,1655503880036,8b09acc4f6959b0aecb43ae7afeb4b4eb95aed0b240ce3edab1eab33c998383f +1.c9df1a4df9f379045b3b.css,1655503880008,912067df4b1bb603157e60a6f01f556d58bfbb9d739e703e276e5c869f8ff01f +1.c9df1a4df9f379045b3b.css.map,1655503880036,729ba6b022f5940da812558c8f321fc468325e617eeee1f4217da269f9f6987b +12.bundle.63810957e0ed8a5fe9ef.js.LICENSE,1655503880036,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 +10.c9df1a4df9f379045b3b.css,1655503880032,09d6b368ec06a84776f128a036fc6356b8d1ba1b0c35a0763719980fdab610dc +13.c9df1a4df9f379045b3b.css,1655503880032,fe142d4ca7eb28a5b5b405c70ffb470b803f4126f00cc51085a66ef630805707 +10.c9df1a4df9f379045b3b.css.map,1655503880072,279e21f7d4aab8d48dc53cbe4c4dd3886f95a5d972522f9052e3ccd48ba40702 +13.bundle.f23dd031641abdb84428.js,1655503880032,91727332b91e16d0a318c334b676952f3638c705a3d738a9f4d2dae65c4aa677 +13.c9df1a4df9f379045b3b.css.map,1655503880084,1ebcc23ff9cb75bf9820c85a76b4f5d4cef6f9c3ffb8888635e48b1993d0a59c +14.c9df1a4df9f379045b3b.css,1655503880032,1fc531ba15428409602c1ecd6edab5828edf8a035cf2905b2461e7709e19e212 +14.bundle.67514b8ba0843c1a765e.js,1655503880032,1689f9b3ee8e17d55cd4d9fdd3ff1a3c8b786d9e2aa9f475cde5cbf03ee4eec8 +14.c9df1a4df9f379045b3b.css.map,1655503880084,fe0ed5e819e58a7ccf0ee55a8d238f8bccad62bf823463806f7fd052395d5a0e +13.bundle.f23dd031641abdb84428.js.map,1655503880084,f5765a43cd7bcad41f3420bd5e3fd3ae697caf274a48cc27f24463c68199923c +15.bundle.58b66edc5380d21ea491.js,1655503880032,5b2ad5c788a9aaff050002c04f07048cdb61a5d673dbb93322f3754216f9ffc9 +15.c9df1a4df9f379045b3b.css,1655503880032,5002edcaf2aeb9b7e05cb802a603feafb14f91478aa86c7981fb385cf4dcc17e +15.c9df1a4df9f379045b3b.css.map,1655503880084,58bd5dbcfa73c36703648bdf48482b120f871453403cdab609e69c4fc1a3411b +15.bundle.58b66edc5380d21ea491.js.map,1655503880084,af22ff415f3c37a0a43d4504fc82d8b5c3afc46e55daff0ae8ea9f1958823bdc +17.bundle.2b6cb4cc09eaa0f26226.js,1655503880032,f40ce61e4fbb40c735ac5179be74960b866c55e040e85d682f365b7d18deb7d1 +16.bundle.550318d0c3b432523a96.js,1655503880032,69c86d4541e9b214ec18a2071fb7e9a37f595d4ad371b9013ed5fec516ff9e41 +17.bundle.2b6cb4cc09eaa0f26226.js.map,1655503880084,5ecdd155496044868fef5eb99ff70761459f2a550a81e130da94d3e6e6a4ded6 +18.bundle.d1eea966402715023d01.js.LICENSE,1655503880036,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 +14.bundle.67514b8ba0843c1a765e.js.map,1655503880084,cb433b7d3969ce644ee887e83f820b65dd103e32a8d868388b36cc7b85098710 +5.c9df1a4df9f379045b3b.css,1655503880008,5bc779cf44c0cb02376b518b188a4ec5d325b681d595511a50c335a64975dfa3 +5.c9df1a4df9f379045b3b.css.map,1655503880040,1234c2d5cee03cb096cf62c2e975453075ab30c3e4c1041727f7bb8f5b83afda +6.c9df1a4df9f379045b3b.css,1655503880008,4fe04f583d0e8c6f95676f1de091f992d8dddb276dc12b0bb9514b0903d41ea5 +6.c9df1a4df9f379045b3b.css.map,1655503880072,9c78339e0b25c6a4af4a774942776da179c567a208d2df545cd5be9f650ed783 +610.min.worker.js,1655503880084,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 +888.min.worker.js,1655503880084,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d +CallbackPage.bundle.7a45d418b0cfd05b26f9.js,1655503880008,a90ed4542891b506995daae5e4088b0775098f9f190795a8f53c1c56d4904543 +CallbackPage.bundle.7a45d418b0cfd05b26f9.js.map,1655503880036,591290c9b3f714c7725c3cbad71418f282c44ba9b9a4ea625acc4c9dc7bf7607 +ConnectedStandaloneRouting.bundle.a8b60048a63dd6f59299.js,1655503880008,606e546a107983be002489b2b5529063c0470cfca1afcb67c6c63ebce6d7a864 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.441d49cb768ecf8c502f.js,1655503880008,f1ee49086168cd128b062497a1523eaa563883692d8dbe8f5cb264680f0f9f5e +888.min.worker.js.map,1655503880084,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 +ConnectedStandaloneRouting.bundle.a8b60048a63dd6f59299.js.map,1655503880036,81317aeac3c2b629299a9910f648a898707c747b768d6fdd500aeb1364dc9700 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.8421df5688bab002a430.js,1655503880008,401dbe99b72748a19bbe49af43e79eb354e301883548a5098d55c60a8f7deb8e +IHEInvokeImageDisplay.bundle.d0e568a5d5c728dd43f0.js,1655503880008,55463fa779a8f813782f8b33a235fdec9f74f2c68b77b7b90cc7d522f944a1bc +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.441d49cb768ecf8c502f.js.map,1655503880036,8c9a82ece3a88cc386996bcd73746a8511dd757cdd84465cd2bdbe51aefb8283 +StudyListRouting.bundle.d13864640102e5fd9a69.js,1655503880008,776c3e6c2e5b3b4cafd8c7207c14f6608cdb4c91cd64eb1828abb7845e1a088a +IHEInvokeImageDisplay.bundle.d0e568a5d5c728dd43f0.js.map,1655503880036,e62da40e27bead53e241bd52fd3aa901d86e44bfdcc52e1f6f107f72066a3192 +610.min.worker.js.map,1655503880084,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 +8fdb3922f00c5527abec.worker.js.map,1655503880008,291e46810249771016614a7a506e08feb937b2c7b2425becb08107b19602c6e0 +18.bundle.d1eea966402715023d01.js,1655503880036,6815f38c975a8bf0d2cd1df9a843323bd5c81dcd4c3d4aa7459c59cb0e208ff5 +16.bundle.550318d0c3b432523a96.js.map,1655503880084,8a7e7b76330efa682287a8185ffc1831c0288210b1eb9c5dc08a3f972fc8eca9 +62ab5d58a2bea7b5a1dc.wasm,1655503880084,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f +ViewerLocalFileData.bundle.73c86a5927b8ad42b2ec.js,1655503880008,cfb908a313721744bc5ad3f20a9aed70f0cf7719fb4cc7ed9050114cade5f67b +ViewerLocalFileData.bundle.73c86a5927b8ad42b2ec.js.map,1655503880072,4ce92de54556f4225291aea7e542f62a64121728f32e0c04fade922c089bf122 +ViewerRouting.bundle.8c3c81f849f971b5b4f5.js,1655503880008,b5bbd8bc29c2c4c9049b1f594a637f50fac28d3c38c251fe023a2b1556c4f505 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.8421df5688bab002a430.js.map,1655503880036,b25257177065ff2483cc43e92d9c55221941c3a7210073652db5a7279a9dba52 +ViewerRouting.bundle.8c3c81f849f971b5b4f5.js.map,1655503880072,c907bd8bb9757f9de4caae1dc6e2d607ef5872dc8a1aea3ef6e3149d7b26b7c4 +app-config.js,1655503880084,572fc22e1e5753bc9ab7517986c157623736c9396629f242ea4fd19e1439fb48 +app.bundle.08b9e850947bcb40681d.js.LICENSE,1655503880036,d871419bd23dd8016f0a81ed553c37a5836ebd1f5dd664703215d4373d8de54b +google.js,1655503880084,950576beed5322c2d88d1d1aaaaa56a6d61a0d59a2f1778145bdd35ff2ecc433 +index.html,1655503880116,118e714e1a0b828d170c4b6e8d34f8d37a2f62ec6234e4511b7411bbcd5ee39d +es6-shim.min.js,1655503880088,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 +init-service-worker.js,1655503880088,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 +manifest.json,1655503880088,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b +polyfill.min.js,1655503880088,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab +silent-refresh.html,1655503880088,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 +sw.js,1655503880008,922f35b495771e2720b70f88e6f07e7932bc1dade28c052ef81a71e0d2ddf9b9 +sw.js.map,1655503880008,af286c33994bad11598efa729f5455660157a154e460d965af1f1041dd681a37 +vendors~ViewerLocalFileData.bundle.fdd73c39da8d6018cdd9.js,1655503880032,34f3cd1df813e9f22738d7cd190964b8bb4f6b4bb37cd681cd462aeb59574d8d +vendors~dicom-microscopy-viewer.bundle.6d3eeba0c50f4abb9828.js.LICENSE,1655503880036,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 +assets/Button_File.svg,1655503880088,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 +assets/Button_Folder.svg,1655503880088,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f +assets/android-chrome-192x192.png,1655503880084,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 +assets/android-chrome-144x144.png,1655503880084,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/android-chrome-256x256.png,1655503880084,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc +assets/android-chrome-36x36.png,1655503880084,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 +assets/android-chrome-384x384.png,1655503880084,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 +assets/android-chrome-48x48.png,1655503880084,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 +StudyListRouting.bundle.d13864640102e5fd9a69.js.map,1655503880072,678e99f5f3a431491f0e54cdc1ffbb2e737b34cdc891c8226f901dfb8f197b44 +cornerstoneWADOImageLoader.min.js,1655503880084,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 +app.c9df1a4df9f379045b3b.css,1655503880032,931f1bf8197e08b928a3cc34bcd534fed113583eae99df97d10c4d39d64da1bb +assets/android-chrome-512x512.png,1655503880084,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 +assets/android-chrome-72x72.png,1655503880084,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +vendors~ViewerLocalFileData.bundle.fdd73c39da8d6018cdd9.js.map,1655503880072,58187a5b4c8ece7d1c3bda74cdee80dd045a7c37047841731209fcdcf87539a2 +assets/android-chrome-96x96.png,1655503880084,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 +75a0c2dfe07b824c7d21.wasm,1655503880084,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 +app.c9df1a4df9f379045b3b.css.map,1655503880072,deed21d1e3d65a1272077527acfc3941932cc24b00196fbef21c0f5876089620 +assets/apple-touch-icon-1024x1024.png,1655503880084,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 +assets/apple-touch-icon-114x114.png,1655503880084,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d +assets/apple-touch-icon-120x120.png,1655503880084,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 +assets/apple-touch-icon-144x144.png,1655503880084,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/apple-touch-icon-152x152.png,1655503880088,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a +assets/apple-touch-icon-167x167.png,1655503880088,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece +assets/apple-touch-icon-180x180.png,1655503880088,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +vendors~app.bundle.8ec3a5d760cf1a2f997b.js.LICENSE,1655503880036,44231da3497ab7ac9163f36bc1418a1fafb05d8cfb34f14b30b2135f6083c198 +assets/apple-touch-icon-57x57.png,1655503880088,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f +assets/apple-touch-icon-60x60.png,1655503880088,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 +assets/apple-touch-icon-72x72.png,1655503880088,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/apple-touch-icon-76x76.png,1655503880088,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 +assets/apple-touch-icon.png,1655503880088,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-icon-precomposed.png,1655503880088,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-startup-image-320x460.png,1655503880088,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 +assets/apple-touch-startup-image-640x1096.png,1655503880088,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d +assets/apple-touch-startup-image-640x920.png,1655503880088,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae +assets/apple-touch-startup-image-748x1024.png,1655503880088,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a +assets/apple-touch-startup-image-750x1294.png,1655503880088,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 +assets/apple-touch-startup-image-768x1004.png,1655503880088,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 +assets/browserconfig.xml,1655503880088,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 +assets/apple-touch-startup-image-1182x2208.png,1655503880088,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe +assets/apple-touch-startup-image-1242x2148.png,1655503880088,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 +assets/coast-228x228.png,1655503880088,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d +assets/apple-touch-startup-image-1496x2048.png,1655503880088,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c +index.worker.min.worker.js,1655503880084,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 +assets/apple-touch-startup-image-1536x2008.png,1655503880088,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 +assets/favicon-16x16.png,1655503880088,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 +assets/favicon-32x32.png,1655503880088,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b +assets/favicon.ico,1655503880088,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 +assets/firefox_app_128x128.png,1655503880088,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b +assets/firefox_app_512x512.png,1655503880088,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 +assets/firefox_app_60x60.png,1655503880088,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc +assets/manifest.webapp,1655503880088,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe +assets/mstile-144x144.png,1655503880088,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/mstile-150x150.png,1655503880088,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 +oidc-client.min.js,1655503880088,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d +a2659d938e7b5e69ece3.wasm,1655503880084,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 +assets/mstile-310x150.png,1655503880088,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac +assets/mstile-310x310.png,1655503880088,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 +assets/mstile-70x70.png,1655503880088,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 +assets/yandex-browser-50x50.png,1655503880088,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 +assets/yandex-browser-manifest.json,1655503880088,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1655503880088,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1655503880088,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1655503880088,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1655503880088,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1655503880088,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1655503880088,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1655503880088,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1655503880088,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1655503880088,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1655503880088,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1655503880088,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1655503880088,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1655503880088,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1655503880092,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1655503880088,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1655503880088,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1655503880092,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1655503880092,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1655503880092,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1655503880092,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1655503880092,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1655503880092,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1655503880092,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1655503880092,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1655503880096,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1655503880096,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1655503880096,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1655503880096,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1655503880104,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1655503880104,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1655503880096,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1655503880096,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1655503880104,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1655503880088,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1655503880104,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1655503880104,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1655503880104,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1655503880104,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1655503880108,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1655503880104,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1655503880104,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1655503880108,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1655503880108,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1655503880108,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1655503880108,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1655503880116,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1655503880108,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 +third_party/workbox/workbox-v5.1.4/workbox-sw.js,1655503880108,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1655503880116,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 +18.bundle.d1eea966402715023d01.js.map,1655503880084,8b17de580c1b5a94d18ffbc6739f329bc0467efaf4b691906c029c638f699b79 +third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1655503880108,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1655503880108,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1655503880108,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1655503880108,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1655503880108,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1655503880108,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1655503880112,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1655503880112,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1655503880108,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1655503880112,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1655503880116,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1655503880112,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1655503880112,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 +cornerstoneWADOImageLoader.min.js.map,1655503880084,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb +index.worker.min.worker.js.map,1655503880084,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 +vendors~dicom-microscopy-viewer.bundle.6d3eeba0c50f4abb9828.js,1655503880032,3c94d32deea29caa0f61157ddf96515fd2fe1e1ae3e49583a89d8ac2bbf4ca5d +12.bundle.63810957e0ed8a5fe9ef.js,1655503880032,3ab8eb840b1e64bacbf9a60aa4ae6f1bacde6ec093201f0a120291531e25d357 +app.bundle.08b9e850947bcb40681d.js,1655503880032,da3423c54d96cc2970668aac6a9fefa0d719baff2aee66ac13cb9b92a36bb0f3 +vendors~dicom-microscopy-viewer.bundle.6d3eeba0c50f4abb9828.js.map,1655503880080,2c5276432ec5e2692cf6ae6beefeb2404150de97590c1098079513a7af365891 +app.bundle.08b9e850947bcb40681d.js.map,1655503880072,94a28979bb44975db02e5d88ed19f205f00e4540e129d13bdfee125b67ce4637 +vendors~app.bundle.8ec3a5d760cf1a2f997b.js,1655503880032,127b1ff7f15919516c41f2043eb67e2dfc746c82bd633cf33a4cb7d13fec8c8c +12.bundle.63810957e0ed8a5fe9ef.js.map,1655503880084,8533973d36911872b8a5be407b13319aa0e660fd59bc8d76875fe797cec87882 +vendors~app.bundle.8ec3a5d760cf1a2f997b.js.map,1655503880080,3c77816ff24b04679720f309e6326c153ac1a7ce8924bab877414d7eacd2eb57 diff --git a/.firebaserc b/.firebaserc new file mode 100644 index 00000000000..ef7c46af765 --- /dev/null +++ b/.firebaserc @@ -0,0 +1,5 @@ +{ + "projects": { + "default": "idc2serversdeploy-3c769" + } +} diff --git a/firebase.json b/firebase.json new file mode 100644 index 00000000000..d0a76377f1a --- /dev/null +++ b/firebase.json @@ -0,0 +1,16 @@ +{ + "hosting": { + "public": "platform/viewer/dist", + "ignore": [ + "firebase.json", + "**/.*", + "**/node_modules/**" + ], + "rewrites": [ + { + "source": "**", + "destination": "/index.html" + } + ] + } +} diff --git a/platform/ui/src/components/studyBrowser/StudyBrowser.js b/platform/ui/src/components/studyBrowser/StudyBrowser.js index c4afcf53b67..6efcbc5265a 100644 --- a/platform/ui/src/components/studyBrowser/StudyBrowser.js +++ b/platform/ui/src/components/studyBrowser/StudyBrowser.js @@ -31,6 +31,7 @@ function StudyBrowser(props) { SeriesNumber, hasWarnings, hasDerivedDisplaySets, + hasOriginServer, } = thumb; return ( @@ -56,6 +57,7 @@ function StudyBrowser(props) { SeriesNumber={SeriesNumber} hasWarnings={hasWarnings} hasDerivedDisplaySets={hasDerivedDisplaySets} + hasOriginServer={hasOriginServer} // Events onClick={onThumbnailClick.bind( undefined, diff --git a/platform/ui/src/components/studyBrowser/Thumbnail.js b/platform/ui/src/components/studyBrowser/Thumbnail.js index 60529d69438..d12651546c2 100644 --- a/platform/ui/src/components/studyBrowser/Thumbnail.js +++ b/platform/ui/src/components/studyBrowser/Thumbnail.js @@ -18,9 +18,11 @@ function ThumbnailFooter({ numImageFrames, hasWarnings, hasDerivedDisplaySets, + hasOriginServer, }) { const [inconsistencyWarnings, inconsistencyWarningsSet] = useState([]); const [derivedDisplaySetsActive, derivedDisplaySetsActiveSet] = useState([]); + const [originServer, originServerSet] = useState([]); useEffect(() => { let unmounted = false; @@ -34,10 +36,15 @@ function ThumbnailFooter({ derivedDisplaySetsActiveSet(response); } }); + hasOriginServer.then(response => { + if (!unmounted) { + originServerSet(response); + } + }); return () => { unmounted = true; }; - }, [hasWarnings, hasDerivedDisplaySets]); + }, [hasWarnings, hasDerivedDisplaySets, hasOriginServer]); const infoOnly = !SeriesDescription; @@ -136,6 +143,13 @@ function ThumbnailFooter({ {getDerivedInfo(derivedDisplaySetsActive)} {getWarningInfo(SeriesNumber, inconsistencyWarnings)} + + {originServer !== undefined ? ( + originServer + ) : ( + + )} + ); @@ -194,7 +208,7 @@ function Thumbnail(props) { onProgressChange ); }; - }, [displaySetInstanceUID]); + }, [displaySetInstanceUID, stackPercentComplete]); const [collectedProps, drag, dragPreview] = useDrag({ // `droppedItem` in `dropTarget` @@ -264,6 +278,7 @@ Thumbnail.propTypes = { SeriesNumber: PropTypes.oneOfType([PropTypes.string, PropTypes.number]), hasWarnings: PropTypes.instanceOf(Promise), hasDerivedDisplaySets: PropTypes.instanceOf(Promise), + hasOriginServer: PropTypes.instanceOf(Promise), numImageFrames: PropTypes.number, onDoubleClick: PropTypes.func, onClick: PropTypes.func, diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index f1a5be161a2..6902a41bd0b 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -2,14 +2,14 @@ window.config = { // default: '/' routerBasename: '/', extensions: [], - showStudyList: true, + showStudyList: false, filterQueryParam: true, - disableServersCache: false, + disableServersCache: true, studyPrefetcher: { - enabled: true, + enabled: false, order: 'closest', displaySetCount: 3, - preventCache: false, + preventCache: true, prefetchDisplaySetsTimeout: 300, maxNumPrefetchRequests: 100, displayProgress: true, @@ -20,11 +20,11 @@ window.config = { { name: 'IDC', wadoUriRoot: - 'https://dev-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoRoot: - 'https://dev-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', wadoRoot: - 'https://dev-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoSupportsIncludeField: true, imageRendering: 'wadors', thumbnailRendering: 'wadors', @@ -41,7 +41,7 @@ window.config = { // Authorization Server URL authority: 'https://accounts.google.com', client_id: - 'client_id.apps.googleusercontent.com', + '70161151675-72395655qs19cra281h4nl7a63q3t76q.apps.googleusercontent.com', redirect_uri: '/callback', // `OHIFStandaloneViewer.js` response_type: 'id_token token', scope: diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index 97a4a3f75dd..77fc431fecd 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -481,6 +481,41 @@ const _checkForDerivedDisplaySets = async function(displaySet, study) { return derivedDisplaySetsNumber > 0; }; +/** + * Async function to check the origin server + * + * @param {*object} displaySet + * @returns {string} + */ +const _checkOriginServer = async function(displaySet) { + let dataUrl; + let originServer = ''; + if ( + displaySet.Modality && + ['SEG', 'SR', 'RTSTRUCT', 'RTDOSE'].includes(displaySet.Modality) + ) { + dataUrl = displaySet.wadoUri; + } else if (displaySet.images && displaySet.images[0]) { + dataUrl = displaySet.images[0].getData().wadouri; + } + + if (dataUrl) { + if (dataUrl.indexOf('testing-proxy.canceridc.dev') !== -1) { + originServer = 'IDC Test'; + } else if (dataUrl.indexOf('dev-proxy.canceridc.dev') !== -1) { + originServer = 'IDC Dev'; + } else if ( + dataUrl.indexOf('viewer.imaging.datacommons.cancer.gov') !== -1 + ) { + originServer = 'IDC Prod'; + } else { + originServer = 'G Store'; + } + } + + return originServer; +}; + /** * Async function to check if there are any inconsistences in the series. * @@ -679,6 +714,8 @@ const _mapStudiesToThumbnails = function(studies, activeDisplaySetInstanceUID) { study ); + const hasOriginServer = _checkOriginServer(displaySet); + return { active: _isDisplaySetActive( displaySet, @@ -693,6 +730,7 @@ const _mapStudiesToThumbnails = function(studies, activeDisplaySetInstanceUID) { SeriesNumber, hasWarnings, hasDerivedDisplaySets, + hasOriginServer, }; }); diff --git a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js index d241ca7b1ba..2925b5a5dad 100644 --- a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js +++ b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js @@ -239,11 +239,11 @@ function ViewerRetrieveStudyData({ isFilterStrategy ); // Show message in case not promoted neither filtered but should to - _showUserMessage( + /*_showUserMessage( isQueryParamApplied, 'Query parameters were not totally applied. It might be using original series list for given study.', snackbarContext - ); + );*/ }; /** From ce0afdd4c76c7f21581a16c1683d6709e441f6c9 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Sat, 18 Jun 2022 01:43:18 +0200 Subject: [PATCH 04/54] update --- platform/viewer/public/config/default.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index 6902a41bd0b..c0baf022f1a 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -6,7 +6,7 @@ window.config = { filterQueryParam: true, disableServersCache: true, studyPrefetcher: { - enabled: false, + enabled: true, order: 'closest', displaySetCount: 3, preventCache: true, From 11fc119b6170c58295fc4c37c3bf3206dbe8a5ef Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Sat, 18 Jun 2022 01:53:30 +0200 Subject: [PATCH 05/54] update --- .../hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache | 391 +++++++++--------- platform/viewer/public/config/default.js | 10 +- 2 files changed, 200 insertions(+), 201 deletions(-) diff --git a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache index 3827fbcb6b8..ad04f8f4791 100644 --- a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache +++ b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache @@ -1,196 +1,195 @@ -0.c9df1a4df9f379045b3b.css,1655503880008,9938cf5538f651d4077a555c19573759b17656f7d7a7a3a8af8f951d246771fc -0.c9df1a4df9f379045b3b.css.map,1655503880036,8b09acc4f6959b0aecb43ae7afeb4b4eb95aed0b240ce3edab1eab33c998383f -1.c9df1a4df9f379045b3b.css,1655503880008,912067df4b1bb603157e60a6f01f556d58bfbb9d739e703e276e5c869f8ff01f -1.c9df1a4df9f379045b3b.css.map,1655503880036,729ba6b022f5940da812558c8f321fc468325e617eeee1f4217da269f9f6987b -12.bundle.63810957e0ed8a5fe9ef.js.LICENSE,1655503880036,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 -10.c9df1a4df9f379045b3b.css,1655503880032,09d6b368ec06a84776f128a036fc6356b8d1ba1b0c35a0763719980fdab610dc -13.c9df1a4df9f379045b3b.css,1655503880032,fe142d4ca7eb28a5b5b405c70ffb470b803f4126f00cc51085a66ef630805707 -10.c9df1a4df9f379045b3b.css.map,1655503880072,279e21f7d4aab8d48dc53cbe4c4dd3886f95a5d972522f9052e3ccd48ba40702 -13.bundle.f23dd031641abdb84428.js,1655503880032,91727332b91e16d0a318c334b676952f3638c705a3d738a9f4d2dae65c4aa677 -13.c9df1a4df9f379045b3b.css.map,1655503880084,1ebcc23ff9cb75bf9820c85a76b4f5d4cef6f9c3ffb8888635e48b1993d0a59c -14.c9df1a4df9f379045b3b.css,1655503880032,1fc531ba15428409602c1ecd6edab5828edf8a035cf2905b2461e7709e19e212 -14.bundle.67514b8ba0843c1a765e.js,1655503880032,1689f9b3ee8e17d55cd4d9fdd3ff1a3c8b786d9e2aa9f475cde5cbf03ee4eec8 -14.c9df1a4df9f379045b3b.css.map,1655503880084,fe0ed5e819e58a7ccf0ee55a8d238f8bccad62bf823463806f7fd052395d5a0e -13.bundle.f23dd031641abdb84428.js.map,1655503880084,f5765a43cd7bcad41f3420bd5e3fd3ae697caf274a48cc27f24463c68199923c -15.bundle.58b66edc5380d21ea491.js,1655503880032,5b2ad5c788a9aaff050002c04f07048cdb61a5d673dbb93322f3754216f9ffc9 -15.c9df1a4df9f379045b3b.css,1655503880032,5002edcaf2aeb9b7e05cb802a603feafb14f91478aa86c7981fb385cf4dcc17e -15.c9df1a4df9f379045b3b.css.map,1655503880084,58bd5dbcfa73c36703648bdf48482b120f871453403cdab609e69c4fc1a3411b -15.bundle.58b66edc5380d21ea491.js.map,1655503880084,af22ff415f3c37a0a43d4504fc82d8b5c3afc46e55daff0ae8ea9f1958823bdc -17.bundle.2b6cb4cc09eaa0f26226.js,1655503880032,f40ce61e4fbb40c735ac5179be74960b866c55e040e85d682f365b7d18deb7d1 -16.bundle.550318d0c3b432523a96.js,1655503880032,69c86d4541e9b214ec18a2071fb7e9a37f595d4ad371b9013ed5fec516ff9e41 -17.bundle.2b6cb4cc09eaa0f26226.js.map,1655503880084,5ecdd155496044868fef5eb99ff70761459f2a550a81e130da94d3e6e6a4ded6 -18.bundle.d1eea966402715023d01.js.LICENSE,1655503880036,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 -14.bundle.67514b8ba0843c1a765e.js.map,1655503880084,cb433b7d3969ce644ee887e83f820b65dd103e32a8d868388b36cc7b85098710 -5.c9df1a4df9f379045b3b.css,1655503880008,5bc779cf44c0cb02376b518b188a4ec5d325b681d595511a50c335a64975dfa3 -5.c9df1a4df9f379045b3b.css.map,1655503880040,1234c2d5cee03cb096cf62c2e975453075ab30c3e4c1041727f7bb8f5b83afda -6.c9df1a4df9f379045b3b.css,1655503880008,4fe04f583d0e8c6f95676f1de091f992d8dddb276dc12b0bb9514b0903d41ea5 -6.c9df1a4df9f379045b3b.css.map,1655503880072,9c78339e0b25c6a4af4a774942776da179c567a208d2df545cd5be9f650ed783 -610.min.worker.js,1655503880084,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 -888.min.worker.js,1655503880084,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d -CallbackPage.bundle.7a45d418b0cfd05b26f9.js,1655503880008,a90ed4542891b506995daae5e4088b0775098f9f190795a8f53c1c56d4904543 -CallbackPage.bundle.7a45d418b0cfd05b26f9.js.map,1655503880036,591290c9b3f714c7725c3cbad71418f282c44ba9b9a4ea625acc4c9dc7bf7607 -ConnectedStandaloneRouting.bundle.a8b60048a63dd6f59299.js,1655503880008,606e546a107983be002489b2b5529063c0470cfca1afcb67c6c63ebce6d7a864 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.441d49cb768ecf8c502f.js,1655503880008,f1ee49086168cd128b062497a1523eaa563883692d8dbe8f5cb264680f0f9f5e -888.min.worker.js.map,1655503880084,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 -ConnectedStandaloneRouting.bundle.a8b60048a63dd6f59299.js.map,1655503880036,81317aeac3c2b629299a9910f648a898707c747b768d6fdd500aeb1364dc9700 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.8421df5688bab002a430.js,1655503880008,401dbe99b72748a19bbe49af43e79eb354e301883548a5098d55c60a8f7deb8e -IHEInvokeImageDisplay.bundle.d0e568a5d5c728dd43f0.js,1655503880008,55463fa779a8f813782f8b33a235fdec9f74f2c68b77b7b90cc7d522f944a1bc -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.441d49cb768ecf8c502f.js.map,1655503880036,8c9a82ece3a88cc386996bcd73746a8511dd757cdd84465cd2bdbe51aefb8283 -StudyListRouting.bundle.d13864640102e5fd9a69.js,1655503880008,776c3e6c2e5b3b4cafd8c7207c14f6608cdb4c91cd64eb1828abb7845e1a088a -IHEInvokeImageDisplay.bundle.d0e568a5d5c728dd43f0.js.map,1655503880036,e62da40e27bead53e241bd52fd3aa901d86e44bfdcc52e1f6f107f72066a3192 -610.min.worker.js.map,1655503880084,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 -8fdb3922f00c5527abec.worker.js.map,1655503880008,291e46810249771016614a7a506e08feb937b2c7b2425becb08107b19602c6e0 -18.bundle.d1eea966402715023d01.js,1655503880036,6815f38c975a8bf0d2cd1df9a843323bd5c81dcd4c3d4aa7459c59cb0e208ff5 -16.bundle.550318d0c3b432523a96.js.map,1655503880084,8a7e7b76330efa682287a8185ffc1831c0288210b1eb9c5dc08a3f972fc8eca9 -62ab5d58a2bea7b5a1dc.wasm,1655503880084,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f -ViewerLocalFileData.bundle.73c86a5927b8ad42b2ec.js,1655503880008,cfb908a313721744bc5ad3f20a9aed70f0cf7719fb4cc7ed9050114cade5f67b -ViewerLocalFileData.bundle.73c86a5927b8ad42b2ec.js.map,1655503880072,4ce92de54556f4225291aea7e542f62a64121728f32e0c04fade922c089bf122 -ViewerRouting.bundle.8c3c81f849f971b5b4f5.js,1655503880008,b5bbd8bc29c2c4c9049b1f594a637f50fac28d3c38c251fe023a2b1556c4f505 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.8421df5688bab002a430.js.map,1655503880036,b25257177065ff2483cc43e92d9c55221941c3a7210073652db5a7279a9dba52 -ViewerRouting.bundle.8c3c81f849f971b5b4f5.js.map,1655503880072,c907bd8bb9757f9de4caae1dc6e2d607ef5872dc8a1aea3ef6e3149d7b26b7c4 -app-config.js,1655503880084,572fc22e1e5753bc9ab7517986c157623736c9396629f242ea4fd19e1439fb48 -app.bundle.08b9e850947bcb40681d.js.LICENSE,1655503880036,d871419bd23dd8016f0a81ed553c37a5836ebd1f5dd664703215d4373d8de54b -google.js,1655503880084,950576beed5322c2d88d1d1aaaaa56a6d61a0d59a2f1778145bdd35ff2ecc433 -index.html,1655503880116,118e714e1a0b828d170c4b6e8d34f8d37a2f62ec6234e4511b7411bbcd5ee39d -es6-shim.min.js,1655503880088,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 -init-service-worker.js,1655503880088,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 -manifest.json,1655503880088,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b -polyfill.min.js,1655503880088,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab -silent-refresh.html,1655503880088,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 -sw.js,1655503880008,922f35b495771e2720b70f88e6f07e7932bc1dade28c052ef81a71e0d2ddf9b9 -sw.js.map,1655503880008,af286c33994bad11598efa729f5455660157a154e460d965af1f1041dd681a37 -vendors~ViewerLocalFileData.bundle.fdd73c39da8d6018cdd9.js,1655503880032,34f3cd1df813e9f22738d7cd190964b8bb4f6b4bb37cd681cd462aeb59574d8d -vendors~dicom-microscopy-viewer.bundle.6d3eeba0c50f4abb9828.js.LICENSE,1655503880036,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 -assets/Button_File.svg,1655503880088,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 -assets/Button_Folder.svg,1655503880088,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f -assets/android-chrome-192x192.png,1655503880084,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 -assets/android-chrome-144x144.png,1655503880084,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/android-chrome-256x256.png,1655503880084,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc -assets/android-chrome-36x36.png,1655503880084,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 -assets/android-chrome-384x384.png,1655503880084,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 -assets/android-chrome-48x48.png,1655503880084,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 -StudyListRouting.bundle.d13864640102e5fd9a69.js.map,1655503880072,678e99f5f3a431491f0e54cdc1ffbb2e737b34cdc891c8226f901dfb8f197b44 -cornerstoneWADOImageLoader.min.js,1655503880084,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 -app.c9df1a4df9f379045b3b.css,1655503880032,931f1bf8197e08b928a3cc34bcd534fed113583eae99df97d10c4d39d64da1bb -assets/android-chrome-512x512.png,1655503880084,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 -assets/android-chrome-72x72.png,1655503880084,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -vendors~ViewerLocalFileData.bundle.fdd73c39da8d6018cdd9.js.map,1655503880072,58187a5b4c8ece7d1c3bda74cdee80dd045a7c37047841731209fcdcf87539a2 -assets/android-chrome-96x96.png,1655503880084,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 -75a0c2dfe07b824c7d21.wasm,1655503880084,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 -app.c9df1a4df9f379045b3b.css.map,1655503880072,deed21d1e3d65a1272077527acfc3941932cc24b00196fbef21c0f5876089620 -assets/apple-touch-icon-1024x1024.png,1655503880084,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 -assets/apple-touch-icon-114x114.png,1655503880084,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d -assets/apple-touch-icon-120x120.png,1655503880084,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 -assets/apple-touch-icon-144x144.png,1655503880084,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/apple-touch-icon-152x152.png,1655503880088,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a -assets/apple-touch-icon-167x167.png,1655503880088,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece -assets/apple-touch-icon-180x180.png,1655503880088,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -vendors~app.bundle.8ec3a5d760cf1a2f997b.js.LICENSE,1655503880036,44231da3497ab7ac9163f36bc1418a1fafb05d8cfb34f14b30b2135f6083c198 -assets/apple-touch-icon-57x57.png,1655503880088,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f -assets/apple-touch-icon-60x60.png,1655503880088,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 -assets/apple-touch-icon-72x72.png,1655503880088,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/apple-touch-icon-76x76.png,1655503880088,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 -assets/apple-touch-icon.png,1655503880088,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-icon-precomposed.png,1655503880088,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-startup-image-320x460.png,1655503880088,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 -assets/apple-touch-startup-image-640x1096.png,1655503880088,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d -assets/apple-touch-startup-image-640x920.png,1655503880088,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae -assets/apple-touch-startup-image-748x1024.png,1655503880088,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a -assets/apple-touch-startup-image-750x1294.png,1655503880088,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 -assets/apple-touch-startup-image-768x1004.png,1655503880088,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 -assets/browserconfig.xml,1655503880088,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 -assets/apple-touch-startup-image-1182x2208.png,1655503880088,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe -assets/apple-touch-startup-image-1242x2148.png,1655503880088,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 -assets/coast-228x228.png,1655503880088,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d -assets/apple-touch-startup-image-1496x2048.png,1655503880088,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c -index.worker.min.worker.js,1655503880084,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 -assets/apple-touch-startup-image-1536x2008.png,1655503880088,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 -assets/favicon-16x16.png,1655503880088,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 -assets/favicon-32x32.png,1655503880088,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b -assets/favicon.ico,1655503880088,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 -assets/firefox_app_128x128.png,1655503880088,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b -assets/firefox_app_512x512.png,1655503880088,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 -assets/firefox_app_60x60.png,1655503880088,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc -assets/manifest.webapp,1655503880088,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe -assets/mstile-144x144.png,1655503880088,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/mstile-150x150.png,1655503880088,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 -oidc-client.min.js,1655503880088,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d -a2659d938e7b5e69ece3.wasm,1655503880084,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 -assets/mstile-310x150.png,1655503880088,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac -assets/mstile-310x310.png,1655503880088,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 -assets/mstile-70x70.png,1655503880088,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 -assets/yandex-browser-50x50.png,1655503880088,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 -assets/yandex-browser-manifest.json,1655503880088,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1655503880088,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1655503880088,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1655503880088,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1655503880088,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1655503880088,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1655503880088,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1655503880088,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1655503880088,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1655503880088,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1655503880088,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1655503880088,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1655503880088,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1655503880088,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1655503880092,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1655503880088,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1655503880088,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1655503880092,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1655503880092,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1655503880092,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1655503880092,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1655503880092,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1655503880092,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1655503880092,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1655503880092,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1655503880096,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1655503880096,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1655503880096,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1655503880096,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1655503880104,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1655503880104,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1655503880096,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1655503880096,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1655503880104,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1655503880088,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1655503880104,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1655503880104,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1655503880104,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1655503880104,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1655503880108,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1655503880104,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1655503880104,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1655503880108,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1655503880108,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1655503880108,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1655503880108,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1655503880116,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1655503880108,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 -third_party/workbox/workbox-v5.1.4/workbox-sw.js,1655503880108,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1655503880116,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 -18.bundle.d1eea966402715023d01.js.map,1655503880084,8b17de580c1b5a94d18ffbc6739f329bc0467efaf4b691906c029c638f699b79 -third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1655503880108,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1655503880108,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1655503880108,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1655503880108,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1655503880108,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1655503880108,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1655503880112,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1655503880112,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1655503880108,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1655503880112,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1655503880116,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1655503880112,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1655503880112,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 -cornerstoneWADOImageLoader.min.js.map,1655503880084,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb -index.worker.min.worker.js.map,1655503880084,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 -vendors~dicom-microscopy-viewer.bundle.6d3eeba0c50f4abb9828.js,1655503880032,3c94d32deea29caa0f61157ddf96515fd2fe1e1ae3e49583a89d8ac2bbf4ca5d -12.bundle.63810957e0ed8a5fe9ef.js,1655503880032,3ab8eb840b1e64bacbf9a60aa4ae6f1bacde6ec093201f0a120291531e25d357 -app.bundle.08b9e850947bcb40681d.js,1655503880032,da3423c54d96cc2970668aac6a9fefa0d719baff2aee66ac13cb9b92a36bb0f3 -vendors~dicom-microscopy-viewer.bundle.6d3eeba0c50f4abb9828.js.map,1655503880080,2c5276432ec5e2692cf6ae6beefeb2404150de97590c1098079513a7af365891 -app.bundle.08b9e850947bcb40681d.js.map,1655503880072,94a28979bb44975db02e5d88ed19f205f00e4540e129d13bdfee125b67ce4637 -vendors~app.bundle.8ec3a5d760cf1a2f997b.js,1655503880032,127b1ff7f15919516c41f2043eb67e2dfc746c82bd633cf33a4cb7d13fec8c8c -12.bundle.63810957e0ed8a5fe9ef.js.map,1655503880084,8533973d36911872b8a5be407b13319aa0e660fd59bc8d76875fe797cec87882 -vendors~app.bundle.8ec3a5d760cf1a2f997b.js.map,1655503880080,3c77816ff24b04679720f309e6326c153ac1a7ce8924bab877414d7eacd2eb57 +0.ef35c388e313c1be6f57.css.map,1655509737632,e9bb198f7700a3b96915ad905d320f80fc9e4be363b49744448a69ccbfefe905 +0.ef35c388e313c1be6f57.css,1655509737608,9de3f128345247988872d3be65a516a0cf3086a17d53e7df53a067d57216f877 +1.ef35c388e313c1be6f57.css,1655509737608,c3c529bdc056d83f048a233332b8de2c6d08427fc2489941ca74fa9ae4af0d60 +1.ef35c388e313c1be6f57.css.map,1655509737632,22e451eeac12bf214970a317b73b40300cec12e528f62f3b74d8326455b43286 +10.ef35c388e313c1be6f57.css,1655509737632,422d3915ef71d654f8999d42a1f18168a21a0130bff8ba5f2fb5ce103a448af5 +12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1655509737632,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 +10.ef35c388e313c1be6f57.css.map,1655509737676,787f12cf197a83aae1463c10bc97000e736d89826ec7ea4ad1e42ce69f175ddd +13.ef35c388e313c1be6f57.css,1655509737632,4c07f38a2bb7cc313b7ecb790aa2ca9d6bac11389fcc8a42d3aca50ce420d475 +13.bundle.414d50c4c63ffee40875.js,1655509737632,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 +13.ef35c388e313c1be6f57.css.map,1655509737680,e2240c1192a5454d7032d13678d5d40078e078eca3cedd73bd6f990c88843efe +13.bundle.414d50c4c63ffee40875.js.map,1655509737680,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f +14.bundle.f5546f507dfdd523113f.js.LICENSE,1655509737632,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 +15.ef35c388e313c1be6f57.css,1655509737632,b2c3ef022106756c7732a3f7218712266072698a4de400f33d9661d2707fdd55 +15.bundle.26fcbfb06e5b5a2afec9.js,1655509737632,c1b568aa4c425e0b9a83dcbf0795fe047b2b93b452f1209cc8f12bdce23414df +15.ef35c388e313c1be6f57.css.map,1655509737680,a2da4c819c466dabb4ef0553f42da0dfcf6b080db5b7192afcdf4297635aed64 +16.bundle.ba74417dab689e58043f.js,1655509737632,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee +16.ef35c388e313c1be6f57.css,1655509737632,0bdd268c165fb7c1f8c21b05dd142549a59a4b793c7c44466876b53e566efc32 +16.ef35c388e313c1be6f57.css.map,1655509737680,5370ff192921c7fc07d800ff9bb3b37420e14daa53cc07f3ba99c5eabb53830c +16.bundle.ba74417dab689e58043f.js.map,1655509737680,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 +17.bundle.9c08231db22cb3af6236.js,1655509737632,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 +18.bundle.920419b610fe06564773.js,1655509737632,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd +18.bundle.920419b610fe06564773.js.map,1655509737680,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 +5.ef35c388e313c1be6f57.css,1655509737608,b081423bae6cccce9b9b0acf23ec1743dcac8f830ee83726e7877127909ace60 +5.ef35c388e313c1be6f57.css.map,1655509737632,51c6926e484d19cf2cd22a17ba3838f6515fb555985c0791506e4824128f1201 +6.ef35c388e313c1be6f57.css,1655509737608,49c318734a51d3831c1d6afab45aac9ad40632b824080491c3e373517c25bd86 +6.ef35c388e313c1be6f57.css.map,1655509737676,e3b17b1ab658ba09d88b6c93eb34a7156c08bb894b38f66293ee0aafbe5386f6 +610.min.worker.js,1655509737680,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 +888.min.worker.js,1655509737680,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d +CallbackPage.bundle.19672d8befc69c8d7c0f.js,1655509737608,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 +CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1655509737632,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1655509737608,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1655509737608,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1655509737632,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 +888.min.worker.js.map,1655509737680,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1655509737632,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1655509737608,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js,1655509737608,c9b9a148b705344858a7662b74f79165de6deaafc846dc8f47377cef362e6ee1 +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1655509737632,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 +StudyListRouting.bundle.3e600292e431f99c2cf1.js,1655509737608,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 +15.bundle.26fcbfb06e5b5a2afec9.js.map,1655509737680,72a703657818743e31b3cd4d79c385820eaaadb19f488197752a6312787e794d +610.min.worker.js.map,1655509737680,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 +8fdb3922f00c5527abec.worker.js.map,1655509737608,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 +14.bundle.f5546f507dfdd523113f.js,1655509737632,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d +17.bundle.9c08231db22cb3af6236.js.map,1655509737680,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 +62ab5d58a2bea7b5a1dc.wasm,1655509737680,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js.map,1655509737632,40a02e510774ffd41ae422b421e55a9c24aecbeaa008638b003313f03597a49c +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1655509737608,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1655509737676,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 +ViewerRouting.bundle.4ca721239b5d489cacff.js,1655509737608,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 +ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1655509737676,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 +app-config.js,1655509737680,d438b1386d6fb9a9b08d00e34c6a068cd59d0e3c61c074a3acefde6922a34a26 +google.js,1655509737680,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 +index.html,1655509737684,ac36c7b099508add6c9018dd72e5a7747f460856eacd4e9ca4da96c23dcd5314 +init-service-worker.js,1655509737680,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 +es6-shim.min.js,1655509737680,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 +manifest.json,1655509737680,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b +polyfill.min.js,1655509737680,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab +silent-refresh.html,1655509737680,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 +sw.js,1655509737608,b28b346b812da4072be241e8d9072f084cb8fd45689ebe400ea3eccc70fe6dec +sw.js.map,1655509737608,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1655509737632,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1655509737632,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 +assets/Button_File.svg,1655509737680,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 +assets/Button_Folder.svg,1655509737680,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f +assets/android-chrome-144x144.png,1655509737680,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/android-chrome-192x192.png,1655509737680,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 +assets/android-chrome-256x256.png,1655509737680,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc +assets/android-chrome-36x36.png,1655509737680,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 +assets/android-chrome-384x384.png,1655509737680,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 +assets/android-chrome-48x48.png,1655509737680,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 +assets/android-chrome-512x512.png,1655509737680,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 +StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1655509737632,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 +assets/android-chrome-72x72.png,1655509737680,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +app.ef35c388e313c1be6f57.css,1655509737632,ea4fadba2f523ec7799d28406320d982b331f81321e0b3658d7833961b3a22d1 +cornerstoneWADOImageLoader.min.js,1655509737680,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 +assets/android-chrome-96x96.png,1655509737680,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1655509737676,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d +assets/apple-touch-icon-1024x1024.png,1655509737680,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 +75a0c2dfe07b824c7d21.wasm,1655509737680,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 +app.ef35c388e313c1be6f57.css.map,1655509737676,aa0fb20151f923bef42eb13396d267752c68f620cfba6ccb4cbd88cbefe8c6d8 +assets/apple-touch-icon-114x114.png,1655509737680,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d +assets/apple-touch-icon-120x120.png,1655509737680,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 +assets/apple-touch-icon-144x144.png,1655509737680,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/apple-touch-icon-152x152.png,1655509737680,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a +assets/apple-touch-icon-167x167.png,1655509737680,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece +assets/apple-touch-icon-180x180.png,1655509737680,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1655509737632,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 +assets/apple-touch-icon-57x57.png,1655509737680,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f +assets/apple-touch-icon-60x60.png,1655509737680,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 +assets/apple-touch-icon-72x72.png,1655509737680,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/apple-touch-icon-76x76.png,1655509737680,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 +assets/apple-touch-icon-precomposed.png,1655509737680,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-icon.png,1655509737680,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-startup-image-320x460.png,1655509737680,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 +assets/apple-touch-startup-image-640x1096.png,1655509737680,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d +assets/apple-touch-startup-image-640x920.png,1655509737680,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae +assets/apple-touch-startup-image-748x1024.png,1655509737680,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a +assets/apple-touch-startup-image-750x1294.png,1655509737680,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 +assets/apple-touch-startup-image-768x1004.png,1655509737680,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 +assets/browserconfig.xml,1655509737680,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 +assets/apple-touch-startup-image-1182x2208.png,1655509737680,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe +assets/coast-228x228.png,1655509737680,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d +assets/apple-touch-startup-image-1242x2148.png,1655509737680,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 +assets/apple-touch-startup-image-1496x2048.png,1655509737680,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c +index.worker.min.worker.js,1655509737680,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 +assets/apple-touch-startup-image-1536x2008.png,1655509737680,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 +assets/favicon-16x16.png,1655509737680,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 +assets/favicon-32x32.png,1655509737680,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b +assets/firefox_app_128x128.png,1655509737680,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b +assets/firefox_app_512x512.png,1655509737680,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 +assets/favicon.ico,1655509737680,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 +assets/firefox_app_60x60.png,1655509737680,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc +assets/manifest.webapp,1655509737680,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe +assets/mstile-144x144.png,1655509737680,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/mstile-150x150.png,1655509737680,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 +a2659d938e7b5e69ece3.wasm,1655509737680,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 +assets/mstile-310x150.png,1655509737680,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac +oidc-client.min.js,1655509737684,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d +assets/mstile-310x310.png,1655509737680,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 +assets/mstile-70x70.png,1655509737680,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 +assets/yandex-browser-50x50.png,1655509737680,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 +assets/yandex-browser-manifest.json,1655509737680,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1655509737680,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1655509737680,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1655509737680,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1655509737680,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1655509737680,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1655509737680,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1655509737680,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1655509737680,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1655509737680,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1655509737680,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1655509737680,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1655509737680,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1655509737680,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1655509737680,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1655509737680,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1655509737680,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1655509737680,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1655509737680,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1655509737680,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1655509737680,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1655509737680,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1655509737680,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1655509737680,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1655509737680,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1655509737680,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1655509737680,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1655509737680,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1655509737680,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1655509737684,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1655509737684,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1655509737684,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1655509737684,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1655509737684,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1655509737684,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1655509737680,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1655509737684,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1655509737684,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1655509737684,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1655509737684,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1655509737684,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1655509737684,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1655509737684,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1655509737684,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1655509737684,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1655509737684,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1655509737684,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1655509737684,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1655509737684,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 +third_party/workbox/workbox-v5.1.4/workbox-sw.js,1655509737684,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 +third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1655509737684,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1655509737684,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1655509737684,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1655509737684,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1655509737684,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1655509737684,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1655509737684,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1655509737684,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1655509737684,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1655509737684,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1655509737684,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1655509737684,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1655509737684,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 +14.bundle.f5546f507dfdd523113f.js.map,1655509737680,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 +cornerstoneWADOImageLoader.min.js.map,1655509737680,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb +app.bundle.1fef7f70cd0d94c8993b.js,1655509737632,0e8c80ccfba302285a4cebd4030edf17ed4b5bd4fc2b98b3a6778930e3a04ee4 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1655509737632,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 +index.worker.min.worker.js.map,1655509737684,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 +12.bundle.0e2dfc762384a0b7492d.js,1655509737632,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 +app.bundle.1fef7f70cd0d94c8993b.js.map,1655509737676,f0f294e60c4c29f1d5e1a6b176f3f7c5cc966ff57cff1eda25fa5f883f2bc969 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1655509737676,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1655509737632,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 +12.bundle.0e2dfc762384a0b7492d.js.map,1655509737680,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1655509737676,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index d04936bfae8..706e2962a70 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -9,7 +9,7 @@ window.config = { enabled: true, order: 'closest', displaySetCount: 3, - preventCache: false, + preventCache: true, prefetchDisplaySetsTimeout: 300, maxNumPrefetchRequests: 100, displayProgress: true, @@ -29,11 +29,11 @@ window.config = { { name: 'IDC', wadoUriRoot: - 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoRoot: - 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', wadoRoot: - 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v8-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoSupportsIncludeField: true, imageRendering: 'wadors', thumbnailRendering: 'wadors', @@ -50,7 +50,7 @@ window.config = { // Authorization Server URL authority: 'https://accounts.google.com', client_id: - '70161151675-6843uup52vc5v14cn3nqdjb1ej5208ee.apps.googleusercontent.com', + '70161151675-72395655qs19cra281h4nl7a63q3t76q.apps.googleusercontent.com', redirect_uri: '/callback', // `OHIFStandaloneViewer.js` response_type: 'id_token token', scope: From 863d5cbb540df07cbf81ff6c2e08ba7419301d81 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Mon, 20 Jun 2022 08:13:53 +0200 Subject: [PATCH 06/54] fix caching and seg server pointing --- .../hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache | 390 +++++++++--------- .../src/OHIFDicomHtmlSopClassHandler.js | 2 +- .../src/OHIFDicomPDFSopClassHandler.js | 2 +- .../src/OHIFDicomRTStructSopClassHandler.js | 2 +- .../src/getOHIFDicomSegSopClassHandler.js | 2 +- platform/viewer/public/config/default.js | 12 +- .../viewer/src/connectedComponents/Viewer.js | 1 + 7 files changed, 201 insertions(+), 210 deletions(-) diff --git a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache index ad04f8f4791..8ae69763981 100644 --- a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache +++ b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache @@ -1,195 +1,195 @@ -0.ef35c388e313c1be6f57.css.map,1655509737632,e9bb198f7700a3b96915ad905d320f80fc9e4be363b49744448a69ccbfefe905 -0.ef35c388e313c1be6f57.css,1655509737608,9de3f128345247988872d3be65a516a0cf3086a17d53e7df53a067d57216f877 -1.ef35c388e313c1be6f57.css,1655509737608,c3c529bdc056d83f048a233332b8de2c6d08427fc2489941ca74fa9ae4af0d60 -1.ef35c388e313c1be6f57.css.map,1655509737632,22e451eeac12bf214970a317b73b40300cec12e528f62f3b74d8326455b43286 -10.ef35c388e313c1be6f57.css,1655509737632,422d3915ef71d654f8999d42a1f18168a21a0130bff8ba5f2fb5ce103a448af5 -12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1655509737632,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 -10.ef35c388e313c1be6f57.css.map,1655509737676,787f12cf197a83aae1463c10bc97000e736d89826ec7ea4ad1e42ce69f175ddd -13.ef35c388e313c1be6f57.css,1655509737632,4c07f38a2bb7cc313b7ecb790aa2ca9d6bac11389fcc8a42d3aca50ce420d475 -13.bundle.414d50c4c63ffee40875.js,1655509737632,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 -13.ef35c388e313c1be6f57.css.map,1655509737680,e2240c1192a5454d7032d13678d5d40078e078eca3cedd73bd6f990c88843efe -13.bundle.414d50c4c63ffee40875.js.map,1655509737680,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f -14.bundle.f5546f507dfdd523113f.js.LICENSE,1655509737632,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 -15.ef35c388e313c1be6f57.css,1655509737632,b2c3ef022106756c7732a3f7218712266072698a4de400f33d9661d2707fdd55 -15.bundle.26fcbfb06e5b5a2afec9.js,1655509737632,c1b568aa4c425e0b9a83dcbf0795fe047b2b93b452f1209cc8f12bdce23414df -15.ef35c388e313c1be6f57.css.map,1655509737680,a2da4c819c466dabb4ef0553f42da0dfcf6b080db5b7192afcdf4297635aed64 -16.bundle.ba74417dab689e58043f.js,1655509737632,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee -16.ef35c388e313c1be6f57.css,1655509737632,0bdd268c165fb7c1f8c21b05dd142549a59a4b793c7c44466876b53e566efc32 -16.ef35c388e313c1be6f57.css.map,1655509737680,5370ff192921c7fc07d800ff9bb3b37420e14daa53cc07f3ba99c5eabb53830c -16.bundle.ba74417dab689e58043f.js.map,1655509737680,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 -17.bundle.9c08231db22cb3af6236.js,1655509737632,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 -18.bundle.920419b610fe06564773.js,1655509737632,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd -18.bundle.920419b610fe06564773.js.map,1655509737680,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 -5.ef35c388e313c1be6f57.css,1655509737608,b081423bae6cccce9b9b0acf23ec1743dcac8f830ee83726e7877127909ace60 -5.ef35c388e313c1be6f57.css.map,1655509737632,51c6926e484d19cf2cd22a17ba3838f6515fb555985c0791506e4824128f1201 -6.ef35c388e313c1be6f57.css,1655509737608,49c318734a51d3831c1d6afab45aac9ad40632b824080491c3e373517c25bd86 -6.ef35c388e313c1be6f57.css.map,1655509737676,e3b17b1ab658ba09d88b6c93eb34a7156c08bb894b38f66293ee0aafbe5386f6 -610.min.worker.js,1655509737680,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 -888.min.worker.js,1655509737680,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d -CallbackPage.bundle.19672d8befc69c8d7c0f.js,1655509737608,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 -CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1655509737632,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1655509737608,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1655509737608,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1655509737632,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 -888.min.worker.js.map,1655509737680,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1655509737632,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1655509737608,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js,1655509737608,c9b9a148b705344858a7662b74f79165de6deaafc846dc8f47377cef362e6ee1 -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1655509737632,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 -StudyListRouting.bundle.3e600292e431f99c2cf1.js,1655509737608,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 -15.bundle.26fcbfb06e5b5a2afec9.js.map,1655509737680,72a703657818743e31b3cd4d79c385820eaaadb19f488197752a6312787e794d -610.min.worker.js.map,1655509737680,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 -8fdb3922f00c5527abec.worker.js.map,1655509737608,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 -14.bundle.f5546f507dfdd523113f.js,1655509737632,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d -17.bundle.9c08231db22cb3af6236.js.map,1655509737680,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 -62ab5d58a2bea7b5a1dc.wasm,1655509737680,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js.map,1655509737632,40a02e510774ffd41ae422b421e55a9c24aecbeaa008638b003313f03597a49c -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1655509737608,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1655509737676,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 -ViewerRouting.bundle.4ca721239b5d489cacff.js,1655509737608,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 -ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1655509737676,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 -app-config.js,1655509737680,d438b1386d6fb9a9b08d00e34c6a068cd59d0e3c61c074a3acefde6922a34a26 -google.js,1655509737680,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 -index.html,1655509737684,ac36c7b099508add6c9018dd72e5a7747f460856eacd4e9ca4da96c23dcd5314 -init-service-worker.js,1655509737680,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 -es6-shim.min.js,1655509737680,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 -manifest.json,1655509737680,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b -polyfill.min.js,1655509737680,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab -silent-refresh.html,1655509737680,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 -sw.js,1655509737608,b28b346b812da4072be241e8d9072f084cb8fd45689ebe400ea3eccc70fe6dec -sw.js.map,1655509737608,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1655509737632,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1655509737632,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 -assets/Button_File.svg,1655509737680,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 -assets/Button_Folder.svg,1655509737680,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f -assets/android-chrome-144x144.png,1655509737680,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/android-chrome-192x192.png,1655509737680,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 -assets/android-chrome-256x256.png,1655509737680,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc -assets/android-chrome-36x36.png,1655509737680,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 -assets/android-chrome-384x384.png,1655509737680,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 -assets/android-chrome-48x48.png,1655509737680,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 -assets/android-chrome-512x512.png,1655509737680,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 -StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1655509737632,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 -assets/android-chrome-72x72.png,1655509737680,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -app.ef35c388e313c1be6f57.css,1655509737632,ea4fadba2f523ec7799d28406320d982b331f81321e0b3658d7833961b3a22d1 -cornerstoneWADOImageLoader.min.js,1655509737680,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 -assets/android-chrome-96x96.png,1655509737680,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1655509737676,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d -assets/apple-touch-icon-1024x1024.png,1655509737680,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 -75a0c2dfe07b824c7d21.wasm,1655509737680,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 -app.ef35c388e313c1be6f57.css.map,1655509737676,aa0fb20151f923bef42eb13396d267752c68f620cfba6ccb4cbd88cbefe8c6d8 -assets/apple-touch-icon-114x114.png,1655509737680,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d -assets/apple-touch-icon-120x120.png,1655509737680,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 -assets/apple-touch-icon-144x144.png,1655509737680,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/apple-touch-icon-152x152.png,1655509737680,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a -assets/apple-touch-icon-167x167.png,1655509737680,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece -assets/apple-touch-icon-180x180.png,1655509737680,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1655509737632,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 -assets/apple-touch-icon-57x57.png,1655509737680,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f -assets/apple-touch-icon-60x60.png,1655509737680,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 -assets/apple-touch-icon-72x72.png,1655509737680,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/apple-touch-icon-76x76.png,1655509737680,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 -assets/apple-touch-icon-precomposed.png,1655509737680,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-icon.png,1655509737680,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-startup-image-320x460.png,1655509737680,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 -assets/apple-touch-startup-image-640x1096.png,1655509737680,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d -assets/apple-touch-startup-image-640x920.png,1655509737680,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae -assets/apple-touch-startup-image-748x1024.png,1655509737680,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a -assets/apple-touch-startup-image-750x1294.png,1655509737680,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 -assets/apple-touch-startup-image-768x1004.png,1655509737680,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 -assets/browserconfig.xml,1655509737680,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 -assets/apple-touch-startup-image-1182x2208.png,1655509737680,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe -assets/coast-228x228.png,1655509737680,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d -assets/apple-touch-startup-image-1242x2148.png,1655509737680,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 -assets/apple-touch-startup-image-1496x2048.png,1655509737680,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c -index.worker.min.worker.js,1655509737680,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 -assets/apple-touch-startup-image-1536x2008.png,1655509737680,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 -assets/favicon-16x16.png,1655509737680,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 -assets/favicon-32x32.png,1655509737680,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b -assets/firefox_app_128x128.png,1655509737680,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b -assets/firefox_app_512x512.png,1655509737680,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 -assets/favicon.ico,1655509737680,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 -assets/firefox_app_60x60.png,1655509737680,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc -assets/manifest.webapp,1655509737680,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe -assets/mstile-144x144.png,1655509737680,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/mstile-150x150.png,1655509737680,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 -a2659d938e7b5e69ece3.wasm,1655509737680,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 -assets/mstile-310x150.png,1655509737680,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac -oidc-client.min.js,1655509737684,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d -assets/mstile-310x310.png,1655509737680,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 -assets/mstile-70x70.png,1655509737680,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 -assets/yandex-browser-50x50.png,1655509737680,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 -assets/yandex-browser-manifest.json,1655509737680,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1655509737680,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1655509737680,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1655509737680,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1655509737680,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1655509737680,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1655509737680,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1655509737680,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1655509737680,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1655509737680,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1655509737680,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1655509737680,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1655509737680,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1655509737680,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1655509737680,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1655509737680,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1655509737680,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1655509737680,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1655509737680,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1655509737680,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1655509737680,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1655509737680,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1655509737680,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1655509737680,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1655509737680,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1655509737680,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1655509737680,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1655509737680,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1655509737680,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1655509737684,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1655509737684,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1655509737684,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1655509737684,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1655509737684,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1655509737684,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1655509737680,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1655509737684,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1655509737684,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1655509737684,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1655509737684,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1655509737684,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1655509737684,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1655509737684,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1655509737684,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1655509737684,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1655509737684,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1655509737684,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1655509737684,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1655509737684,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 -third_party/workbox/workbox-v5.1.4/workbox-sw.js,1655509737684,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 -third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1655509737684,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1655509737684,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1655509737684,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1655509737684,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1655509737684,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1655509737684,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1655509737684,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1655509737684,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1655509737684,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1655509737684,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1655509737684,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1655509737684,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1655509737684,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 -14.bundle.f5546f507dfdd523113f.js.map,1655509737680,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 -cornerstoneWADOImageLoader.min.js.map,1655509737680,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb -app.bundle.1fef7f70cd0d94c8993b.js,1655509737632,0e8c80ccfba302285a4cebd4030edf17ed4b5bd4fc2b98b3a6778930e3a04ee4 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1655509737632,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 -index.worker.min.worker.js.map,1655509737684,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 -12.bundle.0e2dfc762384a0b7492d.js,1655509737632,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 -app.bundle.1fef7f70cd0d94c8993b.js.map,1655509737676,f0f294e60c4c29f1d5e1a6b176f3f7c5cc966ff57cff1eda25fa5f883f2bc969 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1655509737676,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1655509737632,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 -12.bundle.0e2dfc762384a0b7492d.js.map,1655509737680,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1655509737676,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 +0.c35963e2751ee995b172.css,1655705750506,c8e6356527e8b4d8d0849ef5428adc3c6c19fedba74b1b5a9d612e4832e3a246 +1.c35963e2751ee995b172.css,1655705750506,2c3b5cca6d8fc1079ca37e69fb5f7f85d2a89f75376b8fdd6de8de47910029b2 +0.c35963e2751ee995b172.css.map,1655705750530,c40063f3449d20f913fcbf03313d571495fcda9d36bcc6b0d68162c3b91fd180 +1.c35963e2751ee995b172.css.map,1655705750530,eb1e20bfb42a4250c136f413ebf742e3a16735942416ecfe9e7e291c14b60f70 +12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1655705750530,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 +10.c35963e2751ee995b172.css,1655705750530,1f4d31efc2ce38fbdc7bbd8ddb635066749e40acfd346be959434b9cdcecbd3f +10.c35963e2751ee995b172.css.map,1655705750578,806c6a68d34b61261c9d14435d7052e39ff0adc37acf8a946db49822e2cfde6b +13.bundle.414d50c4c63ffee40875.js,1655705750530,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 +13.c35963e2751ee995b172.css,1655705750530,658322954d9744d6e1ec405fc2c84518c0c08f16912722bcb638514aaa74b31a +13.c35963e2751ee995b172.css.map,1655705750582,f805e06161a24a3a189631d76bdb89b04a9e8f600ed6c90c476d9c09b37b9080 +13.bundle.414d50c4c63ffee40875.js.map,1655705750582,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f +14.bundle.f5546f507dfdd523113f.js.LICENSE,1655705750530,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 +15.bundle.26fcbfb06e5b5a2afec9.js,1655705750530,c1b568aa4c425e0b9a83dcbf0795fe047b2b93b452f1209cc8f12bdce23414df +15.c35963e2751ee995b172.css,1655705750530,1745aac8dc17701b9ae56f3e45f70c7713ad569c94108b889f22ded13a16d34a +15.c35963e2751ee995b172.css.map,1655705750582,524b52fa7eaecb1e74553d15e21657be192261e0cc3584ed5853d9ef46b546d0 +16.bundle.ba74417dab689e58043f.js,1655705750530,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee +16.bundle.ba74417dab689e58043f.js.map,1655705750582,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 +16.c35963e2751ee995b172.css,1655705750530,db06e5682fa847054cd7407c2a7dad7680a51e294848b8023c0c576bdc171c85 +16.c35963e2751ee995b172.css.map,1655705750582,eb4ac347c28054ee874c03387607a53fc691931a7610ccd5fd5b3b0da78f08f6 +17.bundle.9c08231db22cb3af6236.js,1655705750530,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 +18.bundle.920419b610fe06564773.js,1655705750530,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd +5.c35963e2751ee995b172.css,1655705750506,ad3f5dc2b8173d8b4264caf4f2023051c4e9c30f9fc82f4de9882032aa26e2c5 +18.bundle.920419b610fe06564773.js.map,1655705750582,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 +6.c35963e2751ee995b172.css,1655705750506,b127ea2ef5746fb91421a1d940e4916cd5edaa0c2737573448688bfea2903e7d +5.c35963e2751ee995b172.css.map,1655705750530,90f76109e7402b93981ac3c593d9d591a8f93661410f09349241f00124f023de +6.c35963e2751ee995b172.css.map,1655705750562,2720e797c6f291140835deed952387a12d824d36bcaf17c0210755ce135da742 +610.min.worker.js,1655705750582,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 +888.min.worker.js,1655705750582,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d +CallbackPage.bundle.19672d8befc69c8d7c0f.js,1655705750506,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 +CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1655705750530,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1655705750506,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1655705750506,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1655705750530,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 +888.min.worker.js.map,1655705750582,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1655705750506,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1655705750530,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.f8be5266f3a09782e3ab.js,1655705750506,79392407f7383359f591d7599d51eeadb1870b4f252aabe439a425cd2bfd1e40 +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1655705750530,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 +StudyListRouting.bundle.3e600292e431f99c2cf1.js,1655705750506,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 +15.bundle.26fcbfb06e5b5a2afec9.js.map,1655705750582,72a703657818743e31b3cd4d79c385820eaaadb19f488197752a6312787e794d +610.min.worker.js.map,1655705750582,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 +8fdb3922f00c5527abec.worker.js.map,1655705750506,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 +14.bundle.f5546f507dfdd523113f.js,1655705750530,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d +17.bundle.9c08231db22cb3af6236.js.map,1655705750582,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 +62ab5d58a2bea7b5a1dc.wasm,1655705750582,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.f8be5266f3a09782e3ab.js.map,1655705750530,fc6e2665eb685cfad72ec1fa4e80a22824d69eb8f0457fc120c014b283646e09 +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1655705750506,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1655705750562,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 +ViewerRouting.bundle.4ca721239b5d489cacff.js,1655705750506,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 +ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1655705750562,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 +app-config.js,1655705750582,23760445178e751a79e45729650cfbd10892c44e3948e6f4afda37e568ab70eb +google.js,1655705750582,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 +index.html,1655705750614,5a0bbb157a890ce7baf71deb2419b504a3823ead40d0b427cefa584f8fbbba70 +es6-shim.min.js,1655705750586,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 +init-service-worker.js,1655705750586,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 +manifest.json,1655705750586,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b +polyfill.min.js,1655705750586,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab +silent-refresh.html,1655705750586,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 +sw.js,1655705750506,432101c87e174a1e2c3605f39f8bd62561d37f8a6ca65331d6c3f1cd6c44cb7b +sw.js.map,1655705750506,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1655705750530,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1655705750530,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 +assets/Button_File.svg,1655705750586,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 +assets/Button_Folder.svg,1655705750586,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f +assets/android-chrome-144x144.png,1655705750582,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/android-chrome-192x192.png,1655705750582,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 +assets/android-chrome-256x256.png,1655705750582,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc +assets/android-chrome-36x36.png,1655705750582,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 +assets/android-chrome-384x384.png,1655705750582,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 +assets/android-chrome-48x48.png,1655705750582,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 +assets/android-chrome-512x512.png,1655705750582,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 +StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1655705750562,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 +app.c35963e2751ee995b172.css,1655705750530,126bd7c4597b93e981b243a679e156928b4a28e1c202ae2de4cdc45d3c4a1146 +cornerstoneWADOImageLoader.min.js,1655705750582,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 +assets/android-chrome-72x72.png,1655705750582,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/android-chrome-96x96.png,1655705750582,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 +75a0c2dfe07b824c7d21.wasm,1655705750582,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 +assets/apple-touch-icon-1024x1024.png,1655705750582,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1655705750578,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d +app.c35963e2751ee995b172.css.map,1655705750570,b3f7b1819c039bf12afe62d5b3bf954027a3ac3a4a1e6e252ead9fe87095ba72 +assets/apple-touch-icon-114x114.png,1655705750582,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d +assets/apple-touch-icon-120x120.png,1655705750582,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 +assets/apple-touch-icon-144x144.png,1655705750582,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/apple-touch-icon-152x152.png,1655705750582,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a +assets/apple-touch-icon-167x167.png,1655705750586,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece +assets/apple-touch-icon-180x180.png,1655705750582,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1655705750530,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 +assets/apple-touch-icon-57x57.png,1655705750586,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f +assets/apple-touch-icon-60x60.png,1655705750586,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 +assets/apple-touch-icon-72x72.png,1655705750586,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/apple-touch-icon-76x76.png,1655705750586,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 +assets/apple-touch-icon-precomposed.png,1655705750586,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-icon.png,1655705750586,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-startup-image-320x460.png,1655705750586,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 +assets/apple-touch-startup-image-640x1096.png,1655705750586,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d +assets/apple-touch-startup-image-640x920.png,1655705750586,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae +assets/apple-touch-startup-image-748x1024.png,1655705750586,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a +assets/apple-touch-startup-image-750x1294.png,1655705750586,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 +assets/apple-touch-startup-image-768x1004.png,1655705750586,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 +assets/browserconfig.xml,1655705750586,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 +assets/apple-touch-startup-image-1182x2208.png,1655705750586,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe +assets/coast-228x228.png,1655705750586,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d +assets/apple-touch-startup-image-1242x2148.png,1655705750586,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 +assets/apple-touch-startup-image-1496x2048.png,1655705750586,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c +assets/apple-touch-startup-image-1536x2008.png,1655705750586,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 +assets/favicon-16x16.png,1655705750586,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 +assets/favicon-32x32.png,1655705750586,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b +index.worker.min.worker.js,1655705750582,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 +assets/favicon.ico,1655705750586,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 +assets/firefox_app_128x128.png,1655705750586,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b +assets/firefox_app_60x60.png,1655705750586,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc +assets/firefox_app_512x512.png,1655705750586,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 +assets/manifest.webapp,1655705750586,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe +assets/mstile-144x144.png,1655705750586,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +a2659d938e7b5e69ece3.wasm,1655705750582,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 +assets/mstile-150x150.png,1655705750586,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 +assets/mstile-310x150.png,1655705750586,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac +oidc-client.min.js,1655705750586,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d +assets/mstile-310x310.png,1655705750586,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 +assets/mstile-70x70.png,1655705750586,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 +assets/yandex-browser-50x50.png,1655705750586,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 +assets/yandex-browser-manifest.json,1655705750586,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1655705750590,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1655705750594,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1655705750590,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1655705750586,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1655705750586,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1655705750586,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1655705750586,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1655705750586,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1655705750586,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1655705750586,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1655705750586,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1655705750586,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1655705750586,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1655705750590,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1655705750594,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1655705750594,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1655705750594,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1655705750594,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1655705750594,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1655705750594,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1655705750594,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1655705750594,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1655705750598,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1655705750598,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1655705750598,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1655705750598,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1655705750598,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1655705750598,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1655705750598,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1655705750602,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1655705750602,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1655705750602,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1655705750602,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1655705750602,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1655705750594,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1655705750606,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1655705750606,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1655705750606,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1655705750606,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1655705750606,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1655705750606,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1655705750606,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1655705750606,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1655705750606,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1655705750610,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1655705750606,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 +third_party/workbox/workbox-v5.1.4/workbox-sw.js,1655705750610,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1655705750610,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1655705750610,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 +third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1655705750610,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1655705750610,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1655705750614,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1655705750610,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1655705750610,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1655705750614,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1655705750614,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1655705750614,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1655705750614,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1655705750614,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1655705750614,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1655705750614,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1655705750614,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 +14.bundle.f5546f507dfdd523113f.js.map,1655705750582,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 +cornerstoneWADOImageLoader.min.js.map,1655705750582,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb +app.bundle.5556b569cdd2737d20f3.js,1655705750530,4074f8c6fa2f5fa1efb3e6045f36fbec4cce81e2db7f96c1bafdf852edd3411c +index.worker.min.worker.js.map,1655705750582,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1655705750530,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 +12.bundle.0e2dfc762384a0b7492d.js,1655705750530,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 +app.bundle.5556b569cdd2737d20f3.js.map,1655705750570,82785403396ec4575fed02285dd7188f41d6816df10ec5755cbb9ad2114c551d +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1655705750582,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1655705750530,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 +12.bundle.0e2dfc762384a0b7492d.js.map,1655705750582,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1655705750578,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 diff --git a/extensions/dicom-html/src/OHIFDicomHtmlSopClassHandler.js b/extensions/dicom-html/src/OHIFDicomHtmlSopClassHandler.js index 5a1844f67ed..83310698694 100644 --- a/extensions/dicom-html/src/OHIFDicomHtmlSopClassHandler.js +++ b/extensions/dicom-html/src/OHIFDicomHtmlSopClassHandler.js @@ -36,7 +36,7 @@ const OHIFDicomHtmlSopClassHandler = { plugin: 'html', Modality: 'SR', displaySetInstanceUID: utils.guid(), - wadoRoot: study.getData().wadoRoot, + wadoRoot: instance.getData().wadoRoot, wadoUri: instance.getData().wadouri, SOPInstanceUID: instance.getSOPInstanceUID(), SeriesInstanceUID: series.getSeriesInstanceUID(), diff --git a/extensions/dicom-pdf/src/OHIFDicomPDFSopClassHandler.js b/extensions/dicom-pdf/src/OHIFDicomPDFSopClassHandler.js index 452b843bdc0..e1739a45906 100644 --- a/extensions/dicom-pdf/src/OHIFDicomPDFSopClassHandler.js +++ b/extensions/dicom-pdf/src/OHIFDicomPDFSopClassHandler.js @@ -24,7 +24,7 @@ const OHIFDicomPDFSopClassHandler = { plugin: 'pdf', Modality: 'DOC', displaySetInstanceUID: utils.guid(), - wadoRoot: study.getData().wadoRoot, + wadoRoot: instance.getData().wadoRoot, wadoUri: instance.getData().wadouri, SOPInstanceUID: instance.getSOPInstanceUID(), SeriesInstanceUID: series.getSeriesInstanceUID(), diff --git a/extensions/dicom-rt/src/OHIFDicomRTStructSopClassHandler.js b/extensions/dicom-rt/src/OHIFDicomRTStructSopClassHandler.js index 3a5f836d4d7..f75c335a1fd 100644 --- a/extensions/dicom-rt/src/OHIFDicomRTStructSopClassHandler.js +++ b/extensions/dicom-rt/src/OHIFDicomRTStructSopClassHandler.js @@ -40,7 +40,7 @@ const OHIFDicomRTStructSopClassHandler = { const rtStructDisplaySet = { Modality: 'RTSTRUCT', displaySetInstanceUID: utils.guid(), - wadoRoot: study.getData().wadoRoot, + wadoRoot: instance.getData().wadoRoot, wadoUri: instance.getData().wadouri, SOPInstanceUID, SeriesInstanceUID, diff --git a/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js b/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js index 8adcd68d492..bb9e5bea299 100644 --- a/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js +++ b/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js @@ -44,7 +44,7 @@ export default function getSopClassHandlerModule({ servicesManager }) { const segDisplaySet = { Modality: 'SEG', displaySetInstanceUID: utils.guid(), - wadoRoot: study.getData().wadoRoot, + wadoRoot: instance.getData().wadoRoot, wadoUri: instance.getData().wadouri, SOPInstanceUID, SeriesInstanceUID, diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index 706e2962a70..bfa45acff4a 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -2,19 +2,9 @@ window.config = { // default: '/' routerBasename: '/', extensions: [], - showStudyList: false, + showStudyList: true, filterQueryParam: true, disableServersCache: true, - studyPrefetcher: { - enabled: true, - order: 'closest', - displaySetCount: 3, - preventCache: true, - prefetchDisplaySetsTimeout: 300, - maxNumPrefetchRequests: 100, - displayProgress: true, - includeActiveDisplaySet: true, - }, httpErrorHandler: error => { // This is 429 when rejected from the public idc sandbox too often. console.warn(error.status); diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index 77fc431fecd..87c359c0997 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -716,6 +716,7 @@ const _mapStudiesToThumbnails = function(studies, activeDisplaySetInstanceUID) { const hasOriginServer = _checkOriginServer(displaySet); + console.info(displaySet); return { active: _isDisplaySetActive( displaySet, From 4eea84bc128a9360823ea49e8d1dcb949a898d58 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Mon, 27 Jun 2022 09:52:09 +0200 Subject: [PATCH 07/54] Add fork name in thhe app name in debug report window --- extensions/debugging/src/DebugReportModal.js | 4 ++-- platform/viewer/src/connectedComponents/Viewer.js | 1 - 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/extensions/debugging/src/DebugReportModal.js b/extensions/debugging/src/DebugReportModal.js index c8acec293f2..7ea5a743da4 100644 --- a/extensions/debugging/src/DebugReportModal.js +++ b/extensions/debugging/src/DebugReportModal.js @@ -34,7 +34,7 @@ const DubugReportModal = ({ // App version body += '== App ==\n'; - body += `version\t${window.version}\n\n`; + body += `version\t${window.version} (fork: IDC2servers)\n\n`; // Extensions Versions @@ -193,7 +193,7 @@ const getAppVersion = () => { Version - {window.version} + {window.version} (fork: IDC2servers) ); diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index 87c359c0997..77fc431fecd 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -716,7 +716,6 @@ const _mapStudiesToThumbnails = function(studies, activeDisplaySetInstanceUID) { const hasOriginServer = _checkOriginServer(displaySet); - console.info(displaySet); return { active: _isDisplaySetActive( displaySet, From 8c441b128eb438d0dfea99b9e612925100c9852b Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Tue, 28 Jun 2022 13:34:18 +0200 Subject: [PATCH 08/54] Update to OHIFv4.12.28 --- ...lld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache | 1 + .../hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache | 390 +++++++++--------- 2 files changed, 196 insertions(+), 195 deletions(-) create mode 100644 .firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache diff --git a/.firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache b/.firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache new file mode 100644 index 00000000000..fddf0f01038 --- /dev/null +++ b/.firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache @@ -0,0 +1 @@ +index.html,1656316379391,76471ea3352dc629a995b76e241c928bdcf3daf5df532fd2e81775afe095da0b diff --git a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache index 8ae69763981..4d7305a24ee 100644 --- a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache +++ b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache @@ -1,195 +1,195 @@ -0.c35963e2751ee995b172.css,1655705750506,c8e6356527e8b4d8d0849ef5428adc3c6c19fedba74b1b5a9d612e4832e3a246 -1.c35963e2751ee995b172.css,1655705750506,2c3b5cca6d8fc1079ca37e69fb5f7f85d2a89f75376b8fdd6de8de47910029b2 -0.c35963e2751ee995b172.css.map,1655705750530,c40063f3449d20f913fcbf03313d571495fcda9d36bcc6b0d68162c3b91fd180 -1.c35963e2751ee995b172.css.map,1655705750530,eb1e20bfb42a4250c136f413ebf742e3a16735942416ecfe9e7e291c14b60f70 -12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1655705750530,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 -10.c35963e2751ee995b172.css,1655705750530,1f4d31efc2ce38fbdc7bbd8ddb635066749e40acfd346be959434b9cdcecbd3f -10.c35963e2751ee995b172.css.map,1655705750578,806c6a68d34b61261c9d14435d7052e39ff0adc37acf8a946db49822e2cfde6b -13.bundle.414d50c4c63ffee40875.js,1655705750530,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 -13.c35963e2751ee995b172.css,1655705750530,658322954d9744d6e1ec405fc2c84518c0c08f16912722bcb638514aaa74b31a -13.c35963e2751ee995b172.css.map,1655705750582,f805e06161a24a3a189631d76bdb89b04a9e8f600ed6c90c476d9c09b37b9080 -13.bundle.414d50c4c63ffee40875.js.map,1655705750582,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f -14.bundle.f5546f507dfdd523113f.js.LICENSE,1655705750530,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 -15.bundle.26fcbfb06e5b5a2afec9.js,1655705750530,c1b568aa4c425e0b9a83dcbf0795fe047b2b93b452f1209cc8f12bdce23414df -15.c35963e2751ee995b172.css,1655705750530,1745aac8dc17701b9ae56f3e45f70c7713ad569c94108b889f22ded13a16d34a -15.c35963e2751ee995b172.css.map,1655705750582,524b52fa7eaecb1e74553d15e21657be192261e0cc3584ed5853d9ef46b546d0 -16.bundle.ba74417dab689e58043f.js,1655705750530,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee -16.bundle.ba74417dab689e58043f.js.map,1655705750582,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 -16.c35963e2751ee995b172.css,1655705750530,db06e5682fa847054cd7407c2a7dad7680a51e294848b8023c0c576bdc171c85 -16.c35963e2751ee995b172.css.map,1655705750582,eb4ac347c28054ee874c03387607a53fc691931a7610ccd5fd5b3b0da78f08f6 -17.bundle.9c08231db22cb3af6236.js,1655705750530,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 -18.bundle.920419b610fe06564773.js,1655705750530,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd -5.c35963e2751ee995b172.css,1655705750506,ad3f5dc2b8173d8b4264caf4f2023051c4e9c30f9fc82f4de9882032aa26e2c5 -18.bundle.920419b610fe06564773.js.map,1655705750582,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 -6.c35963e2751ee995b172.css,1655705750506,b127ea2ef5746fb91421a1d940e4916cd5edaa0c2737573448688bfea2903e7d -5.c35963e2751ee995b172.css.map,1655705750530,90f76109e7402b93981ac3c593d9d591a8f93661410f09349241f00124f023de -6.c35963e2751ee995b172.css.map,1655705750562,2720e797c6f291140835deed952387a12d824d36bcaf17c0210755ce135da742 -610.min.worker.js,1655705750582,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 -888.min.worker.js,1655705750582,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d -CallbackPage.bundle.19672d8befc69c8d7c0f.js,1655705750506,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 -CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1655705750530,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1655705750506,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1655705750506,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1655705750530,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 -888.min.worker.js.map,1655705750582,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1655705750506,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1655705750530,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.f8be5266f3a09782e3ab.js,1655705750506,79392407f7383359f591d7599d51eeadb1870b4f252aabe439a425cd2bfd1e40 -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1655705750530,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 -StudyListRouting.bundle.3e600292e431f99c2cf1.js,1655705750506,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 -15.bundle.26fcbfb06e5b5a2afec9.js.map,1655705750582,72a703657818743e31b3cd4d79c385820eaaadb19f488197752a6312787e794d -610.min.worker.js.map,1655705750582,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 -8fdb3922f00c5527abec.worker.js.map,1655705750506,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 -14.bundle.f5546f507dfdd523113f.js,1655705750530,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d -17.bundle.9c08231db22cb3af6236.js.map,1655705750582,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 -62ab5d58a2bea7b5a1dc.wasm,1655705750582,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.f8be5266f3a09782e3ab.js.map,1655705750530,fc6e2665eb685cfad72ec1fa4e80a22824d69eb8f0457fc120c014b283646e09 -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1655705750506,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1655705750562,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 -ViewerRouting.bundle.4ca721239b5d489cacff.js,1655705750506,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 -ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1655705750562,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 -app-config.js,1655705750582,23760445178e751a79e45729650cfbd10892c44e3948e6f4afda37e568ab70eb -google.js,1655705750582,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 -index.html,1655705750614,5a0bbb157a890ce7baf71deb2419b504a3823ead40d0b427cefa584f8fbbba70 -es6-shim.min.js,1655705750586,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 -init-service-worker.js,1655705750586,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 -manifest.json,1655705750586,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b -polyfill.min.js,1655705750586,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab -silent-refresh.html,1655705750586,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 -sw.js,1655705750506,432101c87e174a1e2c3605f39f8bd62561d37f8a6ca65331d6c3f1cd6c44cb7b -sw.js.map,1655705750506,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1655705750530,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1655705750530,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 -assets/Button_File.svg,1655705750586,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 -assets/Button_Folder.svg,1655705750586,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f -assets/android-chrome-144x144.png,1655705750582,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/android-chrome-192x192.png,1655705750582,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 -assets/android-chrome-256x256.png,1655705750582,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc -assets/android-chrome-36x36.png,1655705750582,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 -assets/android-chrome-384x384.png,1655705750582,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 -assets/android-chrome-48x48.png,1655705750582,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 -assets/android-chrome-512x512.png,1655705750582,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 -StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1655705750562,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 -app.c35963e2751ee995b172.css,1655705750530,126bd7c4597b93e981b243a679e156928b4a28e1c202ae2de4cdc45d3c4a1146 -cornerstoneWADOImageLoader.min.js,1655705750582,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 -assets/android-chrome-72x72.png,1655705750582,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/android-chrome-96x96.png,1655705750582,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 -75a0c2dfe07b824c7d21.wasm,1655705750582,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 -assets/apple-touch-icon-1024x1024.png,1655705750582,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1655705750578,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d -app.c35963e2751ee995b172.css.map,1655705750570,b3f7b1819c039bf12afe62d5b3bf954027a3ac3a4a1e6e252ead9fe87095ba72 -assets/apple-touch-icon-114x114.png,1655705750582,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d -assets/apple-touch-icon-120x120.png,1655705750582,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 -assets/apple-touch-icon-144x144.png,1655705750582,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/apple-touch-icon-152x152.png,1655705750582,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a -assets/apple-touch-icon-167x167.png,1655705750586,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece -assets/apple-touch-icon-180x180.png,1655705750582,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1655705750530,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 -assets/apple-touch-icon-57x57.png,1655705750586,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f -assets/apple-touch-icon-60x60.png,1655705750586,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 -assets/apple-touch-icon-72x72.png,1655705750586,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/apple-touch-icon-76x76.png,1655705750586,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 -assets/apple-touch-icon-precomposed.png,1655705750586,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-icon.png,1655705750586,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-startup-image-320x460.png,1655705750586,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 -assets/apple-touch-startup-image-640x1096.png,1655705750586,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d -assets/apple-touch-startup-image-640x920.png,1655705750586,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae -assets/apple-touch-startup-image-748x1024.png,1655705750586,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a -assets/apple-touch-startup-image-750x1294.png,1655705750586,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 -assets/apple-touch-startup-image-768x1004.png,1655705750586,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 -assets/browserconfig.xml,1655705750586,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 -assets/apple-touch-startup-image-1182x2208.png,1655705750586,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe -assets/coast-228x228.png,1655705750586,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d -assets/apple-touch-startup-image-1242x2148.png,1655705750586,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 -assets/apple-touch-startup-image-1496x2048.png,1655705750586,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c -assets/apple-touch-startup-image-1536x2008.png,1655705750586,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 -assets/favicon-16x16.png,1655705750586,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 -assets/favicon-32x32.png,1655705750586,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b -index.worker.min.worker.js,1655705750582,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 -assets/favicon.ico,1655705750586,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 -assets/firefox_app_128x128.png,1655705750586,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b -assets/firefox_app_60x60.png,1655705750586,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc -assets/firefox_app_512x512.png,1655705750586,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 -assets/manifest.webapp,1655705750586,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe -assets/mstile-144x144.png,1655705750586,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -a2659d938e7b5e69ece3.wasm,1655705750582,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 -assets/mstile-150x150.png,1655705750586,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 -assets/mstile-310x150.png,1655705750586,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac -oidc-client.min.js,1655705750586,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d -assets/mstile-310x310.png,1655705750586,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 -assets/mstile-70x70.png,1655705750586,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 -assets/yandex-browser-50x50.png,1655705750586,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 -assets/yandex-browser-manifest.json,1655705750586,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1655705750590,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1655705750594,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1655705750590,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1655705750586,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1655705750586,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1655705750586,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1655705750586,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1655705750586,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1655705750586,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1655705750586,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1655705750586,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1655705750586,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1655705750586,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1655705750590,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1655705750594,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1655705750594,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1655705750594,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1655705750594,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1655705750594,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1655705750594,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1655705750594,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1655705750594,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1655705750598,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1655705750598,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1655705750598,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1655705750598,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1655705750598,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1655705750598,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1655705750598,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1655705750602,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1655705750602,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1655705750602,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1655705750602,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1655705750602,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1655705750594,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1655705750606,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1655705750606,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1655705750606,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1655705750606,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1655705750606,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1655705750606,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1655705750606,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1655705750606,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1655705750606,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1655705750610,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1655705750606,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 -third_party/workbox/workbox-v5.1.4/workbox-sw.js,1655705750610,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1655705750610,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1655705750610,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 -third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1655705750610,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1655705750610,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1655705750614,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1655705750610,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1655705750610,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1655705750614,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1655705750614,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1655705750614,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1655705750614,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1655705750614,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1655705750614,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1655705750614,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1655705750614,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 -14.bundle.f5546f507dfdd523113f.js.map,1655705750582,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 -cornerstoneWADOImageLoader.min.js.map,1655705750582,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb -app.bundle.5556b569cdd2737d20f3.js,1655705750530,4074f8c6fa2f5fa1efb3e6045f36fbec4cce81e2db7f96c1bafdf852edd3411c -index.worker.min.worker.js.map,1655705750582,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1655705750530,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 -12.bundle.0e2dfc762384a0b7492d.js,1655705750530,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 -app.bundle.5556b569cdd2737d20f3.js.map,1655705750570,82785403396ec4575fed02285dd7188f41d6816df10ec5755cbb9ad2114c551d -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1655705750582,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1655705750530,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 -12.bundle.0e2dfc762384a0b7492d.js.map,1655705750582,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1655705750578,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 +0.ec424a4f8752c9c36ffb.css,1656415806723,fa44ae9a1411d97e259e6a2d019f9530aa30f08c9f76865f56813f5208891ebd +1.ec424a4f8752c9c36ffb.css,1656415806723,1b52b926f7053a84f2499214c99cc5e50f647883c03e7478bb625072fa0de7fb +0.ec424a4f8752c9c36ffb.css.map,1656415806747,de7d9ef47e311435a0df8c6da8024059f5a488ff6c7017afc414338656e1a872 +1.ec424a4f8752c9c36ffb.css.map,1656415806747,55cfa5ba03ac01e4bd4f92d0f7fab1100bb4f1c8f61493627179acfbf50abc73 +10.ec424a4f8752c9c36ffb.css,1656415806747,00fa73d77ec44e76db5a71b47bb6f7b0c6884b241090695de4b5d9dc48f61dec +12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1656415806747,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 +10.ec424a4f8752c9c36ffb.css.map,1656415806791,0c385da712c9de55fe9178ad42e28df7439699528fd10d5c36f44bf8fd2fa72e +13.bundle.414d50c4c63ffee40875.js,1656415806747,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 +13.ec424a4f8752c9c36ffb.css.map,1656415806791,b467143eed342e28342df177c1562233ab9266c08968b0db5f1b9b167cff39dc +13.ec424a4f8752c9c36ffb.css,1656415806747,1b89787e8bb678baacb57df939cf097997efa0a01cc01ae476050ec33a908f06 +13.bundle.414d50c4c63ffee40875.js.map,1656415806791,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f +14.bundle.f5546f507dfdd523113f.js.LICENSE,1656415806747,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 +15.bundle.26fcbfb06e5b5a2afec9.js,1656415806747,c1b568aa4c425e0b9a83dcbf0795fe047b2b93b452f1209cc8f12bdce23414df +15.ec424a4f8752c9c36ffb.css,1656415806747,57000c885c7ad8dd1c288a54d62f08f5b73b033606cbe4ea136fcf728933ed98 +15.ec424a4f8752c9c36ffb.css.map,1656415806795,ac1ffbee74b548a1f2167b9f3340fc081a50628e4f8538bcb4aa5247c6448417 +16.bundle.ba74417dab689e58043f.js,1656415806747,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee +16.bundle.ba74417dab689e58043f.js.map,1656415806795,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 +16.ec424a4f8752c9c36ffb.css,1656415806747,d40c9079bc1f6d988a0df0fed86b700a793922ae93ae5b6843d25717a708a69b +16.ec424a4f8752c9c36ffb.css.map,1656415806795,3385f87aee14bea3d07321e7e1a3f1654577d04756f963a1255d590ce5b54392 +17.bundle.9c08231db22cb3af6236.js,1656415806747,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 +18.bundle.920419b610fe06564773.js,1656415806747,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd +18.bundle.920419b610fe06564773.js.map,1656415806795,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 +5.ec424a4f8752c9c36ffb.css,1656415806723,192b54be910358dbf4c6577e8cf615342a05f8d8c21c1d7b0a9826a3bea2539b +5.ec424a4f8752c9c36ffb.css.map,1656415806751,5dc697543df2a455dd71a90dcbed1256c1fe1587d6f206a7994075afc28bbe4f +6.ec424a4f8752c9c36ffb.css,1656415806723,82692c80c957d018ea086814ac6b8874424d305d4ed0ad92d2272d192b3189d6 +6.ec424a4f8752c9c36ffb.css.map,1656415806791,80697209b1e277788581e61d7a81d5d8ce7e6b619f3ff9c462564dcd8170a8ae +610.min.worker.js,1656415806795,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 +888.min.worker.js,1656415806795,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d +CallbackPage.bundle.19672d8befc69c8d7c0f.js,1656415806723,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 +CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1656415806747,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1656415806723,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1656415806723,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1656415806747,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1656415806723,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1656415806747,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js,1656415806723,c9b9a148b705344858a7662b74f79165de6deaafc846dc8f47377cef362e6ee1 +888.min.worker.js.map,1656415806795,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1656415806747,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 +StudyListRouting.bundle.3e600292e431f99c2cf1.js,1656415806723,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 +15.bundle.26fcbfb06e5b5a2afec9.js.map,1656415806795,72a703657818743e31b3cd4d79c385820eaaadb19f488197752a6312787e794d +610.min.worker.js.map,1656415806795,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 +8fdb3922f00c5527abec.worker.js.map,1656415806723,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 +14.bundle.f5546f507dfdd523113f.js,1656415806747,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d +17.bundle.9c08231db22cb3af6236.js.map,1656415806795,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 +62ab5d58a2bea7b5a1dc.wasm,1656415806795,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1656415806723,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1656415806791,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js.map,1656415806747,40a02e510774ffd41ae422b421e55a9c24aecbeaa008638b003313f03597a49c +ViewerRouting.bundle.4ca721239b5d489cacff.js,1656415806723,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 +ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1656415806791,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 +app-config.js,1656415806795,23760445178e751a79e45729650cfbd10892c44e3948e6f4afda37e568ab70eb +google.js,1656415806795,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 +index.html,1656415806799,85da31fdea84a1fbdebe09f5e6777b795f383d728f653ca45c9fa7c609cb69d4 +init-service-worker.js,1656415806795,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 +manifest.json,1656415806795,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b +polyfill.min.js,1656415806795,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab +es6-shim.min.js,1656415806795,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 +silent-refresh.html,1656415806795,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 +sw.js.map,1656415806723,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 +sw.js,1656415806723,3822fbeda629b8b12ce1f22475840fa92c0525f97dc6e48f8beb9b4171a47185 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1656415806747,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1656415806747,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 +assets/Button_File.svg,1656415806795,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 +assets/Button_Folder.svg,1656415806795,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f +assets/android-chrome-144x144.png,1656415806795,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/android-chrome-192x192.png,1656415806795,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 +assets/android-chrome-256x256.png,1656415806795,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc +assets/android-chrome-36x36.png,1656415806795,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 +assets/android-chrome-384x384.png,1656415806795,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 +assets/android-chrome-48x48.png,1656415806795,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 +assets/android-chrome-512x512.png,1656415806795,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 +app.ec424a4f8752c9c36ffb.css,1656415806747,2373b96b0d0d36199a36eed42479d4de8440dc97e2746dc50590c35f3168c0b9 +StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1656415806751,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 +cornerstoneWADOImageLoader.min.js,1656415806795,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 +assets/android-chrome-72x72.png,1656415806795,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/android-chrome-96x96.png,1656415806795,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1656415806791,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d +75a0c2dfe07b824c7d21.wasm,1656415806795,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 +assets/apple-touch-icon-1024x1024.png,1656415806795,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 +app.ec424a4f8752c9c36ffb.css.map,1656415806791,4adabf60188189cf20176a37b4a484cf9a36178805ab1b95b9383689bae0f31c +assets/apple-touch-icon-114x114.png,1656415806795,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d +assets/apple-touch-icon-120x120.png,1656415806795,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 +assets/apple-touch-icon-144x144.png,1656415806795,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/apple-touch-icon-152x152.png,1656415806795,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a +assets/apple-touch-icon-167x167.png,1656415806795,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece +assets/apple-touch-icon-180x180.png,1656415806795,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1656415806747,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 +assets/apple-touch-icon-57x57.png,1656415806795,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f +assets/apple-touch-icon-60x60.png,1656415806795,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 +assets/apple-touch-icon-72x72.png,1656415806795,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/apple-touch-icon-76x76.png,1656415806795,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 +assets/apple-touch-icon-precomposed.png,1656415806795,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-icon.png,1656415806795,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-startup-image-320x460.png,1656415806795,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 +assets/apple-touch-startup-image-640x1096.png,1656415806795,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d +assets/apple-touch-startup-image-640x920.png,1656415806795,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae +assets/apple-touch-startup-image-748x1024.png,1656415806795,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a +assets/apple-touch-startup-image-750x1294.png,1656415806795,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 +assets/apple-touch-startup-image-768x1004.png,1656415806795,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 +assets/browserconfig.xml,1656415806795,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 +assets/coast-228x228.png,1656415806795,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d +assets/apple-touch-startup-image-1182x2208.png,1656415806795,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe +assets/apple-touch-startup-image-1242x2148.png,1656415806795,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 +assets/favicon-16x16.png,1656415806795,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 +assets/favicon-32x32.png,1656415806795,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b +assets/apple-touch-startup-image-1496x2048.png,1656415806795,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c +assets/apple-touch-startup-image-1536x2008.png,1656415806795,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 +index.worker.min.worker.js,1656415806795,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 +assets/firefox_app_128x128.png,1656415806795,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b +assets/favicon.ico,1656415806795,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 +assets/firefox_app_512x512.png,1656415806795,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 +assets/firefox_app_60x60.png,1656415806795,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc +assets/manifest.webapp,1656415806795,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe +assets/mstile-144x144.png,1656415806795,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/mstile-150x150.png,1656415806795,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 +oidc-client.min.js,1656415806799,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d +assets/mstile-310x150.png,1656415806795,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac +a2659d938e7b5e69ece3.wasm,1656415806795,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 +assets/mstile-310x310.png,1656415806795,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 +assets/mstile-70x70.png,1656415806795,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 +assets/yandex-browser-50x50.png,1656415806795,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 +assets/yandex-browser-manifest.json,1656415806795,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1656415806795,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1656415806795,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1656415806795,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1656415806795,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1656415806795,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1656415806795,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1656415806795,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1656415806795,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1656415806795,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1656415806795,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1656415806795,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1656415806795,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1656415806795,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1656415806795,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1656415806795,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1656415806795,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1656415806795,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1656415806795,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1656415806795,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1656415806795,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1656415806795,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1656415806795,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1656415806795,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1656415806799,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1656415806795,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1656415806799,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1656415806799,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1656415806799,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1656415806799,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1656415806799,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1656415806799,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1656415806799,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1656415806799,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1656415806799,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1656415806795,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1656415806799,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1656415806799,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1656415806799,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1656415806799,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1656415806799,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1656415806799,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1656415806799,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1656415806799,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1656415806799,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1656415806799,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1656415806799,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1656415806799,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 +third_party/workbox/workbox-v5.1.4/workbox-sw.js,1656415806799,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1656415806799,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 +third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1656415806799,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1656415806799,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1656415806799,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1656415806799,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1656415806799,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1656415806799,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1656415806799,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1656415806799,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1656415806799,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1656415806799,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1656415806799,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1656415806799,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1656415806799,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 +14.bundle.f5546f507dfdd523113f.js.map,1656415806791,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 +cornerstoneWADOImageLoader.min.js.map,1656415806795,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb +app.bundle.4b286f12a8a62df10ce2.js,1656415806747,3166b0ac3f61a997a18f09be0a5052ea5b95041b886827ed208893733b5247e4 +index.worker.min.worker.js.map,1656415806795,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1656415806747,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 +12.bundle.0e2dfc762384a0b7492d.js,1656415806747,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 +app.bundle.4b286f12a8a62df10ce2.js.map,1656415806791,3e41b062fcbd5bd40314487230979bd8e5015ab1d939a2195676c1864902d380 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1656415806791,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1656415806747,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 +12.bundle.0e2dfc762384a0b7492d.js.map,1656415806791,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1656415806791,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 From 595eee7bae8a3e7472136de26198b235be881f22 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Thu, 30 Jun 2022 12:20:29 +0200 Subject: [PATCH 09/54] Update to OHIFv 4.12.30 --- .../hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache | 390 +++++++++--------- 1 file changed, 195 insertions(+), 195 deletions(-) diff --git a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache index 4d7305a24ee..8d8d0879e01 100644 --- a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache +++ b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache @@ -1,195 +1,195 @@ -0.ec424a4f8752c9c36ffb.css,1656415806723,fa44ae9a1411d97e259e6a2d019f9530aa30f08c9f76865f56813f5208891ebd -1.ec424a4f8752c9c36ffb.css,1656415806723,1b52b926f7053a84f2499214c99cc5e50f647883c03e7478bb625072fa0de7fb -0.ec424a4f8752c9c36ffb.css.map,1656415806747,de7d9ef47e311435a0df8c6da8024059f5a488ff6c7017afc414338656e1a872 -1.ec424a4f8752c9c36ffb.css.map,1656415806747,55cfa5ba03ac01e4bd4f92d0f7fab1100bb4f1c8f61493627179acfbf50abc73 -10.ec424a4f8752c9c36ffb.css,1656415806747,00fa73d77ec44e76db5a71b47bb6f7b0c6884b241090695de4b5d9dc48f61dec -12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1656415806747,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 -10.ec424a4f8752c9c36ffb.css.map,1656415806791,0c385da712c9de55fe9178ad42e28df7439699528fd10d5c36f44bf8fd2fa72e -13.bundle.414d50c4c63ffee40875.js,1656415806747,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 -13.ec424a4f8752c9c36ffb.css.map,1656415806791,b467143eed342e28342df177c1562233ab9266c08968b0db5f1b9b167cff39dc -13.ec424a4f8752c9c36ffb.css,1656415806747,1b89787e8bb678baacb57df939cf097997efa0a01cc01ae476050ec33a908f06 -13.bundle.414d50c4c63ffee40875.js.map,1656415806791,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f -14.bundle.f5546f507dfdd523113f.js.LICENSE,1656415806747,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 -15.bundle.26fcbfb06e5b5a2afec9.js,1656415806747,c1b568aa4c425e0b9a83dcbf0795fe047b2b93b452f1209cc8f12bdce23414df -15.ec424a4f8752c9c36ffb.css,1656415806747,57000c885c7ad8dd1c288a54d62f08f5b73b033606cbe4ea136fcf728933ed98 -15.ec424a4f8752c9c36ffb.css.map,1656415806795,ac1ffbee74b548a1f2167b9f3340fc081a50628e4f8538bcb4aa5247c6448417 -16.bundle.ba74417dab689e58043f.js,1656415806747,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee -16.bundle.ba74417dab689e58043f.js.map,1656415806795,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 -16.ec424a4f8752c9c36ffb.css,1656415806747,d40c9079bc1f6d988a0df0fed86b700a793922ae93ae5b6843d25717a708a69b -16.ec424a4f8752c9c36ffb.css.map,1656415806795,3385f87aee14bea3d07321e7e1a3f1654577d04756f963a1255d590ce5b54392 -17.bundle.9c08231db22cb3af6236.js,1656415806747,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 -18.bundle.920419b610fe06564773.js,1656415806747,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd -18.bundle.920419b610fe06564773.js.map,1656415806795,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 -5.ec424a4f8752c9c36ffb.css,1656415806723,192b54be910358dbf4c6577e8cf615342a05f8d8c21c1d7b0a9826a3bea2539b -5.ec424a4f8752c9c36ffb.css.map,1656415806751,5dc697543df2a455dd71a90dcbed1256c1fe1587d6f206a7994075afc28bbe4f -6.ec424a4f8752c9c36ffb.css,1656415806723,82692c80c957d018ea086814ac6b8874424d305d4ed0ad92d2272d192b3189d6 -6.ec424a4f8752c9c36ffb.css.map,1656415806791,80697209b1e277788581e61d7a81d5d8ce7e6b619f3ff9c462564dcd8170a8ae -610.min.worker.js,1656415806795,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 -888.min.worker.js,1656415806795,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d -CallbackPage.bundle.19672d8befc69c8d7c0f.js,1656415806723,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 -CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1656415806747,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1656415806723,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1656415806723,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1656415806747,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1656415806723,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1656415806747,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js,1656415806723,c9b9a148b705344858a7662b74f79165de6deaafc846dc8f47377cef362e6ee1 -888.min.worker.js.map,1656415806795,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1656415806747,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 -StudyListRouting.bundle.3e600292e431f99c2cf1.js,1656415806723,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 -15.bundle.26fcbfb06e5b5a2afec9.js.map,1656415806795,72a703657818743e31b3cd4d79c385820eaaadb19f488197752a6312787e794d -610.min.worker.js.map,1656415806795,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 -8fdb3922f00c5527abec.worker.js.map,1656415806723,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 -14.bundle.f5546f507dfdd523113f.js,1656415806747,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d -17.bundle.9c08231db22cb3af6236.js.map,1656415806795,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 -62ab5d58a2bea7b5a1dc.wasm,1656415806795,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1656415806723,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1656415806791,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.db9bc71cdee5a3b3f793.js.map,1656415806747,40a02e510774ffd41ae422b421e55a9c24aecbeaa008638b003313f03597a49c -ViewerRouting.bundle.4ca721239b5d489cacff.js,1656415806723,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 -ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1656415806791,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 -app-config.js,1656415806795,23760445178e751a79e45729650cfbd10892c44e3948e6f4afda37e568ab70eb -google.js,1656415806795,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 -index.html,1656415806799,85da31fdea84a1fbdebe09f5e6777b795f383d728f653ca45c9fa7c609cb69d4 -init-service-worker.js,1656415806795,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 -manifest.json,1656415806795,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b -polyfill.min.js,1656415806795,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab -es6-shim.min.js,1656415806795,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 -silent-refresh.html,1656415806795,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 -sw.js.map,1656415806723,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 -sw.js,1656415806723,3822fbeda629b8b12ce1f22475840fa92c0525f97dc6e48f8beb9b4171a47185 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1656415806747,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1656415806747,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 -assets/Button_File.svg,1656415806795,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 -assets/Button_Folder.svg,1656415806795,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f -assets/android-chrome-144x144.png,1656415806795,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/android-chrome-192x192.png,1656415806795,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 -assets/android-chrome-256x256.png,1656415806795,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc -assets/android-chrome-36x36.png,1656415806795,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 -assets/android-chrome-384x384.png,1656415806795,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 -assets/android-chrome-48x48.png,1656415806795,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 -assets/android-chrome-512x512.png,1656415806795,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 -app.ec424a4f8752c9c36ffb.css,1656415806747,2373b96b0d0d36199a36eed42479d4de8440dc97e2746dc50590c35f3168c0b9 -StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1656415806751,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 -cornerstoneWADOImageLoader.min.js,1656415806795,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 -assets/android-chrome-72x72.png,1656415806795,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/android-chrome-96x96.png,1656415806795,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1656415806791,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d -75a0c2dfe07b824c7d21.wasm,1656415806795,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 -assets/apple-touch-icon-1024x1024.png,1656415806795,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 -app.ec424a4f8752c9c36ffb.css.map,1656415806791,4adabf60188189cf20176a37b4a484cf9a36178805ab1b95b9383689bae0f31c -assets/apple-touch-icon-114x114.png,1656415806795,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d -assets/apple-touch-icon-120x120.png,1656415806795,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 -assets/apple-touch-icon-144x144.png,1656415806795,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/apple-touch-icon-152x152.png,1656415806795,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a -assets/apple-touch-icon-167x167.png,1656415806795,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece -assets/apple-touch-icon-180x180.png,1656415806795,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1656415806747,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 -assets/apple-touch-icon-57x57.png,1656415806795,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f -assets/apple-touch-icon-60x60.png,1656415806795,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 -assets/apple-touch-icon-72x72.png,1656415806795,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/apple-touch-icon-76x76.png,1656415806795,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 -assets/apple-touch-icon-precomposed.png,1656415806795,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-icon.png,1656415806795,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-startup-image-320x460.png,1656415806795,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 -assets/apple-touch-startup-image-640x1096.png,1656415806795,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d -assets/apple-touch-startup-image-640x920.png,1656415806795,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae -assets/apple-touch-startup-image-748x1024.png,1656415806795,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a -assets/apple-touch-startup-image-750x1294.png,1656415806795,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 -assets/apple-touch-startup-image-768x1004.png,1656415806795,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 -assets/browserconfig.xml,1656415806795,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 -assets/coast-228x228.png,1656415806795,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d -assets/apple-touch-startup-image-1182x2208.png,1656415806795,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe -assets/apple-touch-startup-image-1242x2148.png,1656415806795,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 -assets/favicon-16x16.png,1656415806795,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 -assets/favicon-32x32.png,1656415806795,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b -assets/apple-touch-startup-image-1496x2048.png,1656415806795,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c -assets/apple-touch-startup-image-1536x2008.png,1656415806795,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 -index.worker.min.worker.js,1656415806795,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 -assets/firefox_app_128x128.png,1656415806795,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b -assets/favicon.ico,1656415806795,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 -assets/firefox_app_512x512.png,1656415806795,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 -assets/firefox_app_60x60.png,1656415806795,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc -assets/manifest.webapp,1656415806795,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe -assets/mstile-144x144.png,1656415806795,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/mstile-150x150.png,1656415806795,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 -oidc-client.min.js,1656415806799,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d -assets/mstile-310x150.png,1656415806795,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac -a2659d938e7b5e69ece3.wasm,1656415806795,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 -assets/mstile-310x310.png,1656415806795,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 -assets/mstile-70x70.png,1656415806795,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 -assets/yandex-browser-50x50.png,1656415806795,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 -assets/yandex-browser-manifest.json,1656415806795,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1656415806795,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1656415806795,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1656415806795,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1656415806795,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1656415806795,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1656415806795,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1656415806795,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1656415806795,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1656415806795,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1656415806795,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1656415806795,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1656415806795,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1656415806795,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1656415806795,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1656415806795,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1656415806795,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1656415806795,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1656415806795,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1656415806795,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1656415806795,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1656415806795,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1656415806795,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1656415806795,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1656415806799,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1656415806795,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1656415806799,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1656415806799,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1656415806799,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1656415806799,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1656415806799,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1656415806799,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1656415806799,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1656415806799,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1656415806799,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1656415806795,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1656415806799,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1656415806799,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1656415806799,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1656415806799,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1656415806799,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1656415806799,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1656415806799,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1656415806799,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1656415806799,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1656415806799,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1656415806799,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1656415806799,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 -third_party/workbox/workbox-v5.1.4/workbox-sw.js,1656415806799,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1656415806799,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 -third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1656415806799,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1656415806799,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1656415806799,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1656415806799,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1656415806799,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1656415806799,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1656415806799,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1656415806799,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1656415806799,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1656415806799,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1656415806799,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1656415806799,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1656415806799,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 -14.bundle.f5546f507dfdd523113f.js.map,1656415806791,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 -cornerstoneWADOImageLoader.min.js.map,1656415806795,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb -app.bundle.4b286f12a8a62df10ce2.js,1656415806747,3166b0ac3f61a997a18f09be0a5052ea5b95041b886827ed208893733b5247e4 -index.worker.min.worker.js.map,1656415806795,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1656415806747,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 -12.bundle.0e2dfc762384a0b7492d.js,1656415806747,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 -app.bundle.4b286f12a8a62df10ce2.js.map,1656415806791,3e41b062fcbd5bd40314487230979bd8e5015ab1d939a2195676c1864902d380 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1656415806791,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1656415806747,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 -12.bundle.0e2dfc762384a0b7492d.js.map,1656415806791,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1656415806791,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 +0.944675be591289b7511b.css,1656584081013,24deb70f7093ddd8d8d0558c5f19b9be4aca95f7855473ea6f31f0037c02baa3 +1.944675be591289b7511b.css,1656584081013,56d9a79c800691afc7f2527685581f70bfe30d39a3e3d56ce4c7133313dbb4a9 +1.944675be591289b7511b.css.map,1656584081041,0e6a04549e336f21aab29225d80288312f25526da89a4c36175eedacca5fa41c +0.944675be591289b7511b.css.map,1656584081041,79f8e5103bfe75624ae3c6dc834ae7d5e3d226ab3e5f849af9c2abe394318b66 +10.944675be591289b7511b.css,1656584081041,cfc23dc570f95b6c449c7542ef7d92c827efedadbf3a2498c29fe031e5daaa31 +12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1656584081041,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 +13.944675be591289b7511b.css,1656584081041,8e014864cd49345e9212d0917c786800721e78769ebe24676f415033f9a4e3de +13.944675be591289b7511b.css.map,1656584081089,e455a319ab168b99bd5f408bc2272742b76eba8c723446401c86341139297350 +10.944675be591289b7511b.css.map,1656584081089,9ff5e199a1dcba7943c647e94d72c56e3b87d4aaafd585b31463cfbce2388fef +13.bundle.414d50c4c63ffee40875.js,1656584081041,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 +13.bundle.414d50c4c63ffee40875.js.map,1656584081089,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f +14.bundle.f5546f507dfdd523113f.js.LICENSE,1656584081041,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 +15.944675be591289b7511b.css,1656584081041,8f12c04501b07abee131ddb2fe1b2e9a03ac9aa5357b6de59f368c4ddc35fc07 +15.944675be591289b7511b.css.map,1656584081089,14bf2d1e37afd7a0fc2722b85be745b754b2acfcb424112d0231f0b497a4cb6d +15.bundle.c5a8614a938921f72d48.js,1656584081041,75f7e62d28e87c5ca93f0f9acc3b671fc8d441a4867d200818d3826c29614408 +16.944675be591289b7511b.css,1656584081041,72bef3096b5ae147a05d32a91608121ffbbab8eef5743db34d26ed82e48265cf +16.944675be591289b7511b.css.map,1656584081089,2755351894438a2f262307ff274f98071ad1dbad89bd33d62284e4eeab6c5a6e +16.bundle.ba74417dab689e58043f.js,1656584081041,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee +16.bundle.ba74417dab689e58043f.js.map,1656584081089,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 +17.bundle.9c08231db22cb3af6236.js,1656584081041,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 +18.bundle.920419b610fe06564773.js,1656584081041,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd +18.bundle.920419b610fe06564773.js.map,1656584081089,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 +5.944675be591289b7511b.css,1656584081013,328c95c5e189100086c229c7536fbabe9f14d5bff9551fe10d9997b96b5b25f9 +5.944675be591289b7511b.css.map,1656584081045,d810710b27ec700b27dbab06d7759dcbab76781bb22f99e14352a161c8709fbf +6.944675be591289b7511b.css,1656584081013,73faeddad8f5221b8a453738f8482912631c2549164bc870ef73c9486c343470 +6.944675be591289b7511b.css.map,1656584081089,d4e290747736a6421ab8dac12e6cf4a37c50133114aab8daa32b97b13ba5c5e3 +610.min.worker.js,1656584081089,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 +888.min.worker.js,1656584081089,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d +CallbackPage.bundle.19672d8befc69c8d7c0f.js,1656584081013,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 +CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1656584081041,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1656584081013,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1656584081013,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1656584081041,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e +888.min.worker.js.map,1656584081089,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1656584081013,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.aa4dd96d5237a612427f.js,1656584081013,449efbf1a4fe1676e831a52fdbab20b0993c86c8c0295b83b6412f4309ecf82d +ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1656584081041,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 +IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1656584081045,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 +StudyListRouting.bundle.3e600292e431f99c2cf1.js,1656584081013,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 +15.bundle.c5a8614a938921f72d48.js.map,1656584081089,5c7e9ce72749e245a2d8612112f98b2e56bfafd10ba20669d51a0cd1ea18c367 +610.min.worker.js.map,1656584081089,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 +8fdb3922f00c5527abec.worker.js.map,1656584081013,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 +14.bundle.f5546f507dfdd523113f.js,1656584081041,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d +17.bundle.9c08231db22cb3af6236.js.map,1656584081089,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 +62ab5d58a2bea7b5a1dc.wasm,1656584081089,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1656584081013,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba +ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.aa4dd96d5237a612427f.js.map,1656584081041,9ed4d06b9c951b91c58d7db6e64198ce8eb19ea0cd43180c2c611a31cf553d39 +ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1656584081089,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 +ViewerRouting.bundle.4ca721239b5d489cacff.js,1656584081013,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 +ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1656584081089,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 +app-config.js,1656584081089,23760445178e751a79e45729650cfbd10892c44e3948e6f4afda37e568ab70eb +google.js,1656584081089,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 +index.html,1656584081093,efe375d34331f69bd367160f14b28cca4f9bdcacb96cc5b39304fb224d29f2ec +es6-shim.min.js,1656584081093,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 +init-service-worker.js,1656584081093,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 +manifest.json,1656584081093,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b +polyfill.min.js,1656584081093,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab +silent-refresh.html,1656584081093,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 +sw.js,1656584081013,c016a258da5f0b194a907261ca4722f19a8c3d9aa7d2f86732e00dd44f8f161e +sw.js.map,1656584081013,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1656584081041,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1656584081041,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 +assets/Button_File.svg,1656584081089,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 +assets/Button_Folder.svg,1656584081089,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f +assets/android-chrome-144x144.png,1656584081089,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/android-chrome-192x192.png,1656584081089,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 +assets/android-chrome-256x256.png,1656584081089,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc +assets/android-chrome-36x36.png,1656584081089,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 +assets/android-chrome-384x384.png,1656584081089,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 +assets/android-chrome-48x48.png,1656584081089,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 +app.944675be591289b7511b.css,1656584081041,8ce6038133f4edf80019bb44473433d83de02b877bc0384de3aa26e43025c84a +StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1656584081089,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 +assets/android-chrome-512x512.png,1656584081089,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 +assets/android-chrome-72x72.png,1656584081089,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +cornerstoneWADOImageLoader.min.js,1656584081089,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 +assets/android-chrome-96x96.png,1656584081089,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 +75a0c2dfe07b824c7d21.wasm,1656584081089,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 +assets/apple-touch-icon-1024x1024.png,1656584081089,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 +vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1656584081089,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d +app.944675be591289b7511b.css.map,1656584081089,ca8cabb69099f9bed77dbf72e4e5b7b6166f1bff9ad482cd63a2d9901e3469a8 +assets/apple-touch-icon-114x114.png,1656584081089,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d +assets/apple-touch-icon-120x120.png,1656584081089,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 +assets/apple-touch-icon-144x144.png,1656584081089,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/apple-touch-icon-152x152.png,1656584081089,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1656584081041,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 +assets/apple-touch-icon-167x167.png,1656584081089,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece +assets/apple-touch-icon-180x180.png,1656584081089,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-icon-57x57.png,1656584081089,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f +assets/apple-touch-icon-60x60.png,1656584081089,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 +assets/apple-touch-icon-72x72.png,1656584081089,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac +assets/apple-touch-icon-76x76.png,1656584081089,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 +assets/apple-touch-icon-precomposed.png,1656584081089,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-icon.png,1656584081089,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc +assets/apple-touch-startup-image-320x460.png,1656584081089,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 +assets/apple-touch-startup-image-640x920.png,1656584081089,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae +assets/apple-touch-startup-image-640x1096.png,1656584081089,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d +assets/apple-touch-startup-image-748x1024.png,1656584081089,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a +assets/apple-touch-startup-image-750x1294.png,1656584081089,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 +assets/apple-touch-startup-image-768x1004.png,1656584081089,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 +assets/browserconfig.xml,1656584081089,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 +assets/apple-touch-startup-image-1182x2208.png,1656584081089,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe +assets/apple-touch-startup-image-1242x2148.png,1656584081089,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 +assets/apple-touch-startup-image-1496x2048.png,1656584081089,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c +assets/apple-touch-startup-image-1536x2008.png,1656584081089,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 +assets/coast-228x228.png,1656584081089,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d +assets/favicon-16x16.png,1656584081093,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 +index.worker.min.worker.js,1656584081089,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 +assets/favicon-32x32.png,1656584081093,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b +assets/favicon.ico,1656584081093,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 +assets/firefox_app_128x128.png,1656584081089,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b +assets/firefox_app_512x512.png,1656584081093,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 +assets/firefox_app_60x60.png,1656584081093,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc +assets/manifest.webapp,1656584081093,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe +assets/mstile-144x144.png,1656584081093,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d +assets/mstile-150x150.png,1656584081093,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 +a2659d938e7b5e69ece3.wasm,1656584081089,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 +assets/mstile-310x150.png,1656584081093,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac +oidc-client.min.js,1656584081093,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d +assets/mstile-310x310.png,1656584081093,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 +assets/mstile-70x70.png,1656584081093,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 +assets/yandex-browser-50x50.png,1656584081093,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 +assets/yandex-browser-manifest.json,1656584081093,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1656584081093,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1656584081093,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1656584081093,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 +third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1656584081093,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1656584081093,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1656584081093,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1656584081093,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 +third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1656584081093,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1656584081093,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1656584081093,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1656584081093,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 +third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1656584081093,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1656584081093,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1656584081093,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b +third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1656584081093,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1656584081093,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 +third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1656584081093,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1656584081093,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 +third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1656584081093,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1656584081093,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1656584081093,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1656584081093,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 +third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1656584081093,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1656584081093,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1656584081093,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1656584081093,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 +third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1656584081093,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1656584081093,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1656584081093,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1656584081093,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 +third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1656584081093,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1656584081093,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 +third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1656584081093,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 +third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1656584081093,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a +third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1656584081093,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e +third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1656584081093,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1656584081093,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1656584081093,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 +third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1656584081093,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1656584081093,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 +third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1656584081093,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1656584081093,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb +third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1656584081093,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1656584081093,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf +third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1656584081093,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1656584081093,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 +third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1656584081093,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 +third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1656584081093,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 +third_party/workbox/workbox-v5.1.4/workbox-sw.js,1656584081093,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 +third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1656584081093,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1656584081093,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1656584081093,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1656584081093,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1656584081093,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1656584081093,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1656584081093,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1656584081093,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 +third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1656584081093,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1656584081093,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1656584081093,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1656584081093,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 +third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1656584081093,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 +14.bundle.f5546f507dfdd523113f.js.map,1656584081089,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 +cornerstoneWADOImageLoader.min.js.map,1656584081089,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb +app.bundle.1a4c8f77859c4dbf2586.js,1656584081041,ae3220bd5e143eac971fd0564bd8efbcca6c7275014ed0b3ac737b63edc50ec9 +index.worker.min.worker.js.map,1656584081089,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1656584081041,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 +12.bundle.0e2dfc762384a0b7492d.js,1656584081041,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 +app.bundle.1a4c8f77859c4dbf2586.js.map,1656584081089,a306331afe4e2786a8ea3a5a7c142fa23f6955a163e63a66c8f610dec0c7b791 +vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1656584081089,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1656584081041,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 +12.bundle.0e2dfc762384a0b7492d.js.map,1656584081089,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 +vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1656584081089,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 From 353c1807db69d0e6898f79066e255829e1854542 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Wed, 24 Aug 2022 11:25:41 +0200 Subject: [PATCH 10/54] Re #149: remove firebase files --- ...lld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache | 1 - .../hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache | 195 ------------------ .gitignore | 4 + firebase.json | 16 -- 4 files changed, 4 insertions(+), 212 deletions(-) delete mode 100644 .firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache delete mode 100644 .firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache delete mode 100644 firebase.json diff --git a/.firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache b/.firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache deleted file mode 100644 index fddf0f01038..00000000000 --- a/.firebase/hosting.Vmlld2Vycy9wbGF0Zm9ybS92aWV3ZXIvZGlzdA.cache +++ /dev/null @@ -1 +0,0 @@ -index.html,1656316379391,76471ea3352dc629a995b76e241c928bdcf3daf5df532fd2e81775afe095da0b diff --git a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache b/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache deleted file mode 100644 index 8d8d0879e01..00000000000 --- a/.firebase/hosting.cGxhdGZvcm0vdmlld2VyL2Rpc3Q.cache +++ /dev/null @@ -1,195 +0,0 @@ -0.944675be591289b7511b.css,1656584081013,24deb70f7093ddd8d8d0558c5f19b9be4aca95f7855473ea6f31f0037c02baa3 -1.944675be591289b7511b.css,1656584081013,56d9a79c800691afc7f2527685581f70bfe30d39a3e3d56ce4c7133313dbb4a9 -1.944675be591289b7511b.css.map,1656584081041,0e6a04549e336f21aab29225d80288312f25526da89a4c36175eedacca5fa41c -0.944675be591289b7511b.css.map,1656584081041,79f8e5103bfe75624ae3c6dc834ae7d5e3d226ab3e5f849af9c2abe394318b66 -10.944675be591289b7511b.css,1656584081041,cfc23dc570f95b6c449c7542ef7d92c827efedadbf3a2498c29fe031e5daaa31 -12.bundle.0e2dfc762384a0b7492d.js.LICENSE,1656584081041,3abf9ed010dd4eeaf5152a5d1b8d791bff7fb7b9f5ce722c8a51f3b610ea5aa9 -13.944675be591289b7511b.css,1656584081041,8e014864cd49345e9212d0917c786800721e78769ebe24676f415033f9a4e3de -13.944675be591289b7511b.css.map,1656584081089,e455a319ab168b99bd5f408bc2272742b76eba8c723446401c86341139297350 -10.944675be591289b7511b.css.map,1656584081089,9ff5e199a1dcba7943c647e94d72c56e3b87d4aaafd585b31463cfbce2388fef -13.bundle.414d50c4c63ffee40875.js,1656584081041,5b997ae0161026e26f40f4d1c6fc233a7cfaa6f69f56cf1fff8d484eb106a659 -13.bundle.414d50c4c63ffee40875.js.map,1656584081089,f0412f24da8a880e29fb2962cbc57d2cc8fc7e51795c08dd93fb6d47d0fe916f -14.bundle.f5546f507dfdd523113f.js.LICENSE,1656584081041,d6bbf90efda65e45fdaa423d6f5f9c71c58bd2ef4d84ad6cf3a8d8422daf80d9 -15.944675be591289b7511b.css,1656584081041,8f12c04501b07abee131ddb2fe1b2e9a03ac9aa5357b6de59f368c4ddc35fc07 -15.944675be591289b7511b.css.map,1656584081089,14bf2d1e37afd7a0fc2722b85be745b754b2acfcb424112d0231f0b497a4cb6d -15.bundle.c5a8614a938921f72d48.js,1656584081041,75f7e62d28e87c5ca93f0f9acc3b671fc8d441a4867d200818d3826c29614408 -16.944675be591289b7511b.css,1656584081041,72bef3096b5ae147a05d32a91608121ffbbab8eef5743db34d26ed82e48265cf -16.944675be591289b7511b.css.map,1656584081089,2755351894438a2f262307ff274f98071ad1dbad89bd33d62284e4eeab6c5a6e -16.bundle.ba74417dab689e58043f.js,1656584081041,a26344b06ad0fe9e2f25f77a40fe1757fc4d2f752fa2a7785a4fa6bbbee24dee -16.bundle.ba74417dab689e58043f.js.map,1656584081089,b032358a01e762335f75a4f8e29de332d6899fcfeebc034ac21261ae0cb74cf7 -17.bundle.9c08231db22cb3af6236.js,1656584081041,ad5e8c87c1469d6db466695d61b6a873b9bb6fef37cf8c3833eee540e47304f6 -18.bundle.920419b610fe06564773.js,1656584081041,40f45566183d774763bc580020fc189df968f2325a7195c27d04e566dbf3a6fd -18.bundle.920419b610fe06564773.js.map,1656584081089,bd642618ef29216693f22c2c3bd8d817dcd539f24f601c3d4ebdfb357a861b55 -5.944675be591289b7511b.css,1656584081013,328c95c5e189100086c229c7536fbabe9f14d5bff9551fe10d9997b96b5b25f9 -5.944675be591289b7511b.css.map,1656584081045,d810710b27ec700b27dbab06d7759dcbab76781bb22f99e14352a161c8709fbf -6.944675be591289b7511b.css,1656584081013,73faeddad8f5221b8a453738f8482912631c2549164bc870ef73c9486c343470 -6.944675be591289b7511b.css.map,1656584081089,d4e290747736a6421ab8dac12e6cf4a37c50133114aab8daa32b97b13ba5c5e3 -610.min.worker.js,1656584081089,b40bf517f0505ab7f266de1497ea9528e56632a7e721f7d2cd264b13381e9a61 -888.min.worker.js,1656584081089,611739d4f4bda9e034900c044ce07aab727dea7d2396147f5a2b5aa0941cbb7d -CallbackPage.bundle.19672d8befc69c8d7c0f.js,1656584081013,ea1720d3417a469c2a36a74531261aacedccd332d213359f72dde34829e6bfc0 -CallbackPage.bundle.19672d8befc69c8d7c0f.js.map,1656584081041,7a772a28fcc06c8626b10aa633439b752bb501e718420a8bd67cbd821bbb0d2a -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js,1656584081013,f9827d0d7573bdab538ea2be14ac523b07a3b42381cc6f2f6c8881e7b21817e6 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js,1656584081013,e567506e98c93c5fff315ebe5e9529c831e86fa8fa87df45f04fe1a14d4047f3 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~StudyListRouting~ViewerLocalFileData~ViewerRouting.bundle.1c23e9e3c0ebb53659dc.js.map,1656584081041,3ca8381489fa50fb85ba0162d18bcc185fabf0a14b00567f7563e9c0199cc66e -888.min.worker.js.map,1656584081089,1947d31f0c06f3096afdbe5e423e973feec30bcfd1e71ffa9e3ea4cdd8fb21b1 -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js,1656584081013,6290d4e8085934f754ffe2fea82710c692a629c8028a7cafec8fa5efef7cc3c3 -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.aa4dd96d5237a612427f.js,1656584081013,449efbf1a4fe1676e831a52fdbab20b0993c86c8c0295b83b6412f4309ecf82d -ConnectedStandaloneRouting.bundle.40e139756d3a714f91b0.js.map,1656584081041,8456a3d062e43f4fda38d932e6d04bbe851d9b226c3ce15caa839bd3c3ca15c7 -IHEInvokeImageDisplay.bundle.be2641c65695c869bfba.js.map,1656584081045,2c159a22457bd51a7450934d5df05777e9315e467e941a4f76c1c6057f66d050 -StudyListRouting.bundle.3e600292e431f99c2cf1.js,1656584081013,d10c68cf3c51b8f2ea3c7baf4ddb37cac8db48fcca3917cd96d03c5c9be3da80 -15.bundle.c5a8614a938921f72d48.js.map,1656584081089,5c7e9ce72749e245a2d8612112f98b2e56bfafd10ba20669d51a0cd1ea18c367 -610.min.worker.js.map,1656584081089,7f52c316c66d80b907b2b82dfdb7495a734dfb3c5b055647a2386b55b5d84292 -8fdb3922f00c5527abec.worker.js.map,1656584081013,9f413b9086a9d33f6e115e7195fd5afb60a4060797a953ccd1b4cc53492cd5f0 -14.bundle.f5546f507dfdd523113f.js,1656584081041,1e13456a67619d4d5af296a390772831c39bcec274746879ca8214fb663f287d -17.bundle.9c08231db22cb3af6236.js.map,1656584081089,234e57a60deeca9c31a8c60834a1cbe2617286bfee59316ca054e7282b3f0a92 -62ab5d58a2bea7b5a1dc.wasm,1656584081089,34e7f910ce36551d9345e05f71c5e21ddb530917683ff782ab9d17675036486f -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js,1656584081013,2f65c508933ae4d0fa70050bf7aac5ffdfa8b8299525ac582009c7bc3c3df5ba -ConnectedStandaloneRouting~IHEInvokeImageDisplay~ViewerLocalFileData~ViewerRouting.bundle.aa4dd96d5237a612427f.js.map,1656584081041,9ed4d06b9c951b91c58d7db6e64198ce8eb19ea0cd43180c2c611a31cf553d39 -ViewerLocalFileData.bundle.88c7c17618070baefc8e.js.map,1656584081089,88f2df9edd1b9a4989105524f2cd8189a12d0f2954f45291ce45fe207bfbdbd2 -ViewerRouting.bundle.4ca721239b5d489cacff.js,1656584081013,346d51a45bbce9eb15024da5a91e4afedfa63c1c1a955256dba1059ebfb4c5b9 -ViewerRouting.bundle.4ca721239b5d489cacff.js.map,1656584081089,cd67bd309dcba46736f0e89d6a48abec2fe88df8339ed248c424b60bccfc1375 -app-config.js,1656584081089,23760445178e751a79e45729650cfbd10892c44e3948e6f4afda37e568ab70eb -google.js,1656584081089,fdd440101361de3900a01d78745480502f8a456ed8fea072f439052f10b7ad21 -index.html,1656584081093,efe375d34331f69bd367160f14b28cca4f9bdcacb96cc5b39304fb224d29f2ec -es6-shim.min.js,1656584081093,b5155603c0ffad66ce8eceabac8ac6f3f9239725bdd3dd3bd5d451b7ccbfe450 -init-service-worker.js,1656584081093,5dc3f4593b91c32c1e373b12190a96a91ea346c66a982a3e6eda04fcf4c0a622 -manifest.json,1656584081093,edf7637b3066e89ded696a766338c4a7a76c755c9790dfb9b0464818fd7ef26b -polyfill.min.js,1656584081093,8caa5cfde43721ce89ba214d22d5b0a134a30e178630d73c06308319de50b2ab -silent-refresh.html,1656584081093,cf3565e11d39639ba173a2cc91e01130b2cec2ef3c10dec42cfadfd9d3f339e0 -sw.js,1656584081013,c016a258da5f0b194a907261ca4722f19a8c3d9aa7d2f86732e00dd44f8f161e -sw.js.map,1656584081013,541c118357b95a635b62d20ec92280db52e46ad80126426b9310e02a0183f574 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js,1656584081041,0b8ab941b686f33ef20121a011a3b839097c0f52ee5da80bcb01769f3ea4ebe1 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.LICENSE,1656584081041,04b685a0d5f5d512a4a73ef9029a15c34047a1908f74fe01d45c0221a2a0dcd5 -assets/Button_File.svg,1656584081089,0be6e0fbf9c802744b045b8e20e013dc2c6c7a6e64a4cc9b20a7603d41cfbc20 -assets/Button_Folder.svg,1656584081089,e6fd244aa4d4660d681d109f6aabb652504119994878e70661e7c9a8ba2e7d9f -assets/android-chrome-144x144.png,1656584081089,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/android-chrome-192x192.png,1656584081089,e47703b22339592b9a53c87196f4aa0b01d40a9198e994e2186b0ddb9aaef686 -assets/android-chrome-256x256.png,1656584081089,09ab4bd34219ae2e7f02179ad3e368438f4a6b029de763fba8eb7348c5dcddbc -assets/android-chrome-36x36.png,1656584081089,12eefc1787aad25d0061d5b32d6a9436e655c5fe1bf8c5f82752bf85aa2a3c60 -assets/android-chrome-384x384.png,1656584081089,fe1e9ff7a3499c2dec884f93cd575cdba915c783f0af3e8351f8d170ee615673 -assets/android-chrome-48x48.png,1656584081089,88aa94a7077eb908c3ce3cdc544e6bd86645b7bd32fd24d4e5de77e1ab1edea9 -app.944675be591289b7511b.css,1656584081041,8ce6038133f4edf80019bb44473433d83de02b877bc0384de3aa26e43025c84a -StudyListRouting.bundle.3e600292e431f99c2cf1.js.map,1656584081089,688fbda1feec0ba1084905cfcbaf6a5667c1c3fa7ac8fce6b2b9a7437c826516 -assets/android-chrome-512x512.png,1656584081089,4dc420d5a081ec7c8ef83de8c3431a718c8192c6019fefc62548b6e11b806d57 -assets/android-chrome-72x72.png,1656584081089,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -cornerstoneWADOImageLoader.min.js,1656584081089,a1e54cc0936d847c83f0dbf7bb93b8c5643a6d6af0908d51456b65797f3adf98 -assets/android-chrome-96x96.png,1656584081089,931de700364af6bdec629d535073edc32511756e7c0fe3b2ccdb67c21c5b2359 -75a0c2dfe07b824c7d21.wasm,1656584081089,a6f4d4de1186b39d0092e068adbc0b9e736017da874e3df45a2763627c3df1f6 -assets/apple-touch-icon-1024x1024.png,1656584081089,d6187bae0740e62482febf66c5ac34224e16fa23637cebf8439ee2461b3e96c7 -vendors~ViewerLocalFileData.bundle.18a84b63ac1015833f94.js.map,1656584081089,e54372572e20d789f192c3e9bebaace959f612622f802da72fac3fe48e226b3d -app.944675be591289b7511b.css.map,1656584081089,ca8cabb69099f9bed77dbf72e4e5b7b6166f1bff9ad482cd63a2d9901e3469a8 -assets/apple-touch-icon-114x114.png,1656584081089,a67e3e5df2b9484e0dc8fa6574bfefb0e9bda28ea8e77a0180264c5caeff5b5d -assets/apple-touch-icon-120x120.png,1656584081089,aa50f92262ee6e577eee0dd617c8ee0123cdcaef3707d825e05359b6fd9893e6 -assets/apple-touch-icon-144x144.png,1656584081089,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/apple-touch-icon-152x152.png,1656584081089,4d895d3e8934db3d229a5de36a3d1c24d9abb96ce266198b21209ffd877f697a -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.LICENSE,1656584081041,fb435b9cac03976f8ca79f13511fa619177117f5dd7106ed1fc482082faaafd9 -assets/apple-touch-icon-167x167.png,1656584081089,368cd47374ef31abdf4e4debc51e4f1d7f1b6ebe75a772cc6101a2849136aece -assets/apple-touch-icon-180x180.png,1656584081089,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-icon-57x57.png,1656584081089,035d437326901e7301791a9d901d503eba59aa54a007301c05039021f448178f -assets/apple-touch-icon-60x60.png,1656584081089,65fa0a262c921aae300d49976f426d53d9e94883b85aa462c60c0e09c4592816 -assets/apple-touch-icon-72x72.png,1656584081089,224157029c162eb6cec038cdd1782ddcd59cfd0b356f59486380b8b6c81c42ac -assets/apple-touch-icon-76x76.png,1656584081089,98c702a427d7e8664f3da46813657d7dce100f4c4682dd4e9a22b7798a5032e3 -assets/apple-touch-icon-precomposed.png,1656584081089,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-icon.png,1656584081089,bb840173bfb4ada6a171ba2fa28c56ad27415a56e1d666c2dcaa8c3d841088cc -assets/apple-touch-startup-image-320x460.png,1656584081089,566cb97453a3739968d500944060a79211f40f89bfb38b0b16f0002905267760 -assets/apple-touch-startup-image-640x920.png,1656584081089,0d855582c9dc8344f45a8ec13d4008e06873a84374a4de4a4336de5340b36bae -assets/apple-touch-startup-image-640x1096.png,1656584081089,f2e5f37f5d1205f7441f0bd09b9bee6455c9a7579c01704a328e6610bdfe4d5d -assets/apple-touch-startup-image-748x1024.png,1656584081089,1cf3c83cbc3efae3406136749917985947733abf586ec7e91d3c8211d8013a0a -assets/apple-touch-startup-image-750x1294.png,1656584081089,6913d7d649fa1fbd2a55d5bfca106585d997f2ec1d7c556bddee2795c7995fb3 -assets/apple-touch-startup-image-768x1004.png,1656584081089,e25e71372f9a37b77db02214324e1241d071198e8155df0fc154c5c367de3035 -assets/browserconfig.xml,1656584081089,927de2b53533bc6b7ef5dda0574eb4813f4e07e212a6f17696edc66cf15ed083 -assets/apple-touch-startup-image-1182x2208.png,1656584081089,cb7eac3c7cf877a980ff0278369b5c504e48a6d52ab4d613976f8f20c3999ffe -assets/apple-touch-startup-image-1242x2148.png,1656584081089,41c8faddb2c0d0bd4924e01b670076d85ee4f89fb851dcfe88935fb963936387 -assets/apple-touch-startup-image-1496x2048.png,1656584081089,664d14cd71dbe0bb3c7d3d66e1d96ff70b12d7b606ba73941843abcb5b627d2c -assets/apple-touch-startup-image-1536x2008.png,1656584081089,446f4fbf38ec89c0c5a478e65a8b1baeae743b09380f05492df2c491b183e412 -assets/coast-228x228.png,1656584081089,7e8bb0fa00d161d97d4e2d2cd319dcdd888df723a12d508576b51ce319f1b83d -assets/favicon-16x16.png,1656584081093,f83e5d0e7894d0f4dc09ab112c98009bdfb4a6ea05668a5c64f358e572ff54d8 -index.worker.min.worker.js,1656584081089,e5ba3fab380014443b19b928dbe79a514d23a6c56205e4bd38241f03b404d9f9 -assets/favicon-32x32.png,1656584081093,127ded93cddee5649c27a382ab1b5d78a02245f8a45d79128f834ede26e0a63b -assets/favicon.ico,1656584081093,44bef5608d9bc7226f31c710c01a741382dbbb185c9e3b9395fa0dce2b8c7c97 -assets/firefox_app_128x128.png,1656584081089,e10885206c60e66f8ba57317aad7b0153a9d1f732aacd44ea16092cbee4bbc9b -assets/firefox_app_512x512.png,1656584081093,f14cbcd0d341d49d4b9970bf88debd4b638ed15486ca602550bb63b27fcac611 -assets/firefox_app_60x60.png,1656584081093,686c806476ebbcd355ce94966a6cbef9b1c357ff544bece368bf8b513e109adc -assets/manifest.webapp,1656584081093,412959d96c3b0bbfc929b0d68b9a28ca4850efbff4a3231bda579cb686b793fe -assets/mstile-144x144.png,1656584081093,682738636f0d1dc640e2f66ee69ecffafab4339a523558dcf4cd1610d3d53b5d -assets/mstile-150x150.png,1656584081093,f59e30b7592c069427b3f7a7dd29cb1beee160a387f2aacf13e827a09c517732 -a2659d938e7b5e69ece3.wasm,1656584081089,fd867dcf74bd842353863ac34f4a4210d13969df04a4383595262d69b3086e91 -assets/mstile-310x150.png,1656584081093,860a723aa7268822bb704418151c47e7716d62a47116f84f9a9d1dce3d99e7ac -oidc-client.min.js,1656584081093,529cd236ec451b557476c495636f87eb4441882bcd236a6ed5beaf3a6fd8062d -assets/mstile-310x310.png,1656584081093,2515686074fc90d5bdbc8d5ef69dd1c5d0b20d6b506d57781324f8723fc192c8 -assets/mstile-70x70.png,1656584081093,79af4176b99ff327b54977ac20889ccbe44a535f7ee41683804a5652f982aa74 -assets/yandex-browser-50x50.png,1656584081093,c1b01318a4da7921d2964b788d14b4a383dd0bc144e93d7c112c2ad1850de398 -assets/yandex-browser-manifest.json,1656584081093,edf303e079efabc26ad03754897e352c6dce91b5dc2c7674760b5282e073797e -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js,1656584081093,d4035c425c550141e5630183c6dc69d7b036c23cab7e6cf68085b668bc439ec8 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js,1656584081093,1de95e199ac0854eac15667077a6926a19cc053e3323fbd6abe4e7f1ed0d9864 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.dev.js.map,1656584081093,c96ea857229728a4047d45675dcf7cb7f72d633fad33794dddc50e20a9c1e013 -third_party/workbox/workbox-v5.1.4/workbox-background-sync.prod.js.map,1656584081093,9ec2a2509a1fd97fb5af197c80d9c19ec9045ceb6f170598bdef38f036e66abf -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js,1656584081093,4ae02dbe473f1e3932ff057f8a5931fa2281193522a3a9d97daea030ceb01545 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.dev.js.map,1656584081093,fde562a381852591ff697a73c37255ef982c61407648e12731328021f83f7ffb -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js,1656584081093,56677e279c745cb532e1ecf4b88c2bf1b940c3302d5067605ffae61f9edad200 -third_party/workbox/workbox-v5.1.4/workbox-broadcast-update.prod.js.map,1656584081093,e758af857ae3123ce5e4c21db7139c39f4a9b70b16ee6afb2fcf9b7b3c8093a0 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js,1656584081093,58f05b92ed65d0a5b3605264686a5148c1b9f58b686fc19f447c8cf0fbf5ac91 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.dev.js.map,1656584081093,bbd89b5ca7beeff234567d64aba3f71248a08c84f0018bbb5dce26533aa6b06b -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js,1656584081093,24dd3e2b79a6e564165cd88bce43b7254eca31bc75aeef9474c72b315a358c65 -third_party/workbox/workbox-v5.1.4/workbox-cacheable-response.prod.js.map,1656584081093,05e808238a98e3771e5339b414b9c9022020fc33ee9ed0e025fdc2d8590010bb -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js,1656584081093,1516848f89547c5eef77c14cc70d01270edd59aa30b4c66542ad33a890b6484c -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js,1656584081093,b6e7def858a44a1814a409185052a34212d575f3a17aba5cf58ab02a88a7db2b -third_party/workbox/workbox-v5.1.4/workbox-core.prod.js.map,1656584081093,1f10a416ed32556d65ddf893e5589968fc1f5692b003f034a8fa5273ca1dc135 -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js,1656584081093,b7d54ec3ca5d82f475c16f9b7939191bd0bc64306932d9c9ab407aa0c361b588 -third_party/workbox/workbox-v5.1.4/workbox-expiration.dev.js.map,1656584081093,1f0e4dbcc195016406578d27c1339c2efaaece37b945e2d7325da30e67287e5c -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js,1656584081093,936bd5b2933f3ad6830aebda94eeb955d73c111e05498d5e1f0d750be27a8ad1 -third_party/workbox/workbox-v5.1.4/workbox-expiration.prod.js.map,1656584081093,7ab32f96f473c03c813cb999dc08024dfdc59afdcb7d097e34362c2b7f8c6537 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js,1656584081093,579cc83029e278c4c377e747ccabff54674b4f8fd4e942a64c1f17cca766c80a -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.dev.js.map,1656584081093,870dc011593722a880b1f1e554a41a6d814fc49a5aca2bbf340ff46ef5b0887f -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js,1656584081093,9c3c53484e59e38311ab5285979aee7f41d0b87d9241a8c5e6717fcfa2f02be8 -third_party/workbox/workbox-v5.1.4/workbox-navigation-preload.prod.js.map,1656584081093,e84b2705c07c62e782fc453d823d04dc16e23e8f265e6639e46f916604ebaa20 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js,1656584081093,fc5120bd2a616ce142d279cc044d55bcfd88339625c8fdbbf60abd7ed19c56ff -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.dev.js.map,1656584081093,369ee97d97e7172f58aa369588e4b397d336d220ae9d75ac7dd6a6dbb0105e44 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js,1656584081093,b70390df80968d70787654f7999986dd3be1dc14139e9924df8061754cea2533 -third_party/workbox/workbox-v5.1.4/workbox-offline-ga.prod.js.map,1656584081093,e41a9667773fefc980230ccdc5f180ba07458864c2efe272dd7d4dadc26f7174 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js,1656584081093,21978560bd4bfd0caaf6f8a548ebae718f20e79a62add62943735a108081fda1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js,1656584081093,9e32e33c3e52a31f0ea3de6da6e61e282ec5fbfea336ac7dcf8526398614faf3 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js,1656584081093,fcbed1d76ab0f42787ca3ebb02263c37bb2ed3316cbadff45ff58ecb5dd146d8 -third_party/workbox/workbox-v5.1.4/workbox-range-requests.dev.js.map,1656584081093,efe8ddad1d73c86dbd34e14709adcd8a6d2d30814298fc8d8b3fd3a6590cc01d -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js,1656584081093,d19c8d4723ad2f8643173aadd8404ff96f22e8b0fd95a4fb8ae20c48aee928d9 -third_party/workbox/workbox-v5.1.4/workbox-precaching.prod.js.map,1656584081093,3d59f3ac5843f13f520dfdc02210f70ea7a6904ad6e713d61288e72fcd2094a1 -third_party/workbox/workbox-v5.1.4/workbox-precaching.dev.js.map,1656584081093,ee769ca118cc2433b2ca6b60b2c7bbbf26c3b58ffad11496ca02c02ad119068a -third_party/workbox/workbox-v5.1.4/workbox-range-requests.prod.js.map,1656584081093,a861eef48ef0cd28363d0090986a92d0dec5d5442f2460479e14777ed88c3c5e -third_party/workbox/workbox-v5.1.4/workbox-core.dev.js.map,1656584081093,09877704e3c2caae7bd3867860ec380c7a595a891ca165dd69cc1f5217ae1f5a -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js,1656584081093,75fe683f96ac51389d8aae21c7076f42900e32ae286732b520f14975baacd367 -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js,1656584081093,a260c36f1cd87e513832a450367056d71a4332310ffc1d926b4a8f05e38ec0e8 -third_party/workbox/workbox-v5.1.4/workbox-routing.dev.js.map,1656584081093,77550a13712d16d842cc6339f233b15036595ad56d99b759c9a4ccb5ca742332 -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js,1656584081093,20135d21f01071ad9c9c08079ce8aa962d3ce6ad1008d82948f88dec1eb212c9 -third_party/workbox/workbox-v5.1.4/workbox-routing.prod.js.map,1656584081093,529e25e0fe14d48544fdc3855984bd0ec84e2bf10ba862239844780e7c6e9d6f -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js,1656584081093,f3155367e090fe65604949f519fdc28ffde1c0524935840c6ccb85a4f6a409fb -third_party/workbox/workbox-v5.1.4/workbox-strategies.dev.js.map,1656584081093,c9e59ecdb6e8af027aebae432e0d618683b166ad442c68ea8bd7c1eaf23100a4 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js,1656584081093,d39d92275163ed508492e36bbc9f9fdf204eb8fdb6a6bcde8585f1cc5018f2bf -third_party/workbox/workbox-v5.1.4/workbox-strategies.prod.js.map,1656584081093,98a9e0f951f924de238e2f79d1b72aeceed5f4020b91e01d1693a65622cedcc9 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js,1656584081093,55261f9f77227d8b4b338f436795d7bfe0a9db19660deb9d98f56f2862d65a85 -third_party/workbox/workbox-v5.1.4/workbox-streams.dev.js.map,1656584081093,1c28cc6ce8c5f5b8c937a20ea093670fb8e2ea0e261b8ebbf327e99d6c550dc0 -third_party/workbox/workbox-v5.1.4/workbox-streams.prod.js.map,1656584081093,297d7a1f7a252d5f232a92aded95daf30fcc076276ba652b2ac21bf6732a5af8 -third_party/workbox/workbox-v5.1.4/workbox-sw.js,1656584081093,bc0c39110a1eb57b5ac374d56c0b4c142a0a4c819a05458563a82fa0729361b4 -third_party/workbox/workbox-v5.1.4/workbox-sw.js.map,1656584081093,1444f649ccfd45b871c9d4ddb0f3cb02db68c09fcc803978189990be24a870ac -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs,1656584081093,4a3cca2d7825a08442da9920878777b19e3b50cb1c7eb55e17f9dc6604c7770b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs,1656584081093,9d332d6c6c4acb17529a5e53883832b4cd596e623c959119edfe2b1ad64c19c6 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.es5.mjs.map,1656584081093,b9cdf9c2a95b0532ac22876fa222909aca9f5398f5b61073cfff051d39141f24 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.mjs.map,1656584081093,b3cddbf75301665ec36e6037102f8ab078802057e999e69130032c4afda2aca6 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs,1656584081093,2ff86a73f437c21b4e924c7ccabbcf29bd40a76d2b10aeb0c2ef40e9ccb15b5b -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js.map,1656584081093,4004111791c77b13158dd78d5257c0061f302a76f422b3b66c94f462ffa067c4 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs,1656584081093,e96ccfbb28186af6797ad7eb572d1381b55e49c9bae3554cca05e6cc6cd6e056 -third_party/workbox/workbox-v5.1.4/workbox-window.dev.umd.js,1656584081093,821458ab58ae3bb6cdfac1c2ce4b7864b8df4bdf77717b39c11a745933bbb7e2 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.es5.mjs.map,1656584081093,a07ac1285fdcc836ffec0c12d096fecc7fee76f2b8912689d3acbe2ca2bda793 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js,1656584081093,ee3444e1bb9bcf427515add2bdf312978c0728d73b1a6ebac9c3af31dc556bc9 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.mjs.map,1656584081093,4f7fd9770affa31248285f8669a7ed494093ca05548b95388f140de206f35215 -third_party/workbox/workbox-v5.1.4/workbox-window.prod.umd.js.map,1656584081093,49b5197a3b591f3c47c100228e28d8372681190f71fd03aea0b6bc5a030c1622 -14.bundle.f5546f507dfdd523113f.js.map,1656584081089,e00e3d238df591f49dab4438b84151cc14bea5b4e6918bdda7856313fe966bf2 -cornerstoneWADOImageLoader.min.js.map,1656584081089,d04080ae262d2af0638ccac2ea0ca7d2c5fe5f512ce89c8ffb9b747e0e7cd4fb -app.bundle.1a4c8f77859c4dbf2586.js,1656584081041,ae3220bd5e143eac971fd0564bd8efbcca6c7275014ed0b3ac737b63edc50ec9 -index.worker.min.worker.js.map,1656584081089,dd031bb8befa8d7c7356f299f93a2444669bd6575e368b805c8136496c869148 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js,1656584081041,bbf19c58db89d0e8df255bbf94a3af79004b390a75bf2101c2d91fe5340b62c1 -12.bundle.0e2dfc762384a0b7492d.js,1656584081041,10383305d75a8f3ef3afababf9eb95344e351aaee611e1685cdc50f424e81311 -app.bundle.1a4c8f77859c4dbf2586.js.map,1656584081089,a306331afe4e2786a8ea3a5a7c142fa23f6955a163e63a66c8f610dec0c7b791 -vendors~dicom-microscopy-viewer.bundle.2ea7fdf614fc0ca85682.js.map,1656584081089,56b7a0dca9171cca3bbdc0f35afcbeacee00ae3284355a020873cef5621336a3 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js,1656584081041,d58bf9fb20b2e14b57faa5a3666ef766170d9aea2fc6a93d3c44733959d7e508 -12.bundle.0e2dfc762384a0b7492d.js.map,1656584081089,f17fd87eed537bff6fd77c3f20d4cd88f46686d0dec5eaf4ce611f1d163e9923 -vendors~app.bundle.d0aa9fa84b981f6d23e4.js.map,1656584081089,15951214dec0d8f2fa01b95f80b1033a00852dc0bdb4bee9002ad71028753219 diff --git a/.gitignore b/.gitignore index 8e0d39f1408..4940a8b5200 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,7 @@ screenshots/ # Locize settings .locize + +# firebase +firebase.json +.firebase/ diff --git a/firebase.json b/firebase.json deleted file mode 100644 index d0a76377f1a..00000000000 --- a/firebase.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "hosting": { - "public": "platform/viewer/dist", - "ignore": [ - "firebase.json", - "**/.*", - "**/node_modules/**" - ], - "rewrites": [ - { - "source": "**", - "destination": "/index.html" - } - ] - } -} From e830eee9f177e81c8144f68f52b6a1cc4f53e80f Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Wed, 24 Aug 2022 11:27:02 +0200 Subject: [PATCH 11/54] Re #149: remove firebase files --- .firebaserc | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 .firebaserc diff --git a/.firebaserc b/.firebaserc deleted file mode 100644 index ef7c46af765..00000000000 --- a/.firebaserc +++ /dev/null @@ -1,5 +0,0 @@ -{ - "projects": { - "default": "idc2serversdeploy-3c769" - } -} From 927b6020e51e531f9a0d9430a79e4accfa7dcff8 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Wed, 24 Aug 2022 11:27:06 +0200 Subject: [PATCH 12/54] Re #149: remove firebase files --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 4940a8b5200..a2ac5b0fd32 100644 --- a/.gitignore +++ b/.gitignore @@ -41,3 +41,4 @@ screenshots/ # firebase firebase.json .firebase/ +.firebaserc From 505b7d6337cda4323273595799a60ed8b563a799 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Thu, 25 Aug 2022 09:41:09 +0200 Subject: [PATCH 13/54] update IDC server release --- platform/viewer/public/config/default.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index bfa45acff4a..fa043127d39 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -19,11 +19,11 @@ window.config = { { name: 'IDC', wadoUriRoot: - 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v10-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoRoot: - 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v10-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', wadoRoot: - 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v9-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', + 'https://testing-proxy.canceridc.dev/v1/projects/canceridc-data/locations/us/datasets/idc/dicomStores/v10-viewer-only-no-downloads-see-tinyurl-dot-com-slash-3j3d9jyp/dicomWeb', qidoSupportsIncludeField: true, imageRendering: 'wadors', thumbnailRendering: 'wadors', From e0638a1c3c54b05f96f642657d669a8f1c183732 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Thu, 25 Aug 2022 09:41:42 +0200 Subject: [PATCH 14/54] disable study list --- platform/viewer/public/config/default.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/viewer/public/config/default.js b/platform/viewer/public/config/default.js index fa043127d39..48788177133 100644 --- a/platform/viewer/public/config/default.js +++ b/platform/viewer/public/config/default.js @@ -2,7 +2,7 @@ window.config = { // default: '/' routerBasename: '/', extensions: [], - showStudyList: true, + showStudyList: false, filterQueryParam: true, disableServersCache: true, httpErrorHandler: error => { From ef60156a479871d0a18a713677b26bf0214ee6d6 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Wed, 31 Aug 2022 14:57:14 +0200 Subject: [PATCH 15/54] Fix minor issues IDC (#2903) --- extensions/dicom-rt/src/components/RTPanel/RTPanel.js | 2 +- .../components/SegmentationPanel/SegmentationPanel.js | 9 +++------ platform/core/src/classes/StudyLoadingListener.js | 4 ++-- platform/core/src/classes/metadata/StudyMetadata.js | 7 +++++++ .../services/MeasurementService/MeasurementService.js | 4 ++++ platform/core/src/utils/StackManager.js | 4 ++-- 6 files changed, 19 insertions(+), 11 deletions(-) diff --git a/extensions/dicom-rt/src/components/RTPanel/RTPanel.js b/extensions/dicom-rt/src/components/RTPanel/RTPanel.js index c9da41006e7..f0bfa02c246 100644 --- a/extensions/dicom-rt/src/components/RTPanel/RTPanel.js +++ b/extensions/dicom-rt/src/components/RTPanel/RTPanel.js @@ -1,4 +1,4 @@ -import React, { useState, useEffect, useCallback } from 'react'; +import React, { useState, useEffect } from 'react'; import PropTypes from 'prop-types'; import cornerstoneTools from 'cornerstone-tools'; import cornerstone from 'cornerstone-core'; diff --git a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js index d54d0237e67..324d05da38b 100644 --- a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js +++ b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js @@ -1,4 +1,4 @@ -import React, { useState, useEffect } from 'react'; +import React, { useState, useEffect, useCallback } from 'react'; import PropTypes from 'prop-types'; import cornerstoneTools from 'cornerstone-tools'; import cornerstone from 'cornerstone-core'; @@ -224,10 +224,7 @@ const SegmentationPanel = ({ ) ); }; - }, [ - activeIndex, - viewports, - ]); + }, [activeIndex, viewports]); const updateSegmentationComboBox = e => { const index = e.detail.activatedLabelmapIndex; @@ -694,7 +691,7 @@ const SegmentationPanel = ({ count={state.segmentList.length} isVisible={ state.segmentsHidden.filter(isHidden => isHidden === true).length < - state.segmentNumbers.length && state.segmentNumbers.length > 0 + state.segmentNumbers.length && state.segmentNumbers.length > 0 } onVisibilityChange={onVisibilityChangeHandler} > diff --git a/platform/core/src/classes/StudyLoadingListener.js b/platform/core/src/classes/StudyLoadingListener.js index d00bdaadc8f..acbd4910362 100644 --- a/platform/core/src/classes/StudyLoadingListener.js +++ b/platform/core/src/classes/StudyLoadingListener.js @@ -469,8 +469,8 @@ class StudyLoadingListener { // TODO: Make this work for plugins if (!stack) { - console.warn('Skipping adding displaySet to StudyLoadingListener'); - console.warn(displaySet); + //console.warn('Skipping adding displaySet to StudyLoadingListener'); + //console.warn(displaySet); return; } diff --git a/platform/core/src/classes/metadata/StudyMetadata.js b/platform/core/src/classes/metadata/StudyMetadata.js index ad881b18ac7..ae5aac29636 100644 --- a/platform/core/src/classes/metadata/StudyMetadata.js +++ b/platform/core/src/classes/metadata/StudyMetadata.js @@ -350,6 +350,13 @@ class StudyMetadata extends Metadata { referencedSeriesInstanceUID ); } else { + if ( + !displaySet.referencedDisplaySets || + displaySet.referencedDisplaySets.length === 0 + ) { + return false; + } + const filteredReferencedDisplaySets = displaySet.referencedDisplaySets.filter( referencedDisplaySet => referencedDisplaySet.SeriesInstanceUID === diff --git a/platform/core/src/services/MeasurementService/MeasurementService.js b/platform/core/src/services/MeasurementService/MeasurementService.js index 888a2501dac..639fc7e3751 100644 --- a/platform/core/src/services/MeasurementService/MeasurementService.js +++ b/platform/core/src/services/MeasurementService/MeasurementService.js @@ -420,6 +420,10 @@ class MeasurementService { throw new Error('No source definition provided.'); } + if (definition == 'stack' || definition == 'stackPrefetch') { + return; + } + const sourceInfo = this._getSourceInfo(source); if (!this._sourceHasMappings(source)) { diff --git a/platform/core/src/utils/StackManager.js b/platform/core/src/utils/StackManager.js index 49d8b00591c..4b56fe58f0e 100644 --- a/platform/core/src/utils/StackManager.js +++ b/platform/core/src/utils/StackManager.js @@ -25,7 +25,7 @@ function createAndAddStack(stackMap, study, displaySet, stackUpdatedCallbacks) { const imageIds = []; let imageId; - displaySet.images.forEach((instance, imageIndex) => { + images.forEach((instance, imageIndex) => { const image = instance.getData(); const metaData = { instance: image, // in this context, instance will be the data of the InstanceMetadata object... @@ -35,7 +35,7 @@ function createAndAddStack(stackMap, study, displaySet, stackUpdatedCallbacks) { imageIndex: imageIndex + 1, }; - const naturalizedInstance = instance.getData().metadata; + const naturalizedInstance = image.metadata; const NumberOfFrames = naturalizedInstance.NumberOfFrames; if (NumberOfFrames > 1) { From fe9551b9b17274295a27e651dbc9871ecca87c3e Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Wed, 31 Aug 2022 12:59:14 +0000 Subject: [PATCH 16/54] chore(release): publish [skip ci] - @ohif/extension-dicom-rt@0.7.12 - @ohif/extension-dicom-segmentation@0.7.12 - @ohif/extension-vtk@1.12.29 - @ohif/core@2.16.24 - @ohif/viewer@4.12.33 --- extensions/dicom-rt/CHANGELOG.md | 8 ++++++++ extensions/dicom-rt/package.json | 2 +- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 10 +++++----- 10 files changed, 50 insertions(+), 10 deletions(-) diff --git a/extensions/dicom-rt/CHANGELOG.md b/extensions/dicom-rt/CHANGELOG.md index 8535b458b67..3f5e86e3c77 100644 --- a/extensions/dicom-rt/CHANGELOG.md +++ b/extensions/dicom-rt/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.12](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-rt@0.7.11...@ohif/extension-dicom-rt@0.7.12) (2022-08-31) + +**Note:** Version bump only for package @ohif/extension-dicom-rt + + + + + ## [0.7.11](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-rt@0.7.10...@ohif/extension-dicom-rt@0.7.11) (2022-04-05) **Note:** Version bump only for package @ohif/extension-dicom-rt diff --git a/extensions/dicom-rt/package.json b/extensions/dicom-rt/package.json index 587359c6eb8..6895b11b0d9 100644 --- a/extensions/dicom-rt/package.json +++ b/extensions/dicom-rt/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-rt", - "version": "0.7.11", + "version": "0.7.12", "description": "OHIF extension for rendering DICOM RTSTRUCTs on top of cornerstone images.", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index 3624b80c792..30182cac41d 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.12](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.11...@ohif/extension-dicom-segmentation@0.7.12) (2022-08-31) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.11](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.10...@ohif/extension-dicom-segmentation@0.7.11) (2022-04-05) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 5d4897dee0d..e272e93b57a 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.11", + "version": "0.7.12", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 9826e0b6755..8cbc16b4742 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.29](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.28...@ohif/extension-vtk@1.12.29) (2022-08-31) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.28](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.27...@ohif/extension-vtk@1.12.28) (2022-08-24) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index cd7d43ab3e6..82de583bfcf 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.28", + "version": "1.12.29", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.4" }, "devDependencies": { - "@ohif/core": "^2.16.23", + "@ohif/core": "^2.16.24", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 84f6b533451..38569bd63b6 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.24](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.23...@ohif/core@2.16.24) (2022-08-31) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.23](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.22...@ohif/core@2.16.23) (2022-08-24) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index 5ee05e21e98..decf1d33d70 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.23", + "version": "2.16.24", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 9d220ef2881..90673fa56da 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.33](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.32...@ohif/viewer@4.12.33) (2022-08-31) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.32](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.31...@ohif/viewer@4.12.32) (2022-08-25) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 3d3af85205b..f202f18059f 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.32", + "version": "4.12.33", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,16 +47,16 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.23", + "@ohif/core": "^2.16.24", "@ohif/extension-cornerstone": "^2.12.13", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.22", "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", - "@ohif/extension-dicom-rt": "^0.7.11", - "@ohif/extension-dicom-segmentation": "^0.7.11", + "@ohif/extension-dicom-rt": "^0.7.12", + "@ohif/extension-dicom-segmentation": "^0.7.12", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.28", + "@ohif/extension-vtk": "^1.12.29", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From a6338ea266a79595ae31e976ea76f0192d83e810 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Thu, 1 Sep 2022 20:12:30 +0200 Subject: [PATCH 17/54] Re IDC #2869: update dcmjs for fixing eps in nearly equal condition (#2906) --- extensions/cornerstone/package.json | 2 +- extensions/dicom-html/package.json | 2 +- extensions/dicom-rt/package.json | 2 +- extensions/dicom-segmentation/package.json | 2 +- extensions/dicom-tag-browser/package.json | 2 +- extensions/vtk/package.json | 2 +- platform/core/package.json | 2 +- platform/viewer/package.json | 2 +- yarn.lock | 36 ++++++++++++---------- 9 files changed, 28 insertions(+), 24 deletions(-) diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index e7d1af41445..f486baa431a 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -36,7 +36,7 @@ "cornerstone-math": "^0.1.9", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "dicom-parser": "^1.8.11", "hammerjs": "^2.0.8", "prop-types": "^15.6.2", diff --git a/extensions/dicom-html/package.json b/extensions/dicom-html/package.json index f5828d8fe36..4c1f94c950d 100644 --- a/extensions/dicom-html/package.json +++ b/extensions/dicom-html/package.json @@ -29,7 +29,7 @@ }, "peerDependencies": { "@ohif/core": "^0.50.0", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "prop-types": "^15.6.2", "react": "^16.8.6", "react-dom": "^16.8.6" diff --git a/extensions/dicom-rt/package.json b/extensions/dicom-rt/package.json index 6895b11b0d9..01fbe1a2556 100644 --- a/extensions/dicom-rt/package.json +++ b/extensions/dicom-rt/package.json @@ -31,7 +31,7 @@ "@ohif/core": "^0.50.0", "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "gl-matrix": "^3.3.0", "prop-types": "^15.6.2", "react": "^16.8.6", diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index e272e93b57a..4693e00a993 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -31,7 +31,7 @@ "@ohif/core": "^0.50.0", "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "prop-types": "^15.6.2", "react": "^16.8.6", "react-dom": "^16.8.6" diff --git a/extensions/dicom-tag-browser/package.json b/extensions/dicom-tag-browser/package.json index 88d362c5ed9..be4a4ab14c4 100644 --- a/extensions/dicom-tag-browser/package.json +++ b/extensions/dicom-tag-browser/package.json @@ -28,7 +28,7 @@ }, "peerDependencies": { "@ohif/core": "^2.6.0", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "react": "^16.8.6" }, "dependencies": { diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 82de583bfcf..ac243c39aa4 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -35,7 +35,7 @@ "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "dicom-parser": "^1.8.11", "i18next": "^17.0.3", "i18next-browser-languagedetector": "^3.0.1", diff --git a/platform/core/package.json b/platform/core/package.json index decf1d33d70..b688c151516 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -39,7 +39,7 @@ "dependencies": { "@babel/runtime": "^7.5.5", "ajv": "^6.10.0", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "dicomweb-client": "^0.8.3", "immer": "9.0.12", "isomorphic-base64": "^1.0.2", diff --git a/platform/viewer/package.json b/platform/viewer/package.json index f202f18059f..da7de1e6738 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -66,7 +66,7 @@ "cornerstone-math": "^0.1.9", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", - "dcmjs": "0.19.9", + "dcmjs": "0.24.10", "dicom-parser": "^1.8.11", "dicomweb-client": "^0.8.3", "hammerjs": "^2.0.8", diff --git a/yarn.lock b/yarn.lock index ba7950536a1..ecd4275071f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -721,14 +721,6 @@ "@babel/helper-regex" "^7.4.4" regexpu-core "^4.6.0" -"@babel/polyfill@^7.8.3": - version "7.8.7" - resolved "https://registry.yarnpkg.com/@babel/polyfill/-/polyfill-7.8.7.tgz#151ec24c7135481336168c3bd8b8bf0cf91c032f" - integrity sha512-LeSfP9bNZH2UOZgcGcZ0PIHUt1ZuHub1L3CVmEyqLxCeDLm4C5Gi8jRH8ZX2PNpDhQCo0z6y/+DIs2JlliXW8w== - dependencies: - core-js "^2.6.5" - regenerator-runtime "^0.13.4" - "@babel/preset-env@^7.5.0", "@babel/preset-env@^7.5.5": version "7.6.3" resolved "https://registry.yarnpkg.com/@babel/preset-env/-/preset-env-7.6.3.tgz#9e1bf05a2e2d687036d24c40e4639dc46cef2271" @@ -796,7 +788,15 @@ "@babel/plugin-transform-react-jsx-self" "^7.0.0" "@babel/plugin-transform-react-jsx-source" "^7.0.0" -"@babel/runtime@7.1.2", "@babel/runtime@7.5.5", "@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.16.5", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.4", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.6": +"@babel/runtime-corejs2@^7.17.8": + version "7.18.9" + resolved "https://registry.yarnpkg.com/@babel/runtime-corejs2/-/runtime-corejs2-7.18.9.tgz#d88c327736ecc4b9db13ddef5a33a004b9aeac74" + integrity sha512-l057ZarpDX2QnXM89ViR2BgRFgTy2l5UFGDt0SbInhim1N/ljBgPeTJV0kRG1/Bo7CkHfYfrNNwTeQ2CPph9xQ== + dependencies: + core-js "^2.6.12" + regenerator-runtime "^0.13.4" + +"@babel/runtime@7.1.2", "@babel/runtime@7.5.5", "@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.16.5", "@babel/runtime@^7.2.0", "@babel/runtime@^7.3.1", "@babel/runtime@^7.4.0", "@babel/runtime@^7.4.4", "@babel/runtime@^7.4.5", "@babel/runtime@^7.5.5", "@babel/runtime@^7.6.3", "@babel/runtime@^7.7.2", "@babel/runtime@^7.8.7", "@babel/runtime@^7.9.6": version "7.5.5" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== @@ -5079,11 +5079,16 @@ core-js-compat@^3.1.1: browserslist "^4.7.2" semver "^6.3.0" -core-js@^2.4.0, core-js@^2.5.0, core-js@^2.5.7, core-js@^2.6.5: +core-js@^2.4.0, core-js@^2.5.0, core-js@^2.5.7: version "2.6.10" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.10.tgz#8a5b8391f8cc7013da703411ce5b585706300d7f" integrity sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA== +core-js@^2.6.12: + version "2.6.12" + resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.6.12.tgz#d9333dfa7b065e347cc5682219d6f690859cc2ec" + integrity sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ== + core-js@^3.2.1: version "3.3.4" resolved "https://registry.yarnpkg.com/core-js/-/core-js-3.3.4.tgz#6b0a23392958317bfb46e40b090529a923add669" @@ -5632,13 +5637,12 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -dcmjs@0.19.9: - version "0.19.9" - resolved "https://registry.yarnpkg.com/dcmjs/-/dcmjs-0.19.9.tgz#be500101b1f75a28ea9eb7ef845a8ed197355e76" - integrity sha512-V+0tND+SPX5e7WFeLzeoooaTsZbiKmEP2i3AyERsojaXXfaDV5E+pta5IqId4Ok1yfRT5qfTFwLGstGT6nLplA== +dcmjs@0.24.10: + version "0.24.10" + resolved "https://registry.yarnpkg.com/dcmjs/-/dcmjs-0.24.10.tgz#048a12a1905175763274545c17bb38b506cdfd00" + integrity sha512-kugEdBqwwTx7lqUxm4jdklkMJiQ8pZ0aqMw9WkszkDU5lDWHyq2kbRccACtcwqygC7j1d36w8uG/vNLMejeMBg== dependencies: - "@babel/polyfill" "^7.8.3" - "@babel/runtime" "^7.8.4" + "@babel/runtime-corejs2" "^7.17.8" gl-matrix "^3.1.0" lodash.clonedeep "^4.5.0" loglevelnext "^3.0.1" From d2921083e7a8a07e5d5d59edbbd9d8ce9277119f Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Thu, 1 Sep 2022 18:14:46 +0000 Subject: [PATCH 18/54] chore(release): publish [skip ci] - @ohif/extension-cornerstone@2.12.14 - @ohif/extension-dicom-html@1.3.23 - @ohif/extension-dicom-rt@0.7.13 - @ohif/extension-dicom-segmentation@0.7.13 - @ohif/extension-dicom-tag-browser@0.2.24 - @ohif/extension-vtk@1.12.30 - @ohif/core@2.16.25 - @ohif/viewer@4.12.34 --- extensions/cornerstone/CHANGELOG.md | 8 ++++++++ extensions/cornerstone/package.json | 2 +- extensions/dicom-html/CHANGELOG.md | 8 ++++++++ extensions/dicom-html/package.json | 2 +- extensions/dicom-rt/CHANGELOG.md | 8 ++++++++ extensions/dicom-rt/package.json | 2 +- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- extensions/dicom-tag-browser/CHANGELOG.md | 8 ++++++++ extensions/dicom-tag-browser/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 14 +++++++------- 16 files changed, 79 insertions(+), 15 deletions(-) diff --git a/extensions/cornerstone/CHANGELOG.md b/extensions/cornerstone/CHANGELOG.md index f64c340d7a4..1b7ed09e7b4 100644 --- a/extensions/cornerstone/CHANGELOG.md +++ b/extensions/cornerstone/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.12.14](https://github.com/OHIF/Viewers/compare/@ohif/extension-cornerstone@2.12.13...@ohif/extension-cornerstone@2.12.14) (2022-09-01) + +**Note:** Version bump only for package @ohif/extension-cornerstone + + + + + ## [2.12.13](https://github.com/OHIF/Viewers/compare/@ohif/extension-cornerstone@2.12.12...@ohif/extension-cornerstone@2.12.13) (2022-06-30) **Note:** Version bump only for package @ohif/extension-cornerstone diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index f486baa431a..2be45e29644 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-cornerstone", - "version": "2.12.13", + "version": "2.12.14", "description": "OHIF extension for Cornerstone", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-html/CHANGELOG.md b/extensions/dicom-html/CHANGELOG.md index ab97f15abc4..141a879ccaa 100644 --- a/extensions/dicom-html/CHANGELOG.md +++ b/extensions/dicom-html/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.23](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-html@1.3.22...@ohif/extension-dicom-html@1.3.23) (2022-09-01) + +**Note:** Version bump only for package @ohif/extension-dicom-html + + + + + ## [1.3.22](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-html@1.3.21...@ohif/extension-dicom-html@1.3.22) (2022-06-30) **Note:** Version bump only for package @ohif/extension-dicom-html diff --git a/extensions/dicom-html/package.json b/extensions/dicom-html/package.json index 4c1f94c950d..d56849dba33 100644 --- a/extensions/dicom-html/package.json +++ b/extensions/dicom-html/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-html", - "version": "1.3.22", + "version": "1.3.23", "description": "OHIF extension for rendering structured reports to HTML", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-rt/CHANGELOG.md b/extensions/dicom-rt/CHANGELOG.md index 3f5e86e3c77..addda6aa3fd 100644 --- a/extensions/dicom-rt/CHANGELOG.md +++ b/extensions/dicom-rt/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.13](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-rt@0.7.12...@ohif/extension-dicom-rt@0.7.13) (2022-09-01) + +**Note:** Version bump only for package @ohif/extension-dicom-rt + + + + + ## [0.7.12](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-rt@0.7.11...@ohif/extension-dicom-rt@0.7.12) (2022-08-31) **Note:** Version bump only for package @ohif/extension-dicom-rt diff --git a/extensions/dicom-rt/package.json b/extensions/dicom-rt/package.json index 01fbe1a2556..477a2677e41 100644 --- a/extensions/dicom-rt/package.json +++ b/extensions/dicom-rt/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-rt", - "version": "0.7.12", + "version": "0.7.13", "description": "OHIF extension for rendering DICOM RTSTRUCTs on top of cornerstone images.", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index 30182cac41d..cc1813b4733 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.13](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.12...@ohif/extension-dicom-segmentation@0.7.13) (2022-09-01) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.12](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.11...@ohif/extension-dicom-segmentation@0.7.12) (2022-08-31) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 4693e00a993..6367cba1d0f 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.12", + "version": "0.7.13", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-tag-browser/CHANGELOG.md b/extensions/dicom-tag-browser/CHANGELOG.md index d7c4d83de9d..6f06cd3ede6 100644 --- a/extensions/dicom-tag-browser/CHANGELOG.md +++ b/extensions/dicom-tag-browser/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.24](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-tag-browser@0.2.23...@ohif/extension-dicom-tag-browser@0.2.24) (2022-09-01) + +**Note:** Version bump only for package @ohif/extension-dicom-tag-browser + + + + + ## [0.2.23](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-tag-browser@0.2.22...@ohif/extension-dicom-tag-browser@0.2.23) (2022-04-06) **Note:** Version bump only for package @ohif/extension-dicom-tag-browser diff --git a/extensions/dicom-tag-browser/package.json b/extensions/dicom-tag-browser/package.json index be4a4ab14c4..037e481104d 100644 --- a/extensions/dicom-tag-browser/package.json +++ b/extensions/dicom-tag-browser/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-tag-browser", - "version": "0.2.23", + "version": "0.2.24", "description": "OHIF extension for checking DICOM headers.", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 8cbc16b4742..5f1d817e8fc 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.30](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.29...@ohif/extension-vtk@1.12.30) (2022-09-01) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.29](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.28...@ohif/extension-vtk@1.12.29) (2022-08-31) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index ac243c39aa4..e8a3b206b99 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.29", + "version": "1.12.30", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.4" }, "devDependencies": { - "@ohif/core": "^2.16.24", + "@ohif/core": "^2.16.25", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 38569bd63b6..511ce14972b 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.25](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.24...@ohif/core@2.16.25) (2022-09-01) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.24](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.23...@ohif/core@2.16.24) (2022-08-31) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index b688c151516..584659cae77 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.24", + "version": "2.16.25", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 90673fa56da..c79ac08bd7f 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.34](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.33...@ohif/viewer@4.12.34) (2022-09-01) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.33](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.32...@ohif/viewer@4.12.33) (2022-08-31) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index da7de1e6738..f5f5522e888 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.33", + "version": "4.12.34", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,16 +47,16 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.24", - "@ohif/extension-cornerstone": "^2.12.13", + "@ohif/core": "^2.16.25", + "@ohif/extension-cornerstone": "^2.12.14", "@ohif/extension-debugging": "^0.3.3", - "@ohif/extension-dicom-html": "^1.3.22", + "@ohif/extension-dicom-html": "^1.3.23", "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", - "@ohif/extension-dicom-rt": "^0.7.12", - "@ohif/extension-dicom-segmentation": "^0.7.12", + "@ohif/extension-dicom-rt": "^0.7.13", + "@ohif/extension-dicom-segmentation": "^0.7.13", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.29", + "@ohif/extension-vtk": "^1.12.30", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From aaab6d2622d8a3f14c5d9c17e346b3f48777facc Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Fri, 2 Sep 2022 15:47:28 +0200 Subject: [PATCH 19/54] Re IDC #2849: raise error if dicom request is not conforming with the UID (DICOM UI VR) character repertoire. (#2908) --- .../src/DICOMSR/SCOORD3D/parseSCOORD3D.js | 3 +- .../src/classes/metadata/StudyMetadata.js | 2 ++ .../src/studies/retrieveStudyMetadata.test.js | 13 --------- .../services/wado/studyInstanceHelpers.js | 29 +++++++++++++++++++ .../viewer/src/connectedComponents/Viewer.js | 3 +- 5 files changed, 33 insertions(+), 17 deletions(-) diff --git a/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js b/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js index ce90c63395c..dd5590f3004 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js +++ b/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js @@ -12,8 +12,7 @@ const parseSCOORD3D = ({ servicesManager, displaySets }) => { ds => ds.Modality !== 'SR' && ds.Modality !== 'SEG' && - ds.Modality !== 'RTSTRUCT' && - ds.Modality !== 'RTDOSE' + ds.Modality !== 'RTSTRUCT' ); imageDisplaySets.forEach(imageDisplaySet => { diff --git a/platform/core/src/classes/metadata/StudyMetadata.js b/platform/core/src/classes/metadata/StudyMetadata.js index ae5aac29636..578b7b40bfe 100644 --- a/platform/core/src/classes/metadata/StudyMetadata.js +++ b/platform/core/src/classes/metadata/StudyMetadata.js @@ -275,6 +275,8 @@ class StudyMetadata extends Metadata { const otherDisplaySets = allDisplaySets.filter( ds => + ds && + derivatedDisplaySet && ds.displaySetInstanceUID !== derivatedDisplaySet.displaySetInstanceUID ); diff --git a/platform/core/src/studies/retrieveStudyMetadata.test.js b/platform/core/src/studies/retrieveStudyMetadata.test.js index 4725ab562d4..1103a3bdf65 100644 --- a/platform/core/src/studies/retrieveStudyMetadata.test.js +++ b/platform/core/src/studies/retrieveStudyMetadata.test.js @@ -19,17 +19,4 @@ describe('retrieveStudyMetadata.js', () => { expect(callWithNoStudyInstanceUID).toThrow(Error); }); - - it('caches and returns the same promise for identical studyInstanceUIDs', () => { - const firstPromise = retrieveStudyMetadata( - fakeDicomWebServer, - 'fake-study-instance-uid' - ); - const secondPromise = retrieveStudyMetadata( - fakeDicomWebServer, - 'fake-study-instance-uid' - ); - - expect(firstPromise).toBe(secondPromise); - }); }); diff --git a/platform/core/src/studies/services/wado/studyInstanceHelpers.js b/platform/core/src/studies/services/wado/studyInstanceHelpers.js index 301342a7969..9b75392073b 100644 --- a/platform/core/src/studies/services/wado/studyInstanceHelpers.js +++ b/platform/core/src/studies/services/wado/studyInstanceHelpers.js @@ -102,6 +102,35 @@ async function makeSOPInstance(server, study, instance) { SOPInstanceUID, } = naturalizedInstance; + const validate = string => { + let rgx = /[^.0-9]+/g; + return string.match(rgx); + }; + + if (StudyInstanceUID === undefined || validate(StudyInstanceUID)) { + const error = + 'makeSOPInstance: StudyInstanceUID is not conforming with the UID (DICOM UI VR) character repertoire, skipping SOPInstance.'; + console.error(error); + + return; + } + + if (SeriesInstanceUID === undefined || validate(SeriesInstanceUID)) { + const error = + 'makeSOPInstance: SeriesInstanceUID is not conforming with the UID (DICOM UI VR) character repertoire, skipping SOPInstance.'; + console.error(error); + + return; + } + + if (SOPInstanceUID === undefined || validate(SOPInstanceUID)) { + const error = + 'makeSOPInstance: SOPInstanceUID is not conforming with the UID (DICOM UI VR) character repertoire, skipping SOPInstance.'; + console.error(error); + + return; + } + let series = study.seriesMap[SeriesInstanceUID]; if (!series) { diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index 2a22568e9d6..9f87b710679 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -473,7 +473,7 @@ const _checkForDerivedDisplaySets = async function(displaySet, study) { let derivedDisplaySetsNumber = 0; if ( displaySet.Modality && - !['SEG', 'SR', 'RTSTRUCT', 'RTDOSE'].includes(displaySet.Modality) + !['SEG', 'SR', 'RTSTRUCT'].includes(displaySet.Modality) ) { const studyMetadata = studyMetadataManager.get(study.StudyInstanceUID); @@ -612,7 +612,6 @@ const _isDisplaySetActive = function( if ( displaySet.Modality !== 'SEG' && displaySet.Modality !== 'RTSTRUCT' && - displaySet.Modality !== 'RTDOSE' && displaySet.Modality !== 'SR' ) { active = activeDisplaySetInstanceUID === displaySetInstanceUID; From ddfde9279ecf65d93517a701a4b7b8e6979f2c4d Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Fri, 2 Sep 2022 13:49:07 +0000 Subject: [PATCH 20/54] chore(release): publish [skip ci] - @ohif/extension-vtk@1.12.31 - @ohif/core@2.16.26 - @ohif/viewer@4.12.35 --- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 6 +++--- 6 files changed, 30 insertions(+), 6 deletions(-) diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 5f1d817e8fc..6e42697bc4d 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.31](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.30...@ohif/extension-vtk@1.12.31) (2022-09-02) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.30](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.29...@ohif/extension-vtk@1.12.30) (2022-09-01) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index e8a3b206b99..a6dee15ec63 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.30", + "version": "1.12.31", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.4" }, "devDependencies": { - "@ohif/core": "^2.16.25", + "@ohif/core": "^2.16.26", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 511ce14972b..eeefee3853a 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.26](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.25...@ohif/core@2.16.26) (2022-09-02) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.25](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.24...@ohif/core@2.16.25) (2022-09-01) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index 584659cae77..a7c469d3d7a 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.25", + "version": "2.16.26", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index c79ac08bd7f..34312d5ce7d 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.35](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.34...@ohif/viewer@4.12.35) (2022-09-02) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.34](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.33...@ohif/viewer@4.12.34) (2022-09-01) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index f5f5522e888..503d6b0f8a5 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.34", + "version": "4.12.35", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,7 +47,7 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.25", + "@ohif/core": "^2.16.26", "@ohif/extension-cornerstone": "^2.12.14", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.13", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.30", + "@ohif/extension-vtk": "^1.12.31", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From d74ad370e091c8af2d93ec35f688c4ef902bab2b Mon Sep 17 00:00:00 2001 From: Doug Horner Date: Thu, 8 Sep 2022 10:46:26 -0400 Subject: [PATCH 21/54] fix: hotkey page up/down did not work (#2910) --- .../src/appExtensions/GenericViewerCommands/commandsModule.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platform/viewer/src/appExtensions/GenericViewerCommands/commandsModule.js b/platform/viewer/src/appExtensions/GenericViewerCommands/commandsModule.js index e7e122cdaa4..d312d7dee95 100644 --- a/platform/viewer/src/appExtensions/GenericViewerCommands/commandsModule.js +++ b/platform/viewer/src/appExtensions/GenericViewerCommands/commandsModule.js @@ -1,4 +1,4 @@ -import { redux } from '@ohif/core'; +import { redux, utils } from '@ohif/core'; import store from './../../store'; const commandsModule = ({ commandsManager }) => { From 80dfdcc37c3bfab8504ba6c0da58d346d5e500e8 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Thu, 8 Sep 2022 14:48:41 +0000 Subject: [PATCH 22/54] chore(release): publish [skip ci] - @ohif/viewer@4.12.36 --- platform/viewer/CHANGELOG.md | 11 +++++++++++ platform/viewer/package.json | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 34312d5ce7d..ad877fc4216 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.36](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.35...@ohif/viewer@4.12.36) (2022-09-08) + + +### Bug Fixes + +* hotkey page up/down did not work ([#2910](https://github.com/OHIF/Viewers/issues/2910)) ([d74ad37](https://github.com/OHIF/Viewers/commit/d74ad370e091c8af2d93ec35f688c4ef902bab2b)) + + + + + ## [4.12.35](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.34...@ohif/viewer@4.12.35) (2022-09-02) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 503d6b0f8a5..b0aa6e6f1e9 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.35", + "version": "4.12.36", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", From 47a6130fd54f43ba31fea29b45d5a86900779942 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Mon, 12 Sep 2022 10:25:19 +0200 Subject: [PATCH 23/54] Re IDC #2919: fix popup notifications behavior (#2923) --- platform/core/src/classes/HotkeysManager.js | 3 ++- platform/core/src/utils/loadAndCacheDerivedDisplaySets.js | 2 +- .../viewer/src/connectedComponents/ConnectedStudyBrowser.js | 2 +- platform/viewer/src/connectedComponents/ViewerMain.js | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/platform/core/src/classes/HotkeysManager.js b/platform/core/src/classes/HotkeysManager.js index f4369b2d77b..547d23d9f9b 100644 --- a/platform/core/src/classes/HotkeysManager.js +++ b/platform/core/src/classes/HotkeysManager.js @@ -67,12 +67,13 @@ export class HotkeysManager { UINotificationService, LoggerService, } = this._servicesManager.services; - const message = 'Erro while setting hotkeys'; + const message = 'Error while setting hotkeys'; LoggerService.error({ error, message }); UINotificationService.show({ title: 'Hotkeys Manager', message, type: 'error', + autoClose: false, }); } } diff --git a/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js b/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js index 631f462c82d..beb3764e82a 100644 --- a/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js +++ b/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js @@ -124,7 +124,7 @@ async function loadAndCacheDerivedDisplaySets( title: 'DICOM Segmentation Loader', message: error.message, type: 'error', - autoClose: true, + autoClose: false, }); }; diff --git a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js index 6e3f3c15031..6a9e985bc2f 100644 --- a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js +++ b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js @@ -25,7 +25,7 @@ const mapDispatchToProps = (dispatch, ownProps) => { title: 'DICOM Segmentation Loader', message: error.message, type: 'error', - autoClose: true, + autoClose: false, }); }; diff --git a/platform/viewer/src/connectedComponents/ViewerMain.js b/platform/viewer/src/connectedComponents/ViewerMain.js index d53881bdfd8..94c1ccca758 100644 --- a/platform/viewer/src/connectedComponents/ViewerMain.js +++ b/platform/viewer/src/connectedComponents/ViewerMain.js @@ -150,7 +150,7 @@ class ViewerMain extends Component { title: 'DICOM Segmentation Loader', message: error.message, type: 'error', - autoClose: true, + autoClose: false, }); }; From ebbc9e0d6d22afba1157dc5498bd3c7d09acab3f Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Mon, 12 Sep 2022 08:27:33 +0000 Subject: [PATCH 24/54] chore(release): publish [skip ci] - @ohif/extension-vtk@1.12.32 - @ohif/core@2.16.27 - @ohif/viewer@4.12.37 --- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 6 +++--- 6 files changed, 30 insertions(+), 6 deletions(-) diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 6e42697bc4d..e75fd93cf8b 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.32](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.31...@ohif/extension-vtk@1.12.32) (2022-09-12) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.31](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.30...@ohif/extension-vtk@1.12.31) (2022-09-02) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index a6dee15ec63..1389bce5051 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.31", + "version": "1.12.32", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.4" }, "devDependencies": { - "@ohif/core": "^2.16.26", + "@ohif/core": "^2.16.27", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index eeefee3853a..8f427329608 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.27](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.26...@ohif/core@2.16.27) (2022-09-12) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.26](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.25...@ohif/core@2.16.26) (2022-09-02) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index a7c469d3d7a..7b56a69ce13 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.26", + "version": "2.16.27", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index ad877fc4216..0e676004b6a 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.37](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.36...@ohif/viewer@4.12.37) (2022-09-12) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.36](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.35...@ohif/viewer@4.12.36) (2022-09-08) diff --git a/platform/viewer/package.json b/platform/viewer/package.json index b0aa6e6f1e9..9180be55da5 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.36", + "version": "4.12.37", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,7 +47,7 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.26", + "@ohif/core": "^2.16.27", "@ohif/extension-cornerstone": "^2.12.14", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.13", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.31", + "@ohif/extension-vtk": "^1.12.32", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From e0fb439e988ad653f9af42b7424fc30bb2c0d279 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Mon, 12 Sep 2022 14:22:32 +0200 Subject: [PATCH 25/54] Fix IDC Re #2918: Runtime tolerance for SEGs loading (#2924) --- .../SegmentationPanel/SegmentationPanel.js | 27 +++++++++++ .../SegmentationSettings.js | 48 ++++++++++++++++--- .../src/getOHIFDicomSegSopClassHandler.js | 14 ++++-- extensions/dicom-segmentation/src/index.js | 1 + 4 files changed, 79 insertions(+), 11 deletions(-) diff --git a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js index 324d05da38b..256baf142ab 100644 --- a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js +++ b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js @@ -36,6 +36,7 @@ const { studyMetadataManager } = utils; * @param {Function} props.onConfigurationChange - Configuration change handler * @param {Function} props.activeContexts - List of active application contexts * @param {Function} props.contexts - List of available application contexts + * @param {Function} props.servicesManager - Services manager * @returns component */ const SegmentationPanel = ({ @@ -50,6 +51,7 @@ const SegmentationPanel = ({ onSelectedSegmentationChange, activeContexts = [], contexts = {}, + servicesManager, }) => { const isVTK = () => activeContexts.includes(contexts.VTK); const isCornerstone = () => activeContexts.includes(contexts.CORNERSTONE); @@ -59,6 +61,9 @@ const SegmentationPanel = ({ * store with context to make these kind of things less blurry. */ const { configuration } = cornerstoneTools.getModule('segmentation'); + if (configuration.segsTolerance === undefined) { + configuration.segsTolerance = 1e-2; + } const DEFAULT_BRUSH_RADIUS = configuration.radius || 10; /* @@ -87,6 +92,25 @@ const SegmentationPanel = ({ return studyMetadata.getFirstImageId(displaySetInstanceUID); }; + const getAllSegDisplaySets = () => { + const { StudyInstanceUID } = getActiveViewport(); + const studyMetadata = studyMetadataManager.get(StudyInstanceUID); + return studyMetadata.getDerivedDatasets({ + Modality: 'SEG', + }); + }; + + const updateSegDisplaySetsTolerance = tolerance => { + const segDisplaySets = getAllSegDisplaySets(); + segDisplaySets.forEach(segDisplaySet => { + // update tol value + segDisplaySet.tolerance = tolerance; + // reset load flags for allowing retry for seg parsing. + segDisplaySet.isLoaded = false; + segDisplaySet.loadError = false; + }); + }; + const getActiveLabelMaps3D = () => { const { labelmaps3D, activeLabelmapIndex } = getBrushStackState(); return labelmaps3D[activeLabelmapIndex]; @@ -598,7 +622,9 @@ const SegmentationPanel = ({ configuration.outlineWidth = newConfiguration.outlineWidth; configuration.fillAlphaInactive = newConfiguration.fillAlphaInactive; configuration.outlineAlphaInactive = newConfiguration.outlineAlphaInactive; + configuration.segsTolerance = newConfiguration.segsTolerance; onConfigurationChange(newConfiguration); + updateSegDisplaySetsTolerance(configuration.segsTolerance); refreshViewports(); }; @@ -647,6 +673,7 @@ const SegmentationPanel = ({ configuration={configuration} onBack={() => setState(state => ({ ...state, showSettings: false }))} onChange={updateConfiguration} + servicesManager={servicesManager} /> ); } else { diff --git a/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js b/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js index 3d637b80fae..6da70951be3 100644 --- a/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js +++ b/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js @@ -4,7 +4,7 @@ import { Range } from '@ohif/ui'; import './SegmentationSettings.css'; -const SegmentationSettings = ({ configuration, onBack, onChange, disabledFields = [] }) => { +const SegmentationSettings = ({ configuration, onBack, onChange, servicesManager, disabledFields = [] }) => { const [state, setState] = useState({ renderFill: configuration.renderFill, renderOutline: configuration.renderOutline, @@ -13,7 +13,8 @@ const SegmentationSettings = ({ configuration, onBack, onChange, disabledFields outlineAlpha: configuration.outlineAlpha, outlineWidth: configuration.outlineWidth, fillAlphaInactive: configuration.fillAlphaInactive, - outlineAlphaInactive: configuration.outlineAlphaInactive + outlineAlphaInactive: configuration.outlineAlphaInactive, + segsTolerance: configuration.segsTolerance, }); useEffect(() => { @@ -133,6 +134,40 @@ const SegmentationSettings = ({ configuration, onBack, onChange, disabledFields )} )} +
+ +
); }; @@ -169,11 +204,12 @@ SegmentationSettings.propTypes = { renderFill: PropTypes.bool.isRequired, renderOutline: PropTypes.bool.isRequired, shouldRenderInactiveLabelmaps: PropTypes.bool.isRequired, - fillAlpha: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, /* TODO: why fillAlpha is string? */ - outlineAlpha: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, /* TODO: why fillAlpha is string? */ + fillAlpha: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, + outlineAlpha: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, outlineWidth: PropTypes.number.isRequired, - fillAlphaInactive: PropTypes.number.isRequired, - outlineAlphaInactive: PropTypes.number.isRequired, + fillAlphaInactive: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, + outlineAlphaInactive: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, + segsTolerance: PropTypes.oneOfType([PropTypes.string, PropTypes.number]).isRequired, }).isRequired, onBack: PropTypes.func.isRequired, onChange: PropTypes.func.isRequired, diff --git a/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js b/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js index 8adcd68d492..9b3998dff30 100644 --- a/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js +++ b/extensions/dicom-segmentation/src/getOHIFDicomSegSopClassHandler.js @@ -62,6 +62,7 @@ export default function getSopClassHandlerModule({ servicesManager }) { SeriesNumber, SeriesDescription, metadata, + tolerance: 1e-2, }; segDisplaySet.getSourceDisplaySet = function( @@ -93,7 +94,7 @@ export default function getSopClassHandlerModule({ servicesManager }) { referencedDisplaySet.SeriesInstanceUID ); - const results = await _parseSeg(segArrayBuffer, imageIds); + const results = await _parseSeg(segArrayBuffer, imageIds, segDisplaySet.tolerance); if (results === undefined) { return; } @@ -149,10 +150,13 @@ export default function getSopClassHandlerModule({ servicesManager }) { }; } -function _parseSeg(arrayBuffer, imageIds) { - const skipOverlapping = false; - const tolerance = 1e-2; - const cornerstoneToolsVersion = 4; +function _parseSeg( + arrayBuffer, + imageIds, + tolerance = 1e-2, + skipOverlapping = false, + cornerstoneToolsVersion = 4 +) { return dcmjs.adapters.Cornerstone.Segmentation.generateToolState( imageIds, arrayBuffer, diff --git a/extensions/dicom-segmentation/src/index.js b/extensions/dicom-segmentation/src/index.js index 17bd246b7e0..a7d96fa5901 100644 --- a/extensions/dicom-segmentation/src/index.js +++ b/extensions/dicom-segmentation/src/index.js @@ -78,6 +78,7 @@ export default { onConfigurationChange={onConfigurationChangeHandler} onSelectedSegmentationChange={onSelectedSegmentationChangeHandler} onDisplaySetLoadFailure={onDisplaySetLoadFailureHandler} + servicesManager={servicesManager} /> ); }; From 4546ede9bb4363c4b95eff9b3cd6a76f0672cf03 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Mon, 12 Sep 2022 12:24:25 +0000 Subject: [PATCH 26/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.14 - @ohif/viewer@4.12.38 --- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 4 ++-- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index cc1813b4733..cfb75a671a6 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.14](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.13...@ohif/extension-dicom-segmentation@0.7.14) (2022-09-12) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.13](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.12...@ohif/extension-dicom-segmentation@0.7.13) (2022-09-01) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 6367cba1d0f..6f203133bef 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.13", + "version": "0.7.14", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 0e676004b6a..fd106b78d4e 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.38](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.37...@ohif/viewer@4.12.38) (2022-09-12) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.37](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.36...@ohif/viewer@4.12.37) (2022-09-12) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 9180be55da5..afa3a862571 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.37", + "version": "4.12.38", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -54,7 +54,7 @@ "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.13", - "@ohif/extension-dicom-segmentation": "^0.7.13", + "@ohif/extension-dicom-segmentation": "^0.7.14", "@ohif/extension-lesion-tracker": "^0.2.2", "@ohif/extension-vtk": "^1.12.32", "@ohif/i18n": "^0.53.0", From e2f4f95222b2c871bf5d62f3aced9437ce2e296e Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Mon, 19 Sep 2022 12:29:28 +0200 Subject: [PATCH 27/54] Re IDC #2935: fix parsing of Instance-level qualitative annotations (#2940) --- extensions/dicom-segmentation/src/index.js | 1 - .../SCOORD3D/utils/getReferencedImagesList.js | 14 ++++++-- .../src/DICOMSR/parseDicomStructuredReport.js | 33 ++++++++++++++----- 3 files changed, 36 insertions(+), 12 deletions(-) diff --git a/extensions/dicom-segmentation/src/index.js b/extensions/dicom-segmentation/src/index.js index a7d96fa5901..5deac6dce60 100644 --- a/extensions/dicom-segmentation/src/index.js +++ b/extensions/dicom-segmentation/src/index.js @@ -32,7 +32,6 @@ export default { const ExtendedSegmentationPanel = props => { const { activeContexts } = api.hooks.useAppContext(); - const onDisplaySetLoadFailureHandler = error => { LoggerService.error({ error, message: error.message }); UINotificationService.show({ diff --git a/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js b/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js index 2b08147163a..a76c8a926bf 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js +++ b/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js @@ -7,10 +7,12 @@ const getReferencedImagesList = ImagingMeasurementReportContentSequence => { const ImageLibrary = ImagingMeasurementReportContentSequence.find( item => item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImageLibrary + CodeNameCodeSequenceValues.ImageLibrary || + item.ConceptNameCodeSequence.CodeValue === + CodeNameCodeSequenceValues.ImagingMeasurements ); - if (!ImageLibrary.ContentSequence) { + if (!ImageLibrary || !ImageLibrary.ContentSequence) { return referencedImages; } @@ -19,9 +21,15 @@ const getReferencedImagesList = ImagingMeasurementReportContentSequence => { ).find( item => item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImageLibraryGroup + CodeNameCodeSequenceValues.ImageLibraryGroup || + item.ConceptNameCodeSequence.CodeValue === + CodeNameCodeSequenceValues.MeasurementGroup ); + if (!ImageLibraryGroup || !ImageLibraryGroup.ContentSequence) { + return referencedImages; + } + getSequenceAsArray(ImageLibraryGroup.ContentSequence).forEach(item => { const { ReferencedSOPSequence } = item; if (ReferencedSOPSequence) { diff --git a/platform/core/src/DICOMSR/parseDicomStructuredReport.js b/platform/core/src/DICOMSR/parseDicomStructuredReport.js index b4f9298581f..5e754744e2a 100644 --- a/platform/core/src/DICOMSR/parseDicomStructuredReport.js +++ b/platform/core/src/DICOMSR/parseDicomStructuredReport.js @@ -21,16 +21,32 @@ const parseDicomStructuredReport = ( displaySets, external ) => { - if (external && external.servicesManager) { - parseSCOORD3D({ servicesManager: external.servicesManager, displaySets }); - } - // Get the dicom data as an Object const dicomData = dcmjs.data.DicomMessage.readFile(part10SRArrayBuffer); const dataset = dcmjs.data.DicomMetaDictionary.naturalizeDataset( dicomData.dict ); + const { + LoggerService, + UINotificationService, + } = external.servicesManager.services; + if (external && external.servicesManager) { + try { + parseSCOORD3D({ servicesManager: external.servicesManager, displaySets }); + } catch (error) { + const seriesDescription = dataset.SeriesDescription || ''; + LoggerService.error({ error, message: error.message }); + UINotificationService.show({ + title: `Failed to parse ${seriesDescription} SR display set`, + message: error.message, + type: 'error', + autoClose: false, + }); + return; + } + } + const { MeasurementReport } = dcmjs.adapters.Cornerstone; let storedMeasurementByToolType; @@ -38,11 +54,12 @@ const parseDicomStructuredReport = ( storedMeasurementByToolType = MeasurementReport.generateToolState(dataset); } catch (error) { const seriesDescription = dataset.SeriesDescription || ''; - LogManager.publish(LogManager.EVENTS.OnLog, { + LoggerService.error({ error, message: error.message }); + UINotificationService.show({ title: `Failed to parse ${seriesDescription} measurement report`, - type: 'warning', - message: error.message || '', - notify: true, + message: error.message, + type: 'error', + autoClose: false, }); return; } From c5ee092bf2fe694ab20ba260ef8ee6a1419fa5fe Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Mon, 19 Sep 2022 10:32:07 +0000 Subject: [PATCH 28/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.15 - @ohif/extension-vtk@1.12.33 - @ohif/core@2.16.28 - @ohif/viewer@4.12.39 --- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 8 ++++---- 8 files changed, 40 insertions(+), 8 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index cfb75a671a6..a6b9c0ec9c4 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.15](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.14...@ohif/extension-dicom-segmentation@0.7.15) (2022-09-19) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.14](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.13...@ohif/extension-dicom-segmentation@0.7.14) (2022-09-12) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 6f203133bef..d188c4307a8 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.14", + "version": "0.7.15", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index e75fd93cf8b..3b22255e790 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.33](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.32...@ohif/extension-vtk@1.12.33) (2022-09-19) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.32](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.31...@ohif/extension-vtk@1.12.32) (2022-09-12) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 1389bce5051..c066c6a9774 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.32", + "version": "1.12.33", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.4" }, "devDependencies": { - "@ohif/core": "^2.16.27", + "@ohif/core": "^2.16.28", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.1.0", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 8f427329608..0d0efc9146c 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.28](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.27...@ohif/core@2.16.28) (2022-09-19) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.27](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.26...@ohif/core@2.16.27) (2022-09-12) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index 7b56a69ce13..be843335344 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.27", + "version": "2.16.28", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index fd106b78d4e..dd4d007c407 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.39](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.38...@ohif/viewer@4.12.39) (2022-09-19) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.38](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.37...@ohif/viewer@4.12.38) (2022-09-12) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index afa3a862571..961336f1f7d 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.38", + "version": "4.12.39", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,16 +47,16 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.27", + "@ohif/core": "^2.16.28", "@ohif/extension-cornerstone": "^2.12.14", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.13", - "@ohif/extension-dicom-segmentation": "^0.7.14", + "@ohif/extension-dicom-segmentation": "^0.7.15", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.32", + "@ohif/extension-vtk": "^1.12.33", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From eb7eb56d7e08758ce550a2da84cac247e17d6d47 Mon Sep 17 00:00:00 2001 From: Davide Punzo Date: Tue, 20 Sep 2022 13:24:17 +0200 Subject: [PATCH 29/54] Re IDC #2934: update cornerstoneWADOImageLoader to v 4.2.1 (#2944) --- extensions/cornerstone/package.json | 2 +- extensions/vtk/package.json | 4 ++-- platform/core/package.json | 2 +- platform/viewer/package.json | 2 +- yarn.lock | 8 ++++---- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index 2be45e29644..641c37f1839 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -35,7 +35,7 @@ "cornerstone-core": "^2.6.1", "cornerstone-math": "^0.1.9", "cornerstone-tools": "^6.0.6", - "cornerstone-wado-image-loader": "^4.1.0", + "cornerstone-wado-image-loader": "^4.2.1", "dcmjs": "0.24.10", "dicom-parser": "^1.8.11", "hammerjs": "^2.0.8", diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index c066c6a9774..17e42ad27b9 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -34,7 +34,7 @@ "@ohif/ui": "^0.50.0", "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", - "cornerstone-wado-image-loader": "^4.1.0", + "cornerstone-wado-image-loader": "^4.2.1", "dcmjs": "0.24.10", "dicom-parser": "^1.8.11", "i18next": "^17.0.3", @@ -56,7 +56,7 @@ "@ohif/core": "^2.16.28", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", - "cornerstone-wado-image-loader": "^4.1.0", + "cornerstone-wado-image-loader": "^4.2.1", "dicom-parser": "^1.8.11", "gh-pages": "^2.0.1", "i18next": "^17.0.3", diff --git a/platform/core/package.json b/platform/core/package.json index be843335344..1e37bc96fc5 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -33,7 +33,7 @@ "peerDependencies": { "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", - "cornerstone-wado-image-loader": "^4.1.0", + "cornerstone-wado-image-loader": "^4.2.1", "dicom-parser": "^1.8.11" }, "dependencies": { diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 961336f1f7d..7f400c31f92 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -65,7 +65,7 @@ "cornerstone-core": "^2.6.1", "cornerstone-math": "^0.1.9", "cornerstone-tools": "^6.0.6", - "cornerstone-wado-image-loader": "^4.1.0", + "cornerstone-wado-image-loader": "^4.2.1", "dcmjs": "0.24.10", "dicom-parser": "^1.8.11", "dicomweb-client": "^0.8.3", diff --git a/yarn.lock b/yarn.lock index ecd4275071f..fd46c441791 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5117,10 +5117,10 @@ cornerstone-tools@^6.0.6: "@babel/runtime" "7.1.2" cornerstone-math "0.1.9" -cornerstone-wado-image-loader@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cornerstone-wado-image-loader/-/cornerstone-wado-image-loader-4.1.0.tgz#a85c206eb23e188181ed3f1dcf3ec715e65efcb4" - integrity sha512-QRoMqBE5xEc1Jttg3eH6RB4jFY2aIEjd9rcbvJszefl0isow+JwcLv2kh1xkSvqGfHGozcz+F4mrORyTNNLuFQ== +cornerstone-wado-image-loader@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/cornerstone-wado-image-loader/-/cornerstone-wado-image-loader-4.2.1.tgz#ee37797fe8970dcb7e438a6d87b710e817066100" + integrity sha512-nRu+6GfHFERpZLytH/SCfymODCz1SC1NKRv/xn02pr3PEkzU6fvKI76sSxSFOozxDsYljupTRNi/qGMprfdBHA== dependencies: "@cornerstonejs/codec-charls" "^0.1.1" "@cornerstonejs/codec-libjpeg-turbo-8bit" "^0.0.7" From d7e1d2c9753e63a3eee866700f2ccaf7a42e2161 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Tue, 20 Sep 2022 11:26:05 +0000 Subject: [PATCH 30/54] chore(release): publish [skip ci] - @ohif/extension-cornerstone@2.12.15 - @ohif/extension-vtk@1.12.34 - @ohif/core@2.16.29 - @ohif/viewer@4.12.40 --- extensions/cornerstone/CHANGELOG.md | 8 ++++++++ extensions/cornerstone/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 8 ++++---- 8 files changed, 40 insertions(+), 8 deletions(-) diff --git a/extensions/cornerstone/CHANGELOG.md b/extensions/cornerstone/CHANGELOG.md index 1b7ed09e7b4..103219393a3 100644 --- a/extensions/cornerstone/CHANGELOG.md +++ b/extensions/cornerstone/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.12.15](https://github.com/OHIF/Viewers/compare/@ohif/extension-cornerstone@2.12.14...@ohif/extension-cornerstone@2.12.15) (2022-09-20) + +**Note:** Version bump only for package @ohif/extension-cornerstone + + + + + ## [2.12.14](https://github.com/OHIF/Viewers/compare/@ohif/extension-cornerstone@2.12.13...@ohif/extension-cornerstone@2.12.14) (2022-09-01) **Note:** Version bump only for package @ohif/extension-cornerstone diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index 641c37f1839..eea2e5a72ea 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-cornerstone", - "version": "2.12.14", + "version": "2.12.15", "description": "OHIF extension for Cornerstone", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 3b22255e790..19ee654a438 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.34](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.33...@ohif/extension-vtk@1.12.34) (2022-09-20) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.33](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.32...@ohif/extension-vtk@1.12.33) (2022-09-19) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 17e42ad27b9..4be73388d6e 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.33", + "version": "1.12.34", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.4" }, "devDependencies": { - "@ohif/core": "^2.16.28", + "@ohif/core": "^2.16.29", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 0d0efc9146c..a090e5039ed 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.29](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.28...@ohif/core@2.16.29) (2022-09-20) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.28](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.27...@ohif/core@2.16.28) (2022-09-19) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index 1e37bc96fc5..de73bc12bb9 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.28", + "version": "2.16.29", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index dd4d007c407..64ee9650cad 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.40](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.39...@ohif/viewer@4.12.40) (2022-09-20) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.39](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.38...@ohif/viewer@4.12.39) (2022-09-19) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 7f400c31f92..aeececfc6f5 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.39", + "version": "4.12.40", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,8 +47,8 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.28", - "@ohif/extension-cornerstone": "^2.12.14", + "@ohif/core": "^2.16.29", + "@ohif/extension-cornerstone": "^2.12.15", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", "@ohif/extension-dicom-microscopy": "^0.52.0", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.15", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.33", + "@ohif/extension-vtk": "^1.12.34", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From c5ebeaa12717ab08452cc6b7f032f03295caa7b8 Mon Sep 17 00:00:00 2001 From: GitanjaliChhetri <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Mon, 26 Sep 2022 08:39:55 -0600 Subject: [PATCH 31/54] Re IDC #2847: Fix 2d MPR rendering issue for the sagittal view (#2960) --- extensions/vtk/package.json | 2 +- yarn.lock | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 4be73388d6e..86b537c6549 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -50,7 +50,7 @@ "dependencies": { "@babel/runtime": "^7.5.5", "lodash.throttle": "^4.1.1", - "react-vtkjs-viewport": "^0.14.4" + "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { "@ohif/core": "^2.16.29", diff --git a/yarn.lock b/yarn.lock index fd46c441791..d8ea392a6e2 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4242,13 +4242,13 @@ capture-exit@^2.0.0: rsvp "^4.8.4" cardboard-vr-display@^1.0.15: - version "1.0.16" - resolved "https://registry.yarnpkg.com/cardboard-vr-display/-/cardboard-vr-display-1.0.16.tgz#f91e2798e8fb70a348599638c6742c72dfeadabc" - integrity sha512-GFBWPMH/ixy4Ji014BAO1ryddGHphtJlA8gUR6UdKsOpPjUQukCKpgsx2XIJ5oBlqXnDQOcLVRqBWyuvTI32jQ== + version "1.0.19" + resolved "https://registry.yarnpkg.com/cardboard-vr-display/-/cardboard-vr-display-1.0.19.tgz#81dcde1804b329b8228b757ac00e1fd2afa9d748" + integrity sha512-+MjcnWKAkb95p68elqZLDPzoiF/dGncQilLGvPBM5ZorABp/ao3lCs7nnRcYBckmuNkg1V/5rdGDKoUaCVsHzQ== dependencies: gl-preserve-state "^1.0.0" nosleep.js "^0.7.0" - webvr-polyfill-dpdb "^1.0.11" + webvr-polyfill-dpdb "^1.0.17" cardinal@^2.1.1: version "2.1.1" @@ -11208,7 +11208,7 @@ normalize-url@^3.0.0, normalize-url@^3.3.0: nosleep.js@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/nosleep.js/-/nosleep.js-0.7.0.tgz#cfd919c25523ca0d0f4a69fb3305c083adaee289" - integrity sha1-z9kZwlUjyg0PSmn7MwXAg62u4ok= + integrity sha512-Z4B1HgvzR+en62ghwZf6BwAR6x4/pjezsiMcbF9KMLh7xoscpoYhaSXfY3lLkqC68AtW+/qLJ1lzvBIj0FGaTA== npm-bundled@^1.0.1: version "1.0.6" @@ -13519,10 +13519,10 @@ react-transition-group@^4.1.1: loose-envify "^1.4.0" prop-types "^15.6.2" -react-vtkjs-viewport@^0.14.4: - version "0.14.4" - resolved "https://registry.yarnpkg.com/react-vtkjs-viewport/-/react-vtkjs-viewport-0.14.4.tgz#8cc5a49738fff3fee75ead61c98307bc24710151" - integrity sha512-WKU87iqH6AQ1R8zp1hUXU4hsGwfbkkoUhzSCjbBGZ9Di0ELYNx/xY9DtdmgsKOU5Y5Arp5+VQW/ziFsq2KTcTA== +react-vtkjs-viewport@^0.14.5: + version "0.14.5" + resolved "https://registry.yarnpkg.com/react-vtkjs-viewport/-/react-vtkjs-viewport-0.14.5.tgz#95cda594370e557d43aa966392ed92926e6c53c1" + integrity sha512-DE+Ytub6veya3DTvItJdZhkTR8MppoLkrq57qhN9vd2meykeS1fZp9cDyWmq92dJ7IHSuS5FPof8ucsae9ci5w== dependencies: date-fns "^2.2.1" gl-matrix "^3.1.0" @@ -14499,7 +14499,7 @@ scriptjs@^2.5.9: seedrandom@2.4.3: version "2.4.3" resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-2.4.3.tgz#2438504dad33917314bff18ac4d794f16d6aaecc" - integrity sha1-JDhQTa0zkXMUv/GKxNeU8W1qrsw= + integrity sha512-2CkZ9Wn2dS4mMUWQaXLsOAfGD+irMlLEeSP3cMxpGbgyOOzJGFa+MWCOMTOCMyZinHRPxyOj/S/C57li/1to6Q== seedrandom@^3.0.5: version "3.0.5" @@ -14715,7 +14715,7 @@ shebang-regex@^3.0.0: shelljs@0.7.8: version "0.7.8" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.8.tgz#decbcf874b0d1e5fb72e14b164a9683048e9acb3" - integrity sha1-3svPh0sNHl+3LhSxZKloMEjprLM= + integrity sha512-/YF5Uk8hcwi7ima04ppkbA4RaRMdPMBfwAvAf8sufYOxsJRtbdoBsT8vGvlb+799BrlGdYrd+oczIA2eN2JdWA== dependencies: glob "^7.0.0" interpret "^1.0.0" @@ -16662,10 +16662,10 @@ websocket-extensions@>=0.1.1: resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.3.tgz#5d2ff22977003ec687a4b87073dfbbac146ccf29" integrity sha512-nqHUnMXmBzT0w570r2JpJxfiSD1IzoI+HGVdd3aZ0yNi3ngvQ4jv1dtHt5VGxfI2yj5yqImPhOK4vmIh2xMbGg== -webvr-polyfill-dpdb@^1.0.11: - version "1.0.16" - resolved "https://registry.yarnpkg.com/webvr-polyfill-dpdb/-/webvr-polyfill-dpdb-1.0.16.tgz#7f2cf88460c002a5f10ff69b2bf3a5663e0ad9dd" - integrity sha512-FCciTtPhwkYYHGL0K67G8k7ZnNVqnEx3u4NVHLJ0+Ya6f2VTZUl/GJpaEo1Id2pBP/2l0RYZ3IGZE4Pe8fRalg== +webvr-polyfill-dpdb@^1.0.17: + version "1.0.18" + resolved "https://registry.yarnpkg.com/webvr-polyfill-dpdb/-/webvr-polyfill-dpdb-1.0.18.tgz#258484ce06b057bf18898acc911bd173847bce11" + integrity sha512-O0S1ZGEWyPvyZEkS2VbyV7mtir/NM9MNK3EuhbHPoJ8EHTky2pTXehjIl+IiDPr+Lldgx129QGt3NGly7rwRPw== webvr-polyfill@0.10.8: version "0.10.8" From 7aba01f534b70406ce02e1708004141c7b773904 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Mon, 26 Sep 2022 14:42:01 +0000 Subject: [PATCH 32/54] chore(release): publish [skip ci] - @ohif/extension-vtk@1.12.35 - @ohif/viewer@4.12.41 --- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 4 ++-- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 19ee654a438..55331d9c24e 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.35](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.34...@ohif/extension-vtk@1.12.35) (2022-09-26) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.34](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.33...@ohif/extension-vtk@1.12.34) (2022-09-20) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 86b537c6549..340b7af681a 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.34", + "version": "1.12.35", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 64ee9650cad..644d6856107 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.41](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.40...@ohif/viewer@4.12.41) (2022-09-26) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.40](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.39...@ohif/viewer@4.12.40) (2022-09-20) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index aeececfc6f5..5838052044b 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.40", + "version": "4.12.41", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.15", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.34", + "@ohif/extension-vtk": "^1.12.35", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From f7db74a84376598065b6fa2c00cd5735415ff651 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Tue, 25 Oct 2022 08:06:59 -0600 Subject: [PATCH 33/54] fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR (#2972) * fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR * fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR * fix: 2965 Correct Parsing Logic for Qualitative Instance Level SR --- .../src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js b/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js index a76c8a926bf..53f428aa977 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js +++ b/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js @@ -7,9 +7,7 @@ const getReferencedImagesList = ImagingMeasurementReportContentSequence => { const ImageLibrary = ImagingMeasurementReportContentSequence.find( item => item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImageLibrary || - item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImagingMeasurements + CodeNameCodeSequenceValues.ImageLibrary ); if (!ImageLibrary || !ImageLibrary.ContentSequence) { @@ -21,9 +19,7 @@ const getReferencedImagesList = ImagingMeasurementReportContentSequence => { ).find( item => item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImageLibraryGroup || - item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.MeasurementGroup + CodeNameCodeSequenceValues.ImageLibraryGroup ); if (!ImageLibraryGroup || !ImageLibraryGroup.ContentSequence) { From eaa423c64eaf692539792dc2676ee5288738ea52 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Tue, 25 Oct 2022 14:09:04 +0000 Subject: [PATCH 34/54] chore(release): publish [skip ci] - @ohif/extension-vtk@1.12.36 - @ohif/core@2.16.30 - @ohif/viewer@4.12.42 --- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 11 +++++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 6 +++--- 6 files changed, 33 insertions(+), 6 deletions(-) diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 55331d9c24e..d37cdaf61e3 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.36](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.35...@ohif/extension-vtk@1.12.36) (2022-10-25) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.35](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.34...@ohif/extension-vtk@1.12.35) (2022-09-26) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 340b7af681a..2a2b6d202c4 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.35", + "version": "1.12.36", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { - "@ohif/core": "^2.16.29", + "@ohif/core": "^2.16.30", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index a090e5039ed..5203c12e891 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.30](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.29...@ohif/core@2.16.30) (2022-10-25) + + +### Bug Fixes + +* 2965 Correct Parsing Logic for Qualitative Instance Level SR ([#2972](https://github.com/OHIF/Viewers/issues/2972)) ([f7db74a](https://github.com/OHIF/Viewers/commit/f7db74a84376598065b6fa2c00cd5735415ff651)) + + + + + ## [2.16.29](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.28...@ohif/core@2.16.29) (2022-09-20) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index de73bc12bb9..5a11a53f163 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.29", + "version": "2.16.30", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 644d6856107..a87587f61a4 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.42](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.41...@ohif/viewer@4.12.42) (2022-10-25) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.41](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.40...@ohif/viewer@4.12.41) (2022-09-26) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 5838052044b..608094f33de 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.41", + "version": "4.12.42", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,7 +47,7 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.29", + "@ohif/core": "^2.16.30", "@ohif/extension-cornerstone": "^2.12.15", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.15", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.35", + "@ohif/extension-vtk": "^1.12.36", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From 545161d5e8d92bb6652f17dc24a36dac8aa7b3a4 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Fri, 28 Oct 2022 11:54:19 -0600 Subject: [PATCH 35/54] fix: #2964 Update message for segmentation error loading due to orientation tolerance (#2982) --- extensions/dicom-segmentation/src/index.js | 11 +++++++++-- .../core/src/utils/loadAndCacheDerivedDisplaySets.js | 12 ++++++++++-- .../src/connectedComponents/ConnectedStudyBrowser.js | 12 ++++++++++-- .../viewer/src/connectedComponents/ViewerMain.js | 11 +++++++++-- 4 files changed, 38 insertions(+), 8 deletions(-) diff --git a/extensions/dicom-segmentation/src/index.js b/extensions/dicom-segmentation/src/index.js index 5deac6dce60..0eee8b4522d 100644 --- a/extensions/dicom-segmentation/src/index.js +++ b/extensions/dicom-segmentation/src/index.js @@ -33,10 +33,17 @@ export default { const ExtendedSegmentationPanel = props => { const { activeContexts } = api.hooks.useAppContext(); const onDisplaySetLoadFailureHandler = error => { - LoggerService.error({ error, message: error.message }); + const message = + error.message.includes('orthogonal') || + error.message.includes('oblique') + ? 'The segmentation has been detected as not planar,\ + If you really think it is planar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' + : error.message; + LoggerService.error({ error, message }); UINotificationService.show({ title: 'DICOM Segmentation Loader', - message: error.message, + message, type: 'error', autoClose: false, }); diff --git a/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js b/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js index beb3764e82a..cbcc97498cb 100644 --- a/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js +++ b/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js @@ -119,10 +119,18 @@ async function loadAndCacheDerivedDisplaySets( ) { if (recentDisplaySet.Modality === 'SEG' && logger) { const onDisplaySetLoadFailureHandler = error => { - logger.error({ error, message: error.message }); + const message = + error.message.includes('orthogonal') || + error.message.includes('oblique') + ? 'The segmentation has been detected as not planar,\ + If you really think it is planar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' + : error.message; + + logger.error({ error, message }); snackbar.show({ title: 'DICOM Segmentation Loader', - message: error.message, + message, type: 'error', autoClose: false, }); diff --git a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js index 6a9e985bc2f..b3cdc4523a0 100644 --- a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js +++ b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js @@ -20,10 +20,18 @@ const mapDispatchToProps = (dispatch, ownProps) => { const { Modality } = displaySet; if (Modality === 'SEG' && servicesManager) { const onDisplaySetLoadFailureHandler = error => { - LoggerService.error({ error, message: error.message }); + const message = + error.message.includes('orthogonal') || + error.message.includes('oblique') + ? 'The segmentation has been detected as not planar,\ + If you really think it is planar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' + : error.message; + + LoggerService.error({ error, message }); UINotificationService.show({ title: 'DICOM Segmentation Loader', - message: error.message, + message, type: 'error', autoClose: false, }); diff --git a/platform/viewer/src/connectedComponents/ViewerMain.js b/platform/viewer/src/connectedComponents/ViewerMain.js index 94c1ccca758..14f2cd4c97a 100644 --- a/platform/viewer/src/connectedComponents/ViewerMain.js +++ b/platform/viewer/src/connectedComponents/ViewerMain.js @@ -145,10 +145,17 @@ class ViewerMain extends Component { const { Modality } = displaySet; if (Modality === 'SEG' && servicesManager) { const onDisplaySetLoadFailureHandler = error => { - LoggerService.error({ error, message: error.message }); + const message = + error.message.includes('orthogonal') || + error.message.includes('oblique') + ? 'The segmentation has been detected as not planar,\ + If you really think it is planar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' + : error.message; + LoggerService.error({ error, message }); UINotificationService.show({ title: 'DICOM Segmentation Loader', - message: error.message, + message, type: 'error', autoClose: false, }); From 0f89aa32f960b68e6ae0d4b4cba05a22fffc37ca Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Fri, 28 Oct 2022 17:55:54 +0000 Subject: [PATCH 36/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.16 - @ohif/extension-vtk@1.12.37 - @ohif/core@2.16.31 - @ohif/viewer@4.12.43 --- extensions/dicom-segmentation/CHANGELOG.md | 11 +++++++++++ extensions/dicom-segmentation/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 11 +++++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 11 +++++++++++ platform/viewer/package.json | 8 ++++---- 8 files changed, 49 insertions(+), 8 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index a6b9c0ec9c4..a3625209929 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.16](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.15...@ohif/extension-dicom-segmentation@0.7.16) (2022-10-28) + + +### Bug Fixes + +* [#2964](https://github.com/OHIF/Viewers/issues/2964) Update message for segmentation error loading due to orientation tolerance ([#2982](https://github.com/OHIF/Viewers/issues/2982)) ([545161d](https://github.com/OHIF/Viewers/commit/545161d5e8d92bb6652f17dc24a36dac8aa7b3a4)) + + + + + ## [0.7.15](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.14...@ohif/extension-dicom-segmentation@0.7.15) (2022-09-19) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index d188c4307a8..91c33a5ca22 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.15", + "version": "0.7.16", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index d37cdaf61e3..04b1dc4a3ff 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.37](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.36...@ohif/extension-vtk@1.12.37) (2022-10-28) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.36](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.35...@ohif/extension-vtk@1.12.36) (2022-10-25) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 2a2b6d202c4..76ce81814e1 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.36", + "version": "1.12.37", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { - "@ohif/core": "^2.16.30", + "@ohif/core": "^2.16.31", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 5203c12e891..b9d9537ae99 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.31](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.30...@ohif/core@2.16.31) (2022-10-28) + + +### Bug Fixes + +* [#2964](https://github.com/OHIF/Viewers/issues/2964) Update message for segmentation error loading due to orientation tolerance ([#2982](https://github.com/OHIF/Viewers/issues/2982)) ([545161d](https://github.com/OHIF/Viewers/commit/545161d5e8d92bb6652f17dc24a36dac8aa7b3a4)) + + + + + ## [2.16.30](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.29...@ohif/core@2.16.30) (2022-10-25) diff --git a/platform/core/package.json b/platform/core/package.json index 5a11a53f163..5dbcb6b0bad 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.30", + "version": "2.16.31", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index a87587f61a4..2d38ba9ebf5 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.43](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.42...@ohif/viewer@4.12.43) (2022-10-28) + + +### Bug Fixes + +* [#2964](https://github.com/OHIF/Viewers/issues/2964) Update message for segmentation error loading due to orientation tolerance ([#2982](https://github.com/OHIF/Viewers/issues/2982)) ([545161d](https://github.com/OHIF/Viewers/commit/545161d5e8d92bb6652f17dc24a36dac8aa7b3a4)) + + + + + ## [4.12.42](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.41...@ohif/viewer@4.12.42) (2022-10-25) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 608094f33de..dfab67a809f 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.42", + "version": "4.12.43", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,16 +47,16 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.30", + "@ohif/core": "^2.16.31", "@ohif/extension-cornerstone": "^2.12.15", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.13", - "@ohif/extension-dicom-segmentation": "^0.7.15", + "@ohif/extension-dicom-segmentation": "^0.7.16", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.36", + "@ohif/extension-vtk": "^1.12.37", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From 0b8facbea6e12798131a07930ec2471a23f9eca8 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Wed, 2 Nov 2022 15:20:20 -0600 Subject: [PATCH 37/54] remove-unsed-code-from-SR-parsing (#2997) --- .../src/DICOMSR/SCOORD3D/parseSCOORD3D.js | 2 - .../SCOORD3D/utils/getReferencedImagesList.js | 47 ------------------- 2 files changed, 49 deletions(-) delete mode 100644 platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js diff --git a/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js b/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js index dd5590f3004..66d29293769 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js +++ b/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js @@ -1,6 +1,5 @@ import { ImageSet } from '../../classes'; import getMeasurements from './utils/getMeasurements'; -import getReferencedImagesList from './utils/getReferencedImagesList'; import isRehydratable from './utils/isRehydratable'; import addMeasurement from './utils/addMeasurement'; @@ -27,7 +26,6 @@ const parseSCOORD3D = ({ servicesManager, displaySets }) => { const { ContentSequence } = firstInstance; - srDisplaySet.referencedImages = getReferencedImagesList(ContentSequence); srDisplaySet.measurements = getMeasurements(ContentSequence); const mappings = MeasurementService.getSourceMappings( 'CornerstoneTools', diff --git a/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js b/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js deleted file mode 100644 index 53f428aa977..00000000000 --- a/platform/core/src/DICOMSR/SCOORD3D/utils/getReferencedImagesList.js +++ /dev/null @@ -1,47 +0,0 @@ -import getSequenceAsArray from './getSequenceAsArray'; -import { CodeNameCodeSequenceValues } from '../enums'; - -const getReferencedImagesList = ImagingMeasurementReportContentSequence => { - const referencedImages = []; - - const ImageLibrary = ImagingMeasurementReportContentSequence.find( - item => - item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImageLibrary - ); - - if (!ImageLibrary || !ImageLibrary.ContentSequence) { - return referencedImages; - } - - const ImageLibraryGroup = getSequenceAsArray( - ImageLibrary.ContentSequence - ).find( - item => - item.ConceptNameCodeSequence.CodeValue === - CodeNameCodeSequenceValues.ImageLibraryGroup - ); - - if (!ImageLibraryGroup || !ImageLibraryGroup.ContentSequence) { - return referencedImages; - } - - getSequenceAsArray(ImageLibraryGroup.ContentSequence).forEach(item => { - const { ReferencedSOPSequence } = item; - if (ReferencedSOPSequence) { - const { - ReferencedSOPClassUID, - ReferencedSOPInstanceUID, - } = ReferencedSOPSequence; - - referencedImages.push({ - ReferencedSOPClassUID, - ReferencedSOPInstanceUID, - }); - } - }); - - return referencedImages; -}; - -export default getReferencedImagesList; From 686fe7d931ba17a70212079e63ad0774e39257fb Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Wed, 2 Nov 2022 21:22:01 +0000 Subject: [PATCH 38/54] chore(release): publish [skip ci] - @ohif/extension-vtk@1.12.38 - @ohif/core@2.16.32 - @ohif/viewer@4.12.44 --- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 6 +++--- 6 files changed, 30 insertions(+), 6 deletions(-) diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 04b1dc4a3ff..975418ab3c1 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.38](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.37...@ohif/extension-vtk@1.12.38) (2022-11-02) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.37](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.36...@ohif/extension-vtk@1.12.37) (2022-10-28) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 76ce81814e1..f06f03ebfce 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.37", + "version": "1.12.38", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { - "@ohif/core": "^2.16.31", + "@ohif/core": "^2.16.32", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index b9d9537ae99..6c7e2181188 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.32](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.31...@ohif/core@2.16.32) (2022-11-02) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.31](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.30...@ohif/core@2.16.31) (2022-10-28) diff --git a/platform/core/package.json b/platform/core/package.json index 5dbcb6b0bad..b5b39c8533a 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.31", + "version": "2.16.32", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 2d38ba9ebf5..f08bce884b1 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.44](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.43...@ohif/viewer@4.12.44) (2022-11-02) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.43](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.42...@ohif/viewer@4.12.43) (2022-10-28) diff --git a/platform/viewer/package.json b/platform/viewer/package.json index dfab67a809f..41184fca7e9 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.43", + "version": "4.12.44", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,7 +47,7 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.31", + "@ohif/core": "^2.16.32", "@ohif/extension-cornerstone": "^2.12.15", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.16", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.37", + "@ohif/extension-vtk": "^1.12.38", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From 44738078dbd8dc6b27d2d669e25417e37371f48d Mon Sep 17 00:00:00 2001 From: Pauline Ribeyre <4224001+paulineribeyre@users.noreply.github.com> Date: Sat, 12 Nov 2022 10:01:21 -0600 Subject: [PATCH 39/54] fix: handle missing ReferencedInstanceSequence attribute (#2786) --- .../wado/getReferencedSeriesSequence.js | 20 ++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/platform/core/src/studies/services/wado/getReferencedSeriesSequence.js b/platform/core/src/studies/services/wado/getReferencedSeriesSequence.js index ef32b16fde7..29dc446055b 100644 --- a/platform/core/src/studies/services/wado/getReferencedSeriesSequence.js +++ b/platform/core/src/studies/services/wado/getReferencedSeriesSequence.js @@ -21,16 +21,18 @@ const getReferencedSeriesSequence = instance => { const referencedInstanceSequenceRaw = referencedSeries['0008114A']; const referencedInstanceSequence = []; - referencedInstanceSequenceRaw.Value.forEach(referencedInstance => { - referencedInstanceSequence.push({ - referencedSOPClassUID: DICOMWeb.getString( - referencedInstance['00081150'] - ), - referencedSOPInstanceUID: DICOMWeb.getString( - referencedInstance['00081155'] - ), + if (referencedInstanceSequenceRaw) { + referencedInstanceSequenceRaw.Value.forEach(referencedInstance => { + referencedInstanceSequence.push({ + referencedSOPClassUID: DICOMWeb.getString( + referencedInstance['00081150'] + ), + referencedSOPInstanceUID: DICOMWeb.getString( + referencedInstance['00081155'] + ), + }); }); - }); + } referencedSeriesSequence.push({ referencedSeriesInstanceUID, From 6007f340bf4c76edeb6488773e194e6da0959a4c Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Sat, 12 Nov 2022 16:03:12 +0000 Subject: [PATCH 40/54] chore(release): publish [skip ci] - @ohif/extension-vtk@1.12.39 - @ohif/core@2.16.33 - @ohif/viewer@4.12.45 --- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 11 +++++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 6 +++--- 6 files changed, 33 insertions(+), 6 deletions(-) diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 975418ab3c1..4dabe8e4ed7 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.39](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.38...@ohif/extension-vtk@1.12.39) (2022-11-12) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.38](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.37...@ohif/extension-vtk@1.12.38) (2022-11-02) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index f06f03ebfce..f6750ff6e57 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.38", + "version": "1.12.39", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { - "@ohif/core": "^2.16.32", + "@ohif/core": "^2.16.33", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 6c7e2181188..39b4e370921 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.33](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.32...@ohif/core@2.16.33) (2022-11-12) + + +### Bug Fixes + +* handle missing ReferencedInstanceSequence attribute ([#2786](https://github.com/OHIF/Viewers/issues/2786)) ([4473807](https://github.com/OHIF/Viewers/commit/44738078dbd8dc6b27d2d669e25417e37371f48d)) + + + + + ## [2.16.32](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.31...@ohif/core@2.16.32) (2022-11-02) **Note:** Version bump only for package @ohif/core diff --git a/platform/core/package.json b/platform/core/package.json index b5b39c8533a..2a78069a394 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.32", + "version": "2.16.33", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index f08bce884b1..698cd7f7485 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.45](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.44...@ohif/viewer@4.12.45) (2022-11-12) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.44](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.43...@ohif/viewer@4.12.44) (2022-11-02) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 41184fca7e9..ce71c58e894 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.44", + "version": "4.12.45", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,7 +47,7 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.32", + "@ohif/core": "^2.16.33", "@ohif/extension-cornerstone": "^2.12.15", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", @@ -56,7 +56,7 @@ "@ohif/extension-dicom-rt": "^0.7.13", "@ohif/extension-dicom-segmentation": "^0.7.16", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.38", + "@ohif/extension-vtk": "^1.12.39", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From 597ac11c4daee1b1e14148804551e20611cfef08 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Mon, 12 Dec 2022 17:32:58 +0530 Subject: [PATCH 41/54] fix: #2964 Reword message for segmentation error loading due to orientation tolerance (#3017) --- extensions/dicom-segmentation/src/index.js | 6 +++--- platform/core/src/utils/loadAndCacheDerivedDisplaySets.js | 6 +++--- .../viewer/src/connectedComponents/ConnectedStudyBrowser.js | 6 +++--- platform/viewer/src/connectedComponents/ViewerMain.js | 6 +++--- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/extensions/dicom-segmentation/src/index.js b/extensions/dicom-segmentation/src/index.js index 0eee8b4522d..292f19ccf00 100644 --- a/extensions/dicom-segmentation/src/index.js +++ b/extensions/dicom-segmentation/src/index.js @@ -36,9 +36,9 @@ export default { const message = error.message.includes('orthogonal') || error.message.includes('oblique') - ? 'The segmentation has been detected as not planar,\ - If you really think it is planar,\ - please adjust the tolerance in the segmentation panel settings (at your own peril!)' + ? 'The segmentation has been detected as non coplanar,\ + If you really think it is coplanar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' : error.message; LoggerService.error({ error, message }); UINotificationService.show({ diff --git a/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js b/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js index cbcc97498cb..d7b030f418b 100644 --- a/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js +++ b/platform/core/src/utils/loadAndCacheDerivedDisplaySets.js @@ -122,9 +122,9 @@ async function loadAndCacheDerivedDisplaySets( const message = error.message.includes('orthogonal') || error.message.includes('oblique') - ? 'The segmentation has been detected as not planar,\ - If you really think it is planar,\ - please adjust the tolerance in the segmentation panel settings (at your own peril!)' + ? 'The segmentation has been detected as non coplanar,\ + If you really think it is coplanar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' : error.message; logger.error({ error, message }); diff --git a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js index b3cdc4523a0..5e8909fbfdc 100644 --- a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js +++ b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js @@ -23,9 +23,9 @@ const mapDispatchToProps = (dispatch, ownProps) => { const message = error.message.includes('orthogonal') || error.message.includes('oblique') - ? 'The segmentation has been detected as not planar,\ - If you really think it is planar,\ - please adjust the tolerance in the segmentation panel settings (at your own peril!)' + ? 'The segmentation has been detected as non coplanar,\ + If you really think it is coplanar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' : error.message; LoggerService.error({ error, message }); diff --git a/platform/viewer/src/connectedComponents/ViewerMain.js b/platform/viewer/src/connectedComponents/ViewerMain.js index 14f2cd4c97a..3cc5992e7c1 100644 --- a/platform/viewer/src/connectedComponents/ViewerMain.js +++ b/platform/viewer/src/connectedComponents/ViewerMain.js @@ -148,9 +148,9 @@ class ViewerMain extends Component { const message = error.message.includes('orthogonal') || error.message.includes('oblique') - ? 'The segmentation has been detected as not planar,\ - If you really think it is planar,\ - please adjust the tolerance in the segmentation panel settings (at your own peril!)' + ? 'The segmentation has been detected as non coplanar,\ + If you really think it is coplanar,\ + please adjust the tolerance in the segmentation panel settings (at your own peril!)' : error.message; LoggerService.error({ error, message }); UINotificationService.show({ From b9d484fb2e3651f1e715f2c17e5b8d882714b685 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Mon, 12 Dec 2022 12:05:13 +0000 Subject: [PATCH 42/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.17 - @ohif/extension-vtk@1.12.40 - @ohif/core@2.16.34 - @ohif/viewer@4.12.46 --- extensions/dicom-segmentation/CHANGELOG.md | 11 +++++++++++ extensions/dicom-segmentation/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 11 +++++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 11 +++++++++++ platform/viewer/package.json | 8 ++++---- 8 files changed, 49 insertions(+), 8 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index a3625209929..e9ea96db8b8 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.17](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.16...@ohif/extension-dicom-segmentation@0.7.17) (2022-12-12) + + +### Bug Fixes + +* [#2964](https://github.com/OHIF/Viewers/issues/2964) Reword message for segmentation error loading due to orientation tolerance ([#3017](https://github.com/OHIF/Viewers/issues/3017)) ([597ac11](https://github.com/OHIF/Viewers/commit/597ac11c4daee1b1e14148804551e20611cfef08)) + + + + + ## [0.7.16](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.15...@ohif/extension-dicom-segmentation@0.7.16) (2022-10-28) diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 91c33a5ca22..685c63f3b6f 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.16", + "version": "0.7.17", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index 4dabe8e4ed7..f8ddfb21f47 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.40](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.39...@ohif/extension-vtk@1.12.40) (2022-12-12) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.39](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.38...@ohif/extension-vtk@1.12.39) (2022-11-12) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index f6750ff6e57..17306cca602 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.39", + "version": "1.12.40", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { - "@ohif/core": "^2.16.33", + "@ohif/core": "^2.16.34", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 39b4e370921..0adb4208d0c 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.34](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.33...@ohif/core@2.16.34) (2022-12-12) + + +### Bug Fixes + +* [#2964](https://github.com/OHIF/Viewers/issues/2964) Reword message for segmentation error loading due to orientation tolerance ([#3017](https://github.com/OHIF/Viewers/issues/3017)) ([597ac11](https://github.com/OHIF/Viewers/commit/597ac11c4daee1b1e14148804551e20611cfef08)) + + + + + ## [2.16.33](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.32...@ohif/core@2.16.33) (2022-11-12) diff --git a/platform/core/package.json b/platform/core/package.json index 2a78069a394..06f370867f0 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.33", + "version": "2.16.34", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 698cd7f7485..b37a880aa20 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,17 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.46](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.45...@ohif/viewer@4.12.46) (2022-12-12) + + +### Bug Fixes + +* [#2964](https://github.com/OHIF/Viewers/issues/2964) Reword message for segmentation error loading due to orientation tolerance ([#3017](https://github.com/OHIF/Viewers/issues/3017)) ([597ac11](https://github.com/OHIF/Viewers/commit/597ac11c4daee1b1e14148804551e20611cfef08)) + + + + + ## [4.12.45](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.44...@ohif/viewer@4.12.45) (2022-11-12) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index ce71c58e894..e12bbf5ef8d 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.45", + "version": "4.12.46", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,16 +47,16 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.33", + "@ohif/core": "^2.16.34", "@ohif/extension-cornerstone": "^2.12.15", "@ohif/extension-debugging": "^0.3.3", "@ohif/extension-dicom-html": "^1.3.23", "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.13", - "@ohif/extension-dicom-segmentation": "^0.7.16", + "@ohif/extension-dicom-segmentation": "^0.7.17", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.39", + "@ohif/extension-vtk": "^1.12.40", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From 1d29554a91d559e70e7a51150229e0a9a2b724d4 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Wed, 21 Dec 2022 10:40:04 +0545 Subject: [PATCH 43/54] Re IDC #3067: Show eye-icon when segment label name is long (#3073) * fix: #2964 Reword message for segmentation error loading due to orientation tolerance * fix: Show eye-icon when segment name is long * update python version --- .../src/components/SegmentItem/SegmentItem.css | 5 +++-- runtime.txt | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/extensions/dicom-segmentation/src/components/SegmentItem/SegmentItem.css b/extensions/dicom-segmentation/src/components/SegmentItem/SegmentItem.css index 645e48c83fe..f0b28428b35 100644 --- a/extensions/dicom-segmentation/src/components/SegmentItem/SegmentItem.css +++ b/extensions/dicom-segmentation/src/components/SegmentItem/SegmentItem.css @@ -62,8 +62,8 @@ } .dcmseg-segment-item .segment-label span { - overflow-wrap: normal; - white-space: nowrap; + overflow-wrap: break-word; + white-space: normal; overflow: hidden; max-width: calc(100% - 40px); /* calc(100% - 50px); 20px = eye icon */ text-overflow: ellipsis; @@ -71,6 +71,7 @@ .dcmseg-segment-item .segment-label .eye-icon { cursor: pointer; + min-width: 20px; color: var(--active-color); } diff --git a/runtime.txt b/runtime.txt index 475ba515c04..cc1923a40b1 100644 --- a/runtime.txt +++ b/runtime.txt @@ -1 +1 @@ -3.7 +3.8 From 4ffb50c7e95a7dc3ed5e32d0a7ed0bf19021e830 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Wed, 21 Dec 2022 04:56:46 +0000 Subject: [PATCH 44/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.18 - @ohif/viewer@4.12.47 --- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 4 ++-- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index e9ea96db8b8..d8ed99ea423 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.18](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.17...@ohif/extension-dicom-segmentation@0.7.18) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.17](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.16...@ohif/extension-dicom-segmentation@0.7.17) (2022-12-12) diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 685c63f3b6f..b5901192b77 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.17", + "version": "0.7.18", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index b37a880aa20..df014602d5d 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.47](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.46...@ohif/viewer@4.12.47) (2022-12-21) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.46](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.45...@ohif/viewer@4.12.46) (2022-12-12) diff --git a/platform/viewer/package.json b/platform/viewer/package.json index e12bbf5ef8d..9e157823375 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.46", + "version": "4.12.47", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -54,7 +54,7 @@ "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.13", - "@ohif/extension-dicom-segmentation": "^0.7.17", + "@ohif/extension-dicom-segmentation": "^0.7.18", "@ohif/extension-lesion-tracker": "^0.2.2", "@ohif/extension-vtk": "^1.12.40", "@ohif/i18n": "^0.53.0", From 3350b1faa6530a43a376b25a9631b7da9cec555c Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Wed, 21 Dec 2022 19:23:47 +0545 Subject: [PATCH 45/54] Re IDC #3047: update variable name for frame index (#3085) --- extensions/cornerstone/package.json | 2 +- extensions/dicom-html/package.json | 2 +- extensions/dicom-rt/package.json | 2 +- extensions/dicom-segmentation/package.json | 2 +- extensions/dicom-tag-browser/package.json | 2 +- extensions/vtk/package.json | 2 +- platform/core/package.json | 2 +- platform/viewer/package.json | 2 +- yarn.lock | 9 +++++---- 9 files changed, 13 insertions(+), 12 deletions(-) diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index eea2e5a72ea..6966f1b71b6 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -36,7 +36,7 @@ "cornerstone-math": "^0.1.9", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "dicom-parser": "^1.8.11", "hammerjs": "^2.0.8", "prop-types": "^15.6.2", diff --git a/extensions/dicom-html/package.json b/extensions/dicom-html/package.json index d56849dba33..25b2c645e4a 100644 --- a/extensions/dicom-html/package.json +++ b/extensions/dicom-html/package.json @@ -29,7 +29,7 @@ }, "peerDependencies": { "@ohif/core": "^0.50.0", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "prop-types": "^15.6.2", "react": "^16.8.6", "react-dom": "^16.8.6" diff --git a/extensions/dicom-rt/package.json b/extensions/dicom-rt/package.json index 477a2677e41..969492abf2f 100644 --- a/extensions/dicom-rt/package.json +++ b/extensions/dicom-rt/package.json @@ -31,7 +31,7 @@ "@ohif/core": "^0.50.0", "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "gl-matrix": "^3.3.0", "prop-types": "^15.6.2", "react": "^16.8.6", diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index b5901192b77..5bb67b09569 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -31,7 +31,7 @@ "@ohif/core": "^0.50.0", "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "prop-types": "^15.6.2", "react": "^16.8.6", "react-dom": "^16.8.6" diff --git a/extensions/dicom-tag-browser/package.json b/extensions/dicom-tag-browser/package.json index 037e481104d..6d40b1eb206 100644 --- a/extensions/dicom-tag-browser/package.json +++ b/extensions/dicom-tag-browser/package.json @@ -28,7 +28,7 @@ }, "peerDependencies": { "@ohif/core": "^2.6.0", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "react": "^16.8.6" }, "dependencies": { diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 17306cca602..42af941222a 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -35,7 +35,7 @@ "cornerstone-core": "^2.6.1", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "dicom-parser": "^1.8.11", "i18next": "^17.0.3", "i18next-browser-languagedetector": "^3.0.1", diff --git a/platform/core/package.json b/platform/core/package.json index 06f370867f0..4f1e5944119 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -39,7 +39,7 @@ "dependencies": { "@babel/runtime": "^7.5.5", "ajv": "^6.10.0", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "dicomweb-client": "^0.8.3", "immer": "9.0.12", "isomorphic-base64": "^1.0.2", diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 9e157823375..655fa342405 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -66,7 +66,7 @@ "cornerstone-math": "^0.1.9", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", - "dcmjs": "0.24.10", + "dcmjs": "0.29.3", "dicom-parser": "^1.8.11", "dicomweb-client": "^0.8.3", "hammerjs": "^2.0.8", diff --git a/yarn.lock b/yarn.lock index d8ea392a6e2..9a481472858 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5637,16 +5637,17 @@ dateformat@^3.0.0: resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== -dcmjs@0.24.10: - version "0.24.10" - resolved "https://registry.yarnpkg.com/dcmjs/-/dcmjs-0.24.10.tgz#048a12a1905175763274545c17bb38b506cdfd00" - integrity sha512-kugEdBqwwTx7lqUxm4jdklkMJiQ8pZ0aqMw9WkszkDU5lDWHyq2kbRccACtcwqygC7j1d36w8uG/vNLMejeMBg== +dcmjs@0.29.3: + version "0.29.3" + resolved "https://registry.yarnpkg.com/dcmjs/-/dcmjs-0.29.3.tgz#e672ed079bd5371406e022361c60d7794af40d7b" + integrity sha512-aLAkrpejrFAatzU84ID9s01+oUFBzIP3gSkgyr2OcDfOphW7ms/JUDUdH24Y6361NaMovEo4gJ3bRrzsBmI8cA== dependencies: "@babel/runtime-corejs2" "^7.17.8" gl-matrix "^3.1.0" lodash.clonedeep "^4.5.0" loglevelnext "^3.0.1" ndarray "^1.0.19" + pako "^2.0.4" debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.8, debug@^2.6.9: version "2.6.9" From cfa697aabcd5e5538bf50bf79efb963798e67e48 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Wed, 21 Dec 2022 13:40:36 +0000 Subject: [PATCH 46/54] chore(release): publish [skip ci] - @ohif/extension-cornerstone@2.12.16 - @ohif/extension-dicom-html@1.3.24 - @ohif/extension-dicom-rt@0.7.14 - @ohif/extension-dicom-segmentation@0.7.19 - @ohif/extension-dicom-tag-browser@0.2.25 - @ohif/extension-vtk@1.12.41 - @ohif/core@2.16.35 - @ohif/viewer@4.12.48 --- extensions/cornerstone/CHANGELOG.md | 8 ++++++++ extensions/cornerstone/package.json | 2 +- extensions/dicom-html/CHANGELOG.md | 8 ++++++++ extensions/dicom-html/package.json | 2 +- extensions/dicom-rt/CHANGELOG.md | 8 ++++++++ extensions/dicom-rt/package.json | 2 +- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- extensions/dicom-tag-browser/CHANGELOG.md | 8 ++++++++ extensions/dicom-tag-browser/package.json | 2 +- extensions/vtk/CHANGELOG.md | 8 ++++++++ extensions/vtk/package.json | 4 ++-- platform/core/CHANGELOG.md | 8 ++++++++ platform/core/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 14 +++++++------- 16 files changed, 79 insertions(+), 15 deletions(-) diff --git a/extensions/cornerstone/CHANGELOG.md b/extensions/cornerstone/CHANGELOG.md index 103219393a3..1e1530327f7 100644 --- a/extensions/cornerstone/CHANGELOG.md +++ b/extensions/cornerstone/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.12.16](https://github.com/OHIF/Viewers/compare/@ohif/extension-cornerstone@2.12.15...@ohif/extension-cornerstone@2.12.16) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-cornerstone + + + + + ## [2.12.15](https://github.com/OHIF/Viewers/compare/@ohif/extension-cornerstone@2.12.14...@ohif/extension-cornerstone@2.12.15) (2022-09-20) **Note:** Version bump only for package @ohif/extension-cornerstone diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index 6966f1b71b6..91e94a6d300 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-cornerstone", - "version": "2.12.15", + "version": "2.12.16", "description": "OHIF extension for Cornerstone", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-html/CHANGELOG.md b/extensions/dicom-html/CHANGELOG.md index 141a879ccaa..848f4b32d8f 100644 --- a/extensions/dicom-html/CHANGELOG.md +++ b/extensions/dicom-html/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.3.24](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-html@1.3.23...@ohif/extension-dicom-html@1.3.24) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-dicom-html + + + + + ## [1.3.23](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-html@1.3.22...@ohif/extension-dicom-html@1.3.23) (2022-09-01) **Note:** Version bump only for package @ohif/extension-dicom-html diff --git a/extensions/dicom-html/package.json b/extensions/dicom-html/package.json index 25b2c645e4a..4b8ecea5dd7 100644 --- a/extensions/dicom-html/package.json +++ b/extensions/dicom-html/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-html", - "version": "1.3.23", + "version": "1.3.24", "description": "OHIF extension for rendering structured reports to HTML", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-rt/CHANGELOG.md b/extensions/dicom-rt/CHANGELOG.md index addda6aa3fd..3ecc1e2dac7 100644 --- a/extensions/dicom-rt/CHANGELOG.md +++ b/extensions/dicom-rt/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.14](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-rt@0.7.13...@ohif/extension-dicom-rt@0.7.14) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-dicom-rt + + + + + ## [0.7.13](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-rt@0.7.12...@ohif/extension-dicom-rt@0.7.13) (2022-09-01) **Note:** Version bump only for package @ohif/extension-dicom-rt diff --git a/extensions/dicom-rt/package.json b/extensions/dicom-rt/package.json index 969492abf2f..e158d439dc6 100644 --- a/extensions/dicom-rt/package.json +++ b/extensions/dicom-rt/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-rt", - "version": "0.7.13", + "version": "0.7.14", "description": "OHIF extension for rendering DICOM RTSTRUCTs on top of cornerstone images.", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index d8ed99ea423..6201408c5ca 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.19](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.18...@ohif/extension-dicom-segmentation@0.7.19) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.18](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.17...@ohif/extension-dicom-segmentation@0.7.18) (2022-12-21) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 5bb67b09569..3096d46e089 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.18", + "version": "0.7.19", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/extensions/dicom-tag-browser/CHANGELOG.md b/extensions/dicom-tag-browser/CHANGELOG.md index 6f06cd3ede6..eef68137903 100644 --- a/extensions/dicom-tag-browser/CHANGELOG.md +++ b/extensions/dicom-tag-browser/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.2.25](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-tag-browser@0.2.24...@ohif/extension-dicom-tag-browser@0.2.25) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-dicom-tag-browser + + + + + ## [0.2.24](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-tag-browser@0.2.23...@ohif/extension-dicom-tag-browser@0.2.24) (2022-09-01) **Note:** Version bump only for package @ohif/extension-dicom-tag-browser diff --git a/extensions/dicom-tag-browser/package.json b/extensions/dicom-tag-browser/package.json index 6d40b1eb206..ed0ed8d8b7a 100644 --- a/extensions/dicom-tag-browser/package.json +++ b/extensions/dicom-tag-browser/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-tag-browser", - "version": "0.2.24", + "version": "0.2.25", "description": "OHIF extension for checking DICOM headers.", "author": "OHIF", "license": "MIT", diff --git a/extensions/vtk/CHANGELOG.md b/extensions/vtk/CHANGELOG.md index f8ddfb21f47..d5bd1defef2 100644 --- a/extensions/vtk/CHANGELOG.md +++ b/extensions/vtk/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [1.12.41](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.40...@ohif/extension-vtk@1.12.41) (2022-12-21) + +**Note:** Version bump only for package @ohif/extension-vtk + + + + + ## [1.12.40](https://github.com/OHIF/Viewers/compare/@ohif/extension-vtk@1.12.39...@ohif/extension-vtk@1.12.40) (2022-12-12) **Note:** Version bump only for package @ohif/extension-vtk diff --git a/extensions/vtk/package.json b/extensions/vtk/package.json index 42af941222a..60eeed53ee6 100644 --- a/extensions/vtk/package.json +++ b/extensions/vtk/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-vtk", - "version": "1.12.40", + "version": "1.12.41", "description": "OHIF extension for VTK.js", "author": "OHIF", "license": "MIT", @@ -53,7 +53,7 @@ "react-vtkjs-viewport": "^0.14.5" }, "devDependencies": { - "@ohif/core": "^2.16.34", + "@ohif/core": "^2.16.35", "@ohif/ui": "^1.10.10", "cornerstone-tools": "^6.0.6", "cornerstone-wado-image-loader": "^4.2.1", diff --git a/platform/core/CHANGELOG.md b/platform/core/CHANGELOG.md index 0adb4208d0c..aacc0c91217 100644 --- a/platform/core/CHANGELOG.md +++ b/platform/core/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [2.16.35](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.34...@ohif/core@2.16.35) (2022-12-21) + +**Note:** Version bump only for package @ohif/core + + + + + ## [2.16.34](https://github.com/OHIF/Viewers/compare/@ohif/core@2.16.33...@ohif/core@2.16.34) (2022-12-12) diff --git a/platform/core/package.json b/platform/core/package.json index 4f1e5944119..961e0e1465c 100644 --- a/platform/core/package.json +++ b/platform/core/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/core", - "version": "2.16.34", + "version": "2.16.35", "description": "Generic business logic for web-based medical imaging applications", "author": "OHIF Core Team", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index df014602d5d..33875434344 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.48](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.47...@ohif/viewer@4.12.48) (2022-12-21) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.47](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.46...@ohif/viewer@4.12.47) (2022-12-21) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 655fa342405..64c2c326ff2 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.47", + "version": "4.12.48", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -47,16 +47,16 @@ }, "dependencies": { "@babel/runtime": "^7.5.5", - "@ohif/core": "^2.16.34", - "@ohif/extension-cornerstone": "^2.12.15", + "@ohif/core": "^2.16.35", + "@ohif/extension-cornerstone": "^2.12.16", "@ohif/extension-debugging": "^0.3.3", - "@ohif/extension-dicom-html": "^1.3.23", + "@ohif/extension-dicom-html": "^1.3.24", "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", - "@ohif/extension-dicom-rt": "^0.7.13", - "@ohif/extension-dicom-segmentation": "^0.7.18", + "@ohif/extension-dicom-rt": "^0.7.14", + "@ohif/extension-dicom-segmentation": "^0.7.19", "@ohif/extension-lesion-tracker": "^0.2.2", - "@ohif/extension-vtk": "^1.12.40", + "@ohif/extension-vtk": "^1.12.41", "@ohif/i18n": "^0.53.0", "@ohif/ui": "^1.10.10", "@tanem/react-nprogress": "^1.1.25", From dab095b6b56a9ce4fb4fb8533f93001cf314f854 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Tue, 10 Jan 2023 08:30:52 -0800 Subject: [PATCH 47/54] Re IDC #3088: Fix seg toggle visibility logic (#3101) --- .../SegmentationPanel/SegmentationPanel.js | 20 ++++++------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js index 256baf142ab..6d2d95d2d56 100644 --- a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js +++ b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js @@ -630,25 +630,17 @@ const SegmentationPanel = ({ const onVisibilityChangeHandler = isVisible => { let segmentsHidden = []; + const labelmap3D = getActiveLabelMaps3D(); + state.segmentNumbers.forEach(segmentNumber => { if (isVTK()) { onSegmentVisibilityChange(segmentNumber, isVisible); } - /** Get all labelmaps with this segmentNumber (overlapping segments) */ - const { labelmaps3D } = getBrushStackState(); - const possibleLabelMaps3D = labelmaps3D.filter(({ labelmaps2D }) => { - return labelmaps2D.some(({ segmentsOnLabelmap }) => - segmentsOnLabelmap.includes(segmentNumber) - ); - }); - - possibleLabelMaps3D.forEach(labelmap3D => { - labelmap3D.segmentsHidden[segmentNumber] = !isVisible; - segmentsHidden = [ - ...new Set([...segmentsHidden, ...labelmap3D.segmentsHidden]), - ]; - }); + labelmap3D.segmentsHidden[segmentNumber] = !isVisible; + segmentsHidden = [ + ...new Set([...segmentsHidden, ...labelmap3D.segmentsHidden]), + ]; }); setState(state => ({ ...state, segmentsHidden })); From 5d9e4c9b029687a8a299cf4525f58ad9ba4a5e79 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Tue, 10 Jan 2023 16:33:09 +0000 Subject: [PATCH 48/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.20 - @ohif/viewer@4.12.49 --- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 4 ++-- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index 6201408c5ca..88579c0a275 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.20](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.19...@ohif/extension-dicom-segmentation@0.7.20) (2023-01-10) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.19](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.18...@ohif/extension-dicom-segmentation@0.7.19) (2022-12-21) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index 3096d46e089..dbb34650652 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.19", + "version": "0.7.20", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index 33875434344..fff421a57b0 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.49](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.48...@ohif/viewer@4.12.49) (2023-01-10) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.48](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.47...@ohif/viewer@4.12.48) (2022-12-21) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 64c2c326ff2..772953d9c66 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.48", + "version": "4.12.49", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -54,7 +54,7 @@ "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.14", - "@ohif/extension-dicom-segmentation": "^0.7.19", + "@ohif/extension-dicom-segmentation": "^0.7.20", "@ohif/extension-lesion-tracker": "^0.2.2", "@ohif/extension-vtk": "^1.12.41", "@ohif/i18n": "^0.53.0", From cb9aa6a765da95b5d7eed9636fd7bf26218e706f Mon Sep 17 00:00:00 2001 From: Alireza Date: Wed, 11 Jan 2023 16:53:35 -0500 Subject: [PATCH 49/54] chore: update issue and PR templates (#3113) * chore: update issue templates * add template to PRs * update for pr titles * update * update * update description --- .github/ISSUE_TEMPLATE/---bug-report.md | 25 ++++-- .github/ISSUE_TEMPLATE/---feature-request.md | 19 ++-- .github/pull_request_template.md | 93 ++++++++++++++++++-- .github/stale.yml | 12 +-- 4 files changed, 118 insertions(+), 31 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/---bug-report.md b/.github/ISSUE_TEMPLATE/---bug-report.md index 8c4cab1fb00..8d4faac76e4 100644 --- a/.github/ISSUE_TEMPLATE/---bug-report.md +++ b/.github/ISSUE_TEMPLATE/---bug-report.md @@ -2,23 +2,21 @@ name: "\U0001F41B Bug report" about: Create a report to help us improve title: '' -labels: 'Community: Report :bug:, Awaiting Reproduction, Triage :white_flag:' +labels: 'Community: Report :bug:, Awaiting Reproduction' assignees: '' --- -> **Before Creating an issue** -> -> - Are you running the latest version? -> - Are you reporting to the correct repository? -> - Did you search existing issues? - -## Bug Report + + + + + ### Describe the Bug _A clear and concise description of what the bug is._ -### What steps can we follow to reproduce the bug? +### Steps to Reproduce: 1. First step 2. Second step @@ -28,6 +26,15 @@ _A clear and concise description of what the bug is._ Please use code blocks to show formatted errors or code snippets ``` +### The current behavior + +_A clear and concise description of what happens instead of the expected +behavior._ + +### The expected behavior + +_A clear and concise description of what you expected to happen._ + > :warning: Reports we cannot reproduce are at risk of being marked stale and > closed. The more information you can provide, the more likely we are to look > into and address your issue. diff --git a/.github/ISSUE_TEMPLATE/---feature-request.md b/.github/ISSUE_TEMPLATE/---feature-request.md index d0cabe09f63..cff3c6a96f2 100644 --- a/.github/ISSUE_TEMPLATE/---feature-request.md +++ b/.github/ISSUE_TEMPLATE/---feature-request.md @@ -2,19 +2,28 @@ name: "\U0001F680 Feature request" about: Suggest an idea for this project title: '' -labels: 'Community: Request :hand:, Triage :white_flag:' +labels: 'Community: Request :hand:' assignees: '' --- -> :hand: Many people requests features. Tell us why yours is important to the + + + + + +### Request -## Request + **What feature or change would you like to see made?** diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 4a5623153a3..9b9fa9d7aff 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,14 +1,91 @@ -### PR Checklist + + + + -- [ ] Brief description of changes -- [ ] Links to any relevant issues -- [ ] Required status checks are passing -- [ ] User cases if changes impact the user's experience -- [ ] `@mention` a maintainer to request a review + + +### Context + + + +### Changes & Results + + + +### Testing + + + +### Checklist + +#### PR +https://semantic-release.gitbook.io/semantic-release/#how-does-it-work + +Examples: +Please note the letter casing in the provided examples (upper or lower). + +- feat(MeasurementService): add ... +- fix(Toolbar): fix ... +- docs(Readme): update ... +- style(Whitespace): fix ... +- refactor(ExtensionManager): ... +- test(HangingProtocol): Add test ... +- chore(git): update ... +- perf(VolumeLoader): ... + +You don't need to have each commit within the Pull Request follow the rule, +but the PR title must comply with it, as it will be used as the commit message +after the commits are squashed. +--> + +- [] My Pull Request title is descriptive, accurate and follows the + semantic-release format and guidelines. + +#### Code + +- [] My code has been well-documented (function documentation, inline comments, + etc.) + +#### Public Documentation Updates + + + +- [] The documentation page has been updated as necessary for any public API + additions or removals. + +#### Tested Environment + +- [] "OS: +- [] "Node version: +- [] "Browser: + [blog]: https://circleci.com/blog/triggering-trusted-ci-jobs-on-untrusted-forks/ diff --git a/.github/stale.yml b/.github/stale.yml index 0d11ecb9117..4d6cdd4e356 100644 --- a/.github/stale.yml +++ b/.github/stale.yml @@ -4,23 +4,17 @@ # Number of days of inactivity before an issue becomes stale daysUntilStale: 180 # Number of days of inactivity before a stale issue is closed -daysUntilClose: 9000 +daysUntilClose: 60 # Issues with these labels will never be considered stale exemptLabels: - - 'Story :raised_hands:' - 'Bug: Verified :bug:' - - 'Task: CI/Tooling :robot:' - - 'Task: Docs 📖' - - 'Task: Docs :book:' - - 'Task: Refactor :hammer_and_wrench:' - - 'Task: Tests :microscope:' - 'PR: Awaiting Review 👀' - - 'Triage :white_flag:' - - 'Extension: Discussion' - 'Announcement 🎉' - 'IDC:priority' - 'IDC:candidate' - 'IDC:collaboration' + - 'Community: Request :hand:' + - 'Community: Report :bug:' # Label to use when marking an issue as stale staleLabel: 'Stale :baguette_bread:' # Comment to post when marking an issue as stale. Set to `false` to disable From 70b71bdc7651d0c79791ee850d7d383fba7100f8 Mon Sep 17 00:00:00 2001 From: Geet Chhetri Date: Wed, 11 Jan 2023 14:51:13 -0800 Subject: [PATCH 50/54] remove redundant code to update studydatamanager --- .../viewer/src/connectedComponents/ViewerRetrieveStudyData.js | 4 ---- 1 file changed, 4 deletions(-) diff --git a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js index 2925b5a5dad..a3a25a562e2 100644 --- a/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js +++ b/platform/viewer/src/connectedComponents/ViewerRetrieveStudyData.js @@ -179,10 +179,6 @@ const _updateStudyMetadataManager = (study, studyMetadata) => { if (!studyMetadataManager.get(StudyInstanceUID)) { studyMetadataManager.add(studyMetadata); } - - if (study.derivedDisplaySets) { - studyMetadata._addDerivedDisplaySets(study.derivedDisplaySets); - } }; const _thinStudyData = study => { From 24bbf2b19007ef98d35bacc035db2fafcea88751 Mon Sep 17 00:00:00 2001 From: Gitanjali <112136540+GitanjaliChhetri@users.noreply.github.com> Date: Tue, 17 Jan 2023 09:50:25 -0800 Subject: [PATCH 51/54] Re IDC #3077: Seg series thumbnail selection (#3078) * fix: #3077 update seg tolerance popup and update seg thumbnail warning * jump to first segment item image * Shows warning message only once on onChange --- .../dicom-segmentation/src/commandsModule.js | 100 ++++++++++++++++++ .../SegmentationSettings.js | 55 ++++++---- extensions/dicom-segmentation/src/index.js | 13 +++ .../ConnectedStudyBrowser.js | 2 + .../viewer/src/connectedComponents/Viewer.js | 10 +- 5 files changed, 156 insertions(+), 24 deletions(-) create mode 100644 extensions/dicom-segmentation/src/commandsModule.js diff --git a/extensions/dicom-segmentation/src/commandsModule.js b/extensions/dicom-segmentation/src/commandsModule.js new file mode 100644 index 00000000000..02f5f07040a --- /dev/null +++ b/extensions/dicom-segmentation/src/commandsModule.js @@ -0,0 +1,100 @@ +import csTools from 'cornerstone-tools'; +import cs from 'cornerstone-core'; +import OHIF from '@ohif/core'; + +import DICOMSegTempCrosshairsTool from './tools/DICOMSegTempCrosshairsTool'; +import refreshViewports from './utils/refreshViewports'; + +const { studyMetadataManager } = OHIF.utils; + +const commandsModule = ({ commandsManager }) => { + const actions = { + jumpToFirstSegment: ({ viewports }) => { + try { + const { activeViewportIndex, viewportSpecificData } = viewports; + const viewport = viewportSpecificData[activeViewportIndex]; + const { StudyInstanceUID, displaySetInstanceUID } = viewport; + const studyMetadata = studyMetadataManager.get(StudyInstanceUID); + const firstImageId = studyMetadata.getFirstImageId( + displaySetInstanceUID + ); + + const module = csTools.getModule('segmentation'); + const brushStackState = module.state.series[firstImageId]; + const { labelmaps3D, activeLabelmapIndex } = brushStackState; + const { labelmaps2D } = labelmaps3D[activeLabelmapIndex]; + + const firstLabelMap2D = labelmaps2D.find(value => !!value); + const firstSegment = firstLabelMap2D.segmentsOnLabelmap[0]; + const segmentNumber = firstSegment; + + const validIndexList = []; + labelmaps2D.forEach((labelMap2D, index) => { + if (labelMap2D.segmentsOnLabelmap.includes(segmentNumber)) { + validIndexList.push(index); + } + }); + + const avg = array => array.reduce((a, b) => a + b) / array.length; + const average = avg(validIndexList); + const closest = validIndexList.reduce((prev, curr) => { + return Math.abs(curr - average) < Math.abs(prev - average) + ? curr + : prev; + }); + + const enabledElements = cs.getEnabledElements(); + const element = enabledElements[activeViewportIndex].element; + + const toolState = csTools.getToolState(element, 'stack'); + if (!toolState) return; + + const imageIds = toolState.data[0].imageIds; + const imageId = imageIds[closest]; + const frameIndex = imageIds.indexOf(imageId); + const SOPInstanceUID = cs.metaData.get('SOPInstanceUID', imageId); + + cs.getEnabledElements().forEach(enabledElement => { + cs.updateImage(enabledElement.element); + }); + + DICOMSegTempCrosshairsTool.addCrosshair( + element, + imageId, + segmentNumber + ); + + cs.getEnabledElements().forEach(enabledElement => { + cs.updateImage(enabledElement.element); + }); + + const refreshViewports = false; + + commandsManager.runCommand('jumpToImage', { + StudyInstanceUID, + SOPInstanceUID, + frameIndex, + activeViewportIndex, + refreshViewports, + }); + } catch (error) { + console.log('Error in moving to the first segment slice'); + } + }, + }; + + const definitions = { + jumpToFirstSegment: { + commandFn: actions.jumpToFirstSegment, + storeContexts: ['viewports'], + options: {}, + }, + }; + + return { + definitions, + defaultContext: 'VIEWER', + }; +}; + +export default commandsModule; diff --git a/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js b/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js index 6da70951be3..00fe943af6d 100644 --- a/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js +++ b/extensions/dicom-segmentation/src/components/SegmentationSettings/SegmentationSettings.js @@ -29,6 +29,32 @@ const SegmentationSettings = ({ configuration, onBack, onChange, servicesManager setState(state => ({ ...state, [field]: value })); }; + const once = fn => (...args) => { + if (!fn) return; + fn(...args); + fn = null; + }; + + const segTolValue = document.getElementById('segToleranceValue'); + if (segTolValue) { + segTolValue.onchange = once(function() { + const { UINotificationService, LoggerService } = servicesManager.services; + + const error = new Error( + 'Segmentation loader tolerance changed.\ + This operation can potentially generate errors in the Segmentation parsing.' + ); + + LoggerService.error({ error, message: error.message }); + UINotificationService.show({ + title: 'Segmentation panel', + message: error.message, + type: 'warning', + autoClose: true, + }); + }); +} + const toFloat = value => parseFloat(value / 100).toFixed(2); return ( @@ -138,32 +164,23 @@ const SegmentationSettings = ({ configuration, onBack, onChange, servicesManager diff --git a/extensions/dicom-segmentation/src/index.js b/extensions/dicom-segmentation/src/index.js index 292f19ccf00..dc353c1104e 100644 --- a/extensions/dicom-segmentation/src/index.js +++ b/extensions/dicom-segmentation/src/index.js @@ -6,6 +6,7 @@ import toolbarModule from './toolbarModule.js'; import getSopClassHandlerModule from './getOHIFDicomSegSopClassHandler.js'; import SegmentationPanel from './components/SegmentationPanel/SegmentationPanel.js'; import { version } from '../package.json'; +import commandsModule from './commandsModule.js'; const { studyMetadataManager } = OHIF.utils; export default { @@ -121,6 +122,15 @@ export default { }); }; + const onSegmentationsCompletelyLoaded = () => { + commandsManager.runCommand('jumpToFirstSegment'); + }; + + document.addEventListener( + 'segseriesselected', + onSegmentationsCompletelyLoaded + ); + document.addEventListener( 'extensiondicomsegmentationsegloaded', onSegmentationsLoaded @@ -182,5 +192,8 @@ export default { defaultContext: ['VIEWER'], }; }, + getCommandsModule({ commandsManager, servicesManager }) { + return commandsModule({ commandsManager, servicesManager }); + }, getSopClassHandlerModule, }; diff --git a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js index 5e8909fbfdc..b1570153ef6 100644 --- a/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js +++ b/platform/viewer/src/connectedComponents/ConnectedStudyBrowser.js @@ -54,7 +54,9 @@ const mapDispatchToProps = (dispatch, ownProps) => { detail: { activatedLabelmapIndex: activatedLabelmapIndex }, } ); + const segThumbnailSelected = new CustomEvent('segseriesselected'); document.dispatchEvent(selectionFired); + document.dispatchEvent(segThumbnailSelected); }); } else if (Modality !== 'SR') { displaySet = displaySet.getSourceDisplaySet(ownProps.studyMetadata); diff --git a/platform/viewer/src/connectedComponents/Viewer.js b/platform/viewer/src/connectedComponents/Viewer.js index 9f87b710679..b72dafe4fd7 100644 --- a/platform/viewer/src/connectedComponents/Viewer.js +++ b/platform/viewer/src/connectedComponents/Viewer.js @@ -505,14 +505,14 @@ const _checkForDerivedDisplaySets = async function(displaySet, study) { * @returns {[string]} an array of strings containing the warnings */ const _checkForSeriesInconsistencesWarnings = async function(displaySet) { - if (displaySet.inconsistencyWarnings) { - // warnings already checked and cached in displaySet - return displaySet.inconsistencyWarnings; - } - const inconsistencyWarnings = []; if (displaySet.Modality !== 'SEG') { + // warnings already checked and cached in displaySet + if (displaySet.inconsistencyWarnings) { + return displaySet.inconsistencyWarnings; + } + if ( displaySet.reconstructionIssues && displaySet.reconstructionIssues.length !== 0 From 30515b8ab505d646746c1af99b253f7ba49f3f25 Mon Sep 17 00:00:00 2001 From: ohif-bot Date: Tue, 17 Jan 2023 17:52:04 +0000 Subject: [PATCH 52/54] chore(release): publish [skip ci] - @ohif/extension-dicom-segmentation@0.7.21 - @ohif/viewer@4.12.50 --- extensions/dicom-segmentation/CHANGELOG.md | 8 ++++++++ extensions/dicom-segmentation/package.json | 2 +- platform/viewer/CHANGELOG.md | 8 ++++++++ platform/viewer/package.json | 4 ++-- 4 files changed, 19 insertions(+), 3 deletions(-) diff --git a/extensions/dicom-segmentation/CHANGELOG.md b/extensions/dicom-segmentation/CHANGELOG.md index 88579c0a275..f1c4ff91d7b 100644 --- a/extensions/dicom-segmentation/CHANGELOG.md +++ b/extensions/dicom-segmentation/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [0.7.21](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.20...@ohif/extension-dicom-segmentation@0.7.21) (2023-01-17) + +**Note:** Version bump only for package @ohif/extension-dicom-segmentation + + + + + ## [0.7.20](https://github.com/OHIF/Viewers/compare/@ohif/extension-dicom-segmentation@0.7.19...@ohif/extension-dicom-segmentation@0.7.20) (2023-01-10) **Note:** Version bump only for package @ohif/extension-dicom-segmentation diff --git a/extensions/dicom-segmentation/package.json b/extensions/dicom-segmentation/package.json index dbb34650652..dabb6d4e3c3 100644 --- a/extensions/dicom-segmentation/package.json +++ b/extensions/dicom-segmentation/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/extension-dicom-segmentation", - "version": "0.7.20", + "version": "0.7.21", "description": "OHIF extension for viewing segmentations in the 2D MPR view", "author": "OHIF", "license": "MIT", diff --git a/platform/viewer/CHANGELOG.md b/platform/viewer/CHANGELOG.md index fff421a57b0..3ff27bf2eaa 100644 --- a/platform/viewer/CHANGELOG.md +++ b/platform/viewer/CHANGELOG.md @@ -3,6 +3,14 @@ All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. +## [4.12.50](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.49...@ohif/viewer@4.12.50) (2023-01-17) + +**Note:** Version bump only for package @ohif/viewer + + + + + ## [4.12.49](https://github.com/OHIF/Viewers/compare/@ohif/viewer@4.12.48...@ohif/viewer@4.12.49) (2023-01-10) **Note:** Version bump only for package @ohif/viewer diff --git a/platform/viewer/package.json b/platform/viewer/package.json index 772953d9c66..800f2c33251 100644 --- a/platform/viewer/package.json +++ b/platform/viewer/package.json @@ -1,6 +1,6 @@ { "name": "@ohif/viewer", - "version": "4.12.49", + "version": "4.12.50", "description": "OHIF Viewer", "author": "OHIF Contributors", "license": "MIT", @@ -54,7 +54,7 @@ "@ohif/extension-dicom-microscopy": "^0.52.0", "@ohif/extension-dicom-pdf": "^1.1.2", "@ohif/extension-dicom-rt": "^0.7.14", - "@ohif/extension-dicom-segmentation": "^0.7.20", + "@ohif/extension-dicom-segmentation": "^0.7.21", "@ohif/extension-lesion-tracker": "^0.2.2", "@ohif/extension-vtk": "^1.12.41", "@ohif/i18n": "^0.53.0", From 43715e3d5bfb395ca8e2b21d05ae300aa0495b73 Mon Sep 17 00:00:00 2001 From: Geet Chhetri Date: Mon, 30 Jan 2023 00:24:00 -0800 Subject: [PATCH 53/54] feat: Update Measurement Panel --- .../OHIFCornerstoneViewportOverlay.css | 34 +++- .../OHIFCornerstoneViewportOverlay.js | 85 +++++---- .../SegmentationPanel/SegmentationPanel.js | 12 +- platform/core/src/DICOMSR/SCOORD3D/enums.js | 4 +- .../src/DICOMSR/SCOORD3D/parseSCOORD3D.js | 51 ++--- .../DICOMSR/SCOORD3D/utils/addMeasurement.js | 2 + .../DICOMSR/SCOORD3D/utils/getMeasurements.js | 19 +- ...ocessNonGeometricallyDefinedMeasurement.js | 27 ++- .../measurementTable/MeasurementItem.css | 26 +++ .../measurementTable/MeasurementItem.js | 27 +++ .../measurementTable/MeasurementSelect.js | 68 +++++++ .../measurementTable/MeasurementTable.js | 179 ++++++++++++------ .../measurementTable/MeasurementTable.styl | 16 +- .../measurementTable/MeasurementTableItem.js | 11 ++ .../src/components/tableList/TableList.styl | 15 +- .../ConnectedMeasurementTable.js | 28 ++- .../appExtensions/MeasurementsPanel/index.js | 61 ++++++ .../ConnectedStudyBrowser.js | 18 ++ 18 files changed, 532 insertions(+), 151 deletions(-) create mode 100644 platform/ui/src/components/measurementTable/MeasurementItem.css create mode 100644 platform/ui/src/components/measurementTable/MeasurementItem.js create mode 100644 platform/ui/src/components/measurementTable/MeasurementSelect.js diff --git a/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.css b/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.css index dca6f30d642..cfd6e967b3c 100644 --- a/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.css +++ b/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.css @@ -34,7 +34,7 @@ left: 20px; } .OHIFCornerstoneViewportOverlay .bottom-left3 { - bottom: 110px; + bottom: 160px; left: -20px; } .OHIFCornerstoneViewportOverlay .bottom-right { @@ -71,3 +71,35 @@ width: 18px; height: 18px; } + +#SRlabelcontainer { + position: relative; +} + +#parent-button { + position: relative; +} + +#parent-button.haschild::before { + content: ""; + position: absolute; + left: -15px; + top: 50%; + transform: translateY(-50%); + width: 0; + height: 0; + border-left: 7px solid transparent; + border-right: 7px solid transparent; + border-top: 9px solid white; +} + +#child-button { + position: absolute; + width: 100%; + max-height: 30; + overflow: hidden; + overflow-wrap: break-word; + white-space: normal; + left: 20px; + transition: height 0.3s; +} diff --git a/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.js b/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.js index d344efec35c..b0543cfda77 100644 --- a/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.js +++ b/extensions/cornerstone/src/components/OHIFCornerstoneViewportOverlay.js @@ -147,49 +147,66 @@ class OHIFCornerstoneViewportOverlay extends PureComponent { const SRLabelsOn = SRLabels && SRLabels.length !== 0 ? true : false; /**/ - const getSRLabelsContent = SRLabels => { - if (Array.isArray(SRLabels)) { - const listedSRLabels = SRLabels.map((SRLabel, index) => { - const color = SRLabel.labels.color; - return ( - SRLabel.labels.visible && ( - 0 ? true : false; + } + if (childButton) { + parentButton.classList.add('haschild'); + } + const color = singleLabel.color; + + const handleOnClick = () => { + if (childButton) { + if (childButton.style.height == '0px') { + childButton.style.height = '50px'; + } else { + childButton.style.height = '0px'; + } + } + }; + + return ( + singleLabel.visible && ( +
+ + {childLabels ? ( +
- - ) - ); - }); + ) : null} +
+ ) + ); + } + + if (Array.isArray(SRLabels)) { + const listedSRLabels = SRLabels.map(SRLabel => SRLabel.labels) + .flatMap(labels => labels) + .map((label, index) => srLabelMapper(label, index)); return
    {listedSRLabels}
; } else { diff --git a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js index 6d2d95d2d56..80b8da540cd 100644 --- a/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js +++ b/extensions/dicom-segmentation/src/components/SegmentationPanel/SegmentationPanel.js @@ -327,14 +327,18 @@ const SegmentationPanel = ({ labelmapIndex, originLabelMapIndex, hasOverlapping, - SeriesDate, - SeriesTime, + metadata, } = displaySet; /* Map to display representation */ - const dateStr = `${SeriesDate}:${SeriesTime}`.split('.')[0]; + const dateStr = `${metadata.ContentDate}:${metadata.ContentTime}`.split( + '.' + )[0]; const date = moment(dateStr, 'YYYYMMDD:HHmmss'); - const displayDate = date.format('ddd, MMM Do YYYY, h:mm:ss a'); + let displayDate = date.format('ddd, MMM Do YYYY, h:mm:ss a'); + if (displayDate === 'Invalid date') { + displayDate = ' '; + } const displayDescription = displaySet.SeriesDescription; return { diff --git a/platform/core/src/DICOMSR/SCOORD3D/enums.js b/platform/core/src/DICOMSR/SCOORD3D/enums.js index ac987141852..ed946cf68b0 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/enums.js +++ b/platform/core/src/DICOMSR/SCOORD3D/enums.js @@ -7,7 +7,8 @@ export const CodeNameCodeSequenceValues = { TrackingUniqueIdentifier: '112040', TrackingIdentifier: '112039', Finding: '121071', - FindingSite: 'G-C0E3', // SRT + FindingSite: '363698007', + TopographicalModifier: '106233006', CornerstoneFreeText: 'CORNERSTONEFREETEXT', // CST4 Score: '246262008', }; @@ -20,6 +21,7 @@ export const RELATIONSHIP_TYPE = { export const CodingSchemeDesignators = { SRT: 'SRT', cornerstoneTools4: 'CST4', + SCT: 'SCT', }; export default { diff --git a/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js b/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js index 66d29293769..e34f03f805b 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js +++ b/platform/core/src/DICOMSR/SCOORD3D/parseSCOORD3D.js @@ -18,7 +18,7 @@ const parseSCOORD3D = ({ servicesManager, displaySets }) => { imageDisplaySet.SRLabels = []; }); - srDisplaySets.forEach(srDisplaySet => { + srDisplaySets.forEach((srDisplaySet, index) => { const firstInstance = srDisplaySet.metadata; if (!firstInstance) { return; @@ -26,7 +26,11 @@ const parseSCOORD3D = ({ servicesManager, displaySets }) => { const { ContentSequence } = firstInstance; - srDisplaySet.measurements = getMeasurements(ContentSequence); + srDisplaySet.measurements = getMeasurements( + ContentSequence, + srDisplaySet.SeriesInstanceUID, + index + ); const mappings = MeasurementService.getSourceMappings( 'CornerstoneTools', '4' @@ -130,7 +134,21 @@ const checkIfCanAddMeasurementsToDisplaySet = ( const SOPInstanceUIDs = images.map(i => i.SOPInstanceUID); const colors = new Map(); measurements.forEach(measurement => { - const { coords } = measurement; + const { coords, labels } = measurement; + labels.forEach((label, labelIndex) => { + const key = + measurement.labels[labelIndex].label + + measurement.labels[labelIndex].value; + let color = colors.get(key); + if (!color) { + color = 'hsla(' + Math.floor(Math.random() * 360) + ', 70%, 30%, 1)'; + colors.set(key, color); + } + measurement.labels[labelIndex].color = color; + measurement.isSRText = true; + }); + let areLabelsAdded = false; + coords.forEach((coord, index) => { if (coord.ReferencedSOPSequence !== undefined) { const imageIndex = SOPInstanceUIDs.findIndex( @@ -147,26 +165,15 @@ const checkIfCanAddMeasurementsToDisplaySet = ( const imageMetadata = images[imageIndex].getData().metadata; if (coord.GraphicType === 'TEXT') { - const key = - measurement.labels[index].label + measurement.labels[index].value; - let color = colors.get(key); - if (!color) { - // random dark color - color = - 'hsla(' + Math.floor(Math.random() * 360) + ', 70%, 30%, 1)'; - colors.set(key, color); + if (!areLabelsAdded) { + imageDisplaySet.SRLabels.push({ + ReferencedSOPInstanceUID: + coord.ReferencedSOPSequence.ReferencedSOPInstanceUID, + SeriesInstanceUID: srDisplaySet.SeriesInstanceUID, + labels: measurement.labels, + }); + areLabelsAdded = true; } - - measurement.labels[index].color = color; - measurement.isSRText = true; - measurement.labels[index].visible = true; - - imageDisplaySet.SRLabels.push({ - ReferencedSOPInstanceUID: - coord.ReferencedSOPSequence.ReferencedSOPInstanceUID, - labels: measurement.labels[index], - }); - if (index === 0) { addMeasurement( measurement, diff --git a/platform/core/src/DICOMSR/SCOORD3D/utils/addMeasurement.js b/platform/core/src/DICOMSR/SCOORD3D/utils/addMeasurement.js index c8a69ff058d..e25d55a9eb5 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/utils/addMeasurement.js +++ b/platform/core/src/DICOMSR/SCOORD3D/utils/addMeasurement.js @@ -30,6 +30,8 @@ export default function addMeasurement( renderableData: {}, labels: measurement.labels, isSRText: measurement.isSRText, + isVisible: measurement.isVisible, + srSeriesInstanceUID: measurement.seriesInstanceUID, }; measurement.coords.forEach(coord => { diff --git a/platform/core/src/DICOMSR/SCOORD3D/utils/getMeasurements.js b/platform/core/src/DICOMSR/SCOORD3D/utils/getMeasurements.js index a75b3ed45f1..9b747441069 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/utils/getMeasurements.js +++ b/platform/core/src/DICOMSR/SCOORD3D/utils/getMeasurements.js @@ -1,9 +1,12 @@ import { CodeNameCodeSequenceValues } from '../enums'; import getSequenceAsArray from './getSequenceAsArray'; -import getMergedContentSequencesByTrackingUniqueIdentifiers from './getMergedContentSequencesByTrackingUniqueIdentifiers'; import processMeasurement from './processMeasurement'; -const getMeasurements = ImagingMeasurementReportContentSequence => { +const getMeasurements = ( + ImagingMeasurementReportContentSequence, + SRSeriesInstanceUID, + index +) => { const ImagingMeasurements = ImagingMeasurementReportContentSequence.find( item => item.ConceptNameCodeSequence.CodeValue === @@ -18,16 +21,20 @@ const getMeasurements = ImagingMeasurementReportContentSequence => { CodeNameCodeSequenceValues.MeasurementGroup ); - /* const mergedContentSequencesByTrackingUniqueIdentifiers = getMergedContentSequencesByTrackingUniqueIdentifiers( - MeasurementGroups - );*/ - let measurements = []; MeasurementGroups.forEach(MeasurementGroup => { const contentSequence = MeasurementGroup.ContentSequence; const measurement = processMeasurement(contentSequence); if (measurement) { + measurement.seriesInstanceUID = SRSeriesInstanceUID; + if (index === 0) { + measurement.isVisible = true; + measurement.labels.forEach(label => (label.visible = true)); + } else { + measurement.isVisible = false; + measurement.labels.forEach(label => (label.visible = false)); + } measurements.push(measurement); } }); diff --git a/platform/core/src/DICOMSR/SCOORD3D/utils/processNonGeometricallyDefinedMeasurement.js b/platform/core/src/DICOMSR/SCOORD3D/utils/processNonGeometricallyDefinedMeasurement.js index f1f0bc09dcc..28fcf64c819 100644 --- a/platform/core/src/DICOMSR/SCOORD3D/utils/processNonGeometricallyDefinedMeasurement.js +++ b/platform/core/src/DICOMSR/SCOORD3D/utils/processNonGeometricallyDefinedMeasurement.js @@ -37,7 +37,7 @@ const processNonGeometricallyDefinedMeasurement = contentSequence => { const FindingSites = contentSequence.filter( item => item.ConceptNameCodeSequence.CodingSchemeDesignator === - CodingSchemeDesignators.SRT && + CodingSchemeDesignators.SCT && item.ConceptNameCodeSequence.CodeValue === CodeNameCodeSequenceValues.FindingSite ); @@ -62,8 +62,6 @@ const processNonGeometricallyDefinedMeasurement = contentSequence => { value: Finding.ConceptCodeSequence.CodeMeaning, }); } - - // TODO -> Eventually hopefully support SNOMED or some proper code library, just free text for now. if (FindingSites.length) { const cornerstoneFreeTextFindingSite = FindingSites.find( FindingSite => @@ -122,11 +120,14 @@ const processNonGeometricallyDefinedMeasurement = contentSequence => { if (NUMContentItems.length === 0 && IMAGEContentItem) { CODEContentItems.forEach(item => { - const { ConceptCodeSequence, ConceptNameCodeSequence } = item; + const { + ConceptCodeSequence, + ConceptNameCodeSequence, + ContentSequence, + } = item; if (!ConceptCodeSequence || !ConceptNameCodeSequence) { console.warn(`Graphic missing, skipping annotation.`); - return; } @@ -147,7 +148,23 @@ const processNonGeometricallyDefinedMeasurement = contentSequence => { ConceptNameCodeSequence.CodingSchemeDesignator, value: ConceptCodeSequence.CodeMeaning, valueCodingSchemeDesignator: ConceptCodeSequence.CodingSchemeDesignator, + children: [], }); + + if (ContentSequence) { + ContentSequence.forEach(childItem => { + const { ConceptCodeSequence, ConceptNameCodeSequence } = childItem; + const lastIndex = measurement.labels.length - 1; + measurement.labels[lastIndex].children.push({ + label: ConceptNameCodeSequence.CodeMeaning, + labelCodingSchemeDesignator: + ConceptNameCodeSequence.CodingSchemeDesignator, + value: ConceptCodeSequence.CodeMeaning, + valueCodingSchemeDesignator: + ConceptCodeSequence.CodingSchemeDesignator, + }); + }); + } }); } diff --git a/platform/ui/src/components/measurementTable/MeasurementItem.css b/platform/ui/src/components/measurementTable/MeasurementItem.css new file mode 100644 index 00000000000..0e6ca523d45 --- /dev/null +++ b/platform/ui/src/components/measurementTable/MeasurementItem.css @@ -0,0 +1,26 @@ +.measurement-item { + display: flex; + justify-content: start; + margin: 0; +} + +.measurement-item .measurement-meta { + display: flex; + flex-direction: column; + flex-grow: 1; + overflow: hidden; +} + +.measurement-item .measurement-meta-title { + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + color: white; + font-size: 14px; + max-width: calc(100% - 30px); +} + +.measurement-item .measurement-meta-description { + font-size: 12px; + color: var(--text-secondary-color); +} diff --git a/platform/ui/src/components/measurementTable/MeasurementItem.js b/platform/ui/src/components/measurementTable/MeasurementItem.js new file mode 100644 index 00000000000..b7b503ed9bb --- /dev/null +++ b/platform/ui/src/components/measurementTable/MeasurementItem.js @@ -0,0 +1,27 @@ +import React from 'react'; +import PropTypes from 'prop-types'; + +import './MeasurementItem.css'; + +const MeasurementItem = ({ onClick, title, description }) => { + return ( +
  • +
    +
    {title}
    +
    {description}
    +
    +
  • + ); +}; + +MeasurementItem.propTypes = { + onClick: PropTypes.func.isRequired, + title: PropTypes.string.isRequired, + description: PropTypes.string, +}; + +MeasurementItem.defaultProps = { + description: '', +}; + +export default MeasurementItem; diff --git a/platform/ui/src/components/measurementTable/MeasurementSelect.js b/platform/ui/src/components/measurementTable/MeasurementSelect.js new file mode 100644 index 00000000000..6938b377120 --- /dev/null +++ b/platform/ui/src/components/measurementTable/MeasurementSelect.js @@ -0,0 +1,68 @@ +import React from 'react'; +import Select from 'react-select'; +import PropTypes from 'prop-types'; + +const MeasurementSelect = ({ value, formatOptionLabel, options, onChange }) => ( +