hellfire 0.28.7 → 0.28.8

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.8](http://10.16.100.57/diffusion/115/paladin/compare/v0.28.7...v0.28.8) (2024-12-06)
6
+
7
+
8
+
5
9
  ## [0.28.7](http://10.16.100.57/diffusion/115/paladin/compare/v0.28.6...v0.28.7) (2024-11-05)
6
10
 
7
11
 
package/README.md CHANGED
@@ -169,7 +169,7 @@ dicomSettingChange: (data) => void
169
169
  ```
170
170
  dicomSetting = {}
171
171
  ```
172
- 传入的功能设置的初始值,目前支持的字段:leftMouseTool、rightMouseTool
172
+ 传入的功能设置的初始值,目前支持的字段:leftMouseTool、rightMouseTool、middleMouseTool
173
173
 
174
174
  ### DicomView提供给父组件调用的方法:
175
175
 
package/dist/index.js CHANGED
@@ -29348,16 +29348,22 @@ var viewport = (function () {
29348
29348
  // 重置
29349
29349
  nextPerspective = ImagePlanDirection.Transverse;
29350
29350
  } else {
29351
- if (currentPerspective === ImagePlanDirection.Transverse) {
29352
- nextPerspective = ImagePlanDirection.Coronal;
29353
- }
29351
+ if (action.nextValue) {
29352
+ // 设置某个视角
29353
+ nextPerspective = action.nextValue;
29354
+ } else {
29355
+ // 自动切换
29356
+ if (currentPerspective === ImagePlanDirection.Transverse) {
29357
+ nextPerspective = ImagePlanDirection.Coronal;
29358
+ }
29354
29359
 
29355
- if (currentPerspective === ImagePlanDirection.Coronal) {
29356
- nextPerspective = ImagePlanDirection.Sagittal;
29357
- }
29360
+ if (currentPerspective === ImagePlanDirection.Coronal) {
29361
+ nextPerspective = ImagePlanDirection.Sagittal;
29362
+ }
29358
29363
 
29359
- if (currentPerspective === ImagePlanDirection.Sagittal) {
29360
- nextPerspective = ImagePlanDirection.Transverse;
29364
+ if (currentPerspective === ImagePlanDirection.Sagittal) {
29365
+ nextPerspective = ImagePlanDirection.Transverse;
29366
+ }
29361
29367
  }
29362
29368
  }
29363
29369
 
@@ -29473,10 +29479,11 @@ function resetViewPort() {
29473
29479
  type: RESER_VIEWPORT
29474
29480
  };
29475
29481
  }
29476
- function switchMprPerspective(reset) {
29482
+ function switchMprPerspective(reset, nextValue) {
29477
29483
  return {
29478
29484
  type: SWITCH_MPR_PERSPECTIVE,
29479
- reset: reset
29485
+ reset: reset,
29486
+ nextValue: nextValue
29480
29487
  };
29481
29488
  }
29482
29489
  function setOriginStudyData(data) {
@@ -46516,6 +46523,7 @@ var dicomBasicInfoFrom = window.localStorage.getItem('hellfire-dicom-basic-info-
46516
46523
  var customDicomSetting = {
46517
46524
  leftMouseTool: 'Wwwc',
46518
46525
  rightMouseTool: 'Zoom',
46526
+ middleMouseTool: 'Pan',
46519
46527
  hotKeyIsOpen: hotKeyIsOpen,
46520
46528
  dicomBasicInfoFrom: dicomBasicInfoFrom
46521
46529
  };
@@ -46571,12 +46579,14 @@ var UserSettingModal = /*#__PURE__*/function (_Component) {
46571
46579
  if (dicomSettingChange) {
46572
46580
  dicomSettingChange && dicomSettingChange({
46573
46581
  leftMouseTool: _this.state.leftMouseTool,
46574
- rightMouseTool: _this.state.rightMouseTool
46582
+ rightMouseTool: _this.state.rightMouseTool,
46583
+ middleMouseTool: _this.state.middleMouseTool
46575
46584
  });
46576
46585
  } else {
46577
46586
  // 没有接口层面的记忆,就直接本地存储
46578
46587
  window.localStorage.setItem('hellfire-left-mouse-tool', _this.state.leftMouseTool);
46579
46588
  window.localStorage.setItem('hellfire-right-mouse-tool', _this.state.rightMouseTool);
46589
+ window.localStorage.setItem('hellfire-middle-mouse-tool', _this.state.middleMouseTool);
46580
46590
  window.location.reload();
46581
46591
  }
46582
46592
  });
@@ -46593,6 +46603,7 @@ var UserSettingModal = /*#__PURE__*/function (_Component) {
46593
46603
  var _this$state = this.state,
46594
46604
  leftMouseTool = _this$state.leftMouseTool,
46595
46605
  rightMouseTool = _this$state.rightMouseTool,
46606
+ middleMouseTool = _this$state.middleMouseTool,
46596
46607
  hotKeyIsOpen = _this$state.hotKeyIsOpen,
46597
46608
  dicomBasicInfoFrom = _this$state.dicomBasicInfoFrom;
46598
46609
  var close = this.props.close;
@@ -46635,6 +46646,26 @@ var UserSettingModal = /*#__PURE__*/function (_Component) {
46635
46646
  });
46636
46647
  }
46637
46648
  }), /*#__PURE__*/React__default.createElement("span", null, item.label));
46649
+ })), /*#__PURE__*/React__default.createElement("div", {
46650
+ className: 'paladin-setting-radio',
46651
+ style: {
46652
+ marginTop: '10px'
46653
+ }
46654
+ }, /*#__PURE__*/React__default.createElement("div", {
46655
+ className: 'paladin-setting-radio-label'
46656
+ }, "\u4E2D\u952E\uFF1A"), dicomSettingRightMouseToolsDic && dicomSettingRightMouseToolsDic.map(function (item, index) {
46657
+ return /*#__PURE__*/React__default.createElement("div", {
46658
+ className: 'paladin-setting-radio-item',
46659
+ key: "setting-middle-mouse-".concat(index)
46660
+ }, /*#__PURE__*/React__default.createElement(Input$1, {
46661
+ type: "radio",
46662
+ checked: middleMouseTool === item.value,
46663
+ onChange: function onChange(e) {
46664
+ _this2.setState({
46665
+ middleMouseTool: item.value
46666
+ });
46667
+ }
46668
+ }), /*#__PURE__*/React__default.createElement("span", null, item.label));
46638
46669
  })), /*#__PURE__*/React__default.createElement("p", {
46639
46670
  style: {
46640
46671
  marginTop: '30px'
@@ -49693,7 +49724,7 @@ function processCentesisPath(imageId) {
49693
49724
  }
49694
49725
  }
49695
49726
 
49696
- var css_248z$z = ".paladin-thickness-container {\n cursor: pointer;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 90px;\n height: 16px;\n background-color: #505050;\n color: #888;\n font-size: 13px;\n}\n.paladin-thickness-selecter {\n padding: 5px 0;\n background-color: #333;\n color: #c8c8c8;\n font-size: 12px;\n}\n.paladin-thickness-selecter .paladin-thickness-select-item {\n padding: 3px 20px;\n cursor: pointer;\n}\n.paladin-thickness-selecter .paladin-thickness-select-item:hover {\n background-color: #fff;\n color: #000;\n}\n.paladin-thickness-selecter .paladin-thickness-select-mpr {\n border-bottom: 1px solid #ffffff;\n padding: 3px 20px 8px 20px;\n}\n";
49727
+ var css_248z$z = ".paladin-thickness-container {\n cursor: pointer;\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100px;\n height: 16px;\n background-color: #505050;\n color: #888;\n font-size: 13px;\n}\n.paladin-thickness-selecter {\n padding: 5px 0;\n background-color: #333;\n color: #c8c8c8;\n font-size: 12px;\n}\n.paladin-thickness-selecter .paladin-thickness-select-item {\n padding: 3px 20px;\n cursor: pointer;\n}\n.paladin-thickness-selecter .paladin-thickness-select-item:hover {\n background-color: #fff;\n color: #000;\n}\n.paladin-thickness-selecter .paladin-thickness-select-mpr {\n border-bottom: 1px solid #ffffff;\n padding: 3px 20px 8px 20px;\n}\n";
49697
49728
  styleInject$1(css_248z$z);
49698
49729
 
49699
49730
  function _createSuper$1u(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1u(); return function _createSuperInternal() { var Super = getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return possibleConstructorReturn(this, result); }; }
@@ -49762,7 +49793,7 @@ var ThicknessSelectMain = /*#__PURE__*/function (_Component) {
49762
49793
  value: 1
49763
49794
  });
49764
49795
  }
49765
- }, "MPR"), _this2.selectOptions && _this2.selectOptions.map(function (item) {
49796
+ }, "MPR\u5C42\u539A\u590D\u539F"), _this2.selectOptions && _this2.selectOptions.map(function (item) {
49766
49797
  return /*#__PURE__*/React__default.createElement("div", {
49767
49798
  className: "paladin-thickness-select-item",
49768
49799
  key: "thickness-".concat(item.value),
@@ -49781,7 +49812,9 @@ var ThicknessSelectMain = /*#__PURE__*/function (_Component) {
49781
49812
  popoverPlacement: 'top'
49782
49813
  }, /*#__PURE__*/React__default.createElement("div", {
49783
49814
  className: "paladin-thickness-container"
49784
- }, value === 1 ? 'MPR' : (spaceBetweenSlice * value).toFixed(1) + 'mm-MIP'));
49815
+ }, value === 1 ? '层厚选择' : (spaceBetweenSlice * value).toFixed(1) + 'mm-MIP', /*#__PURE__*/React__default.createElement("span", {
49816
+ className: "paladin-dicom-tool-tab-more"
49817
+ }, /*#__PURE__*/React__default.createElement(SvgCaretDown, null))));
49785
49818
  }
49786
49819
  }]);
49787
49820
 
@@ -50011,25 +50044,44 @@ var dicomToolDefaultProps = {
50011
50044
  mouseButtonMasks: [1]
50012
50045
  }]
50013
50046
  };
50047
+ /**
50048
+ * 1 左键
50049
+ * 2 右键
50050
+ * 4 中键
50051
+ */
50014
50052
 
50015
50053
  function getCustomAvailableTools(data) {
50016
- var panMask = [1, 4];
50054
+ var panMask = [1];
50017
50055
  var zoomMask = [1];
50018
50056
  var wwwcMask = [1];
50019
50057
  var stackScrollMask = [1];
50020
50058
 
50021
50059
  if (data && data.rightMouseTool) {
50022
50060
  if (data.rightMouseTool === 'Pan') {
50023
- panMask = [1, 2, 4];
50061
+ panMask.push(2);
50024
50062
  } else if (data.rightMouseTool === 'Wwwc') {
50025
- wwwcMask = [1, 2];
50063
+ wwwcMask.push(2);
50026
50064
  } else if (data.rightMouseTool === 'StackScroll') {
50027
- stackScrollMask = [1, 2];
50065
+ stackScrollMask.push(2);
50028
50066
  } else {
50029
- zoomMask = [1, 2];
50067
+ zoomMask.push(2);
50030
50068
  }
50031
50069
  } else {
50032
- zoomMask = [1, 2];
50070
+ zoomMask.push(2);
50071
+ }
50072
+
50073
+ if (data && data.middleMouseTool) {
50074
+ if (data.middleMouseTool === 'Zoom') {
50075
+ zoomMask.push(4);
50076
+ } else if (data.middleMouseTool === 'Wwwc') {
50077
+ wwwcMask.push(4);
50078
+ } else if (data.middleMouseTool === 'StackScroll') {
50079
+ stackScrollMask.push(4);
50080
+ } else {
50081
+ panMask.push(4);
50082
+ }
50083
+ } else {
50084
+ panMask.push(4);
50033
50085
  }
50034
50086
 
50035
50087
  return [{
@@ -51035,7 +51087,8 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
51035
51087
  direction = _this$props4.direction,
51036
51088
  CPR = _this$props4.CPR,
51037
51089
  onClickDomErrorReRenderButton = _this$props4.onClickDomErrorReRenderButton,
51038
- keyImages = _this$props4.keyImages;
51090
+ keyImages = _this$props4.keyImages,
51091
+ onDoubleClick = _this$props4.onDoubleClick;
51039
51092
  var active = activeIndex === index;
51040
51093
 
51041
51094
  var linked = lodash$1.includes(linkedIndexArr, index);
@@ -51062,6 +51115,7 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
51062
51115
  onDrop: this.onDrop,
51063
51116
  onDragOver: this.onDragOver,
51064
51117
  onClick: onClick,
51118
+ onDoubleClick: onDoubleClick,
51065
51119
  onTouchStart: onClick,
51066
51120
  onContextMenu: this.onContextMenu,
51067
51121
  className: mpr ? "cornerstone-canvas-container cornerstone-mpr-".concat(mpr) : 'cornerstone-canvas-container',
@@ -51126,7 +51180,7 @@ var DicomViewport = /*#__PURE__*/function (_Component) {
51126
51180
  className: "paladin-flex paladin-flex-row paladin-viewport-scroll-mpr-wrappper"
51127
51181
  }, /*#__PURE__*/React__default.createElement("div", {
51128
51182
  style: {
51129
- width: 'calc(100% - 90px)'
51183
+ width: 'calc(100% - 100px)'
51130
51184
  }
51131
51185
  }, /*#__PURE__*/React__default.createElement(CustomScroll, {
51132
51186
  step: imageCount,
@@ -54186,7 +54240,8 @@ var ThreeDLayout = /*#__PURE__*/function (_Component) {
54186
54240
  handleViewportState = _this$props.handleViewportState,
54187
54241
  getCacheViewport = _this$props.getCacheViewport,
54188
54242
  onSyncOpen = _this$props.onSyncOpen,
54189
- VR = _this$props.VR;
54243
+ VR = _this$props.VR,
54244
+ onViewPortCellDoubleClick = _this$props.onViewPortCellDoubleClick;
54190
54245
  var transverseIndex = mprPerspective === ImagePlanDirection.Transverse ? 0 : mprPerspective === ImagePlanDirection.Sagittal ? 2 : 1;
54191
54246
  var sagittalIndex = mprPerspective === ImagePlanDirection.Transverse ? 1 : mprPerspective === ImagePlanDirection.Sagittal ? 0 : 2;
54192
54247
  var coronalIndex = mprPerspective === ImagePlanDirection.Transverse ? 2 : mprPerspective === ImagePlanDirection.Sagittal ? 1 : 0; // 横断面
@@ -54201,6 +54256,9 @@ var ThreeDLayout = /*#__PURE__*/function (_Component) {
54201
54256
  onClick: function onClick() {
54202
54257
  onViewPortCellClick(transverseIndex);
54203
54258
  },
54259
+ onDoubleClick: function onDoubleClick() {
54260
+ onViewPortCellDoubleClick(ImagePlanDirection.Transverse);
54261
+ },
54204
54262
  setViewportState: handleViewportState,
54205
54263
  getCacheViewport: getCacheViewport,
54206
54264
  onSyncOpen: onSyncOpen,
@@ -54217,6 +54275,9 @@ var ThreeDLayout = /*#__PURE__*/function (_Component) {
54217
54275
  onClick: function onClick() {
54218
54276
  onViewPortCellClick(sagittalIndex);
54219
54277
  },
54278
+ onDoubleClick: function onDoubleClick() {
54279
+ onViewPortCellDoubleClick(ImagePlanDirection.Sagittal);
54280
+ },
54220
54281
  setViewportState: handleViewportState,
54221
54282
  getCacheViewport: getCacheViewport,
54222
54283
  onSyncOpen: onSyncOpen,
@@ -54233,6 +54294,9 @@ var ThreeDLayout = /*#__PURE__*/function (_Component) {
54233
54294
  onClick: function onClick() {
54234
54295
  onViewPortCellClick(coronalIndex);
54235
54296
  },
54297
+ onDoubleClick: function onDoubleClick() {
54298
+ onViewPortCellDoubleClick(ImagePlanDirection.Coronal);
54299
+ },
54236
54300
  setViewportState: handleViewportState,
54237
54301
  getCacheViewport: getCacheViewport,
54238
54302
  onSyncOpen: onSyncOpen,
@@ -54337,12 +54401,16 @@ var mergeProps$q = function mergeProps(propsFromState, propsFromDispatch, ownPro
54337
54401
  },
54338
54402
  onSyncOpen: function onSyncOpen(element) {
54339
54403
  propsFromState.mprSynchronizer.add(element);
54404
+ },
54405
+ onViewPortCellDoubleClick: function onViewPortCellDoubleClick(mpr) {
54406
+ propsFromDispatch.switchMprPerspective(false, mpr);
54340
54407
  }
54341
54408
  });
54342
54409
  };
54343
54410
 
54344
54411
  var ConnectedMPRLayout = reactRedux.connect(mapStateToProps$r, {
54345
- setMprActiveIndex: setMprActiveIndex
54412
+ setMprActiveIndex: setMprActiveIndex,
54413
+ switchMprPerspective: switchMprPerspective
54346
54414
  }, mergeProps$q)(ThreeDLayout);
54347
54415
 
54348
54416
  function _createForOfIteratorHelper$d(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$f(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
@@ -65602,7 +65670,7 @@ var FilmToolVerticalMode = /*#__PURE__*/function (_Component) {
65602
65670
  return FilmToolVerticalMode;
65603
65671
  }(React.Component);
65604
65672
 
65605
- var css_248z$H = ".paladin-film-print-modal table {\n width: 100%;\n border-collapse: collapse;\n border-spacing: 0;\n border: 1px solid #525253;\n border-bottom: none;\n}\n.paladin-film-print-modal table svg {\n width: 20px;\n}\n.paladin-film-print-modal table tr {\n height: 54px;\n margin-left: 30px;\n border-bottom: 1px solid #525253;\n}\n.paladin-film-print-modal table tr .th-1 {\n width: 3%;\n}\n.paladin-film-print-modal table tr .th-2 {\n width: 18%;\n}\n.paladin-film-print-modal table tr .th-3 {\n width: 13%;\n}\n.paladin-film-print-modal table tr .th-4 {\n width: 19%;\n}\n.paladin-film-print-modal table tr .th-5 {\n width: 15%;\n}\n.paladin-film-print-modal table tr .th-6 {\n width: 12%;\n}\n.paladin-film-print-modal table tr .th-7 {\n width: 16%;\n}\n.paladin-film-print-modal table tr th {\n background: #404041;\n}\n.paladin-film-print-modal table tr th,\n.paladin-film-print-modal table tr td {\n text-align: left;\n font-weight: normal;\n font-size: 14px;\n word-wrap: break-word;\n word-break: break-all;\n}\n.paladin-film-print-modal table tr th button,\n.paladin-film-print-modal table tr td button {\n border: none;\n background: transparent;\n color: #3C7EFF;\n}\n.paladin-film-print-modal .print-modal-top {\n margin-bottom: 24px;\n margin-top: 5px;\n}\n.paladin-film-print-modal .print-modal-top button {\n background: #3C7EFF;\n}\n.paladin-film-print-modal .printer-config-add-title {\n color: #3C7EFF;\n margin-left: 30px;\n}\n.paladin-film-print-modal .printer-config-form {\n margin-top: 20px;\n}\n.paladin-film-print-modal .printer-config-form .paladin-ipt {\n color: #ccc;\n border: 1px solid rgba(255, 255, 255, 0.2);\n}\n.paladin-film-print-modal .printer-config-form .paladin-row {\n margin-bottom: 18px;\n}\n.paladin-film-print-modal .printer-config-form .paladin-col {\n padding-right: 20px;\n}\n.paladin-film-print-modal .printer-config-form .paladin-col-xs-2 {\n justify-content: center;\n align-items: end;\n}\n.paladin-film-print-modal .printer-config-form .printer-config-form-radio .paladin-ipt {\n width: 20px;\n}\n.paladin-film-print-modal .film-box {\n display: flex;\n align-items: center;\n}\n.paladin-film-print-modal .film-box span {\n display: flex;\n flex: none;\n width: 100px;\n}\n.paladin-film-print-modal .film-box .film-select {\n cursor: pointer;\n width: 200px;\n height: 40px;\n display: flex;\n position: relative;\n align-items: center;\n justify-content: center;\n background: #1f1f1f;\n border: 1px solid rgba(255, 255, 255, 0.2);\n}\n.paladin-film-print-modal .film-box button {\n border: none;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n background: #1f1f1f;\n color: #c0c0c0;\n font-size: 15px;\n}\n.paladin-film-print-modal .film-box svg {\n width: 20px;\n position: absolute;\n right: 5px;\n top: 0;\n}\n.paladin-film-print-modal .film-printer-info {\n margin-left: 100px;\n color: #A4A4A4;\n}\n.paladin-film-print-modal .film-printer-info p {\n margin-top: 15px;\n}\n.paladin-film-print-modal .paladin-menu-custom {\n width: 200px;\n background: #000000;\n color: #c0c0c0;\n padding: 0;\n margin: 0;\n}\n.paladin-film-print-modal .paladin-menu-custom li {\n text-align: center;\n list-style: none;\n border-bottom: 1px solid #4D4D4D;\n padding: 6px 0;\n cursor: pointer;\n}\n.paladin-film-print-modal .paladin-menu-custom li:last-child {\n border-bottom: none;\n}\n.paladin-film-print-modal .film-button-select {\n height: 36px;\n}\n.paladin-film-print-modal .film-button-select .paladin-col {\n justify-content: center;\n}\n.paladin-film-print-modal .film-button-select-item {\n cursor: pointer;\n display: flex;\n flex: 1;\n align-items: center;\n justify-content: center;\n height: 36px;\n border: 1px solid #555555;\n border-right: none;\n}\n.paladin-film-print-modal .film-button-select-item:last-child {\n border-right: 1px solid #555555;\n}\n.paladin-film-print-modal .film-button-select-item-active {\n background: #3C7EFF;\n color: #fff;\n}\n.paladin-film-print-modal .print-modal-bottom {\n margin-top: 30px;\n text-align: right;\n}\n.paladin-film-print-modal .print-modal-bottom .paladin-default {\n background: #454545;\n border: 1px solid #707070;\n color: rgba(255, 255, 255, 0.9);\n}\n.paladin-film-print-modal .print-modal-bottom .paladin-primary {\n background: #3C7EFF;\n}\n";
65673
+ var css_248z$H = ".paladin-film-print-modal table {\n width: 100%;\n border-collapse: collapse;\n border-spacing: 0;\n border: 1px solid #525253;\n border-bottom: none;\n}\n.paladin-film-print-modal table svg {\n width: 20px;\n}\n.paladin-film-print-modal table tr {\n height: 54px;\n margin-left: 30px;\n border-bottom: 1px solid #525253;\n}\n.paladin-film-print-modal table tr .th-1 {\n width: 3%;\n}\n.paladin-film-print-modal table tr .th-2 {\n width: 18%;\n}\n.paladin-film-print-modal table tr .th-3 {\n width: 13%;\n}\n.paladin-film-print-modal table tr .th-4 {\n width: 19%;\n}\n.paladin-film-print-modal table tr .th-5 {\n width: 15%;\n}\n.paladin-film-print-modal table tr .th-6 {\n width: 12%;\n}\n.paladin-film-print-modal table tr .th-7 {\n width: 16%;\n}\n.paladin-film-print-modal table tr th {\n background: #404041;\n}\n.paladin-film-print-modal table tr th,\n.paladin-film-print-modal table tr td {\n text-align: left;\n font-weight: normal;\n font-size: 14px;\n word-wrap: break-word;\n word-break: break-all;\n}\n.paladin-film-print-modal table tr th button,\n.paladin-film-print-modal table tr td button {\n border: none;\n background: transparent;\n color: #3C7EFF;\n}\n.paladin-film-print-modal .print-modal-top {\n margin-bottom: 24px;\n margin-top: 5px;\n}\n.paladin-film-print-modal .print-modal-top button {\n background: #3C7EFF;\n}\n.paladin-film-print-modal .printer-config-add-title {\n color: #3C7EFF;\n margin-left: 30px;\n}\n.paladin-film-print-modal .printer-config-form {\n margin-top: 20px;\n}\n.paladin-film-print-modal .printer-config-form .paladin-ipt {\n color: #ccc;\n border: 1px solid rgba(255, 255, 255, 0.2);\n}\n.paladin-film-print-modal .printer-config-form .paladin-row {\n margin-bottom: 18px;\n}\n.paladin-film-print-modal .printer-config-form .paladin-col {\n padding-right: 20px;\n}\n.paladin-film-print-modal .printer-config-form .paladin-col-xs-2 {\n justify-content: center;\n align-items: end;\n}\n.paladin-film-print-modal .printer-config-form .printer-config-form-radio .paladin-ipt {\n width: 20px;\n}\n.paladin-film-print-modal .film-box {\n display: flex;\n align-items: center;\n}\n.paladin-film-print-modal .film-box span {\n display: flex;\n flex: none;\n width: 100px;\n}\n.paladin-film-print-modal .film-box .film-select {\n cursor: pointer;\n width: 200px;\n height: 40px;\n display: flex;\n position: relative;\n align-items: center;\n justify-content: center;\n background: #1f1f1f;\n border: 1px solid rgba(255, 255, 255, 0.2);\n}\n.paladin-film-print-modal .film-box button {\n border: none;\n box-sizing: border-box;\n width: 100%;\n height: 100%;\n background: #1f1f1f;\n color: #c0c0c0;\n font-size: 15px;\n}\n.paladin-film-print-modal .film-box svg {\n width: 20px;\n position: absolute;\n right: 5px;\n top: 0;\n}\n.paladin-film-print-modal .film-printer-info {\n margin-left: 100px;\n color: #A4A4A4;\n}\n.paladin-film-print-modal .film-printer-info p {\n margin-top: 15px;\n}\n.paladin-film-print-modal .paladin-menu-custom {\n width: 200px;\n background: #000000;\n color: #c0c0c0;\n padding: 0;\n margin: 0;\n}\n.paladin-film-print-modal .paladin-menu-custom li {\n text-align: center;\n list-style: none;\n border-bottom: 1px solid #4D4D4D;\n padding: 6px 0;\n cursor: pointer;\n}\n.paladin-film-print-modal .paladin-menu-custom li:last-child {\n border-bottom: none;\n}\n.paladin-film-print-modal .film-button-select {\n height: 36px;\n}\n.paladin-film-print-modal .film-button-select .paladin-col {\n justify-content: center;\n}\n.paladin-film-print-modal .film-button-select .paladin-ipt {\n color: #fff;\n border-color: #4D4D4D;\n}\n.paladin-film-print-modal .film-button-select-item {\n cursor: pointer;\n display: flex;\n flex: 1;\n align-items: center;\n justify-content: center;\n height: 36px;\n border: 1px solid #555555;\n border-right: none;\n}\n.paladin-film-print-modal .film-button-select-item:last-child {\n border-right: 1px solid #555555;\n}\n.paladin-film-print-modal .film-button-select-item-active {\n background: #3C7EFF;\n color: #fff;\n}\n.paladin-film-print-modal .print-modal-bottom {\n margin-top: 30px;\n text-align: right;\n}\n.paladin-film-print-modal .print-modal-bottom .paladin-default {\n background: #454545;\n border: 1px solid #707070;\n color: rgba(255, 255, 255, 0.9);\n}\n.paladin-film-print-modal .print-modal-bottom .paladin-primary {\n background: #3C7EFF;\n}\n";
65606
65674
  styleInject$1(css_248z$H);
65607
65675
 
65608
65676
  function _extends$1z() { _extends$1z = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$1z.apply(this, arguments); }
@@ -66220,7 +66288,7 @@ function calcImageFontSize(width, height) {
66220
66288
 
66221
66289
  var getFilmPrintImageData = /*#__PURE__*/function () {
66222
66290
  var _ref = asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(films, options) {
66223
- var sizeType, row, col, viewFilmItemWidth, filmSize, filmWidth, filmHeight, filmItemWidth, filmItemHeight, filmPrintOriginImageData, id, element, canvas, firstLoad, _iterator, _step, film, bitmap, mockDom, mergedCanvas, mergedCtx, i, item, x, y, imageData, pixelData;
66291
+ var sizeType, row, col, viewFilmItemWidth, filmSize, filmWidth, filmHeight, filmItemWidth, filmItemHeight, filmPrintOriginImageData, id, element, canvas, firstLoad, _iterator, _step, film, bitmap, _imageId, mockDom, mergedCanvas, mergedCtx, i, item, x, y, imageData, pixelData;
66224
66292
 
66225
66293
  return regenerator.wrap(function _callee$(_context) {
66226
66294
  while (1) {
@@ -66318,7 +66386,7 @@ var getFilmPrintImageData = /*#__PURE__*/function () {
66318
66386
 
66319
66387
  case 22:
66320
66388
  if ((_step = _iterator.n()).done) {
66321
- _context.next = 39;
66389
+ _context.next = 40;
66322
66390
  break;
66323
66391
  }
66324
66392
 
@@ -66326,62 +66394,62 @@ var getFilmPrintImageData = /*#__PURE__*/function () {
66326
66394
  bitmap = void 0;
66327
66395
 
66328
66396
  if (!(film && film.imageIds)) {
66329
- _context.next = 33;
66397
+ _context.next = 34;
66330
66398
  break;
66331
66399
  }
66332
66400
 
66401
+ _imageId = film.imageIds[0];
66333
66402
  currentImageLoad = {
66334
- wadouri: film.imageIds[0],
66403
+ wadouri: _imageId,
66335
66404
  resolve: null
66336
- }; // 影像数据
66337
-
66338
- _context.next = 29;
66339
- return getImage(film.imageIds[0], element, canvas, firstLoad);
66405
+ };
66406
+ _context.next = 30;
66407
+ return getImage(_imageId, element, canvas, firstLoad);
66340
66408
 
66341
- case 29:
66409
+ case 30:
66342
66410
  bitmap = _context.sent;
66343
66411
 
66344
66412
  if (firstLoad) {
66345
66413
  firstLoad = false;
66346
66414
  }
66347
66415
 
66348
- _context.next = 36;
66416
+ _context.next = 37;
66349
66417
  break;
66350
66418
 
66351
- case 33:
66352
- _context.next = 35;
66419
+ case 34:
66420
+ _context.next = 36;
66353
66421
  return getEmptyImageBitmap(filmItemWidth, filmItemHeight);
66354
66422
 
66355
- case 35:
66423
+ case 36:
66356
66424
  bitmap = _context.sent;
66357
66425
 
66358
- case 36:
66426
+ case 37:
66359
66427
  filmPrintOriginImageData.push(_objectSpread$Z(_objectSpread$Z({}, film), {}, {
66360
66428
  bitmap: bitmap
66361
66429
  }));
66362
66430
 
66363
- case 37:
66431
+ case 38:
66364
66432
  _context.next = 22;
66365
66433
  break;
66366
66434
 
66367
- case 39:
66368
- _context.next = 44;
66435
+ case 40:
66436
+ _context.next = 45;
66369
66437
  break;
66370
66438
 
66371
- case 41:
66372
- _context.prev = 41;
66439
+ case 42:
66440
+ _context.prev = 42;
66373
66441
  _context.t0 = _context["catch"](20);
66374
66442
 
66375
66443
  _iterator.e(_context.t0);
66376
66444
 
66377
- case 44:
66378
- _context.prev = 44;
66445
+ case 45:
66446
+ _context.prev = 45;
66379
66447
 
66380
66448
  _iterator.f();
66381
66449
 
66382
- return _context.finish(44);
66450
+ return _context.finish(45);
66383
66451
 
66384
- case 47:
66452
+ case 48:
66385
66453
  element.removeEventListener(cornerstone.EVENTS.IMAGE_RENDERED, onImageRendered);
66386
66454
  mockDom = document.getElementById(id);
66387
66455
 
@@ -66425,12 +66493,12 @@ var getFilmPrintImageData = /*#__PURE__*/function () {
66425
66493
  height: filmHeight
66426
66494
  });
66427
66495
 
66428
- case 69:
66496
+ case 70:
66429
66497
  case "end":
66430
66498
  return _context.stop();
66431
66499
  }
66432
66500
  }
66433
- }, _callee, null, [[20, 41, 44, 47]]);
66501
+ }, _callee, null, [[20, 42, 45, 48]]);
66434
66502
  }));
66435
66503
 
66436
66504
  return function getFilmPrintImageData(_x, _x2) {
@@ -66559,25 +66627,26 @@ var addDicomInfoOnCanvas = /*#__PURE__*/function () {
66559
66627
  ctx = canvas.getContext('2d');
66560
66628
  ctx.fillStyle = '#c0c0c0';
66561
66629
  ctx.strokeStyle = '#000';
66562
- ctx.font = dicomInfoFontSize + 'px Arial';
66563
- _context4.next = 7;
66630
+ _context4.next = 6;
66564
66631
  return loadAndCacheDicom(image.imageId);
66565
66632
 
66566
- case 7:
66633
+ case 6:
66567
66634
  dicom = _context4.sent;
66568
66635
 
66569
66636
  if (dicom) {
66570
- _context4.next = 10;
66637
+ _context4.next = 9;
66571
66638
  break;
66572
66639
  }
66573
66640
 
66574
66641
  return _context4.abrupt("return");
66575
66642
 
66576
- case 10:
66643
+ case 9:
66577
66644
  width = canvas.width;
66578
66645
  height = canvas.height;
66579
66646
  stackImageInfo = currentFilms[image.imageId] || {};
66647
+ ctx.setTransform(1, 0, 0, 1, 0, 0);
66580
66648
  ctx.textAlign = 'left';
66649
+ ctx.font = dicomInfoFontSize + 'px Arial';
66581
66650
  drawLeftTop(dicom, ctx);
66582
66651
  drawLeftBottom(dicom, ctx, height);
66583
66652
  ctx.textAlign = 'right';
@@ -66585,7 +66654,7 @@ var addDicomInfoOnCanvas = /*#__PURE__*/function () {
66585
66654
  drawRightBottom(dicom, ctx, width, height, viewport, image);
66586
66655
  ctx.textAlign = 'left';
66587
66656
 
66588
- case 20:
66657
+ case 21:
66589
66658
  case "end":
66590
66659
  return _context4.stop();
66591
66660
  }
@@ -66870,10 +66939,12 @@ var FilmPrintModal$1 = /*#__PURE__*/function (_Component) {
66870
66939
  currentPrinter = _this$state.currentPrinter,
66871
66940
  filmMedium = _this$state.filmMedium,
66872
66941
  filmSize = _this$state.filmSize,
66873
- filmPageType = _this$state.filmPageType;
66942
+ filmPageType = _this$state.filmPageType,
66943
+ maxDensity = _this$state.maxDensity,
66944
+ minDensity = _this$state.minDensity;
66874
66945
  var onFilmPrint = _this.props.onFilmPrint;
66875
66946
 
66876
- if (!onFilmPrint || !currentPrinter || !filmMedium || !filmSize) {
66947
+ if (!onFilmPrint || !currentPrinter || !filmMedium || !filmSize || !filmPageType || !maxDensity && maxDensity !== 0 || !minDensity && minDensity !== 0) {
66877
66948
  message.error('请选择打印配置');
66878
66949
  return;
66879
66950
  }
@@ -66881,7 +66952,9 @@ var FilmPrintModal$1 = /*#__PURE__*/function (_Component) {
66881
66952
  var printOptions = _objectSpread$_(_objectSpread$_({}, currentPrinter), {}, {
66882
66953
  filmMedium: filmMedium,
66883
66954
  filmSize: filmSize,
66884
- filmPageType: filmPageType
66955
+ filmPageType: filmPageType,
66956
+ maxDensity: maxDensity,
66957
+ minDensity: minDensity
66885
66958
  });
66886
66959
 
66887
66960
  if (filmPageType === 'ALL_PAGE') {
@@ -66933,7 +67006,9 @@ var FilmPrintModal$1 = /*#__PURE__*/function (_Component) {
66933
67006
  currentPrinter: _currentPrinter,
66934
67007
  filmSize: _this.props.filmSizeType || '1417',
66935
67008
  filmMedium: 'BLUE FILM',
66936
- filmPageType: 'CURRENT_PAGE'
67009
+ filmPageType: 'CURRENT_PAGE',
67010
+ maxDensity: 300,
67011
+ minDensity: 20
66937
67012
  };
66938
67013
  return _this;
66939
67014
  }
@@ -66950,7 +67025,9 @@ var FilmPrintModal$1 = /*#__PURE__*/function (_Component) {
66950
67025
  currentPrinter = _this$state2.currentPrinter,
66951
67026
  filmMedium = _this$state2.filmMedium,
66952
67027
  filmSize = _this$state2.filmSize,
66953
- filmPageType = _this$state2.filmPageType;
67028
+ filmPageType = _this$state2.filmPageType,
67029
+ maxDensity = _this$state2.maxDensity,
67030
+ minDensity = _this$state2.minDensity;
66954
67031
  var printerConfigList = this.props.printerConfigList;
66955
67032
 
66956
67033
  var MenuElement = function MenuElement(_props) {
@@ -67032,6 +67109,40 @@ var FilmPrintModal$1 = /*#__PURE__*/function (_Component) {
67032
67109
  _this2.handleSelectFilmPage(v);
67033
67110
  }
67034
67111
  }, v.label);
67112
+ })))), /*#__PURE__*/React__default.createElement(Row, {
67113
+ className: 'film-button-select',
67114
+ style: {
67115
+ marginTop: '20px'
67116
+ }
67117
+ }, /*#__PURE__*/React__default.createElement(Col, {
67118
+ sm: 4
67119
+ }, "\u6700\u5927\u611F\u5149\u5EA6"), /*#__PURE__*/React__default.createElement(Col, {
67120
+ sm: 8
67121
+ }, /*#__PURE__*/React__default.createElement(Row, null, /*#__PURE__*/React__default.createElement(Input$1, {
67122
+ type: "number",
67123
+ value: maxDensity,
67124
+ onChange: function onChange(e) {
67125
+ _this2.setState({
67126
+ maxDensity: e.target.value
67127
+ });
67128
+ }
67129
+ })))), /*#__PURE__*/React__default.createElement(Row, {
67130
+ className: 'film-button-select',
67131
+ style: {
67132
+ marginTop: '20px'
67133
+ }
67134
+ }, /*#__PURE__*/React__default.createElement(Col, {
67135
+ sm: 4
67136
+ }, "\u6700\u5C0F\u611F\u5149\u5EA6"), /*#__PURE__*/React__default.createElement(Col, {
67137
+ sm: 8
67138
+ }, /*#__PURE__*/React__default.createElement(Row, null, /*#__PURE__*/React__default.createElement(Input$1, {
67139
+ type: "number",
67140
+ value: minDensity,
67141
+ onChange: function onChange(e) {
67142
+ _this2.setState({
67143
+ minDensity: e.target.value
67144
+ });
67145
+ }
67035
67146
  })))))), /*#__PURE__*/React__default.createElement("div", {
67036
67147
  className: 'print-modal-bottom'
67037
67148
  }, /*#__PURE__*/React__default.createElement(Button, {
@@ -68299,9 +68410,11 @@ var DicomView = /*#__PURE__*/function (_Component) {
68299
68410
  } else {
68300
68411
  var leftMouseTool = window.localStorage.getItem('hellfire-left-mouse-tool');
68301
68412
  var rightMouseTool = window.localStorage.getItem('hellfire-right-mouse-tool');
68413
+ var middleMouseTool = window.localStorage.getItem('hellfire-middle-mouse-tool');
68302
68414
  saveCustomDicomSetting({
68303
68415
  leftMouseTool: leftMouseTool,
68304
- rightMouseTool: rightMouseTool
68416
+ rightMouseTool: rightMouseTool,
68417
+ middleMouseTool: middleMouseTool
68305
68418
  });
68306
68419
  }
68307
68420
  }