@ohif/app 3.8.0-beta.6 → 3.8.0-beta.61
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{220.bundle.f7e1c96c94245e70f2be.js → 109.bundle.b4fee2a22b622839baf5.js} +4466 -3715
- package/dist/{471.bundle.b3d77b83b1593c09a504.js → 121.bundle.ed23e7752a11005322e6.js} +47 -51
- package/dist/{19.bundle.f6ac71d29001b0db0ec0.js → 155.bundle.3879b7d76680473fa69f.js} +198 -207
- package/dist/{687.bundle.f87fb1a36ef1ca951690.js → 164.bundle.80b2977d58cd927397c2.js} +22 -38
- package/dist/17dd54813d5acc10bf8f.wasm +0 -0
- package/dist/{506.bundle.06f5c5620d0088ec0102.js → 188.bundle.eca333a03f6b311bf2e6.js} +23 -28
- package/dist/191.bundle.4850ab82949bb6f0eb73.js +30339 -0
- package/dist/20fc4c659b85ccd2a9c0.wasm +0 -0
- package/dist/{126.bundle.cefdf26c03a5ab8d60c8.js → 250.bundle.a02414ebc6fed29530e7.js} +63 -69
- package/dist/{236.bundle.3148dc4715c254801727.js → 270.bundle.94f5c172fb943bda1d03.js} +156 -178
- package/dist/290.bundle.8b4d7dfbc7cfe418a0f1.js +8883 -0
- package/dist/{451.bundle.9fd36f52ff69594f0669.js → 295.bundle.462f3328c716cbe6c613.js} +45 -59
- package/dist/{125.bundle.253395f320b72180da63.js → 297.bundle.81d63bb0b66d63df6d86.js} +7 -8
- package/dist/{613.bundle.a0eee4dc2d2764c2f7cd.js → 317.bundle.d51f1681f4bdc829be5b.js} +83 -57
- package/dist/{788.bundle.af903bf0598f0ad618e3.js → 339.bundle.5691c7bc4504f1e4c3b2.js} +190 -239
- package/dist/{202.bundle.d3490836f71e001dd30f.js → 342.bundle.a039c24e9f661f3b884d.js} +544 -860
- package/dist/{221.bundle.3f5f700b4c1ee8b1ce94.js → 50.bundle.d3eccf1a90cad61405c0.js} +199 -189
- package/dist/{957.bundle.9ea4506963ef8b2d84ba.js → 504.bundle.aa165082e2acc5ccf080.js} +14338 -27291
- package/dist/{886.bundle.d5116d9b8ea4964b68a0.js → 530.bundle.ce13c30b93a28cc85098.js} +40 -44
- package/dist/{250.bundle.8084960e3318cda37317.js → 544.bundle.3cf20da53f349abd8d67.js} +39 -44
- package/dist/{663.bundle.e3539f14edf9214e07eb.js → 559.bundle.146b02440e81f9fffea3.js} +149 -141
- package/dist/{410.bundle.5e16274b1082de6e127e.js → 594.bundle.76e05b71ad06361c9de9.js} +31 -35
- package/dist/{774.bundle.4b2dc46a35012b898e1a.js → 644.bundle.1e77691d2eeb96a423b0.js} +1852 -8945
- package/dist/{82.bundle.ae82f6434056c8d79fec.js → 68.bundle.ccbfa216e6d60ce3824f.js} +313 -324
- package/dist/{342.bundle.e485b92bd6d91bb7cc04.js → 704.bundle.042323b2cd8a9535050c.js} +1128 -737
- package/dist/{359.bundle.dedb5b782335939bdc52.js → 724.bundle.e821b6321fec63b9375a.js} +34 -37
- package/dist/{757.bundle.ec8301d8e70d2b990f65.js → 726.bundle.2bdb443d1b5620d74e6e.js} +512 -879
- package/dist/{530.bundle.a03b6f942ace3e1baa1e.js → 835.bundle.15aff0b7433bb0dd6d6d.js} +37 -30
- package/dist/{822.bundle.891f2e57b1b7bc2f4cb4.js → 862.bundle.e3fe2aae7903cc2ae8df.js} +27 -29
- package/dist/{181.bundle.2ddc6f90740895a3949c.js → 889.bundle.6850a0b8c412e3befab5.js} +135 -107
- package/dist/{181.css → 889.css} +1 -1
- package/dist/{281.bundle.e4c37762343dc03e4fa0.js → 905.bundle.806f0e8307eb1c9d1f6e.js} +29 -31
- package/dist/{814.bundle.98e400df965d000d78e6.js → 907.bundle.84dba9f6e90672071d82.js} +16 -18
- package/dist/{417.bundle.af0a207c29b109f84159.js → 931.bundle.d270a1fda9a2836c3cc5.js} +26 -26
- package/dist/{686.bundle.dccef1f36e4bc79bcc48.js → 939.bundle.84ee0b844023d924a22b.js} +7 -8
- package/dist/{12.bundle.75c761bd89ad782675c8.js → 961.bundle.80a864ec4e08ed7bb3b7.js} +16 -18
- package/dist/{776.bundle.08eb381dc3d06708eb0f.js → 963.bundle.f9511286d05982090a14.js} +1629 -845
- package/dist/987.bundle.e7c041a6dfb4ddb41813.js +122926 -0
- package/dist/{app.bundle.eeb94536f34535b1153f.js → app.bundle.2399e4eb1c8930ab9c5e.js} +142184 -60944
- package/dist/app.bundle.css +11 -11
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/{dicom-microscopy-viewer.bundle.2c146384eb9466d02ff8.js → dicom-microscopy-viewer.bundle.d3a56dc9f62df5e11019.js} +3 -3
- package/dist/index.html +1 -1
- package/dist/{index.worker.e62ecca63f1a2e124230.worker.js → index.worker.64c896c4316fcd506666.worker.js} +2 -2
- package/dist/index.worker.64c896c4316fcd506666.worker.js.map +1 -0
- package/dist/polySeg.bundle.99be036bab9b7f011b0c.js +252 -0
- package/dist/serve.json +12 -0
- package/dist/sw.js +1 -1
- package/package.json +25 -22
- package/dist/23.bundle.e008ad788170f2ed5569.js +0 -900
- package/dist/604.bundle.a51f83e64004bca5f497.js +0 -1848
- package/dist/743.bundle.489f7df3a089d4d374e1.js +0 -78007
- package/dist/75788f12450d4c5ed494.wasm +0 -0
- package/dist/775.bundle.2285e7e0e67878948c0d.js +0 -1009
- package/dist/index.worker.e62ecca63f1a2e124230.worker.js.map +0 -1
- /package/dist/{19.css → 155.css} +0 -0
- /package/dist/{579.css → 481.css} +0 -0
- /package/dist/{221.css → 50.css} +0 -0
- /package/dist/{250.css → 544.css} +0 -0
- /package/dist/{776.css → 963.css} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
(globalThis["webpackChunk"] = globalThis["webpackChunk"] || []).push([[50,481],{
|
|
2
3
|
|
|
3
|
-
/***/
|
|
4
|
+
/***/ 71093:
|
|
4
5
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
5
6
|
|
|
6
|
-
"use strict";
|
|
7
7
|
// ESM COMPAT FLAG
|
|
8
8
|
__webpack_require__.r(__webpack_exports__);
|
|
9
9
|
|
|
@@ -13,23 +13,25 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/package.json
|
|
16
|
-
const package_namespaceObject = JSON.parse('{"
|
|
16
|
+
const package_namespaceObject = /*#__PURE__*/JSON.parse('{"UU":"@ohif/extension-cornerstone-dicom-seg"}');
|
|
17
17
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/id.js
|
|
18
18
|
|
|
19
|
-
const id = package_namespaceObject.
|
|
19
|
+
const id = package_namespaceObject.UU;
|
|
20
20
|
const SOPClassHandlerName = 'dicom-seg';
|
|
21
21
|
const SOPClassHandlerId = `${id}.sopClassHandlerModule.${SOPClassHandlerName}`;
|
|
22
22
|
|
|
23
23
|
// EXTERNAL MODULE: ../../../node_modules/react/index.js
|
|
24
|
-
var react = __webpack_require__(
|
|
25
|
-
// EXTERNAL MODULE: ../../core/src/index.ts +
|
|
26
|
-
var src = __webpack_require__(
|
|
27
|
-
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js +
|
|
28
|
-
var esm = __webpack_require__(
|
|
24
|
+
var react = __webpack_require__(41766);
|
|
25
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 66 modules
|
|
26
|
+
var src = __webpack_require__(14283);
|
|
27
|
+
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/core/dist/esm/index.js + 383 modules
|
|
28
|
+
var esm = __webpack_require__(50719);
|
|
29
|
+
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 16 modules
|
|
30
|
+
var dist_esm = __webpack_require__(20767);
|
|
29
31
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/adapters/dist/adapters.es.js
|
|
30
|
-
var adapters_es = __webpack_require__(
|
|
32
|
+
var adapters_es = __webpack_require__(83342);
|
|
31
33
|
// EXTERNAL MODULE: ../../../node_modules/dcmjs/build/dcmjs.es.js
|
|
32
|
-
var dcmjs_es = __webpack_require__(
|
|
34
|
+
var dcmjs_es = __webpack_require__(31426);
|
|
33
35
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/utils/dicomlabToRGB.ts
|
|
34
36
|
|
|
35
37
|
|
|
@@ -39,7 +41,7 @@ var dcmjs_es = __webpack_require__(67540);
|
|
|
39
41
|
* @returns The RGB color as an array of three integers between 0 and 255.
|
|
40
42
|
*/
|
|
41
43
|
function dicomlabToRGB(cielab) {
|
|
42
|
-
const rgb = dcmjs_es
|
|
44
|
+
const rgb = dcmjs_es/* default.data */.Ay.data.Colors.dicomlab2RGB(cielab).map(x => Math.round(x * 255));
|
|
43
45
|
return rgb;
|
|
44
46
|
}
|
|
45
47
|
|
|
@@ -49,6 +51,7 @@ function dicomlabToRGB(cielab) {
|
|
|
49
51
|
|
|
50
52
|
|
|
51
53
|
|
|
54
|
+
|
|
52
55
|
const sopClassUids = ['1.2.840.10008.5.1.4.1.1.66.4'];
|
|
53
56
|
let loadPromises = {};
|
|
54
57
|
function _getDisplaySetsFromSeries(instances, servicesManager, extensionManager) {
|
|
@@ -119,12 +122,9 @@ function _getDisplaySetsFromSeries(instances, servicesManager, extensionManager)
|
|
|
119
122
|
displaySet.referencedVolumeId = referencedVolumeId;
|
|
120
123
|
return referencedDisplaySet;
|
|
121
124
|
};
|
|
122
|
-
displaySet.load = async
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
} = _ref;
|
|
126
|
-
return await _load(displaySet, servicesManager, extensionManager, headers);
|
|
127
|
-
};
|
|
125
|
+
displaySet.load = async ({
|
|
126
|
+
headers
|
|
127
|
+
}) => await _load(displaySet, servicesManager, extensionManager, headers);
|
|
128
128
|
return [displaySet];
|
|
129
129
|
}
|
|
130
130
|
function _load(segDisplaySet, servicesManager, extensionManager, headers) {
|
|
@@ -161,16 +161,16 @@ function _load(segDisplaySet, servicesManager, extensionManager, headers) {
|
|
|
161
161
|
});
|
|
162
162
|
return loadPromises[SOPInstanceUID];
|
|
163
163
|
}
|
|
164
|
-
async function _loadSegments(
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
} = _ref2;
|
|
164
|
+
async function _loadSegments({
|
|
165
|
+
extensionManager,
|
|
166
|
+
servicesManager,
|
|
167
|
+
segDisplaySet,
|
|
168
|
+
headers
|
|
169
|
+
}) {
|
|
171
170
|
const utilityModule = extensionManager.getModuleEntry('@ohif/extension-cornerstone.utilityModule.common');
|
|
172
171
|
const {
|
|
173
|
-
segmentationService
|
|
172
|
+
segmentationService,
|
|
173
|
+
uiNotificationService
|
|
174
174
|
} = servicesManager.services;
|
|
175
175
|
const {
|
|
176
176
|
dicomLoaderService
|
|
@@ -187,7 +187,7 @@ async function _loadSegments(_ref2) {
|
|
|
187
187
|
// Todo: what should be defaults here
|
|
188
188
|
const tolerance = 0.001;
|
|
189
189
|
const skipOverlapping = true;
|
|
190
|
-
esm.eventTarget.addEventListener(adapters_es/* Enums */.
|
|
190
|
+
esm.eventTarget.addEventListener(adapters_es/* Enums */.fX.Events.SEGMENTATION_LOAD_PROGRESS, evt => {
|
|
191
191
|
const {
|
|
192
192
|
percentComplete
|
|
193
193
|
} = evt.detail;
|
|
@@ -195,28 +195,50 @@ async function _loadSegments(_ref2) {
|
|
|
195
195
|
percentComplete
|
|
196
196
|
});
|
|
197
197
|
});
|
|
198
|
-
const results = await adapters_es
|
|
198
|
+
const results = await adapters_es/* adaptersSEG */.ql.Cornerstone3D.Segmentation.generateToolState(imageIds, arrayBuffer, esm.metaData, {
|
|
199
199
|
skipOverlapping,
|
|
200
200
|
tolerance,
|
|
201
201
|
eventTarget: esm.eventTarget,
|
|
202
202
|
triggerEvent: esm.triggerEvent
|
|
203
203
|
});
|
|
204
|
+
let usedRecommendedDisplayCIELabValue = true;
|
|
204
205
|
results.segMetadata.data.forEach((data, i) => {
|
|
205
206
|
if (i > 0) {
|
|
206
|
-
data.rgba =
|
|
207
|
+
data.rgba = data.RecommendedDisplayCIELabValue;
|
|
208
|
+
if (data.rgba) {
|
|
209
|
+
data.rgba = dicomlabToRGB(data.rgba);
|
|
210
|
+
} else {
|
|
211
|
+
usedRecommendedDisplayCIELabValue = false;
|
|
212
|
+
data.rgba = dist_esm.CONSTANTS.COLOR_LUT[i % dist_esm.CONSTANTS.COLOR_LUT.length];
|
|
213
|
+
}
|
|
207
214
|
}
|
|
208
215
|
});
|
|
216
|
+
if (results.overlappingSegments) {
|
|
217
|
+
uiNotificationService.show({
|
|
218
|
+
title: 'Overlapping Segments',
|
|
219
|
+
message: 'Unsupported overlapping segments detected, segmentation rendering results may be incorrect.',
|
|
220
|
+
type: 'warning'
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
if (!usedRecommendedDisplayCIELabValue) {
|
|
224
|
+
// Display a notification about the non-utilization of RecommendedDisplayCIELabValue
|
|
225
|
+
uiNotificationService.show({
|
|
226
|
+
title: 'DICOM SEG import',
|
|
227
|
+
message: 'RecommendedDisplayCIELabValue not found for one or more segments. The default color was used instead.',
|
|
228
|
+
type: 'warning',
|
|
229
|
+
duration: 5000
|
|
230
|
+
});
|
|
231
|
+
}
|
|
209
232
|
Object.assign(segDisplaySet, results);
|
|
210
233
|
}
|
|
211
234
|
function _segmentationExists(segDisplaySet, segmentationService) {
|
|
212
235
|
// This should be abstracted with the CornerstoneCacheService
|
|
213
236
|
return segmentationService.getSegmentation(segDisplaySet.displaySetInstanceUID);
|
|
214
237
|
}
|
|
215
|
-
function getSopClassHandlerModule(
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
} = _ref3;
|
|
238
|
+
function getSopClassHandlerModule({
|
|
239
|
+
servicesManager,
|
|
240
|
+
extensionManager
|
|
241
|
+
}) {
|
|
220
242
|
const getDisplaySetsFromSeries = instances => {
|
|
221
243
|
return _getDisplaySetsFromSeries(instances, servicesManager, extensionManager);
|
|
222
244
|
};
|
|
@@ -292,24 +314,23 @@ function getHangingProtocolModule() {
|
|
|
292
314
|
/* harmony default export */ const src_getHangingProtocolModule = (getHangingProtocolModule);
|
|
293
315
|
|
|
294
316
|
// EXTERNAL MODULE: ./state/index.js + 1 modules
|
|
295
|
-
var state = __webpack_require__(
|
|
296
|
-
// EXTERNAL MODULE: ../../../extensions/default/src/index.ts +
|
|
297
|
-
var default_src = __webpack_require__(
|
|
317
|
+
var state = __webpack_require__(15575);
|
|
318
|
+
// EXTERNAL MODULE: ../../../extensions/default/src/index.ts + 78 modules
|
|
319
|
+
var default_src = __webpack_require__(49704);
|
|
298
320
|
// EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
|
|
299
|
-
var prop_types = __webpack_require__(
|
|
321
|
+
var prop_types = __webpack_require__(11374);
|
|
300
322
|
var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
|
|
301
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
302
|
-
var ui_src = __webpack_require__(
|
|
323
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 487 modules
|
|
324
|
+
var ui_src = __webpack_require__(55395);
|
|
303
325
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/panels/callInputDialog.tsx
|
|
304
326
|
|
|
305
327
|
|
|
306
328
|
function callInputDialog(uiDialogService, label, callback) {
|
|
307
329
|
const dialogId = 'enter-segment-label';
|
|
308
|
-
const onSubmitHandler =
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
} = _ref;
|
|
330
|
+
const onSubmitHandler = ({
|
|
331
|
+
action,
|
|
332
|
+
value
|
|
333
|
+
}) => {
|
|
313
334
|
switch (action.id) {
|
|
314
335
|
case 'save':
|
|
315
336
|
callback(value.label, action.id);
|
|
@@ -328,7 +349,7 @@ function callInputDialog(uiDialogService, label, callback) {
|
|
|
328
349
|
centralize: true,
|
|
329
350
|
isDraggable: false,
|
|
330
351
|
showOverlay: true,
|
|
331
|
-
content: ui_src/* Dialog */.
|
|
352
|
+
content: ui_src/* Dialog */.lG,
|
|
332
353
|
contentProps: {
|
|
333
354
|
title: 'Segment',
|
|
334
355
|
value: {
|
|
@@ -341,19 +362,18 @@ function callInputDialog(uiDialogService, label, callback) {
|
|
|
341
362
|
actions: [{
|
|
342
363
|
id: 'cancel',
|
|
343
364
|
text: 'Cancel',
|
|
344
|
-
type: ui_src/* ButtonEnums.type */.
|
|
365
|
+
type: ui_src/* ButtonEnums.type */.Ny.NW.secondary
|
|
345
366
|
}, {
|
|
346
367
|
id: 'save',
|
|
347
368
|
text: 'Confirm',
|
|
348
|
-
type: ui_src/* ButtonEnums.type */.
|
|
369
|
+
type: ui_src/* ButtonEnums.type */.Ny.NW.primary
|
|
349
370
|
}],
|
|
350
371
|
onSubmit: onSubmitHandler,
|
|
351
|
-
body:
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
return /*#__PURE__*/react.createElement(ui_src/* Input */.II, {
|
|
372
|
+
body: ({
|
|
373
|
+
value,
|
|
374
|
+
setValue
|
|
375
|
+
}) => {
|
|
376
|
+
return /*#__PURE__*/react.createElement(ui_src/* Input */.pd, {
|
|
357
377
|
label: "Enter the segment label",
|
|
358
378
|
labelClassName: "text-white text-[14px] leading-[1.2]",
|
|
359
379
|
autoFocus: true,
|
|
@@ -385,7 +405,7 @@ function callInputDialog(uiDialogService, label, callback) {
|
|
|
385
405
|
}
|
|
386
406
|
/* harmony default export */ const panels_callInputDialog = (callInputDialog);
|
|
387
407
|
// EXTERNAL MODULE: ../../../node_modules/react-color/es/index.js + 219 modules
|
|
388
|
-
var es = __webpack_require__(
|
|
408
|
+
var es = __webpack_require__(13726);
|
|
389
409
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/panels/colorPickerDialog.css
|
|
390
410
|
// extracted by mini-css-extract-plugin
|
|
391
411
|
|
|
@@ -396,11 +416,10 @@ var es = __webpack_require__(22831);
|
|
|
396
416
|
|
|
397
417
|
function callColorPickerDialog(uiDialogService, rgbaColor, callback) {
|
|
398
418
|
const dialogId = 'pick-color';
|
|
399
|
-
const onSubmitHandler =
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
} = _ref;
|
|
419
|
+
const onSubmitHandler = ({
|
|
420
|
+
action,
|
|
421
|
+
value
|
|
422
|
+
}) => {
|
|
404
423
|
switch (action.id) {
|
|
405
424
|
case 'save':
|
|
406
425
|
callback(value.rgbaColor, action.id);
|
|
@@ -419,7 +438,7 @@ function callColorPickerDialog(uiDialogService, rgbaColor, callback) {
|
|
|
419
438
|
centralize: true,
|
|
420
439
|
isDraggable: false,
|
|
421
440
|
showOverlay: true,
|
|
422
|
-
content: ui_src/* Dialog */.
|
|
441
|
+
content: ui_src/* Dialog */.lG,
|
|
423
442
|
contentProps: {
|
|
424
443
|
title: 'Segment Color',
|
|
425
444
|
value: {
|
|
@@ -439,17 +458,16 @@ function callColorPickerDialog(uiDialogService, rgbaColor, callback) {
|
|
|
439
458
|
type: 'secondary'
|
|
440
459
|
}],
|
|
441
460
|
onSubmit: onSubmitHandler,
|
|
442
|
-
body:
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
} = _ref2;
|
|
461
|
+
body: ({
|
|
462
|
+
value,
|
|
463
|
+
setValue
|
|
464
|
+
}) => {
|
|
447
465
|
const handleChange = color => {
|
|
448
466
|
setValue({
|
|
449
467
|
rgbaColor: color.rgb
|
|
450
468
|
});
|
|
451
469
|
};
|
|
452
|
-
return /*#__PURE__*/react.createElement(es/* ChromePicker */.
|
|
470
|
+
return /*#__PURE__*/react.createElement(es/* ChromePicker */.xk, {
|
|
453
471
|
color: value.rgbaColor,
|
|
454
472
|
onChange: handleChange,
|
|
455
473
|
presetColors: [],
|
|
@@ -462,7 +480,7 @@ function callColorPickerDialog(uiDialogService, rgbaColor, callback) {
|
|
|
462
480
|
}
|
|
463
481
|
/* harmony default export */ const colorPickerDialog = (callColorPickerDialog);
|
|
464
482
|
// EXTERNAL MODULE: ../../../node_modules/react-i18next/dist/es/index.js + 15 modules
|
|
465
|
-
var dist_es = __webpack_require__(
|
|
483
|
+
var dist_es = __webpack_require__(80619);
|
|
466
484
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/panels/PanelSegmentation.tsx
|
|
467
485
|
|
|
468
486
|
|
|
@@ -471,13 +489,12 @@ var dist_es = __webpack_require__(69190);
|
|
|
471
489
|
|
|
472
490
|
|
|
473
491
|
|
|
474
|
-
function PanelSegmentation(
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
} = _ref;
|
|
492
|
+
function PanelSegmentation({
|
|
493
|
+
servicesManager,
|
|
494
|
+
commandsManager,
|
|
495
|
+
extensionManager,
|
|
496
|
+
configuration
|
|
497
|
+
}) {
|
|
481
498
|
const {
|
|
482
499
|
segmentationService,
|
|
483
500
|
viewportGridService,
|
|
@@ -485,7 +502,7 @@ function PanelSegmentation(_ref) {
|
|
|
485
502
|
} = servicesManager.services;
|
|
486
503
|
const {
|
|
487
504
|
t
|
|
488
|
-
} = (0,dist_es/* useTranslation
|
|
505
|
+
} = (0,dist_es/* useTranslation */.Bd)('PanelSegmentation');
|
|
489
506
|
const [selectedSegmentationId, setSelectedSegmentationId] = (0,react.useState)(null);
|
|
490
507
|
const [segmentationConfiguration, setSegmentationConfiguration] = (0,react.useState)(segmentationService.getConfiguration());
|
|
491
508
|
const [segmentations, setSegmentations] = (0,react.useState)(() => segmentationService.getSegmentations());
|
|
@@ -567,7 +584,6 @@ function PanelSegmentation(_ref) {
|
|
|
567
584
|
);
|
|
568
585
|
});
|
|
569
586
|
};
|
|
570
|
-
|
|
571
587
|
const onSegmentColorClick = (segmentationId, segmentIndex) => {
|
|
572
588
|
const segmentation = segmentationService.getSegmentation(segmentationId);
|
|
573
589
|
const segment = segmentation.segments[segmentIndex];
|
|
@@ -649,7 +665,7 @@ function PanelSegmentation(_ref) {
|
|
|
649
665
|
};
|
|
650
666
|
return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("div", {
|
|
651
667
|
className: "ohif-scrollbar flex min-h-0 flex-auto select-none flex-col justify-between overflow-auto"
|
|
652
|
-
}, /*#__PURE__*/react.createElement(ui_src/* SegmentationGroupTable */.
|
|
668
|
+
}, /*#__PURE__*/react.createElement(ui_src/* SegmentationGroupTable */.QQ, {
|
|
653
669
|
title: t('Segmentations'),
|
|
654
670
|
segmentations: segmentations,
|
|
655
671
|
disableEditing: configuration.disableEditing,
|
|
@@ -698,8 +714,6 @@ PanelSegmentation.propTypes = {
|
|
|
698
714
|
}).isRequired
|
|
699
715
|
}).isRequired
|
|
700
716
|
};
|
|
701
|
-
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 348 modules
|
|
702
|
-
var dist_esm = __webpack_require__(14957);
|
|
703
717
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/panels/SegmentationToolbox.tsx
|
|
704
718
|
|
|
705
719
|
|
|
@@ -727,20 +741,17 @@ const initialState = {
|
|
|
727
741
|
brushSize: 15,
|
|
728
742
|
mode: 'CircularBrush' // Can be 'CircularBrush' or 'SphereBrush'
|
|
729
743
|
},
|
|
730
|
-
|
|
731
744
|
Eraser: {
|
|
732
745
|
brushSize: 15,
|
|
733
746
|
mode: 'CircularEraser' // Can be 'CircularEraser' or 'SphereEraser'
|
|
734
747
|
},
|
|
735
|
-
|
|
736
748
|
Shapes: {
|
|
737
749
|
brushSize: 15,
|
|
738
750
|
mode: 'CircleScissor' // E.g., 'CircleScissor', 'RectangleScissor', or 'SphereScissor'
|
|
739
751
|
},
|
|
740
|
-
|
|
741
752
|
ThresholdBrush: {
|
|
742
753
|
brushSize: 15,
|
|
743
|
-
thresholdRange:
|
|
754
|
+
thresholdRange: null
|
|
744
755
|
},
|
|
745
756
|
activeTool: null
|
|
746
757
|
};
|
|
@@ -767,17 +778,16 @@ function toolboxReducer(state, action) {
|
|
|
767
778
|
return state;
|
|
768
779
|
}
|
|
769
780
|
}
|
|
770
|
-
function SegmentationToolbox(
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
} = _ref;
|
|
781
|
+
function SegmentationToolbox({
|
|
782
|
+
servicesManager,
|
|
783
|
+
extensionManager
|
|
784
|
+
}) {
|
|
775
785
|
const {
|
|
776
786
|
toolbarService,
|
|
777
787
|
segmentationService,
|
|
778
788
|
toolGroupService
|
|
779
789
|
} = servicesManager.services;
|
|
780
|
-
const [viewportGrid] = (0,ui_src/* useViewportGrid */.
|
|
790
|
+
const [viewportGrid] = (0,ui_src/* useViewportGrid */.ih)();
|
|
781
791
|
const {
|
|
782
792
|
viewports,
|
|
783
793
|
activeViewportId
|
|
@@ -798,6 +808,7 @@ function SegmentationToolbox(_ref) {
|
|
|
798
808
|
});
|
|
799
809
|
}, [activeViewportId, viewports, toolGroupService, dispatch]);
|
|
800
810
|
const setToolActive = (0,react.useCallback)(toolName => {
|
|
811
|
+
initializeThresholdValue(toolName);
|
|
801
812
|
toolbarService.recordInteraction({
|
|
802
813
|
interactionType: 'tool',
|
|
803
814
|
commands: [{
|
|
@@ -869,6 +880,25 @@ function SegmentationToolbox(_ref) {
|
|
|
869
880
|
segmentationUtils.setBrushSizeForToolGroup(toolGroupId, brushSize, toolName);
|
|
870
881
|
});
|
|
871
882
|
}, [toolGroupService]);
|
|
883
|
+
function initializeThresholdValue(toolName) {
|
|
884
|
+
if (state.ThresholdBrush.thresholdRange === null) {
|
|
885
|
+
// set the default threshold range from the tool configuration
|
|
886
|
+
const toolGroupIds = toolGroupService.getToolGroupIds();
|
|
887
|
+
const toolGroupId = toolGroupIds[0];
|
|
888
|
+
const toolGroup = toolGroupService.getToolGroup(toolGroupId);
|
|
889
|
+
const toolConfig = toolGroup.getToolConfiguration(toolName);
|
|
890
|
+
const defaultThresholdRange = toolConfig?.strategySpecificConfiguration?.THRESHOLD?.threshold;
|
|
891
|
+
dispatch({
|
|
892
|
+
type: ACTIONS.SET_TOOL_CONFIG,
|
|
893
|
+
payload: {
|
|
894
|
+
tool: 'ThresholdBrush',
|
|
895
|
+
config: {
|
|
896
|
+
thresholdRange: defaultThresholdRange
|
|
897
|
+
}
|
|
898
|
+
}
|
|
899
|
+
});
|
|
900
|
+
}
|
|
901
|
+
}
|
|
872
902
|
const onBrushSizeChange = (0,react.useCallback)((valueAsStringOrNumber, toolCategory) => {
|
|
873
903
|
const value = Number(valueAsStringOrNumber);
|
|
874
904
|
_getToolNamesFromCategory(toolCategory).forEach(toolName => {
|
|
@@ -885,7 +915,7 @@ function SegmentationToolbox(_ref) {
|
|
|
885
915
|
});
|
|
886
916
|
}, [toolGroupService, dispatch]);
|
|
887
917
|
const handleRangeChange = (0,react.useCallback)(newRange => {
|
|
888
|
-
if (newRange[0] === state.ThresholdBrush.thresholdRange[0] && newRange[1] === state.ThresholdBrush.thresholdRange[1]) {
|
|
918
|
+
if (newRange[0] === state.ThresholdBrush.thresholdRange?.[0] && newRange[1] === state.ThresholdBrush.thresholdRange?.[1]) {
|
|
889
919
|
return;
|
|
890
920
|
}
|
|
891
921
|
const toolNames = _getToolNamesFromCategory('ThresholdBrush');
|
|
@@ -894,7 +924,7 @@ function SegmentationToolbox(_ref) {
|
|
|
894
924
|
const toolGroup = toolGroupService.getToolGroup(toolGroupId);
|
|
895
925
|
toolGroup.setToolConfiguration(toolName, {
|
|
896
926
|
strategySpecificConfiguration: {
|
|
897
|
-
|
|
927
|
+
THRESHOLD: {
|
|
898
928
|
threshold: newRange
|
|
899
929
|
}
|
|
900
930
|
}
|
|
@@ -911,7 +941,7 @@ function SegmentationToolbox(_ref) {
|
|
|
911
941
|
}
|
|
912
942
|
});
|
|
913
943
|
}, [toolGroupService, dispatch, state.ThresholdBrush.thresholdRange]);
|
|
914
|
-
return /*#__PURE__*/react.createElement(ui_src/* AdvancedToolbox */.
|
|
944
|
+
return /*#__PURE__*/react.createElement(ui_src/* AdvancedToolbox */.om, {
|
|
915
945
|
title: "Segmentation Tools",
|
|
916
946
|
items: [{
|
|
917
947
|
name: 'Brush',
|
|
@@ -1030,10 +1060,11 @@ function SegmentationToolbox(_ref) {
|
|
|
1030
1060
|
className: "bg-secondary-light h-[1px]"
|
|
1031
1061
|
}), /*#__PURE__*/react.createElement("div", {
|
|
1032
1062
|
className: "mt-1 text-[13px] text-white"
|
|
1033
|
-
}, "Threshold"), /*#__PURE__*/react.createElement(ui_src/* InputDoubleRange */.
|
|
1063
|
+
}, "Threshold"), /*#__PURE__*/react.createElement(ui_src/* InputDoubleRange */.Z5, {
|
|
1034
1064
|
values: state.ThresholdBrush.thresholdRange,
|
|
1035
1065
|
onChange: handleRangeChange,
|
|
1036
|
-
minValue: -1000
|
|
1066
|
+
minValue: -1000 // Todo: these should be configurable
|
|
1067
|
+
,
|
|
1037
1068
|
maxValue: 1000,
|
|
1038
1069
|
step: 1,
|
|
1039
1070
|
showLabel: true,
|
|
@@ -1068,18 +1099,17 @@ function _getToolNamesFromCategory(category) {
|
|
|
1068
1099
|
|
|
1069
1100
|
|
|
1070
1101
|
|
|
1071
|
-
const getPanelModule =
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1075
|
-
|
|
1076
|
-
|
|
1077
|
-
} = _ref;
|
|
1102
|
+
const getPanelModule = ({
|
|
1103
|
+
commandsManager,
|
|
1104
|
+
servicesManager,
|
|
1105
|
+
extensionManager,
|
|
1106
|
+
configuration
|
|
1107
|
+
}) => {
|
|
1078
1108
|
const {
|
|
1079
1109
|
customizationService
|
|
1080
1110
|
} = servicesManager.services;
|
|
1081
1111
|
const wrappedPanelSegmentation = configuration => {
|
|
1082
|
-
const [appConfig] = (0,state/* useAppConfig */.
|
|
1112
|
+
const [appConfig] = (0,state/* useAppConfig */.r)();
|
|
1083
1113
|
const disableEditingForMode = customizationService.get('segmentation.disableEditing');
|
|
1084
1114
|
return /*#__PURE__*/react.createElement(PanelSegmentation, {
|
|
1085
1115
|
commandsManager: commandsManager,
|
|
@@ -1092,7 +1122,7 @@ const getPanelModule = _ref => {
|
|
|
1092
1122
|
});
|
|
1093
1123
|
};
|
|
1094
1124
|
const wrappedPanelSegmentationWithTools = configuration => {
|
|
1095
|
-
const [appConfig] = (0,state/* useAppConfig */.
|
|
1125
|
+
const [appConfig] = (0,state/* useAppConfig */.r)();
|
|
1096
1126
|
return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement(panels_SegmentationToolbox, {
|
|
1097
1127
|
commandsManager: commandsManager,
|
|
1098
1128
|
servicesManager: servicesManager,
|
|
@@ -1124,12 +1154,12 @@ const getPanelModule = _ref => {
|
|
|
1124
1154
|
}];
|
|
1125
1155
|
};
|
|
1126
1156
|
/* harmony default export */ const src_getPanelModule = (getPanelModule);
|
|
1127
|
-
// EXTERNAL MODULE: ../../../node_modules/@kitware/vtk.js/Filters/General/ImageMarchingSquares.js
|
|
1128
|
-
var ImageMarchingSquares = __webpack_require__(
|
|
1157
|
+
// EXTERNAL MODULE: ../../../node_modules/@kitware/vtk.js/Filters/General/ImageMarchingSquares.js
|
|
1158
|
+
var ImageMarchingSquares = __webpack_require__(52754);
|
|
1129
1159
|
// EXTERNAL MODULE: ../../../node_modules/@kitware/vtk.js/Common/Core/DataArray.js
|
|
1130
|
-
var DataArray = __webpack_require__(
|
|
1160
|
+
var DataArray = __webpack_require__(45128);
|
|
1131
1161
|
// EXTERNAL MODULE: ../../../node_modules/@kitware/vtk.js/Common/DataModel/ImageData.js + 2 modules
|
|
1132
|
-
var ImageData = __webpack_require__(
|
|
1162
|
+
var ImageData = __webpack_require__(94448);
|
|
1133
1163
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/utils/hydrationUtils.ts
|
|
1134
1164
|
|
|
1135
1165
|
|
|
@@ -1147,13 +1177,12 @@ var ImageData = __webpack_require__(96372);
|
|
|
1147
1177
|
*
|
|
1148
1178
|
* @returns Returns true upon successful update of viewports for segmentation rendering.
|
|
1149
1179
|
*/
|
|
1150
|
-
async function updateViewportsForSegmentationRendering(
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
} = _ref;
|
|
1180
|
+
async function updateViewportsForSegmentationRendering({
|
|
1181
|
+
viewportId,
|
|
1182
|
+
loadFn,
|
|
1183
|
+
servicesManager,
|
|
1184
|
+
referencedDisplaySetInstanceUID
|
|
1185
|
+
}) {
|
|
1157
1186
|
const {
|
|
1158
1187
|
cornerstoneViewportService,
|
|
1159
1188
|
segmentationService,
|
|
@@ -1221,11 +1250,10 @@ async function updateViewportsForSegmentationRendering(_ref) {
|
|
|
1221
1250
|
viewportGridService.setDisplaySetsForViewports(updatedViewports);
|
|
1222
1251
|
return true;
|
|
1223
1252
|
}
|
|
1224
|
-
const getTargetViewport =
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
} = _ref2;
|
|
1253
|
+
const getTargetViewport = ({
|
|
1254
|
+
viewportId,
|
|
1255
|
+
viewportGridService
|
|
1256
|
+
}) => {
|
|
1229
1257
|
const {
|
|
1230
1258
|
viewports,
|
|
1231
1259
|
activeViewportId
|
|
@@ -1247,12 +1275,11 @@ const getTargetViewport = _ref2 => {
|
|
|
1247
1275
|
*
|
|
1248
1276
|
* @returns {Array} Returns an array of viewports that require updates for segmentation rendering.
|
|
1249
1277
|
*/
|
|
1250
|
-
function getUpdatedViewportsForSegmentation(
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
} = _ref3;
|
|
1278
|
+
function getUpdatedViewportsForSegmentation({
|
|
1279
|
+
viewportId,
|
|
1280
|
+
servicesManager,
|
|
1281
|
+
referencedDisplaySetInstanceUID
|
|
1282
|
+
}) {
|
|
1256
1283
|
const {
|
|
1257
1284
|
hangingProtocolService,
|
|
1258
1285
|
displaySetService,
|
|
@@ -1304,7 +1331,7 @@ function getUpdatedViewportsForSegmentation(_ref3) {
|
|
|
1304
1331
|
|
|
1305
1332
|
const {
|
|
1306
1333
|
datasetToBlob
|
|
1307
|
-
} = dcmjs_es
|
|
1334
|
+
} = dcmjs_es/* default.data */.Ay.data;
|
|
1308
1335
|
const {
|
|
1309
1336
|
Cornerstone3D: {
|
|
1310
1337
|
Segmentation: {
|
|
@@ -1312,22 +1339,21 @@ const {
|
|
|
1312
1339
|
generateSegmentation
|
|
1313
1340
|
}
|
|
1314
1341
|
}
|
|
1315
|
-
} = adapters_es
|
|
1342
|
+
} = adapters_es/* adaptersSEG */.ql;
|
|
1316
1343
|
const {
|
|
1317
1344
|
Cornerstone3D: {
|
|
1318
1345
|
RTSS: {
|
|
1319
1346
|
generateRTSSFromSegmentations
|
|
1320
1347
|
}
|
|
1321
1348
|
}
|
|
1322
|
-
} = adapters_es
|
|
1349
|
+
} = adapters_es/* adaptersRT */.f_;
|
|
1323
1350
|
const {
|
|
1324
1351
|
downloadDICOMData
|
|
1325
|
-
} = adapters_es
|
|
1326
|
-
const commandsModule =
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
} = _ref;
|
|
1352
|
+
} = adapters_es/* helpers */._$;
|
|
1353
|
+
const commandsModule = ({
|
|
1354
|
+
servicesManager,
|
|
1355
|
+
extensionManager
|
|
1356
|
+
}) => {
|
|
1331
1357
|
const {
|
|
1332
1358
|
uiNotificationService,
|
|
1333
1359
|
segmentationService,
|
|
@@ -1360,10 +1386,9 @@ const commandsModule = _ref => {
|
|
|
1360
1386
|
* @param params.viewportId - the target viewport ID.
|
|
1361
1387
|
*
|
|
1362
1388
|
*/
|
|
1363
|
-
createEmptySegmentationForViewport: async
|
|
1364
|
-
|
|
1365
|
-
|
|
1366
|
-
} = _ref2;
|
|
1389
|
+
createEmptySegmentationForViewport: async ({
|
|
1390
|
+
viewportId
|
|
1391
|
+
}) => {
|
|
1367
1392
|
const viewport = getTargetViewport({
|
|
1368
1393
|
viewportId,
|
|
1369
1394
|
viewportGridService
|
|
@@ -1412,11 +1437,10 @@ const commandsModule = _ref => {
|
|
|
1412
1437
|
* @param params.viewportId - the target viewport ID.
|
|
1413
1438
|
*
|
|
1414
1439
|
*/
|
|
1415
|
-
loadSegmentationsForViewport: async
|
|
1416
|
-
|
|
1417
|
-
|
|
1418
|
-
|
|
1419
|
-
} = _ref3;
|
|
1440
|
+
loadSegmentationsForViewport: async ({
|
|
1441
|
+
segmentations,
|
|
1442
|
+
viewportId
|
|
1443
|
+
}) => {
|
|
1420
1444
|
updateViewportsForSegmentationRendering({
|
|
1421
1445
|
viewportId,
|
|
1422
1446
|
servicesManager,
|
|
@@ -1479,11 +1503,10 @@ const commandsModule = _ref => {
|
|
|
1479
1503
|
* @param params.displaySets - Array of display sets to be loaded for segmentation.
|
|
1480
1504
|
*
|
|
1481
1505
|
*/
|
|
1482
|
-
loadSegmentationDisplaySetsForViewport: async
|
|
1483
|
-
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
} = _ref4;
|
|
1506
|
+
loadSegmentationDisplaySetsForViewport: async ({
|
|
1507
|
+
viewportId,
|
|
1508
|
+
displaySets
|
|
1509
|
+
}) => {
|
|
1487
1510
|
// Todo: handle adding more than one segmentation
|
|
1488
1511
|
const displaySet = displaySets[0];
|
|
1489
1512
|
updateViewportsForSegmentationRendering({
|
|
@@ -1513,11 +1536,10 @@ const commandsModule = _ref => {
|
|
|
1513
1536
|
*
|
|
1514
1537
|
* @returns Returns the generated segmentation data.
|
|
1515
1538
|
*/
|
|
1516
|
-
generateSegmentation:
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
} = _ref5;
|
|
1539
|
+
generateSegmentation: ({
|
|
1540
|
+
segmentationId,
|
|
1541
|
+
options = {}
|
|
1542
|
+
}) => {
|
|
1521
1543
|
const segmentation = dist_esm.segmentation.state.getSegmentation(segmentationId);
|
|
1522
1544
|
const {
|
|
1523
1545
|
referencedVolumeId
|
|
@@ -1537,7 +1559,7 @@ const commandsModule = _ref => {
|
|
|
1537
1559
|
label,
|
|
1538
1560
|
color
|
|
1539
1561
|
} = segment;
|
|
1540
|
-
const RecommendedDisplayCIELabValue = dcmjs_es
|
|
1562
|
+
const RecommendedDisplayCIELabValue = dcmjs_es/* default.data */.Ay.data.Colors.rgb2DICOMLAB(color.slice(0, 3).map(value => value / 255)).map(value => Math.round(value));
|
|
1541
1563
|
const segmentMetadata = {
|
|
1542
1564
|
SegmentNumber: segmentIndex.toString(),
|
|
1543
1565
|
SegmentLabel: label,
|
|
@@ -1570,10 +1592,9 @@ const commandsModule = _ref => {
|
|
|
1570
1592
|
* @param params.segmentationId - ID of the segmentation to be downloaded.
|
|
1571
1593
|
*
|
|
1572
1594
|
*/
|
|
1573
|
-
downloadSegmentation:
|
|
1574
|
-
|
|
1575
|
-
|
|
1576
|
-
} = _ref6;
|
|
1595
|
+
downloadSegmentation: ({
|
|
1596
|
+
segmentationId
|
|
1597
|
+
}) => {
|
|
1577
1598
|
const segmentationInOHIF = segmentationService.getSegmentation(segmentationId);
|
|
1578
1599
|
const generatedSegmentation = actions.generateSegmentation({
|
|
1579
1600
|
segmentationId
|
|
@@ -1592,11 +1613,10 @@ const commandsModule = _ref => {
|
|
|
1592
1613
|
* @returns {Object|void} Returns the naturalized report if successfully stored,
|
|
1593
1614
|
* otherwise throws an error.
|
|
1594
1615
|
*/
|
|
1595
|
-
storeSegmentation: async
|
|
1596
|
-
|
|
1597
|
-
|
|
1598
|
-
|
|
1599
|
-
} = _ref7;
|
|
1616
|
+
storeSegmentation: async ({
|
|
1617
|
+
segmentationId,
|
|
1618
|
+
dataSource
|
|
1619
|
+
}) => {
|
|
1600
1620
|
const promptResult = await (0,default_src.createReportDialogPrompt)(uiDialogService, {
|
|
1601
1621
|
extensionManager
|
|
1602
1622
|
});
|
|
@@ -1641,15 +1661,14 @@ const commandsModule = _ref => {
|
|
|
1641
1661
|
* converts dataset to downloadable blob.
|
|
1642
1662
|
*
|
|
1643
1663
|
*/
|
|
1644
|
-
downloadRTSS:
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
} = _ref8;
|
|
1664
|
+
downloadRTSS: ({
|
|
1665
|
+
segmentationId
|
|
1666
|
+
}) => {
|
|
1648
1667
|
const segmentations = segmentationService.getSegmentation(segmentationId);
|
|
1649
1668
|
const vtkUtils = {
|
|
1650
|
-
vtkImageMarchingSquares: ImageMarchingSquares/* default */.
|
|
1651
|
-
vtkDataArray: DataArray/* default */.
|
|
1652
|
-
vtkImageData: ImageData/* default */.
|
|
1669
|
+
vtkImageMarchingSquares: ImageMarchingSquares/* default */.Ay,
|
|
1670
|
+
vtkDataArray: DataArray/* default */.Ay,
|
|
1671
|
+
vtkImageData: ImageData/* default */.Ay
|
|
1653
1672
|
};
|
|
1654
1673
|
const RTSS = generateRTSSFromSegmentations(segmentations, src.classes.MetadataProvider, src.DicomMetadataStore, esm.cache, dist_esm.Enums, vtkUtils);
|
|
1655
1674
|
try {
|
|
@@ -1697,10 +1716,9 @@ const commandsModule = _ref => {
|
|
|
1697
1716
|
/* harmony default export */ const src_commandsModule = (commandsModule);
|
|
1698
1717
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/init.ts
|
|
1699
1718
|
|
|
1700
|
-
function init(
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
} = _ref;
|
|
1719
|
+
function init({
|
|
1720
|
+
configuration = {}
|
|
1721
|
+
}) {
|
|
1704
1722
|
(0,dist_esm.addTool)(dist_esm.BrushTool);
|
|
1705
1723
|
}
|
|
1706
1724
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone-dicom-seg/src/index.tsx
|
|
@@ -1713,7 +1731,7 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
|
|
|
1713
1731
|
|
|
1714
1732
|
|
|
1715
1733
|
const Component = /*#__PURE__*/react.lazy(() => {
|
|
1716
|
-
return __webpack_require__.e(/* import() */
|
|
1734
|
+
return __webpack_require__.e(/* import() */ 295).then(__webpack_require__.bind(__webpack_require__, 58295));
|
|
1717
1735
|
});
|
|
1718
1736
|
const OHIFCornerstoneSEGViewport = props => {
|
|
1719
1737
|
return /*#__PURE__*/react.createElement(react.Suspense, {
|
|
@@ -1739,11 +1757,10 @@ const extension = {
|
|
|
1739
1757
|
*/
|
|
1740
1758
|
getPanelModule: src_getPanelModule,
|
|
1741
1759
|
getCommandsModule: src_commandsModule,
|
|
1742
|
-
getViewportModule(
|
|
1743
|
-
|
|
1744
|
-
|
|
1745
|
-
|
|
1746
|
-
} = _ref;
|
|
1760
|
+
getViewportModule({
|
|
1761
|
+
servicesManager,
|
|
1762
|
+
extensionManager
|
|
1763
|
+
}) {
|
|
1747
1764
|
const ExtendedOHIFCornerstoneSEGViewport = props => {
|
|
1748
1765
|
return /*#__PURE__*/react.createElement(OHIFCornerstoneSEGViewport, _extends({
|
|
1749
1766
|
servicesManager: servicesManager,
|
|
@@ -1767,13 +1784,6 @@ const extension = {
|
|
|
1767
1784
|
};
|
|
1768
1785
|
/* harmony default export */ const cornerstone_dicom_seg_src = (extension);
|
|
1769
1786
|
|
|
1770
|
-
/***/ }),
|
|
1771
|
-
|
|
1772
|
-
/***/ 78753:
|
|
1773
|
-
/***/ (() => {
|
|
1774
|
-
|
|
1775
|
-
/* (ignored) */
|
|
1776
|
-
|
|
1777
1787
|
/***/ })
|
|
1778
1788
|
|
|
1779
1789
|
}]);
|