@ohif/app 3.8.0-beta.8 → 3.8.0-beta.80
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/{220.bundle.f7e1c96c94245e70f2be.js → 109.bundle.b4fee2a22b622839baf5.js} +4466 -3715
- package/dist/{471.bundle.49c8d281adbae4a2c4df.js → 121.bundle.787f5a848ed632a4d5fc.js} +90 -112
- package/dist/141.bundle.556b4c1e4cab770417ac.js +8620 -0
- package/dist/{687.bundle.9065db35c01823286f08.js → 164.bundle.d4598e491783753a8b6b.js} +22 -38
- package/dist/17dd54813d5acc10bf8f.wasm +0 -0
- package/dist/183.bundle.72bf18ad23ee6624986d.js +30394 -0
- package/dist/{506.bundle.5731bb4349e266491225.js → 188.bundle.b80554ec7df7dcd435a5.js} +23 -28
- package/dist/{342.bundle.e7c3d500f86fdfcc62b5.js → 206.bundle.f957e0d1cdff66dbac69.js} +1963 -1142
- package/dist/20fc4c659b85ccd2a9c0.wasm +0 -0
- package/dist/217.bundle.be1cc412f8e26be87d21.js +115079 -0
- package/dist/{451.bundle.57c21db5d003c75e9d61.js → 295.bundle.6f734abf8fa85b1a310d.js} +107 -127
- package/dist/{125.bundle.253395f320b72180da63.js → 297.bundle.194d8985ab974839b5b6.js} +7 -8
- package/dist/{19.bundle.f77c5787b6d8ac0b638b.js → 325.bundle.84909a08305556e9f924.js} +479 -371
- package/dist/335.bundle.c39d4aefe33aecab958f.js +2590 -0
- package/dist/{202.bundle.d3490836f71e001dd30f.js → 342.bundle.e6d0bba29351b5650a8c.js} +566 -868
- package/dist/{776.bundle.a2dedb405a12ffd7699b.js → 41.bundle.7c943bb857ed37831905.js} +7295 -3536
- package/dist/422.bundle.bd6529c536f59807fbee.js +881 -0
- package/dist/{957.bundle.9ea4506963ef8b2d84ba.js → 433.bundle.4c77c1fe8fc90ac14218.js} +14737 -27555
- package/dist/445.bundle.38c6d2af64e41cd7c614.js +7835 -0
- package/dist/{126.bundle.6e7111d58bcc937ffd80.js → 448.bundle.deedeff5744e77510734.js} +362 -430
- package/dist/487.bundle.7890ca42826941ebcd60.js +1875 -0
- package/dist/{886.bundle.c8dd3ecc42a4253de278.js → 530.bundle.7c94543955552475c56a.js} +98 -127
- package/dist/{663.bundle.d7be28450db14266cdd0.js → 540.bundle.079d43a6717e95c24392.js} +225 -188
- package/dist/{250.bundle.aea3335667054bdefe36.js → 544.bundle.1c1f57118560046649c1.js} +37 -62
- package/dist/574.bundle.be075ac52fb52b442a8b.js +2641 -0
- package/dist/{181.css → 574.css} +1 -1
- package/dist/{410.bundle.15c855b0ff4a1a674fb8.js → 594.bundle.0b1165661dd638820082.js} +183 -221
- package/dist/{221.bundle.aef554202c58483cb34e.js → 633.bundle.c1658e76f104cbd14cab.js} +349 -552
- package/dist/{774.bundle.4b2dc46a35012b898e1a.js → 644.bundle.1e77691d2eeb96a423b0.js} +1852 -8945
- package/dist/699.bundle.4f01772e7ce6637de339.js +768 -0
- package/dist/702.bundle.963481fbf871984b646f.js +8426 -0
- package/dist/722.bundle.afab1fe6bfcd569130ac.js +1083 -0
- package/dist/{359.bundle.45ecb3d28e8c22142606.js → 724.bundle.e5794460c391ee9cba2c.js} +164 -259
- package/dist/{757.bundle.ec8301d8e70d2b990f65.js → 726.bundle.0b3d9277d22fe7e15b89.js} +512 -879
- package/dist/{530.bundle.a03b6f942ace3e1baa1e.js → 835.bundle.15aff0b7433bb0dd6d6d.js} +37 -30
- package/dist/{822.bundle.82cdc418f8f56da6060b.js → 862.bundle.c0ee6e1d4d97e1353213.js} +77 -96
- package/dist/{236.bundle.4e9924934a747afac132.js → 889.bundle.7858e4b7ca1a2b12b64f.js} +207 -199
- package/dist/{281.bundle.deb7492d143e7768d8bf.js → 905.bundle.170908fe660fc6b40649.js} +157 -124
- package/dist/{814.bundle.c8c951d20039b63b865a.js → 907.bundle.dee4e30420caf07caea6.js} +16 -30
- package/dist/{417.bundle.af0a207c29b109f84159.js → 931.bundle.d270a1fda9a2836c3cc5.js} +26 -26
- package/dist/{686.bundle.dccef1f36e4bc79bcc48.js → 939.bundle.9d93b2e47c52338747a2.js} +7 -8
- package/dist/94.bundle.c452d9b0645277c2cf4e.js +784 -0
- package/dist/{12.bundle.b5ca13e5363f170ecb3b.js → 961.bundle.aaaaaba0ec015a3b85d8.js} +20 -33
- package/dist/app-config.js +1 -0
- package/dist/{app.bundle.a978edc59b9d82f2eb22.js → app.bundle.6c090a2d6d3ccc97a81d.js} +183240 -87650
- package/dist/app.bundle.css +16 -13
- package/dist/assets/images/CT-AAA.png +0 -0
- package/dist/assets/images/CT-AAA2.png +0 -0
- package/dist/assets/images/CT-Air.png +0 -0
- package/dist/assets/images/CT-Bone.png +0 -0
- package/dist/assets/images/CT-Bones.png +0 -0
- package/dist/assets/images/CT-Cardiac.png +0 -0
- package/dist/assets/images/CT-Cardiac2.png +0 -0
- package/dist/assets/images/CT-Cardiac3.png +0 -0
- package/dist/assets/images/CT-Chest-Contrast-Enhanced.png +0 -0
- package/dist/assets/images/CT-Chest-Vessels.png +0 -0
- package/dist/assets/images/CT-Coronary-Arteries-2.png +0 -0
- package/dist/assets/images/CT-Coronary-Arteries-3.png +0 -0
- package/dist/assets/images/CT-Coronary-Arteries.png +0 -0
- package/dist/assets/images/CT-Cropped-Volume-Bone.png +0 -0
- package/dist/assets/images/CT-Fat.png +0 -0
- package/dist/assets/images/CT-Liver-Vasculature.png +0 -0
- package/dist/assets/images/CT-Lung.png +0 -0
- package/dist/assets/images/CT-MIP.png +0 -0
- package/dist/assets/images/CT-Muscle.png +0 -0
- package/dist/assets/images/CT-Pulmonary-Arteries.png +0 -0
- package/dist/assets/images/CT-Soft-Tissue.png +0 -0
- package/dist/assets/images/DTI-FA-Brain.png +0 -0
- package/dist/assets/images/MR-Angio.png +0 -0
- package/dist/assets/images/MR-Default.png +0 -0
- package/dist/assets/images/MR-MIP.png +0 -0
- package/dist/assets/images/MR-T2-Brain.png +0 -0
- package/dist/assets/images/VolumeRendering.png +0 -0
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/{dicom-microscopy-viewer.bundle.2c146384eb9466d02ff8.js → dicom-microscopy-viewer.bundle.d3a56dc9f62df5e11019.js} +3 -3
- package/dist/histogram-worker.bundle.829e14ec12c2b41a4323.js +359 -0
- package/dist/index.html +1 -1
- package/dist/{index.worker.e62ecca63f1a2e124230.worker.js → index.worker.64c896c4316fcd506666.worker.js} +2 -2
- package/dist/index.worker.64c896c4316fcd506666.worker.js.map +1 -0
- package/dist/polySeg.bundle.63011312c3c79e717ea9.js +249 -0
- package/dist/serve.json +12 -0
- package/dist/sw.js +1 -1
- package/package.json +26 -22
- package/dist/181.bundle.a62b9f0ec692299acb35.js +0 -1527
- package/dist/23.bundle.e008ad788170f2ed5569.js +0 -900
- package/dist/604.bundle.a51f83e64004bca5f497.js +0 -1848
- package/dist/613.bundle.9e7072e5b575354fe51e.js +0 -532
- package/dist/743.bundle.489f7df3a089d4d374e1.js +0 -78007
- package/dist/75788f12450d4c5ed494.wasm +0 -0
- package/dist/775.bundle.2285e7e0e67878948c0d.js +0 -1009
- package/dist/788.bundle.207ac23c0dfa70cbe3fb.js +0 -2682
- package/dist/82.bundle.d6fdcca0f67540bb226a.js +0 -1049
- package/dist/index.worker.e62ecca63f1a2e124230.worker.js.map +0 -1
- /package/dist/{19.css → 325.css} +0 -0
- /package/dist/{776.css → 41.css} +0 -0
- /package/dist/{579.css → 481.css} +0 -0
- /package/dist/{250.css → 544.css} +0 -0
- /package/dist/{221.css → 633.css} +0 -0
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
(
|
|
2
|
+
(globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[530],{
|
|
3
3
|
|
|
4
|
-
/***/
|
|
4
|
+
/***/ 58530:
|
|
5
5
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
6
6
|
|
|
7
7
|
__webpack_require__.r(__webpack_exports__);
|
|
8
8
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
9
9
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
10
10
|
/* harmony export */ });
|
|
11
|
-
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(
|
|
11
|
+
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11374);
|
|
12
12
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_0__);
|
|
13
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(
|
|
14
|
-
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(
|
|
15
|
-
/* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(
|
|
16
|
-
/* harmony import */ var _tools_modules_dicomSRModule__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(
|
|
17
|
-
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(
|
|
18
|
-
/* harmony import */ var _utils_hydrateStructuredReport__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(
|
|
19
|
-
/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(
|
|
13
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(41766);
|
|
14
|
+
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(80619);
|
|
15
|
+
/* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(55411);
|
|
16
|
+
/* harmony import */ var _tools_modules_dicomSRModule__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(74334);
|
|
17
|
+
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(5085);
|
|
18
|
+
/* harmony import */ var _utils_hydrateStructuredReport__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(77089);
|
|
19
|
+
/* harmony import */ var _state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(15575);
|
|
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
|
|
|
@@ -26,9 +26,6 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
26
26
|
|
|
27
27
|
|
|
28
28
|
|
|
29
|
-
const {
|
|
30
|
-
formatDate
|
|
31
|
-
} = _ohif_core__WEBPACK_IMPORTED_MODULE_3__.utils;
|
|
32
29
|
const MEASUREMENT_TRACKING_EXTENSION_ID = '@ohif/extension-measurement-tracking';
|
|
33
30
|
const SR_TOOLGROUP_BASE_NAME = 'SRToolGroup';
|
|
34
31
|
function OHIFCornerstoneSRViewport(props) {
|
|
@@ -36,16 +33,16 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
36
33
|
children,
|
|
37
34
|
dataSource,
|
|
38
35
|
displaySets,
|
|
39
|
-
viewportLabel,
|
|
40
36
|
viewportOptions,
|
|
41
37
|
servicesManager,
|
|
42
38
|
extensionManager
|
|
43
39
|
} = props;
|
|
44
|
-
const [appConfig] = (0,_state__WEBPACK_IMPORTED_MODULE_7__/* .useAppConfig */ .
|
|
40
|
+
const [appConfig] = (0,_state__WEBPACK_IMPORTED_MODULE_7__/* .useAppConfig */ .r)();
|
|
45
41
|
const {
|
|
46
42
|
displaySetService,
|
|
47
43
|
cornerstoneViewportService,
|
|
48
|
-
measurementService
|
|
44
|
+
measurementService,
|
|
45
|
+
viewportActionCornersService
|
|
49
46
|
} = servicesManager.services;
|
|
50
47
|
const viewportId = viewportOptions.viewportId;
|
|
51
48
|
|
|
@@ -54,7 +51,7 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
54
51
|
throw new Error('SR viewport should only have a single display set');
|
|
55
52
|
}
|
|
56
53
|
const srDisplaySet = displaySets[0];
|
|
57
|
-
const [viewportGrid, viewportGridService] = (0,_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .useViewportGrid */ .
|
|
54
|
+
const [viewportGrid, viewportGridService] = (0,_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .useViewportGrid */ .ih)();
|
|
58
55
|
const [measurementSelected, setMeasurementSelected] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(0);
|
|
59
56
|
const [measurementCount, setMeasurementCount] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(1);
|
|
60
57
|
const [activeImageDisplaySetData, setActiveImageDisplaySetData] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(null);
|
|
@@ -64,6 +61,9 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
64
61
|
viewports,
|
|
65
62
|
activeViewportId
|
|
66
63
|
} = viewportGrid;
|
|
64
|
+
const {
|
|
65
|
+
t
|
|
66
|
+
} = (0,react_i18next__WEBPACK_IMPORTED_MODULE_2__/* .useTranslation */ .Bd)('Common');
|
|
67
67
|
|
|
68
68
|
// Optional hook into tracking extension, if present.
|
|
69
69
|
let trackedMeasurements;
|
|
@@ -78,14 +78,13 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
78
78
|
if (!sendTrackedMeasurementsEvent) {
|
|
79
79
|
// if no panels from measurement-tracking extension is used, this code will run
|
|
80
80
|
trackedMeasurements = null;
|
|
81
|
-
sendTrackedMeasurementsEvent = (eventName,
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
} = _ref;
|
|
81
|
+
sendTrackedMeasurementsEvent = (eventName, {
|
|
82
|
+
displaySetInstanceUID
|
|
83
|
+
}) => {
|
|
85
84
|
measurementService.clearMeasurements();
|
|
86
85
|
const {
|
|
87
86
|
SeriesInstanceUIDs
|
|
88
|
-
} = (0,_utils_hydrateStructuredReport__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .
|
|
87
|
+
} = (0,_utils_hydrateStructuredReport__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A)({
|
|
89
88
|
servicesManager,
|
|
90
89
|
extensionManager,
|
|
91
90
|
appConfig
|
|
@@ -109,7 +108,7 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
109
108
|
const {
|
|
110
109
|
measurements
|
|
111
110
|
} = srDisplaySet;
|
|
112
|
-
(0,_tools_modules_dicomSRModule__WEBPACK_IMPORTED_MODULE_4__/* .setTrackingUniqueIdentifiersForElement */ .
|
|
111
|
+
(0,_tools_modules_dicomSRModule__WEBPACK_IMPORTED_MODULE_4__/* .setTrackingUniqueIdentifiersForElement */ .m1)(element, measurements.map(measurement => measurement.TrackingUniqueIdentifier), measurementSelected);
|
|
113
112
|
}, [element, measurementSelected, srDisplaySet]);
|
|
114
113
|
|
|
115
114
|
/**
|
|
@@ -135,11 +134,15 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
135
134
|
// not throwing an error?
|
|
136
135
|
console.warn('More than one SOPClassUID in the same series is not yet supported.');
|
|
137
136
|
}
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
137
|
+
|
|
138
|
+
// if (!srDisplaySet.measurements || !srDisplaySet.measurements.length) {
|
|
139
|
+
// return;
|
|
140
|
+
// }
|
|
141
|
+
|
|
142
|
+
_getViewportReferencedDisplaySetData(srDisplaySet, newMeasurementSelected, displaySetService).then(({
|
|
143
|
+
referencedDisplaySet,
|
|
144
|
+
referencedDisplaySetMetadata
|
|
145
|
+
}) => {
|
|
143
146
|
setMeasurementSelected(newMeasurementSelected);
|
|
144
147
|
setActiveImageDisplaySetData(referencedDisplaySet);
|
|
145
148
|
setReferencedDisplaySetMetadata(referencedDisplaySetMetadata);
|
|
@@ -202,16 +205,11 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
202
205
|
}, [activeImageDisplaySetData, viewportId, measurementSelected]);
|
|
203
206
|
const onMeasurementChange = (0,react__WEBPACK_IMPORTED_MODULE_1__.useCallback)(direction => {
|
|
204
207
|
let newMeasurementSelected = measurementSelected;
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
} else {
|
|
211
|
-
newMeasurementSelected--;
|
|
212
|
-
if (newMeasurementSelected < 0) {
|
|
213
|
-
newMeasurementSelected = measurementCount - 1;
|
|
214
|
-
}
|
|
208
|
+
newMeasurementSelected += direction;
|
|
209
|
+
if (newMeasurementSelected >= measurementCount) {
|
|
210
|
+
newMeasurementSelected = 0;
|
|
211
|
+
} else if (newMeasurementSelected < 0) {
|
|
212
|
+
newMeasurementSelected = measurementCount - 1;
|
|
215
213
|
}
|
|
216
214
|
setTrackingIdentifiers(newMeasurementSelected);
|
|
217
215
|
updateViewport(newMeasurementSelected);
|
|
@@ -221,10 +219,9 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
221
219
|
Cleanup the SR viewport when the viewport is destroyed
|
|
222
220
|
*/
|
|
223
221
|
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(() => {
|
|
224
|
-
const onDisplaySetsRemovedSubscription = displaySetService.subscribe(displaySetService.EVENTS.DISPLAY_SETS_REMOVED,
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
} = _ref3;
|
|
222
|
+
const onDisplaySetsRemovedSubscription = displaySetService.subscribe(displaySetService.EVENTS.DISPLAY_SETS_REMOVED, ({
|
|
223
|
+
displaySetInstanceUIDs
|
|
224
|
+
}) => {
|
|
228
225
|
const activeViewport = viewports.get(activeViewportId);
|
|
229
226
|
if (displaySetInstanceUIDs.includes(activeViewport.displaySetInstanceUID)) {
|
|
230
227
|
viewportGridService.setDisplaySetsForViewport({
|
|
@@ -246,12 +243,16 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
246
243
|
* if it is hydrated we don't even use the SR viewport.
|
|
247
244
|
*/
|
|
248
245
|
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(() => {
|
|
249
|
-
|
|
250
|
-
srDisplaySet.
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
246
|
+
const loadSR = async () => {
|
|
247
|
+
if (!srDisplaySet.isLoaded) {
|
|
248
|
+
await srDisplaySet.load();
|
|
249
|
+
}
|
|
250
|
+
const numMeasurements = srDisplaySet.measurements.length;
|
|
251
|
+
setMeasurementCount(numMeasurements);
|
|
252
|
+
updateViewport(measurementSelected);
|
|
253
|
+
};
|
|
254
|
+
loadSR();
|
|
255
|
+
}, [dataSource, srDisplaySet]);
|
|
255
256
|
|
|
256
257
|
/**
|
|
257
258
|
* Hook to update the tracking identifiers when the selected measurement changes or
|
|
@@ -268,18 +269,36 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
268
269
|
* Todo: what is this, not sure what it does regarding the react aspect,
|
|
269
270
|
* it is updating a local variable? which is not state.
|
|
270
271
|
*/
|
|
271
|
-
|
|
272
|
+
const [isLocked, setIsLocked] = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(trackedMeasurements?.context?.trackedSeries?.length > 0);
|
|
272
273
|
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(() => {
|
|
273
|
-
|
|
274
|
+
setIsLocked(trackedMeasurements?.context?.trackedSeries?.length > 0);
|
|
274
275
|
}, [trackedMeasurements]);
|
|
275
|
-
|
|
276
|
-
/**
|
|
277
|
-
* Data fetching for the SR displaySet, which updates the measurements and
|
|
278
|
-
* also gets the referenced image displaySet that SR is based on.
|
|
279
|
-
*/
|
|
280
276
|
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(() => {
|
|
281
|
-
|
|
282
|
-
|
|
277
|
+
viewportActionCornersService.setComponents([{
|
|
278
|
+
viewportId,
|
|
279
|
+
id: 'viewportStatusComponent',
|
|
280
|
+
component: _getStatusComponent({
|
|
281
|
+
srDisplaySet,
|
|
282
|
+
viewportId,
|
|
283
|
+
isRehydratable: srDisplaySet.isRehydratable,
|
|
284
|
+
isLocked,
|
|
285
|
+
sendTrackedMeasurementsEvent,
|
|
286
|
+
t
|
|
287
|
+
}),
|
|
288
|
+
indexPriority: -100,
|
|
289
|
+
location: viewportActionCornersService.LOCATIONS.topLeft
|
|
290
|
+
}, {
|
|
291
|
+
viewportId,
|
|
292
|
+
id: 'viewportActionArrowsComponent',
|
|
293
|
+
index: 0,
|
|
294
|
+
component: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .ViewportActionArrows */ .$I, {
|
|
295
|
+
key: "actionArrows",
|
|
296
|
+
onArrowsClick: onMeasurementChange
|
|
297
|
+
}),
|
|
298
|
+
indexPriority: 0,
|
|
299
|
+
location: viewportActionCornersService.LOCATIONS.topRight
|
|
300
|
+
}]);
|
|
301
|
+
}, [isLocked, onMeasurementChange, sendTrackedMeasurementsEvent, srDisplaySet, t, viewportActionCornersService, viewportId]);
|
|
283
302
|
|
|
284
303
|
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
285
304
|
let childrenWithProps = null;
|
|
@@ -294,51 +313,7 @@ function OHIFCornerstoneSRViewport(props) {
|
|
|
294
313
|
});
|
|
295
314
|
});
|
|
296
315
|
}
|
|
297
|
-
|
|
298
|
-
PatientID,
|
|
299
|
-
PatientName,
|
|
300
|
-
PatientSex,
|
|
301
|
-
PatientAge,
|
|
302
|
-
SliceThickness,
|
|
303
|
-
ManufacturerModelName,
|
|
304
|
-
StudyDate,
|
|
305
|
-
SeriesDescription,
|
|
306
|
-
SpacingBetweenSlices,
|
|
307
|
-
SeriesNumber
|
|
308
|
-
} = referencedDisplaySetMetadata;
|
|
309
|
-
|
|
310
|
-
// TODO -> disabled double click for now: onDoubleClick={_onDoubleClick}
|
|
311
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .ViewportActionBar */ .uY, {
|
|
312
|
-
onDoubleClick: evt => {
|
|
313
|
-
evt.stopPropagation();
|
|
314
|
-
evt.preventDefault();
|
|
315
|
-
},
|
|
316
|
-
onArrowsClick: onMeasurementChange,
|
|
317
|
-
getStatusComponent: () => _getStatusComponent({
|
|
318
|
-
srDisplaySet,
|
|
319
|
-
viewportId,
|
|
320
|
-
isTracked: false,
|
|
321
|
-
isRehydratable: srDisplaySet.isRehydratable,
|
|
322
|
-
isLocked,
|
|
323
|
-
sendTrackedMeasurementsEvent
|
|
324
|
-
}),
|
|
325
|
-
studyData: {
|
|
326
|
-
label: viewportLabel,
|
|
327
|
-
useAltStyling: true,
|
|
328
|
-
studyDate: formatDate(StudyDate),
|
|
329
|
-
currentSeries: SeriesNumber,
|
|
330
|
-
seriesDescription: SeriesDescription || '',
|
|
331
|
-
patientInformation: {
|
|
332
|
-
patientName: PatientName ? _ohif_core__WEBPACK_IMPORTED_MODULE_3__["default"].utils.formatPN(PatientName.Alphabetic) : '',
|
|
333
|
-
patientSex: PatientSex || '',
|
|
334
|
-
patientAge: PatientAge || '',
|
|
335
|
-
MRN: PatientID || '',
|
|
336
|
-
thickness: SliceThickness ? `${parseFloat(SliceThickness).toFixed(2)}mm` : '',
|
|
337
|
-
spacing: SpacingBetweenSlices !== undefined ? `${SpacingBetweenSlices.toFixed(2)}mm` : '',
|
|
338
|
-
scanner: ManufacturerModelName || ''
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
|
-
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
|
|
316
|
+
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", {
|
|
342
317
|
className: "relative flex h-full w-full flex-row overflow-hidden"
|
|
343
318
|
}, getCornerstoneViewport(), childrenWithProps));
|
|
344
319
|
}
|
|
@@ -350,21 +325,20 @@ OHIFCornerstoneSRViewport.propTypes = {
|
|
|
350
325
|
viewportLabel: (prop_types__WEBPACK_IMPORTED_MODULE_0___default().string),
|
|
351
326
|
customProps: (prop_types__WEBPACK_IMPORTED_MODULE_0___default().object),
|
|
352
327
|
viewportOptions: (prop_types__WEBPACK_IMPORTED_MODULE_0___default().object),
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
extensionManager: prop_types__WEBPACK_IMPORTED_MODULE_0___default().instanceOf(_ohif_core__WEBPACK_IMPORTED_MODULE_3__/* .ExtensionManager */ .W$).isRequired
|
|
328
|
+
servicesManager: prop_types__WEBPACK_IMPORTED_MODULE_0___default().instanceOf(_ohif_core__WEBPACK_IMPORTED_MODULE_3__/* .ServicesManager */ .CS).isRequired,
|
|
329
|
+
extensionManager: prop_types__WEBPACK_IMPORTED_MODULE_0___default().instanceOf(_ohif_core__WEBPACK_IMPORTED_MODULE_3__/* .ExtensionManager */ .nH).isRequired
|
|
356
330
|
};
|
|
357
331
|
OHIFCornerstoneSRViewport.defaultProps = {
|
|
358
332
|
customProps: {}
|
|
359
333
|
};
|
|
360
334
|
async function _getViewportReferencedDisplaySetData(displaySet, measurementSelected, displaySetService) {
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
}
|
|
335
|
+
if (!displaySet.keyImageDisplaySet) {
|
|
336
|
+
// Create a new display set, and preserve a reference to it here,
|
|
337
|
+
// so that it can be re-displayed and shown inside the SR viewport.
|
|
338
|
+
// This is only for ease of redisplay - the display set is stored in the
|
|
339
|
+
// usual manner in the display set service.
|
|
340
|
+
displaySet.keyImageDisplaySet = createReferencedImageDisplaySet(displaySetService, displaySet);
|
|
341
|
+
}
|
|
368
342
|
const referencedDisplaySet = displaySetService.getDisplaySetByUID(displaySetInstanceUID);
|
|
369
343
|
const image0 = referencedDisplaySet.images[0];
|
|
370
344
|
const referencedDisplaySetMetadata = {
|
|
@@ -385,23 +359,20 @@ async function _getViewportReferencedDisplaySetData(displaySet, measurementSelec
|
|
|
385
359
|
referencedDisplaySet
|
|
386
360
|
};
|
|
387
361
|
}
|
|
388
|
-
function _getStatusComponent(
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
362
|
+
function _getStatusComponent({
|
|
363
|
+
srDisplaySet,
|
|
364
|
+
viewportId,
|
|
365
|
+
isRehydratable,
|
|
366
|
+
isLocked,
|
|
367
|
+
sendTrackedMeasurementsEvent,
|
|
368
|
+
t
|
|
369
|
+
}) {
|
|
396
370
|
const handleMouseUp = () => {
|
|
397
371
|
sendTrackedMeasurementsEvent('HYDRATE_SR', {
|
|
398
372
|
displaySetInstanceUID: srDisplaySet.displaySetInstanceUID,
|
|
399
373
|
viewportId
|
|
400
374
|
});
|
|
401
375
|
};
|
|
402
|
-
const {
|
|
403
|
-
t
|
|
404
|
-
} = (0,react_i18next__WEBPACK_IMPORTED_MODULE_2__/* .useTranslation */ .$G)('Common');
|
|
405
376
|
const loadStr = t('LOAD');
|
|
406
377
|
|
|
407
378
|
// 1 - Incompatible
|
|
@@ -412,19 +383,19 @@ function _getStatusComponent(_ref4) {
|
|
|
412
383
|
let StatusIcon = null;
|
|
413
384
|
switch (state) {
|
|
414
385
|
case 1:
|
|
415
|
-
StatusIcon = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .
|
|
386
|
+
StatusIcon = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .In, {
|
|
416
387
|
name: "status-alert"
|
|
417
388
|
});
|
|
418
389
|
ToolTipMessage = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", null, "This structured report is not compatible", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("br", null), "with this application.");
|
|
419
390
|
break;
|
|
420
391
|
case 2:
|
|
421
|
-
StatusIcon = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .
|
|
392
|
+
StatusIcon = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .In, {
|
|
422
393
|
name: "status-locked"
|
|
423
394
|
});
|
|
424
395
|
ToolTipMessage = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("div", null, "This structured report is currently read-only", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("br", null), "because you are tracking measurements in", /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement("br", null), "another viewport.");
|
|
425
396
|
break;
|
|
426
397
|
case 3:
|
|
427
|
-
StatusIcon = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .
|
|
398
|
+
StatusIcon = () => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Icon */ .In, {
|
|
428
399
|
className: "text-aqua-pale",
|
|
429
400
|
name: "status-untracked"
|
|
430
401
|
});
|
|
@@ -442,7 +413,7 @@ function _getStatusComponent(_ref4) {
|
|
|
442
413
|
,
|
|
443
414
|
onMouseUp: handleMouseUp
|
|
444
415
|
}, loadStr));
|
|
445
|
-
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, ToolTipMessage && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Tooltip */ .
|
|
416
|
+
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(react__WEBPACK_IMPORTED_MODULE_1__.Fragment, null, ToolTipMessage && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(_ohif_ui__WEBPACK_IMPORTED_MODULE_5__/* .Tooltip */ .m_, {
|
|
446
417
|
content: /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(ToolTipMessage, null),
|
|
447
418
|
position: "bottom-left"
|
|
448
419
|
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(StatusArea, null)), !ToolTipMessage && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_1__.createElement(StatusArea, null));
|