@ohif/app 3.11.0-beta.99 → 3.11.0
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.
- package/dist/{2676.bundle.7e194265450db9aa1e98.js → 1402.bundle.e5306db9171c6c9793a7.js} +1379 -857
- package/dist/{9625.bundle.88dafbecfb596dade1a7.js → 1447.bundle.976ce9f69636f66a9eab.js} +2401 -2422
- package/dist/{147.bundle.c27839e06e2e8cabf9e1.js → 147.bundle.e22bae08eb10c0a51314.js} +42 -122
- package/dist/{1919.bundle.c53e597a4d2109ef7c97.js → 1919.bundle.ca1ffebd2ee775dc2d82.js} +6 -4
- package/dist/{2011.bundle.c44c0094525a51b528f4.js → 2011.bundle.12539f6bbbfc20a372e9.js} +2726 -197
- package/dist/{6216.bundle.48ff7813b6b3b8aba5f0.js → 2345.bundle.1fedf5750caf46ce99d9.js} +1 -35
- package/dist/{2701.bundle.d5c7ef6ec8b6cd9c2dfa.js → 2701.bundle.f2c7a5ab4a8b49d73bff.js} +9 -9
- package/dist/{2974.bundle.54d5903a8b29f1b09299.js → 2974.bundle.ec95e58b346dbe30a362.js} +2 -0
- package/dist/{7750.bundle.216dafe3c87d611928da.js → 319.bundle.45c1c250b562a3feefa5.js} +296 -62
- package/dist/{3658.bundle.046b575faed9e6bf1915.js → 3658.bundle.4b03e3bc783328aab18f.js} +2 -2
- package/dist/{9594.bundle.e623f61b984d7ff3b4b6.js → 4019.bundle.e07cc2a71b6e189a706a.js} +31 -157
- package/dist/{4113.bundle.46086f61126bf7100c6b.js → 4113.bundle.3b3fed48ad784ccda1a1.js} +268 -67
- package/dist/{414.bundle.443f391e019ece702e08.js → 414.bundle.fac8463232edcfda0b6c.js} +15 -15
- package/dist/{4202.bundle.aa4161a7b8cb7c691072.js → 4202.bundle.f804c72fb887b9543506.js} +1 -1
- package/dist/{4759.bundle.4da90b9346bb5e377ac6.js → 4759.bundle.8686abdd7bcf4aa7d107.js} +2 -0
- package/dist/{5349.bundle.be4b2d9a58412788944e.js → 5349.bundle.c117cc60ab5ff40eed14.js} +2 -2
- package/dist/{6972.bundle.0992b530f9691709f6d8.js → 557.bundle.a0344a04ae7a43642402.js} +5541 -5283
- package/dist/{5674.bundle.6c0d445cbd151b6e7aa1.js → 5674.bundle.4e40a906351477a2a193.js} +2 -0
- package/dist/{6201.bundle.a43859b8c8d3c89d73fe.js → 6201.bundle.5d7b8937f331f965d1aa.js} +4 -4
- package/dist/{6376.bundle.de4abf332424cba7513e.js → 6376.bundle.24e14fa9bf28c7c86e7c.js} +1 -1
- package/dist/{1943.bundle.3cf999579ec18e369ae6.js → 6991.bundle.08967b6f5698660e3a19.js} +67 -51
- package/dist/{7190.bundle.a35063abb9cb95986e67.js → 7190.bundle.4448c5a66a997bea24ca.js} +45 -8
- package/dist/{7197.bundle.c43fa621a7f16a4ea598.js → 7197.bundle.b8ce1b612ab1eff5d3ee.js} +5 -5
- package/dist/{810.bundle.0012733e3c8a87684485.js → 810.bundle.84fc54342c180b8a3023.js} +6 -6
- package/dist/{8228.bundle.2df7b5c0e4e0fdbb3654.js → 8228.bundle.ec3557eae81cafaed8c9.js} +2 -2
- package/dist/{85.bundle.c2855f98bbc7af94324a.js → 85.bundle.f9908f1f7350e5027d37.js} +3 -2
- package/dist/{8558.bundle.b69313ff865d69505f3f.js → 8558.bundle.ead200c0f2518d73739f.js} +3 -1
- package/dist/{860.bundle.f0d3efcceec48a1147ee.js → 860.bundle.f90055bfb2088bf17617.js} +24 -1
- package/dist/{8740.bundle.d0f554795adaecf0292c.js → 8740.bundle.9e567165a05c863b9698.js} +18 -5
- package/dist/{8815.bundle.85f43d0109e9e8eb7d2f.js → 8815.bundle.9999a630034893a74508.js} +32 -10
- package/dist/{934.bundle.f60a5cfd492b9b2f80d7.js → 934.bundle.e620a43102a8abf8a1e3.js} +4 -2
- package/dist/{963.bundle.5a8404d29251b83344c9.js → 963.bundle.b2434897acfb3e8abee5.js} +29 -9
- package/dist/{1443.bundle.405ff549a88a585906f3.js → 9732.bundle.91cb05748bef4e4f67c2.js} +883 -1731
- package/dist/{9560.bundle.203976e64c9a0202e247.js → 9856.bundle.c34e4165e91ef095aa9f.js} +5853 -5649
- package/dist/{9862.bundle.11d2a0f6528e9e916e25.js → 9862.bundle.e404cb5f0e762fbf6a03.js} +2 -14
- package/dist/{5886.bundle.181e673d6d5a9333039a.js → 9892.bundle.364aba175ce50baeb46c.js} +35397 -32968
- package/dist/app-config.js +8 -0
- package/dist/{app.bundle.4c2206d03a480f25fa24.js → app.bundle.804c5a4cd283acda540d.js} +2239 -1468
- package/dist/{compute.bundle.06ee8311038e4ac2d34d.js → compute.bundle.a1c8365c4732e8b82ca3.js} +3 -3
- package/dist/index.html +1 -1
- package/dist/{interpolation.bundle.6b3b374f2888d3744e61.js → interpolation.bundle.488206d0a2c4fa1dd6c5.js} +1 -1
- package/dist/{polySeg.bundle.d8a36b40716862d016de.js → polySeg.bundle.02258624e0ec30e9934c.js} +3 -3
- package/dist/sw.js +1 -1
- package/package.json +22 -22
- /package/dist/{1459.bundle.ce20cf6141ce43861cb6.js → 1459.bundle.163c80965265cae11781.js} +0 -0
- /package/dist/{1807.bundle.b29feec5110c55747364.js → 1807.bundle.d79c83317de38e4cffbd.js} +0 -0
- /package/dist/{213.bundle.5f47c7726bac8015c955.js → 213.bundle.f8b1fd7851428f0fa02f.js} +0 -0
- /package/dist/{2424.bundle.efc13d194c408554908e.js → 2424.bundle.7469c5960e905196f646.js} +0 -0
- /package/dist/{6027.bundle.80487e243df9ca540b1e.js → 6027.bundle.ab73f6c39c04c7662744.js} +0 -0
- /package/dist/{7431.bundle.503dc3262479de76225b.js → 7431.bundle.494b080a8141ef60067a.js} +0 -0
- /package/dist/{7639.bundle.d266780fbc9fe5a0053f.js → 7639.bundle.664fc584f04ca34a4bf1.js} +0 -0
|
@@ -14,10 +14,8 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
14
14
|
|
|
15
15
|
// EXTERNAL MODULE: ../../../node_modules/react/index.js
|
|
16
16
|
var react = __webpack_require__(86326);
|
|
17
|
-
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js
|
|
18
|
-
var esm = __webpack_require__(4667);
|
|
19
17
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 1 modules
|
|
20
|
-
var
|
|
18
|
+
var esm = __webpack_require__(15327);
|
|
21
19
|
// EXTERNAL MODULE: ../../core/src/index.ts + 68 modules
|
|
22
20
|
var src = __webpack_require__(15871);
|
|
23
21
|
// EXTERNAL MODULE: ../../ui-next/src/index.ts + 3072 modules
|
|
@@ -63,7 +61,7 @@ function CornerstoneImageScrollbar({
|
|
|
63
61
|
isPlaying: false
|
|
64
62
|
});
|
|
65
63
|
}
|
|
66
|
-
|
|
64
|
+
esm.utilities.jumpToSlice(viewport.element, {
|
|
67
65
|
imageIndex,
|
|
68
66
|
debounceLoading: true
|
|
69
67
|
});
|
|
@@ -73,7 +71,7 @@ function CornerstoneImageScrollbar({
|
|
|
73
71
|
return;
|
|
74
72
|
}
|
|
75
73
|
const viewport = cornerstoneViewportService.getCornerstoneViewport(viewportId);
|
|
76
|
-
if (!viewport || viewport instanceof
|
|
74
|
+
if (!viewport || viewport instanceof esm.VolumeViewport3D) {
|
|
77
75
|
return;
|
|
78
76
|
}
|
|
79
77
|
try {
|
|
@@ -94,10 +92,10 @@ function CornerstoneImageScrollbar({
|
|
|
94
92
|
const {
|
|
95
93
|
viewportType
|
|
96
94
|
} = viewportData;
|
|
97
|
-
const eventId = viewportType ===
|
|
95
|
+
const eventId = viewportType === esm.Enums.ViewportType.STACK && esm.Enums.Events.STACK_NEW_IMAGE || viewportType === esm.Enums.ViewportType.ORTHOGRAPHIC && esm.Enums.Events.VOLUME_NEW_IMAGE || esm.Enums.Events.IMAGE_RENDERED;
|
|
98
96
|
const updateIndex = event => {
|
|
99
97
|
const viewport = cornerstoneViewportService.getCornerstoneViewport(viewportId);
|
|
100
|
-
if (!viewport || viewport instanceof
|
|
98
|
+
if (!viewport || viewport instanceof esm.VolumeViewport3D) {
|
|
101
99
|
return;
|
|
102
100
|
}
|
|
103
101
|
const {
|
|
@@ -136,6 +134,8 @@ CornerstoneImageScrollbar.propTypes = {
|
|
|
136
134
|
/* harmony default export */ const ViewportImageScrollbar = (CornerstoneImageScrollbar);
|
|
137
135
|
// EXTERNAL MODULE: ../../../node_modules/gl-matrix/esm/index.js + 1 modules
|
|
138
136
|
var gl_matrix_esm = __webpack_require__(3823);
|
|
137
|
+
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js
|
|
138
|
+
var dist_esm = __webpack_require__(4667);
|
|
139
139
|
// EXTERNAL MODULE: ../../../node_modules/moment/moment.js
|
|
140
140
|
var moment = __webpack_require__(14867);
|
|
141
141
|
var moment_default = /*#__PURE__*/__webpack_require__.n(moment);
|
|
@@ -316,27 +316,27 @@ function CustomizableViewportOverlay({
|
|
|
316
316
|
const {
|
|
317
317
|
windowWidth,
|
|
318
318
|
windowCenter
|
|
319
|
-
} =
|
|
319
|
+
} = esm.utilities.windowLevel.toWindowLevel(lower, upper);
|
|
320
320
|
setVOI({
|
|
321
321
|
windowCenter,
|
|
322
322
|
windowWidth
|
|
323
323
|
});
|
|
324
324
|
};
|
|
325
|
-
element.addEventListener(
|
|
325
|
+
element.addEventListener(esm.Enums.Events.VOI_MODIFIED, updateVOI);
|
|
326
326
|
return () => {
|
|
327
|
-
element.removeEventListener(
|
|
327
|
+
element.removeEventListener(esm.Enums.Events.VOI_MODIFIED, updateVOI);
|
|
328
328
|
};
|
|
329
329
|
}, [viewportId, viewportData, voi, element]);
|
|
330
330
|
const annotationModified = (0,react.useCallback)(evt => {
|
|
331
|
-
if (evt.detail.annotation.metadata.toolName ===
|
|
331
|
+
if (evt.detail.annotation.metadata.toolName === dist_esm.UltrasoundPleuraBLineTool.toolName) {
|
|
332
332
|
// Update the annotation state to trigger a re-render
|
|
333
333
|
setAnnotationState(prevState => prevState + 1);
|
|
334
334
|
}
|
|
335
335
|
}, []);
|
|
336
336
|
(0,react.useEffect)(() => {
|
|
337
|
-
|
|
337
|
+
esm.eventTarget.addEventListener(dist_esm.Enums.Events.ANNOTATION_MODIFIED, annotationModified);
|
|
338
338
|
return () => {
|
|
339
|
-
|
|
339
|
+
esm.eventTarget.removeEventListener(dist_esm.Enums.Events.ANNOTATION_MODIFIED, annotationModified);
|
|
340
340
|
};
|
|
341
341
|
}, [annotationModified]);
|
|
342
342
|
/**
|
|
@@ -357,9 +357,9 @@ function CustomizableViewportOverlay({
|
|
|
357
357
|
setScale(scale);
|
|
358
358
|
}
|
|
359
359
|
};
|
|
360
|
-
element.addEventListener(
|
|
360
|
+
element.addEventListener(esm.Enums.Events.CAMERA_MODIFIED, updateScale);
|
|
361
361
|
return () => {
|
|
362
|
-
element.removeEventListener(
|
|
362
|
+
element.removeEventListener(esm.Enums.Events.CAMERA_MODIFIED, updateScale);
|
|
363
363
|
};
|
|
364
364
|
}, [viewportId, viewportData, cornerstoneViewportService, element]);
|
|
365
365
|
const _renderOverlayItem = (0,react.useCallback)((item, props) => {
|
|
@@ -439,10 +439,10 @@ function getDisplaySets(viewportData, displaySetService) {
|
|
|
439
439
|
const getInstanceNumber = (viewportData, viewportId, imageIndex, cornerstoneViewportService) => {
|
|
440
440
|
let instanceNumber;
|
|
441
441
|
switch (viewportData.viewportType) {
|
|
442
|
-
case
|
|
442
|
+
case esm.Enums.ViewportType.STACK:
|
|
443
443
|
instanceNumber = _getInstanceNumberFromStack(viewportData, imageIndex);
|
|
444
444
|
break;
|
|
445
|
-
case
|
|
445
|
+
case esm.Enums.ViewportType.ORTHOGRAPHIC:
|
|
446
446
|
instanceNumber = _getInstanceNumberFromVolume(viewportData, viewportId, cornerstoneViewportService, imageIndex);
|
|
447
447
|
break;
|
|
448
448
|
}
|
|
@@ -454,7 +454,7 @@ function _getInstanceNumberFromStack(viewportData, imageIndex) {
|
|
|
454
454
|
if (!imageId) {
|
|
455
455
|
return;
|
|
456
456
|
}
|
|
457
|
-
const generalImageModule =
|
|
457
|
+
const generalImageModule = esm.metaData.get('generalImageModule', imageId) || {};
|
|
458
458
|
const {
|
|
459
459
|
instanceNumber
|
|
460
460
|
} = generalImageModule;
|
|
@@ -507,7 +507,7 @@ function _getInstanceNumberFromVolume(viewportData, viewportId, cornerstoneViewp
|
|
|
507
507
|
}
|
|
508
508
|
const {
|
|
509
509
|
instanceNumber
|
|
510
|
-
} =
|
|
510
|
+
} = esm.metaData.get('generalImageModule', imageId) || {};
|
|
511
511
|
return parseInt(instanceNumber);
|
|
512
512
|
}
|
|
513
513
|
}
|
|
@@ -634,7 +634,7 @@ var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
|
|
|
634
634
|
const {
|
|
635
635
|
getOrientationStringLPS,
|
|
636
636
|
invertOrientationStringLPS
|
|
637
|
-
} =
|
|
637
|
+
} = dist_esm.utilities.orientation;
|
|
638
638
|
function ViewportOrientationMarkers({
|
|
639
639
|
element,
|
|
640
640
|
viewportData,
|
|
@@ -662,10 +662,10 @@ function ViewportOrientationMarkers({
|
|
|
662
662
|
(0,react.useEffect)(() => {
|
|
663
663
|
initialVolumeOrientationRef.current.initialViewUp = null;
|
|
664
664
|
initialVolumeOrientationRef.current.initialViewRight = null;
|
|
665
|
-
if (viewportData?.viewportType !== 'stack' && element && (0,
|
|
665
|
+
if (viewportData?.viewportType !== 'stack' && element && (0,esm.getEnabledElement)(element)) {
|
|
666
666
|
const {
|
|
667
667
|
viewport
|
|
668
|
-
} = (0,
|
|
668
|
+
} = (0,esm.getEnabledElement)(element);
|
|
669
669
|
const {
|
|
670
670
|
viewUp,
|
|
671
671
|
viewPlaneNormal
|
|
@@ -695,9 +695,9 @@ function ViewportOrientationMarkers({
|
|
|
695
695
|
setFlipVertical(camera.flipVertical);
|
|
696
696
|
}
|
|
697
697
|
};
|
|
698
|
-
element.addEventListener(
|
|
698
|
+
element.addEventListener(esm.Enums.Events.CAMERA_MODIFIED, cameraModifiedListener);
|
|
699
699
|
return () => {
|
|
700
|
-
element.removeEventListener(
|
|
700
|
+
element.removeEventListener(esm.Enums.Events.CAMERA_MODIFIED, cameraModifiedListener);
|
|
701
701
|
};
|
|
702
702
|
}, []);
|
|
703
703
|
const markers = (0,react.useMemo)(() => {
|
|
@@ -718,9 +718,9 @@ function ViewportOrientationMarkers({
|
|
|
718
718
|
columnCosines,
|
|
719
719
|
isDefaultValueSetForColumnCosine,
|
|
720
720
|
isDefaultValueSetForColumnCosine
|
|
721
|
-
} =
|
|
721
|
+
} = esm.metaData.get('imagePlaneModule', imageId) || {});
|
|
722
722
|
} else {
|
|
723
|
-
if (!element || !(0,
|
|
723
|
+
if (!element || !(0,esm.getEnabledElement)(element)) {
|
|
724
724
|
return '';
|
|
725
725
|
}
|
|
726
726
|
if (initialVolumeOrientationRef.current.initialViewUp && initialVolumeOrientationRef.current.initialViewRight) {
|
|
@@ -846,13 +846,13 @@ function ViewportImageSliceLoadingIndicator({
|
|
|
846
846
|
}
|
|
847
847
|
};
|
|
848
848
|
(0,react.useEffect)(() => {
|
|
849
|
-
element.addEventListener(
|
|
850
|
-
element.addEventListener(
|
|
851
|
-
element.addEventListener(
|
|
849
|
+
element.addEventListener(esm.Enums.Events.STACK_VIEWPORT_SCROLL, setLoadingState);
|
|
850
|
+
element.addEventListener(esm.Enums.Events.IMAGE_LOAD_ERROR, setErrorState);
|
|
851
|
+
element.addEventListener(esm.Enums.Events.STACK_NEW_IMAGE, setFinishLoadingState);
|
|
852
852
|
return () => {
|
|
853
|
-
element.removeEventListener(
|
|
854
|
-
element.removeEventListener(
|
|
855
|
-
element.removeEventListener(
|
|
853
|
+
element.removeEventListener(esm.Enums.Events.STACK_VIEWPORT_SCROLL, setLoadingState);
|
|
854
|
+
element.removeEventListener(esm.Enums.Events.STACK_NEW_IMAGE, setFinishLoadingState);
|
|
855
|
+
element.removeEventListener(esm.Enums.Events.IMAGE_LOAD_ERROR, setErrorState);
|
|
856
856
|
};
|
|
857
857
|
}, [element, viewportData]);
|
|
858
858
|
if (error) {
|
|
@@ -1065,16 +1065,16 @@ function WrappedCinePlayer({
|
|
|
1065
1065
|
if (!enabledVPElement) {
|
|
1066
1066
|
return;
|
|
1067
1067
|
}
|
|
1068
|
-
enabledVPElement.addEventListener(
|
|
1068
|
+
enabledVPElement.addEventListener(esm.Enums.Events.VIEWPORT_NEW_IMAGE_SET, newDisplaySetHandler);
|
|
1069
1069
|
// this doesn't makes sense that we are listening to this event on viewport element
|
|
1070
|
-
enabledVPElement.addEventListener(
|
|
1070
|
+
enabledVPElement.addEventListener(esm.Enums.Events.VOLUME_VIEWPORT_NEW_VOLUME, newDisplaySetHandler);
|
|
1071
1071
|
return () => {
|
|
1072
1072
|
cineService.setCine({
|
|
1073
1073
|
id: viewportId,
|
|
1074
1074
|
isPlaying: false
|
|
1075
1075
|
});
|
|
1076
|
-
enabledVPElement.removeEventListener(
|
|
1077
|
-
enabledVPElement.removeEventListener(
|
|
1076
|
+
enabledVPElement.removeEventListener(esm.Enums.Events.VIEWPORT_NEW_IMAGE_SET, newDisplaySetHandler);
|
|
1077
|
+
enabledVPElement.removeEventListener(esm.Enums.Events.VOLUME_VIEWPORT_NEW_VOLUME, newDisplaySetHandler);
|
|
1078
1078
|
};
|
|
1079
1079
|
}, [enabledVPElement, newDisplaySetHandler, viewportId]);
|
|
1080
1080
|
(0,react.useEffect)(() => {
|
|
@@ -1137,9 +1137,9 @@ function RenderCinePlayer({
|
|
|
1137
1137
|
label: splittingTag
|
|
1138
1138
|
});
|
|
1139
1139
|
};
|
|
1140
|
-
|
|
1140
|
+
esm.eventTarget.addEventListener(esm.Enums.Events.DYNAMIC_VOLUME_DIMENSION_GROUP_CHANGED, handleDimensionGroupChange);
|
|
1141
1141
|
return () => {
|
|
1142
|
-
|
|
1142
|
+
esm.eventTarget.removeEventListener(esm.Enums.Events.DYNAMIC_VOLUME_DIMENSION_GROUP_CHANGED, handleDimensionGroupChange);
|
|
1143
1143
|
};
|
|
1144
1144
|
}, [dynamicInfo]);
|
|
1145
1145
|
(0,react.useEffect)(() => {
|
|
@@ -1152,7 +1152,7 @@ function RenderCinePlayer({
|
|
|
1152
1152
|
numDimensionGroups,
|
|
1153
1153
|
splittingTag
|
|
1154
1154
|
} = dynamicInfo || {};
|
|
1155
|
-
const volume =
|
|
1155
|
+
const volume = esm.cache.getVolume(volumeId, true);
|
|
1156
1156
|
volume.dimensionGroupNumber = dimensionGroupNumber;
|
|
1157
1157
|
setDynamicInfo({
|
|
1158
1158
|
volumeId,
|
|
@@ -1166,7 +1166,7 @@ function RenderCinePlayer({
|
|
|
1166
1166
|
volumeId,
|
|
1167
1167
|
dimensionGroupNumber
|
|
1168
1168
|
} = props;
|
|
1169
|
-
const volume =
|
|
1169
|
+
const volume = esm.cache.getVolume(volumeId, true);
|
|
1170
1170
|
volume.dimensionGroupNumber = dimensionGroupNumber;
|
|
1171
1171
|
}, []);
|
|
1172
1172
|
return /*#__PURE__*/react.createElement(CinePlayerComponent, {
|
|
@@ -1372,8 +1372,6 @@ function arePropsEqual(prevProps, nextProps) {
|
|
|
1372
1372
|
return prevProps.viewportId === nextProps.viewportId && prevProps.servicesManager === nextProps.servicesManager;
|
|
1373
1373
|
}
|
|
1374
1374
|
/* harmony default export */ const utils_ActiveViewportBehavior = (ActiveViewportBehavior);
|
|
1375
|
-
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/services/ViewportService/CornerstoneViewportService.ts + 4 modules
|
|
1376
|
-
var CornerstoneViewportService = __webpack_require__(11794);
|
|
1377
1375
|
;// ../../../extensions/cornerstone/src/Viewport/OHIFCornerstoneViewport.tsx
|
|
1378
1376
|
|
|
1379
1377
|
|
|
@@ -1387,8 +1385,6 @@ var CornerstoneViewportService = __webpack_require__(11794);
|
|
|
1387
1385
|
|
|
1388
1386
|
|
|
1389
1387
|
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
1388
|
const STACK = 'stack';
|
|
1393
1389
|
|
|
1394
1390
|
// Cache for viewport dimensions, persists across component remounts
|
|
@@ -1541,7 +1537,7 @@ const OHIFCornerstoneViewport = /*#__PURE__*/react.memo(props => {
|
|
|
1541
1537
|
// disable the element upon unmounting
|
|
1542
1538
|
(0,react.useEffect)(() => {
|
|
1543
1539
|
cornerstoneViewportService.enableViewport(viewportId, elementRef.current);
|
|
1544
|
-
|
|
1540
|
+
esm.eventTarget.addEventListener(esm.Enums.Events.ELEMENT_ENABLED, elementEnabledHandler);
|
|
1545
1541
|
setImageScrollBarHeight();
|
|
1546
1542
|
return () => {
|
|
1547
1543
|
const viewportInfo = cornerstoneViewportService.getViewportInfo(viewportId);
|
|
@@ -1560,7 +1556,7 @@ const OHIFCornerstoneViewport = /*#__PURE__*/react.memo(props => {
|
|
|
1560
1556
|
}
|
|
1561
1557
|
cornerstoneViewportService.disableElement(viewportId);
|
|
1562
1558
|
viewportRef.unregister();
|
|
1563
|
-
|
|
1559
|
+
esm.eventTarget.removeEventListener(esm.Enums.Events.ELEMENT_ENABLED, elementEnabledHandler);
|
|
1564
1560
|
};
|
|
1565
1561
|
}, []);
|
|
1566
1562
|
|
|
@@ -1616,28 +1612,6 @@ const OHIFCornerstoneViewport = /*#__PURE__*/react.memo(props => {
|
|
|
1616
1612
|
};
|
|
1617
1613
|
loadViewportData();
|
|
1618
1614
|
}, [viewportOptions, displaySets, dataSource]);
|
|
1619
|
-
|
|
1620
|
-
/**
|
|
1621
|
-
* There are two scenarios for jump to click
|
|
1622
|
-
* 1. Current viewports contain the displaySet that the annotation was drawn on
|
|
1623
|
-
* 2. Current viewports don't contain the displaySet that the annotation was drawn on
|
|
1624
|
-
* and we need to change the viewports displaySet for jumping.
|
|
1625
|
-
* Since measurement_jump happens via events and listeners, the former case is handled
|
|
1626
|
-
* by the measurement_jump direct callback, but the latter case is handled first by
|
|
1627
|
-
* the viewportGrid to set the correct displaySet on the viewport, AND THEN we check
|
|
1628
|
-
* the cache for jumping to see if there is any jump queued, then we jump to the correct slice.
|
|
1629
|
-
*/
|
|
1630
|
-
(0,react.useEffect)(() => {
|
|
1631
|
-
if (isJumpToMeasurementDisabled) {
|
|
1632
|
-
return;
|
|
1633
|
-
}
|
|
1634
|
-
const {
|
|
1635
|
-
unsubscribe
|
|
1636
|
-
} = measurementService.subscribe(src/* MeasurementService */.C5.EVENTS.JUMP_TO_MEASUREMENT_VIEWPORT, event => handleJumpToMeasurement(event, elementRef, viewportId, cornerstoneViewportService));
|
|
1637
|
-
return () => {
|
|
1638
|
-
unsubscribe();
|
|
1639
|
-
};
|
|
1640
|
-
}, [displaySets, elementRef, viewportId, isJumpToMeasurementDisabled, servicesManager]);
|
|
1641
1615
|
const Notification = customizationService.getCustomization('ui.notificationComponent');
|
|
1642
1616
|
return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("div", {
|
|
1643
1617
|
className: "viewport-wrapper"
|
|
@@ -1683,49 +1657,6 @@ const OHIFCornerstoneViewport = /*#__PURE__*/react.memo(props => {
|
|
|
1683
1657
|
viewportId: viewportId
|
|
1684
1658
|
}));
|
|
1685
1659
|
}, areEqual);
|
|
1686
|
-
|
|
1687
|
-
// Helper function to handle jumping to measurements
|
|
1688
|
-
function handleJumpToMeasurement(event, elementRef, viewportId, cornerstoneViewportService) {
|
|
1689
|
-
const {
|
|
1690
|
-
measurement,
|
|
1691
|
-
isConsumed
|
|
1692
|
-
} = event;
|
|
1693
|
-
if (!measurement || isConsumed) {
|
|
1694
|
-
return;
|
|
1695
|
-
}
|
|
1696
|
-
const enabledElement = (0,dist_esm.getEnabledElement)(elementRef.current);
|
|
1697
|
-
if (!enabledElement) {
|
|
1698
|
-
return;
|
|
1699
|
-
}
|
|
1700
|
-
const viewport = enabledElement.viewport;
|
|
1701
|
-
const {
|
|
1702
|
-
metadata,
|
|
1703
|
-
displaySetInstanceUID
|
|
1704
|
-
} = measurement;
|
|
1705
|
-
const viewportDisplaySets = cornerstoneViewportService.getViewportDisplaySets(viewportId);
|
|
1706
|
-
const showingDisplaySet = viewportDisplaySets.find(ds => ds.displaySetInstanceUID === displaySetInstanceUID);
|
|
1707
|
-
let metadataToUse = metadata;
|
|
1708
|
-
// if it is not showing the displaySet we need to remove the FOR from the metadata
|
|
1709
|
-
if (!showingDisplaySet) {
|
|
1710
|
-
metadataToUse = {
|
|
1711
|
-
...metadata,
|
|
1712
|
-
FrameOfReferenceUID: undefined
|
|
1713
|
-
};
|
|
1714
|
-
}
|
|
1715
|
-
|
|
1716
|
-
// Todo: make it work with cases where we want to define FOR based measurements too
|
|
1717
|
-
if (!viewport.isReferenceViewable(metadataToUse, CornerstoneViewportService/* WITH_NAVIGATION */.g)) {
|
|
1718
|
-
return;
|
|
1719
|
-
}
|
|
1720
|
-
try {
|
|
1721
|
-
viewport.setViewReference(metadata);
|
|
1722
|
-
viewport.render();
|
|
1723
|
-
} catch (e) {
|
|
1724
|
-
console.warn('Unable to apply', metadata, e);
|
|
1725
|
-
}
|
|
1726
|
-
esm.annotation.selection.setAnnotationSelected(measurement.uid);
|
|
1727
|
-
event?.consume?.();
|
|
1728
|
-
}
|
|
1729
1660
|
function _rehydrateSynchronizers(viewportId, syncGroupService) {
|
|
1730
1661
|
const {
|
|
1731
1662
|
synchronizersStore
|
|
@@ -1819,17 +1750,6 @@ function areEqual(prevProps, nextProps) {
|
|
|
1819
1750
|
}
|
|
1820
1751
|
return true;
|
|
1821
1752
|
}
|
|
1822
|
-
|
|
1823
|
-
// Helper function to check if display sets have changed
|
|
1824
|
-
function haveDisplaySetsChanged(prevDisplaySets, currentDisplaySets) {
|
|
1825
|
-
if (prevDisplaySets.length !== currentDisplaySets.length) {
|
|
1826
|
-
return true;
|
|
1827
|
-
}
|
|
1828
|
-
return currentDisplaySets.some((currentDS, index) => {
|
|
1829
|
-
const prevDS = prevDisplaySets[index];
|
|
1830
|
-
return currentDS.displaySetInstanceUID !== prevDS.displaySetInstanceUID;
|
|
1831
|
-
});
|
|
1832
|
-
}
|
|
1833
1753
|
/* harmony default export */ const Viewport_OHIFCornerstoneViewport = (OHIFCornerstoneViewport);
|
|
1834
1754
|
|
|
1835
1755
|
/***/ })
|
|
@@ -1145,10 +1145,10 @@ function WorkflowPanel({
|
|
|
1145
1145
|
|
|
1146
1146
|
|
|
1147
1147
|
|
|
1148
|
-
// EXTERNAL MODULE: ../../../extensions/default/src/index.ts +
|
|
1149
|
-
var default_src = __webpack_require__(
|
|
1150
|
-
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/index.tsx +
|
|
1151
|
-
var cornerstone_src = __webpack_require__(
|
|
1148
|
+
// EXTERNAL MODULE: ../../../extensions/default/src/index.ts + 139 modules
|
|
1149
|
+
var default_src = __webpack_require__(11447);
|
|
1150
|
+
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/index.tsx + 184 modules
|
|
1151
|
+
var cornerstone_src = __webpack_require__(20557);
|
|
1152
1152
|
;// ../../../extensions/cornerstone-dynamic-volume/src/panels/DynamicExport.tsx
|
|
1153
1153
|
|
|
1154
1154
|
|
|
@@ -2048,6 +2048,8 @@ var Events;
|
|
|
2048
2048
|
Events["TOOLGROUP_VIEWPORT_REMOVED"] = "CORNERSTONE_TOOLS_TOOLGROUP_VIEWPORT_REMOVED";
|
|
2049
2049
|
Events["TOOL_MODE_CHANGED"] = "CORNERSTONE_TOOLS_TOOL_MODE_CHANGED";
|
|
2050
2050
|
Events["CROSSHAIR_TOOL_CENTER_CHANGED"] = "CORNERSTONE_TOOLS_CROSSHAIR_TOOL_CENTER_CHANGED";
|
|
2051
|
+
Events["VOLUMECROPPINGCONTROL_TOOL_CHANGED"] = "CORNERSTONE_TOOLS_VOLUMECROPPINGCONTROL_TOOL_CHANGED";
|
|
2052
|
+
Events["VOLUMECROPPING_TOOL_CHANGED"] = "CORNERSTONE_TOOLS_VOLUMECROPPING_TOOL_CHANGED";
|
|
2051
2053
|
Events["ANNOTATION_ADDED"] = "CORNERSTONE_TOOLS_ANNOTATION_ADDED";
|
|
2052
2054
|
Events["ANNOTATION_COMPLETED"] = "CORNERSTONE_TOOLS_ANNOTATION_COMPLETED";
|
|
2053
2055
|
Events["ANNOTATION_MODIFIED"] = "CORNERSTONE_TOOLS_ANNOTATION_MODIFIED";
|