@ohif/app 3.8.0-beta.25 → 3.8.0-beta.27

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 (30) hide show
  1. package/dist/{170.bundle.ba2b6bb9a1910e348f9c.js → 170.bundle.80ad57e16afc8855b0fc.js} +9 -9
  2. package/dist/{181.bundle.8bbcaf31270dd56cad1f.js → 181.bundle.87f1df4f401b8023cfd1.js} +4 -4
  3. package/dist/{185.bundle.4a026a3eda76e8d34517.js → 185.bundle.2d7c72ca2f461d711df9.js} +2 -2
  4. package/dist/{199.bundle.d8b92b7ec7c7dd91d160.js → 199.bundle.30893a2f3da90d37b0d9.js} +2 -2
  5. package/dist/{202.bundle.07442d396db3161ee7f3.js → 202.bundle.a607e9ab460999d8c0c8.js} +4 -3
  6. package/dist/{250.bundle.de8df38690c1305b2f8a.js → 250.bundle.5634282a01bd6e15b70d.js} +2 -2
  7. package/dist/{544.bundle.b2b65dd140e9854cb129.js → 26.bundle.c92012465cee00a2a708.js} +8919 -7195
  8. package/dist/{420.bundle.d2a09d89c3e8177bc0d9.js → 420.bundle.208f94f15dcc2be09dc0.js} +7 -7
  9. package/dist/{466.bundle.fd2557fe99960d7ee96b.js → 466.bundle.be8d38922b545c9657dd.js} +4 -4
  10. package/dist/{483.bundle.067bce093473b53dd0f7.js → 483.bundle.4866c3396b19964a0010.js} +4 -4
  11. package/dist/{613.bundle.40f071699be75c012842.js → 613.bundle.b3839caf45bff66f2667.js} +5 -2
  12. package/dist/{738.bundle.5b64bfcded95e22063af.js → 738.bundle.a9dd630892da1e5dcabf.js} +7 -3
  13. package/dist/{822.bundle.1f4c9e059e87914fc12a.js → 822.bundle.775a62e1f79c403f3aed.js} +2 -2
  14. package/dist/{47.bundle.3217b1b873983a6aaa43.js → 95.bundle.db9d2d504abc5dd4fdfa.js} +8 -142
  15. package/dist/{965.bundle.9b78983e1a5791031169.js → 965.bundle.fc770e33fa48b72621cc.js} +9 -0
  16. package/dist/{app.bundle.2406c53a19408fc29486.js → app.bundle.25093dca29b89b580c6b.js} +471 -85
  17. package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
  18. package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
  19. package/dist/index.html +1 -1
  20. package/dist/serve.json +12 -0
  21. package/dist/sw.js +1 -1
  22. package/package.json +19 -19
  23. /package/dist/{12.bundle.37529fdf74d10cccda3d.js → 12.bundle.56b9d54b9c0af71af1d7.js} +0 -0
  24. /package/dist/{19.bundle.706b1020e6d744b4a772.js → 19.bundle.3dd19edbc75a5aebd1de.js} +0 -0
  25. /package/dist/{281.bundle.bfa24595c2dcbcfc227a.js → 281.bundle.fc5d5a58827c8ba054b0.js} +0 -0
  26. /package/dist/{359.bundle.eabc596f016eb73fa622.js → 359.bundle.644102e1339a5769fe43.js} +0 -0
  27. /package/dist/{410.bundle.1736835db3336e98c495.js → 410.bundle.089c191e6500a09de5f5.js} +0 -0
  28. /package/dist/{506.bundle.ca89ebd941bebab77590.js → 506.bundle.9fbbe1b884e79e06a3f6.js} +0 -0
  29. /package/dist/{687.bundle.2ac3cd797e3d5be5f053.js → 687.bundle.bc44675be7433cd8670b.js} +0 -0
  30. /package/dist/{814.bundle.1328537fe47b9a202135.js → 814.bundle.b5267cf0fefd476ea55d.js} +0 -0
@@ -35,14 +35,14 @@ __webpack_require__.r(types_namespaceObject);
35
35
 
36
36
  // EXTERNAL MODULE: ../../../node_modules/react/index.js
37
37
  var react = __webpack_require__(43001);
38
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 356 modules
39
- var esm = __webpack_require__(63442);
40
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 394 modules
41
- var dist_esm = __webpack_require__(91544);
38
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 363 modules
39
+ var esm = __webpack_require__(56959);
40
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 413 modules
41
+ var dist_esm = __webpack_require__(1026);
42
42
  // EXTERNAL MODULE: ../../core/src/index.ts + 65 modules
43
43
  var src = __webpack_require__(71771);
44
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/index.js + 15 modules
45
- var streaming_image_volume_loader_dist_esm = __webpack_require__(32483);
44
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/index.js + 13 modules
45
+ var streaming_image_volume_loader_dist_esm = __webpack_require__(15793);
46
46
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/dicom-image-loader/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js
47
47
  var cornerstoneDICOMImageLoader_min = __webpack_require__(61539);
48
48
  var cornerstoneDICOMImageLoader_min_default = /*#__PURE__*/__webpack_require__.n(cornerstoneDICOMImageLoader_min);
@@ -9503,7 +9503,7 @@ const reset = () => {
9503
9503
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
9504
9504
  /* harmony export */ Z: () => (/* binding */ getSOPInstanceAttributes)
9505
9505
  /* harmony export */ });
9506
- /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(63442);
9506
+ /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(56959);
9507
9507
 
9508
9508
 
9509
9509
  /**
@@ -24,8 +24,8 @@ const SOPClassHandlerId = `${id}.sopClassHandlerModule.${SOPClassHandlerName}`;
24
24
  var react = __webpack_require__(43001);
25
25
  // EXTERNAL MODULE: ../../core/src/index.ts + 65 modules
26
26
  var src = __webpack_require__(71771);
27
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 356 modules
28
- var esm = __webpack_require__(63442);
27
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 363 modules
28
+ var esm = __webpack_require__(56959);
29
29
  // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/adapters/dist/adapters.es.js
30
30
  var adapters_es = __webpack_require__(91202);
31
31
  // EXTERNAL MODULE: ../../../node_modules/dcmjs/build/dcmjs.es.js
@@ -698,8 +698,8 @@ PanelSegmentation.propTypes = {
698
698
  }).isRequired
699
699
  }).isRequired
700
700
  };
701
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 394 modules
702
- var dist_esm = __webpack_require__(91544);
701
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 413 modules
702
+ var dist_esm = __webpack_require__(1026);
703
703
  ;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/panels/SegmentationToolbox.tsx
704
704
 
705
705
 
@@ -1542,10 +1542,10 @@ function getPanelModule(_ref) {
1542
1542
  }];
1543
1543
  }
1544
1544
  /* harmony default export */ const src_getPanelModule = (getPanelModule);
1545
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 394 modules
1546
- var esm = __webpack_require__(91544);
1547
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 356 modules
1548
- var dist_esm = __webpack_require__(63442);
1545
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 413 modules
1546
+ var esm = __webpack_require__(1026);
1547
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 363 modules
1548
+ var dist_esm = __webpack_require__(56959);
1549
1549
  ;// CONCATENATED MODULE: ../../../extensions/tmtv/src/utils/measurementServiceMappings/constants/supportedTools.js
1550
1550
  /* harmony default export */ const supportedTools = (['RectangleROIStartEndThreshold']);
1551
1551
  ;// CONCATENATED MODULE: ../../../extensions/tmtv/src/utils/measurementServiceMappings/utils/getSOPInstanceAttributes.js
@@ -474,8 +474,11 @@ function modeFactory(_ref) {
474
474
  let {
475
475
  modalities
476
476
  } = _ref4;
477
- if (modalities.length === 1) {
478
- return !['SM', 'US', 'MG', 'OT', 'DOC', 'CR'].includes(modalities[0]);
477
+ // Don't show the mode if the selected studies have only one modality
478
+ // that is not supported by the mode
479
+ const modalitiesArray = modalities.split('\\');
480
+ if (modalitiesArray.length === 1) {
481
+ return !['SM', 'US', 'MG', 'OT', 'DOC', 'CR'].includes(modalitiesArray[0]);
479
482
  }
480
483
  return true;
481
484
  },
@@ -2566,8 +2566,8 @@ function ViewerHeader(_ref) {
2566
2566
  hotkeyDefinitions,
2567
2567
  hotkeyDefaults
2568
2568
  } = hotkeysManager;
2569
- const versionNumber = "3.8.0-beta.25";
2570
- const commitHash = "924affa7b5d420c2f91522a075cecbb3c78e8f52";
2569
+ const versionNumber = "3.8.0-beta.27";
2570
+ const commitHash = "6651008fbb35dabd5991c7f61128e6ef324012df";
2571
2571
  const menuOptions = [{
2572
2572
  title: t('Header:About'),
2573
2573
  icon: 'info',
@@ -3608,6 +3608,7 @@ function findSRWithSameSeriesDescription(SeriesDescription, displaySetService) {
3608
3608
 
3609
3609
 
3610
3610
 
3611
+
3611
3612
  const {
3612
3613
  downloadCSVReport
3613
3614
  } = src.utils;
@@ -3617,6 +3618,9 @@ function PanelMeasurementTable(_ref) {
3617
3618
  commandsManager,
3618
3619
  extensionManager
3619
3620
  } = _ref;
3621
+ const {
3622
+ t
3623
+ } = (0,es/* useTranslation */.$G)('MeasurementTable');
3620
3624
  const [viewportGrid, viewportGridService] = (0,ui_src/* useViewportGrid */.O_)();
3621
3625
  const {
3622
3626
  activeViewportId,
@@ -3817,7 +3821,7 @@ function PanelMeasurementTable(_ref) {
3817
3821
  className: "ohif-scrollbar overflow-y-auto overflow-x-hidden",
3818
3822
  "data-cy": 'measurements-panel'
3819
3823
  }, /*#__PURE__*/react.createElement(ui_src/* MeasurementTable */.wt, {
3820
- title: "Measurements",
3824
+ title: t("Measurements"),
3821
3825
  servicesManager: servicesManager,
3822
3826
  data: displayMeasurements,
3823
3827
  onClick: jumpToImage,
@@ -14,9 +14,9 @@ __webpack_require__.r(__webpack_exports__);
14
14
  /* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(71771);
15
15
  /* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(22582);
16
16
  /* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(69190);
17
- /* harmony import */ var _cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(91544);
17
+ /* harmony import */ var _cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(1026);
18
18
  /* harmony import */ var _getContextModule__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(41832);
19
- /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(63442);
19
+ /* harmony import */ var _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(56959);
20
20
  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); }
21
21
 
22
22
 
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
- (self["webpackChunk"] = self["webpackChunk"] || []).push([[47],{
2
+ (self["webpackChunk"] = self["webpackChunk"] || []).push([[95],{
3
3
 
4
- /***/ 32483:
4
+ /***/ 15793:
5
5
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6
6
 
7
7
 
@@ -12,151 +12,22 @@ __webpack_require__.d(__webpack_exports__, {
12
12
 
13
13
  // UNUSED EXPORTS: Enums, StreamingDynamicImageVolume, StreamingImageVolume, cornerstoneStreamingDynamicImageVolumeLoader, helpers
14
14
 
15
- // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 356 modules
16
- var esm = __webpack_require__(63442);
15
+ // EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 363 modules
16
+ var esm = __webpack_require__(56959);
17
17
  // EXTERNAL MODULE: ../../../node_modules/gl-matrix/esm/index.js + 10 modules
18
18
  var gl_matrix_esm = __webpack_require__(45451);
19
- ;// CONCATENATED MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/helpers/makeVolumeMetadata.js
20
-
21
- function makeVolumeMetadata_makeVolumeMetadata(imageIds) {
22
- const imageId0 = imageIds[0];
23
- const { pixelRepresentation, bitsAllocated, bitsStored, highBit, photometricInterpretation, samplesPerPixel, } = esm.metaData.get('imagePixelModule', imageId0);
24
- const voiLut = [];
25
- const voiLutModule = esm.metaData.get('voiLutModule', imageId0);
26
- let voiLUTFunction;
27
- if (voiLutModule) {
28
- const { windowWidth, windowCenter } = voiLutModule;
29
- voiLUTFunction = voiLutModule?.voiLUTFunction;
30
- if (Array.isArray(windowWidth)) {
31
- for (let i = 0; i < windowWidth.length; i++) {
32
- voiLut.push({
33
- windowWidth: windowWidth[i],
34
- windowCenter: windowCenter[i],
35
- });
36
- }
37
- }
38
- else {
39
- voiLut.push({
40
- windowWidth: windowWidth,
41
- windowCenter: windowCenter,
42
- });
43
- }
44
- }
45
- else {
46
- voiLut.push({
47
- windowWidth: undefined,
48
- windowCenter: undefined,
49
- });
50
- }
51
- const { modality, seriesInstanceUID } = esm.metaData.get('generalSeriesModule', imageId0);
52
- const { imageOrientationPatient, pixelSpacing, frameOfReferenceUID, columns, rows, } = esm.metaData.get('imagePlaneModule', imageId0);
53
- return {
54
- BitsAllocated: bitsAllocated,
55
- BitsStored: bitsStored,
56
- SamplesPerPixel: samplesPerPixel,
57
- HighBit: highBit,
58
- PhotometricInterpretation: photometricInterpretation,
59
- PixelRepresentation: pixelRepresentation,
60
- Modality: modality,
61
- ImageOrientationPatient: imageOrientationPatient,
62
- PixelSpacing: pixelSpacing,
63
- FrameOfReferenceUID: frameOfReferenceUID,
64
- Columns: columns,
65
- Rows: rows,
66
- voiLut,
67
- VOILUTFunction: voiLUTFunction,
68
- SeriesInstanceUID: seriesInstanceUID,
69
- };
70
- }
71
-
72
- ;// CONCATENATED MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/helpers/sortImageIdsAndGetSpacing.js
73
-
74
-
75
- function sortImageIdsAndGetSpacing_sortImageIdsAndGetSpacing(imageIds, scanAxisNormal) {
76
- const { imagePositionPatient: referenceImagePositionPatient } = esm.metaData.get('imagePlaneModule', imageIds[0]);
77
- const refIppVec = gl_matrix_esm/* vec3.create */.R3.create();
78
- const usingWadoUri = imageIds[0].split(':')[0] === 'wadouri';
79
- gl_matrix_esm/* vec3.set */.R3.set(refIppVec, referenceImagePositionPatient[0], referenceImagePositionPatient[1], referenceImagePositionPatient[2]);
80
- let sortedImageIds;
81
- let zSpacing;
82
- function getDistance(imageId) {
83
- const { imagePositionPatient } = esm.metaData.get('imagePlaneModule', imageId);
84
- const positionVector = gl_matrix_esm/* vec3.create */.R3.create();
85
- gl_matrix_esm/* vec3.sub */.R3.sub(positionVector, referenceImagePositionPatient, imagePositionPatient);
86
- return gl_matrix_esm/* vec3.dot */.R3.dot(positionVector, scanAxisNormal);
87
- }
88
- if (!usingWadoUri) {
89
- const distanceImagePairs = imageIds.map((imageId) => {
90
- const distance = getDistance(imageId);
91
- return {
92
- distance,
93
- imageId,
94
- };
95
- });
96
- distanceImagePairs.sort((a, b) => b.distance - a.distance);
97
- sortedImageIds = distanceImagePairs.map((a) => a.imageId);
98
- const numImages = distanceImagePairs.length;
99
- zSpacing =
100
- Math.abs(distanceImagePairs[numImages - 1].distance -
101
- distanceImagePairs[0].distance) /
102
- (numImages - 1);
103
- }
104
- else {
105
- const prefetchedImageIds = [
106
- imageIds[0],
107
- imageIds[Math.floor(imageIds.length / 2)],
108
- ];
109
- sortedImageIds = imageIds;
110
- const firstImageDistance = getDistance(prefetchedImageIds[0]);
111
- const middleImageDistance = getDistance(prefetchedImageIds[1]);
112
- if (firstImageDistance - middleImageDistance < 0) {
113
- sortedImageIds.reverse();
114
- }
115
- const metadataForMiddleImage = esm.metaData.get('imagePlaneModule', prefetchedImageIds[1]);
116
- if (!metadataForMiddleImage) {
117
- throw new Error('Incomplete metadata required for volume construction.');
118
- }
119
- const positionVector = gl_matrix_esm/* vec3.create */.R3.create();
120
- gl_matrix_esm/* vec3.sub */.R3.sub(positionVector, referenceImagePositionPatient, metadataForMiddleImage.imagePositionPatient);
121
- const distanceBetweenFirstAndMiddleImages = gl_matrix_esm/* vec3.dot */.R3.dot(positionVector, scanAxisNormal);
122
- zSpacing =
123
- Math.abs(distanceBetweenFirstAndMiddleImages) /
124
- Math.floor(imageIds.length / 2);
125
- }
126
- const { imagePositionPatient: origin, sliceThickness } = esm.metaData.get('imagePlaneModule', sortedImageIds[0]);
127
- const { strictZSpacingForVolumeViewport } = (0,esm.getConfiguration)().rendering;
128
- if (zSpacing === 0 && !strictZSpacingForVolumeViewport) {
129
- if (sliceThickness) {
130
- console.log('Could not calculate zSpacing. Using sliceThickness');
131
- zSpacing = sliceThickness;
132
- }
133
- else {
134
- console.log('Could not calculate zSpacing. The VolumeViewport visualization is compromised. Setting zSpacing to 1 to render');
135
- zSpacing = 1;
136
- }
137
- }
138
- const result = {
139
- zSpacing,
140
- origin,
141
- sortedImageIds,
142
- };
143
- return result;
144
- }
145
-
146
19
  ;// CONCATENATED MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/helpers/getVolumeInfo.js
147
20
 
148
21
 
149
-
150
-
151
22
  const { createUint8SharedArray, createFloat32SharedArray } = esm.utilities;
152
23
  function getVolumeInfo_getVolumeInfo(imageIds) {
153
- const volumeMetadata = makeVolumeMetadata(imageIds);
24
+ const volumeMetadata = utilities.makeVolumeMetadata(imageIds);
154
25
  const { BitsAllocated, PixelRepresentation, PhotometricInterpretation, ImageOrientationPatient, PixelSpacing, Columns, Rows, } = volumeMetadata;
155
26
  const rowCosineVec = vec3.fromValues(ImageOrientationPatient[0], ImageOrientationPatient[1], ImageOrientationPatient[2]);
156
27
  const colCosineVec = vec3.fromValues(ImageOrientationPatient[3], ImageOrientationPatient[4], ImageOrientationPatient[5]);
157
28
  const scanAxisNormal = vec3.create();
158
29
  vec3.cross(scanAxisNormal, rowCosineVec, colCosineVec);
159
- const { zSpacing, origin, sortedImageIds } = sortImageIdsAndGetSpacing(imageIds, scanAxisNormal);
30
+ const { zSpacing, origin, sortedImageIds } = utilities.sortImageIdsAndGetSpacing(imageIds, scanAxisNormal);
160
31
  const numFrames = imageIds.length;
161
32
  const spacing = [PixelSpacing[1], PixelSpacing[0], zSpacing];
162
33
  const dimensions = [Columns, Rows, numFrames];
@@ -310,8 +181,6 @@ function scaleArray(array, scalingParameters) {
310
181
 
311
182
 
312
183
 
313
-
314
-
315
184
  ;// CONCATENATED MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/BaseStreamingImageVolume.js
316
185
 
317
186
 
@@ -964,7 +833,6 @@ class StreamingImageVolume extends BaseStreamingImageVolume_BaseStreamingImageVo
964
833
 
965
834
 
966
835
 
967
-
968
836
  const { createUint8SharedArray: cornerstoneStreamingImageVolumeLoader_createUint8SharedArray, createFloat32SharedArray: cornerstoneStreamingImageVolumeLoader_createFloat32SharedArray, createUint16SharedArray, createInt16SharedArray, } = esm.utilities;
969
837
  function cornerstoneStreamingImageVolumeLoader(volumeId, options) {
970
838
  if (!options || !options.imageIds || !options.imageIds.length) {
@@ -996,7 +864,7 @@ function cornerstoneStreamingImageVolumeLoader(volumeId, options) {
996
864
  })).catch(console.error);
997
865
  }
998
866
  const { imageIds, progressiveRendering } = options;
999
- const volumeMetadata = makeVolumeMetadata_makeVolumeMetadata(imageIds);
867
+ const volumeMetadata = esm.utilities.makeVolumeMetadata(imageIds);
1000
868
  const imageIdIndex = Math.floor(imageIds.length / 2);
1001
869
  const imageId = imageIds[imageIdIndex];
1002
870
  const scalingParameters = esm.utilities.getScalingParameters(imageId);
@@ -1009,7 +877,7 @@ function cornerstoneStreamingImageVolumeLoader(volumeId, options) {
1009
877
  const colCosineVec = gl_matrix_esm/* vec3.fromValues */.R3.fromValues(ImageOrientationPatient[3], ImageOrientationPatient[4], ImageOrientationPatient[5]);
1010
878
  const scanAxisNormal = gl_matrix_esm/* vec3.create */.R3.create();
1011
879
  gl_matrix_esm/* vec3.cross */.R3.cross(scanAxisNormal, rowCosineVec, colCosineVec);
1012
- const { zSpacing, origin, sortedImageIds } = sortImageIdsAndGetSpacing_sortImageIdsAndGetSpacing(imageIds, scanAxisNormal);
880
+ const { zSpacing, origin, sortedImageIds } = esm.utilities.sortImageIdsAndGetSpacing(imageIds, scanAxisNormal);
1013
881
  const numFrames = imageIds.length;
1014
882
  const spacing = [PixelSpacing[1], PixelSpacing[0], zSpacing];
1015
883
  const dimensions = [Columns, Rows, numFrames];
@@ -1292,10 +1160,8 @@ function cornerstoneStreamingDynamicImageVolumeLoader(volumeId, options) {
1292
1160
 
1293
1161
 
1294
1162
 
1295
-
1296
1163
  const helpers = {
1297
1164
  getDynamicVolumeInfo: helpers_getDynamicVolumeInfo,
1298
- sortImageIdsAndGetSpacing: sortImageIdsAndGetSpacing_sortImageIdsAndGetSpacing,
1299
1165
  };
1300
1166
 
1301
1167
 
@@ -2655,7 +2655,16 @@ const MicroscopyViewport = props => {
2655
2655
  const {
2656
2656
  activeViewportId
2657
2657
  } = viewportGrid;
2658
+
2659
+ // a unique identifier based on the contents of displaySets.
2660
+ // since we changed our rendering pipeline and if there is no
2661
+ // element size change nor viewportId change we won't re-render
2662
+ // we need a way to force re-rendering when displaySets change.
2663
+ const displaySetsKey = (0,react.useMemo)(() => {
2664
+ return props.displaySets.map(ds => ds.displaySetInstanceUID).join('-');
2665
+ }, [props.displaySets]);
2658
2666
  return /*#__PURE__*/react.createElement(MicroscopyViewport, _extends({
2667
+ key: displaySetsKey,
2659
2668
  servicesManager: servicesManager,
2660
2669
  extensionManager: extensionManager,
2661
2670
  commandsManager: commandsManager,