@ohif/app 3.7.0-beta.7 → 3.7.0-beta.70
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/{270.bundle.4564621556b0f963a004.js → 116.bundle.422d1a76d8daccfed61d.js} +1037 -823
- package/dist/{917.bundle.37f76105d2e1a70d94cf.js → 12.bundle.e6eb1baa615645189a12.js} +6 -6
- package/dist/{295.bundle.957b1159fec14b9199a1.js → 125.bundle.aeaad798561853bf6939.js} +6 -6
- package/dist/{208.bundle.21c449bf9b00123e1db3.js → 128.bundle.914f2ac8d0691bd50ff0.js} +6 -6
- package/dist/{616.bundle.be469f44809e9b2485b2.js → 150.bundle.eff6abfcb0d3096e26f6.js} +163 -106
- package/dist/{351.bundle.0742237651aef9694a65.js → 181.bundle.73dd6f63fe0ddc52b7eb.js} +225 -203
- package/dist/{351.css → 181.css} +1 -1
- package/dist/{606.bundle.5d876f5f3dd8287f0a28.js → 202.bundle.591726b6144882ba0ee0.js} +1459 -811
- package/dist/{926.bundle.dbc9d0e591cb9217fda2.js → 220.bundle.f7e1c96c94245e70f2be.js} +990 -400
- package/dist/{664.bundle.09abae984223969d1bde.js → 23.bundle.e008ad788170f2ed5569.js} +5 -6
- package/dist/{976.bundle.c1df3878a015cdf0e51f.js → 236.bundle.cb102f5d6b3e2c164b06.js} +72 -83
- package/dist/{55.bundle.550a823e75eb608e8d5e.js → 250.bundle.8bc4553ee5c56bf7cf32.js} +51 -35
- package/dist/{973.bundle.f4b8ccf7ad2ff9f6041c.js → 281.bundle.7c827c7748a1b0306a02.js} +18 -14
- package/dist/{744.bundle.d07b9ad7b31de0ba4956.js → 30.bundle.81444318ba6847f34c7b.js} +185 -174
- package/dist/{192.bundle.1efc10937535a37a17f0.js → 348.bundle.cc3535d1f656926128ac.js} +43 -19
- package/dist/{404.bundle.d980e423e9670737ef12.js → 359.bundle.9bcfb38d30fd6c37bcd9.js} +13 -19
- package/dist/{790.bundle.ed28f0930111217b742a.js → 410.bundle.b407a17fa433d19a6783.js} +10 -7
- package/dist/{151.bundle.31ea35044218837bf73f.js → 417.bundle.720dc8f3a6e99f378aa9.js} +9 -11
- package/dist/{569.bundle.21f8ad57c06a210448b5.js → 451.bundle.e59fcdb1f1d3fbe71cd4.js} +83 -101
- package/dist/{581.bundle.dc6197189f7c88c27d4c.js → 471.bundle.b598d406ddfc2666851b.js} +65 -93
- package/dist/{199.bundle.7cec631fcf4b8475abda.js → 506.bundle.67a36beffb00adbfc6e8.js} +86 -10
- package/dist/{935.bundle.deeffff0e4f7b528e3c3.js → 604.bundle.a51f83e64004bca5f497.js} +2 -3
- package/dist/{984.bundle.b33e9e702a96c5ae9fb7.js → 663.bundle.c13c43c85cadb099ab82.js} +67 -37
- package/dist/{531.bundle.2a82fb1d69e5b57cc72b.js → 677.bundle.ec5f2b4707db33bd4d8e.js} +731 -447
- package/dist/{205.bundle.b5a473c200dcf2bbcdb4.js → 686.bundle.b3dbf84eefbef768843f.js} +6 -6
- package/dist/{50.bundle.9b5c9aaaf1188ab0794a.js → 687.bundle.9a226918b1760d8e4e54.js} +218 -9
- package/dist/{331.bundle.bd0c13931a21d53086c9.js → 754.bundle.a5c9246c77659eab2739.js} +12413 -7539
- package/dist/{728.bundle.d13856835357400fef82.js → 774.bundle.8ba82ee206266eb2da5e.js} +90 -63
- package/dist/{381.bundle.0905e683605fcbc0895f.js → 775.bundle.2285e7e0e67878948c0d.js} +16 -16
- package/dist/{283.bundle.8ffad59b5844a24b2a62.js → 782.bundle.ecac5103b2bf6a45ba43.js} +112 -62
- package/dist/{642.bundle.88a563313292ae2cdd2e.js → 814.bundle.c348892fe4a5f11a5c78.js} +6 -6
- package/dist/{799.bundle.758558e64147e5aad612.js → 822.bundle.5cdd9439a62e5c7e902f.js} +81 -34
- package/dist/{953.bundle.3b0189ebc11cf0946f18.js → 886.bundle.9e526affbd17b0ed96a6.js} +34 -29
- package/dist/{82.bundle.b824c7d8ff72de0fc149.js → 90.bundle.48058fca24e7d8be310a.js} +1397 -366
- package/dist/945.min.worker.js +1 -1
- package/dist/945.min.worker.js.map +1 -1
- package/dist/{707.bundle.0b18a871c9eb8df9e992.js → 967.bundle.11d9620b673abef271eb.js} +584 -435
- package/dist/app-config.js +7 -7
- package/dist/{app.bundle.f0885cb776ab9ae8974b.js → app.bundle.8e953ffe740f4bae80cf.js} +69865 -67829
- package/dist/app.bundle.css +9 -9
- package/dist/assets/yandex-browser-manifest.json +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/{dicom-microscopy-viewer.bundle.aa60bdf008c32c39cfd7.js → dicom-microscopy-viewer.bundle.2c146384eb9466d02ff8.js} +5 -4
- package/dist/es6-shim.min.js +3569 -2
- package/dist/google.js +8 -7
- package/dist/index.html +1 -1
- package/dist/{index.worker.1c69152d710fa7b84bce.worker.js → index.worker.e62ecca63f1a2e124230.worker.js} +2 -2
- package/dist/index.worker.e62ecca63f1a2e124230.worker.js.map +1 -0
- package/dist/init-service-worker.js +3 -5
- package/dist/oidc-client.min.js +10857 -39
- package/dist/polyfill.min.js +184 -1
- package/dist/silent-refresh.html +18 -9
- package/dist/sw.js +1 -1
- package/package.json +19 -20
- package/dist/780.bundle.fd0f13dc92e9caa0581e.js +0 -4769
- package/dist/index.worker.1c69152d710fa7b84bce.worker.js.map +0 -1
- /package/dist/{55.css → 250.css} +0 -0
- /package/dist/{806.css → 579.css} +0 -0
- /package/dist/{707.css → 967.css} +0 -0
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
(
|
|
2
|
+
(self["webpackChunk"] = self["webpackChunk"] || []).push([[23],{
|
|
3
3
|
|
|
4
|
-
/***/
|
|
4
|
+
/***/ 7023:
|
|
5
5
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
6
6
|
|
|
7
7
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
8
8
|
/* harmony export */ ZP: () => (/* binding */ ResizeDetector)
|
|
9
9
|
/* harmony export */ });
|
|
10
10
|
/* unused harmony exports useResizeDetector, withResizeDetector */
|
|
11
|
-
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(
|
|
12
|
-
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(
|
|
11
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(43001);
|
|
12
|
+
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(14347);
|
|
13
13
|
/*! *****************************************************************************
|
|
14
14
|
Copyright (c) Microsoft Corporation.
|
|
15
15
|
|
|
@@ -893,8 +893,7 @@ function useResizeDetector(props) {
|
|
|
893
893
|
};
|
|
894
894
|
}, [refreshMode, refreshRate, refreshOptions, handleWidth, handleHeight, onResize, observerOptions, ref.current]);
|
|
895
895
|
return __assign({ ref: ref }, size);
|
|
896
|
-
}
|
|
897
|
-
|
|
896
|
+
}
|
|
898
897
|
|
|
899
898
|
/***/ })
|
|
900
899
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
(
|
|
1
|
+
(self["webpackChunk"] = self["webpackChunk"] || []).push([[236],{
|
|
2
2
|
|
|
3
|
-
/***/
|
|
3
|
+
/***/ 80965:
|
|
4
4
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
5
5
|
|
|
6
6
|
"use strict";
|
|
@@ -19,15 +19,15 @@ const package_namespaceObject = JSON.parse('{"u2":"@ohif/extension-dicom-microsc
|
|
|
19
19
|
const id = package_namespaceObject.u2;
|
|
20
20
|
|
|
21
21
|
// EXTERNAL MODULE: ../../../node_modules/react/index.js
|
|
22
|
-
var react = __webpack_require__(
|
|
23
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
24
|
-
var src = __webpack_require__(
|
|
25
|
-
// EXTERNAL MODULE: ../../core/src/index.ts +
|
|
26
|
-
var core_src = __webpack_require__(
|
|
22
|
+
var react = __webpack_require__(43001);
|
|
23
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 458 modules
|
|
24
|
+
var src = __webpack_require__(88344);
|
|
25
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 75 modules
|
|
26
|
+
var core_src = __webpack_require__(78695);
|
|
27
27
|
// EXTERNAL MODULE: ../../../node_modules/react-i18next/dist/es/index.js + 15 modules
|
|
28
|
-
var es = __webpack_require__(
|
|
29
|
-
// EXTERNAL MODULE: ../../../node_modules/mathjs/lib/esm/index.js +
|
|
30
|
-
var esm = __webpack_require__(
|
|
28
|
+
var es = __webpack_require__(69190);
|
|
29
|
+
// EXTERNAL MODULE: ../../../node_modules/mathjs/lib/esm/index.js + 982 modules
|
|
30
|
+
var esm = __webpack_require__(55220);
|
|
31
31
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/utils/coordinateFormatScoord3d2Geometry.js
|
|
32
32
|
|
|
33
33
|
|
|
@@ -61,7 +61,9 @@ function coordinateFormatScoord3d2Geometry(coordinates, pyramid) {
|
|
|
61
61
|
return coordinates;
|
|
62
62
|
}
|
|
63
63
|
function _getPixelSpacing(metadata) {
|
|
64
|
-
if (metadata.PixelSpacing)
|
|
64
|
+
if (metadata.PixelSpacing) {
|
|
65
|
+
return metadata.PixelSpacing;
|
|
66
|
+
}
|
|
65
67
|
const functionalGroup = metadata.SharedFunctionalGroupsSequence[0];
|
|
66
68
|
const pixelMeasures = functionalGroup.PixelMeasuresSequence[0];
|
|
67
69
|
return pixelMeasures.PixelSpacing;
|
|
@@ -211,10 +213,10 @@ const EVENTS = {
|
|
|
211
213
|
* expose only the features/behaviors that are relevant to the application
|
|
212
214
|
*/
|
|
213
215
|
class ViewerManager extends core_src/* PubSubService */.hC {
|
|
214
|
-
constructor(viewer,
|
|
216
|
+
constructor(viewer, viewportId, container, studyInstanceUID, seriesInstanceUID) {
|
|
215
217
|
super(EVENTS);
|
|
216
218
|
this.viewer = viewer;
|
|
217
|
-
this.
|
|
219
|
+
this.viewportId = viewportId;
|
|
218
220
|
this.container = container;
|
|
219
221
|
this.studyInstanceUID = studyInstanceUID;
|
|
220
222
|
this.seriesInstanceUID = seriesInstanceUID;
|
|
@@ -811,7 +813,7 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
811
813
|
clear() {
|
|
812
814
|
this.managedViewers.forEach(managedViewer => managedViewer.destroy());
|
|
813
815
|
this.managedViewers.clear();
|
|
814
|
-
for (
|
|
816
|
+
for (const key in this.annotations) {
|
|
815
817
|
delete this.annotations[key];
|
|
816
818
|
}
|
|
817
819
|
this.roiUids.clear();
|
|
@@ -879,7 +881,9 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
879
881
|
managedViewer
|
|
880
882
|
} = data;
|
|
881
883
|
const roiAnnotation = this.getAnnotation(roiGraphic.uid);
|
|
882
|
-
if (!roiAnnotation)
|
|
884
|
+
if (!roiAnnotation) {
|
|
885
|
+
return;
|
|
886
|
+
}
|
|
883
887
|
roiAnnotation.setRoiGraphic(roiGraphic);
|
|
884
888
|
roiAnnotation.setViewState(managedViewer.getViewState());
|
|
885
889
|
}
|
|
@@ -933,7 +937,9 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
933
937
|
} = data;
|
|
934
938
|
const selectedAnnotation = this.getAnnotation(roiGraphic.uid);
|
|
935
939
|
if (selectedAnnotation && selectedAnnotation !== this.getSelectedAnnotation()) {
|
|
936
|
-
if (this.selectedAnnotation)
|
|
940
|
+
if (this.selectedAnnotation) {
|
|
941
|
+
this.clearSelection();
|
|
942
|
+
}
|
|
937
943
|
this.selectedAnnotation = selectedAnnotation;
|
|
938
944
|
this._broadcastEvent(MicroscopyService_EVENTS.ANNOTATION_SELECTED, selectedAnnotation);
|
|
939
945
|
}
|
|
@@ -1014,23 +1020,23 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
1014
1020
|
}
|
|
1015
1021
|
|
|
1016
1022
|
/**
|
|
1017
|
-
* Creates a managed viewer instance for the given
|
|
1023
|
+
* Creates a managed viewer instance for the given third-party API's viewer.
|
|
1018
1024
|
* Restores existing annotations for the given study/series.
|
|
1019
1025
|
* Adds event subscriptions for the viewer being added.
|
|
1020
1026
|
* Focuses the selected annotation when the viewer is being loaded into the
|
|
1021
1027
|
* active viewport.
|
|
1022
1028
|
*
|
|
1023
|
-
* @param
|
|
1024
|
-
* @param
|
|
1025
|
-
* @param
|
|
1026
|
-
* @param
|
|
1027
|
-
* @param
|
|
1028
|
-
* @param
|
|
1029
|
+
* @param viewer - Third-party viewer API's object to be managed
|
|
1030
|
+
* @param viewportId - The viewport Id where the viewer will be loaded
|
|
1031
|
+
* @param container - The DOM element where it will be rendered
|
|
1032
|
+
* @param studyInstanceUID - The study UID of the loaded image
|
|
1033
|
+
* @param seriesInstanceUID - The series UID of the loaded image
|
|
1034
|
+
* @param displaySets - All displaySets related to the same StudyInstanceUID
|
|
1029
1035
|
*
|
|
1030
1036
|
* @returns {ViewerManager} managed viewer
|
|
1031
1037
|
*/
|
|
1032
|
-
addViewer(viewer,
|
|
1033
|
-
const managedViewer = new viewerManager(viewer,
|
|
1038
|
+
addViewer(viewer, viewportId, container, studyInstanceUID, seriesInstanceUID) {
|
|
1039
|
+
const managedViewer = new viewerManager(viewer, viewportId, container, studyInstanceUID, seriesInstanceUID);
|
|
1034
1040
|
this._restoreAnnotations(managedViewer);
|
|
1035
1041
|
viewer._manager = managedViewer;
|
|
1036
1042
|
this.managedViewers.add(managedViewer);
|
|
@@ -1039,7 +1045,7 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
1039
1045
|
this._addManagedViewerSubscriptions(managedViewer);
|
|
1040
1046
|
if (this.pendingFocus) {
|
|
1041
1047
|
this.pendingFocus = false;
|
|
1042
|
-
this.focusAnnotation(this.selectedAnnotation,
|
|
1048
|
+
this.focusAnnotation(this.selectedAnnotation, viewportId);
|
|
1043
1049
|
}
|
|
1044
1050
|
return managedViewer;
|
|
1045
1051
|
}
|
|
@@ -1188,7 +1194,9 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
1188
1194
|
* @param {RoiAnnotation} roiAnnotation The instance to be selected
|
|
1189
1195
|
*/
|
|
1190
1196
|
selectAnnotation(roiAnnotation) {
|
|
1191
|
-
if (this.selectedAnnotation)
|
|
1197
|
+
if (this.selectedAnnotation) {
|
|
1198
|
+
this.clearSelection();
|
|
1199
|
+
}
|
|
1192
1200
|
this.selectedAnnotation = roiAnnotation;
|
|
1193
1201
|
this._broadcastEvent(MicroscopyService_EVENTS.ANNOTATION_SELECTED, roiAnnotation);
|
|
1194
1202
|
this.setROIStyle(roiAnnotation.uid, utils_styles.active);
|
|
@@ -1197,12 +1205,12 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
1197
1205
|
/**
|
|
1198
1206
|
* Toggles overview map
|
|
1199
1207
|
*
|
|
1200
|
-
* @param
|
|
1208
|
+
* @param viewportId The active viewport index
|
|
1201
1209
|
* @returns {void}
|
|
1202
1210
|
*/
|
|
1203
|
-
toggleOverviewMap(
|
|
1211
|
+
toggleOverviewMap(viewportId) {
|
|
1204
1212
|
const managedViewers = Array.from(this.managedViewers);
|
|
1205
|
-
const managedViewer = managedViewers.find(mv => mv.
|
|
1213
|
+
const managedViewer = managedViewers.find(mv => mv.viewportId === viewportId);
|
|
1206
1214
|
if (managedViewer) {
|
|
1207
1215
|
managedViewer.toggleOverviewMap();
|
|
1208
1216
|
}
|
|
@@ -1239,10 +1247,10 @@ class MicroscopyService extends core_src/* PubSubService */.hC {
|
|
|
1239
1247
|
* the managed viewer instance is created.
|
|
1240
1248
|
*
|
|
1241
1249
|
* @param {RoiAnnotation} roiAnnotation RoiAnnotation instance to be focused
|
|
1242
|
-
* @param {
|
|
1250
|
+
* @param {string} viewportId Index of the viewport to focus
|
|
1243
1251
|
*/
|
|
1244
|
-
focusAnnotation(roiAnnotation,
|
|
1245
|
-
const filter = mv => mv.
|
|
1252
|
+
focusAnnotation(roiAnnotation, viewportId) {
|
|
1253
|
+
const filter = mv => mv.viewportId === viewportId;
|
|
1246
1254
|
const managedViewer = Array.from(this.managedViewers).find(filter);
|
|
1247
1255
|
if (managedViewer) {
|
|
1248
1256
|
managedViewer.setViewStateByExtent(roiAnnotation);
|
|
@@ -1360,7 +1368,7 @@ MicroscopyService.REGISTRATION = serviceManager => {
|
|
|
1360
1368
|
};
|
|
1361
1369
|
|
|
1362
1370
|
// EXTERNAL MODULE: ../../../node_modules/dcmjs/build/dcmjs.es.js
|
|
1363
|
-
var dcmjs_es = __webpack_require__(
|
|
1371
|
+
var dcmjs_es = __webpack_require__(67540);
|
|
1364
1372
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/utils/callInputDialog.tsx
|
|
1365
1373
|
|
|
1366
1374
|
|
|
@@ -1434,7 +1442,7 @@ function callInputDialog(_ref) {
|
|
|
1434
1442
|
label: "Enter your annotation",
|
|
1435
1443
|
labelClassName: "text-white text-[14px] leading-[1.2]",
|
|
1436
1444
|
autoFocus: true,
|
|
1437
|
-
className: "
|
|
1445
|
+
className: "border-primary-main bg-black",
|
|
1438
1446
|
type: "text",
|
|
1439
1447
|
value: value.defaultValue,
|
|
1440
1448
|
onChange: event => {
|
|
@@ -1544,7 +1552,9 @@ function constructSR(metadata, _ref, annotations) {
|
|
|
1544
1552
|
console.debug('[SR] storing measurements...', measurements);
|
|
1545
1553
|
console.debug('[SR] storing evaluations...', evaluations);
|
|
1546
1554
|
console.debug('[SR] storing presentation state...', presentationState);
|
|
1547
|
-
if (presentationState)
|
|
1555
|
+
if (presentationState) {
|
|
1556
|
+
presentationState.marker = marker;
|
|
1557
|
+
}
|
|
1548
1558
|
|
|
1549
1559
|
/** Avoid incompatibility with dcmjs */
|
|
1550
1560
|
measurements = measurements.map(measurement => {
|
|
@@ -1654,10 +1664,10 @@ function constructSR(metadata, _ref, annotations) {
|
|
|
1654
1664
|
* @param filename
|
|
1655
1665
|
*/
|
|
1656
1666
|
function saveByteArray(buffer, filename) {
|
|
1657
|
-
|
|
1667
|
+
const blob = new Blob([buffer], {
|
|
1658
1668
|
type: 'application/dicom'
|
|
1659
1669
|
});
|
|
1660
|
-
|
|
1670
|
+
const link = document.createElement('a');
|
|
1661
1671
|
link.href = window.URL.createObjectURL(blob);
|
|
1662
1672
|
link.download = filename;
|
|
1663
1673
|
link.click();
|
|
@@ -1728,14 +1738,14 @@ function MicroscopyPanel(props) {
|
|
|
1728
1738
|
displaySetService
|
|
1729
1739
|
} = servicesManager.services;
|
|
1730
1740
|
(0,react.useEffect)(() => {
|
|
1731
|
-
const viewport = props.viewports[props.
|
|
1741
|
+
const viewport = props.viewports[props.activeViewportId];
|
|
1732
1742
|
if (viewport.displaySetInstanceUIDs[0]) {
|
|
1733
1743
|
const displaySet = displaySetService.getDisplaySetByUID(viewport.displaySetInstanceUIDs[0]);
|
|
1734
1744
|
if (displaySet) {
|
|
1735
1745
|
setStudyInstanceUID(displaySet.StudyInstanceUID);
|
|
1736
1746
|
}
|
|
1737
1747
|
}
|
|
1738
|
-
}, [props.viewports, props.
|
|
1748
|
+
}, [props.viewports, props.activeViewportId]);
|
|
1739
1749
|
(0,react.useEffect)(() => {
|
|
1740
1750
|
const onAnnotationUpdated = () => {
|
|
1741
1751
|
const roiAnnotations = microscopyService.getAnnotationsForStudy(studyInstanceUID);
|
|
@@ -1883,7 +1893,7 @@ function MicroscopyPanel(props) {
|
|
|
1883
1893
|
*/
|
|
1884
1894
|
const onDeleteCurrentSRHandler = async () => {
|
|
1885
1895
|
try {
|
|
1886
|
-
const activeViewport = props.viewports[props.
|
|
1896
|
+
const activeViewport = props.viewports[props.activeViewportId];
|
|
1887
1897
|
const {
|
|
1888
1898
|
StudyInstanceUID
|
|
1889
1899
|
} = activeViewport;
|
|
@@ -1927,7 +1937,7 @@ function MicroscopyPanel(props) {
|
|
|
1927
1937
|
} = _ref;
|
|
1928
1938
|
const roiAnnotation = microscopyService.getAnnotation(uid);
|
|
1929
1939
|
microscopyService.selectAnnotation(roiAnnotation);
|
|
1930
|
-
microscopyService.focusAnnotation(roiAnnotation, props.
|
|
1940
|
+
microscopyService.focusAnnotation(roiAnnotation, props.activeViewportId);
|
|
1931
1941
|
};
|
|
1932
1942
|
|
|
1933
1943
|
/**
|
|
@@ -1978,7 +1988,7 @@ function MicroscopyPanel(props) {
|
|
|
1978
1988
|
});
|
|
1979
1989
|
const disabled = data.length === 0;
|
|
1980
1990
|
return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("div", {
|
|
1981
|
-
className: "
|
|
1991
|
+
className: "ohif-scrollbar overflow-y-auto overflow-x-hidden",
|
|
1982
1992
|
"data-cy": 'measurements-panel'
|
|
1983
1993
|
}, /*#__PURE__*/react.createElement(src/* MeasurementTable */.wt, {
|
|
1984
1994
|
title: "Measurements",
|
|
@@ -2013,12 +2023,12 @@ function getPanelModule(_ref) {
|
|
|
2013
2023
|
} = _ref;
|
|
2014
2024
|
const wrappedMeasurementPanel = () => {
|
|
2015
2025
|
const [{
|
|
2016
|
-
|
|
2026
|
+
activeViewportId,
|
|
2017
2027
|
viewports
|
|
2018
|
-
}
|
|
2028
|
+
}] = (0,src/* useViewportGrid */.O_)();
|
|
2019
2029
|
return /*#__PURE__*/react.createElement(MicroscopyPanel_MicroscopyPanel, {
|
|
2020
2030
|
viewports: viewports,
|
|
2021
|
-
|
|
2031
|
+
activeViewportId: activeViewportId,
|
|
2022
2032
|
onSaveComplete: () => {},
|
|
2023
2033
|
onRejectComplete: () => {},
|
|
2024
2034
|
commandsManager: commandsManager,
|
|
@@ -2057,7 +2067,9 @@ function getCommandsModule(_ref) {
|
|
|
2057
2067
|
} = _ref2;
|
|
2058
2068
|
if (uid) {
|
|
2059
2069
|
const roiAnnotation = microscopyService.getAnnotation(uid);
|
|
2060
|
-
if (roiAnnotation)
|
|
2070
|
+
if (roiAnnotation) {
|
|
2071
|
+
microscopyService.removeAnnotation(roiAnnotation);
|
|
2072
|
+
}
|
|
2061
2073
|
}
|
|
2062
2074
|
},
|
|
2063
2075
|
setLabel: _ref3 => {
|
|
@@ -2096,7 +2108,7 @@ function getCommandsModule(_ref) {
|
|
|
2096
2108
|
}];
|
|
2097
2109
|
if (['line', 'box', 'circle', 'point', 'polygon', 'freehandpolygon', 'freehandline'].indexOf(toolName) >= 0) {
|
|
2098
2110
|
// TODO: read from configuration
|
|
2099
|
-
|
|
2111
|
+
const options = {
|
|
2100
2112
|
geometryType: toolName,
|
|
2101
2113
|
vertexEnabled: true,
|
|
2102
2114
|
styleOptions: utils_styles["default"],
|
|
@@ -2126,37 +2138,23 @@ function getCommandsModule(_ref) {
|
|
|
2126
2138
|
}], dragPanOnMiddle, dragZoomOnRight]);
|
|
2127
2139
|
}
|
|
2128
2140
|
},
|
|
2129
|
-
incrementActiveViewport: () => {
|
|
2130
|
-
const {
|
|
2131
|
-
activeViewportIndex,
|
|
2132
|
-
viewports
|
|
2133
|
-
} = viewportGridService.getState();
|
|
2134
|
-
const nextViewportIndex = (activeViewportIndex + 1) % viewports.length;
|
|
2135
|
-
viewportGridService.setActiveViewportIndex(nextViewportIndex);
|
|
2136
|
-
},
|
|
2137
|
-
decrementActiveViewport: () => {
|
|
2138
|
-
const {
|
|
2139
|
-
activeViewportIndex,
|
|
2140
|
-
viewports
|
|
2141
|
-
} = viewportGridService.getState();
|
|
2142
|
-
const nextViewportIndex = (activeViewportIndex - 1 + viewports.length) % viewports.length;
|
|
2143
|
-
viewportGridService.setActiveViewportIndex(nextViewportIndex);
|
|
2144
|
-
},
|
|
2145
2141
|
toggleOverlays: () => {
|
|
2146
2142
|
// overlay
|
|
2147
2143
|
const overlays = document.getElementsByClassName('microscopy-viewport-overlay');
|
|
2148
2144
|
let onoff = false; // true if this will toggle on
|
|
2149
2145
|
for (let i = 0; i < overlays.length; i++) {
|
|
2150
|
-
if (i === 0)
|
|
2146
|
+
if (i === 0) {
|
|
2147
|
+
onoff = overlays.item(0).classList.contains('hidden');
|
|
2148
|
+
}
|
|
2151
2149
|
overlays.item(i).classList.toggle('hidden');
|
|
2152
2150
|
}
|
|
2153
2151
|
|
|
2154
2152
|
// overview
|
|
2155
2153
|
const {
|
|
2156
|
-
|
|
2154
|
+
activeViewportId,
|
|
2157
2155
|
viewports
|
|
2158
2156
|
} = viewportGridService.getState();
|
|
2159
|
-
microscopyService.toggleOverviewMap(
|
|
2157
|
+
microscopyService.toggleOverviewMap(activeViewportId);
|
|
2160
2158
|
},
|
|
2161
2159
|
toggleAnnotations: () => {
|
|
2162
2160
|
microscopyService.toggleROIsVisibility();
|
|
@@ -2178,14 +2176,6 @@ function getCommandsModule(_ref) {
|
|
|
2178
2176
|
storeContexts: [],
|
|
2179
2177
|
options: {}
|
|
2180
2178
|
},
|
|
2181
|
-
incrementActiveViewport: {
|
|
2182
|
-
commandFn: actions.incrementActiveViewport,
|
|
2183
|
-
storeContexts: []
|
|
2184
|
-
},
|
|
2185
|
-
decrementActiveViewport: {
|
|
2186
|
-
commandFn: actions.decrementActiveViewport,
|
|
2187
|
-
storeContexts: []
|
|
2188
|
-
},
|
|
2189
2179
|
toggleOverlays: {
|
|
2190
2180
|
commandFn: actions.toggleOverlays,
|
|
2191
2181
|
storeContexts: [],
|
|
@@ -2373,7 +2363,7 @@ async function loadSR(microscopyService, microscopySRDisplaySet, referencedDispl
|
|
|
2373
2363
|
async function _getROIsFromToolState(naturalizedDataset, FrameOfReferenceUID) {
|
|
2374
2364
|
const toolState = MeasurementReport.generateToolState(naturalizedDataset);
|
|
2375
2365
|
const tools = Object.getOwnPropertyNames(toolState);
|
|
2376
|
-
const DICOMMicroscopyViewer = await __webpack_require__.e(/* import() | dicom-microscopy-viewer */ 18).then(__webpack_require__.t.bind(__webpack_require__,
|
|
2366
|
+
const DICOMMicroscopyViewer = await __webpack_require__.e(/* import() | dicom-microscopy-viewer */ 18).then(__webpack_require__.t.bind(__webpack_require__, 42613, 23));
|
|
2377
2367
|
const measurementGroupContentItems = _getMeasurementGroups(naturalizedDataset);
|
|
2378
2368
|
const rois = [];
|
|
2379
2369
|
const labels = [];
|
|
@@ -2613,7 +2603,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
2613
2603
|
|
|
2614
2604
|
|
|
2615
2605
|
const Component = /*#__PURE__*/react.lazy(() => {
|
|
2616
|
-
return Promise.all(/* import() */[__webpack_require__.e(
|
|
2606
|
+
return Promise.all(/* import() */[__webpack_require__.e(754), __webpack_require__.e(604), __webpack_require__.e(417), __webpack_require__.e(23), __webpack_require__.e(90), __webpack_require__.e(250)]).then(__webpack_require__.bind(__webpack_require__, 76516));
|
|
2617
2607
|
});
|
|
2618
2608
|
const MicroscopyViewport = props => {
|
|
2619
2609
|
return /*#__PURE__*/react.createElement(react.Suspense, {
|
|
@@ -2655,7 +2645,7 @@ const MicroscopyViewport = props => {
|
|
|
2655
2645
|
*
|
|
2656
2646
|
* @param props {*}
|
|
2657
2647
|
* @param props.displaySets
|
|
2658
|
-
* @param props.
|
|
2648
|
+
* @param props.viewportId
|
|
2659
2649
|
* @param props.viewportLabel
|
|
2660
2650
|
* @param props.dataSource
|
|
2661
2651
|
* @param props.viewportOptions
|
|
@@ -2668,16 +2658,15 @@ const MicroscopyViewport = props => {
|
|
|
2668
2658
|
} = props;
|
|
2669
2659
|
const [viewportGrid, viewportGridService] = (0,src/* useViewportGrid */.O_)();
|
|
2670
2660
|
const {
|
|
2671
|
-
|
|
2672
|
-
activeViewportIndex
|
|
2661
|
+
activeViewportId
|
|
2673
2662
|
} = viewportGrid;
|
|
2674
2663
|
return /*#__PURE__*/react.createElement(MicroscopyViewport, _extends({
|
|
2675
2664
|
servicesManager: servicesManager,
|
|
2676
2665
|
extensionManager: extensionManager,
|
|
2677
2666
|
commandsManager: commandsManager,
|
|
2678
|
-
|
|
2679
|
-
setViewportActive:
|
|
2680
|
-
viewportGridService.
|
|
2667
|
+
activeViewportId: activeViewportId,
|
|
2668
|
+
setViewportActive: viewportId => {
|
|
2669
|
+
viewportGridService.setActiveViewportId(viewportId);
|
|
2681
2670
|
},
|
|
2682
2671
|
viewportData: viewportOptions
|
|
2683
2672
|
}, props));
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
(
|
|
2
|
+
(self["webpackChunk"] = self["webpackChunk"] || []).push([[250,579],{
|
|
3
3
|
|
|
4
|
-
/***/
|
|
4
|
+
/***/ 76516:
|
|
5
5
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
6
6
|
|
|
7
7
|
// ESM COMPAT FLAG
|
|
@@ -13,22 +13,22 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
// EXTERNAL MODULE: ../../../node_modules/react/index.js
|
|
16
|
-
var react = __webpack_require__(
|
|
16
|
+
var react = __webpack_require__(43001);
|
|
17
17
|
// EXTERNAL MODULE: ../../../node_modules/react-resize-detector/build/index.esm.js
|
|
18
|
-
var index_esm = __webpack_require__(
|
|
18
|
+
var index_esm = __webpack_require__(7023);
|
|
19
19
|
// EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
|
|
20
|
-
var prop_types = __webpack_require__(
|
|
20
|
+
var prop_types = __webpack_require__(3827);
|
|
21
21
|
var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
|
|
22
22
|
// EXTERNAL MODULE: ../../../node_modules/lodash.debounce/index.js
|
|
23
|
-
var lodash_debounce = __webpack_require__(
|
|
23
|
+
var lodash_debounce = __webpack_require__(8324);
|
|
24
24
|
var lodash_debounce_default = /*#__PURE__*/__webpack_require__.n(lodash_debounce);
|
|
25
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
26
|
-
var src = __webpack_require__(
|
|
25
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 458 modules
|
|
26
|
+
var src = __webpack_require__(88344);
|
|
27
27
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/DicomMicroscopyViewport.css
|
|
28
28
|
// extracted by mini-css-extract-plugin
|
|
29
29
|
|
|
30
30
|
// EXTERNAL MODULE: ../../../node_modules/classnames/index.js
|
|
31
|
-
var classnames = __webpack_require__(
|
|
31
|
+
var classnames = __webpack_require__(44921);
|
|
32
32
|
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
|
|
33
33
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/components/ViewportOverlay/listComponentGenerator.tsx
|
|
34
34
|
const listComponentGenerator = props => {
|
|
@@ -36,11 +36,17 @@ const listComponentGenerator = props => {
|
|
|
36
36
|
list,
|
|
37
37
|
itemGenerator
|
|
38
38
|
} = props;
|
|
39
|
-
if (!list)
|
|
39
|
+
if (!list) {
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
40
42
|
return list.map(item => {
|
|
41
|
-
if (!item)
|
|
43
|
+
if (!item) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
42
46
|
const generator = item.generator || itemGenerator;
|
|
43
|
-
if (!generator)
|
|
47
|
+
if (!generator) {
|
|
48
|
+
throw new Error(`No generator for ${item}`);
|
|
49
|
+
}
|
|
44
50
|
return generator({
|
|
45
51
|
...props,
|
|
46
52
|
item
|
|
@@ -52,9 +58,9 @@ const listComponentGenerator = props => {
|
|
|
52
58
|
// extracted by mini-css-extract-plugin
|
|
53
59
|
|
|
54
60
|
// EXTERNAL MODULE: ../../../node_modules/moment/moment.js
|
|
55
|
-
var moment_moment = __webpack_require__(
|
|
56
|
-
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js +
|
|
57
|
-
var esm = __webpack_require__(
|
|
61
|
+
var moment_moment = __webpack_require__(71271);
|
|
62
|
+
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 337 modules
|
|
63
|
+
var esm = __webpack_require__(45754);
|
|
58
64
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/components/ViewportOverlay/utils.ts
|
|
59
65
|
|
|
60
66
|
|
|
@@ -230,8 +236,12 @@ const itemGenerator = props => {
|
|
|
230
236
|
props.formatTime = formatDICOMTime;
|
|
231
237
|
props.formatPN = formatPN;
|
|
232
238
|
props.formatNumberPrecision = formatNumberPrecision;
|
|
233
|
-
if (condition && !condition(props))
|
|
234
|
-
|
|
239
|
+
if (condition && !condition(props)) {
|
|
240
|
+
return null;
|
|
241
|
+
}
|
|
242
|
+
if (!contents && !valueFunc) {
|
|
243
|
+
return null;
|
|
244
|
+
}
|
|
235
245
|
const value = valueFunc && valueFunc(props);
|
|
236
246
|
const contentsValue = contents && contents(props) || [{
|
|
237
247
|
className: 'mr-1',
|
|
@@ -250,9 +260,9 @@ const itemGenerator = props => {
|
|
|
250
260
|
};
|
|
251
261
|
/* harmony default export */ const ViewportOverlay = (generateFromConfig({}));
|
|
252
262
|
// EXTERNAL MODULE: ../../../node_modules/dicomweb-client/build/dicomweb-client.es.js
|
|
253
|
-
var dicomweb_client_es = __webpack_require__(
|
|
254
|
-
// EXTERNAL MODULE: ../../core/src/index.ts +
|
|
255
|
-
var core_src = __webpack_require__(
|
|
263
|
+
var dicomweb_client_es = __webpack_require__(97604);
|
|
264
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 75 modules
|
|
265
|
+
var core_src = __webpack_require__(78695);
|
|
256
266
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/utils/dicomWebClient.ts
|
|
257
267
|
|
|
258
268
|
|
|
@@ -332,9 +342,9 @@ function getDicomWebClient(_ref) {
|
|
|
332
342
|
return client;
|
|
333
343
|
}
|
|
334
344
|
// EXTERNAL MODULE: ../../../node_modules/dcmjs/build/dcmjs.es.js
|
|
335
|
-
var dcmjs_es = __webpack_require__(
|
|
336
|
-
// EXTERNAL MODULE: ../../../extensions/default/src/index.ts +
|
|
337
|
-
var default_src = __webpack_require__(
|
|
345
|
+
var dcmjs_es = __webpack_require__(67540);
|
|
346
|
+
// EXTERNAL MODULE: ../../../extensions/default/src/index.ts + 74 modules
|
|
347
|
+
var default_src = __webpack_require__(48090);
|
|
338
348
|
;// CONCATENATED MODULE: ../../../extensions/dicom-microscopy/src/utils/cleanDenaturalizedDataset.ts
|
|
339
349
|
|
|
340
350
|
function isPrimitive(v) {
|
|
@@ -415,11 +425,11 @@ class DicomMicroscopyViewport extends react.Component {
|
|
|
415
425
|
this.setViewportActiveHandler = () => {
|
|
416
426
|
const {
|
|
417
427
|
setViewportActive,
|
|
418
|
-
|
|
419
|
-
|
|
428
|
+
viewportId,
|
|
429
|
+
activeViewportId
|
|
420
430
|
} = this.props;
|
|
421
|
-
if (
|
|
422
|
-
setViewportActive(
|
|
431
|
+
if (viewportId !== activeViewportId) {
|
|
432
|
+
setViewportActive(viewportId);
|
|
423
433
|
}
|
|
424
434
|
};
|
|
425
435
|
this.onWindowResize = () => {
|
|
@@ -430,7 +440,9 @@ class DicomMicroscopyViewport extends react.Component {
|
|
|
430
440
|
} = this.props.servicesManager.services;
|
|
431
441
|
this.microscopyService = microscopyService;
|
|
432
442
|
this.debouncedResize = lodash_debounce_default()(() => {
|
|
433
|
-
if (this.viewer)
|
|
443
|
+
if (this.viewer) {
|
|
444
|
+
this.viewer.resize();
|
|
445
|
+
}
|
|
434
446
|
}, 100);
|
|
435
447
|
}
|
|
436
448
|
/**
|
|
@@ -465,7 +477,7 @@ class DicomMicroscopyViewport extends react.Component {
|
|
|
465
477
|
const {
|
|
466
478
|
viewer: DicomMicroscopyViewer,
|
|
467
479
|
metadata: metadataUtils
|
|
468
|
-
} = await __webpack_require__.e(/* import() | dicom-microscopy-viewer */ 18).then(__webpack_require__.t.bind(__webpack_require__,
|
|
480
|
+
} = await __webpack_require__.e(/* import() | dicom-microscopy-viewer */ 18).then(__webpack_require__.t.bind(__webpack_require__, 42613, 23));
|
|
469
481
|
const microscopyViewer = DicomMicroscopyViewer.VolumeImageViewer;
|
|
470
482
|
const client = getDicomWebClient({
|
|
471
483
|
extensionManager: this.props.extensionManager,
|
|
@@ -571,7 +583,7 @@ class DicomMicroscopyViewport extends react.Component {
|
|
|
571
583
|
StudyInstanceUID,
|
|
572
584
|
SeriesInstanceUID
|
|
573
585
|
} = displaySet;
|
|
574
|
-
this.managedViewer = this.microscopyService.addViewer(this.viewer, this.props.
|
|
586
|
+
this.managedViewer = this.microscopyService.addViewer(this.viewer, this.props.viewportId, container, StudyInstanceUID, SeriesInstanceUID);
|
|
575
587
|
this.managedViewer.addContextMenuCallback(event => {
|
|
576
588
|
// TODO: refactor this after Bill's changes on ContextMenu feature get merged
|
|
577
589
|
// const roiAnnotationNearBy = this.getNearbyROI(event);
|
|
@@ -592,9 +604,13 @@ class DicomMicroscopyViewport extends react.Component {
|
|
|
592
604
|
componentDidMount() {
|
|
593
605
|
const {
|
|
594
606
|
displaySets,
|
|
595
|
-
|
|
607
|
+
viewportOptions
|
|
596
608
|
} = this.props;
|
|
597
|
-
const
|
|
609
|
+
const {
|
|
610
|
+
viewportId
|
|
611
|
+
} = viewportOptions;
|
|
612
|
+
// Todo-rename: this is always getting the 0
|
|
613
|
+
const displaySet = displaySets[0];
|
|
598
614
|
this.installOpenLayersRenderer(this.container.current, displaySet).then(() => {
|
|
599
615
|
this.setState({
|
|
600
616
|
isLoaded: true
|
|
@@ -658,17 +674,17 @@ class DicomMicroscopyViewport extends react.Component {
|
|
|
658
674
|
style: style,
|
|
659
675
|
ref: this.container
|
|
660
676
|
}), this.state.isLoaded ? null : /*#__PURE__*/react.createElement(src/* LoadingIndicatorProgress */.LE, {
|
|
661
|
-
className: '
|
|
677
|
+
className: 'h-full w-full bg-black'
|
|
662
678
|
}));
|
|
663
679
|
}
|
|
664
680
|
}
|
|
665
681
|
DicomMicroscopyViewport.propTypes = {
|
|
666
682
|
viewportData: (prop_types_default()).object,
|
|
667
|
-
|
|
683
|
+
activeViewportId: (prop_types_default()).string,
|
|
668
684
|
setViewportActive: (prop_types_default()).func,
|
|
669
685
|
// props from OHIF Viewport Grid
|
|
670
686
|
displaySets: (prop_types_default()).array,
|
|
671
|
-
|
|
687
|
+
viewportId: (prop_types_default()).string,
|
|
672
688
|
viewportLabel: (prop_types_default()).string,
|
|
673
689
|
dataSource: (prop_types_default()).object,
|
|
674
690
|
viewportOptions: (prop_types_default()).object,
|