hellfire 0.28.11 → 0.28.12

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/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [0.28.12](http://10.16.100.57/diffusion/115/paladin/compare/v0.28.11...v0.28.12) (2024-12-23)
6
+
7
+
8
+
5
9
  ## [0.28.11](http://10.16.100.57/diffusion/115/paladin/compare/v0.28.10...v0.28.11) (2024-12-19)
6
10
 
7
11
 
package/dist/index.js CHANGED
@@ -908,7 +908,9 @@ var SET_IO_OFF = 'SET_IO_OFF';
908
908
  var SET_VIEW_MODE = 'SET_VIEW_MODE';
909
909
  var SET_MIP_ACTIVE_TOOL = 'SET_MIP_ACTIVE_TOOL';
910
910
  var SET_ACTION_STATE_KEY = 'SET_ACTION_STATE_KEY';
911
- var SET_KEY_IMAGE = 'SET_KEY_IMAGE'; // ---------- Reducers ----------
911
+ var SET_KEY_IMAGE = 'SET_KEY_IMAGE';
912
+ var TOGGLE_DISPLAY_SHUTTER = 'TOGGLE_DISPLAY_SHUTTER';
913
+ var SET_DISPLAY_SHUTTER = 'SET_DISPLAY_SHUTTER'; // ---------- Reducers ----------
912
914
 
913
915
  var isMobile = ua.isDeviceTypeMobile();
914
916
  var initActiveTool = isMobile ? 'StackScroll' : 'Wwwc';
@@ -953,7 +955,9 @@ var initialState$1 = {
953
955
  // 每个序列单独管理自己是否锐化的状态
954
956
  keyImages: [],
955
957
  // 关键图像数据
956
- Film: false
958
+ Film: false,
959
+ displayShutter: true // 开启、关闭遮罩,默认开启
960
+
957
961
  };
958
962
  var action = (function () {
959
963
  var state = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState$1;
@@ -1010,6 +1014,30 @@ var action = (function () {
1010
1014
  });
1011
1015
  }
1012
1016
 
1017
+ case TOGGLE_DISPLAY_SHUTTER:
1018
+ {
1019
+ var _next = !state.displayShutter;
1020
+
1021
+ var _nextStorageValue = _next ? 'open' : 'close';
1022
+
1023
+ window.localStorage.setItem('hellfire-shutter-default-state', _nextStorageValue);
1024
+ return _objectSpread$1(_objectSpread$1({}, state), {}, {
1025
+ displayShutter: _next
1026
+ });
1027
+ }
1028
+
1029
+ case SET_DISPLAY_SHUTTER:
1030
+ {
1031
+ var _next2 = action.payload.value;
1032
+
1033
+ var _nextStorageValue2 = _next2 ? 'open' : 'close';
1034
+
1035
+ window.localStorage.setItem('hellfire-shutter-default-state', _nextStorageValue2);
1036
+ return _objectSpread$1(_objectSpread$1({}, state), {}, {
1037
+ displayShutter: _next2
1038
+ });
1039
+ }
1040
+
1013
1041
  case ACTIVE_DICOM_FUNCTION:
1014
1042
  {
1015
1043
  var _action$payload = action.payload,
@@ -1060,14 +1088,14 @@ var action = (function () {
1060
1088
 
1061
1089
  case TOGGLE_MEASURE:
1062
1090
  {
1063
- var _next = !state.continuousMeasure; // 记忆连续测量的值
1091
+ var _next3 = !state.continuousMeasure; // 记忆连续测量的值
1064
1092
 
1065
1093
 
1066
- var _nextStorageValue = _next ? 'open' : 'close';
1094
+ var _nextStorageValue3 = _next3 ? 'open' : 'close';
1067
1095
 
1068
- window.localStorage.setItem('hellfire-continuous-measure-default-state', _nextStorageValue);
1096
+ window.localStorage.setItem('hellfire-continuous-measure-default-state', _nextStorageValue3);
1069
1097
  return _objectSpread$1(_objectSpread$1({}, state), {}, {
1070
- continuousMeasure: _next
1098
+ continuousMeasure: _next3
1071
1099
  });
1072
1100
  }
1073
1101
 
@@ -1164,6 +1192,23 @@ function toggleOverlayText() {
1164
1192
  type: TOGGLE_OVERLAY_TEXT
1165
1193
  };
1166
1194
  }
1195
+ /**
1196
+ * 开启关闭遮罩
1197
+ */
1198
+
1199
+ function toggleDisplayShutter(value) {
1200
+ return {
1201
+ type: TOGGLE_DISPLAY_SHUTTER
1202
+ };
1203
+ }
1204
+ function setDisplayShutter(value) {
1205
+ return {
1206
+ type: SET_DISPLAY_SHUTTER,
1207
+ payload: {
1208
+ value: value
1209
+ }
1210
+ };
1211
+ }
1167
1212
  /**
1168
1213
  * 工具栏中单个触发的开关
1169
1214
  * 如:全屏、自动联动等
@@ -28261,8 +28306,8 @@ function _createSuper$J(Derived) { var hasNativeReflectConstruct = _isNativeRefl
28261
28306
 
28262
28307
  function _isNativeReflectConstruct$J() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
28263
28308
  var BaseTool$c = cornerstoneTools.importInternal('base/BaseTool');
28264
- var fillOutsideRect = cornerstoneTools.importInternal('drawing/fillOutsideRect');
28265
28309
  var getNewContext$i = cornerstoneTools.importInternal('drawing/getNewContext');
28310
+ var path$2 = cornerstoneTools.importInternal('drawing/path');
28266
28311
  var external$t = cornerstoneTools.external;
28267
28312
  /**
28268
28313
  * 工具:遮罩
@@ -28304,14 +28349,11 @@ var ShutterShapeTool = /*#__PURE__*/function (_BaseTool) {
28304
28349
  external$t.cornerstone.updateImage(element);
28305
28350
  }
28306
28351
  }
28307
- }, {
28308
- key: "drawShape",
28309
- value: function drawShape(canvas, rowHeightInCanvas, rulerSpace) {}
28310
28352
  }, {
28311
28353
  key: "renderToolData",
28312
28354
  value: function () {
28313
28355
  var _renderToolData = asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(evt) {
28314
- var eventData, canvas, image, element, context, imagePlane, ShutterLeftVerticalEdge, ShutterRightVerticalEdge, ShutterUpperHorizontalEdge, ShutterLowerHorizontalEdge, _ShutterLeftVerticalEdge, _ShutterRightVerticalEdge, _ShutterUpperHorizontalEdge, _ShutterLowerHorizontalEdge, start, end;
28356
+ var eventData, canvas, image, element, context, imagePlane, rows, columns, ShutterLeftVerticalEdge, ShutterRightVerticalEdge, ShutterUpperHorizontalEdge, ShutterLowerHorizontalEdge, _ShutterLeftVerticalEdge, _ShutterRightVerticalEdge, _ShutterUpperHorizontalEdge, _ShutterLowerHorizontalEdge, start, end, corner1, corner2, left, top, width, height, devicePixelRatio;
28315
28357
 
28316
28358
  return regenerator.wrap(function _callee$(_context) {
28317
28359
  while (1) {
@@ -28331,32 +28373,50 @@ var ShutterShapeTool = /*#__PURE__*/function (_BaseTool) {
28331
28373
  return _context.abrupt("return");
28332
28374
 
28333
28375
  case 7:
28376
+ rows = imagePlane.rows;
28377
+ columns = imagePlane.columns;
28334
28378
  ShutterLeftVerticalEdge = imagePlane.shutterLeftVerticalEdge;
28335
28379
  ShutterRightVerticalEdge = imagePlane.shutterRightVerticalEdge;
28336
28380
  ShutterUpperHorizontalEdge = imagePlane.shutterUpperHorizontalEdge;
28337
28381
  ShutterLowerHorizontalEdge = imagePlane.shutterLowerHorizontalEdge;
28338
28382
 
28339
28383
  if (!(!ShutterLeftVerticalEdge || !ShutterRightVerticalEdge || !ShutterUpperHorizontalEdge || !ShutterLowerHorizontalEdge)) {
28340
- _context.next = 13;
28384
+ _context.next = 15;
28341
28385
  break;
28342
28386
  }
28343
28387
 
28344
28388
  return _context.abrupt("return");
28345
28389
 
28346
- case 13:
28390
+ case 15:
28347
28391
  _ShutterLeftVerticalEdge = lodash$1.toNumber(ShutterLeftVerticalEdge);
28348
28392
  _ShutterRightVerticalEdge = lodash$1.toNumber(ShutterRightVerticalEdge);
28349
28393
  _ShutterUpperHorizontalEdge = lodash$1.toNumber(ShutterUpperHorizontalEdge);
28350
28394
  _ShutterLowerHorizontalEdge = lodash$1.toNumber(ShutterLowerHorizontalEdge);
28351
28395
 
28352
28396
  if (!(lodash$1.isNaN(_ShutterLeftVerticalEdge) || lodash$1.isNaN(_ShutterRightVerticalEdge) || lodash$1.isNaN(_ShutterUpperHorizontalEdge) || lodash$1.isNaN(_ShutterLowerHorizontalEdge))) {
28353
- _context.next = 19;
28397
+ _context.next = 21;
28354
28398
  break;
28355
28399
  }
28356
28400
 
28357
28401
  return _context.abrupt("return");
28358
28402
 
28359
- case 19:
28403
+ case 21:
28404
+ if (!(_ShutterLeftVerticalEdge < 0 || _ShutterRightVerticalEdge < 0 || _ShutterUpperHorizontalEdge < 0 || _ShutterLowerHorizontalEdge < 0)) {
28405
+ _context.next = 23;
28406
+ break;
28407
+ }
28408
+
28409
+ return _context.abrupt("return");
28410
+
28411
+ case 23:
28412
+ if (!(_ShutterLeftVerticalEdge > rows || _ShutterRightVerticalEdge > rows || _ShutterUpperHorizontalEdge > columns || _ShutterLowerHorizontalEdge > columns)) {
28413
+ _context.next = 25;
28414
+ break;
28415
+ }
28416
+
28417
+ return _context.abrupt("return");
28418
+
28419
+ case 25:
28360
28420
  start = {
28361
28421
  x: _ShutterLeftVerticalEdge,
28362
28422
  y: _ShutterUpperHorizontalEdge
@@ -28365,13 +28425,23 @@ var ShutterShapeTool = /*#__PURE__*/function (_BaseTool) {
28365
28425
  x: _ShutterRightVerticalEdge,
28366
28426
  y: _ShutterLowerHorizontalEdge
28367
28427
  };
28368
- fillOutsideRect(context, element, start, end, {
28428
+ corner1 = external$t.cornerstone.pixelToCanvas(element, start);
28429
+ corner2 = external$t.cornerstone.pixelToCanvas(element, end);
28430
+ left = Math.min(corner1.x, corner2.x);
28431
+ top = Math.min(corner1.y, corner2.y);
28432
+ width = Math.abs(corner1.x - corner2.x);
28433
+ height = Math.abs(corner1.y - corner2.y);
28434
+ devicePixelRatio = getDevicePixelRatio();
28435
+ path$2(context, {
28369
28436
  color: '#000',
28370
28437
  fillStyle: '#000'
28438
+ }, function (context) {
28439
+ context.rect(0, 0, context.canvas.clientWidth * devicePixelRatio, context.canvas.clientHeight * devicePixelRatio);
28440
+ context.rect(left + width, top, -width, height);
28371
28441
  });
28372
28442
  return _context.abrupt("return");
28373
28443
 
28374
- case 23:
28444
+ case 36:
28375
28445
  case "end":
28376
28446
  return _context.stop();
28377
28447
  }
@@ -28388,7 +28458,7 @@ var ShutterShapeTool = /*#__PURE__*/function (_BaseTool) {
28388
28458
  }]);
28389
28459
 
28390
28460
  return ShutterShapeTool;
28391
- }(BaseTool$c); //
28461
+ }(BaseTool$c);
28392
28462
 
28393
28463
  var getToolState$g = cornerstoneTools.getToolState;
28394
28464
  function getImagesLength (element) {
@@ -33910,7 +33980,7 @@ var ImageTool = /*#__PURE__*/function (_Component) {
33910
33980
  icon: /*#__PURE__*/React__default.createElement(SvgQrcode, null)
33911
33981
  }, {
33912
33982
  key: 'openDicomModal',
33913
- text: 'DICOM信息',
33983
+ text: '图像信息',
33914
33984
  icon: /*#__PURE__*/React__default.createElement(SvgFileTextAlt, null),
33915
33985
  value: 'dicomInfo',
33916
33986
  onClick: function onClick() {
@@ -43772,7 +43842,8 @@ var DicomToolFlattenMode = /*#__PURE__*/function (_Component) {
43772
43842
  MIP = _this$props2.MIP,
43773
43843
  CPR = _this$props2.CPR,
43774
43844
  films = _this$props2.films,
43775
- allowFilmPrint = _this$props2.allowFilmPrint;
43845
+ allowFilmPrint = _this$props2.allowFilmPrint,
43846
+ displayShutter = _this$props2.displayShutter;
43776
43847
  var _this$props3 = this.props,
43777
43848
  start3D = _this$props3.start3D,
43778
43849
  exit3D = _this$props3.exit3D,
@@ -43784,7 +43855,8 @@ var DicomToolFlattenMode = /*#__PURE__*/function (_Component) {
43784
43855
  openDicomModal = _this$props3.openDicomModal,
43785
43856
  operateKeyImages = _this$props3.operateKeyImages,
43786
43857
  openSettingModal = _this$props3.openSettingModal,
43787
- handleFilmPrint = _this$props3.handleFilmPrint;
43858
+ handleFilmPrint = _this$props3.handleFilmPrint,
43859
+ toggleDisplayShutter = _this$props3.toggleDisplayShutter;
43788
43860
  var isThree = MPR || VR || Surgery || MIP || CPR; // 非同屏互通模式下
43789
43861
 
43790
43862
  var IODisconnect = !IO;
@@ -43990,12 +44062,15 @@ var DicomToolFlattenMode = /*#__PURE__*/function (_Component) {
43990
44062
  e.stopPropagation();
43991
44063
  openDicomModal('dicomInfo', 'DICOM详情信息');
43992
44064
  }
43993
- }, "DICOM\u4FE1\u606F"), /*#__PURE__*/React__default.createElement(LargeToolItem, {
44065
+ }, "\u56FE\u50CF\u4FE1\u606F"), /*#__PURE__*/React__default.createElement(LargeToolItem, {
43994
44066
  onClick: function onClick(e) {
43995
44067
  e.stopPropagation();
43996
44068
  openDicomModal('scanInfo', '扫描参数');
43997
44069
  }
43998
- }, "\u626B\u63CF\u4FE1\u606F")), !MIP && /*#__PURE__*/React__default.createElement("div", {
44070
+ }, "\u626B\u63CF\u4FE1\u606F"), /*#__PURE__*/React__default.createElement(LargeToolItem, {
44071
+ active: displayShutter,
44072
+ onClick: toggleDisplayShutter
44073
+ }, "\u906E\u7F69")), !MIP && /*#__PURE__*/React__default.createElement("div", {
43999
44074
  className: "paladin-flex-row"
44000
44075
  }, /*#__PURE__*/React__default.createElement(LargeToolItem, {
44001
44076
  active: Fullscreen,
@@ -44096,7 +44171,8 @@ var DicomToolFlattenMode$1 = /*#__PURE__*/function (_Component) {
44096
44171
  MIP = _this$props2.MIP,
44097
44172
  CPR = _this$props2.CPR,
44098
44173
  films = _this$props2.films,
44099
- allowFilmPrint = _this$props2.allowFilmPrint;
44174
+ allowFilmPrint = _this$props2.allowFilmPrint,
44175
+ displayShutter = _this$props2.displayShutter;
44100
44176
  var _this$props3 = this.props,
44101
44177
  start3D = _this$props3.start3D,
44102
44178
  exit3D = _this$props3.exit3D,
@@ -44108,7 +44184,8 @@ var DicomToolFlattenMode$1 = /*#__PURE__*/function (_Component) {
44108
44184
  setCustomWindowLayoutType = _this$props3.setCustomWindowLayoutType,
44109
44185
  operateKeyImages = _this$props3.operateKeyImages,
44110
44186
  openSettingModal = _this$props3.openSettingModal,
44111
- handleFilmPrint = _this$props3.handleFilmPrint;
44187
+ handleFilmPrint = _this$props3.handleFilmPrint,
44188
+ toggleDisplayShutter = _this$props3.toggleDisplayShutter;
44112
44189
  var isThree = MPR || VR || Surgery || MIP;
44113
44190
  var IODisconnect = !IO;
44114
44191
  var commonTools = ['Layout', 'StackScroll', 'Wwwc', 'Zoom', 'Pan', 'Rotate', 'ReverseColor', 'Sharpen', 'Cine', 'FalseColor', 'Link', 'ReferencePosition', 'Reset']; // 只有传入了关键图像操作的方法 才显示这个按钮
@@ -44329,7 +44406,7 @@ var DicomToolFlattenMode$1 = /*#__PURE__*/function (_Component) {
44329
44406
  e.stopPropagation();
44330
44407
  openDicomModal('dicomInfo', 'DICOM详情信息');
44331
44408
  }
44332
- }, "DICOM\u4FE1\u606F"), /*#__PURE__*/React__default.createElement(LargeToolItem$1, {
44409
+ }, "\u56FE\u50CF\u4FE1\u606F"), /*#__PURE__*/React__default.createElement(LargeToolItem$1, {
44333
44410
  onClick: function onClick(e) {
44334
44411
  e.stopPropagation();
44335
44412
  openDicomModal('scanInfo', '扫描参数');
@@ -44360,7 +44437,10 @@ var DicomToolFlattenMode$1 = /*#__PURE__*/function (_Component) {
44360
44437
  e.stopPropagation();
44361
44438
  openSettingModal();
44362
44439
  }
44363
- }, "\u529F\u80FD\u8BBE\u7F6E")), !isThree && allowFilmPrint && /*#__PURE__*/React__default.createElement("div", {
44440
+ }, "\u529F\u80FD\u8BBE\u7F6E"), /*#__PURE__*/React__default.createElement(LargeToolItem$1, {
44441
+ active: displayShutter,
44442
+ onClick: toggleDisplayShutter
44443
+ }, "\u906E\u7F69")), !isThree && allowFilmPrint && /*#__PURE__*/React__default.createElement("div", {
44364
44444
  className: "paladin-flex-row"
44365
44445
  }, /*#__PURE__*/React__default.createElement(ConnectedFilmPrintAddTool, null), /*#__PURE__*/React__default.createElement(LargeToolItem$1, {
44366
44446
  onClick: function onClick(e) {
@@ -47256,7 +47336,8 @@ var mapStateToProps$k = function mapStateToProps(state) {
47256
47336
  MIP = _state$paladin$tools$3.MIP,
47257
47337
  CPR = _state$paladin$tools$3.CPR,
47258
47338
  Sharpen = _state$paladin$tools$3.Sharpen,
47259
- keyImages = _state$paladin$tools$3.keyImages;
47339
+ keyImages = _state$paladin$tools$3.keyImages,
47340
+ displayShutter = _state$paladin$tools$3.displayShutter;
47260
47341
  var isMobile = ua.isDeviceTypeMobile();
47261
47342
  var _state$paladin$viewpo = state.paladin.viewport,
47262
47343
  activeIndex = _state$paladin$viewpo.activeIndex,
@@ -47369,7 +47450,8 @@ var mapStateToProps$k = function mapStateToProps(state) {
47369
47450
  CPR: CPR,
47370
47451
  Sharpen: Sharpen,
47371
47452
  keyImages: keyImages,
47372
- films: films
47453
+ films: films,
47454
+ displayShutter: displayShutter
47373
47455
  };
47374
47456
  };
47375
47457
 
@@ -48431,7 +48513,8 @@ var ConnectedDicomTool = reactRedux.connect(mapStateToProps$k, {
48431
48513
  setLayout: setLayout,
48432
48514
  setLastLayout: setLastLayout,
48433
48515
  openGlobalLoading: openGlobalLoading,
48434
- closeGlobalLoading: closeGlobalLoading
48516
+ closeGlobalLoading: closeGlobalLoading,
48517
+ toggleDisplayShutter: toggleDisplayShutter
48435
48518
  }, mergeProps$k)(DicomTool);
48436
48519
 
48437
48520
  var css_248z$t = ".paladin-thumb-content {\n position: relative;\n height: 66px;\n width: 66px;\n border-width: 1px;\n border-style: solid;\n cursor: pointer;\n}\n.paladin-thumb-content .paladin-thumb-bottom {\n white-space: nowrap;\n position: absolute;\n bottom: 0;\n left: 50%;\n transform: translateX(-50%);\n color: #faa80a;\n text-align: center;\n font-size: 14px;\n z-index: 2;\n}\n.paladin-thumb-content .paladin-thumb-bottom-mobile,\n.paladin-thumb-content .paladin-thumb-top-mobile {\n font-size: 10px;\n}\n.paladin-thumb-content .paladin-thumb-top {\n position: absolute;\n top: 0;\n left: 50%;\n transform: translateX(-50%);\n color: yellow;\n font-size: 14px;\n z-index: 2;\n}\n.paladin-thumb-content .paladin-thumb-mask {\n position: absolute;\n width: 100%;\n height: 100%;\n z-index: 1;\n}\n.paladin-thumb-content .paladin-thumb-process {\n position: absolute;\n z-index: 1;\n top: 0;\n height: 4px;\n width: 100%;\n background: #ffffff;\n overflow: hidden;\n}\n.paladin-thumb-content .paladin-thumb-process .paladin-thumb-process-inner {\n background: #faa80a;\n height: 100%;\n}\n.mobile-thumb {\n width: 50px;\n height: 50px;\n}\n.paladin-thumb-svg {\n cursor: pointer;\n justify-content: center;\n}\n.paladin-thumb-svg svg {\n fill: #fff;\n}\n.paladin-thumb-svg:hover {\n background-color: #616772;\n}\n.paladin-thumb-button {\n cursor: pointer;\n justify-content: center;\n padding: 0 15px;\n}\n.paladin-thumb-button svg {\n fill: #fff;\n}\n.paladin-thumb-button:hover {\n background-color: #616772;\n}\n.paladin-thumb-button svg {\n width: 11px !important;\n}\n.paladin-fresh-button {\n cursor: pointer;\n justify-content: center;\n padding: 0 25px;\n}\n.paladin-fresh-button svg {\n fill: #fff;\n}\n.paladin-fresh-button:hover {\n background-color: #616772;\n}\n.paladin-fresh-button svg {\n width: 15px !important;\n}\n.paladin-thumb-study {\n cursor: pointer;\n font-size: 14px;\n line-height: 40px;\n padding: 0 12px;\n color: #ffffff;\n}\n.paladin-thumb-viewport {\n width: 100%;\n height: 100%;\n position: relative;\n overflow: hidden;\n}\n.paladin-thumb-viewport h4,\n.paladin-thumb-viewport p {\n font-size: 10px;\n}\n.paladin-thumb-study-wrapper {\n border-bottom: 1px solid #727882;\n}\n.paladin-thumb-context-wrapper {\n padding: 4px 2px;\n}\n";
@@ -50419,8 +50502,9 @@ var dicomToolDefaultProps = {
50419
50502
  }, {
50420
50503
  name: 'Wwwc',
50421
50504
  mouseButtonMasks: [1]
50422
- }, // {name: 'ShutterShape'},
50423
- {
50505
+ }, {
50506
+ name: 'ShutterShape'
50507
+ }, {
50424
50508
  name: 'Length',
50425
50509
  mouseButtonMasks: [1]
50426
50510
  }, {
@@ -50558,8 +50642,9 @@ function getCustomAvailableTools(data) {
50558
50642
  }
50559
50643
  },
50560
50644
  mouseButtonMasks: stackScrollMask
50561
- }, // {name: 'ShutterShape'},
50562
- {
50645
+ }, {
50646
+ name: 'ShutterShape'
50647
+ }, {
50563
50648
  name: 'Length',
50564
50649
  mouseButtonMasks: [1]
50565
50650
  }, {
@@ -51100,8 +51185,12 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
51100
51185
  _this.initReferencePosition(); // 处理sync的初始化
51101
51186
 
51102
51187
 
51103
- _this.initSync(); // 开启方位
51104
- // cornerstoneTools.setToolActiveForElement(this.element, 'ShutterShape');
51188
+ _this.initSync(); // 开启遮罩
51189
+
51190
+
51191
+ if (_this.props.displayShutter) {
51192
+ cornerstoneTools.setToolActiveForElement(_this.element, 'ShutterShape');
51193
+ } // 开启方位
51105
51194
 
51106
51195
 
51107
51196
  cornerstoneTools.setToolActiveForElement(_this.element, 'OrientationMarkers');
@@ -51211,8 +51300,11 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
51211
51300
 
51212
51301
 
51213
51302
  _this.initSync(); // 遮罩
51214
- // cornerstoneTools.setToolActiveForElement(this.element, 'ShutterShape');
51215
- // 开启方位
51303
+
51304
+
51305
+ if (_this.props.displayShutter) {
51306
+ cornerstoneTools.setToolActiveForElement(_this.element, 'ShutterShape');
51307
+ } // 开启方位
51216
51308
 
51217
51309
 
51218
51310
  cornerstoneTools.setToolActiveForElement(_this.element, 'OrientationMarkers');
@@ -52219,6 +52311,17 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
52219
52311
  case prevProps.onePickMode !== this.props.onePickMode:
52220
52312
  cornerstone.resize(this.element);
52221
52313
  break;
52314
+
52315
+ case prevProps.displayShutter !== this.props.displayShutter:
52316
+ // 遮罩开关
52317
+ if (this.props.displayShutter) {
52318
+ cornerstoneTools.setToolEnabledForElement(this.element, 'ShutterShape');
52319
+ cornerstoneTools.setToolActiveForElement(this.element, 'ShutterShape');
52320
+ } else {
52321
+ cornerstoneTools.setToolDisabledForElement(this.element, 'ShutterShape');
52322
+ }
52323
+
52324
+ break;
52222
52325
  }
52223
52326
  }
52224
52327
  }, {
@@ -52370,7 +52473,8 @@ var mapStateToProps$m = function mapStateToProps(state) {
52370
52473
  ReferencePosition = _state$paladin$tools$.ReferencePosition,
52371
52474
  CPR = _state$paladin$tools$.CPR,
52372
52475
  referenceLineType = _state$paladin$tools$.referenceLineType,
52373
- keyImages = _state$paladin$tools$.keyImages;
52476
+ keyImages = _state$paladin$tools$.keyImages,
52477
+ displayShutter = _state$paladin$tools$.displayShutter;
52374
52478
  var _state$paladin$tools$2 = state.paladin.tools.layout,
52375
52479
  col = _state$paladin$tools$2.col,
52376
52480
  currentScrollLine = _state$paladin$tools$2.currentScrollLine,
@@ -52406,7 +52510,8 @@ var mapStateToProps$m = function mapStateToProps(state) {
52406
52510
  CPR: CPR,
52407
52511
  referenceLineType: referenceLineType,
52408
52512
  keyImages: keyImages,
52409
- originStudy: originStudy
52513
+ originStudy: originStudy,
52514
+ displayShutter: displayShutter
52410
52515
  };
52411
52516
  };
52412
52517
 
@@ -70018,7 +70123,7 @@ var mergeProps$x = function mergeProps(propsFromState, propsFromDispatch, ownPro
70018
70123
  },
70019
70124
  initSeries: function () {
70020
70125
  var _initSeries2 = asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(changeStudy, callback) {
70021
- var data, resetToolMergeState, synchronizer, linkSynchronizer, linkImageModeSynchronizer, linkScrollSynchronizer, options, _study, series, needCheckMultiFrame, hasMultiFrame, modalitiesInStudy, i, item, wado, url, dataSet, numFrames, imageIds, _i, imageId, seriesCurrentIndex, firstReady, maxRequest, retry, clearCacheEveryLoad, dicom, frameTime, linkToolLocalDefaultState, realActiveIndex, continuousMeasureLocalDefaultState, referenceLineLocalDefaultState;
70126
+ var data, resetToolMergeState, synchronizer, linkSynchronizer, linkImageModeSynchronizer, linkScrollSynchronizer, options, _study, series, needCheckMultiFrame, hasMultiFrame, modalitiesInStudy, i, item, wado, url, dataSet, numFrames, imageIds, _i, imageId, seriesCurrentIndex, firstReady, maxRequest, retry, clearCacheEveryLoad, dicom, frameTime, linkToolLocalDefaultState, realActiveIndex, continuousMeasureLocalDefaultState, referenceLineLocalDefaultState, shutterLocalDefaultState;
70022
70127
 
70023
70128
  return regenerator.wrap(function _callee$(_context) {
70024
70129
  while (1) {
@@ -70252,7 +70357,7 @@ var mergeProps$x = function mergeProps(propsFromState, propsFromDispatch, ownPro
70252
70357
  if (dicom && dicom.FrameTime && dicom.FrameTime.value) {
70253
70358
  frameTime = dicom.FrameTime.value;
70254
70359
  propsFromDispatch.setCineFps(lodash$1.round(1000 / frameTime, 3) || 3);
70255
- } // 初始化本地存储的工具初始状态(目前包含:自动联动、连续测量、定位线)
70360
+ } // 初始化本地存储的工具初始状态(目前包含:自动联动、连续测量、定位线、遮罩)
70256
70361
 
70257
70362
 
70258
70363
  linkToolLocalDefaultState = window.localStorage.getItem('hellfire-link-tool-default-state');
@@ -70286,7 +70391,13 @@ var mergeProps$x = function mergeProps(propsFromState, propsFromDispatch, ownPro
70286
70391
  propsFromDispatch.activeDicomFunction("ReferenceLines");
70287
70392
  }
70288
70393
 
70289
- case 70:
70394
+ shutterLocalDefaultState = window.localStorage.getItem('hellfire-shutter-default-state');
70395
+
70396
+ if (shutterLocalDefaultState && shutterLocalDefaultState === 'close') {
70397
+ propsFromDispatch.setDisplayShutter(false);
70398
+ }
70399
+
70400
+ case 72:
70290
70401
  case "end":
70291
70402
  return _context.stop();
70292
70403
  }
@@ -70398,7 +70509,8 @@ var ConnectedDicomView = reactRedux.connect(mapStateToProps$z, {
70398
70509
  toggleOverlayText: toggleOverlayText,
70399
70510
  setFilmPrinterSettings: setFilmPrinterSettings,
70400
70511
  clearFilms: clearFilms,
70401
- removeFilm: removeFilm
70512
+ removeFilm: removeFilm,
70513
+ setDisplayShutter: setDisplayShutter
70402
70514
  }, mergeProps$x, withRef())(DicomView);
70403
70515
 
70404
70516
  function withRef() {