@ohif/app 3.9.0-beta.46 → 3.9.0-beta.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/dist/031089e563a18ada8441.wasm +0 -0
  2. package/dist/{445.bundle.38c6d2af64e41cd7c614.js → 10.bundle.c626810bd199ab63f3a2.js} +3 -3
  3. package/dist/{501.bundle.2f703ca4598a3be0d748.js → 129.bundle.3102eccbd5c78524c3dd.js} +6036 -11592
  4. package/dist/{140.bundle.57e0e190f83d686c7d84.js → 153.bundle.c5c3111fa78764c5960d.js} +7 -4
  5. package/dist/{139.bundle.09e5af0a9ae8a285af77.js → 169.bundle.eeb9614e7b06f896c70f.js} +65 -535
  6. package/dist/{139.css → 169.css} +0 -1
  7. package/dist/{164.bundle.2b23bfbcb23497d7c87a.js → 196.bundle.cf8c2311aafb5312bbf7.js} +15562 -8539
  8. package/dist/{342.bundle.fcb2038060a062129d34.js → 202.bundle.bb0e8196739bb896dc9e.js} +238 -276
  9. package/dist/{129.bundle.ef2824b9d3145e620069.js → 210.bundle.8d89ad148ee420ac573f.js} +46 -46
  10. package/dist/{363.bundle.b09eeacf1db06eac578f.js → 217.bundle.2e3eceda916aa4ec4039.js} +2099 -195
  11. package/dist/{363.css → 217.css} +1 -0
  12. package/dist/{14.bundle.afc14c0e2e6bdb9c03fb.js → 246.bundle.1069b026e904b03943f0.js} +11 -11
  13. package/dist/250.bundle.4743b359797751102600.js +663 -0
  14. package/dist/{851.bundle.1d974a1affa602a3db35.js → 281.bundle.34009e8337141e4b8f26.js} +211 -243
  15. package/dist/{727.bundle.7b7f3962207601643615.js → 286.bundle.985c5ebbb2158c7e59ab.js} +4 -4
  16. package/dist/29.bundle.976319462f33868497c2.js +12347 -0
  17. package/dist/{675.bundle.c9720f40fd7c7e9b7e54.js → 315.bundle.92d7aefc4dc9cfd951bd.js} +18 -18
  18. package/dist/{218.bundle.0d88a96c091e70b87ada.js → 353.bundle.ed24422ba6b77b3a1e6d.js} +8 -8
  19. package/dist/{799.bundle.b0278dd5010f2cbdbac5.js → 360.bundle.8500a439cff45926abf1.js} +62 -62
  20. package/dist/{555.bundle.d731e79ced564bce2167.js → 372.bundle.c9a475b03f1490357165.js} +50 -50
  21. package/dist/{211.bundle.c99f8ae0fb317d76eb84.js → 376.bundle.9ce6f93540d667c57ef7.js} +8 -8
  22. package/dist/{612.bundle.297a033523539e0b47f9.js → 412.bundle.836f106f6e2896dc42a5.js} +4 -4
  23. package/dist/{931.bundle.058f8de4606f27b31f4f.js → 417.bundle.abf8bcee0f246002acb9.js} +25 -25
  24. package/dist/{370.bundle.bd9884c274c26a54dfae.js → 428.bundle.744fc5865b2d747de88a.js} +829 -1511
  25. package/dist/{483.bundle.0f1848f6a2cf34829fef.js → 497.bundle.ee102d6243f984113f08.js} +141 -141
  26. package/dist/{323.bundle.955cc8f5eb5c01295118.js → 498.bundle.bb47c493dd02451f77ef.js} +17 -17
  27. package/dist/{552.bundle.38207568073bcd238dda.js → 502.bundle.643d0af06b6c354537f5.js} +8 -9
  28. package/dist/{835.bundle.5d1951da8bbc6afdf3e0.js → 530.bundle.87f8b13ff55bf7b2a6d1.js} +28 -28
  29. package/dist/{121.bundle.8646909d0f76791d8aee.js → 552.bundle.ed2be5e57376b8c6cc68.js} +733 -62
  30. package/dist/{265.bundle.61b0e1ce9d444704a976.js → 571.bundle.a80609c9815339516d77.js} +24 -24
  31. package/dist/{853.bundle.beae65b8de389f8ee983.js → 591.bundle.c93fbabf5840b8f0ded3.js} +8 -8
  32. package/dist/604.bundle.83f50929b208c60e48da.js +1950 -0
  33. package/dist/610.min.worker.js +1 -1
  34. package/dist/610.min.worker.js.map +1 -1
  35. package/dist/{792.bundle.485ad2f98823a4b3feb1.js → 658.bundle.219ed199728759098008.js} +17 -17
  36. package/dist/{989.bundle.eec61b62860e730cf23d.js → 791.bundle.eb41e31a5bf389639612.js} +11 -11
  37. package/dist/{722.bundle.1242e0348afc63ca4f5e.js → 793.bundle.c92f52ddff0e3bf506e6.js} +13 -13
  38. package/dist/{914.bundle.e15be8089bf422ed7b51.js → 818.bundle.cda4e369fdee5459a544.js} +1239 -627
  39. package/dist/{726.bundle.90d63d40a19b058034ee.js → 831.bundle.9e1a3495947e5bb49756.js} +512 -512
  40. package/dist/{382.bundle.2788481abeaaf6afbca9.js → 842.bundle.76740a57f690e753802e.js} +11 -11
  41. package/dist/{806.bundle.3b50260239f93b7787b6.js → 888.bundle.36415d4c9c396df1b83d.js} +14 -14
  42. package/dist/{702.bundle.963481fbf871984b646f.js → 909.bundle.1fbb8bb4c41d0bb2994d.js} +119 -381
  43. package/dist/{109.bundle.b4fee2a22b622839baf5.js → 931.bundle.f6fa2a436ace89ebf60f.js} +5036 -4642
  44. package/dist/{141.bundle.556b4c1e4cab770417ac.js → 937.bundle.cc709c922731f9496810.js} +86 -478
  45. package/dist/{444.bundle.7adebacc6760f45bf58b.js → 944.bundle.eb9723ea5f0a42cf8aa0.js} +9 -10
  46. package/dist/945.min.worker.js +1 -1
  47. package/dist/945.min.worker.js.map +1 -1
  48. package/dist/{194.bundle.31de18ad9ea9b05f21ea.js → 962.bundle.e63d19fabce8b7d85974.js} +33 -37
  49. package/dist/{920.bundle.d7c555d415240c7d3829.js → 978.bundle.7c0b275e22e6060fc893.js} +6 -6
  50. package/dist/{236.bundle.34db90a140e37d34fd71.js → 993.bundle.aa31ebda5a5f62c44de5.js} +2363 -2351
  51. package/dist/{717.bundle.96160aa973fbb4cb3f1e.js → 994.bundle.23f3108d0dfc114db43f.js} +90 -164
  52. package/dist/app-config.js +2 -3
  53. package/dist/app.bundle.css +3 -3
  54. package/dist/{app.bundle.3551ec3a588fe3841a9d.js → app.bundle.ee7962276756acbd637e.js} +52547 -36094
  55. package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
  56. package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
  57. package/dist/dicom-microscopy-viewer/5004fdc02f329ce53b69.wasm +0 -0
  58. package/dist/dicom-microscopy-viewer/c22b37c3488e1d6c3aa4.wasm +0 -0
  59. package/dist/dicom-microscopy-viewer/dicomMicroscopyViewer.min.js +3 -0
  60. package/dist/{dicomMicroscopyViewer.min.js.LICENSE.txt → dicom-microscopy-viewer/dicomMicroscopyViewer.min.js.LICENSE.txt} +11 -0
  61. package/dist/dicom-microscopy-viewer/index.worker.min.worker.js +2 -0
  62. package/dist/dicom-microscopy-viewer/index.worker.min.worker.js.map +1 -0
  63. package/dist/{histogram-worker.bundle.6b31e5ed4c4a7a6998f2.js → histogram-worker.bundle.e7e9fea2c3236b0e747a.js} +12 -16
  64. package/dist/index.html +1 -1
  65. package/dist/index.worker.5a5a581362c14598c3d9.worker.js +2 -0
  66. package/dist/index.worker.5a5a581362c14598c3d9.worker.js.map +1 -0
  67. package/dist/{polySeg.bundle.df492df5042827938ba4.js → polySeg.bundle.b25c61224998018d0f79.js} +24 -5
  68. package/dist/{suv-peak-worker.bundle.8f4b505fad3d371489fe.js → suv-peak-worker.bundle.eb11e71db02e52601ecf.js} +40 -21
  69. package/dist/sw.js +1 -1
  70. package/package.json +25 -33
  71. package/dist/117.bundle.1f7b56504d506e7259e3.js +0 -6552
  72. package/dist/172.bundle.19e8ff4bbcadcf7ec6ba.js +0 -662
  73. package/dist/36785fbd89b0e17f6099.wasm +0 -0
  74. package/dist/62ab5d58a2bea7b5a1dc.wasm +0 -0
  75. package/dist/644.bundle.1e77691d2eeb96a423b0.js +0 -19159
  76. package/dist/75a0c2dfe07b824c7d21.wasm +0 -0
  77. package/dist/dicom-microscopy-viewer.bundle.d3a56dc9f62df5e11019.js +0 -13
  78. package/dist/dicomMicroscopyViewer.min.js +0 -3
  79. package/dist/index.worker.f4bda803c15bc6359d5f.worker.js +0 -2
  80. package/dist/index.worker.f4bda803c15bc6359d5f.worker.js.map +0 -1
  81. package/dist/index.worker.min.worker.js +0 -2
  82. package/dist/index.worker.min.worker.js.map +0 -1
  83. /package/dist/{129.css → 210.css} +0 -0
  84. /package/dist/{727.css → 286.css} +0 -0
  85. /package/dist/{172.css → 552.css} +0 -0
  86. /package/dist/{404.css → 757.css} +0 -0
  87. /package/dist/{717.css → 994.css} +0 -0
  88. /package/dist/{65916ef3def695744bda.wasm → dicom-microscopy-viewer/65916ef3def695744bda.wasm} +0 -0
  89. /package/dist/{b6b803111e2d06a825bd.wasm → dicom-microscopy-viewer/b6b803111e2d06a825bd.wasm} +0 -0
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[851],{
2
+ (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[281],{
3
3
 
4
- /***/ 45851:
4
+ /***/ 32281:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -31,11 +31,11 @@ __webpack_require__.d(utils_namespaceObject, {
31
31
  });
32
32
 
33
33
  // EXTERNAL MODULE: ../../../node_modules/dicomweb-client/build/dicomweb-client.es.js
34
- var dicomweb_client_es = __webpack_require__(36922);
34
+ var dicomweb_client_es = __webpack_require__(97604);
35
35
  // EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
36
- var src = __webpack_require__(75186);
36
+ var src = __webpack_require__(63810);
37
37
  // EXTERNAL MODULE: ../../core/src/utils/sortStudy.ts
38
- var sortStudy = __webpack_require__(75773);
38
+ var sortStudy = __webpack_require__(9415);
39
39
  ;// CONCATENATED MODULE: ../../../extensions/default/src/DicomWebDataSource/qido.js
40
40
  /**
41
41
  * QIDO - Query based on ID for DICOM Objects
@@ -126,7 +126,7 @@ function processSeriesResults(qidoSeries) {
126
126
  description: getString(qidoSeries['0008103E'])
127
127
  }));
128
128
  }
129
- (0,sortStudy/* sortStudySeries */.LM)(series);
129
+ (0,sortStudy/* sortStudySeries */.IO)(series);
130
130
  return series;
131
131
  }
132
132
 
@@ -379,7 +379,7 @@ function getImageId({
379
379
  }
380
380
  }
381
381
  // EXTERNAL MODULE: ../../../node_modules/dcmjs/build/dcmjs.es.js
382
- var dcmjs_es = __webpack_require__(31426);
382
+ var dcmjs_es = __webpack_require__(67540);
383
383
  ;// CONCATENATED MODULE: ../../../extensions/default/src/DicomWebDataSource/wado/retrieveMetadataLoader.js
384
384
  /**
385
385
  * Class to define inheritance of load retrieve strategy.
@@ -631,9 +631,9 @@ class RetrieveMetadataLoaderAsync extends RetrieveMetadataLoader {
631
631
  const sortFunction = this.sortFunction;
632
632
  const {
633
633
  naturalizeDataset
634
- } = dcmjs_es/* default.data */.Ay.data.DicomMetaDictionary;
634
+ } = dcmjs_es["default"].data.DicomMetaDictionary;
635
635
  const naturalized = result.map(naturalizeDataset);
636
- return (0,sortStudy/* sortStudySeries */.LM)(naturalized, sortCriteria, sortFunction);
636
+ return (0,sortStudy/* sortStudySeries */.IO)(naturalized, sortCriteria, sortFunction);
637
637
  }
638
638
  async load(preLoadData) {
639
639
  const {
@@ -906,7 +906,7 @@ function uint8ArrayToString(data, offset, length) {
906
906
 
907
907
  const {
908
908
  DICOMwebClient
909
- } = dicomweb_client_es/* api */.FH;
909
+ } = dicomweb_client_es.api;
910
910
  const anyDicomwebClient = DICOMwebClient;
911
911
 
912
912
  // Ugly over-ride, but the internals aren't otherwise accessible.
@@ -929,7 +929,7 @@ if (!anyDicomwebClient._orig_buildMultipartAcceptHeaderFieldValue) {
929
929
  * by manually implementing a query option.
930
930
  */
931
931
 
932
- class StaticWadoClient extends dicomweb_client_es/* api */.FH.DICOMwebClient {
932
+ class StaticWadoClient extends dicomweb_client_es.api.DICOMwebClient {
933
933
  constructor(config) {
934
934
  super(config);
935
935
  this.config = void 0;
@@ -1352,7 +1352,7 @@ function fixBulkDataURI(value, instance, dicomWebConfig) {
1352
1352
  const {
1353
1353
  DicomMetaDictionary,
1354
1354
  DicomDict
1355
- } = dcmjs_es/* default.data */.Ay.data;
1355
+ } = dcmjs_es["default"].data;
1356
1356
  const {
1357
1357
  naturalizeDataset,
1358
1358
  denaturalizeDataset
@@ -1433,20 +1433,20 @@ function createDicomWebApi(dicomWebConfig, servicesManager) {
1433
1433
  staticWado: dicomWebConfig.staticWado,
1434
1434
  singlepart: dicomWebConfig.singlepart,
1435
1435
  headers: userAuthenticationService.getAuthorizationHeader(),
1436
- errorInterceptor: src/* errorHandler */.r_.getHTTPErrorHandler()
1436
+ errorInterceptor: src/* errorHandler */.Po.getHTTPErrorHandler()
1437
1437
  };
1438
1438
  wadoConfig = {
1439
1439
  url: dicomWebConfig.wadoRoot,
1440
1440
  staticWado: dicomWebConfig.staticWado,
1441
1441
  singlepart: dicomWebConfig.singlepart,
1442
1442
  headers: userAuthenticationService.getAuthorizationHeader(),
1443
- errorInterceptor: src/* errorHandler */.r_.getHTTPErrorHandler()
1443
+ errorInterceptor: src/* errorHandler */.Po.getHTTPErrorHandler()
1444
1444
  };
1445
1445
 
1446
1446
  // TODO -> Two clients sucks, but its better than 1000.
1447
1447
  // TODO -> We'll need to merge auth later.
1448
- qidoDicomWebClient = dicomWebConfig.staticWado ? new StaticWadoClient(qidoConfig) : new dicomweb_client_es/* api */.FH.DICOMwebClient(qidoConfig);
1449
- wadoDicomWebClient = dicomWebConfig.staticWado ? new StaticWadoClient(wadoConfig) : new dicomweb_client_es/* api */.FH.DICOMwebClient(wadoConfig);
1448
+ qidoDicomWebClient = dicomWebConfig.staticWado ? new StaticWadoClient(qidoConfig) : new dicomweb_client_es.api.DICOMwebClient(qidoConfig);
1449
+ wadoDicomWebClient = dicomWebConfig.staticWado ? new StaticWadoClient(wadoConfig) : new dicomweb_client_es.api.DICOMwebClient(wadoConfig);
1450
1450
  },
1451
1451
  query: {
1452
1452
  studies: {
@@ -1797,7 +1797,7 @@ function createDicomWebApi(dicomWebConfig, servicesManager) {
1797
1797
  if (dicomWebConfig.supportsReject) {
1798
1798
  implementation.reject = dcm4cheeReject(dicomWebConfig.wadoRoot);
1799
1799
  }
1800
- return src/* IWebApiDataSource */.pt.create(implementation);
1800
+ return src/* IWebApiDataSource */.Is.create(implementation);
1801
1801
  }
1802
1802
 
1803
1803
  ;// CONCATENATED MODULE: ../../../extensions/default/src/DicomJSONDataSource/index.js
@@ -1805,7 +1805,7 @@ function createDicomWebApi(dicomWebConfig, servicesManager) {
1805
1805
 
1806
1806
 
1807
1807
 
1808
- const DicomJSONDataSource_metadataProvider = src/* default.classes */.Ay.classes.MetadataProvider;
1808
+ const DicomJSONDataSource_metadataProvider = src["default"].classes.MetadataProvider;
1809
1809
  const mappings = {
1810
1810
  studyInstanceUid: 'StudyInstanceUID',
1811
1811
  patientId: 'PatientID'
@@ -1832,7 +1832,7 @@ function wrapSequences(obj) {
1832
1832
  acc[key] = obj[key];
1833
1833
  }
1834
1834
  if (key.endsWith('Sequence')) {
1835
- acc[key] = src/* default.utils */.Ay.utils.addAccessors(acc[key]);
1835
+ acc[key] = src["default"].utils.addAccessors(acc[key]);
1836
1836
  }
1837
1837
  return acc;
1838
1838
  }, Array.isArray(obj) ? [] : {});
@@ -2077,14 +2077,14 @@ function createDicomJSONApi(dicomJsonConfig) {
2077
2077
  return _store.studyInstanceUIDMap.get(url);
2078
2078
  }
2079
2079
  };
2080
- return src/* IWebApiDataSource */.pt.create(implementation);
2080
+ return src/* IWebApiDataSource */.Is.create(implementation);
2081
2081
  }
2082
2082
 
2083
2083
  ;// CONCATENATED MODULE: ../../../extensions/default/src/DicomLocalDataSource/index.js
2084
2084
 
2085
2085
 
2086
2086
 
2087
- const DicomLocalDataSource_metadataProvider = src/* default.classes */.Ay.classes.MetadataProvider;
2087
+ const DicomLocalDataSource_metadataProvider = src["default"].classes.MetadataProvider;
2088
2088
  const {
2089
2089
  EVENTS
2090
2090
  } = src.DicomMetadataStore;
@@ -2256,7 +2256,7 @@ function createDicomLocalApi(dicomLocalConfig) {
2256
2256
  },
2257
2257
  store: {
2258
2258
  dicom: naturalizedReport => {
2259
- const reportBlob = dcmjs_es/* default.data */.Ay.data.datasetToBlob(naturalizedReport);
2259
+ const reportBlob = dcmjs_es["default"].data.datasetToBlob(naturalizedReport);
2260
2260
 
2261
2261
  //Create a URL for the binary.
2262
2262
  var objectUrl = URL.createObjectURL(reportBlob);
@@ -2331,7 +2331,7 @@ function createDicomLocalApi(dicomLocalConfig) {
2331
2331
  return isStudyInCache ? StudyInstanceUIDsAsArray : [];
2332
2332
  }
2333
2333
  };
2334
- return src/* IWebApiDataSource */.pt.create(implementation);
2334
+ return src/* IWebApiDataSource */.Is.create(implementation);
2335
2335
  }
2336
2336
 
2337
2337
  ;// CONCATENATED MODULE: ../../../extensions/default/src/DicomWebProxyDataSource/index.ts
@@ -2410,11 +2410,11 @@ function createDicomWebProxyApi(dicomWebProxyConfig, servicesManager) {
2410
2410
  return studyInstanceUIDs;
2411
2411
  }
2412
2412
  };
2413
- return src/* IWebApiDataSource */.pt.create(implementation);
2413
+ return src/* IWebApiDataSource */.Is.create(implementation);
2414
2414
  }
2415
2415
 
2416
2416
  // EXTERNAL MODULE: ../../../node_modules/lodash/lodash.js
2417
- var lodash = __webpack_require__(5517);
2417
+ var lodash = __webpack_require__(44379);
2418
2418
  ;// CONCATENATED MODULE: ../../../extensions/default/src/MergeDataSource/index.ts
2419
2419
 
2420
2420
 
@@ -2681,7 +2681,7 @@ function createMergeDataSourceApi(mergeConfig, servicesManager, extensionManager
2681
2681
  defaultDataSourceName
2682
2682
  })
2683
2683
  };
2684
- return src/* IWebApiDataSource */.pt.create(implementation);
2684
+ return src/* IWebApiDataSource */.Is.create(implementation);
2685
2685
  }
2686
2686
 
2687
2687
  ;// CONCATENATED MODULE: ../../../extensions/default/src/getDataSourcesModule.js
@@ -2723,24 +2723,24 @@ function getDataSourcesModule() {
2723
2723
  }
2724
2724
  /* harmony default export */ const src_getDataSourcesModule = (getDataSourcesModule);
2725
2725
  // EXTERNAL MODULE: ../../../node_modules/react/index.js
2726
- var react = __webpack_require__(41766);
2726
+ var react = __webpack_require__(43001);
2727
2727
  // EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
2728
- var prop_types = __webpack_require__(11374);
2728
+ var prop_types = __webpack_require__(3827);
2729
2729
  var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
2730
- // EXTERNAL MODULE: ../../ui/src/index.js + 782 modules
2731
- var ui_src = __webpack_require__(79047);
2730
+ // EXTERNAL MODULE: ../../ui/src/index.js + 784 modules
2731
+ var ui_src = __webpack_require__(38604);
2732
2732
  // EXTERNAL MODULE: ./state/index.js + 1 modules
2733
- var state = __webpack_require__(81883);
2733
+ var state = __webpack_require__(52490);
2734
2734
  // EXTERNAL MODULE: ../node_modules/react-router-dom/dist/index.js
2735
- var dist = __webpack_require__(37396);
2735
+ var dist = __webpack_require__(62474);
2736
2736
  // EXTERNAL MODULE: ../../../node_modules/react-i18next/dist/es/index.js + 15 modules
2737
- var es = __webpack_require__(80619);
2737
+ var es = __webpack_require__(69190);
2738
2738
  // EXTERNAL MODULE: ../node_modules/react-router/dist/index.js
2739
- var react_router_dist = __webpack_require__(10971);
2739
+ var react_router_dist = __webpack_require__(85066);
2740
2740
  // EXTERNAL MODULE: ../../i18n/src/index.js + 150 modules
2741
- var i18n_src = __webpack_require__(43608);
2741
+ var i18n_src = __webpack_require__(91629);
2742
2742
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Toolbar/Toolbar.tsx
2743
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2743
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2744
2744
 
2745
2745
 
2746
2746
  function Toolbar({
@@ -2750,7 +2750,7 @@ function Toolbar({
2750
2750
  const {
2751
2751
  toolbarButtons,
2752
2752
  onInteraction
2753
- } = (0,src/* useToolbar */.tR)({
2753
+ } = (0,src/* useToolbar */.Sm)({
2754
2754
  servicesManager,
2755
2755
  buttonSection
2756
2756
  });
@@ -2790,15 +2790,15 @@ const {
2790
2790
  availableLanguages,
2791
2791
  defaultLanguage,
2792
2792
  currentLanguage
2793
- } = i18n_src/* default */.A;
2793
+ } = i18n_src["default"];
2794
2794
  function ViewerHeader({
2795
2795
  hotkeysManager,
2796
2796
  extensionManager,
2797
2797
  servicesManager,
2798
2798
  appConfig
2799
2799
  }) {
2800
- const navigate = (0,dist/* useNavigate */.Zp)();
2801
- const location = (0,react_router_dist/* useLocation */.zy)();
2800
+ const navigate = (0,dist/* useNavigate */.s0)();
2801
+ const location = (0,react_router_dist/* useLocation */.TH)();
2802
2802
  const onClickReturnButton = () => {
2803
2803
  const {
2804
2804
  pathname
@@ -2822,22 +2822,22 @@ function ViewerHeader({
2822
2822
  };
2823
2823
  const {
2824
2824
  t
2825
- } = (0,es/* useTranslation */.Bd)();
2825
+ } = (0,es/* useTranslation */.$G)();
2826
2826
  const {
2827
2827
  show,
2828
2828
  hide
2829
- } = (0,ui_src/* useModal */.hS)();
2829
+ } = (0,ui_src/* useModal */.dd)();
2830
2830
  const {
2831
2831
  hotkeyDefinitions,
2832
2832
  hotkeyDefaults
2833
2833
  } = hotkeysManager;
2834
- const versionNumber = "3.9.0-beta.46";
2835
- const commitHash = "d8f6991dbe72465080cfc5de39c7ea225702f2e0";
2834
+ const versionNumber = "3.9.0-beta.48";
2835
+ const commitHash = "c9cc37258155adf3624bfe505728f35c136a262e";
2836
2836
  const menuOptions = [{
2837
2837
  title: t('Header:About'),
2838
2838
  icon: 'info',
2839
2839
  onClick: () => show({
2840
- content: ui_src/* AboutModal */.VT,
2840
+ content: ui_src/* AboutModal */.tk,
2841
2841
  title: t('AboutModal:About OHIF Viewer'),
2842
2842
  contentProps: {
2843
2843
  versionNumber,
@@ -2850,7 +2850,7 @@ function ViewerHeader({
2850
2850
  icon: 'settings',
2851
2851
  onClick: () => show({
2852
2852
  title: t('UserPreferencesModal:User preferences'),
2853
- content: ui_src/* UserPreferences */.im,
2853
+ content: ui_src/* UserPreferences */.i1,
2854
2854
  containerDimensions: 'w-[70%] max-w-[900px]',
2855
2855
  contentProps: {
2856
2856
  hotkeyDefaults: hotkeysManager.getValidHotkeyDefinitions(hotkeyDefaults),
@@ -2859,8 +2859,8 @@ function ViewerHeader({
2859
2859
  availableLanguages,
2860
2860
  defaultLanguage,
2861
2861
  onCancel: () => {
2862
- src/* hotkeys */.ot.stopRecord();
2863
- src/* hotkeys */.ot.unpause();
2862
+ src/* hotkeys */.dD.stopRecord();
2863
+ src/* hotkeys */.dD.unpause();
2864
2864
  hide();
2865
2865
  },
2866
2866
  onSubmit: ({
@@ -2868,13 +2868,13 @@ function ViewerHeader({
2868
2868
  language
2869
2869
  }) => {
2870
2870
  if (language.value !== currentLanguage().value) {
2871
- i18n_src/* default */.A.changeLanguage(language.value);
2871
+ i18n_src["default"].changeLanguage(language.value);
2872
2872
  }
2873
2873
  hotkeysManager.setHotkeys(hotkeyDefinitions);
2874
2874
  hide();
2875
2875
  },
2876
2876
  onReset: () => hotkeysManager.restoreDefaultBindings(),
2877
- hotkeysModule: src/* hotkeys */.ot
2877
+ hotkeysModule: src/* hotkeys */.dD
2878
2878
  }
2879
2879
  })
2880
2880
  }];
@@ -2887,7 +2887,7 @@ function ViewerHeader({
2887
2887
  }
2888
2888
  });
2889
2889
  }
2890
- return /*#__PURE__*/react.createElement(ui_src/* Header */.Y9, {
2890
+ return /*#__PURE__*/react.createElement(ui_src/* Header */.h4, {
2891
2891
  menuOptions: menuOptions,
2892
2892
  isReturnEnabled: !!appConfig.showStudyList,
2893
2893
  onClickReturnButton: onClickReturnButton,
@@ -2899,7 +2899,7 @@ function ViewerHeader({
2899
2899
  buttonSection: "secondary"
2900
2900
  }),
2901
2901
  appConfig: appConfig
2902
- }, /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.tH, {
2902
+ }, /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.SV, {
2903
2903
  context: "Primary Toolbar"
2904
2904
  }, /*#__PURE__*/react.createElement("div", {
2905
2905
  className: "relative flex justify-center gap-[4px]"
@@ -2909,7 +2909,7 @@ function ViewerHeader({
2909
2909
  }
2910
2910
  /* harmony default export */ const ViewerLayout_ViewerHeader = (ViewerHeader);
2911
2911
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Components/SidePanelWithServices.tsx
2912
- function SidePanelWithServices_extends() { SidePanelWithServices_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return SidePanelWithServices_extends.apply(this, arguments); }
2912
+ function SidePanelWithServices_extends() { return SidePanelWithServices_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, SidePanelWithServices_extends.apply(null, arguments); }
2913
2913
 
2914
2914
 
2915
2915
  const SidePanelWithServices = ({
@@ -2966,7 +2966,7 @@ const SidePanelWithServices = ({
2966
2966
  activatePanelSubscription.unsubscribe();
2967
2967
  };
2968
2968
  }, [tabs, hasBeenOpened, panelService]);
2969
- return /*#__PURE__*/react.createElement(ui_src/* SidePanel */.wv, SidePanelWithServices_extends({}, props, {
2969
+ return /*#__PURE__*/react.createElement(ui_src/* SidePanel */.hs, SidePanelWithServices_extends({}, props, {
2970
2970
  side: side,
2971
2971
  tabs: tabs,
2972
2972
  activeTabIndex: activeTabIndex,
@@ -2996,7 +2996,7 @@ function ViewerLayout({
2996
2996
  leftPanelClosed = false,
2997
2997
  rightPanelClosed = false
2998
2998
  }) {
2999
- const [appConfig] = (0,state/* useAppConfig */.r)();
2999
+ const [appConfig] = (0,state/* useAppConfig */.M)();
3000
3000
  const {
3001
3001
  panelService,
3002
3002
  hangingProtocolService
@@ -3034,7 +3034,7 @@ function ViewerLayout({
3034
3034
  (0,react.useEffect)(() => {
3035
3035
  const {
3036
3036
  unsubscribe
3037
- } = hangingProtocolService.subscribe(src/* HangingProtocolService */.Qe.EVENTS.PROTOCOL_CHANGED,
3037
+ } = hangingProtocolService.subscribe(src/* HangingProtocolService */.hy.EVENTS.PROTOCOL_CHANGED,
3038
3038
  // Todo: right now to set the loading indicator to false, we need to wait for the
3039
3039
  // hangingProtocolService to finish applying the viewport matching to each viewport,
3040
3040
  // however, this might not be the only approach to set the loading indicator to false. we need to explore this further.
@@ -3084,9 +3084,9 @@ function ViewerLayout({
3084
3084
  style: {
3085
3085
  height: 'calc(100vh - 52px'
3086
3086
  }
3087
- }, /*#__PURE__*/react.createElement(react.Fragment, null, showLoadingIndicator && /*#__PURE__*/react.createElement(ui_src/* LoadingIndicatorProgress */.Jx, {
3087
+ }, /*#__PURE__*/react.createElement(react.Fragment, null, showLoadingIndicator && /*#__PURE__*/react.createElement(ui_src/* LoadingIndicatorProgress */.LE, {
3088
3088
  className: "h-full w-full bg-black"
3089
- }), hasLeftPanels ? /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.tH, {
3089
+ }), hasLeftPanels ? /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.SV, {
3090
3090
  context: "Left Panel"
3091
3091
  }, /*#__PURE__*/react.createElement(Components_SidePanelWithServices, {
3092
3092
  side: "left",
@@ -3096,19 +3096,19 @@ function ViewerLayout({
3096
3096
  className: "flex h-full flex-1 flex-col"
3097
3097
  }, /*#__PURE__*/react.createElement("div", {
3098
3098
  className: "relative flex h-full flex-1 items-center justify-center overflow-hidden bg-black"
3099
- }, /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.tH, {
3099
+ }, /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.SV, {
3100
3100
  context: "Grid"
3101
3101
  }, /*#__PURE__*/react.createElement(ViewportGridComp, {
3102
3102
  servicesManager: servicesManager,
3103
3103
  viewportComponents: viewportComponents,
3104
3104
  commandsManager: commandsManager
3105
- })))), hasRightPanels ? /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.tH, {
3105
+ })))), hasRightPanels ? /*#__PURE__*/react.createElement(ui_src/* ErrorBoundary */.SV, {
3106
3106
  context: "Right Panel"
3107
3107
  }, /*#__PURE__*/react.createElement(Components_SidePanelWithServices, {
3108
3108
  side: "right",
3109
3109
  activeTabIndex: rightPanelClosedState ? null : 0,
3110
3110
  servicesManager: servicesManager
3111
- })) : null)), /*#__PURE__*/react.createElement(ui_src/* InvestigationalUseDialog */.j, {
3111
+ })) : null)), /*#__PURE__*/react.createElement(ui_src/* InvestigationalUseDialog */.NE, {
3112
3112
  dialogConfiguration: appConfig?.investigationalUseDialog
3113
3113
  }));
3114
3114
  }
@@ -3117,7 +3117,7 @@ ViewerLayout.propTypes = {
3117
3117
  extensionManager: prop_types_default().shape({
3118
3118
  getModuleEntry: (prop_types_default()).func.isRequired
3119
3119
  }).isRequired,
3120
- commandsManager: prop_types_default().instanceOf(src/* CommandsManager */.Sp),
3120
+ commandsManager: prop_types_default().instanceOf(src/* CommandsManager */.HQ),
3121
3121
  servicesManager: (prop_types_default()).object.isRequired,
3122
3122
  // From modes
3123
3123
  leftPanels: (prop_types_default()).array,
@@ -3169,7 +3169,8 @@ ViewerLayout.propTypes = {
3169
3169
 
3170
3170
  const {
3171
3171
  sortStudyInstances,
3172
- formatDate
3172
+ formatDate,
3173
+ createStudyBrowserTabs
3173
3174
  } = src.utils;
3174
3175
 
3175
3176
  /**
@@ -3188,19 +3189,19 @@ function PanelStudyBrowser({
3188
3189
  displaySetService,
3189
3190
  uiNotificationService
3190
3191
  } = servicesManager.services;
3191
- const navigate = (0,dist/* useNavigate */.Zp)();
3192
+ const navigate = (0,dist/* useNavigate */.s0)();
3192
3193
 
3193
3194
  // Normally you nest the components so the tree isn't so deep, and the data
3194
3195
  // doesn't have to have such an intense shape. This works well enough for now.
3195
3196
  // Tabs --> Studies --> DisplaySets --> Thumbnails
3196
3197
  const {
3197
3198
  StudyInstanceUIDs
3198
- } = (0,ui_src/* useImageViewer */.Bz)();
3199
+ } = (0,ui_src/* useImageViewer */.zG)();
3199
3200
  const [{
3200
3201
  activeViewportId,
3201
3202
  viewports,
3202
3203
  isHangingProtocolLayout
3203
- }, viewportGridService] = (0,ui_src/* useViewportGrid */.ih)();
3204
+ }, viewportGridService] = (0,ui_src/* useViewportGrid */.O_)();
3204
3205
  const [activeTabName, setActiveTabName] = (0,react.useState)('primary');
3205
3206
  const [expandedStudyInstanceUIDs, setExpandedStudyInstanceUIDs] = (0,react.useState)([...StudyInstanceUIDs]);
3206
3207
  const [studyDisplayList, setStudyDisplayList] = (0,react.useState)([]);
@@ -3351,7 +3352,7 @@ function PanelStudyBrowser({
3351
3352
  SubscriptionDisplaySetMetaDataInvalidated.unsubscribe();
3352
3353
  };
3353
3354
  }, [StudyInstanceUIDs, thumbnailImageSrcMap, displaySetService]);
3354
- const tabs = _createStudyBrowserTabs(StudyInstanceUIDs, studyDisplayList, displaySets);
3355
+ const tabs = createStudyBrowserTabs(StudyInstanceUIDs, studyDisplayList, displaySets);
3355
3356
 
3356
3357
  // TODO: Should not fire this on "close"
3357
3358
  function _handleStudyClick(StudyInstanceUID) {
@@ -3366,7 +3367,7 @@ function PanelStudyBrowser({
3366
3367
  }
3367
3368
  }
3368
3369
  const activeDisplaySetInstanceUIDs = viewports.get(activeViewportId)?.displaySetInstanceUIDs;
3369
- return /*#__PURE__*/react.createElement(ui_src/* StudyBrowser */.M4, {
3370
+ return /*#__PURE__*/react.createElement(ui_src/* StudyBrowser */.eX, {
3370
3371
  tabs: tabs,
3371
3372
  servicesManager: servicesManager,
3372
3373
  activeTabName: activeTabName,
@@ -3449,51 +3450,6 @@ function _getComponentType(ds) {
3449
3450
  }
3450
3451
  return 'thumbnail';
3451
3452
  }
3452
-
3453
- /**
3454
- *
3455
- * @param {string[]} primaryStudyInstanceUIDs
3456
- * @param {object[]} studyDisplayList
3457
- * @param {string} studyDisplayList.studyInstanceUid
3458
- * @param {string} studyDisplayList.date
3459
- * @param {string} studyDisplayList.description
3460
- * @param {string} studyDisplayList.modalities
3461
- * @param {number} studyDisplayList.numInstances
3462
- * @param {object[]} displaySets
3463
- * @returns tabs - The prop object expected by the StudyBrowser component
3464
- */
3465
- function _createStudyBrowserTabs(primaryStudyInstanceUIDs, studyDisplayList, displaySets) {
3466
- const primaryStudies = [];
3467
- const recentStudies = [];
3468
- const allStudies = [];
3469
- studyDisplayList.forEach(study => {
3470
- const displaySetsForStudy = displaySets.filter(ds => ds.StudyInstanceUID === study.studyInstanceUid);
3471
- const tabStudy = Object.assign({}, study, {
3472
- displaySets: displaySetsForStudy
3473
- });
3474
- if (primaryStudyInstanceUIDs.includes(study.studyInstanceUid)) {
3475
- primaryStudies.push(tabStudy);
3476
- } else {
3477
- // TODO: Filter allStudies to dates within one year of current date
3478
- recentStudies.push(tabStudy);
3479
- allStudies.push(tabStudy);
3480
- }
3481
- });
3482
- const tabs = [{
3483
- name: 'primary',
3484
- label: 'Primary',
3485
- studies: primaryStudies
3486
- }, {
3487
- name: 'recent',
3488
- label: 'Recent',
3489
- studies: recentStudies
3490
- }, {
3491
- name: 'all',
3492
- label: 'All',
3493
- studies: allStudies
3494
- }];
3495
- return tabs;
3496
- }
3497
3453
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Panels/getImageSrcFromImageId.js
3498
3454
  /**
3499
3455
  * @param {*} cornerstone
@@ -3598,7 +3554,7 @@ WrappedPanelStudyBrowser.propTypes = {
3598
3554
  };
3599
3555
  /* harmony default export */ const Panels_WrappedPanelStudyBrowser = (WrappedPanelStudyBrowser);
3600
3556
  // EXTERNAL MODULE: ../../../node_modules/lodash.debounce/index.js
3601
- var lodash_debounce = __webpack_require__(14771);
3557
+ var lodash_debounce = __webpack_require__(8324);
3602
3558
  var lodash_debounce_default = /*#__PURE__*/__webpack_require__.n(lodash_debounce);
3603
3559
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Panels/createReportDialogPrompt.tsx
3604
3560
 
@@ -3668,7 +3624,7 @@ function CreateReportDialogPrompt(uiDialogService, {
3668
3624
  dialogId = uiDialogService.create({
3669
3625
  centralize: true,
3670
3626
  isDraggable: false,
3671
- content: ui_src/* Dialog */.lG,
3627
+ content: ui_src/* Dialog */.Vq,
3672
3628
  useLastPosition: false,
3673
3629
  showOverlay: true,
3674
3630
  contentProps: {
@@ -3682,11 +3638,11 @@ function CreateReportDialogPrompt(uiDialogService, {
3682
3638
  actions: [{
3683
3639
  id: 'cancel',
3684
3640
  text: 'Cancel',
3685
- type: ui_src/* ButtonEnums.type */.Ny.NW.secondary
3641
+ type: ui_src/* ButtonEnums.type */.LZ.dt.secondary
3686
3642
  }, {
3687
3643
  id: 'save',
3688
3644
  text: 'Save',
3689
- type: ui_src/* ButtonEnums.type */.Ny.NW.primary
3645
+ type: ui_src/* ButtonEnums.type */.LZ.dt.primary
3690
3646
  }],
3691
3647
  // TODO: Should be on button press...
3692
3648
  onSubmit: _handleFormSubmit,
@@ -3714,7 +3670,7 @@ function CreateReportDialogPrompt(uiDialogService, {
3714
3670
  };
3715
3671
  return /*#__PURE__*/react.createElement(react.Fragment, null, dataSourcesOpts.length > 1 && window.config?.allowMultiSelectExport && /*#__PURE__*/react.createElement("div", null, /*#__PURE__*/react.createElement("label", {
3716
3672
  className: "text-[14px] leading-[1.2] text-white"
3717
- }, "Data Source"), /*#__PURE__*/react.createElement(ui_src/* Select */.l6, {
3673
+ }, "Data Source"), /*#__PURE__*/react.createElement(ui_src/* Select */.Ph, {
3718
3674
  closeMenuOnSelect: true,
3719
3675
  className: "border-primary-main mt-2 bg-black",
3720
3676
  options: dataSourcesOpts,
@@ -3729,7 +3685,7 @@ function CreateReportDialogPrompt(uiDialogService, {
3729
3685
  isClearable: false
3730
3686
  })), /*#__PURE__*/react.createElement("div", {
3731
3687
  className: "mt-3"
3732
- }, /*#__PURE__*/react.createElement(ui_src/* Input */.pd, {
3688
+ }, /*#__PURE__*/react.createElement(ui_src/* Input */.II, {
3733
3689
  autoFocus: true,
3734
3690
  label: "Enter the report name",
3735
3691
  labelClassName: "text-white text-[14px] leading-[1.2]",
@@ -3879,8 +3835,8 @@ function PanelMeasurementTable({
3879
3835
  }) {
3880
3836
  const {
3881
3837
  t
3882
- } = (0,es/* useTranslation */.Bd)('MeasurementTable');
3883
- const [viewportGrid, viewportGridService] = (0,ui_src/* useViewportGrid */.ih)();
3838
+ } = (0,es/* useTranslation */.$G)('MeasurementTable');
3839
+ const [viewportGrid, viewportGridService] = (0,ui_src/* useViewportGrid */.O_)();
3884
3840
  const {
3885
3841
  activeViewportId,
3886
3842
  viewports
@@ -4006,7 +3962,7 @@ function PanelMeasurementTable({
4006
3962
  centralize: true,
4007
3963
  isDraggable: false,
4008
3964
  showOverlay: true,
4009
- content: ui_src/* Dialog */.lG,
3965
+ content: ui_src/* Dialog */.Vq,
4010
3966
  contentProps: {
4011
3967
  title: 'Annotation',
4012
3968
  noCloseButton: true,
@@ -4034,7 +3990,7 @@ function PanelMeasurementTable({
4034
3990
  });
4035
3991
  }
4036
3992
  };
4037
- return /*#__PURE__*/react.createElement(ui_src/* Input */.pd, {
3993
+ return /*#__PURE__*/react.createElement(ui_src/* Input */.II, {
4038
3994
  label: "Enter your annotation",
4039
3995
  labelClassName: "text-white text-[14px] leading-[1.2]",
4040
3996
  autoFocus: true,
@@ -4049,11 +4005,11 @@ function PanelMeasurementTable({
4049
4005
  actions: [{
4050
4006
  id: 'cancel',
4051
4007
  text: 'Cancel',
4052
- type: ui_src/* ButtonEnums.type */.Ny.NW.secondary
4008
+ type: ui_src/* ButtonEnums.type */.LZ.dt.secondary
4053
4009
  }, {
4054
4010
  id: 'save',
4055
4011
  text: 'Save',
4056
- type: ui_src/* ButtonEnums.type */.Ny.NW.primary
4012
+ type: ui_src/* ButtonEnums.type */.LZ.dt.primary
4057
4013
  }],
4058
4014
  onSubmit: onSubmitHandler
4059
4015
  }
@@ -4074,7 +4030,7 @@ function PanelMeasurementTable({
4074
4030
  return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("div", {
4075
4031
  className: "ohif-scrollbar overflow-y-auto overflow-x-hidden",
4076
4032
  "data-cy": 'measurements-panel'
4077
- }, /*#__PURE__*/react.createElement(ui_src/* MeasurementTable */.V, {
4033
+ }, /*#__PURE__*/react.createElement(ui_src/* MeasurementTable */.wt, {
4078
4034
  title: t('Measurements'),
4079
4035
  servicesManager: servicesManager,
4080
4036
  data: displayMeasurements,
@@ -4082,7 +4038,7 @@ function PanelMeasurementTable({
4082
4038
  onEdit: onMeasurementItemEditHandler
4083
4039
  })), /*#__PURE__*/react.createElement("div", {
4084
4040
  className: "flex justify-center p-4"
4085
- }, /*#__PURE__*/react.createElement(ui_src/* ActionButtons */.wr, {
4041
+ }, /*#__PURE__*/react.createElement(ui_src/* ActionButtons */.EY, {
4086
4042
  t: t,
4087
4043
  actions: [{
4088
4044
  label: 'Export',
@@ -4152,7 +4108,7 @@ function _mapMeasurementToDisplay(measurement, index, types) {
4152
4108
 
4153
4109
 
4154
4110
  // EXTERNAL MODULE: ../../../node_modules/i18next/dist/esm/i18next.js
4155
- var i18next = __webpack_require__(92344);
4111
+ var i18next = __webpack_require__(73577);
4156
4112
  ;// CONCATENATED MODULE: ../../../extensions/default/src/getPanelModule.tsx
4157
4113
 
4158
4114
 
@@ -4179,7 +4135,7 @@ function getPanelModule({
4179
4135
  name: 'seriesList',
4180
4136
  iconName: 'tab-studies',
4181
4137
  iconLabel: 'Studies',
4182
- label: i18next/* default */.A.t('SidePanel:Studies'),
4138
+ label: i18next/* default */.Z.t('SidePanel:Studies'),
4183
4139
  component: Panels_WrappedPanelStudyBrowser.bind(null, {
4184
4140
  commandsManager,
4185
4141
  extensionManager,
@@ -4189,28 +4145,28 @@ function getPanelModule({
4189
4145
  name: 'measure',
4190
4146
  iconName: 'tab-linear',
4191
4147
  iconLabel: 'Measure',
4192
- label: i18next/* default */.A.t('SidePanel:Measurements'),
4193
- secondaryLabel: i18next/* default */.A.t('SidePanel:Measurements'),
4148
+ label: i18next/* default */.Z.t('SidePanel:Measurements'),
4149
+ secondaryLabel: i18next/* default */.Z.t('SidePanel:Measurements'),
4194
4150
  component: wrappedMeasurementPanel
4195
4151
  }];
4196
4152
  }
4197
4153
  /* harmony default export */ const src_getPanelModule = (getPanelModule);
4198
4154
  // EXTERNAL MODULE: ../../core/src/utils/isImage.js
4199
- var isImage = __webpack_require__(92087);
4155
+ var isImage = __webpack_require__(74440);
4200
4156
  // EXTERNAL MODULE: ../../core/src/utils/sopClassDictionary.js
4201
- var sopClassDictionary = __webpack_require__(6342);
4157
+ var sopClassDictionary = __webpack_require__(66050);
4202
4158
  // EXTERNAL MODULE: ../../core/src/classes/ImageSet.ts
4203
- var ImageSet = __webpack_require__(61378);
4159
+ var ImageSet = __webpack_require__(15337);
4204
4160
  // EXTERNAL MODULE: ../../core/src/utils/isDisplaySetReconstructable.js
4205
- var isDisplaySetReconstructable = __webpack_require__(52378);
4161
+ var isDisplaySetReconstructable = __webpack_require__(74824);
4206
4162
  ;// CONCATENATED MODULE: ../../../extensions/default/package.json
4207
- const package_namespaceObject = /*#__PURE__*/JSON.parse('{"UU":"@ohif/extension-default"}');
4163
+ const package_namespaceObject = JSON.parse('{"u2":"@ohif/extension-default"}');
4208
4164
  ;// CONCATENATED MODULE: ../../../extensions/default/src/id.js
4209
4165
 
4210
- const id = package_namespaceObject.UU;
4166
+ const id = package_namespaceObject.u2;
4211
4167
 
4212
4168
  // EXTERNAL MODULE: ../../core/src/utils/sortInstancesByPosition.ts
4213
- var sortInstancesByPosition = __webpack_require__(7986);
4169
+ var sortInstancesByPosition = __webpack_require__(87134);
4214
4170
  ;// CONCATENATED MODULE: ../../../extensions/default/src/utils/validations/checkMultiframe.ts
4215
4171
 
4216
4172
 
@@ -4221,18 +4177,18 @@ var sortInstancesByPosition = __webpack_require__(7986);
4221
4177
  * @param {*} warnings
4222
4178
  */
4223
4179
  function checkMultiFrame(multiFrameInstance, messages) {
4224
- if (!(0,isDisplaySetReconstructable/* hasPixelMeasurements */.Yt)(multiFrameInstance)) {
4225
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.MULTIFRAME_NO_PIXEL_MEASUREMENTS);
4180
+ if (!(0,isDisplaySetReconstructable/* hasPixelMeasurements */.hu)(multiFrameInstance)) {
4181
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.MULTIFRAME_NO_PIXEL_MEASUREMENTS);
4226
4182
  }
4227
- if (!(0,isDisplaySetReconstructable/* hasOrientation */.VX)(multiFrameInstance)) {
4228
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.MULTIFRAME_NO_ORIENTATION);
4183
+ if (!(0,isDisplaySetReconstructable/* hasOrientation */.sb)(multiFrameInstance)) {
4184
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.MULTIFRAME_NO_ORIENTATION);
4229
4185
  }
4230
- if (!(0,isDisplaySetReconstructable/* hasPosition */.sL)(multiFrameInstance)) {
4231
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.MULTIFRAME_NO_POSITION_INFORMATION);
4186
+ if (!(0,isDisplaySetReconstructable/* hasPosition */.kN)(multiFrameInstance)) {
4187
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.MULTIFRAME_NO_POSITION_INFORMATION);
4232
4188
  }
4233
4189
  }
4234
4190
  // EXTERNAL MODULE: ../../core/src/utils/toNumber.js
4235
- var toNumber = __webpack_require__(69508);
4191
+ var toNumber = __webpack_require__(11218);
4236
4192
  ;// CONCATENATED MODULE: ../../../extensions/default/src/utils/validations/areAllImageDimensionsEqual.ts
4237
4193
 
4238
4194
 
@@ -4246,8 +4202,8 @@ function areAllImageDimensionsEqual(instances) {
4246
4202
  return false;
4247
4203
  }
4248
4204
  const firstImage = instances[0];
4249
- const firstImageRows = (0,toNumber/* default */.A)(firstImage.Rows);
4250
- const firstImageColumns = (0,toNumber/* default */.A)(firstImage.Columns);
4205
+ const firstImageRows = (0,toNumber/* default */.Z)(firstImage.Rows);
4206
+ const firstImageColumns = (0,toNumber/* default */.Z)(firstImage.Columns);
4251
4207
  for (let i = 1; i < instances.length; i++) {
4252
4208
  const instance = instances[i];
4253
4209
  const {
@@ -4273,7 +4229,7 @@ function areAllImageComponentsEqual(instances) {
4273
4229
  return false;
4274
4230
  }
4275
4231
  const firstImage = instances[0];
4276
- const firstImageSamplesPerPixel = (0,toNumber/* default */.A)(firstImage.SamplesPerPixel);
4232
+ const firstImageSamplesPerPixel = (0,toNumber/* default */.Z)(firstImage.SamplesPerPixel);
4277
4233
  for (let i = 1; i < instances.length; i++) {
4278
4234
  const instance = instances[i];
4279
4235
  const {
@@ -4299,18 +4255,18 @@ function areAllImageOrientationsEqual(instances) {
4299
4255
  return false;
4300
4256
  }
4301
4257
  const firstImage = instances[0];
4302
- const firstImageOrientationPatient = (0,toNumber/* default */.A)(firstImage.ImageOrientationPatient);
4258
+ const firstImageOrientationPatient = (0,toNumber/* default */.Z)(firstImage.ImageOrientationPatient);
4303
4259
  for (let i = 1; i < instances.length; i++) {
4304
4260
  const instance = instances[i];
4305
- const imageOrientationPatient = (0,toNumber/* default */.A)(instance.ImageOrientationPatient);
4306
- if (!(0,isDisplaySetReconstructable/* _isSameOrientation */.sW)(imageOrientationPatient, firstImageOrientationPatient)) {
4261
+ const imageOrientationPatient = (0,toNumber/* default */.Z)(instance.ImageOrientationPatient);
4262
+ if (!(0,isDisplaySetReconstructable/* _isSameOrientation */.NB)(imageOrientationPatient, firstImageOrientationPatient)) {
4307
4263
  return false;
4308
4264
  }
4309
4265
  }
4310
4266
  return true;
4311
4267
  }
4312
4268
  // EXTERNAL MODULE: ../../../node_modules/gl-matrix/esm/index.js + 1 modules
4313
- var esm = __webpack_require__(44753);
4269
+ var esm = __webpack_require__(72076);
4314
4270
  ;// CONCATENATED MODULE: ../../../extensions/default/src/utils/calculateScanAxisNormal.ts
4315
4271
 
4316
4272
 
@@ -4320,9 +4276,9 @@ var esm = __webpack_require__(44753);
4320
4276
  * @returns
4321
4277
  */
4322
4278
  function calculateScanAxisNormal(imageOrientation) {
4323
- const rowCosineVec = esm/* vec3.fromValues */.eR.fromValues(imageOrientation[0], imageOrientation[1], imageOrientation[2]);
4324
- const colCosineVec = esm/* vec3.fromValues */.eR.fromValues(imageOrientation[3], imageOrientation[4], imageOrientation[5]);
4325
- return esm/* vec3.cross */.eR.cross(esm/* vec3.create */.eR.create(), rowCosineVec, colCosineVec);
4279
+ const rowCosineVec = esm/* vec3.fromValues */.R3.fromValues(imageOrientation[0], imageOrientation[1], imageOrientation[2]);
4280
+ const colCosineVec = esm/* vec3.fromValues */.R3.fromValues(imageOrientation[3], imageOrientation[4], imageOrientation[5]);
4281
+ return esm/* vec3.cross */.R3.cross(esm/* vec3.create */.R3.create(), rowCosineVec, colCosineVec);
4326
4282
  }
4327
4283
  ;// CONCATENATED MODULE: ../../../extensions/default/src/utils/validations/areAllImagePositionsEqual.ts
4328
4284
 
@@ -4341,8 +4297,8 @@ function calculateScanAxisNormal(imageOrientation) {
4341
4297
  function _checkSeriesPositionShift(previousPosition, actualPosition, scanAxisNormal, averageSpacingBetweenFrames) {
4342
4298
  // predicted position should be the previous position added by the multiplication
4343
4299
  // of the scanAxisNormal and the average spacing between frames
4344
- const predictedPosition = esm/* vec3.scaleAndAdd */.eR.scaleAndAdd(esm/* vec3.create */.eR.create(), previousPosition, scanAxisNormal, averageSpacingBetweenFrames);
4345
- return esm/* vec3.distance */.eR.distance(actualPosition, predictedPosition) > averageSpacingBetweenFrames;
4300
+ const predictedPosition = esm/* vec3.scaleAndAdd */.R3.scaleAndAdd(esm/* vec3.create */.R3.create(), previousPosition, scanAxisNormal, averageSpacingBetweenFrames);
4301
+ return esm/* vec3.distance */.R3.distance(actualPosition, predictedPosition) > averageSpacingBetweenFrames;
4346
4302
  }
4347
4303
 
4348
4304
  /**
@@ -4354,18 +4310,18 @@ function areAllImagePositionsEqual(instances) {
4354
4310
  if (!instances?.length) {
4355
4311
  return false;
4356
4312
  }
4357
- const firstImageOrientationPatient = (0,toNumber/* default */.A)(instances[0].ImageOrientationPatient);
4313
+ const firstImageOrientationPatient = (0,toNumber/* default */.Z)(instances[0].ImageOrientationPatient);
4358
4314
  if (!firstImageOrientationPatient) {
4359
4315
  return false;
4360
4316
  }
4361
4317
  const scanAxisNormal = calculateScanAxisNormal(firstImageOrientationPatient);
4362
- const firstImagePositionPatient = (0,toNumber/* default */.A)(instances[0].ImagePositionPatient);
4363
- const lastIpp = (0,toNumber/* default */.A)(instances[instances.length - 1].ImagePositionPatient);
4364
- const averageSpacingBetweenFrames = (0,isDisplaySetReconstructable/* _getPerpendicularDistance */.jj)(firstImagePositionPatient, lastIpp) / (instances.length - 1);
4318
+ const firstImagePositionPatient = (0,toNumber/* default */.Z)(instances[0].ImagePositionPatient);
4319
+ const lastIpp = (0,toNumber/* default */.Z)(instances[instances.length - 1].ImagePositionPatient);
4320
+ const averageSpacingBetweenFrames = (0,isDisplaySetReconstructable/* _getPerpendicularDistance */.Xn)(firstImagePositionPatient, lastIpp) / (instances.length - 1);
4365
4321
  let previousImagePositionPatient = firstImagePositionPatient;
4366
4322
  for (let i = 1; i < instances.length; i++) {
4367
4323
  const instance = instances[i];
4368
- const imagePositionPatient = (0,toNumber/* default */.A)(instance.ImagePositionPatient);
4324
+ const imagePositionPatient = (0,toNumber/* default */.Z)(instance.ImagePositionPatient);
4369
4325
  if (_checkSeriesPositionShift(previousImagePositionPatient, imagePositionPatient, scanAxisNormal, averageSpacingBetweenFrames)) {
4370
4326
  return false;
4371
4327
  }
@@ -4386,29 +4342,29 @@ function areAllImageSpacingEqual(instances, messages) {
4386
4342
  if (!instances?.length) {
4387
4343
  return;
4388
4344
  }
4389
- const firstImagePositionPatient = (0,toNumber/* default */.A)(instances[0].ImagePositionPatient);
4345
+ const firstImagePositionPatient = (0,toNumber/* default */.Z)(instances[0].ImagePositionPatient);
4390
4346
  if (!firstImagePositionPatient) {
4391
4347
  return;
4392
4348
  }
4393
- const lastIpp = (0,toNumber/* default */.A)(instances[instances.length - 1].ImagePositionPatient);
4394
- const averageSpacingBetweenFrames = (0,isDisplaySetReconstructable/* _getPerpendicularDistance */.jj)(firstImagePositionPatient, lastIpp) / (instances.length - 1);
4349
+ const lastIpp = (0,toNumber/* default */.Z)(instances[instances.length - 1].ImagePositionPatient);
4350
+ const averageSpacingBetweenFrames = (0,isDisplaySetReconstructable/* _getPerpendicularDistance */.Xn)(firstImagePositionPatient, lastIpp) / (instances.length - 1);
4395
4351
  let previousImagePositionPatient = firstImagePositionPatient;
4396
4352
  const issuesFound = [];
4397
4353
  for (let i = 1; i < instances.length; i++) {
4398
4354
  const instance = instances[i];
4399
- const imagePositionPatient = (0,toNumber/* default */.A)(instance.ImagePositionPatient);
4400
- const spacingBetweenFrames = (0,isDisplaySetReconstructable/* _getPerpendicularDistance */.jj)(imagePositionPatient, previousImagePositionPatient);
4401
- const spacingIssue = (0,isDisplaySetReconstructable/* _getSpacingIssue */.Op)(spacingBetweenFrames, averageSpacingBetweenFrames);
4355
+ const imagePositionPatient = (0,toNumber/* default */.Z)(instance.ImagePositionPatient);
4356
+ const spacingBetweenFrames = (0,isDisplaySetReconstructable/* _getPerpendicularDistance */.Xn)(imagePositionPatient, previousImagePositionPatient);
4357
+ const spacingIssue = (0,isDisplaySetReconstructable/* _getSpacingIssue */.bg)(spacingBetweenFrames, averageSpacingBetweenFrames);
4402
4358
  if (spacingIssue) {
4403
4359
  const issue = spacingIssue.issue;
4404
4360
 
4405
4361
  // avoid multiple warning of the same thing
4406
4362
  if (!issuesFound.includes(issue)) {
4407
4363
  issuesFound.push(issue);
4408
- if (issue === isDisplaySetReconstructable/* reconstructionIssues */.JG.MISSING_FRAMES) {
4409
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.MISSING_FRAMES);
4410
- } else if (issue === isDisplaySetReconstructable/* reconstructionIssues */.JG.IRREGULAR_SPACING) {
4411
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.IRREGULAR_SPACING);
4364
+ if (issue === isDisplaySetReconstructable/* reconstructionIssues */.e1.MISSING_FRAMES) {
4365
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.MISSING_FRAMES);
4366
+ } else if (issue === isDisplaySetReconstructable/* reconstructionIssues */.e1.IRREGULAR_SPACING) {
4367
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.IRREGULAR_SPACING);
4412
4368
  }
4413
4369
  }
4414
4370
  // we just want to find issues not how many
@@ -4435,16 +4391,16 @@ function areAllImageSpacingEqual(instances, messages) {
4435
4391
  function checkSingleFrames(instances, messages) {
4436
4392
  if (instances.length > 2) {
4437
4393
  if (!areAllImageDimensionsEqual(instances)) {
4438
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.INCONSISTENT_DIMENSIONS);
4394
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.INCONSISTENT_DIMENSIONS);
4439
4395
  }
4440
4396
  if (!areAllImageComponentsEqual(instances)) {
4441
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.INCONSISTENT_COMPONENTS);
4397
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.INCONSISTENT_COMPONENTS);
4442
4398
  }
4443
4399
  if (!areAllImageOrientationsEqual(instances)) {
4444
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.INCONSISTENT_ORIENTATIONS);
4400
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.INCONSISTENT_ORIENTATIONS);
4445
4401
  }
4446
4402
  if (!areAllImagePositionsEqual(instances)) {
4447
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.INCONSISTENT_POSITION_INFORMATION);
4403
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.INCONSISTENT_POSITION_INFORMATION);
4448
4404
  }
4449
4405
  areAllImageSpacingEqual(instances, messages);
4450
4406
  }
@@ -4461,12 +4417,12 @@ function checkSingleFrames(instances, messages) {
4461
4417
  * @param {Object[]} instances An array of `OHIFInstanceMetadata` objects.
4462
4418
  */
4463
4419
  function getDisplaySetMessages(instances, isReconstructable, isDynamicVolume) {
4464
- const messages = new src/* DisplaySetMessageList */.WZ();
4420
+ const messages = new src/* DisplaySetMessageList */.iK();
4465
4421
  if (isDynamicVolume) {
4466
4422
  return messages;
4467
4423
  }
4468
4424
  if (!instances.length) {
4469
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.NO_VALID_INSTANCES);
4425
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.NO_VALID_INSTANCES);
4470
4426
  return;
4471
4427
  }
4472
4428
  const firstInstance = instances[0];
@@ -4479,18 +4435,18 @@ function getDisplaySetMessages(instances, isReconstructable, isDynamicVolume) {
4479
4435
  if (ImageType?.includes('LOCALIZER')) {
4480
4436
  return messages;
4481
4437
  }
4482
- if (!isDisplaySetReconstructable/* constructableModalities */.Hf.includes(Modality)) {
4438
+ if (!isDisplaySetReconstructable/* constructableModalities */.M6.includes(Modality)) {
4483
4439
  return messages;
4484
4440
  }
4485
4441
  const isMultiframe = NumberOfFrames > 1;
4486
4442
  // Can't reconstruct if all instances don't have the ImagePositionPatient.
4487
4443
  if (!isMultiframe && !instances.every(instance => instance.ImagePositionPatient)) {
4488
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.NO_POSITION_INFORMATION);
4444
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.NO_POSITION_INFORMATION);
4489
4445
  }
4490
- const sortedInstances = (0,sortInstancesByPosition/* default */.A)(instances);
4446
+ const sortedInstances = (0,sortInstancesByPosition/* default */.Z)(instances);
4491
4447
  isMultiframe ? checkMultiFrame(sortedInstances[0], messages) : checkSingleFrames(sortedInstances, messages);
4492
4448
  if (!isReconstructable) {
4493
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.NOT_RECONSTRUCTABLE);
4449
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.NOT_RECONSTRUCTABLE);
4494
4450
  }
4495
4451
  return messages;
4496
4452
  }
@@ -4501,9 +4457,9 @@ function getDisplaySetMessages(instances, isReconstructable, isDynamicVolume) {
4501
4457
  * Default handler for a instance list with an unsupported sopClassUID
4502
4458
  */
4503
4459
  function getDisplaySetsFromUnsupportedSeries(instances) {
4504
- const imageSet = new ImageSet/* default */.A(instances);
4505
- const messages = new src/* DisplaySetMessageList */.WZ();
4506
- messages.addMessage(src/* DisplaySetMessage */.Ob.CODES.UNSUPPORTED_DISPLAYSET);
4460
+ const imageSet = new ImageSet/* default */.Z(instances);
4461
+ const messages = new src/* DisplaySetMessageList */.iK();
4462
+ messages.addMessage(src/* DisplaySetMessage */.Lt.CODES.UNSUPPORTED_DISPLAYSET);
4507
4463
  const instance = instances[0];
4508
4464
  imageSet.setAttributes({
4509
4465
  displaySetInstanceUID: imageSet.uid,
@@ -4653,9 +4609,9 @@ function getDisplaySetInfo(instances) {
4653
4609
  // O(n) to convert it into a map and O(1) to find each instance
4654
4610
  instances.forEach(instance => instancesMap.set(instance.imageId, instance));
4655
4611
  const firstTimePointInstances = timePoint.map(imageId => instancesMap.get(imageId));
4656
- displaySetInfo = (0,isDisplaySetReconstructable/* default */.Ay)(firstTimePointInstances, appConfig);
4612
+ displaySetInfo = (0,isDisplaySetReconstructable/* default */.ZP)(firstTimePointInstances, appConfig);
4657
4613
  } else {
4658
- displaySetInfo = (0,isDisplaySetReconstructable/* default */.Ay)(instances, appConfig);
4614
+ displaySetInfo = (0,isDisplaySetReconstructable/* default */.ZP)(instances, appConfig);
4659
4615
  }
4660
4616
  return {
4661
4617
  isDynamicVolume,
@@ -4665,7 +4621,7 @@ function getDisplaySetInfo(instances) {
4665
4621
  }
4666
4622
  const makeDisplaySet = instances => {
4667
4623
  const instance = instances[0];
4668
- const imageSet = new ImageSet/* default */.A(instances);
4624
+ const imageSet = new ImageSet/* default */.Z(instances);
4669
4625
  const {
4670
4626
  isDynamicVolume,
4671
4627
  value: isReconstructable,
@@ -4760,7 +4716,7 @@ function getDisplaySetsFromSeries(instances) {
4760
4716
  const stackableInstances = [];
4761
4717
  instances.forEach(instance => {
4762
4718
  // All imaging modalities must have a valid value for sopClassUid (x00080016) or rows (x00280010)
4763
- if (!(0,isImage/* isImage */.w)(instance.SOPClassUID) && !instance.Rows) {
4719
+ if (!(0,isImage/* isImage */.O)(instance.SOPClassUID) && !instance.Rows) {
4764
4720
  return;
4765
4721
  }
4766
4722
  let displaySet;
@@ -4796,7 +4752,7 @@ function getDisplaySetsFromSeries(instances) {
4796
4752
  }
4797
4753
  return displaySets;
4798
4754
  }
4799
- const getSopClassHandlerModule_sopClassUids = [sopClassDictionary/* default */.A.ComputedRadiographyImageStorage, sopClassDictionary/* default */.A.DigitalXRayImageStorageForPresentation, sopClassDictionary/* default */.A.DigitalXRayImageStorageForProcessing, sopClassDictionary/* default */.A.DigitalMammographyXRayImageStorageForPresentation, sopClassDictionary/* default */.A.DigitalMammographyXRayImageStorageForProcessing, sopClassDictionary/* default */.A.DigitalIntraOralXRayImageStorageForPresentation, sopClassDictionary/* default */.A.DigitalIntraOralXRayImageStorageForProcessing, sopClassDictionary/* default */.A.CTImageStorage, sopClassDictionary/* default */.A.EnhancedCTImageStorage, sopClassDictionary/* default */.A.LegacyConvertedEnhancedCTImageStorage, sopClassDictionary/* default */.A.UltrasoundMultiframeImageStorage, sopClassDictionary/* default */.A.MRImageStorage, sopClassDictionary/* default */.A.EnhancedMRImageStorage, sopClassDictionary/* default */.A.EnhancedMRColorImageStorage, sopClassDictionary/* default */.A.LegacyConvertedEnhancedMRImageStorage, sopClassDictionary/* default */.A.UltrasoundImageStorage, sopClassDictionary/* default */.A.UltrasoundImageStorageRET, sopClassDictionary/* default */.A.SecondaryCaptureImageStorage, sopClassDictionary/* default */.A.MultiframeSingleBitSecondaryCaptureImageStorage, sopClassDictionary/* default */.A.MultiframeGrayscaleByteSecondaryCaptureImageStorage, sopClassDictionary/* default */.A.MultiframeGrayscaleWordSecondaryCaptureImageStorage, sopClassDictionary/* default */.A.MultiframeTrueColorSecondaryCaptureImageStorage, sopClassDictionary/* default */.A.XRayAngiographicImageStorage, sopClassDictionary/* default */.A.EnhancedXAImageStorage, sopClassDictionary/* default */.A.XRayRadiofluoroscopicImageStorage, sopClassDictionary/* default */.A.EnhancedXRFImageStorage, sopClassDictionary/* default */.A.XRay3DAngiographicImageStorage, sopClassDictionary/* default */.A.XRay3DCraniofacialImageStorage, sopClassDictionary/* default */.A.BreastTomosynthesisImageStorage, sopClassDictionary/* default */.A.BreastProjectionXRayImageStorageForPresentation, sopClassDictionary/* default */.A.BreastProjectionXRayImageStorageForProcessing, sopClassDictionary/* default */.A.IntravascularOpticalCoherenceTomographyImageStorageForPresentation, sopClassDictionary/* default */.A.IntravascularOpticalCoherenceTomographyImageStorageForProcessing, sopClassDictionary/* default */.A.NuclearMedicineImageStorage, sopClassDictionary/* default */.A.VLEndoscopicImageStorage, sopClassDictionary/* default */.A.VideoEndoscopicImageStorage, sopClassDictionary/* default */.A.VLMicroscopicImageStorage, sopClassDictionary/* default */.A.VideoMicroscopicImageStorage, sopClassDictionary/* default */.A.VLSlideCoordinatesMicroscopicImageStorage, sopClassDictionary/* default */.A.VLPhotographicImageStorage, sopClassDictionary/* default */.A.VideoPhotographicImageStorage, sopClassDictionary/* default */.A.OphthalmicPhotography8BitImageStorage, sopClassDictionary/* default */.A.OphthalmicPhotography16BitImageStorage, sopClassDictionary/* default */.A.OphthalmicTomographyImageStorage, sopClassDictionary/* default */.A.VLWholeSlideMicroscopyImageStorage, sopClassDictionary/* default */.A.PositronEmissionTomographyImageStorage, sopClassDictionary/* default */.A.EnhancedPETImageStorage, sopClassDictionary/* default */.A.LegacyConvertedEnhancedPETImageStorage, sopClassDictionary/* default */.A.RTImageStorage, sopClassDictionary/* default */.A.EnhancedUSVolumeStorage];
4755
+ const getSopClassHandlerModule_sopClassUids = [sopClassDictionary/* default */.Z.ComputedRadiographyImageStorage, sopClassDictionary/* default */.Z.DigitalXRayImageStorageForPresentation, sopClassDictionary/* default */.Z.DigitalXRayImageStorageForProcessing, sopClassDictionary/* default */.Z.DigitalMammographyXRayImageStorageForPresentation, sopClassDictionary/* default */.Z.DigitalMammographyXRayImageStorageForProcessing, sopClassDictionary/* default */.Z.DigitalIntraOralXRayImageStorageForPresentation, sopClassDictionary/* default */.Z.DigitalIntraOralXRayImageStorageForProcessing, sopClassDictionary/* default */.Z.CTImageStorage, sopClassDictionary/* default */.Z.EnhancedCTImageStorage, sopClassDictionary/* default */.Z.LegacyConvertedEnhancedCTImageStorage, sopClassDictionary/* default */.Z.UltrasoundMultiframeImageStorage, sopClassDictionary/* default */.Z.MRImageStorage, sopClassDictionary/* default */.Z.EnhancedMRImageStorage, sopClassDictionary/* default */.Z.EnhancedMRColorImageStorage, sopClassDictionary/* default */.Z.LegacyConvertedEnhancedMRImageStorage, sopClassDictionary/* default */.Z.UltrasoundImageStorage, sopClassDictionary/* default */.Z.UltrasoundImageStorageRET, sopClassDictionary/* default */.Z.SecondaryCaptureImageStorage, sopClassDictionary/* default */.Z.MultiframeSingleBitSecondaryCaptureImageStorage, sopClassDictionary/* default */.Z.MultiframeGrayscaleByteSecondaryCaptureImageStorage, sopClassDictionary/* default */.Z.MultiframeGrayscaleWordSecondaryCaptureImageStorage, sopClassDictionary/* default */.Z.MultiframeTrueColorSecondaryCaptureImageStorage, sopClassDictionary/* default */.Z.XRayAngiographicImageStorage, sopClassDictionary/* default */.Z.EnhancedXAImageStorage, sopClassDictionary/* default */.Z.XRayRadiofluoroscopicImageStorage, sopClassDictionary/* default */.Z.EnhancedXRFImageStorage, sopClassDictionary/* default */.Z.XRay3DAngiographicImageStorage, sopClassDictionary/* default */.Z.XRay3DCraniofacialImageStorage, sopClassDictionary/* default */.Z.BreastTomosynthesisImageStorage, sopClassDictionary/* default */.Z.BreastProjectionXRayImageStorageForPresentation, sopClassDictionary/* default */.Z.BreastProjectionXRayImageStorageForProcessing, sopClassDictionary/* default */.Z.IntravascularOpticalCoherenceTomographyImageStorageForPresentation, sopClassDictionary/* default */.Z.IntravascularOpticalCoherenceTomographyImageStorageForProcessing, sopClassDictionary/* default */.Z.NuclearMedicineImageStorage, sopClassDictionary/* default */.Z.VLEndoscopicImageStorage, sopClassDictionary/* default */.Z.VideoEndoscopicImageStorage, sopClassDictionary/* default */.Z.VLMicroscopicImageStorage, sopClassDictionary/* default */.Z.VideoMicroscopicImageStorage, sopClassDictionary/* default */.Z.VLSlideCoordinatesMicroscopicImageStorage, sopClassDictionary/* default */.Z.VLPhotographicImageStorage, sopClassDictionary/* default */.Z.VideoPhotographicImageStorage, sopClassDictionary/* default */.Z.OphthalmicPhotography8BitImageStorage, sopClassDictionary/* default */.Z.OphthalmicPhotography16BitImageStorage, sopClassDictionary/* default */.Z.OphthalmicTomographyImageStorage, sopClassDictionary/* default */.Z.VLWholeSlideMicroscopyImageStorage, sopClassDictionary/* default */.Z.PositronEmissionTomographyImageStorage, sopClassDictionary/* default */.Z.EnhancedPETImageStorage, sopClassDictionary/* default */.Z.LegacyConvertedEnhancedPETImageStorage, sopClassDictionary/* default */.Z.RTImageStorage, sopClassDictionary/* default */.Z.EnhancedUSVolumeStorage];
4800
4756
  function getSopClassHandlerModule(appContextParam) {
4801
4757
  appContext = appContextParam;
4802
4758
  return [{
@@ -4822,7 +4778,7 @@ function ToolbarDivider() {
4822
4778
  });
4823
4779
  }
4824
4780
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Toolbar/ToolbarLayoutSelector.tsx
4825
- function ToolbarLayoutSelector_extends() { ToolbarLayoutSelector_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return ToolbarLayoutSelector_extends.apply(this, arguments); }
4781
+ function ToolbarLayoutSelector_extends() { return ToolbarLayoutSelector_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, ToolbarLayoutSelector_extends.apply(null, arguments); }
4826
4782
 
4827
4783
 
4828
4784
 
@@ -4966,8 +4922,8 @@ function LayoutSelector({
4966
4922
  const onInteractionHandler = () => {
4967
4923
  setIsOpen(!isOpen);
4968
4924
  };
4969
- const DropdownContent = isOpen ? ui_src/* LayoutSelector */.sG : null;
4970
- return /*#__PURE__*/react.createElement(ui_src/* ToolbarButton */.IB, {
4925
+ const DropdownContent = isOpen ? ui_src/* LayoutSelector */.OF : null;
4926
+ return /*#__PURE__*/react.createElement(ui_src/* ToolbarButton */.hA, {
4971
4927
  id: "Layout",
4972
4928
  label: "Layout",
4973
4929
  icon: "tool-layout",
@@ -4984,7 +4940,7 @@ function LayoutSelector({
4984
4940
  className: "text-aqua-pale text-xs"
4985
4941
  }, "Common"), /*#__PURE__*/react.createElement("div", {
4986
4942
  className: "flex gap-4"
4987
- }, commonPresets.map((preset, index) => /*#__PURE__*/react.createElement(ui_src/* LayoutPreset */.qu, {
4943
+ }, commonPresets.map((preset, index) => /*#__PURE__*/react.createElement(ui_src/* LayoutPreset */.W6, {
4988
4944
  key: index,
4989
4945
  classNames: "hover:bg-primary-dark group p-1 cursor-pointer",
4990
4946
  icon: preset.icon,
@@ -4996,7 +4952,7 @@ function LayoutSelector({
4996
4952
  className: "text-aqua-pale text-xs"
4997
4953
  }, "Advanced"), /*#__PURE__*/react.createElement("div", {
4998
4954
  className: "flex flex-col gap-2.5"
4999
- }, advancedPresets.map((preset, index) => /*#__PURE__*/react.createElement(ui_src/* LayoutPreset */.qu, {
4955
+ }, advancedPresets.map((preset, index) => /*#__PURE__*/react.createElement(ui_src/* LayoutPreset */.W6, {
5000
4956
  key: index + commonPresets.length,
5001
4957
  classNames: "hover:bg-primary-dark group flex gap-2 p-1 cursor-pointer",
5002
4958
  icon: preset.icon,
@@ -5027,7 +4983,7 @@ LayoutSelector.propTypes = {
5027
4983
  };
5028
4984
  /* harmony default export */ const ToolbarLayoutSelector = (ToolbarLayoutSelectorWithServices);
5029
4985
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Toolbar/ToolbarSplitButtonWithServices.tsx
5030
- function ToolbarSplitButtonWithServices_extends() { ToolbarSplitButtonWithServices_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return ToolbarSplitButtonWithServices_extends.apply(this, arguments); }
4986
+ function ToolbarSplitButtonWithServices_extends() { return ToolbarSplitButtonWithServices_extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, ToolbarSplitButtonWithServices_extends.apply(null, arguments); }
5031
4987
 
5032
4988
 
5033
4989
 
@@ -5056,9 +5012,9 @@ function ToolbarSplitButtonWithServices({
5056
5012
  });
5057
5013
  }
5058
5014
  })), []);
5059
- const PrimaryButtonComponent = toolbarService?.getButtonComponentForUIType(primary.uiType) ?? ui_src/* ToolbarButton */.IB;
5015
+ const PrimaryButtonComponent = toolbarService?.getButtonComponentForUIType(primary.uiType) ?? ui_src/* ToolbarButton */.hA;
5060
5016
  const listItemRenderer = renderer;
5061
- return /*#__PURE__*/react.createElement(ui_src/* SplitButton */.fk, {
5017
+ return /*#__PURE__*/react.createElement(ui_src/* SplitButton */.aW, {
5062
5018
  primary: primary,
5063
5019
  secondary: secondary,
5064
5020
  items: getSplitButtonItems(items),
@@ -5110,7 +5066,7 @@ function ToolbarButtonGroupWithServices({
5110
5066
  onInteraction,
5111
5067
  size
5112
5068
  }) {
5113
- const getSplitButtonItems = (0,react.useCallback)(items => items.map((item, index) => /*#__PURE__*/react.createElement(ui_src/* ToolbarButton */.IB, {
5069
+ const getSplitButtonItems = (0,react.useCallback)(items => items.map((item, index) => /*#__PURE__*/react.createElement(ui_src/* ToolbarButton */.hA, {
5114
5070
  key: item.id,
5115
5071
  icon: item.icon,
5116
5072
  label: item.label,
@@ -5132,7 +5088,7 @@ function ToolbarButtonGroupWithServices({
5132
5088
  ,
5133
5089
  toolTipClassName: ""
5134
5090
  })), [onInteraction, groupId]);
5135
- return /*#__PURE__*/react.createElement(ui_src/* ButtonGroup */.e2, null, getSplitButtonItems(items));
5091
+ return /*#__PURE__*/react.createElement(ui_src/* ButtonGroup */.hE, null, getSplitButtonItems(items));
5136
5092
  }
5137
5093
  /* harmony default export */ const Toolbar_ToolbarButtonGroupWithServices = (ToolbarButtonGroupWithServices);
5138
5094
  ;// CONCATENATED MODULE: ../../../extensions/default/src/Components/ProgressDropdownWithService.tsx
@@ -5210,7 +5166,7 @@ function ProgressDropdownWithService({
5210
5166
  unsubActiveStepChanged();
5211
5167
  };
5212
5168
  }, [servicesManager, workflowStepsService]);
5213
- return /*#__PURE__*/react.createElement(ui_src/* ProgressDropdown */.LW, {
5169
+ return /*#__PURE__*/react.createElement(ui_src/* ProgressDropdown */.LU, {
5214
5170
  options: dropdownOptions,
5215
5171
  value: activeStepId,
5216
5172
  onChange: handleDropdownChange
@@ -5237,7 +5193,7 @@ function getToolbarModule({
5237
5193
  } = servicesManager.services;
5238
5194
  return [{
5239
5195
  name: 'ohif.radioGroup',
5240
- defaultComponent: ui_src/* ToolbarButton */.IB
5196
+ defaultComponent: ui_src/* ToolbarButton */.hA
5241
5197
  }, {
5242
5198
  name: 'ohif.divider',
5243
5199
  defaultComponent: ToolbarDivider
@@ -5454,9 +5410,9 @@ function adaptItem(item, subProps) {
5454
5410
  return newItem;
5455
5411
  }
5456
5412
  // EXTERNAL MODULE: ../../ui/src/components/ContextMenu/ContextMenu.tsx
5457
- var ContextMenu = __webpack_require__(117);
5413
+ var ContextMenu = __webpack_require__(58705);
5458
5414
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js
5459
- var dist_esm = __webpack_require__(39371);
5415
+ var dist_esm = __webpack_require__(93725);
5460
5416
  ;// CONCATENATED MODULE: ../../../extensions/default/src/CustomizableContextMenu/ContextMenuController.tsx
5461
5417
  var _ContextMenuController;
5462
5418
 
@@ -5527,7 +5483,7 @@ class ContextMenuController {
5527
5483
  preventCutOf: true,
5528
5484
  defaultPosition: ContextMenuController._getDefaultPosition(defaultPointsPosition, event?.detail, viewportElement),
5529
5485
  event,
5530
- content: ContextMenu/* default */.A,
5486
+ content: ContextMenu/* default */.Z,
5531
5487
  // This naming is part of the uiDialogService convention
5532
5488
  // Clicking outside simply closes the dialog box.
5533
5489
  onClickOutside: () => this.services.uiDialogService.dismiss({
@@ -5675,12 +5631,12 @@ const defaultContextMenu = {
5675
5631
 
5676
5632
 
5677
5633
  // EXTERNAL MODULE: ../../../node_modules/moment/moment.js
5678
- var moment = __webpack_require__(8291);
5634
+ var moment = __webpack_require__(71271);
5679
5635
  var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
5680
5636
  // EXTERNAL MODULE: ../../../node_modules/react-window/dist/index.esm.js
5681
- var index_esm = __webpack_require__(6943);
5637
+ var index_esm = __webpack_require__(94614);
5682
5638
  // EXTERNAL MODULE: ../../../node_modules/classnames/index.js
5683
- var classnames = __webpack_require__(61466);
5639
+ var classnames = __webpack_require__(33901);
5684
5640
  var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
5685
5641
  ;// CONCATENATED MODULE: ../../../extensions/default/src/DicomTagBrowser/DicomTagTable.tsx
5686
5642
 
@@ -5854,7 +5810,7 @@ function DicomTagTable({
5854
5810
  style: {
5855
5811
  height: '32rem'
5856
5812
  }
5857
- }, isHeaderRendered() && /*#__PURE__*/react.createElement(index_esm/* VariableSizeList */._m, {
5813
+ }, isHeaderRendered() && /*#__PURE__*/react.createElement(index_esm/* VariableSizeList */.S_, {
5858
5814
  ref: listRef,
5859
5815
  height: 500,
5860
5816
  itemCount: rows.length,
@@ -5881,7 +5837,7 @@ const {
5881
5837
  } = src.classes;
5882
5838
  const {
5883
5839
  DicomMetaDictionary: DicomTagBrowser_DicomMetaDictionary
5884
- } = dcmjs_es/* default.data */.Ay.data;
5840
+ } = dcmjs_es["default"].data;
5885
5841
  const {
5886
5842
  nameMap
5887
5843
  } = DicomTagBrowser_DicomMetaDictionary;
@@ -5971,12 +5927,12 @@ const DicomTagBrowser = ({
5971
5927
  className: "mb-6 flex flex-row items-center pl-1"
5972
5928
  }, /*#__PURE__*/react.createElement("div", {
5973
5929
  className: "flex w-1/2 flex-row items-center"
5974
- }, /*#__PURE__*/react.createElement(ui_src/* Typography */.o5, {
5930
+ }, /*#__PURE__*/react.createElement(ui_src/* Typography */.ZT, {
5975
5931
  variant: "subtitle",
5976
5932
  className: "mr-4"
5977
5933
  }, "Series"), /*#__PURE__*/react.createElement("div", {
5978
5934
  className: "mr-8 grow"
5979
- }, /*#__PURE__*/react.createElement(ui_src/* Select */.l6, {
5935
+ }, /*#__PURE__*/react.createElement(ui_src/* Select */.Ph, {
5980
5936
  id: "display-set-selector",
5981
5937
  isClearable: false,
5982
5938
  onChange: onSelectChange,
@@ -5985,12 +5941,12 @@ const DicomTagBrowser = ({
5985
5941
  className: "text-white"
5986
5942
  }))), /*#__PURE__*/react.createElement("div", {
5987
5943
  className: "flex w-1/2 flex-row items-center"
5988
- }, showInstanceList && /*#__PURE__*/react.createElement(ui_src/* Typography */.o5, {
5944
+ }, showInstanceList && /*#__PURE__*/react.createElement(ui_src/* Typography */.ZT, {
5989
5945
  variant: "subtitle",
5990
5946
  className: "mr-4"
5991
5947
  }, "Instance Number"), showInstanceList && /*#__PURE__*/react.createElement("div", {
5992
5948
  className: "grow"
5993
- }, /*#__PURE__*/react.createElement(ui_src/* InputRange */.Qr, {
5949
+ }, /*#__PURE__*/react.createElement(ui_src/* InputRange */.OX, {
5994
5950
  value: instanceNumber,
5995
5951
  key: selectedDisplaySetInstanceUID,
5996
5952
  onChange: value => {
@@ -6006,7 +5962,7 @@ const DicomTagBrowser = ({
6006
5962
  className: "h-1 w-full bg-black"
6007
5963
  }), /*#__PURE__*/react.createElement("div", {
6008
5964
  className: "my-3 flex w-1/2 flex-row"
6009
- }, /*#__PURE__*/react.createElement(ui_src/* InputFilterText */.Cv, {
5965
+ }, /*#__PURE__*/react.createElement(ui_src/* InputFilterText */.Xe, {
6010
5966
  className: "mr-8 block w-full",
6011
5967
  placeholder: "Search metadata...",
6012
5968
  onDebounceChange: setFilterValue
@@ -6030,7 +5986,7 @@ function getFormattedRowsFromTags(tags, metadata) {
6030
5986
  } else {
6031
5987
  if (tagInfo.vr === 'xs') {
6032
5988
  try {
6033
- const tag = dcmjs_es/* default.data */.Ay.data.Tag.fromPString(tagInfo.tag).toCleanString();
5989
+ const tag = dcmjs_es["default"].data.Tag.fromPString(tagInfo.tag).toCleanString();
6034
5990
  const originalTagInfo = metadata[tag];
6035
5991
  tagInfo.vr = originalTagInfo.vr;
6036
5992
  } catch (error) {
@@ -6352,7 +6308,7 @@ const findViewportsByPosition = (state, {
6352
6308
  };
6353
6309
  /* harmony default export */ const src_findViewportsByPosition = (findViewportsByPosition);
6354
6310
  // EXTERNAL MODULE: ./index.js + 35 modules
6355
- var index = __webpack_require__(40335);
6311
+ var index = __webpack_require__(6317);
6356
6312
  ;// CONCATENATED MODULE: ../../../extensions/default/src/commandsModule.ts
6357
6313
 
6358
6314
 
@@ -6751,7 +6707,7 @@ const commandsModule = ({
6751
6707
  * for `replace` is false
6752
6708
  */
6753
6709
  navigateHistory(historyArgs) {
6754
- index/* history */.b.navigate(historyArgs.to, historyArgs.options);
6710
+ index/* history */.m.navigate(historyArgs.to, historyArgs.options);
6755
6711
  },
6756
6712
  openDICOMTagViewer() {
6757
6713
  const {
@@ -6820,12 +6776,7 @@ const commandsModule = ({
6820
6776
  excludeNonImageModalities
6821
6777
  }) => {
6822
6778
  const nonImageModalities = ['SR', 'SEG', 'SM', 'RTSTRUCT', 'RTPLAN', 'RTDOSE'];
6823
-
6824
- // Sort the display sets as per the hanging protocol service viewport/display set scoring system.
6825
- // The thumbnail list uses the same sorting.
6826
- const dsSortFn = hangingProtocolService.getDisplaySetSortFunction();
6827
6779
  const currentDisplaySets = [...displaySetService.activeDisplaySets];
6828
- currentDisplaySets.sort(dsSortFn);
6829
6780
  const {
6830
6781
  activeViewportId,
6831
6782
  viewports,
@@ -7879,8 +7830,8 @@ function getHangingProtocolModule() {
7879
7830
 
7880
7831
 
7881
7832
  function DataSourceSelector() {
7882
- const [appConfig] = (0,state/* useAppConfig */.r)();
7883
- const navigate = (0,dist/* useNavigate */.Zp)();
7833
+ const [appConfig] = (0,state/* useAppConfig */.M)();
7834
+ const navigate = (0,dist/* useNavigate */.s0)();
7884
7835
 
7885
7836
  // This is frowned upon, but the raw config is needed here to provide
7886
7837
  // the selector
@@ -7904,8 +7855,8 @@ function DataSourceSelector() {
7904
7855
  key: ds.sourceName
7905
7856
  }, /*#__PURE__*/react.createElement("h1", {
7906
7857
  className: "text-white"
7907
- }, ds.configuration?.friendlyName || ds.friendlyName), /*#__PURE__*/react.createElement(ui_src/* Button */.$n, {
7908
- type: ui_src/* ButtonEnums.type */.Ny.NW.primary,
7858
+ }, ds.configuration?.friendlyName || ds.friendlyName), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
7859
+ type: ui_src/* ButtonEnums.type */.LZ.dt.primary,
7909
7860
  className: classnames_default()('ml-2'),
7910
7861
  onClick: () => {
7911
7862
  navigate({
@@ -7928,7 +7879,7 @@ function ItemListComponent({
7928
7879
  }) {
7929
7880
  const {
7930
7881
  t
7931
- } = (0,es/* useTranslation */.Bd)('DataSourceConfiguration');
7882
+ } = (0,es/* useTranslation */.$G)('DataSourceConfiguration');
7932
7883
  const [filterValue, setFilterValue] = (0,react.useState)('');
7933
7884
  (0,react.useEffect)(() => {
7934
7885
  setFilterValue('');
@@ -7939,18 +7890,18 @@ function ItemListComponent({
7939
7890
  className: "flex items-center justify-between"
7940
7891
  }, /*#__PURE__*/react.createElement("div", {
7941
7892
  className: "text-primary-light text-[20px]"
7942
- }, t(`Select ${itemLabel}`)), /*#__PURE__*/react.createElement(ui_src/* InputFilterText */.Cv, {
7893
+ }, t(`Select ${itemLabel}`)), /*#__PURE__*/react.createElement(ui_src/* InputFilterText */.Xe, {
7943
7894
  className: "max-w-[40%] grow",
7944
7895
  value: filterValue,
7945
7896
  onDebounceChange: setFilterValue,
7946
7897
  placeholder: t(`Search ${itemLabel} list`)
7947
7898
  })), /*#__PURE__*/react.createElement("div", {
7948
7899
  className: "relative flex min-h-[1px] grow flex-col bg-black text-[14px]"
7949
- }, itemList == null ? /*#__PURE__*/react.createElement(ui_src/* LoadingIndicatorProgress */.Jx, {
7900
+ }, itemList == null ? /*#__PURE__*/react.createElement(ui_src/* LoadingIndicatorProgress */.LE, {
7950
7901
  className: 'h-full w-full'
7951
7902
  }) : itemList.length === 0 ? /*#__PURE__*/react.createElement("div", {
7952
7903
  className: "text-primary-light flex h-full flex-col items-center justify-center px-6 py-4"
7953
- }, /*#__PURE__*/react.createElement(ui_src/* Icon */.In, {
7904
+ }, /*#__PURE__*/react.createElement(ui_src/* Icon */.JO, {
7954
7905
  name: "magnifier",
7955
7906
  className: "mb-4"
7956
7907
  }), /*#__PURE__*/react.createElement("span", null, t(`No ${itemLabel} available`))) : /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("div", {
@@ -7962,10 +7913,10 @@ function ItemListComponent({
7962
7913
  return /*#__PURE__*/react.createElement("div", {
7963
7914
  className: classnames_default()('hover:text-primary-light hover:bg-primary-dark group mx-2 flex items-center justify-between px-6 py-2', border),
7964
7915
  key: item.id
7965
- }, /*#__PURE__*/react.createElement("div", null, item.name), /*#__PURE__*/react.createElement(ui_src/* Button */.$n, {
7916
+ }, /*#__PURE__*/react.createElement("div", null, item.name), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
7966
7917
  onClick: () => onItemClicked(item),
7967
7918
  className: "invisible group-hover:visible",
7968
- endIcon: /*#__PURE__*/react.createElement(ui_src/* Icon */.In, {
7919
+ endIcon: /*#__PURE__*/react.createElement(ui_src/* Icon */.JO, {
7969
7920
  name: "arrow-left"
7970
7921
  })
7971
7922
  }, t('Select')));
@@ -7986,7 +7937,7 @@ function DataSourceConfigurationModalComponent({
7986
7937
  }) {
7987
7938
  const {
7988
7939
  t
7989
- } = (0,es/* useTranslation */.Bd)('DataSourceConfiguration');
7940
+ } = (0,es/* useTranslation */.$G)('DataSourceConfiguration');
7990
7941
  const [itemList, setItemList] = (0,react.useState)();
7991
7942
  const [selectedItems, setSelectedItems] = (0,react.useState)(configuredItems);
7992
7943
  const [errorMessage, setErrorMessage] = (0,react.useState)();
@@ -8060,9 +8011,9 @@ function DataSourceConfigurationModalComponent({
8060
8011
  } : undefined
8061
8012
  }, /*#__PURE__*/react.createElement("div", {
8062
8013
  className: "text- flex items-center gap-2"
8063
- }, itemLabelIndex < selectedItems.length ? /*#__PURE__*/react.createElement(ui_src/* Icon */.In, {
8014
+ }, itemLabelIndex < selectedItems.length ? /*#__PURE__*/react.createElement(ui_src/* Icon */.JO, {
8064
8015
  name: "status-tracked"
8065
- }) : /*#__PURE__*/react.createElement(ui_src/* Icon */.In, {
8016
+ }) : /*#__PURE__*/react.createElement(ui_src/* Icon */.JO, {
8066
8017
  name: "status-untracked"
8067
8018
  }), /*#__PURE__*/react.createElement("div", {
8068
8019
  className: classnames_default()(NO_WRAP_ELLIPSIS_CLASS_NAMES)
@@ -8096,11 +8047,11 @@ function DataSourceConfigurationComponent({
8096
8047
  }) {
8097
8048
  const {
8098
8049
  t
8099
- } = (0,es/* useTranslation */.Bd)('DataSourceConfiguration');
8050
+ } = (0,es/* useTranslation */.$G)('DataSourceConfiguration');
8100
8051
  const {
8101
8052
  show,
8102
8053
  hide
8103
- } = (0,ui_src/* useModal */.hS)();
8054
+ } = (0,ui_src/* useModal */.dd)();
8104
8055
  const {
8105
8056
  customizationService
8106
8057
  } = servicesManager.services;
@@ -8159,7 +8110,7 @@ function DataSourceConfigurationComponent({
8159
8110
  }, [configurationAPI, configuredItems, showConfigurationModal]);
8160
8111
  return configuredItems ? /*#__PURE__*/react.createElement("div", {
8161
8112
  className: "text-aqua-pale flex items-center overflow-hidden"
8162
- }, /*#__PURE__*/react.createElement(ui_src/* Icon */.In, {
8113
+ }, /*#__PURE__*/react.createElement(ui_src/* Icon */.JO, {
8163
8114
  name: "settings",
8164
8115
  className: "mr-2.5 h-3.5 w-3.5 shrink-0 cursor-pointer",
8165
8116
  onClick: showConfigurationModal
@@ -8348,6 +8299,8 @@ class GoogleCloudDataSourceConfigurationAPI {
8348
8299
 
8349
8300
 
8350
8301
 
8302
+ const getCustomizationModule_formatDate = src.utils.formatDate;
8303
+
8351
8304
  /**
8352
8305
  *
8353
8306
  * Note: this is an example of how the customization module can be used
@@ -8490,6 +8443,21 @@ function getCustomizationModule({
8490
8443
  }, {
8491
8444
  id: 'progressDropdownWithServiceComponent',
8492
8445
  component: ProgressDropdownWithService
8446
+ }, {
8447
+ id: 'studyBrowser.sortFunctions',
8448
+ values: [{
8449
+ label: 'Series Number',
8450
+ sortFunction: (a, b) => {
8451
+ return a?.SeriesNumber - b?.SeriesNumber;
8452
+ }
8453
+ }, {
8454
+ label: 'Series Date',
8455
+ sortFunction: (a, b) => {
8456
+ const dateA = new Date(getCustomizationModule_formatDate(a?.SeriesDate));
8457
+ const dateB = new Date(getCustomizationModule_formatDate(b?.SeriesDate));
8458
+ return dateB.getTime() - dateA.getTime();
8459
+ }
8460
+ }]
8493
8461
  }]
8494
8462
  }];
8495
8463
  }
@@ -8504,7 +8472,7 @@ const LineChartViewport = ({
8504
8472
  axis: chartAxis,
8505
8473
  series: chartSeries
8506
8474
  } = displaySet.instance.chartData;
8507
- return /*#__PURE__*/react.createElement(ui_src/* LineChart */.bl, {
8475
+ return /*#__PURE__*/react.createElement(ui_src/* LineChart */.wW, {
8508
8476
  showLegend: true,
8509
8477
  legendWidth: 150,
8510
8478
  axis: {
@@ -8542,10 +8510,10 @@ const getViewportModule = ({
8542
8510
  };
8543
8511
 
8544
8512
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/calculate-suv/dist/calculate-suv.esm.js
8545
- var calculate_suv_esm = __webpack_require__(79717);
8513
+ var calculate_suv_esm = __webpack_require__(15747);
8546
8514
  ;// CONCATENATED MODULE: ../../../extensions/default/src/getPTImageIdInstanceMetadata.ts
8547
8515
 
8548
- const getPTImageIdInstanceMetadata_metadataProvider = src/* default.classes */.Ay.classes.MetadataProvider;
8516
+ const getPTImageIdInstanceMetadata_metadataProvider = src["default"].classes.MetadataProvider;
8549
8517
  function getPTImageIdInstanceMetadata(imageId) {
8550
8518
  const dicomMetaData = getPTImageIdInstanceMetadata_metadataProvider.get('instance', imageId);
8551
8519
  if (!dicomMetaData) {
@@ -8801,7 +8769,7 @@ const handlePETImageMetadata = ({
8801
8769
  if (!instanceMetadataArray.length) {
8802
8770
  return;
8803
8771
  }
8804
- const suvScalingFactors = (0,calculate_suv_esm/* calculateSUVScalingFactors */.C)(instanceMetadataArray);
8772
+ const suvScalingFactors = (0,calculate_suv_esm/* calculateSUVScalingFactors */.d)(instanceMetadataArray);
8805
8773
  instanceMetadataArray.forEach((instanceMetadata, index) => {
8806
8774
  init_metadataProvider.addCustomMetadata(imageIds[index], 'scalingModule', suvScalingFactors[index]);
8807
8775
  });