@ohif/app 3.9.0-beta.3 → 3.9.0-beta.30
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/{117.bundle.a80b1511ef4b302fb7cc.js → 117.bundle.ba41cf7978afb629dcff.js} +66 -18
- package/dist/{889.bundle.5611d644c8cb24f864ff.js → 121.bundle.461cdd26c51e085deaec.js} +40 -12
- package/dist/{998.bundle.b8ffa2bc390d5d4edf16.js → 129.bundle.ccccc4e42658b699feca.js} +22 -21
- package/dist/{574.bundle.72bd5061ccd504235419.js → 139.bundle.679c4baad7c7f65ebabd.js} +25 -37
- package/dist/{989.bundle.bf6bc62794b717824f7e.js → 14.bundle.d598ec76439971a82907.js} +5 -5
- package/dist/{783.bundle.126cd640a5fd49804d8e.js → 140.bundle.62747296bb3696dd345f.js} +2 -2
- package/dist/{164.bundle.1da1cadb56951caef1d6.js → 164.bundle.79cc35bc3e6b792636cd.js} +334 -44
- package/dist/{544.bundle.e8227e98860e39636a00.js → 172.bundle.e3e82e398b39958577e6.js} +16 -30
- package/dist/{487.bundle.b1a29dcf2b152693935d.js → 194.bundle.9cd41c6e2b415f350d2c.js} +5 -5
- package/dist/{699.bundle.2adb0c0ad7f7cb9e338a.js → 211.bundle.ab7c92a8a4df9aec1b43.js} +33 -4
- package/dist/{776.bundle.9680d347bafb63f8688a.js → 218.bundle.4a08087f702d768af647.js} +14 -9
- package/dist/{236.bundle.4ca7987e1d57f60ec13a.js → 236.bundle.343bcd0be60d0ae61901.js} +396 -56
- package/dist/{530.bundle.17b9a34fefff133e5379.js → 265.bundle.b32a0cc143efa80ee3cc.js} +8 -12
- package/dist/{862.bundle.55dde21bab4c841b6259.js → 323.bundle.8e5137bf61179c8704d6.js} +5 -9
- package/dist/{342.bundle.340982440de15f540a89.js → 342.bundle.67c49f2e52829a5696a4.js} +7 -0
- package/dist/{550.bundle.a2267752bc8874fedfd5.js → 363.bundle.954d90c5692cbb941b4a.js} +226 -150
- package/dist/{473.bundle.6cd4be953853f35b29c3.js → 367.bundle.6a0746aeca702ae6eba6.js} +279 -29
- package/dist/{806.bundle.50e039eb624382ee1fce.js → 370.bundle.02108fbb881fbe75b59c.js} +82 -11
- package/dist/{682.bundle.ec07ec1bc2f69f9d0d94.js → 382.bundle.d4252c006f2f98873356.js} +24 -4
- package/dist/{907.bundle.13dc5f4b5581d12562b8.js → 444.bundle.4cd603be188efd1315c0.js} +4 -4
- package/dist/{483.bundle.a353efc5a5dd563c903c.js → 483.bundle.016de3c3ec209d9fa42a.js} +16 -3
- package/dist/{35.bundle.0168d78bfad0cb784112.js → 501.bundle.3dcc63f03d9c252a9bee.js} +885 -312
- package/dist/{905.bundle.4105e428f61f925a310d.js → 552.bundle.d313d009d2c2e305dded.js} +3 -3
- package/dist/{981.bundle.a0fabcf9845c1a623990.js → 555.bundle.c6c0a1fe9e2c03f8af8c.js} +7 -6
- package/dist/{939.bundle.9d93b2e47c52338747a2.js → 612.bundle.297a033523539e0b47f9.js} +2 -2
- package/dist/{295.bundle.9926ff25c6dbf53845b1.js → 675.bundle.c9720f40fd7c7e9b7e54.js} +5 -9
- package/dist/{325.bundle.98612a2afacf5d63b25a.js → 717.bundle.3a92ee3bed8e262a711f.js} +32 -23
- package/dist/{722.bundle.2547630541b670f10d6e.js → 722.bundle.1242e0348afc63ca4f5e.js} +10 -4
- package/dist/{121.bundle.b582314ec0024fdf2d15.js → 792.bundle.485ad2f98823a4b3feb1.js} +6 -10
- package/dist/{721.bundle.a210baa38d34b9bcacfd.js → 799.bundle.990e75c08a3433cf365e.js} +12 -12
- package/dist/{448.bundle.70dc1363d8b2783dc51e.js → 806.bundle.66255407803c821b5dd8.js} +5 -5
- package/dist/{390.bundle.2751b81dbe439a40ba90.js → 827.bundle.0ea035fe8a66ed623ca9.js} +446 -53
- package/dist/{297.bundle.194d8985ab974839b5b6.js → 837.bundle.ff9fe44bf863a5bceabc.js} +2 -2
- package/dist/{961.bundle.2c81565fe334d6cd2f9c.js → 853.bundle.c9ec20a34533e6a3cc9a.js} +4 -4
- package/dist/{94.bundle.9b92ece5801a7df7d08c.js → 920.bundle.a1610f58fa4bbb2fec10.js} +39 -9
- package/dist/{243.bundle.96439f589bc338b977ea.js → 989.bundle.846e557e47d4cae6d040.js} +4 -4
- package/dist/app-config.js +5 -1
- package/dist/app.bundle.css +5 -4
- package/dist/{app.bundle.cbecae40543f47cc8c7e.js → app.bundle.e7838557fb4fd76da32e.js} +162742 -46045
- package/dist/assets/images/action-new-dialog.svg +14 -0
- package/dist/assets/images/arrow-down.svg +5 -0
- package/dist/assets/images/arrow-left-small.svg +6 -0
- package/dist/assets/images/arrow-left.svg +6 -0
- package/dist/assets/images/arrow-right-small.svg +6 -0
- package/dist/assets/images/arrow-right.svg +6 -0
- package/dist/assets/images/calendar.svg +5 -0
- package/dist/assets/images/cancel.svg +8 -0
- package/dist/assets/images/checkbox-active.svg +9 -0
- package/dist/assets/images/checkbox-checked.svg +9 -0
- package/dist/assets/images/checkbox-default.svg +3 -0
- package/dist/assets/images/checkbox-unchecked.svg +3 -0
- package/dist/assets/images/chevron-down.svg +3 -0
- package/dist/assets/images/chevron-left.svg +3 -0
- package/dist/assets/images/chevron-menu.svg +12 -0
- package/dist/assets/images/chevron-next.svg +6 -0
- package/dist/assets/images/chevron-prev.svg +6 -0
- package/dist/assets/images/chevron-right.svg +3 -0
- package/dist/assets/images/circled-checkmark.svg +6 -0
- package/dist/assets/images/clipboard.svg +1 -0
- package/dist/assets/images/closeIcon.svg +3 -0
- package/dist/assets/images/content-next.svg +9 -0
- package/dist/assets/images/content-prev.svg +9 -0
- package/dist/assets/images/dotted-circle.svg +3 -0
- package/dist/assets/images/edit-patient.svg +15 -0
- package/dist/assets/images/exclamation.svg +9 -0
- package/dist/assets/images/external-link.svg +5 -0
- package/dist/assets/images/eye-hidden.svg +8 -0
- package/dist/assets/images/eye-visible.svg +6 -0
- package/dist/assets/images/focus-frame-target.svg +13 -0
- package/dist/assets/images/group-layers.svg +6 -0
- package/dist/assets/images/icon-add.svg +15 -0
- package/dist/assets/images/icon-alert-small.svg +8 -0
- package/dist/assets/images/icon-chevron-patient.svg +12 -0
- package/dist/assets/images/icon-clear-field.svg +8 -0
- package/dist/assets/images/icon-close.svg +8 -0
- package/dist/assets/images/icon-color-lut.svg +23 -0
- package/dist/assets/images/icon-delete.svg +17 -0
- package/dist/assets/images/icon-disclosure-close.svg +12 -0
- package/dist/assets/images/icon-disclosure-open.svg +12 -0
- package/dist/assets/images/icon-display-settings.svg +21 -0
- package/dist/assets/images/icon-more-menu.svg +17 -0
- package/dist/assets/images/icon-mpr-alt.svg +9 -0
- package/dist/assets/images/icon-multiple-patients.svg +21 -0
- package/dist/assets/images/icon-next-inactive.svg +6 -0
- package/dist/assets/images/icon-next.svg +6 -0
- package/dist/assets/images/icon-patient.svg +13 -0
- package/dist/assets/images/icon-pause.svg +6 -0
- package/dist/assets/images/icon-play.svg +6 -0
- package/dist/assets/images/icon-prev-inactive.svg +6 -0
- package/dist/assets/images/icon-prev.svg +6 -0
- package/dist/assets/images/icon-rename.svg +15 -0
- package/dist/assets/images/icon-search.svg +9 -0
- package/dist/assets/images/icon-settings.svg +13 -0
- package/dist/assets/images/icon-status-alert.svg +8 -0
- package/dist/assets/images/icon-tool-scissor.svg +17 -0
- package/dist/assets/images/icon-toolbar-back.svg +12 -0
- package/dist/assets/images/icon-transferring.svg +6 -0
- package/dist/assets/images/icon-upload.svg +6 -0
- package/dist/assets/images/icons-alert-outline.svg +8 -0
- package/dist/assets/images/illustration-investigational-use.svg +20 -0
- package/dist/assets/images/info-action.svg +10 -0
- package/dist/assets/images/info-link.svg +7 -0
- package/dist/assets/images/info.svg +3 -0
- package/dist/assets/images/launch-arrow.svg +7 -0
- package/dist/assets/images/launch-info.svg +8 -0
- package/dist/assets/images/layout-advanced-3d-four-up.svg +13 -0
- package/dist/assets/images/layout-advanced-3d-main.svg +12 -0
- package/dist/assets/images/layout-advanced-3d-only.svg +9 -0
- package/dist/assets/images/layout-advanced-3d-primary.svg +12 -0
- package/dist/assets/images/layout-advanced-axial-primary.svg +11 -0
- package/dist/assets/images/layout-advanced-mpr.svg +11 -0
- package/dist/assets/images/layout-common-1x1.svg +9 -0
- package/dist/assets/images/layout-common-1x2.svg +10 -0
- package/dist/assets/images/layout-common-2x2.svg +11 -0
- package/dist/assets/images/layout-common-2x3.svg +12 -0
- package/dist/assets/images/list-bullets.svg +10 -0
- package/dist/assets/images/loading-ohif-mark.svg +5 -0
- package/dist/assets/images/lock.svg +1 -0
- package/dist/assets/images/logo-ohif-small.svg +5 -0
- package/dist/assets/images/magnifier.svg +7 -0
- package/dist/assets/images/navigation-panel-right-hide.svg +5 -0
- package/dist/assets/images/navigation-panel-right-reveal.svg +5 -0
- package/dist/assets/images/next-arrow.svg +12 -0
- package/dist/assets/images/notifications-error.svg +8 -0
- package/dist/assets/images/notifications-info.svg +8 -0
- package/dist/assets/images/notifications-success.svg +6 -0
- package/dist/assets/images/notifications-warning.svg +8 -0
- package/dist/assets/images/notificationwarning-diamond.svg +10 -0
- package/dist/assets/images/ohif-logo-color-darkbg.svg +20 -0
- package/dist/assets/images/ohif-logo.svg +18 -0
- package/dist/assets/images/old-play.svg +9 -0
- package/dist/assets/images/old-stop.svg +9 -0
- package/dist/assets/images/old-trash.svg +9 -0
- package/dist/assets/images/panel-group-more.svg +6 -0
- package/dist/assets/images/panel-group-open-close.svg +6 -0
- package/dist/assets/images/pencil.svg +4 -0
- package/dist/assets/images/power-off.svg +11 -0
- package/dist/assets/images/prev-arrow.svg +12 -0
- package/dist/assets/images/profile.svg +1 -0
- package/dist/assets/images/push-left.svg +5 -0
- package/dist/assets/images/push-right.svg +5 -0
- package/dist/assets/images/row-add.svg +8 -0
- package/dist/assets/images/row-edit.svg +9 -0
- package/dist/assets/images/row-hidden.svg +11 -0
- package/dist/assets/images/row-lock.svg +7 -0
- package/dist/assets/images/row-shown.svg +9 -0
- package/dist/assets/images/row-unlock.svg +7 -0
- package/dist/assets/images/settings.svg +6 -0
- package/dist/assets/images/side-panel-close-left.svg +14 -0
- package/dist/assets/images/side-panel-close-right.svg +14 -0
- package/dist/assets/images/sorting-active-down.svg +6 -0
- package/dist/assets/images/sorting-active-up.svg +6 -0
- package/dist/assets/images/sorting.svg +6 -0
- package/dist/assets/images/status-alert-warning.svg +9 -0
- package/dist/assets/images/status-alert.svg +7 -0
- package/dist/assets/images/status-locked.svg +7 -0
- package/dist/assets/images/status-tracked.svg +7 -0
- package/dist/assets/images/status-untracked.svg +6 -0
- package/dist/assets/images/tab-4d.svg +13 -0
- package/dist/assets/images/tab-linear.svg +8 -0
- package/dist/assets/images/tab-patient-info.svg +7 -0
- package/dist/assets/images/tab-roi-threshold.svg +10 -0
- package/dist/assets/images/tab-segmentation.svg +11 -0
- package/dist/assets/images/tab-studies.svg +13 -0
- package/dist/assets/images/tool-3d-rotate.svg +20 -0
- package/dist/assets/images/tool-angle.svg +12 -0
- package/dist/assets/images/tool-annotate.svg +11 -0
- package/dist/assets/images/tool-bidirectional.svg +21 -0
- package/dist/assets/images/tool-calibrate.svg +19 -0
- package/dist/assets/images/tool-capture.svg +10 -0
- package/dist/assets/images/tool-cine.svg +9 -0
- package/dist/assets/images/tool-circle.svg +8 -0
- package/dist/assets/images/tool-create-threshold.svg +9 -0
- package/dist/assets/images/tool-crosshair.svg +14 -0
- package/dist/assets/images/tool-dicom-tag-browser.svg +15 -0
- package/dist/assets/images/tool-flip-horizontal.svg +10 -0
- package/dist/assets/images/tool-freehand-polygon.svg +37 -0
- package/dist/assets/images/tool-freehand-roi.svg +12 -0
- package/dist/assets/images/tool-freehand.svg +34 -0
- package/dist/assets/images/tool-fusion-color.svg +13 -0
- package/dist/assets/images/tool-invert.svg +10 -0
- package/dist/assets/images/tool-layout-default.svg +22 -0
- package/dist/assets/images/tool-length.svg +16 -0
- package/dist/assets/images/tool-magnetic-roi.svg +17 -0
- package/dist/assets/images/tool-magnify.svg +7 -0
- package/dist/assets/images/tool-measure-elipse.svg +12 -0
- package/dist/assets/images/tool-more-menu.svg +6 -0
- package/dist/assets/images/tool-move.svg +13 -0
- package/dist/assets/images/tool-polygon.svg +3 -0
- package/dist/assets/images/tool-quick-magnify.svg +11 -0
- package/dist/assets/images/tool-rectangle.svg +12 -0
- package/dist/assets/images/tool-reference-lines.svg +13 -0
- package/dist/assets/images/tool-reset.svg +9 -0
- package/dist/assets/images/tool-rotate-right.svg +12 -0
- package/dist/assets/images/tool-seg-brush.svg +9 -0
- package/dist/assets/images/tool-seg-eraser.svg +10 -0
- package/dist/assets/images/tool-seg-shape.svg +9 -0
- package/dist/assets/images/tool-seg-threshold.svg +17 -0
- package/dist/assets/images/tool-spline-roi.svg +14 -0
- package/dist/assets/images/tool-stack-image-sync.svg +10 -0
- package/dist/assets/images/tool-stack-scroll.svg +10 -0
- package/dist/assets/images/tool-toggle-dicom-overlay.svg +9 -0
- package/dist/assets/images/tool-ultrasound-bidirectional.svg +15 -0
- package/dist/assets/images/tool-window-level.svg +9 -0
- package/dist/assets/images/tool-zoom.svg +9 -0
- package/dist/assets/images/tracked.svg +6 -0
- package/dist/assets/images/ui-arrow-down.svg +3 -0
- package/dist/assets/images/ui-arrow-left.svg +3 -0
- package/dist/assets/images/ui-arrow-right.svg +3 -0
- package/dist/assets/images/ui-arrow-up.svg +3 -0
- package/dist/assets/images/unlink.svg +9 -0
- package/dist/assets/images/viewport-status-tracked.svg +13 -0
- package/dist/assets/images/viewport-window-level.svg +17 -0
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/google.js +1 -0
- package/dist/{histogram-worker.bundle.829e14ec12c2b41a4323.js → histogram-worker.bundle.6b31e5ed4c4a7a6998f2.js} +2 -2
- package/dist/index.html +1 -1
- package/dist/{polySeg.bundle.1799686b019040500219.js → polySeg.bundle.cc8400971fca41347b25.js} +3 -3
- package/dist/{suv-peak-worker.bundle.25f8b85eab9ec06da48d.js → suv-peak-worker.bundle.59ea76ac47db7a736234.js} +4 -4
- package/dist/sw.js +1 -1
- package/package.json +26 -23
- /package/dist/{998.css → 129.css} +0 -0
- /package/dist/{574.css → 139.css} +0 -0
- /package/dist/{544.css → 172.css} +0 -0
- /package/dist/{550.css → 363.css} +0 -0
- /package/dist/{325.css → 404.css} +0 -0
- /package/dist/{481.css → 717.css} +0 -0
- /package/dist/{726.bundle.c8de818cf1a3ff0cf7d2.js → 726.bundle.90d63d40a19b058034ee.js} +0 -0
- /package/dist/{835.bundle.4c0eaa2c1a427ee41817.js → 835.bundle.5d1951da8bbc6afdf3e0.js} +0 -0
- /package/dist/{931.bundle.d270a1fda9a2836c3cc5.js → 931.bundle.058f8de4606f27b31f4f.js} +0 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
(globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[
|
|
2
|
+
(globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[363],{
|
|
3
3
|
|
|
4
|
-
/***/
|
|
4
|
+
/***/ 40684:
|
|
5
5
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
6
6
|
|
|
7
7
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -12,8 +12,8 @@
|
|
|
12
12
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(41766);
|
|
13
13
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(11374);
|
|
14
14
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
|
|
15
|
-
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(
|
|
16
|
-
/* harmony import */ var _services_ViewportActionCornersService_ViewportActionCornersService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(
|
|
15
|
+
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(79047);
|
|
16
|
+
/* harmony import */ var _services_ViewportActionCornersService_ViewportActionCornersService__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(2447);
|
|
17
17
|
|
|
18
18
|
|
|
19
19
|
|
|
@@ -141,7 +141,7 @@ const useViewportActionCornersContext = () => (0,react__WEBPACK_IMPORTED_MODULE_
|
|
|
141
141
|
|
|
142
142
|
/***/ }),
|
|
143
143
|
|
|
144
|
-
/***/
|
|
144
|
+
/***/ 11363:
|
|
145
145
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
146
146
|
|
|
147
147
|
// ESM COMPAT FLAG
|
|
@@ -182,7 +182,7 @@ var dist_esm = __webpack_require__(39371);
|
|
|
182
182
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/index.js + 13 modules
|
|
183
183
|
var streaming_image_volume_loader_dist_esm = __webpack_require__(23722);
|
|
184
184
|
// EXTERNAL MODULE: ../../core/src/index.ts + 72 modules
|
|
185
|
-
var src = __webpack_require__(
|
|
185
|
+
var src = __webpack_require__(75186);
|
|
186
186
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/dicom-image-loader/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js
|
|
187
187
|
var cornerstoneDICOMImageLoader_min = __webpack_require__(54578);
|
|
188
188
|
var cornerstoneDICOMImageLoader_min_default = /*#__PURE__*/__webpack_require__.n(cornerstoneDICOMImageLoader_min);
|
|
@@ -260,8 +260,8 @@ function destroy() {
|
|
|
260
260
|
}
|
|
261
261
|
webWorkers.length = 0;
|
|
262
262
|
}
|
|
263
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
264
|
-
var ui_src = __webpack_require__(
|
|
263
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 782 modules
|
|
264
|
+
var ui_src = __webpack_require__(79047);
|
|
265
265
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/utils/callInputDialog.tsx
|
|
266
266
|
|
|
267
267
|
|
|
@@ -437,7 +437,7 @@ function showLabelAnnotationPopup(measurement, uiDialogService, labelConfig) {
|
|
|
437
437
|
}
|
|
438
438
|
/* harmony default export */ const utils_callInputDialog = (callInputDialog);
|
|
439
439
|
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/state.ts
|
|
440
|
-
var state = __webpack_require__(
|
|
440
|
+
var state = __webpack_require__(83910);
|
|
441
441
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/utils/getActiveViewportEnabledElement.ts
|
|
442
442
|
|
|
443
443
|
|
|
@@ -558,7 +558,7 @@ function onCompletedCalibrationLine(servicesManager, csToolsEvent) {
|
|
|
558
558
|
});
|
|
559
559
|
}
|
|
560
560
|
// EXTERNAL MODULE: ../../core/src/utils/index.js + 26 modules
|
|
561
|
-
var utils = __webpack_require__(
|
|
561
|
+
var utils = __webpack_require__(86890);
|
|
562
562
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/tools/OverlayPlaneModuleProvider.ts
|
|
563
563
|
|
|
564
564
|
const _cachedOverlayMetadata = new Map();
|
|
@@ -861,6 +861,7 @@ function initCornerstoneTools(configuration = {}) {
|
|
|
861
861
|
(0,dist_esm.addTool)(dist_esm.SplineROITool);
|
|
862
862
|
(0,dist_esm.addTool)(dist_esm.LivewireContourTool);
|
|
863
863
|
(0,dist_esm.addTool)(dist_esm.OrientationMarkerTool);
|
|
864
|
+
(0,dist_esm.addTool)(dist_esm.PlanarFreehandContourSegmentationTool);
|
|
864
865
|
|
|
865
866
|
// Modify annotation tools to use dashed lines on SR
|
|
866
867
|
const annotationStyle = {
|
|
@@ -911,13 +912,14 @@ const toolNames = {
|
|
|
911
912
|
SplineROI: dist_esm.SplineROITool.toolName,
|
|
912
913
|
LivewireContour: dist_esm.LivewireContourTool.toolName,
|
|
913
914
|
PlanarFreehandROI: dist_esm.PlanarFreehandROITool.toolName,
|
|
914
|
-
OrientationMarker: dist_esm.OrientationMarkerTool.toolName
|
|
915
|
+
OrientationMarker: dist_esm.OrientationMarkerTool.toolName,
|
|
916
|
+
PlanarFreehandContourSegmentation: dist_esm.PlanarFreehandContourSegmentationTool.toolName
|
|
915
917
|
};
|
|
916
918
|
|
|
917
919
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/utils/measurementServiceMappings/constants/supportedTools.js
|
|
918
920
|
/* harmony default export */ const supportedTools = (['Length', 'EllipticalROI', 'CircleROI', 'Bidirectional', 'ArrowAnnotate', 'Angle', 'CobbAngle', 'Probe', 'RectangleROI', 'PlanarFreehandROI', 'SplineROI', 'LivewireContour', 'Probe', 'UltrasoundDirectionalTool']);
|
|
919
921
|
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/utils/measurementServiceMappings/utils/getSOPInstanceAttributes.js
|
|
920
|
-
var getSOPInstanceAttributes = __webpack_require__(
|
|
922
|
+
var getSOPInstanceAttributes = __webpack_require__(20928);
|
|
921
923
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/utils/measurementServiceMappings/Length.ts
|
|
922
924
|
|
|
923
925
|
|
|
@@ -957,12 +959,12 @@ const Length = {
|
|
|
957
959
|
SOPInstanceUID,
|
|
958
960
|
SeriesInstanceUID,
|
|
959
961
|
StudyInstanceUID
|
|
960
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
962
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
961
963
|
let displaySet;
|
|
962
964
|
if (SOPInstanceUID) {
|
|
963
965
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
964
966
|
} else {
|
|
965
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
967
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
966
968
|
}
|
|
967
969
|
const {
|
|
968
970
|
points,
|
|
@@ -980,6 +982,7 @@ const Length = {
|
|
|
980
982
|
metadata,
|
|
981
983
|
referenceSeriesUID: SeriesInstanceUID,
|
|
982
984
|
referenceStudyUID: StudyInstanceUID,
|
|
985
|
+
referencedImageId,
|
|
983
986
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
984
987
|
toolName: metadata.toolName,
|
|
985
988
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1009,15 +1012,12 @@ function getMappedAnnotations(annotation, displaySetService) {
|
|
|
1009
1012
|
const annotations = [];
|
|
1010
1013
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1011
1014
|
const targetStats = cachedStats[targetId];
|
|
1012
|
-
if (!referencedImageId) {
|
|
1013
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1014
|
-
}
|
|
1015
1015
|
const {
|
|
1016
1016
|
SOPInstanceUID,
|
|
1017
1017
|
SeriesInstanceUID,
|
|
1018
1018
|
frameNumber
|
|
1019
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1020
|
-
const displaySet = displaySetService.
|
|
1019
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1020
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1021
1021
|
const {
|
|
1022
1022
|
SeriesNumber
|
|
1023
1023
|
} = displaySet;
|
|
@@ -1196,12 +1196,12 @@ const Bidirectional = {
|
|
|
1196
1196
|
SOPInstanceUID,
|
|
1197
1197
|
SeriesInstanceUID,
|
|
1198
1198
|
StudyInstanceUID
|
|
1199
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1199
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1200
1200
|
let displaySet;
|
|
1201
1201
|
if (SOPInstanceUID) {
|
|
1202
1202
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1203
1203
|
} else {
|
|
1204
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1204
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1205
1205
|
}
|
|
1206
1206
|
const {
|
|
1207
1207
|
points,
|
|
@@ -1219,6 +1219,7 @@ const Bidirectional = {
|
|
|
1219
1219
|
metadata,
|
|
1220
1220
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1221
1221
|
referenceStudyUID: StudyInstanceUID,
|
|
1222
|
+
referencedImageId,
|
|
1222
1223
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1223
1224
|
toolName: metadata.toolName,
|
|
1224
1225
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1249,15 +1250,12 @@ function Bidirectional_getMappedAnnotations(annotation, displaySetService) {
|
|
|
1249
1250
|
const annotations = [];
|
|
1250
1251
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1251
1252
|
const targetStats = cachedStats[targetId];
|
|
1252
|
-
if (!referencedImageId) {
|
|
1253
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1254
|
-
}
|
|
1255
1253
|
const {
|
|
1256
1254
|
SOPInstanceUID,
|
|
1257
1255
|
SeriesInstanceUID,
|
|
1258
1256
|
frameNumber
|
|
1259
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1260
|
-
const displaySet = displaySetService.
|
|
1257
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1258
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1261
1259
|
const {
|
|
1262
1260
|
SeriesNumber
|
|
1263
1261
|
} = displaySet;
|
|
@@ -1391,12 +1389,12 @@ const EllipticalROI = {
|
|
|
1391
1389
|
SOPInstanceUID,
|
|
1392
1390
|
SeriesInstanceUID,
|
|
1393
1391
|
StudyInstanceUID
|
|
1394
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1392
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1395
1393
|
let displaySet;
|
|
1396
1394
|
if (SOPInstanceUID) {
|
|
1397
1395
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1398
1396
|
} else {
|
|
1399
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1397
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1400
1398
|
}
|
|
1401
1399
|
const {
|
|
1402
1400
|
points,
|
|
@@ -1414,6 +1412,7 @@ const EllipticalROI = {
|
|
|
1414
1412
|
metadata,
|
|
1415
1413
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1416
1414
|
referenceStudyUID: StudyInstanceUID,
|
|
1415
|
+
referencedImageId,
|
|
1417
1416
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1418
1417
|
toolName: metadata.toolName,
|
|
1419
1418
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1443,16 +1442,12 @@ function EllipticalROI_getMappedAnnotations(annotation, displaySetService) {
|
|
|
1443
1442
|
const annotations = [];
|
|
1444
1443
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1445
1444
|
const targetStats = cachedStats[targetId];
|
|
1446
|
-
if (!referencedImageId) {
|
|
1447
|
-
// Todo: Non-acquisition plane measurement mapping not supported yet
|
|
1448
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1449
|
-
}
|
|
1450
1445
|
const {
|
|
1451
1446
|
SOPInstanceUID,
|
|
1452
1447
|
SeriesInstanceUID,
|
|
1453
1448
|
frameNumber
|
|
1454
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1455
|
-
const displaySet = displaySetService.
|
|
1449
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1450
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1456
1451
|
const {
|
|
1457
1452
|
SeriesNumber
|
|
1458
1453
|
} = displaySet;
|
|
@@ -1572,7 +1567,7 @@ function EllipticalROI_getDisplayText(mappedAnnotations, displaySet, customizati
|
|
|
1572
1567
|
|
|
1573
1568
|
const CircleROI = {
|
|
1574
1569
|
toAnnotation: measurement => {},
|
|
1575
|
-
toMeasurement: (csToolsEventDetail,
|
|
1570
|
+
toMeasurement: (csToolsEventDetail, displaySetService, CornerstoneViewportService, getValueTypeFromToolType, customizationService) => {
|
|
1576
1571
|
const {
|
|
1577
1572
|
annotation,
|
|
1578
1573
|
viewportId
|
|
@@ -1599,18 +1594,18 @@ const CircleROI = {
|
|
|
1599
1594
|
SOPInstanceUID,
|
|
1600
1595
|
SeriesInstanceUID,
|
|
1601
1596
|
StudyInstanceUID
|
|
1602
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1597
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1603
1598
|
let displaySet;
|
|
1604
1599
|
if (SOPInstanceUID) {
|
|
1605
|
-
displaySet =
|
|
1600
|
+
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1606
1601
|
} else {
|
|
1607
|
-
displaySet =
|
|
1602
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1608
1603
|
}
|
|
1609
1604
|
const {
|
|
1610
1605
|
points,
|
|
1611
1606
|
textBox
|
|
1612
1607
|
} = data.handles;
|
|
1613
|
-
const mappedAnnotations = CircleROI_getMappedAnnotations(annotation,
|
|
1608
|
+
const mappedAnnotations = CircleROI_getMappedAnnotations(annotation, displaySetService);
|
|
1614
1609
|
const displayText = CircleROI_getDisplayText(mappedAnnotations, displaySet, customizationService);
|
|
1615
1610
|
const getReport = () => CircleROI_getReport(mappedAnnotations, points, FrameOfReferenceUID, customizationService);
|
|
1616
1611
|
return {
|
|
@@ -1622,6 +1617,7 @@ const CircleROI = {
|
|
|
1622
1617
|
metadata,
|
|
1623
1618
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1624
1619
|
referenceStudyUID: StudyInstanceUID,
|
|
1620
|
+
referencedImageId,
|
|
1625
1621
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1626
1622
|
toolName: metadata.toolName,
|
|
1627
1623
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1633,7 +1629,7 @@ const CircleROI = {
|
|
|
1633
1629
|
};
|
|
1634
1630
|
}
|
|
1635
1631
|
};
|
|
1636
|
-
function CircleROI_getMappedAnnotations(annotation,
|
|
1632
|
+
function CircleROI_getMappedAnnotations(annotation, displaySetService) {
|
|
1637
1633
|
const {
|
|
1638
1634
|
metadata,
|
|
1639
1635
|
data
|
|
@@ -1651,16 +1647,12 @@ function CircleROI_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
1651
1647
|
const annotations = [];
|
|
1652
1648
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1653
1649
|
const targetStats = cachedStats[targetId];
|
|
1654
|
-
if (!referencedImageId) {
|
|
1655
|
-
// Todo: Non-acquisition plane measurement mapping not supported yet
|
|
1656
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1657
|
-
}
|
|
1658
1650
|
const {
|
|
1659
1651
|
SOPInstanceUID,
|
|
1660
1652
|
SeriesInstanceUID,
|
|
1661
1653
|
frameNumber
|
|
1662
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1663
|
-
const displaySet =
|
|
1654
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1655
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1664
1656
|
const {
|
|
1665
1657
|
SeriesNumber
|
|
1666
1658
|
} = displaySet;
|
|
@@ -1812,12 +1804,12 @@ const ArrowAnnotate_Length = {
|
|
|
1812
1804
|
SOPInstanceUID,
|
|
1813
1805
|
SeriesInstanceUID,
|
|
1814
1806
|
StudyInstanceUID
|
|
1815
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1807
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1816
1808
|
let displaySet;
|
|
1817
1809
|
if (SOPInstanceUID) {
|
|
1818
1810
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1819
1811
|
} else {
|
|
1820
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1812
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1821
1813
|
}
|
|
1822
1814
|
const {
|
|
1823
1815
|
points,
|
|
@@ -1834,6 +1826,7 @@ const ArrowAnnotate_Length = {
|
|
|
1834
1826
|
metadata,
|
|
1835
1827
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1836
1828
|
referenceStudyUID: StudyInstanceUID,
|
|
1829
|
+
referencedImageId,
|
|
1837
1830
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
1838
1831
|
toolName: metadata.toolName,
|
|
1839
1832
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1863,8 +1856,8 @@ function ArrowAnnotate_getMappedAnnotations(annotation, displaySetService) {
|
|
|
1863
1856
|
SOPInstanceUID,
|
|
1864
1857
|
SeriesInstanceUID,
|
|
1865
1858
|
frameNumber
|
|
1866
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
1867
|
-
const displaySet = displaySetService.
|
|
1859
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1860
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1868
1861
|
const {
|
|
1869
1862
|
SeriesNumber
|
|
1870
1863
|
} = displaySet;
|
|
@@ -1940,12 +1933,12 @@ const CobbAngle = {
|
|
|
1940
1933
|
SOPInstanceUID,
|
|
1941
1934
|
SeriesInstanceUID,
|
|
1942
1935
|
StudyInstanceUID
|
|
1943
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
1936
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1944
1937
|
let displaySet;
|
|
1945
1938
|
if (SOPInstanceUID) {
|
|
1946
1939
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
1947
1940
|
} else {
|
|
1948
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
1941
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
1949
1942
|
}
|
|
1950
1943
|
const {
|
|
1951
1944
|
points,
|
|
@@ -1963,6 +1956,7 @@ const CobbAngle = {
|
|
|
1963
1956
|
metadata,
|
|
1964
1957
|
referenceSeriesUID: SeriesInstanceUID,
|
|
1965
1958
|
referenceStudyUID: StudyInstanceUID,
|
|
1959
|
+
referencedImageId,
|
|
1966
1960
|
frameNumber: mappedAnnotations?.[0]?.frameNumber || 1,
|
|
1967
1961
|
toolName: metadata.toolName,
|
|
1968
1962
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -1974,7 +1968,7 @@ const CobbAngle = {
|
|
|
1974
1968
|
};
|
|
1975
1969
|
}
|
|
1976
1970
|
};
|
|
1977
|
-
function CobbAngle_getMappedAnnotations(annotation,
|
|
1971
|
+
function CobbAngle_getMappedAnnotations(annotation, displaySetService) {
|
|
1978
1972
|
const {
|
|
1979
1973
|
metadata,
|
|
1980
1974
|
data
|
|
@@ -1992,15 +1986,12 @@ function CobbAngle_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
1992
1986
|
const annotations = [];
|
|
1993
1987
|
Object.keys(cachedStats).forEach(targetId => {
|
|
1994
1988
|
const targetStats = cachedStats[targetId];
|
|
1995
|
-
if (!referencedImageId) {
|
|
1996
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
1997
|
-
}
|
|
1998
1989
|
const {
|
|
1999
1990
|
SOPInstanceUID,
|
|
2000
1991
|
SeriesInstanceUID,
|
|
2001
1992
|
frameNumber
|
|
2002
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2003
|
-
const displaySet =
|
|
1993
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
1994
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2004
1995
|
const {
|
|
2005
1996
|
SeriesNumber
|
|
2006
1997
|
} = displaySet;
|
|
@@ -2125,12 +2116,12 @@ const Angle = {
|
|
|
2125
2116
|
SOPInstanceUID,
|
|
2126
2117
|
SeriesInstanceUID,
|
|
2127
2118
|
StudyInstanceUID
|
|
2128
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
2119
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2129
2120
|
let displaySet;
|
|
2130
2121
|
if (SOPInstanceUID) {
|
|
2131
2122
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
2132
2123
|
} else {
|
|
2133
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
2124
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2134
2125
|
}
|
|
2135
2126
|
const {
|
|
2136
2127
|
points,
|
|
@@ -2155,11 +2146,12 @@ const Angle = {
|
|
|
2155
2146
|
displayText: displayText,
|
|
2156
2147
|
data: data.cachedStats,
|
|
2157
2148
|
type: getValueTypeFromToolType(toolName),
|
|
2158
|
-
getReport
|
|
2149
|
+
getReport,
|
|
2150
|
+
referencedImageId
|
|
2159
2151
|
};
|
|
2160
2152
|
}
|
|
2161
2153
|
};
|
|
2162
|
-
function Angle_getMappedAnnotations(annotation,
|
|
2154
|
+
function Angle_getMappedAnnotations(annotation, displaySetService) {
|
|
2163
2155
|
const {
|
|
2164
2156
|
metadata,
|
|
2165
2157
|
data
|
|
@@ -2177,15 +2169,12 @@ function Angle_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
2177
2169
|
const annotations = [];
|
|
2178
2170
|
Object.keys(cachedStats).forEach(targetId => {
|
|
2179
2171
|
const targetStats = cachedStats[targetId];
|
|
2180
|
-
if (!referencedImageId) {
|
|
2181
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
2182
|
-
}
|
|
2183
2172
|
const {
|
|
2184
2173
|
SOPInstanceUID,
|
|
2185
2174
|
SeriesInstanceUID,
|
|
2186
2175
|
frameNumber
|
|
2187
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2188
|
-
const displaySet =
|
|
2176
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2177
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2189
2178
|
const {
|
|
2190
2179
|
SeriesNumber
|
|
2191
2180
|
} = displaySet;
|
|
@@ -2289,7 +2278,7 @@ const PlanarFreehandROI = {
|
|
|
2289
2278
|
* @param {Function} getValueTypeFromToolType Function to get value type from tool type
|
|
2290
2279
|
* @returns {Measurement} Measurement instance
|
|
2291
2280
|
*/
|
|
2292
|
-
toMeasurement: (csToolsEventDetail,
|
|
2281
|
+
toMeasurement: (csToolsEventDetail, displaySetService, CornerstoneViewportService, getValueTypeFromToolType, customizationService) => {
|
|
2293
2282
|
const {
|
|
2294
2283
|
annotation
|
|
2295
2284
|
} = csToolsEventDetail;
|
|
@@ -2316,12 +2305,12 @@ const PlanarFreehandROI = {
|
|
|
2316
2305
|
SeriesInstanceUID,
|
|
2317
2306
|
frameNumber,
|
|
2318
2307
|
StudyInstanceUID
|
|
2319
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2308
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2320
2309
|
let displaySet;
|
|
2321
2310
|
if (SOPInstanceUID) {
|
|
2322
|
-
displaySet =
|
|
2311
|
+
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
2323
2312
|
} else {
|
|
2324
|
-
displaySet =
|
|
2313
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2325
2314
|
}
|
|
2326
2315
|
return {
|
|
2327
2316
|
uid: annotationUID,
|
|
@@ -2333,10 +2322,11 @@ const PlanarFreehandROI = {
|
|
|
2333
2322
|
frameNumber,
|
|
2334
2323
|
referenceSeriesUID: SeriesInstanceUID,
|
|
2335
2324
|
referenceStudyUID: StudyInstanceUID,
|
|
2325
|
+
referencedImageId,
|
|
2336
2326
|
toolName: metadata.toolName,
|
|
2337
2327
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
2338
2328
|
label: data.label,
|
|
2339
|
-
displayText: PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService),
|
|
2329
|
+
displayText: PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService, displaySetService),
|
|
2340
2330
|
data: data.cachedStats,
|
|
2341
2331
|
type: getValueTypeFromToolType(toolName),
|
|
2342
2332
|
getReport: () => getColumnValueReport(annotation, customizationService)
|
|
@@ -2404,7 +2394,7 @@ function getColumnValueReport(annotation, customizationService) {
|
|
|
2404
2394
|
* @param {Object} displaySet - The display set object.
|
|
2405
2395
|
* @returns {string[]} - An array of display text.
|
|
2406
2396
|
*/
|
|
2407
|
-
function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService) {
|
|
2397
|
+
function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationService, displaySetService) {
|
|
2408
2398
|
const {
|
|
2409
2399
|
PlanarFreehandROI
|
|
2410
2400
|
} = customizationService.get('cornerstone.measurements');
|
|
@@ -2415,13 +2405,10 @@ function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationS
|
|
|
2415
2405
|
metadata,
|
|
2416
2406
|
data
|
|
2417
2407
|
} = annotation;
|
|
2418
|
-
if (!data.cachedStats || !data.cachedStats[`imageId:${metadata.referencedImageId}`]) {
|
|
2419
|
-
return [];
|
|
2420
|
-
}
|
|
2421
2408
|
const {
|
|
2422
2409
|
SOPInstanceUID,
|
|
2423
2410
|
frameNumber
|
|
2424
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(metadata.referencedImageId);
|
|
2411
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(metadata.referencedImageId, displaySetService, annotation);
|
|
2425
2412
|
const displayTextArray = [];
|
|
2426
2413
|
const instance = displaySet.images.find(image => image.SOPInstanceUID === SOPInstanceUID);
|
|
2427
2414
|
let InstanceNumber;
|
|
@@ -2436,17 +2423,20 @@ function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationS
|
|
|
2436
2423
|
if (SeriesNumber) {
|
|
2437
2424
|
displayTextArray.push(`S: ${SeriesNumber}${instanceText}${frameText}`);
|
|
2438
2425
|
}
|
|
2439
|
-
const stats = data.cachedStats[`imageId:${metadata.referencedImageId}`];
|
|
2426
|
+
const stats = data.cachedStats[`imageId:${metadata.referencedImageId}`] || Array.from(Object.values(data.cachedStats))[0];
|
|
2427
|
+
if (!stats) {
|
|
2428
|
+
return displayTextArray;
|
|
2429
|
+
}
|
|
2440
2430
|
const roundValues = values => {
|
|
2441
2431
|
if (Array.isArray(values)) {
|
|
2442
2432
|
return values.map(value => {
|
|
2443
2433
|
if (isNaN(value)) {
|
|
2444
2434
|
return value;
|
|
2445
2435
|
}
|
|
2446
|
-
return src.utils.roundNumber(value);
|
|
2436
|
+
return src.utils.roundNumber(value, 2);
|
|
2447
2437
|
});
|
|
2448
2438
|
}
|
|
2449
|
-
return isNaN(values) ? values : src.utils.roundNumber(values);
|
|
2439
|
+
return isNaN(values) ? values : src.utils.roundNumber(values, 2);
|
|
2450
2440
|
};
|
|
2451
2441
|
const findUnitForValue = (displayTextItems, value) => displayTextItems.find(({
|
|
2452
2442
|
type,
|
|
@@ -2475,7 +2465,7 @@ function PlanarFreehandROI_getDisplayText(annotation, displaySet, customizationS
|
|
|
2475
2465
|
|
|
2476
2466
|
const RectangleROI = {
|
|
2477
2467
|
toAnnotation: measurement => {},
|
|
2478
|
-
toMeasurement: (csToolsEventDetail,
|
|
2468
|
+
toMeasurement: (csToolsEventDetail, displaySetService, CornerstoneViewportService, getValueTypeFromToolType, customizationService) => {
|
|
2479
2469
|
const {
|
|
2480
2470
|
annotation,
|
|
2481
2471
|
viewportId
|
|
@@ -2502,18 +2492,18 @@ const RectangleROI = {
|
|
|
2502
2492
|
SOPInstanceUID,
|
|
2503
2493
|
SeriesInstanceUID,
|
|
2504
2494
|
StudyInstanceUID
|
|
2505
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId,
|
|
2495
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2506
2496
|
let displaySet;
|
|
2507
2497
|
if (SOPInstanceUID) {
|
|
2508
|
-
displaySet =
|
|
2498
|
+
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
2509
2499
|
} else {
|
|
2510
|
-
displaySet =
|
|
2500
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2511
2501
|
}
|
|
2512
2502
|
const {
|
|
2513
2503
|
points,
|
|
2514
2504
|
textBox
|
|
2515
2505
|
} = data.handles;
|
|
2516
|
-
const mappedAnnotations = RectangleROI_getMappedAnnotations(annotation,
|
|
2506
|
+
const mappedAnnotations = RectangleROI_getMappedAnnotations(annotation, displaySetService);
|
|
2517
2507
|
const displayText = RectangleROI_getDisplayText(mappedAnnotations, displaySet, customizationService);
|
|
2518
2508
|
const getReport = () => RectangleROI_getReport(mappedAnnotations, points, FrameOfReferenceUID, customizationService);
|
|
2519
2509
|
return {
|
|
@@ -2525,6 +2515,7 @@ const RectangleROI = {
|
|
|
2525
2515
|
metadata,
|
|
2526
2516
|
referenceSeriesUID: SeriesInstanceUID,
|
|
2527
2517
|
referenceStudyUID: StudyInstanceUID,
|
|
2518
|
+
referencedImageId,
|
|
2528
2519
|
frameNumber: mappedAnnotations[0]?.frameNumber || 1,
|
|
2529
2520
|
toolName: metadata.toolName,
|
|
2530
2521
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -2536,7 +2527,7 @@ const RectangleROI = {
|
|
|
2536
2527
|
};
|
|
2537
2528
|
}
|
|
2538
2529
|
};
|
|
2539
|
-
function RectangleROI_getMappedAnnotations(annotation,
|
|
2530
|
+
function RectangleROI_getMappedAnnotations(annotation, displaySetService) {
|
|
2540
2531
|
const {
|
|
2541
2532
|
metadata,
|
|
2542
2533
|
data
|
|
@@ -2554,16 +2545,12 @@ function RectangleROI_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
2554
2545
|
const annotations = [];
|
|
2555
2546
|
Object.keys(cachedStats).forEach(targetId => {
|
|
2556
2547
|
const targetStats = cachedStats[targetId];
|
|
2557
|
-
if (!referencedImageId) {
|
|
2558
|
-
// Todo: Non-acquisition plane measurement mapping not supported yet
|
|
2559
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
2560
|
-
}
|
|
2561
2548
|
const {
|
|
2562
2549
|
SOPInstanceUID,
|
|
2563
2550
|
SeriesInstanceUID,
|
|
2564
2551
|
frameNumber
|
|
2565
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
2566
|
-
const displaySet =
|
|
2552
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
2553
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
2567
2554
|
const {
|
|
2568
2555
|
SeriesNumber
|
|
2569
2556
|
} = displaySet;
|
|
@@ -3087,12 +3074,12 @@ const Probe = {
|
|
|
3087
3074
|
SOPInstanceUID,
|
|
3088
3075
|
SeriesInstanceUID,
|
|
3089
3076
|
StudyInstanceUID
|
|
3090
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
3077
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
3091
3078
|
let displaySet;
|
|
3092
3079
|
if (SOPInstanceUID) {
|
|
3093
3080
|
displaySet = displaySetService.getDisplaySetForSOPInstanceUID(SOPInstanceUID, SeriesInstanceUID);
|
|
3094
3081
|
} else {
|
|
3095
|
-
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID);
|
|
3082
|
+
displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
3096
3083
|
}
|
|
3097
3084
|
const {
|
|
3098
3085
|
points
|
|
@@ -3108,6 +3095,7 @@ const Probe = {
|
|
|
3108
3095
|
metadata,
|
|
3109
3096
|
referenceSeriesUID: SeriesInstanceUID,
|
|
3110
3097
|
referenceStudyUID: StudyInstanceUID,
|
|
3098
|
+
referencedImageId,
|
|
3111
3099
|
frameNumber: mappedAnnotations?.[0]?.frameNumber || 1,
|
|
3112
3100
|
toolName: metadata.toolName,
|
|
3113
3101
|
displaySetInstanceUID: displaySet.displaySetInstanceUID,
|
|
@@ -3119,7 +3107,7 @@ const Probe = {
|
|
|
3119
3107
|
};
|
|
3120
3108
|
}
|
|
3121
3109
|
};
|
|
3122
|
-
function Probe_getMappedAnnotations(annotation,
|
|
3110
|
+
function Probe_getMappedAnnotations(annotation, displaySetService) {
|
|
3123
3111
|
const {
|
|
3124
3112
|
metadata,
|
|
3125
3113
|
data
|
|
@@ -3137,15 +3125,12 @@ function Probe_getMappedAnnotations(annotation, DisplaySetService) {
|
|
|
3137
3125
|
const annotations = [];
|
|
3138
3126
|
Object.keys(cachedStats).forEach(targetId => {
|
|
3139
3127
|
const targetStats = cachedStats[targetId];
|
|
3140
|
-
if (!referencedImageId) {
|
|
3141
|
-
throw new Error('Non-acquisition plane measurement mapping not supported');
|
|
3142
|
-
}
|
|
3143
3128
|
const {
|
|
3144
3129
|
SOPInstanceUID,
|
|
3145
3130
|
SeriesInstanceUID,
|
|
3146
3131
|
frameNumber
|
|
3147
|
-
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId);
|
|
3148
|
-
const displaySet =
|
|
3132
|
+
} = (0,getSOPInstanceAttributes/* default */.A)(referencedImageId, displaySetService, annotation);
|
|
3133
|
+
const displaySet = displaySetService.getDisplaySetsForSeries(SeriesInstanceUID)[0];
|
|
3149
3134
|
const {
|
|
3150
3135
|
SeriesNumber
|
|
3151
3136
|
} = displaySet;
|
|
@@ -3925,7 +3910,7 @@ function _getVolumesFromViewport(viewport) {
|
|
|
3925
3910
|
return viewport ? viewport.getActors().map(actor => esm.cache.getVolume(actor.uid)) : [];
|
|
3926
3911
|
}
|
|
3927
3912
|
function _getVolumeFromViewport(viewport) {
|
|
3928
|
-
const volumes = _getVolumesFromViewport(viewport);
|
|
3913
|
+
const volumes = _getVolumesFromViewport(viewport).filter(volume => volume);
|
|
3929
3914
|
const dynamicVolume = volumes.find(volume => volume.isDynamicVolume());
|
|
3930
3915
|
return dynamicVolume ?? volumes[0];
|
|
3931
3916
|
}
|
|
@@ -4944,12 +4929,16 @@ async function init({
|
|
|
4944
4929
|
clearOnModeExit: true
|
|
4945
4930
|
});
|
|
4946
4931
|
const labelmapRepresentation = dist_esm.Enums.SegmentationRepresentations.Labelmap;
|
|
4932
|
+
const contourRepresentation = dist_esm.Enums.SegmentationRepresentations.Contour;
|
|
4947
4933
|
dist_esm.segmentation.config.setGlobalRepresentationConfig(labelmapRepresentation, {
|
|
4948
4934
|
fillAlpha: 0.5,
|
|
4949
4935
|
fillAlphaInactive: 0.2,
|
|
4950
4936
|
outlineOpacity: 1,
|
|
4951
4937
|
outlineOpacityInactive: 0.65
|
|
4952
4938
|
});
|
|
4939
|
+
dist_esm.segmentation.config.setGlobalRepresentationConfig(contourRepresentation, {
|
|
4940
|
+
renderFill: false
|
|
4941
|
+
});
|
|
4953
4942
|
const metadataProvider = src/* default.classes */.Ay.classes.MetadataProvider;
|
|
4954
4943
|
esm.volumeLoader.registerVolumeLoader('cornerstoneStreamingImageVolume', streaming_image_volume_loader_dist_esm/* cornerstoneStreamingImageVolumeLoader */.FC);
|
|
4955
4944
|
esm.volumeLoader.registerVolumeLoader('cornerstoneStreamingDynamicImageVolume', streaming_image_volume_loader_dist_esm/* cornerstoneStreamingDynamicImageVolumeLoader */.Mr);
|
|
@@ -5037,9 +5026,13 @@ async function init({
|
|
|
5037
5026
|
const {
|
|
5038
5027
|
element
|
|
5039
5028
|
} = evt.detail;
|
|
5029
|
+
const enabledElement = (0,esm.getEnabledElement)(element);
|
|
5030
|
+
if (!enabledElement) {
|
|
5031
|
+
return;
|
|
5032
|
+
}
|
|
5040
5033
|
const {
|
|
5041
5034
|
viewportId
|
|
5042
|
-
} =
|
|
5035
|
+
} = enabledElement;
|
|
5043
5036
|
commandsManager.runCommand('resetCrosshairs', {
|
|
5044
5037
|
viewportId
|
|
5045
5038
|
});
|
|
@@ -5101,8 +5094,8 @@ function _showCPURenderingModal(uiModalService, hangingProtocolService) {
|
|
|
5101
5094
|
}
|
|
5102
5095
|
});
|
|
5103
5096
|
}
|
|
5104
|
-
// EXTERNAL MODULE: ../../../node_modules/react-dropzone/dist/es/index.js +
|
|
5105
|
-
var es = __webpack_require__(
|
|
5097
|
+
// EXTERNAL MODULE: ../../../node_modules/react-dropzone/dist/es/index.js + 4 modules
|
|
5098
|
+
var es = __webpack_require__(92854);
|
|
5106
5099
|
// EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
|
|
5107
5100
|
var prop_types = __webpack_require__(11374);
|
|
5108
5101
|
var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
|
|
@@ -5791,6 +5784,11 @@ const tools = {
|
|
|
5791
5784
|
}],
|
|
5792
5785
|
enabled: [{
|
|
5793
5786
|
toolName: toolNames.SegmentationDisplay
|
|
5787
|
+
}, {
|
|
5788
|
+
toolName: toolNames.PlanarFreehandContourSegmentation,
|
|
5789
|
+
configuration: {
|
|
5790
|
+
displayOnePointAsCrosshairs: true
|
|
5791
|
+
}
|
|
5794
5792
|
}]
|
|
5795
5793
|
};
|
|
5796
5794
|
function getCustomizationModule() {
|
|
@@ -6068,7 +6066,9 @@ const CornerstoneViewportDownloadForm = ({
|
|
|
6068
6066
|
// for some reason we need a reset camera here, and I don't know why
|
|
6069
6067
|
downloadViewport.resetCamera();
|
|
6070
6068
|
const presentation = activeViewport.getViewPresentation();
|
|
6071
|
-
downloadViewport.setView
|
|
6069
|
+
if (downloadViewport.setView) {
|
|
6070
|
+
downloadViewport.setView(activeViewport.getViewReference(), presentation);
|
|
6071
|
+
}
|
|
6072
6072
|
downloadViewport.render();
|
|
6073
6073
|
});
|
|
6074
6074
|
});
|
|
@@ -9351,6 +9351,7 @@ class SegmentationService extends src/* PubSubService */.Rc {
|
|
|
9351
9351
|
};
|
|
9352
9352
|
this.addSegmentationRepresentationToToolGroup = async (toolGroupId, segmentationId, hydrateSegmentation = false, representationType = dist_esm.Enums.SegmentationRepresentations.Labelmap, suppressEvents = false) => {
|
|
9353
9353
|
const segmentation = this.getSegmentation(segmentationId);
|
|
9354
|
+
toolGroupId = toolGroupId || this._getApplicableToolGroupId();
|
|
9354
9355
|
if (!segmentation) {
|
|
9355
9356
|
throw new Error(`Segmentation with segmentationId ${segmentationId} not found.`);
|
|
9356
9357
|
}
|
|
@@ -10784,7 +10785,23 @@ class CornerstoneCacheService {
|
|
|
10784
10785
|
}
|
|
10785
10786
|
async invalidateViewportData(viewportData, invalidatedDisplaySetInstanceUID, dataSource, displaySetService) {
|
|
10786
10787
|
if (viewportData.viewportType === esm.Enums.ViewportType.STACK) {
|
|
10787
|
-
|
|
10788
|
+
const displaySet = displaySetService.getDisplaySetByUID(invalidatedDisplaySetInstanceUID);
|
|
10789
|
+
const imageIds = this._getCornerstoneStackImageIds(displaySet, dataSource);
|
|
10790
|
+
|
|
10791
|
+
// remove images from the cache to be able to re-load them
|
|
10792
|
+
imageIds.forEach(imageId => {
|
|
10793
|
+
if (esm.cache.getImageLoadObject(imageId)) {
|
|
10794
|
+
esm.cache.removeImageLoadObject(imageId);
|
|
10795
|
+
}
|
|
10796
|
+
});
|
|
10797
|
+
return {
|
|
10798
|
+
viewportType: esm.Enums.ViewportType.STACK,
|
|
10799
|
+
data: {
|
|
10800
|
+
StudyInstanceUID: displaySet.StudyInstanceUID,
|
|
10801
|
+
displaySetInstanceUID: invalidatedDisplaySetInstanceUID,
|
|
10802
|
+
imageIds
|
|
10803
|
+
}
|
|
10804
|
+
};
|
|
10788
10805
|
}
|
|
10789
10806
|
|
|
10790
10807
|
// Todo: grab the volume and get the id from the viewport itself
|
|
@@ -10814,32 +10831,48 @@ class CornerstoneCacheService {
|
|
|
10814
10831
|
const newViewportData = await this._getVolumeViewportData(dataSource, displaySets, viewportData.viewportType);
|
|
10815
10832
|
return newViewportData;
|
|
10816
10833
|
}
|
|
10817
|
-
_getStackViewportData(dataSource, displaySets, initialImageIndex, viewportType) {
|
|
10818
|
-
|
|
10819
|
-
const
|
|
10834
|
+
async _getStackViewportData(dataSource, displaySets, initialImageIndex, viewportType) {
|
|
10835
|
+
const overlayDisplaySets = displaySets.filter(ds => ds.isOverlayDisplaySet);
|
|
10836
|
+
const nonOverlayDisplaySets = displaySets.filter(ds => !ds.isOverlayDisplaySet);
|
|
10837
|
+
|
|
10838
|
+
// load overlays if they are not loaded
|
|
10839
|
+
for (const overlayDisplaySet of overlayDisplaySets) {
|
|
10840
|
+
if (overlayDisplaySet.load && overlayDisplaySet.load instanceof Function) {
|
|
10841
|
+
const {
|
|
10842
|
+
userAuthenticationService
|
|
10843
|
+
} = this.servicesManager.services;
|
|
10844
|
+
const headers = userAuthenticationService.getAuthorizationHeader();
|
|
10845
|
+
await overlayDisplaySet.load({
|
|
10846
|
+
headers
|
|
10847
|
+
});
|
|
10848
|
+
}
|
|
10849
|
+
}
|
|
10850
|
+
const displaySet = nonOverlayDisplaySets[0];
|
|
10820
10851
|
let stackImageIds = this.stackImageIds.get(displaySet.displaySetInstanceUID);
|
|
10821
10852
|
if (!stackImageIds) {
|
|
10822
10853
|
stackImageIds = this._getCornerstoneStackImageIds(displaySet, dataSource);
|
|
10823
10854
|
this.stackImageIds.set(displaySet.displaySetInstanceUID, stackImageIds);
|
|
10824
10855
|
}
|
|
10825
|
-
|
|
10826
|
-
|
|
10827
|
-
|
|
10828
|
-
|
|
10829
|
-
|
|
10830
|
-
|
|
10831
|
-
|
|
10832
|
-
|
|
10856
|
+
|
|
10857
|
+
// Ensuring the first non-overlay `displaySet` is always the primary one
|
|
10858
|
+
const StackViewportData = [displaySet, ...overlayDisplaySets].map(ds => {
|
|
10859
|
+
const {
|
|
10860
|
+
displaySetInstanceUID,
|
|
10861
|
+
StudyInstanceUID,
|
|
10862
|
+
isCompositeStack
|
|
10863
|
+
} = ds;
|
|
10864
|
+
return {
|
|
10833
10865
|
StudyInstanceUID,
|
|
10834
10866
|
displaySetInstanceUID,
|
|
10835
10867
|
isCompositeStack,
|
|
10836
|
-
imageIds: stackImageIds
|
|
10837
|
-
|
|
10868
|
+
imageIds: stackImageIds,
|
|
10869
|
+
initialImageIndex
|
|
10870
|
+
};
|
|
10871
|
+
});
|
|
10872
|
+
return {
|
|
10873
|
+
viewportType,
|
|
10874
|
+
data: StackViewportData
|
|
10838
10875
|
};
|
|
10839
|
-
if (typeof initialImageIndex === 'number') {
|
|
10840
|
-
StackViewportData.data.initialImageIndex = initialImageIndex;
|
|
10841
|
-
}
|
|
10842
|
-
return StackViewportData;
|
|
10843
10876
|
}
|
|
10844
10877
|
async _getVolumeViewportData(dataSource, displaySets, viewportType) {
|
|
10845
10878
|
// Todo: Check the cache for multiple scenarios to see if we need to
|
|
@@ -11696,16 +11729,25 @@ class CornerstoneViewportService extends src/* PubSubService */.Rc {
|
|
|
11696
11729
|
}
|
|
11697
11730
|
async _setStackViewport(viewport, viewportData, viewportInfo, presentations = {}) {
|
|
11698
11731
|
const displaySetOptions = viewportInfo.getDisplaySetOptions();
|
|
11732
|
+
const displaySetInstanceUIDs = viewportData.data.map(data => data.displaySetInstanceUID);
|
|
11733
|
+
|
|
11734
|
+
// based on the cache service construct always the first one is the non-overlay
|
|
11735
|
+
// and the rest are overlays
|
|
11736
|
+
|
|
11737
|
+
this.viewportsDisplaySets.set(viewport.id, [...displaySetInstanceUIDs]);
|
|
11699
11738
|
const {
|
|
11700
|
-
imageIds,
|
|
11701
11739
|
initialImageIndex,
|
|
11702
|
-
|
|
11703
|
-
} = viewportData.data;
|
|
11704
|
-
this.viewportsDisplaySets.set(viewport.id, [displaySetInstanceUID]);
|
|
11740
|
+
imageIds
|
|
11741
|
+
} = viewportData.data[0];
|
|
11705
11742
|
let initialImageIndexToUse = presentations?.positionPresentation?.initialImageIndex ?? initialImageIndex;
|
|
11706
11743
|
if (initialImageIndexToUse === undefined || initialImageIndexToUse === null) {
|
|
11707
11744
|
initialImageIndexToUse = this._getInitialImageIndexForViewport(viewportInfo, imageIds) || 0;
|
|
11708
11745
|
}
|
|
11746
|
+
const {
|
|
11747
|
+
rotation,
|
|
11748
|
+
flipHorizontal,
|
|
11749
|
+
displayArea
|
|
11750
|
+
} = viewportInfo.getViewportOptions();
|
|
11709
11751
|
const properties = {
|
|
11710
11752
|
...presentations.lutPresentation?.properties
|
|
11711
11753
|
};
|
|
@@ -11732,11 +11774,25 @@ class CornerstoneViewportService extends src/* PubSubService */.Rc {
|
|
|
11732
11774
|
properties.colormap = colormap;
|
|
11733
11775
|
}
|
|
11734
11776
|
}
|
|
11777
|
+
this._handleOverlays(viewport);
|
|
11735
11778
|
return viewport.setStack(imageIds, initialImageIndexToUse).then(() => {
|
|
11736
11779
|
viewport.setProperties({
|
|
11737
11780
|
...properties
|
|
11738
11781
|
});
|
|
11739
11782
|
this.setPresentations(viewport.id, presentations);
|
|
11783
|
+
if (displayArea) {
|
|
11784
|
+
viewport.setDisplayArea(displayArea);
|
|
11785
|
+
}
|
|
11786
|
+
if (rotation) {
|
|
11787
|
+
viewport.setProperties({
|
|
11788
|
+
rotation
|
|
11789
|
+
});
|
|
11790
|
+
}
|
|
11791
|
+
if (flipHorizontal) {
|
|
11792
|
+
viewport.setCamera({
|
|
11793
|
+
flipHorizontal: true
|
|
11794
|
+
});
|
|
11795
|
+
}
|
|
11740
11796
|
});
|
|
11741
11797
|
}
|
|
11742
11798
|
_getInitialImageIndexForViewport(viewportInfo, imageIds) {
|
|
@@ -11907,6 +11963,24 @@ class CornerstoneViewportService extends src/* PubSubService */.Rc {
|
|
|
11907
11963
|
viewport.setProperties(properties, volumeId);
|
|
11908
11964
|
});
|
|
11909
11965
|
this.setPresentations(viewport.id, presentations);
|
|
11966
|
+
this._handleOverlays(viewport);
|
|
11967
|
+
const toolGroup = toolGroupService.getToolGroupForViewport(viewport.id);
|
|
11968
|
+
dist_esm.utilities.segmentation.triggerSegmentationRender(toolGroup.id);
|
|
11969
|
+
const imageIndex = this._getInitialImageIndexForViewport(viewportInfo);
|
|
11970
|
+
if (imageIndex !== undefined) {
|
|
11971
|
+
dist_esm.utilities.jumpToSlice(viewport.element, {
|
|
11972
|
+
imageIndex
|
|
11973
|
+
});
|
|
11974
|
+
}
|
|
11975
|
+
viewport.render();
|
|
11976
|
+
this._broadcastEvent(this.EVENTS.VIEWPORT_VOLUMES_CHANGED, {
|
|
11977
|
+
viewportInfo
|
|
11978
|
+
});
|
|
11979
|
+
}
|
|
11980
|
+
_handleOverlays(viewport) {
|
|
11981
|
+
const {
|
|
11982
|
+
displaySetService
|
|
11983
|
+
} = this.servicesManager.services;
|
|
11910
11984
|
|
|
11911
11985
|
// load any secondary displaySets
|
|
11912
11986
|
const displaySetInstanceUIDs = this.viewportsDisplaySets.get(viewport.id);
|
|
@@ -11923,18 +11997,6 @@ class CornerstoneViewportService extends src/* PubSubService */.Rc {
|
|
|
11923
11997
|
// get segmentations only returns the hydrated segmentations
|
|
11924
11998
|
this._addSegmentationRepresentationToToolGroupIfNecessary(displaySetInstanceUIDs, viewport);
|
|
11925
11999
|
}
|
|
11926
|
-
const toolGroup = toolGroupService.getToolGroupForViewport(viewport.id);
|
|
11927
|
-
dist_esm.utilities.segmentation.triggerSegmentationRender(toolGroup.id);
|
|
11928
|
-
const imageIndex = this._getInitialImageIndexForViewport(viewportInfo);
|
|
11929
|
-
if (imageIndex !== undefined) {
|
|
11930
|
-
dist_esm.utilities.jumpToSlice(viewport.element, {
|
|
11931
|
-
imageIndex
|
|
11932
|
-
});
|
|
11933
|
-
}
|
|
11934
|
-
viewport.render();
|
|
11935
|
-
this._broadcastEvent(this.EVENTS.VIEWPORT_VOLUMES_CHANGED, {
|
|
11936
|
-
viewportInfo
|
|
11937
|
-
});
|
|
11938
12000
|
}
|
|
11939
12001
|
_addSegmentationRepresentationToToolGroupIfNecessary(displaySetInstanceUIDs, viewport) {
|
|
11940
12002
|
const {
|
|
@@ -12631,9 +12693,9 @@ const id = package_namespaceObject.UU;
|
|
|
12631
12693
|
|
|
12632
12694
|
|
|
12633
12695
|
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/services/ViewportActionCornersService/ViewportActionCornersService.ts
|
|
12634
|
-
var ViewportActionCornersService = __webpack_require__(
|
|
12696
|
+
var ViewportActionCornersService = __webpack_require__(2447);
|
|
12635
12697
|
// EXTERNAL MODULE: ../../../extensions/cornerstone/src/contextProviders/ViewportActionCornersProvider.tsx
|
|
12636
|
-
var ViewportActionCornersProvider = __webpack_require__(
|
|
12698
|
+
var ViewportActionCornersProvider = __webpack_require__(40684);
|
|
12637
12699
|
// EXTERNAL MODULE: ../../../node_modules/lodash.debounce/index.js
|
|
12638
12700
|
var lodash_debounce = __webpack_require__(14771);
|
|
12639
12701
|
var lodash_debounce_default = /*#__PURE__*/__webpack_require__.n(lodash_debounce);
|
|
@@ -13069,7 +13131,7 @@ const {
|
|
|
13069
13131
|
getDynamicVolumeInfo
|
|
13070
13132
|
} = volumeLoaderHelpers ?? {};
|
|
13071
13133
|
const Component = /*#__PURE__*/react.lazy(() => {
|
|
13072
|
-
return __webpack_require__.e(/* import() */
|
|
13134
|
+
return __webpack_require__.e(/* import() */ 139).then(__webpack_require__.bind(__webpack_require__, 56139));
|
|
13073
13135
|
});
|
|
13074
13136
|
const OHIFCornerstoneViewport = props => {
|
|
13075
13137
|
return /*#__PURE__*/react.createElement(react.Suspense, {
|
|
@@ -13210,14 +13272,14 @@ const cornerstoneExtension = {
|
|
|
13210
13272
|
|
|
13211
13273
|
/***/ }),
|
|
13212
13274
|
|
|
13213
|
-
/***/
|
|
13275
|
+
/***/ 2447:
|
|
13214
13276
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
13215
13277
|
|
|
13216
13278
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
13217
13279
|
/* harmony export */ A: () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
13218
13280
|
/* harmony export */ });
|
|
13219
|
-
/* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(
|
|
13220
|
-
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(
|
|
13281
|
+
/* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(75186);
|
|
13282
|
+
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(79047);
|
|
13221
13283
|
var _ViewportActionCornersService;
|
|
13222
13284
|
|
|
13223
13285
|
|
|
@@ -13276,7 +13338,7 @@ ViewportActionCornersService.REGISTRATION = {
|
|
|
13276
13338
|
|
|
13277
13339
|
/***/ }),
|
|
13278
13340
|
|
|
13279
|
-
/***/
|
|
13341
|
+
/***/ 83910:
|
|
13280
13342
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
13281
13343
|
|
|
13282
13344
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -13318,7 +13380,7 @@ const reset = () => {
|
|
|
13318
13380
|
|
|
13319
13381
|
/***/ }),
|
|
13320
13382
|
|
|
13321
|
-
/***/
|
|
13383
|
+
/***/ 20928:
|
|
13322
13384
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
13323
13385
|
|
|
13324
13386
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
@@ -13334,12 +13396,26 @@ const reset = () => {
|
|
|
13334
13396
|
* @param {string} imageId The image id of the referenced image
|
|
13335
13397
|
* @returns
|
|
13336
13398
|
*/
|
|
13337
|
-
function getSOPInstanceAttributes(imageId) {
|
|
13399
|
+
function getSOPInstanceAttributes(imageId, displaySetService, annotation) {
|
|
13338
13400
|
if (imageId) {
|
|
13339
13401
|
return _getUIDFromImageID(imageId);
|
|
13340
13402
|
}
|
|
13341
|
-
|
|
13342
|
-
|
|
13403
|
+
const {
|
|
13404
|
+
metadata
|
|
13405
|
+
} = annotation;
|
|
13406
|
+
const {
|
|
13407
|
+
volumeId
|
|
13408
|
+
} = metadata;
|
|
13409
|
+
const displaySet = displaySetService.getDisplaySetsBy(displaySet => volumeId.includes(displaySet.uid))[0];
|
|
13410
|
+
const {
|
|
13411
|
+
StudyInstanceUID,
|
|
13412
|
+
SeriesInstanceUID
|
|
13413
|
+
} = displaySet;
|
|
13414
|
+
return {
|
|
13415
|
+
SOPInstanceUID: undefined,
|
|
13416
|
+
SeriesInstanceUID,
|
|
13417
|
+
StudyInstanceUID
|
|
13418
|
+
};
|
|
13343
13419
|
}
|
|
13344
13420
|
function _getUIDFromImageID(imageId) {
|
|
13345
13421
|
const instance = _cornerstonejs_core__WEBPACK_IMPORTED_MODULE_0__.metaData.get('instance', imageId);
|