@ohif/app 3.8.0 → 3.8.2

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 (46) hide show
  1. package/dist/{117.bundle.77cc4e62d0de5d843e2e.js → 117.bundle.17ae130d2bb21ef9d31f.js} +75 -80
  2. package/dist/{121.bundle.47f05840a5b3cdf75543.js → 121.bundle.27d181784f24551bc546.js} +2 -1
  3. package/dist/{164.bundle.b101cb64d04a22453984.js → 164.bundle.e30009bee13acb6967da.js} +554 -311
  4. package/dist/{236.bundle.f774cdc955890e6cdac9.js → 236.bundle.79a374f5fdf7fde431f4.js} +753 -140
  5. package/dist/{188.bundle.f2b81ec70ae344f57183.js → 243.bundle.7891b41d969264043783.js} +8 -8
  6. package/dist/{325.bundle.5012b0285b6baadd1884.js → 325.bundle.bfb7de5a397beae16d24.js} +11 -11
  7. package/dist/{342.bundle.36ee082163b01284eeba.js → 342.bundle.17f0c50a27c0ba1f3846.js} +7 -0
  8. package/dist/{203.bundle.3581da3a32a0b720d3a7.js → 370.bundle.e4cd6c20d3496c949374.js} +614 -455
  9. package/dist/{448.bundle.35b8f8e262fa954026df.js → 448.bundle.375bbf6d00a23e35f229.js} +2 -2
  10. package/dist/{483.bundle.581b242d7b90866fdfb9.js → 483.bundle.016de3c3ec209d9fa42a.js} +16 -3
  11. package/dist/{487.bundle.79aff4db7df5f383b423.js → 487.bundle.205821cf073b4d0d2e71.js} +2 -2
  12. package/dist/{416.bundle.9b0d7559344fd02c9e08.js → 501.bundle.de519580f8ba42802378.js} +1206 -305
  13. package/dist/{530.bundle.207b38c15c4c01e4db0e.js → 530.bundle.17b9a34fefff133e5379.js} +3 -3
  14. package/dist/{544.bundle.3542927ec15c3f688c8d.js → 544.bundle.170c67e76a6900a9a644.js} +4 -4
  15. package/dist/{206.bundle.e1ea316389b21006d3df.js → 545.bundle.c9cc3bd30adc9904cf64.js} +28 -24
  16. package/dist/{321.bundle.39a76114e54cd9833c43.js → 550.bundle.53604ec87839bd9b4a49.js} +82 -49
  17. package/dist/{574.bundle.4b059c95cd34efdc9cb3.js → 574.bundle.b369b11b04c3e080f0b3.js} +40 -37
  18. package/dist/{41.bundle.64e0da470e235cfac4bb.js → 682.bundle.fdd752d2920107f695fb.js} +26 -6
  19. package/dist/{699.bundle.b9666b1d4ddf7e8577ee.js → 699.bundle.fee3d1c6609ecc557a9a.js} +32 -3
  20. package/dist/{669.bundle.64309c677c5ca188348c.js → 721.bundle.d01a6829ac9b0abef67d.js} +73 -73
  21. package/dist/{722.bundle.52eb61926d08a08793fe.js → 722.bundle.1242e0348afc63ca4f5e.js} +10 -4
  22. package/dist/{724.bundle.72aef9dfca69ae057d37.js → 776.bundle.bb8a64b917ff1e559734.js} +13 -15
  23. package/dist/{862.bundle.9897a9b748078d53f9ab.js → 862.bundle.59bb164ca7e871a33e44.js} +1 -1
  24. package/dist/{889.bundle.b6231f995fd098f7e3f9.js → 889.bundle.5b10c495e1442d648ffc.js} +8 -8
  25. package/dist/{905.bundle.cd3e2b347340dd47a1b0.js → 905.bundle.1ba21a0406473fc92696.js} +2 -2
  26. package/dist/{907.bundle.723a425dedf8147243d2.js → 907.bundle.b199f25916a94c4ebb97.js} +2 -2
  27. package/dist/{473.bundle.11f707c8170ade2eb56a.js → 914.bundle.2b3a856b7d41ac8298e6.js} +510 -272
  28. package/dist/{94.bundle.33ca3bc10aa42716dbbb.js → 94.bundle.ae3ca435b134c95aea2e.js} +38 -8
  29. package/dist/{961.bundle.2c4663737c970764a41e.js → 961.bundle.d1b25d8f354bde3be17c.js} +2 -2
  30. package/dist/{7.bundle.94692aed50fe4ba2e2f5.js → 981.bundle.808058a6555d322675e1.js} +15 -15
  31. package/dist/{594.bundle.c292423defd9581bfbe3.js → 989.bundle.b929ddc23c16980560de.js} +5 -5
  32. package/dist/{633.bundle.e258ba4843985e67336a.js → 998.bundle.df083f740270855652bd.js} +21 -20
  33. package/dist/app-config.js +5 -1
  34. package/dist/{app.bundle.a05edb830ad2ecd67aac.js → app.bundle.7fa3782f7fa236cc53a8.js} +791 -568
  35. package/dist/app.bundle.css +1 -1
  36. package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
  37. package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
  38. package/dist/google.js +1 -0
  39. package/dist/index.html +1 -1
  40. package/dist/{polySeg.bundle.4442dd3318266fddf4d0.js → polySeg.bundle.36ddebc98d8b109edf33.js} +3 -3
  41. package/dist/{suv-peak-worker.bundle.348c016f7f973d05f2d2.js → suv-peak-worker.bundle.f4df597fab47d977d7f3.js} +3 -3
  42. package/dist/sw.js +1 -1
  43. package/package.json +18 -18
  44. /package/dist/{321.css → 550.css} +0 -0
  45. /package/dist/{783.bundle.11d774eb13ffc74cdca5.js → 783.bundle.f4f09b94ebe4d1a466b1.js} +0 -0
  46. /package/dist/{633.css → 998.css} +0 -0
@@ -18,8 +18,8 @@ const package_namespaceObject = /*#__PURE__*/JSON.parse('{"UU":"@ohif/mode-precl
18
18
 
19
19
  const id = package_namespaceObject.UU;
20
20
 
21
- // EXTERNAL MODULE: ../../core/src/index.ts + 70 modules
22
- var src = __webpack_require__(55411);
21
+ // EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
22
+ var src = __webpack_require__(8633);
23
23
  ;// CONCATENATED MODULE: ../../../modes/preclinical-4d/src/getWorkflowSettings.ts
24
24
  const dynamicVolume = {
25
25
  sopClassHandler: '@ohif/extension-cornerstone-dynamic-volume.sopClassHandlerModule.dynamic-volume',
@@ -133,7 +133,20 @@ const toolGroupIds = {
133
133
  Fusion: 'dynamic4D-fusion',
134
134
  CT: 'dynamic4D-ct'
135
135
  };
136
- function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
136
+ const colours = {
137
+ 'viewport-0': 'rgb(200, 0, 0)',
138
+ 'viewport-1': 'rgb(200, 200, 0)',
139
+ 'viewport-2': 'rgb(0, 200, 0)'
140
+ };
141
+ const colorsByOrientation = {
142
+ axial: 'rgb(200, 0, 0)',
143
+ sagittal: 'rgb(200, 200, 0)',
144
+ coronal: 'rgb(0, 200, 0)'
145
+ };
146
+ function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager, servicesManager) {
147
+ const {
148
+ cornerstoneViewportService
149
+ } = servicesManager.services;
137
150
  const tools = {
138
151
  active: [{
139
152
  toolName: toolNames.WindowLevel,
@@ -237,11 +250,26 @@ function _initToolGroups(toolNames, Enums, toolGroupService, commandsManager) {
237
250
  disabled: [{
238
251
  toolName: toolNames.Crosshairs,
239
252
  configuration: {
240
- viewportIndicators: false,
253
+ viewportIndicators: true,
254
+ viewportIndicatorsConfig: {
255
+ circleRadius: 5,
256
+ xOffset: 0.95,
257
+ yOffset: 0.05
258
+ },
241
259
  disableOnPassive: true,
242
260
  autoPan: {
243
261
  enabled: false,
244
262
  panSize: 10
263
+ },
264
+ getReferenceLineColor: viewportId => {
265
+ const viewportInfo = cornerstoneViewportService.getViewportInfo(viewportId);
266
+ const viewportOptions = viewportInfo?.viewportOptions;
267
+ if (viewportOptions) {
268
+ return colours[viewportOptions.id] || colorsByOrientation[viewportOptions.orientation] || '#0c0';
269
+ } else {
270
+ console.warn('missing viewport?', viewportId);
271
+ return '#0c0';
272
+ }
245
273
  }
246
274
  }
247
275
  }]
@@ -270,9 +298,10 @@ function initToolGroups({
270
298
  toolNames,
271
299
  Enums,
272
300
  toolGroupService,
273
- commandsManager
301
+ commandsManager,
302
+ servicesManager
274
303
  }) {
275
- _initToolGroups(toolNames, Enums, toolGroupService, commandsManager);
304
+ _initToolGroups(toolNames, Enums, toolGroupService, commandsManager, servicesManager);
276
305
  }
277
306
 
278
307
  ;// CONCATENATED MODULE: ../../../modes/preclinical-4d/src/toolbarButtons.tsx
@@ -538,7 +567,7 @@ const segmentationButtons_toolbarButtons = [{
538
567
  min: 0,
539
568
  max: 100,
540
569
  step: 0.5,
541
- values: [2, 50],
570
+ value: [2, 50],
542
571
  commands: {
543
572
  commandName: 'setThresholdRange',
544
573
  commandOptions: {
@@ -639,7 +668,8 @@ function modeFactory({
639
668
  toolNames,
640
669
  Enums,
641
670
  toolGroupService,
642
- commandsManager
671
+ commandsManager,
672
+ servicesManager
643
673
  });
644
674
  toolbarService.addButtons([...src_toolbarButtons, ...segmentationButtons]);
645
675
  toolbarService.createButtonSection('secondary', ['ProgressDropdown']);
@@ -21,8 +21,8 @@ const package_namespaceObject = /*#__PURE__*/JSON.parse('{"UU":"@ohif/extension-
21
21
  const id = package_namespaceObject.UU;
22
22
  const SOPClassHandlerId = `${id}.sopClassHandlerModule.dicom-video`;
23
23
 
24
- // EXTERNAL MODULE: ../../core/src/index.ts + 70 modules
25
- var src = __webpack_require__(55411);
24
+ // EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
25
+ var src = __webpack_require__(8633);
26
26
  ;// CONCATENATED MODULE: ../../../extensions/dicom-video/src/getSopClassHandlerModule.js
27
27
 
28
28
 
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[7],{
2
+ (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[981],{
3
3
 
4
- /***/ 89007:
4
+ /***/ 93981:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -128,7 +128,7 @@ const ptAXIAL = {
128
128
  source: true,
129
129
  target: false,
130
130
  options: {
131
- syncInvertState: false
131
+ syncColormap: false
132
132
  }
133
133
  }]
134
134
  },
@@ -168,7 +168,7 @@ const ptSAGITTAL = {
168
168
  source: true,
169
169
  target: false,
170
170
  options: {
171
- syncInvertState: false
171
+ syncColormap: false
172
172
  }
173
173
  }]
174
174
  },
@@ -208,7 +208,7 @@ const ptCORONAL = {
208
208
  source: true,
209
209
  target: false,
210
210
  options: {
211
- syncInvertState: false
211
+ syncColormap: false
212
212
  }
213
213
  }]
214
214
  },
@@ -256,7 +256,7 @@ const fusionAXIAL = {
256
256
  source: false,
257
257
  target: true,
258
258
  options: {
259
- syncInvertState: false
259
+ syncColormap: false
260
260
  }
261
261
  }]
262
262
  },
@@ -318,7 +318,7 @@ const fusionSAGITTAL = {
318
318
  source: false,
319
319
  target: true,
320
320
  options: {
321
- syncInvertState: false
321
+ syncColormap: false
322
322
  }
323
323
  }]
324
324
  },
@@ -380,7 +380,7 @@ const fusionCORONAL = {
380
380
  source: false,
381
381
  target: true,
382
382
  options: {
383
- syncInvertState: false
383
+ syncColormap: false
384
384
  }
385
385
  }]
386
386
  },
@@ -429,7 +429,7 @@ const mipSAGITTAL = {
429
429
  source: true,
430
430
  target: false,
431
431
  options: {
432
- syncInvertState: false
432
+ syncColormap: false
433
433
  }
434
434
  }],
435
435
  // Custom props can be used to set custom properties which extensions
@@ -725,8 +725,8 @@ var prop_types = __webpack_require__(11374);
725
725
  var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
726
726
  // EXTERNAL MODULE: ../../ui/src/index.js + 785 modules
727
727
  var src = __webpack_require__(5085);
728
- // EXTERNAL MODULE: ../../core/src/index.ts + 70 modules
729
- var core_src = __webpack_require__(55411);
728
+ // EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
729
+ var core_src = __webpack_require__(8633);
730
730
  // EXTERNAL MODULE: ../../../node_modules/react-i18next/dist/es/index.js + 15 modules
731
731
  var es = __webpack_require__(80619);
732
732
  ;// CONCATENATED MODULE: ../../../extensions/tmtv/src/Panels/PanelPetSUV.tsx
@@ -1529,7 +1529,7 @@ function dicomRTAnnotationExport(annotations) {
1529
1529
  ;// CONCATENATED MODULE: ../../../extensions/tmtv/src/utils/dicomRTAnnotationExport/RTStructureSet/index.js
1530
1530
 
1531
1531
  /* harmony default export */ const RTStructureSet = (dicomRTAnnotationExport);
1532
- ;// CONCATENATED MODULE: ../../../extensions/tmtv/src/commandsModule.js
1532
+ ;// CONCATENATED MODULE: ../../../extensions/tmtv/src/commandsModule.ts
1533
1533
 
1534
1534
 
1535
1535
 
@@ -1864,7 +1864,7 @@ const commandsModule = ({
1864
1864
  const referencedScalarData = esm.cache.getVolume(labelmap.referencedVolumeId).getScalarData();
1865
1865
  let segmentationMax = -Infinity;
1866
1866
  let segmentationMin = Infinity;
1867
- let segmentationValues = [];
1867
+ const segmentationValues = [];
1868
1868
  let voxelCount = 0;
1869
1869
  for (let i = 0; i < scalarData.length; i++) {
1870
1870
  if (scalarData[i] === segmentIndex) {
@@ -2060,7 +2060,7 @@ const commandsModule = ({
2060
2060
  if (!segmentations || !segmentations.length) {
2061
2061
  segmentations = segmentationService.getSegmentations();
2062
2062
  }
2063
- let report = {};
2063
+ const report = {};
2064
2064
  for (const segmentation of segmentations) {
2065
2065
  const {
2066
2066
  id,
@@ -2138,7 +2138,7 @@ const commandsModule = ({
2138
2138
  return;
2139
2139
  }
2140
2140
  const fusionViewportIds = toolGroup.getViewportIds();
2141
- let viewports = [];
2141
+ const viewports = [];
2142
2142
  fusionViewportIds.forEach(viewportId => {
2143
2143
  commandsManager.runCommand('setViewportColormap', {
2144
2144
  viewportId,
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[594],{
2
+ (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[989],{
3
3
 
4
- /***/ 26594:
4
+ /***/ 50989:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -14,8 +14,8 @@ __webpack_require__.d(__webpack_exports__, {
14
14
 
15
15
  // EXTERNAL MODULE: ../../ui/src/index.js + 785 modules
16
16
  var src = __webpack_require__(5085);
17
- // EXTERNAL MODULE: ../../core/src/index.ts + 70 modules
18
- var core_src = __webpack_require__(55411);
17
+ // EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
18
+ var core_src = __webpack_require__(8633);
19
19
  ;// CONCATENATED MODULE: ../../../modes/basic-dev-mode/src/toolbarButtons.js
20
20
 
21
21
 
@@ -235,7 +235,7 @@ const id = package_namespaceObject.UU;
235
235
 
236
236
  // EXTERNAL MODULE: ../../../node_modules/i18next/dist/esm/i18next.js
237
237
  var i18next = __webpack_require__(92344);
238
- ;// CONCATENATED MODULE: ../../../modes/basic-dev-mode/src/index.js
238
+ ;// CONCATENATED MODULE: ../../../modes/basic-dev-mode/src/index.ts
239
239
 
240
240
 
241
241
 
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[633,481],{
2
+ (globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[998,481],{
3
3
 
4
- /***/ 27400:
4
+ /***/ 32009:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
  // ESM COMPAT FLAG
@@ -22,8 +22,8 @@ const SOPClassHandlerId = `${id}.sopClassHandlerModule.${SOPClassHandlerName}`;
22
22
 
23
23
  // EXTERNAL MODULE: ../../../node_modules/react/index.js
24
24
  var react = __webpack_require__(41766);
25
- // EXTERNAL MODULE: ../../core/src/index.ts + 70 modules
26
- var src = __webpack_require__(55411);
25
+ // EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
26
+ var src = __webpack_require__(8633);
27
27
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 28 modules
28
28
  var esm = __webpack_require__(92136);
29
29
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js
@@ -45,7 +45,7 @@ function dicomlabToRGB(cielab) {
45
45
  return rgb;
46
46
  }
47
47
 
48
- ;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/getSopClassHandlerModule.js
48
+ ;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/getSopClassHandlerModule.ts
49
49
 
50
50
 
51
51
 
@@ -53,7 +53,7 @@ function dicomlabToRGB(cielab) {
53
53
 
54
54
 
55
55
  const sopClassUids = ['1.2.840.10008.5.1.4.1.1.66.4'];
56
- let loadPromises = {};
56
+ const loadPromises = {};
57
57
  function _getDisplaySetsFromSeries(instances, servicesManager, extensionManager) {
58
58
  const instance = instances[0];
59
59
  const {
@@ -317,8 +317,8 @@ function getHangingProtocolModule() {
317
317
  var state = __webpack_require__(15575);
318
318
  // EXTERNAL MODULE: ../../ui/src/index.js + 785 modules
319
319
  var ui_src = __webpack_require__(5085);
320
- // EXTERNAL MODULE: ../../../extensions/default/src/index.ts + 85 modules
321
- var default_src = __webpack_require__(7206);
320
+ // EXTERNAL MODULE: ../../../extensions/default/src/index.ts + 84 modules
321
+ var default_src = __webpack_require__(42545);
322
322
  // EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
323
323
  var prop_types = __webpack_require__(11374);
324
324
  var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
@@ -880,7 +880,7 @@ var ImageData = __webpack_require__(51250);
880
880
  * @param params.viewportId - ID of the viewport to be updated.
881
881
  * @param params.loadFn - Function to load the segmentation data.
882
882
  * @param params.servicesManager - The services manager.
883
- * @param params.referencedDisplaySetInstanceUID - Optional UID for the referenced display set instance.
883
+ * @param params.displaySet - the display set.
884
884
  *
885
885
  * @returns Returns true upon successful update of viewports for segmentation rendering.
886
886
  */
@@ -888,7 +888,7 @@ async function updateViewportsForSegmentationRendering({
888
888
  viewportId,
889
889
  loadFn,
890
890
  servicesManager,
891
- referencedDisplaySetInstanceUID
891
+ displaySet
892
892
  }) {
893
893
  const {
894
894
  cornerstoneViewportService,
@@ -900,11 +900,11 @@ async function updateViewportsForSegmentationRendering({
900
900
  viewportGridService
901
901
  });
902
902
  const targetViewportId = viewport.viewportOptions.viewportId;
903
- referencedDisplaySetInstanceUID = referencedDisplaySetInstanceUID || viewport?.displaySetInstanceUIDs[0];
903
+ const referencedDisplaySetInstanceUID = displaySet?.referencedDisplaySetInstanceUID || viewport?.displaySetInstanceUIDs[0];
904
904
  const updatedViewports = getUpdatedViewportsForSegmentation({
905
- servicesManager,
906
905
  viewportId,
907
- referencedDisplaySetInstanceUID
906
+ servicesManager,
907
+ displaySet
908
908
  });
909
909
 
910
910
  // create Segmentation callback which needs to be waited until
@@ -920,7 +920,7 @@ async function updateViewportsForSegmentationRendering({
920
920
  updatedViewports.forEach(async viewport => {
921
921
  viewport.viewportOptions = {
922
922
  ...viewport.viewportOptions,
923
- viewportType: 'volume',
923
+ viewportType: displaySet?.Modality === 'RTSTRUCT' ? 'stack' : 'volume',
924
924
  needsRerendering: true
925
925
  };
926
926
  const viewportId = viewport.viewportId;
@@ -929,7 +929,7 @@ async function updateViewportsForSegmentationRendering({
929
929
 
930
930
  // only run the createSegmentationForVolume for the targetViewportId
931
931
  // since the rest will get handled by cornerstoneViewportService
932
- if (volumeExists && viewportId === targetViewportId) {
932
+ if ((volumeExists || displaySet.Modality === 'RTSTRUCT') && viewportId === targetViewportId) {
933
933
  await createSegmentationForVolume();
934
934
  return;
935
935
  }
@@ -978,14 +978,14 @@ const getTargetViewport = ({
978
978
  * @param {Object} params - Parameters for the function.
979
979
  * @param params.viewportId - the ID of the viewport to be updated.
980
980
  * @param params.servicesManager - The services manager
981
- * @param params.referencedDisplaySetInstanceUID - Optional UID for the referenced display set instance.
981
+ * @param params.displaySet - the display set.
982
982
  *
983
983
  * @returns {Array} Returns an array of viewports that require updates for segmentation rendering.
984
984
  */
985
985
  function getUpdatedViewportsForSegmentation({
986
986
  viewportId,
987
987
  servicesManager,
988
- referencedDisplaySetInstanceUID
988
+ displaySet
989
989
  }) {
990
990
  const {
991
991
  hangingProtocolService,
@@ -1003,7 +1003,7 @@ function getUpdatedViewportsForSegmentation({
1003
1003
  });
1004
1004
  const targetViewportId = viewport.viewportOptions.viewportId;
1005
1005
  const displaySetInstanceUIDs = viewports.get(targetViewportId).displaySetInstanceUIDs;
1006
- const referenceDisplaySetInstanceUID = referencedDisplaySetInstanceUID || displaySetInstanceUIDs[0];
1006
+ const referenceDisplaySetInstanceUID = displaySet?.referencedDisplaySetInstanceUID || displaySetInstanceUIDs[0];
1007
1007
  const referencedDisplaySet = displaySetService.getDisplaySetByUID(referenceDisplaySetInstanceUID);
1008
1008
  const segmentationFrameOfReferenceUID = referencedDisplaySet.instances[0].FrameOfReferenceUID;
1009
1009
  const updatedViewports = hangingProtocolService.getViewportsRequireUpdate(targetViewportId, referenceDisplaySetInstanceUID, isHangingProtocolLayout);
@@ -1017,7 +1017,7 @@ function getUpdatedViewportsForSegmentation({
1017
1017
  viewportId,
1018
1018
  displaySetInstanceUIDs: viewport.displaySetInstanceUIDs,
1019
1019
  viewportOptions: {
1020
- viewportType: 'volume',
1020
+ viewportType: displaySet?.Modality === 'RTSTRUCT' ? 'stack' : 'volume',
1021
1021
  needsRerendering: true
1022
1022
  }
1023
1023
  });
@@ -1119,6 +1119,7 @@ const commandsModule = ({
1119
1119
  updateViewportsForSegmentationRendering({
1120
1120
  viewportId,
1121
1121
  servicesManager,
1122
+ displaySet,
1122
1123
  loadFn: async () => {
1123
1124
  const currentSegmentations = segmentationService.getSegmentations();
1124
1125
  const segmentationId = await segmentationService.createSegmentationForDisplaySet(displaySetInstanceUID, {
@@ -1225,7 +1226,7 @@ const commandsModule = ({
1225
1226
  updateViewportsForSegmentationRendering({
1226
1227
  viewportId,
1227
1228
  servicesManager,
1228
- referencedDisplaySetInstanceUID: displaySet.referencedDisplaySetInstanceUID,
1229
+ displaySet,
1229
1230
  loadFn: async () => {
1230
1231
  const segDisplaySet = displaySet;
1231
1232
  const suppressEvents = false;
@@ -1,4 +1,6 @@
1
- window.config = {
1
+ /** @type {AppTypes.Config} */
2
+
3
+ const config = {
2
4
  routerBasename: '/',
3
5
  // whiteLabeling: {},
4
6
  extensions: [],
@@ -232,3 +234,5 @@ window.config = {
232
234
  },
233
235
  ],
234
236
  };
237
+
238
+ window.config = config;