@ohif/app 3.7.0-beta.2 → 3.7.0-beta.21
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/{192.bundle.16d0f44e62ff52432731.js → 192.bundle.c08c5ab814e2b37f7de8.js} +4 -4
- package/dist/{199.bundle.7bb7f07334adb5994b07.js → 199.bundle.fff9b2c82296ac60e336.js} +2 -7
- package/dist/{208.bundle.fc090e7d0989c68bd18e.js → 208.bundle.44dbeaafde7c957eb5ec.js} +4 -4
- package/dist/{270.bundle.4564621556b0f963a004.js → 270.bundle.cddac4adcfdf8d1082a3.js} +13 -7
- package/dist/{283.bundle.c467b98efe62399505f9.js → 283.bundle.e0463be176208a49ae07.js} +14 -21
- package/dist/{331.bundle.bd0c13931a21d53086c9.js → 331.bundle.af86275686a78739ec4c.js} +27 -13
- package/dist/{351.bundle.2d4bc19d8b493879dbbe.js → 351.bundle.bbd6e3b383ac731edc94.js} +5 -5
- package/dist/{404.bundle.4b84daa465888ef7fc56.js → 404.bundle.6ab9072b6ca4fdc8e5ad.js} +6 -5
- package/dist/{55.bundle.5f5e5ef9087b0beee35c.js → 55.bundle.e9bf24eb17d84049c640.js} +4 -4
- package/dist/{569.bundle.0ed8d8178ffd43fe1c34.js → 569.bundle.f71780087b8c9a75d44e.js} +23 -12
- package/dist/{581.bundle.360d26f97b37da8faec3.js → 581.bundle.0b1b8273eb694c11366d.js} +7 -6
- package/dist/{616.bundle.377b54c860b461f9f68e.js → 616.bundle.5b72d71408acf40a8372.js} +6 -6
- package/dist/{642.bundle.a9b710e5bf6294f74e9f.js → 642.bundle.81fd0ee19e55de71af16.js} +2 -2
- package/dist/{707.bundle.57d5f86eceb59d415c4e.js → 707.bundle.112a221af4d036185312.js} +54 -60
- package/dist/{744.bundle.bfb752eba913c0a86d0a.js → 744.bundle.480d918dc1d9eb8293da.js} +58 -52
- package/dist/{790.bundle.e28eaccb6818de78ae48.js → 790.bundle.981ed07d900d4a0a4b53.js} +4 -4
- package/dist/{799.bundle.ca18bdf4abe4d9abea26.js → 799.bundle.6fbb7a97bccfb55dc79f.js} +5 -5
- package/dist/{82.bundle.2b4c115ba19903aa6bba.js → 82.bundle.dbd076c633a0568628be.js} +45 -40
- package/dist/{917.bundle.ab1b2df827119f94a898.js → 917.bundle.3f61a417e9a607b190da.js} +2 -2
- package/dist/{953.bundle.9e3a7225f07336bfcb41.js → 953.bundle.bad442420f62f5ab0c4b.js} +2 -2
- package/dist/{973.bundle.50644c5c4630221c00ac.js → 973.bundle.b833bec4e621fe4283c4.js} +2 -2
- package/dist/{976.bundle.2ee705b3311b8db2de5f.js → 976.bundle.0ec9edf8d307c412df16.js} +6 -6
- package/dist/{984.bundle.894dafd69ff965b87709.js → 984.bundle.1a1fe6f2b122b329a61d.js} +4 -4
- package/dist/app-config.js +1 -2
- package/dist/{app.bundle.a8d0e8aa74cb37c1479a.js → app.bundle.7793ce08e52aee1382ca.js} +779 -245
- package/dist/app.bundle.css +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js +1 -1
- package/dist/cornerstoneDICOMImageLoader.min.js.map +1 -1
- package/dist/google.js +1 -1
- package/dist/index.html +1 -1
- package/dist/sw.js +1 -1
- package/package.json +19 -19
- /package/dist/{50.bundle.aef33d7bd8482846aa40.js → 50.bundle.f3f85e8e2fb4532bb16b.js} +0 -0
|
@@ -38,8 +38,8 @@ var react = __webpack_require__(32735);
|
|
|
38
38
|
var esm = __webpack_require__(77331);
|
|
39
39
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/tools/dist/esm/index.js + 321 modules
|
|
40
40
|
var dist_esm = __webpack_require__(57270);
|
|
41
|
-
// EXTERNAL MODULE: ../../core/src/index.ts +
|
|
42
|
-
var src = __webpack_require__(
|
|
41
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 102 modules
|
|
42
|
+
var src = __webpack_require__(62771);
|
|
43
43
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/streaming-image-volume-loader/dist/esm/index.js + 13 modules
|
|
44
44
|
var streaming_image_volume_loader_dist_esm = __webpack_require__(28909);
|
|
45
45
|
// EXTERNAL MODULE: ../../../node_modules/@cornerstonejs/dicom-image-loader/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js
|
|
@@ -76,7 +76,7 @@ function initWebWorkers(appConfig) {
|
|
|
76
76
|
initialized = true;
|
|
77
77
|
}
|
|
78
78
|
}
|
|
79
|
-
function initWADOImageLoader(userAuthenticationService, appConfig) {
|
|
79
|
+
function initWADOImageLoader(userAuthenticationService, appConfig, extensionManager) {
|
|
80
80
|
(cornerstoneDICOMImageLoader_min_default()).external.cornerstone = esm;
|
|
81
81
|
(cornerstoneDICOMImageLoader_min_default()).external.dicomParser = (dicomParser_min_default());
|
|
82
82
|
registerVolumeLoader('cornerstoneStreamingImageVolume', streaming_image_volume_loader_dist_esm/* cornerstoneStreamingImageVolumeLoader */.IU);
|
|
@@ -90,18 +90,13 @@ function initWADOImageLoader(userAuthenticationService, appConfig) {
|
|
|
90
90
|
convertFloatPixelDataToInt: false
|
|
91
91
|
},
|
|
92
92
|
beforeSend: function (xhr) {
|
|
93
|
+
//TODO should be removed in the future and request emitted by DicomWebDataSource
|
|
94
|
+
const sourceConfig = extensionManager.getActiveDataSource()?.[0].getConfig() ?? {};
|
|
93
95
|
const headers = userAuthenticationService.getAuthorizationHeader();
|
|
94
|
-
|
|
95
|
-
// Request:
|
|
96
|
-
// JPEG-LS Lossless (1.2.840.10008.1.2.4.80) if available, otherwise accept
|
|
97
|
-
// whatever transfer-syntax the origin server provides.
|
|
98
|
-
// For now we use image/jls and image/x-jls because some servers still use the old type
|
|
99
|
-
// http://dicom.nema.org/medical/dicom/current/output/html/part18.html
|
|
96
|
+
const acceptHeader = src.utils.generateAcceptHeader(sourceConfig.acceptHeader, sourceConfig.requestTransferSyntaxUID, sourceConfig.omitQuotationForMultipartRequest);
|
|
100
97
|
const xhrRequestHeaders = {
|
|
101
|
-
Accept:
|
|
102
|
-
// 'multipart/related; type="image/x-jls", multipart/related; type="image/jls"; transfer-syntax="1.2.840.10008.1.2.4.80", multipart/related; type="image/x-jls", multipart/related; type="application/octet-stream"; transfer-syntax=*',
|
|
98
|
+
Accept: acceptHeader
|
|
103
99
|
};
|
|
104
|
-
|
|
105
100
|
if (headers) {
|
|
106
101
|
Object.assign(xhrRequestHeaders, headers);
|
|
107
102
|
}
|
|
@@ -122,8 +117,8 @@ function destroy() {
|
|
|
122
117
|
}
|
|
123
118
|
webWorkers.length = 0;
|
|
124
119
|
}
|
|
125
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
126
|
-
var ui_src = __webpack_require__(
|
|
120
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
|
|
121
|
+
var ui_src = __webpack_require__(28619);
|
|
127
122
|
;// CONCATENATED MODULE: ../../../extensions/cornerstone/src/utils/callInputDialog.tsx
|
|
128
123
|
|
|
129
124
|
|
|
@@ -187,11 +182,11 @@ function callInputDialog(uiDialogService, data, callback) {
|
|
|
187
182
|
actions: [{
|
|
188
183
|
id: 'cancel',
|
|
189
184
|
text: 'Cancel',
|
|
190
|
-
type:
|
|
185
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.secondary
|
|
191
186
|
}, {
|
|
192
187
|
id: 'save',
|
|
193
188
|
text: 'Save',
|
|
194
|
-
type:
|
|
189
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.primary
|
|
195
190
|
}],
|
|
196
191
|
onSubmit: onSubmitHandler,
|
|
197
192
|
body: _ref2 => {
|
|
@@ -3254,7 +3249,7 @@ async function init(_ref) {
|
|
|
3254
3249
|
thumbnail: appConfig?.maxNumRequests?.thumbnail || 75,
|
|
3255
3250
|
prefetch: appConfig?.maxNumRequests?.prefetch || 10
|
|
3256
3251
|
};
|
|
3257
|
-
initWADOImageLoader(userAuthenticationService, appConfig);
|
|
3252
|
+
initWADOImageLoader(userAuthenticationService, appConfig, extensionManager);
|
|
3258
3253
|
|
|
3259
3254
|
/* Measurement Service */
|
|
3260
3255
|
this.measurementServiceSource = connectToolsToMeasurementService(servicesManager);
|
|
@@ -3560,7 +3555,6 @@ const DicomUploadProgressItem = /*#__PURE__*/(0,react.memo)(_ref => {
|
|
|
3560
3555
|
const [percentComplete, setPercentComplete] = (0,react.useState)(dicomFileUploader.getPercentComplete());
|
|
3561
3556
|
const [failedReason, setFailedReason] = (0,react.useState)('');
|
|
3562
3557
|
const [status, setStatus] = (0,react.useState)(dicomFileUploader.getStatus());
|
|
3563
|
-
console.info(`${dicomFileUploader.getFileId()}`);
|
|
3564
3558
|
const isComplete = (0,react.useCallback)(() => {
|
|
3565
3559
|
return status === UploadStatus.Failed || status === UploadStatus.Cancelled || status === UploadStatus.Success;
|
|
3566
3560
|
}, [status]);
|
|
@@ -3850,8 +3844,6 @@ function DicomUploadProgress(_ref) {
|
|
|
3850
3844
|
}, numFilesCompleted === dicomFileUploaderArr.length ? /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement("span", {
|
|
3851
3845
|
className: NO_WRAP_ELLIPSIS_CLASS_NAMES
|
|
3852
3846
|
}, `${dicomFileUploaderArr.length} ${dicomFileUploaderArr.length > 1 ? 'files' : 'file'} completed.`), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
|
|
3853
|
-
variant: "contained",
|
|
3854
|
-
color: "primary",
|
|
3855
3847
|
disabled: false,
|
|
3856
3848
|
className: "ml-auto",
|
|
3857
3849
|
onClick: onComplete
|
|
@@ -3959,8 +3951,6 @@ function DicomUpload(_ref) {
|
|
|
3959
3951
|
getInputProps
|
|
3960
3952
|
} = _ref3;
|
|
3961
3953
|
return /*#__PURE__*/react.createElement("div", getRootProps(), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
|
|
3962
|
-
variant: "contained",
|
|
3963
|
-
color: "primary",
|
|
3964
3954
|
disabled: false,
|
|
3965
3955
|
onClick: () => {}
|
|
3966
3956
|
}, 'Add files', /*#__PURE__*/react.createElement("input", getInputProps())));
|
|
@@ -3973,9 +3963,7 @@ function DicomUpload(_ref) {
|
|
|
3973
3963
|
getInputProps
|
|
3974
3964
|
} = _ref4;
|
|
3975
3965
|
return /*#__PURE__*/react.createElement("div", getRootProps(), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
|
|
3976
|
-
|
|
3977
|
-
color: "primaryDark",
|
|
3978
|
-
border: "primaryActive",
|
|
3966
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.secondary,
|
|
3979
3967
|
disabled: false,
|
|
3980
3968
|
onClick: () => {}
|
|
3981
3969
|
}, 'Add folder', /*#__PURE__*/react.createElement("input", _extends({}, getInputProps(), {
|
|
@@ -6942,41 +6930,47 @@ class SegmentationService extends src/* PubSubService */.hC {
|
|
|
6942
6930
|
segmentIndex,
|
|
6943
6931
|
geometryId
|
|
6944
6932
|
} = rtStructData;
|
|
6945
|
-
const geometry = await esm.geometryLoader.createAndCacheGeometry(geometryId, {
|
|
6946
|
-
geometryData: {
|
|
6947
|
-
data,
|
|
6948
|
-
id,
|
|
6949
|
-
color,
|
|
6950
|
-
frameOfReferenceUID: structureSet.frameOfReferenceUID,
|
|
6951
|
-
segmentIndex
|
|
6952
|
-
},
|
|
6953
|
-
type: esm.Enums.GeometryType.CONTOUR
|
|
6954
|
-
});
|
|
6955
|
-
const contourSet = geometry.data;
|
|
6956
|
-
const centroid = contourSet.getCentroid();
|
|
6957
|
-
segmentsCachedStats[segmentIndex] = {
|
|
6958
|
-
center: {
|
|
6959
|
-
world: centroid
|
|
6960
|
-
},
|
|
6961
|
-
modifiedTime: rtDisplaySet.SeriesDate // we use the SeriesDate as the modifiedTime since this is the first time we are creating the segmentation
|
|
6962
|
-
};
|
|
6963
6933
|
|
|
6964
|
-
|
|
6965
|
-
|
|
6966
|
-
|
|
6967
|
-
|
|
6968
|
-
|
|
6969
|
-
|
|
6970
|
-
|
|
6934
|
+
// catch error instead of failing to allow loading to continue
|
|
6935
|
+
try {
|
|
6936
|
+
const geometry = await esm.geometryLoader.createAndCacheGeometry(geometryId, {
|
|
6937
|
+
geometryData: {
|
|
6938
|
+
data,
|
|
6939
|
+
id,
|
|
6940
|
+
color,
|
|
6941
|
+
frameOfReferenceUID: structureSet.frameOfReferenceUID,
|
|
6942
|
+
segmentIndex
|
|
6943
|
+
},
|
|
6944
|
+
type: esm.Enums.GeometryType.CONTOUR
|
|
6945
|
+
});
|
|
6946
|
+
const contourSet = geometry.data;
|
|
6947
|
+
const centroid = contourSet.getCentroid();
|
|
6948
|
+
segmentsCachedStats[segmentIndex] = {
|
|
6949
|
+
center: {
|
|
6950
|
+
world: centroid
|
|
6951
|
+
},
|
|
6952
|
+
modifiedTime: rtDisplaySet.SeriesDate // we use the SeriesDate as the modifiedTime since this is the first time we are creating the segmentation
|
|
6953
|
+
};
|
|
6971
6954
|
|
|
6972
|
-
|
|
6973
|
-
|
|
6974
|
-
|
|
6975
|
-
|
|
6976
|
-
|
|
6977
|
-
|
|
6978
|
-
|
|
6979
|
-
|
|
6955
|
+
segmentation.segments[segmentIndex] = {
|
|
6956
|
+
label: id,
|
|
6957
|
+
segmentIndex,
|
|
6958
|
+
color,
|
|
6959
|
+
...SEGMENT_CONSTANT
|
|
6960
|
+
};
|
|
6961
|
+
const numInitialized = Object.keys(segmentsCachedStats).length;
|
|
6962
|
+
|
|
6963
|
+
// Calculate percentage completed
|
|
6964
|
+
const percentComplete = Math.round(numInitialized / allRTStructData.length * 100);
|
|
6965
|
+
this._broadcastEvent(SegmentationService_EVENTS.SEGMENT_LOADING_COMPLETE, {
|
|
6966
|
+
percentComplete,
|
|
6967
|
+
// Note: this is not the geometryIds length since there might be
|
|
6968
|
+
// some missing ROINumbers
|
|
6969
|
+
numSegments: allRTStructData.length
|
|
6970
|
+
});
|
|
6971
|
+
} catch (e) {
|
|
6972
|
+
console.warn(e);
|
|
6973
|
+
}
|
|
6980
6974
|
};
|
|
6981
6975
|
const promiseArray = [];
|
|
6982
6976
|
for (let i = 0; i < allRTStructData.length; i++) {
|
|
@@ -7825,7 +7819,7 @@ class ViewportInfo {
|
|
|
7825
7819
|
// Since SEG and other derived displaySets are loaded in a different way, and not
|
|
7826
7820
|
// via cornerstoneViewportService
|
|
7827
7821
|
let viewportData = this.getViewportData();
|
|
7828
|
-
if (viewportData.viewportType === esm.Enums.ViewportType.ORTHOGRAPHIC) {
|
|
7822
|
+
if (viewportData.viewportType === esm.Enums.ViewportType.ORTHOGRAPHIC || viewportData.viewportType === esm.Enums.ViewportType.VOLUME_3D) {
|
|
7829
7823
|
viewportData = viewportData;
|
|
7830
7824
|
return viewportData.data.some(_ref => {
|
|
7831
7825
|
let {
|
|
@@ -8493,7 +8487,7 @@ class CornerstoneViewportService extends src/* PubSubService */.hC {
|
|
|
8493
8487
|
const viewportId = viewportInfo.getViewportId();
|
|
8494
8488
|
const viewport = this.getCornerstoneViewport(viewportId);
|
|
8495
8489
|
const viewportCamera = viewport.getCamera();
|
|
8496
|
-
if (viewport instanceof esm.VolumeViewport) {
|
|
8490
|
+
if (viewport instanceof esm.VolumeViewport || viewport instanceof esm.VolumeViewport3D) {
|
|
8497
8491
|
this._setVolumeViewport(viewport, viewportData, viewportInfo).then(() => {
|
|
8498
8492
|
if (keepCamera) {
|
|
8499
8493
|
viewport.setCamera(viewportCamera);
|
|
@@ -20,8 +20,8 @@ var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
|
|
|
20
20
|
var es = __webpack_require__(87519);
|
|
21
21
|
// EXTERNAL MODULE: ../../../node_modules/@xstate/react/lib/index.js
|
|
22
22
|
var lib = __webpack_require__(38531);
|
|
23
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
24
|
-
var src = __webpack_require__(
|
|
23
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
|
|
24
|
+
var src = __webpack_require__(28619);
|
|
25
25
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/contexts/TrackedMeasurementsContext/measurementTrackingMachine.js
|
|
26
26
|
|
|
27
27
|
const RESPONSE = {
|
|
@@ -345,6 +345,7 @@ const defaultOptions = {
|
|
|
345
345
|
};
|
|
346
346
|
|
|
347
347
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/contexts/TrackedMeasurementsContext/promptBeginTracking.js
|
|
348
|
+
|
|
348
349
|
const promptBeginTracking_RESPONSE = {
|
|
349
350
|
NO_NEVER: -1,
|
|
350
351
|
CANCEL: 0,
|
|
@@ -380,17 +381,17 @@ function _askTrackMeasurements(uiViewportDialogService, viewportIndex) {
|
|
|
380
381
|
const message = 'Track measurements for this series?';
|
|
381
382
|
const actions = [{
|
|
382
383
|
id: 'prompt-begin-tracking-cancel',
|
|
383
|
-
type:
|
|
384
|
+
type: src/* ButtonEnums.type */.LZ.U.secondary,
|
|
384
385
|
text: 'No',
|
|
385
386
|
value: promptBeginTracking_RESPONSE.CANCEL
|
|
386
387
|
}, {
|
|
387
388
|
id: 'prompt-begin-tracking-no-do-not-ask-again',
|
|
388
|
-
type:
|
|
389
|
+
type: src/* ButtonEnums.type */.LZ.U.secondary,
|
|
389
390
|
text: 'No, do not ask again',
|
|
390
391
|
value: promptBeginTracking_RESPONSE.NO_NEVER
|
|
391
392
|
}, {
|
|
392
393
|
id: 'prompt-begin-tracking-yes',
|
|
393
|
-
type:
|
|
394
|
+
type: src/* ButtonEnums.type */.LZ.U.primary,
|
|
394
395
|
text: 'Yes',
|
|
395
396
|
value: promptBeginTracking_RESPONSE.SET_STUDY_AND_SERIES
|
|
396
397
|
}];
|
|
@@ -414,6 +415,7 @@ function _askTrackMeasurements(uiViewportDialogService, viewportIndex) {
|
|
|
414
415
|
}
|
|
415
416
|
/* harmony default export */ const TrackedMeasurementsContext_promptBeginTracking = (promptBeginTracking);
|
|
416
417
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/contexts/TrackedMeasurementsContext/promptTrackNewSeries.js
|
|
418
|
+
|
|
417
419
|
const promptTrackNewSeries_RESPONSE = {
|
|
418
420
|
NO_NEVER: -1,
|
|
419
421
|
CANCEL: 0,
|
|
@@ -453,15 +455,15 @@ function _askShouldAddMeasurements(uiViewportDialogService, viewportIndex) {
|
|
|
453
455
|
return new Promise(function (resolve, reject) {
|
|
454
456
|
const message = 'Do you want to add this measurement to the existing report?';
|
|
455
457
|
const actions = [{
|
|
456
|
-
type:
|
|
458
|
+
type: src/* ButtonEnums.type */.LZ.U.secondary,
|
|
457
459
|
text: 'Cancel',
|
|
458
460
|
value: promptTrackNewSeries_RESPONSE.CANCEL
|
|
459
461
|
}, {
|
|
460
|
-
type:
|
|
462
|
+
type: src/* ButtonEnums.type */.LZ.U.primary,
|
|
461
463
|
text: 'Create new report',
|
|
462
464
|
value: promptTrackNewSeries_RESPONSE.CREATE_REPORT
|
|
463
465
|
}, {
|
|
464
|
-
type:
|
|
466
|
+
type: src/* ButtonEnums.type */.LZ.U.primary,
|
|
465
467
|
text: 'Add to existing report',
|
|
466
468
|
value: promptTrackNewSeries_RESPONSE.ADD_SERIES
|
|
467
469
|
}];
|
|
@@ -619,8 +621,8 @@ function promptTrackNewStudy_askSaveDiscardOrCancel(UIViewportDialogService, vie
|
|
|
619
621
|
});
|
|
620
622
|
}
|
|
621
623
|
/* harmony default export */ const TrackedMeasurementsContext_promptTrackNewStudy = (promptTrackNewStudy);
|
|
622
|
-
// EXTERNAL MODULE: ../../core/src/index.ts +
|
|
623
|
-
var core_src = __webpack_require__(
|
|
624
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 102 modules
|
|
625
|
+
var core_src = __webpack_require__(62771);
|
|
624
626
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/_shared/createReportAsync.tsx
|
|
625
627
|
|
|
626
628
|
|
|
@@ -723,17 +725,23 @@ function createReportDialogPrompt(uiDialogService) {
|
|
|
723
725
|
action,
|
|
724
726
|
value
|
|
725
727
|
} = _ref;
|
|
726
|
-
uiDialogService.dismiss({
|
|
727
|
-
id: dialogId
|
|
728
|
-
});
|
|
729
728
|
switch (action.id) {
|
|
730
729
|
case 'save':
|
|
731
|
-
|
|
732
|
-
|
|
733
|
-
|
|
734
|
-
|
|
730
|
+
// Only save if description is not blank otherwise ignore
|
|
731
|
+
if (value.label && value.label.trim() !== '') {
|
|
732
|
+
resolve({
|
|
733
|
+
action: PROMPT_RESPONSES.CREATE_REPORT,
|
|
734
|
+
value: value.label.trim()
|
|
735
|
+
});
|
|
736
|
+
uiDialogService.dismiss({
|
|
737
|
+
id: dialogId
|
|
738
|
+
});
|
|
739
|
+
}
|
|
735
740
|
break;
|
|
736
741
|
case 'cancel':
|
|
742
|
+
uiDialogService.dismiss({
|
|
743
|
+
id: dialogId
|
|
744
|
+
});
|
|
737
745
|
resolve({
|
|
738
746
|
action: PROMPT_RESPONSES.CANCEL,
|
|
739
747
|
value: undefined
|
|
@@ -757,11 +765,11 @@ function createReportDialogPrompt(uiDialogService) {
|
|
|
757
765
|
actions: [{
|
|
758
766
|
id: 'cancel',
|
|
759
767
|
text: 'Cancel',
|
|
760
|
-
type:
|
|
768
|
+
type: src/* ButtonEnums.type */.LZ.U.secondary
|
|
761
769
|
}, {
|
|
762
770
|
id: 'save',
|
|
763
771
|
text: 'Save',
|
|
764
|
-
type:
|
|
772
|
+
type: src/* ButtonEnums.type */.LZ.U.primary
|
|
765
773
|
}],
|
|
766
774
|
// TODO: Should be on button press...
|
|
767
775
|
onSubmit: _handleFormSubmit,
|
|
@@ -779,12 +787,12 @@ function createReportDialogPrompt(uiDialogService) {
|
|
|
779
787
|
};
|
|
780
788
|
const onKeyPressHandler = event => {
|
|
781
789
|
if (event.key === 'Enter') {
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
value
|
|
790
|
+
// Trigger form submit
|
|
791
|
+
_handleFormSubmit({
|
|
792
|
+
action: {
|
|
793
|
+
id: 'save'
|
|
794
|
+
},
|
|
795
|
+
value
|
|
788
796
|
});
|
|
789
797
|
}
|
|
790
798
|
};
|
|
@@ -875,6 +883,7 @@ function promptSaveReport(_ref, ctx, evt) {
|
|
|
875
883
|
var cornerstone_dicom_sr_src = __webpack_require__(65948);
|
|
876
884
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/contexts/TrackedMeasurementsContext/promptHydrateStructuredReport.js
|
|
877
885
|
|
|
886
|
+
|
|
878
887
|
const promptHydrateStructuredReport_RESPONSE = {
|
|
879
888
|
NO_NEVER: -1,
|
|
880
889
|
CANCEL: 0,
|
|
@@ -926,11 +935,11 @@ function promptHydrateStructuredReport_askTrackMeasurements(uiViewportDialogServ
|
|
|
926
935
|
return new Promise(function (resolve, reject) {
|
|
927
936
|
const message = 'Do you want to continue tracking measurements for this study?';
|
|
928
937
|
const actions = [{
|
|
929
|
-
type:
|
|
938
|
+
type: src/* ButtonEnums.type */.LZ.U.secondary,
|
|
930
939
|
text: 'No',
|
|
931
940
|
value: promptHydrateStructuredReport_RESPONSE.CANCEL
|
|
932
941
|
}, {
|
|
933
|
-
type:
|
|
942
|
+
type: src/* ButtonEnums.type */.LZ.U.primary,
|
|
934
943
|
text: 'Yes',
|
|
935
944
|
value: promptHydrateStructuredReport_RESPONSE.HYDRATE_REPORT
|
|
936
945
|
}];
|
|
@@ -1233,16 +1242,19 @@ var react = __webpack_require__(32735);
|
|
|
1233
1242
|
// EXTERNAL MODULE: ../../../node_modules/prop-types/index.js
|
|
1234
1243
|
var prop_types = __webpack_require__(60216);
|
|
1235
1244
|
var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
|
|
1236
|
-
// EXTERNAL MODULE:
|
|
1237
|
-
var
|
|
1238
|
-
// EXTERNAL MODULE: ../../
|
|
1239
|
-
var
|
|
1245
|
+
// EXTERNAL MODULE: ../../../node_modules/react-i18next/dist/es/index.js + 15 modules
|
|
1246
|
+
var es = __webpack_require__(21572);
|
|
1247
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 102 modules
|
|
1248
|
+
var src = __webpack_require__(62771);
|
|
1249
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
|
|
1250
|
+
var ui_src = __webpack_require__(28619);
|
|
1240
1251
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/panels/PanelStudyBrowserTracking/PanelStudyBrowserTracking.tsx
|
|
1241
1252
|
|
|
1242
1253
|
|
|
1243
1254
|
|
|
1244
1255
|
|
|
1245
1256
|
|
|
1257
|
+
|
|
1246
1258
|
const {
|
|
1247
1259
|
formatDate
|
|
1248
1260
|
} = src.utils;
|
|
@@ -1266,6 +1278,9 @@ function PanelStudyBrowserTracking(_ref) {
|
|
|
1266
1278
|
hangingProtocolService,
|
|
1267
1279
|
uiNotificationService
|
|
1268
1280
|
} = servicesManager.services;
|
|
1281
|
+
const {
|
|
1282
|
+
t
|
|
1283
|
+
} = (0,es/* useTranslation */.$G)('Common');
|
|
1269
1284
|
|
|
1270
1285
|
// Normally you nest the components so the tree isn't so deep, and the data
|
|
1271
1286
|
// doesn't have to have such an intense shape. This works well enough for now.
|
|
@@ -1358,7 +1373,7 @@ function PanelStudyBrowserTracking(_ref) {
|
|
|
1358
1373
|
const actuallyMappedStudies = mappedStudies.map(qidoStudy => {
|
|
1359
1374
|
return {
|
|
1360
1375
|
studyInstanceUid: qidoStudy.StudyInstanceUID,
|
|
1361
|
-
date: formatDate(qidoStudy.StudyDate),
|
|
1376
|
+
date: formatDate(qidoStudy.StudyDate) || t('NoStudyDate'),
|
|
1362
1377
|
description: qidoStudy.StudyDescription,
|
|
1363
1378
|
modalities: qidoStudy.ModalitiesInStudy,
|
|
1364
1379
|
numInstances: qidoStudy.NumInstances
|
|
@@ -1618,11 +1633,11 @@ viewportGridService, dataSource, displaySetService, uiDialogService, uiNotificat
|
|
|
1618
1633
|
actions: [{
|
|
1619
1634
|
id: 'cancel',
|
|
1620
1635
|
text: 'Cancel',
|
|
1621
|
-
type:
|
|
1636
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.secondary
|
|
1622
1637
|
}, {
|
|
1623
1638
|
id: 'yes',
|
|
1624
1639
|
text: 'Yes',
|
|
1625
|
-
type:
|
|
1640
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.primary,
|
|
1626
1641
|
classes: ['reject-yes-button']
|
|
1627
1642
|
}],
|
|
1628
1643
|
onClose: () => uiDialogService.dismiss({
|
|
@@ -1879,8 +1894,6 @@ WrappedPanelStudyBrowserTracking.propTypes = {
|
|
|
1879
1894
|
/* harmony default export */ const panels_PanelStudyBrowserTracking = (WrappedPanelStudyBrowserTracking);
|
|
1880
1895
|
// EXTERNAL MODULE: ./hooks/index.js + 3 modules
|
|
1881
1896
|
var hooks = __webpack_require__(39852);
|
|
1882
|
-
// EXTERNAL MODULE: ../../../node_modules/react-i18next/dist/es/index.js + 15 modules
|
|
1883
|
-
var es = __webpack_require__(21572);
|
|
1884
1897
|
;// CONCATENATED MODULE: ../../../extensions/measurement-tracking/src/panels/PanelMeasurementTableTracking/ActionButtons.tsx
|
|
1885
1898
|
|
|
1886
1899
|
|
|
@@ -1896,20 +1909,15 @@ function ActionButtons(_ref) {
|
|
|
1896
1909
|
t
|
|
1897
1910
|
} = (0,es/* useTranslation */.$G)('MeasurementTable');
|
|
1898
1911
|
return /*#__PURE__*/react.createElement(react.Fragment, null, /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
|
|
1899
|
-
className: "text-base px-2 py-2",
|
|
1900
|
-
size: "initial",
|
|
1901
|
-
variant: disabled ? 'disabled' : 'outlined',
|
|
1902
|
-
color: "black",
|
|
1903
|
-
border: "primaryActive",
|
|
1904
1912
|
onClick: onExportClick,
|
|
1905
|
-
disabled: disabled
|
|
1913
|
+
disabled: disabled,
|
|
1914
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.secondary,
|
|
1915
|
+
size: ui_src/* ButtonEnums.size */.LZ.d.small
|
|
1906
1916
|
}, t('Export')), /*#__PURE__*/react.createElement(ui_src/* Button */.zx, {
|
|
1907
|
-
className: "ml-2
|
|
1908
|
-
variant: disabled ? 'disabled' : 'outlined',
|
|
1909
|
-
size: "initial",
|
|
1910
|
-
color: "black",
|
|
1911
|
-
border: "primaryActive",
|
|
1917
|
+
className: "ml-2",
|
|
1912
1918
|
onClick: onCreateReportClick,
|
|
1919
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.secondary,
|
|
1920
|
+
size: ui_src/* ButtonEnums.size */.LZ.d.small,
|
|
1913
1921
|
disabled: disabled
|
|
1914
1922
|
}, t('Create Report')));
|
|
1915
1923
|
}
|
|
@@ -2133,16 +2141,14 @@ function PanelMeasurementTableTracking(_ref) {
|
|
|
2133
2141
|
onKeyPress: onKeyPressHandler
|
|
2134
2142
|
});
|
|
2135
2143
|
},
|
|
2136
|
-
actions: [
|
|
2137
|
-
// temp: swap button types until colors are updated
|
|
2138
|
-
{
|
|
2144
|
+
actions: [{
|
|
2139
2145
|
id: 'cancel',
|
|
2140
2146
|
text: 'Cancel',
|
|
2141
|
-
type:
|
|
2147
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.secondary
|
|
2142
2148
|
}, {
|
|
2143
2149
|
id: 'save',
|
|
2144
2150
|
text: 'Save',
|
|
2145
|
-
type:
|
|
2151
|
+
type: ui_src/* ButtonEnums.type */.LZ.U.primary
|
|
2146
2152
|
}],
|
|
2147
2153
|
onSubmit: onSubmitHandler
|
|
2148
2154
|
}
|
|
@@ -12,10 +12,10 @@ __webpack_require__.d(__webpack_exports__, {
|
|
|
12
12
|
"default": () => (/* binding */ basic_dev_mode_src)
|
|
13
13
|
});
|
|
14
14
|
|
|
15
|
-
// EXTERNAL MODULE: ../../ui/src/index.js +
|
|
16
|
-
var src = __webpack_require__(
|
|
17
|
-
// EXTERNAL MODULE: ../../core/src/index.ts +
|
|
18
|
-
var core_src = __webpack_require__(
|
|
15
|
+
// EXTERNAL MODULE: ../../ui/src/index.js + 452 modules
|
|
16
|
+
var src = __webpack_require__(28619);
|
|
17
|
+
// EXTERNAL MODULE: ../../core/src/index.ts + 102 modules
|
|
18
|
+
var core_src = __webpack_require__(62771);
|
|
19
19
|
;// CONCATENATED MODULE: ../../../modes/basic-dev-mode/src/toolbarButtons.js
|
|
20
20
|
// TODO: torn, can either bake this here; or have to create a whole new button type
|
|
21
21
|
// Only ways that you can pass in a custom React component for render :l
|
|
@@ -11,8 +11,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
11
11
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(32735);
|
|
12
12
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(60216);
|
|
13
13
|
/* harmony import */ var prop_types__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(prop_types__WEBPACK_IMPORTED_MODULE_1__);
|
|
14
|
-
/* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(
|
|
15
|
-
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(
|
|
14
|
+
/* harmony import */ var _ohif_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(62771);
|
|
15
|
+
/* harmony import */ var _ohif_ui__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(28619);
|
|
16
16
|
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(21572);
|
|
17
17
|
/* harmony import */ var _cornerstonejs_tools__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(57270);
|
|
18
18
|
/* harmony import */ var _getContextModule__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(43418);
|
|
@@ -40,7 +40,7 @@ function TrackedCornerstoneViewport(props) {
|
|
|
40
40
|
} = props;
|
|
41
41
|
const {
|
|
42
42
|
t
|
|
43
|
-
} = (0,react_i18next__WEBPACK_IMPORTED_MODULE_4__/* .useTranslation */ .$G)('
|
|
43
|
+
} = (0,react_i18next__WEBPACK_IMPORTED_MODULE_4__/* .useTranslation */ .$G)('Common');
|
|
44
44
|
const {
|
|
45
45
|
measurementService,
|
|
46
46
|
cornerstoneViewportService
|
|
@@ -69,6 +69,7 @@ function TrackedCornerstoneViewport(props) {
|
|
|
69
69
|
PatientAge,
|
|
70
70
|
SliceThickness,
|
|
71
71
|
SpacingBetweenSlices,
|
|
72
|
+
StudyDate,
|
|
72
73
|
ManufacturerModelName
|
|
73
74
|
} = displaySet.images[0];
|
|
74
75
|
const updateIsTracked = (0,react__WEBPACK_IMPORTED_MODULE_0__.useCallback)(() => {
|
|
@@ -159,8 +160,7 @@ function TrackedCornerstoneViewport(props) {
|
|
|
159
160
|
getStatusComponent: () => _getStatusComponent(isTracked),
|
|
160
161
|
studyData: {
|
|
161
162
|
label: viewportLabel,
|
|
162
|
-
studyDate: formatDate(SeriesDate),
|
|
163
|
-
// TODO: This is series date. Is that ok?
|
|
163
|
+
studyDate: formatDate(SeriesDate) || formatDate(StudyDate) || t('NoStudyDate'),
|
|
164
164
|
currentSeries: SeriesNumber,
|
|
165
165
|
// TODO - switch entire currentSeries to be UID based or actual position based
|
|
166
166
|
seriesDescription: SeriesDescription,
|