hellfire 0.31.5 → 0.31.7

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/index.js CHANGED
@@ -52258,6 +52258,15 @@ var mergeProps$q = function mergeProps(propsFromState, propsFromDispatch, ownPro
52258
52258
  if (imageActiveIndex + 1 > imageCounts) {
52259
52259
  propsFromDispatch.setImageActiveIndex(imageCounts - 1);
52260
52260
  }
52261
+ } else {
52262
+ // 序列模式下需要把新序列自动加入预加载池中,initImageLoadManual和手动模式导致这边需要做这个逻辑
52263
+ var loaded = propsFromState.loaded;
52264
+ var loadedCount = loaded && loaded[selectSeries.seriesInstanceUID];
52265
+ var totalCount = selectSeries && selectSeries.numberOfSeriesRelatedInstances;
52266
+
52267
+ if (!loadedCount || loadedCount <= totalCount) {
52268
+ addTaskPool([selectSeries]);
52269
+ }
52261
52270
  }
52262
52271
 
52263
52272
  propsFromDispatch.setCurrentSeries(selectSeries);
@@ -56699,12 +56708,13 @@ var DicomLayout = /*#__PURE__*/function (_Component) {
56699
56708
  col: col
56700
56709
  });
56701
56710
  }
56711
+ var stack = series[index];
56702
56712
  return /*#__PURE__*/React__default.createElement(ConnectedDicomViewport // key={`viewport-${row}-${col}-${currentScrollLine}-${index}`}
56703
56713
  , {
56704
- key: "viewport-".concat(index),
56714
+ key: "viewport-".concat(stack.seriesInstanceUID, "-").concat(index),
56705
56715
  scrollWidth: scrollWidth,
56706
56716
  scrollType: scrollType,
56707
- stack: series[index],
56717
+ stack: stack,
56708
56718
  linkedIndexArr: linkedIndexArr,
56709
56719
  width: "".concat(100 / col, "%"),
56710
56720
  activeIndex: activeIndex,
@@ -71111,20 +71121,6 @@ var getTRAndTE$1 = function getTRAndTE(repetitionTime, echoTime) {
71111
71121
  }
71112
71122
  };
71113
71123
 
71114
- var getADAndNEX$1 = function getADAndNEX(acquisitionDuration, numberOfAverages) {
71115
- var formatedAD = convertSecondsToMinAndSecond(acquisitionDuration);
71116
-
71117
- if (formatedAD && numberOfAverages) {
71118
- return "AD/NEX: ".concat(formatedAD, "/").concat(numberOfAverages);
71119
- } else if (formatedAD) {
71120
- return "AD: ".concat(formatedAD);
71121
- } else if (numberOfAverages) {
71122
- return "NEX: ".concat(numberOfAverages);
71123
- } else {
71124
- return '';
71125
- }
71126
- };
71127
-
71128
71124
  var formatDicomInfo$1 = function formatDicomInfo(label, value) {
71129
71125
  var isNumber = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
71130
71126
  var formated = value;
@@ -71389,8 +71385,8 @@ var getFilmPrintImageData = /*#__PURE__*/function () {
71389
71385
  mergedCanvas.style.width = filmWidth + 'px';
71390
71386
  mergedCanvas.style.height = filmHeight + 'px';
71391
71387
  mergedCanvas.style.position = 'fixed'; // mergedCanvas.style.left = '-1400px';
71392
- // mergedCanvas.style.top = '-1600px';
71393
- // mergedCanvas.style.transform = 'scale(0.4)';
71388
+ // mergedCanvas.style.top = '-2010px';
71389
+ // mergedCanvas.style.transform = 'scale(0.15)';
71394
71390
 
71395
71391
  mergedCanvas.style.left = 0;
71396
71392
  mergedCanvas.style.top = 0;
@@ -71606,8 +71602,6 @@ var addDicomInfoOnCanvas = /*#__PURE__*/function () {
71606
71602
 
71607
71603
  var drawLeftTop = function drawLeftTop(dicom, ctx) {
71608
71604
  var institutionName = dicom.InstitutionName.toString();
71609
- var manufacturer = dicom.Manufacturer.toString();
71610
- var manufacturerModelName = dicom.ManufacturerModelName.toString();
71611
71605
  var patientName = dicom.PatientName.toString();
71612
71606
  var patientSex = dicom.PatientSex.toString();
71613
71607
  var patientAge = dicom.PatientAge.toString();
@@ -71624,12 +71618,9 @@ var drawLeftTop = function drawLeftTop(dicom, ctx) {
71624
71618
  contentY += spacing;
71625
71619
  }
71626
71620
 
71627
- if (manufacturer || manufacturerModelName) {
71628
- ctx.fillText("".concat(manufacturer || '', " ").concat(manufacturerModelName || ''), contentX, contentY);
71629
- contentY += spacing;
71630
- }
71631
-
71632
- ctx.fillText("".concat(patientName || '', "/").concat(patientSex || '', "/").concat(patientAge || ''), contentX, contentY);
71621
+ ctx.fillText("".concat(patientName || ''), contentX, contentY);
71622
+ contentY += spacing;
71623
+ ctx.fillText("".concat(patientSex || '', "/").concat(patientAge || ''), contentX, contentY);
71633
71624
  contentY += spacing;
71634
71625
 
71635
71626
  if (patientID) {
@@ -71661,13 +71652,10 @@ var drawLeftTop = function drawLeftTop(dicom, ctx) {
71661
71652
  var drawLeftBottom = function drawLeftBottom(dicom, ctx, height) {
71662
71653
  var patientOrientation = dicom.PatientOrientation.toString();
71663
71654
  var protocolName = dicom.ProtocolName.toString();
71664
- var sequenceName = dicom.SequenceName.toString();
71665
71655
  var repetitionTime = dicom.RepetitionTime.toString();
71666
71656
  var echoTime = dicom.EchoTime.toString();
71667
71657
  var inversionTime = dicom.InversionTime.toString();
71668
71658
  var flipAngle = dicom.FlipAngle.toString();
71669
- var acquisitionDuration = dicom.AcquisitionDuration.toString();
71670
- var numberOfAverages = dicom.NumberOfAverages.toString();
71671
71659
  var sliceThickness = dicom.SliceThickness.value; // 层厚
71672
71660
 
71673
71661
  var spacingBetweenSlices = dicom.SpacingBetweenSlices.value; // 两层中心点的层间距
@@ -71698,13 +71686,6 @@ var drawLeftBottom = function drawLeftBottom(dicom, ctx, height) {
71698
71686
  contentY -= spacing;
71699
71687
  }
71700
71688
 
71701
- var adAndNex = getADAndNEX$1(acquisitionDuration, numberOfAverages);
71702
-
71703
- if (adAndNex) {
71704
- ctx.fillText(adAndNex, contentX, contentY);
71705
- contentY -= spacing;
71706
- }
71707
-
71708
71689
  var _flipAngle = formatDicomInfo$1('FA', flipAngle);
71709
71690
 
71710
71691
  if (_flipAngle) {
@@ -71726,16 +71707,6 @@ var drawLeftBottom = function drawLeftBottom(dicom, ctx, height) {
71726
71707
  contentY -= spacing;
71727
71708
  }
71728
71709
 
71729
- if (sequenceName) {
71730
- ctx.fillText(sequenceName, contentX, contentY);
71731
- contentY -= spacing;
71732
- }
71733
-
71734
- if (protocolName) {
71735
- ctx.fillText(protocolName, contentX, contentY);
71736
- contentY -= spacing;
71737
- }
71738
-
71739
71710
  if (patientOrientation) {
71740
71711
  ctx.fillText(patientOrientation, contentX, contentY);
71741
71712
  }
@@ -71747,8 +71718,7 @@ var drawRightTop = function drawRightTop(dicom, ctx, width, stack) {
71747
71718
  var instanceCount = stack.instanceCount || '';
71748
71719
  var instanceNumber = stack.instanceNumber.toString() || '';
71749
71720
  var seriesCount = stack.seriesCount || '';
71750
- var seriesNumber = stack.seriesNumber.toString() || ''; // const compression = getCompression(dicom)
71751
-
71721
+ var seriesNumber = stack.seriesNumber.toString() || '';
71752
71722
  var inPlanePhaseEncodingDirection = dicom.InPlanePhaseEncodingDirection.toString();
71753
71723
  var contentX = width - dicomInfoPaddingX;
71754
71724
  var contentY = dicomInfoPaddingY;
@@ -71764,10 +71734,7 @@ var drawRightTop = function drawRightTop(dicom, ctx, width, stack) {
71764
71734
  ctx.fillText("Se: ".concat(seriesNumber, "/").concat(seriesCount), contentX, contentY);
71765
71735
  contentY += spacing;
71766
71736
  ctx.fillText("Im: ".concat(instanceNumber, "/").concat(instanceCount), contentX, contentY);
71767
- contentY += spacing; // if (compression) {
71768
- // ctx.fillText(compression, contentX, contentY);
71769
- // contentY += spacing;
71770
- // }
71737
+ contentY += spacing;
71771
71738
 
71772
71739
  var _inPlanePhaseEncodingDirection = formatInPlanePhaseEncodingDirection$1(inPlanePhaseEncodingDirection);
71773
71740
 
@@ -72505,6 +72472,428 @@ styleInject$1(css_248z$M);
72505
72472
  function _createSuper$1T(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1T(); 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); }; }
72506
72473
 
72507
72474
  function _isNativeReflectConstruct$1T() { 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; } }
72475
+
72476
+ var getStudyDateTime$2 = function getStudyDateTime(dicom) {
72477
+ // 因为检查时间部分数据可能未传, 根据以下顺序进行获取
72478
+ var fetchTagList = ['Acquisition', 'Content', 'Series', 'Study'];
72479
+
72480
+ for (var _i = 0, _fetchTagList = fetchTagList; _i < _fetchTagList.length; _i++) {
72481
+ var tag = _fetchTagList[_i];
72482
+ var dateTime = combineDateAndTimeToMoment(dicom, tag);
72483
+
72484
+ if (dateTime) {
72485
+ return dateTime;
72486
+ }
72487
+ }
72488
+ };
72489
+
72490
+ var formatInPlanePhaseEncodingDirection$2 = function formatInPlanePhaseEncodingDirection(inPlanePhaseEncodingDirection) {
72491
+ switch (inPlanePhaseEncodingDirection) {
72492
+ case 'ROW':
72493
+ return '→';
72494
+
72495
+ case 'COL':
72496
+ return '↓';
72497
+
72498
+ default:
72499
+ return '';
72500
+ }
72501
+ };
72502
+
72503
+ var checkFloatFixed$1 = function checkFloatFixed(num) {
72504
+ var decimalPart = num.toString().split('.')[1];
72505
+
72506
+ if (decimalPart && decimalPart.length > 2) {
72507
+ return num.toFixed(2);
72508
+ } else {
72509
+ return num.toFixed(1);
72510
+ }
72511
+ };
72512
+
72513
+ var getActualSpacingBetweenSlices$2 = function getActualSpacingBetweenSlices(spacingBetweenSlices, sliceThickness) {
72514
+ if (spacingBetweenSlices && sliceThickness) {
72515
+ // 获取实际的层间距 减去上下层各 1/2的层厚
72516
+ var actualSpacingBetweenSlices = parseFloat(spacingBetweenSlices) - parseFloat(sliceThickness);
72517
+ return actualSpacingBetweenSlices && checkFloatFixed$1(actualSpacingBetweenSlices);
72518
+ } else {
72519
+ return '';
72520
+ }
72521
+ };
72522
+
72523
+ var formatThkText$1 = function formatThkText(sliceThickness, spacingBetweenSlices) {
72524
+ var actualSpacingBetweenSlices = getActualSpacingBetweenSlices$2(sliceThickness, spacingBetweenSlices);
72525
+ return actualSpacingBetweenSlices || sliceThickness ? "THK: ".concat(sliceThickness && checkFloatFixed$1(parseFloat(sliceThickness)), "/").concat(actualSpacingBetweenSlices) : '';
72526
+ };
72527
+
72528
+ var getFov$1 = function getFov(dicom, imageId) {
72529
+ var rows = dicom.Rows.value;
72530
+ var columns = dicom.Columns.value;
72531
+
72532
+ var _getPixelSpacing = getPixelSpacing$9(imageId),
72533
+ rowPixelSpacing = _getPixelSpacing.rowPixelSpacing,
72534
+ colPixelSpacing = _getPixelSpacing.colPixelSpacing;
72535
+
72536
+ if (rowPixelSpacing && colPixelSpacing) {
72537
+ var fovHeight = Math.round(rows[0] * rowPixelSpacing);
72538
+ var fovWidth = Math.round(columns[0] * colPixelSpacing);
72539
+ return "FOV: ".concat(fovHeight, "X").concat(fovWidth);
72540
+ }
72541
+
72542
+ return '';
72543
+ };
72544
+
72545
+ var getMat$2 = function getMat(acquisitionMatrix) {
72546
+ if (acquisitionMatrix && acquisitionMatrix.length === 4) {
72547
+ var acquisitionX = parseInt(Math.abs(acquisitionMatrix[3] - acquisitionMatrix[1]));
72548
+ var acquisitionY = parseInt(Math.abs(acquisitionMatrix[2] - acquisitionMatrix[0]));
72549
+
72550
+ if (acquisitionX && acquisitionY) {
72551
+ return "MAT: ".concat(acquisitionX, "X").concat(acquisitionY);
72552
+ }
72553
+ }
72554
+
72555
+ return '';
72556
+ };
72557
+
72558
+ var getTRAndTE$2 = function getTRAndTE(repetitionTime, echoTime) {
72559
+ if (repetitionTime && echoTime) {
72560
+ return "TR/TE: ".concat(formatNumberPrecision(repetitionTime, 1), "/").concat(formatNumberPrecision(echoTime, 1));
72561
+ } else if (repetitionTime) {
72562
+ return "TR: ".concat(formatNumberPrecision(repetitionTime, 1));
72563
+ } else if (echoTime) {
72564
+ return "TE: ".concat(formatNumberPrecision(repetitionTime, 1));
72565
+ } else {
72566
+ return '';
72567
+ }
72568
+ };
72569
+
72570
+ var formatDicomInfo$2 = function formatDicomInfo(label, value) {
72571
+ var isNumber = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
72572
+ var formated = value;
72573
+
72574
+ if (isNumber) {
72575
+ formated = formatNumberPrecision(value, 1);
72576
+ }
72577
+
72578
+ return formated ? "".concat(label, ": ").concat(formated) : '';
72579
+ };
72580
+
72581
+ var formatDRDXInfo$1 = function formatDRDXInfo(label, value) {
72582
+ var text = '';
72583
+
72584
+ if (!value) {
72585
+ return text;
72586
+ }
72587
+
72588
+ var _v = Number(value);
72589
+
72590
+ if (!_v) {
72591
+ return text;
72592
+ }
72593
+
72594
+ text = formatNumberPrecision(value, 1);
72595
+ return "".concat(label, ": ").concat(text);
72596
+ };
72597
+
72598
+ var ViewportOverlay$1 = /*#__PURE__*/function (_PureComponent) {
72599
+ inherits(ViewportOverlay, _PureComponent);
72600
+
72601
+ var _super = _createSuper$1T(ViewportOverlay);
72602
+
72603
+ function ViewportOverlay(props) {
72604
+ var _this;
72605
+
72606
+ classCallCheck(this, ViewportOverlay);
72607
+
72608
+ _this = _super.call(this, props);
72609
+
72610
+ defineProperty(assertThisInitialized(_this), "getPatientNameData", function () {
72611
+ var _this$state = _this.state,
72612
+ dicom = _this$state.dicom,
72613
+ basicInfoFrom = _this$state.basicInfoFrom;
72614
+ var _this$props = _this.props,
72615
+ basicInfoFromStudy = _this$props.basicInfoFromStudy,
72616
+ originDicomInfo = _this$props.originDicomInfo;
72617
+
72618
+ if (basicInfoFrom && basicInfoFrom === 'study' && basicInfoFromStudy && basicInfoFromStudy.name) {
72619
+ return basicInfoFromStudy.name;
72620
+ } else {
72621
+ if (originDicomInfo) {
72622
+ return originDicomInfo.PatientName.toString();
72623
+ }
72624
+
72625
+ return dicom.PatientName.toString();
72626
+ }
72627
+ });
72628
+
72629
+ defineProperty(assertThisInitialized(_this), "getPatientSexData", function () {
72630
+ var _this$state2 = _this.state,
72631
+ dicom = _this$state2.dicom,
72632
+ basicInfoFrom = _this$state2.basicInfoFrom;
72633
+ var _this$props2 = _this.props,
72634
+ basicInfoFromStudy = _this$props2.basicInfoFromStudy,
72635
+ originDicomInfo = _this$props2.originDicomInfo;
72636
+
72637
+ if (basicInfoFrom && basicInfoFrom === 'study' && basicInfoFromStudy && basicInfoFromStudy.patientSex) {
72638
+ return basicInfoFromStudy.patientSex;
72639
+ } else {
72640
+ if (originDicomInfo) {
72641
+ return originDicomInfo.PatientSex.toString();
72642
+ }
72643
+
72644
+ return dicom.PatientSex.toString();
72645
+ }
72646
+ });
72647
+
72648
+ defineProperty(assertThisInitialized(_this), "getPatientAgeData", function () {
72649
+ var _this$state3 = _this.state,
72650
+ dicom = _this$state3.dicom,
72651
+ basicInfoFrom = _this$state3.basicInfoFrom;
72652
+ var _this$props3 = _this.props,
72653
+ basicInfoFromStudy = _this$props3.basicInfoFromStudy,
72654
+ originDicomInfo = _this$props3.originDicomInfo;
72655
+
72656
+ if (basicInfoFrom && basicInfoFrom === 'study' && basicInfoFromStudy && basicInfoFromStudy.patientAge) {
72657
+ return basicInfoFromStudy.patientAge;
72658
+ } else {
72659
+ if (originDicomInfo) {
72660
+ return originDicomInfo.PatientAge.toString();
72661
+ }
72662
+
72663
+ return dicom.PatientAge.toString();
72664
+ }
72665
+ });
72666
+
72667
+ defineProperty(assertThisInitialized(_this), "getPatientIDData", function () {
72668
+ var _this$state4 = _this.state,
72669
+ dicom = _this$state4.dicom,
72670
+ basicInfoFrom = _this$state4.basicInfoFrom;
72671
+ var _this$props4 = _this.props,
72672
+ basicInfoFromStudy = _this$props4.basicInfoFromStudy,
72673
+ originDicomInfo = _this$props4.originDicomInfo;
72674
+
72675
+ if (basicInfoFrom && basicInfoFrom === 'study' && basicInfoFromStudy && basicInfoFromStudy.patientID) {
72676
+ return basicInfoFromStudy.patientID;
72677
+ } else {
72678
+ if (originDicomInfo) {
72679
+ return originDicomInfo.PatientID.toString();
72680
+ }
72681
+
72682
+ return dicom.PatientID.toString();
72683
+ }
72684
+ });
72685
+
72686
+ var _basicInfoFrom = window.localStorage.getItem('hellfire-dicom-basic-info-from') || 'dicom';
72687
+
72688
+ _this.state = {
72689
+ dicom: null,
72690
+ fontSize: props.fontSize || 12,
72691
+ basicInfoFrom: _basicInfoFrom
72692
+ };
72693
+ return _this;
72694
+ }
72695
+
72696
+ createClass(ViewportOverlay, [{
72697
+ key: "componentDidMount",
72698
+ value: function componentDidMount() {
72699
+ // hack:cpr生成的图像初始的时候没有内容
72700
+ if (this.props.cpr && !this.props.stack.ready) {
72701
+ return;
72702
+ }
72703
+
72704
+ this.loadDicom(this.props.imageId);
72705
+ }
72706
+ }, {
72707
+ key: "componentDidUpdate",
72708
+ value: function componentDidUpdate(prevProps, prevState, snapshot) {
72709
+ if (prevProps.fontSize !== this.props.fontSize) {
72710
+ this.setState({
72711
+ fontSize: this.props.fontSize
72712
+ });
72713
+ }
72714
+ }
72715
+ }, {
72716
+ key: "componentWillReceiveProps",
72717
+ value: function () {
72718
+ var _componentWillReceiveProps = asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee(nextProps, nextContext) {
72719
+ return regenerator.wrap(function _callee$(_context) {
72720
+ while (1) {
72721
+ switch (_context.prev = _context.next) {
72722
+ case 0:
72723
+ this.loadDicom(nextProps.imageId);
72724
+
72725
+ case 1:
72726
+ case "end":
72727
+ return _context.stop();
72728
+ }
72729
+ }
72730
+ }, _callee, this);
72731
+ }));
72732
+
72733
+ function componentWillReceiveProps(_x, _x2) {
72734
+ return _componentWillReceiveProps.apply(this, arguments);
72735
+ }
72736
+
72737
+ return componentWillReceiveProps;
72738
+ }()
72739
+ }, {
72740
+ key: "loadDicom",
72741
+ value: function () {
72742
+ var _loadDicom = asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee2(imageId) {
72743
+ var _dicom;
72744
+
72745
+ return regenerator.wrap(function _callee2$(_context2) {
72746
+ while (1) {
72747
+ switch (_context2.prev = _context2.next) {
72748
+ case 0:
72749
+ _context2.next = 2;
72750
+ return loadAndCacheDicom(imageId);
72751
+
72752
+ case 2:
72753
+ _dicom = _context2.sent;
72754
+
72755
+ if (_dicom) {
72756
+ this.setState({
72757
+ dicom: _dicom
72758
+ });
72759
+ }
72760
+
72761
+ case 4:
72762
+ case "end":
72763
+ return _context2.stop();
72764
+ }
72765
+ }
72766
+ }, _callee2, this);
72767
+ }));
72768
+
72769
+ function loadDicom(_x3) {
72770
+ return _loadDicom.apply(this, arguments);
72771
+ }
72772
+
72773
+ return loadDicom;
72774
+ }() // originDicomInfo是mpr模式下的
72775
+
72776
+ }, {
72777
+ key: "render",
72778
+ value: function render() {
72779
+ var _this$props5 = this.props,
72780
+ imageId = _this$props5.imageId,
72781
+ stack = _this$props5.stack,
72782
+ viewport = _this$props5.viewport,
72783
+ hide = _this$props5.hide;
72784
+
72785
+ if (!imageId || !stack) {
72786
+ return null;
72787
+ }
72788
+
72789
+ var _this$state5 = this.state,
72790
+ dicom = _this$state5.dicom,
72791
+ fontSize = _this$state5.fontSize;
72792
+
72793
+ if (!dicom) {
72794
+ return null;
72795
+ } // 获取四角信息
72796
+ // 左上
72797
+
72798
+
72799
+ var institutionName = dicom.InstitutionName.toString();
72800
+ var patientName = this.getPatientNameData();
72801
+ var patientSex = this.getPatientSexData();
72802
+ var patientAge = this.getPatientAgeData();
72803
+ var patientID = this.getPatientIDData();
72804
+ var bodyPartExamined = dicom.BodyPartExamined.toString();
72805
+ var laterality = dicom.Laterality.toString() || dicom.ImageLaterality.toString() || '';
72806
+ var viewPosition = dicom.ViewPosition.toString() || ''; //左下
72807
+
72808
+ var patientOrientation = dicom.PatientOrientation.toString();
72809
+ var protocolName = dicom.ProtocolName.toString();
72810
+ var repetitionTime = dicom.RepetitionTime.toString();
72811
+ var echoTime = dicom.EchoTime.toString();
72812
+ var inversionTime = dicom.InversionTime.toString();
72813
+ var flipAngle = dicom.FlipAngle.toString();
72814
+ var sliceThickness = dicom.SliceThickness.value; // 层厚
72815
+
72816
+ var spacingBetweenSlices = dicom.SpacingBetweenSlices.value; // 两层中心点的层间距
72817
+
72818
+ var diffusionBValue = dicom.DiffusionBValue.toString();
72819
+ var seriesDescription = dicom.SeriesDescription.toString();
72820
+ var thk = formatThkText$1(sliceThickness, spacingBetweenSlices); // DX DR CR专属属性
72821
+
72822
+ var modality = dicom.Modality.toString();
72823
+ var showDXDRCR = modality === 'DX' || modality === 'DR' || modality === 'CR';
72824
+ var kvp = dicom.KVP.toString();
72825
+ var exposureTime = dicom.ExposureTime.toString();
72826
+ var xRayTubeCurrent = dicom.XRayTubeCurrent.toString();
72827
+ var exposure = dicom.Exposure.toString(); // 右上
72828
+
72829
+ var studyDateTime = getStudyDateTime$2(dicom);
72830
+ var seriesNumber = dicom.SeriesNumber.toString();
72831
+ var instanceCount = stack.instanceCount || stack.imageIds.length; // 图像模式的数据才有stack.instanceCount
72832
+ // 当前层数 多帧dicom的情况下取currentImageIdIndex
72833
+
72834
+ var instanceNumber = stack && stack.isMultiFrame ? stack.currentImageIdIndex + 1 : dicom.InstanceNumber.toString();
72835
+ var seriesCount = stack.seriesCount ? stack.seriesCount : '';
72836
+ var inPlanePhaseEncodingDirection = dicom.InPlanePhaseEncodingDirection.toString(); // 右下
72837
+ // 从viewport里面动态获取
72838
+
72839
+ var zoom = viewport.scale.toFixed(2);
72840
+ var windowWidth = parseFloat(viewport.voi.windowWidth) || 0;
72841
+ var windowCenter = parseFloat(viewport.voi.windowCenter) || 0;
72842
+ var acquisitionMatrix = dicom.AcquisitionMatrix.value;
72843
+ var sliceLocation = dicom.SliceLocation.value && parseFloat(dicom.SliceLocation.value).toFixed(2);
72844
+ return /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("div", {
72845
+ style: {
72846
+ position: 'absolute',
72847
+ top: 4,
72848
+ left: 4,
72849
+ textAlign: 'left',
72850
+ fontSize: "".concat(fontSize, "px"),
72851
+ display: "".concat(hide ? 'none' : 'block')
72852
+ }
72853
+ }, /*#__PURE__*/React__default.createElement("div", null, institutionName), /*#__PURE__*/React__default.createElement("div", null, patientName), /*#__PURE__*/React__default.createElement("div", null, patientSex, "/", patientAge), /*#__PURE__*/React__default.createElement("div", null, patientID), /*#__PURE__*/React__default.createElement("div", null, bodyPartExamined), /*#__PURE__*/React__default.createElement("div", null, laterality, " ", viewPosition)), /*#__PURE__*/React__default.createElement("div", {
72854
+ style: {
72855
+ position: 'absolute',
72856
+ bottom: 4,
72857
+ left: 4,
72858
+ textAlign: 'left',
72859
+ fontSize: "".concat(fontSize, "px"),
72860
+ display: "".concat(hide ? 'none' : 'block')
72861
+ }
72862
+ }, showDXDRCR && /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo$1('kV', kvp)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo$1('mA', xRayTubeCurrent)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo$1('Time', exposureTime)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo$1('mAs', exposure))), /*#__PURE__*/React__default.createElement("div", null, patientOrientation), /*#__PURE__*/React__default.createElement("div", null, getTRAndTE$2(repetitionTime, echoTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$2('TI', inversionTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$2('FA', flipAngle)), /*#__PURE__*/React__default.createElement("div", null, thk), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$2('B', diffusionBValue, false)), seriesDescription && seriesDescription !== protocolName && /*#__PURE__*/React__default.createElement("div", null, seriesDescription)), /*#__PURE__*/React__default.createElement("div", {
72863
+ style: {
72864
+ position: 'absolute',
72865
+ top: 4,
72866
+ right: 4,
72867
+ textAlign: 'right',
72868
+ fontSize: "".concat(fontSize, "px"),
72869
+ display: "".concat(hide ? 'none' : 'block')
72870
+ }
72871
+ }, /*#__PURE__*/React__default.createElement("div", null, studyDateTime && studyDateTime.format('YYYY-MM-DD HH:mm:ss')), /*#__PURE__*/React__default.createElement("div", null, "Se: ", seriesNumber, "/", seriesCount), /*#__PURE__*/React__default.createElement("div", null, "Im: ", instanceNumber, "/", instanceCount), /*#__PURE__*/React__default.createElement("div", null, formatInPlanePhaseEncodingDirection$2(inPlanePhaseEncodingDirection))), /*#__PURE__*/React__default.createElement("div", {
72872
+ style: {
72873
+ position: 'absolute',
72874
+ bottom: 4,
72875
+ right: 4,
72876
+ textAlign: 'right',
72877
+ fontSize: "".concat(fontSize, "px"),
72878
+ display: "".concat(hide ? 'none' : 'block')
72879
+ }
72880
+ }, /*#__PURE__*/React__default.createElement("div", null, "W: ", windowWidth.toFixed(0)), /*#__PURE__*/React__default.createElement("div", null, "C: ", windowCenter.toFixed(0)), /*#__PURE__*/React__default.createElement("div", null, zoom, "X"), /*#__PURE__*/React__default.createElement("div", null, getFov$1(dicom, imageId)), /*#__PURE__*/React__default.createElement("div", null, getMat$2(acquisitionMatrix)), (sliceLocation || sliceLocation === 0) && /*#__PURE__*/React__default.createElement("div", null, "Location: ", sliceLocation)));
72881
+ }
72882
+ }]);
72883
+
72884
+ return ViewportOverlay;
72885
+ }(React.PureComponent);
72886
+
72887
+ defineProperty(ViewportOverlay$1, "propTypes", {
72888
+ viewport: PropTypes$1.object.isRequired,
72889
+ imageId: PropTypes$1.string.isRequired,
72890
+ stack: PropTypes$1.object.isRequired,
72891
+ hide: PropTypes$1.bool
72892
+ });
72893
+
72894
+ 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); }; }
72895
+
72896
+ function _isNativeReflectConstruct$1U() { 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; } }
72508
72897
  var loadIndicatorDelay$2 = 300;
72509
72898
 
72510
72899
  function capitalizeFirstLetter$1(string) {
@@ -72536,7 +72925,7 @@ function initializeTools$1(cornerstoneTools, tools, element) {
72536
72925
  var FilmViewport = /*#__PURE__*/function (_Component) {
72537
72926
  inherits(FilmViewport, _Component);
72538
72927
 
72539
- var _super = _createSuper$1T(FilmViewport);
72928
+ var _super = _createSuper$1U(FilmViewport);
72540
72929
 
72541
72930
  function FilmViewport(props) {
72542
72931
  var _this;
@@ -72852,7 +73241,7 @@ var FilmViewport = /*#__PURE__*/function (_Component) {
72852
73241
  position: 'absolute',
72853
73242
  color: 'transparent'
72854
73243
  }
72855
- }, "1"), /*#__PURE__*/React__default.createElement(ViewportOverlay, {
73244
+ }, "1"), /*#__PURE__*/React__default.createElement(ViewportOverlay$1, {
72856
73245
  viewport: viewport,
72857
73246
  imageId: imageId,
72858
73247
  stack: stack,
@@ -72908,14 +73297,14 @@ var ConnectedFilmViewport = reactRedux.connect(mapStateToProps$C, {
72908
73297
  setSeriesCurrentIndex: setSeriesCurrentIndex
72909
73298
  })(FilmViewport);
72910
73299
 
72911
- 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); }; }
73300
+ function _createSuper$1V(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1V(); 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); }; }
72912
73301
 
72913
- function _isNativeReflectConstruct$1U() { 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; } }
73302
+ function _isNativeReflectConstruct$1V() { 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; } }
72914
73303
 
72915
73304
  var FilmView = /*#__PURE__*/function (_Component) {
72916
73305
  inherits(FilmView, _Component);
72917
73306
 
72918
- var _super = _createSuper$1U(FilmView);
73307
+ var _super = _createSuper$1V(FilmView);
72919
73308
 
72920
73309
  function FilmView(props) {
72921
73310
  var _this;
@@ -73531,11 +73920,11 @@ function getCustomAvailableTools$1(data) {
73531
73920
  }];
73532
73921
  }
73533
73922
 
73534
- function _createSuper$1V(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1V(); 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); }; }
73923
+ function _createSuper$1W(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1W(); 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); }; }
73535
73924
 
73536
- function _isNativeReflectConstruct$1V() { 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; } }
73925
+ function _isNativeReflectConstruct$1W() { 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; } }
73537
73926
 
73538
- var getStudyDateTime$2 = function getStudyDateTime(dicom) {
73927
+ var getStudyDateTime$3 = function getStudyDateTime(dicom) {
73539
73928
  // 因为检查时间部分数据可能未传, 根据以下顺序进行获取
73540
73929
  var fetchTagList = ['Content', 'Acquisition', 'Series', 'Study'];
73541
73930
 
@@ -73549,7 +73938,7 @@ var getStudyDateTime$2 = function getStudyDateTime(dicom) {
73549
73938
  }
73550
73939
  };
73551
73940
 
73552
- var formatInPlanePhaseEncodingDirection$2 = function formatInPlanePhaseEncodingDirection(inPlanePhaseEncodingDirection) {
73941
+ var formatInPlanePhaseEncodingDirection$3 = function formatInPlanePhaseEncodingDirection(inPlanePhaseEncodingDirection) {
73553
73942
  switch (inPlanePhaseEncodingDirection) {
73554
73943
  case 'ROW':
73555
73944
  return '→';
@@ -73562,7 +73951,7 @@ var formatInPlanePhaseEncodingDirection$2 = function formatInPlanePhaseEncodingD
73562
73951
  }
73563
73952
  };
73564
73953
 
73565
- var getActualSpacingBetweenSlices$2 = function getActualSpacingBetweenSlices(spacingBetweenSlices, sliceThickness) {
73954
+ var getActualSpacingBetweenSlices$3 = function getActualSpacingBetweenSlices(spacingBetweenSlices, sliceThickness) {
73566
73955
  if (spacingBetweenSlices && sliceThickness) {
73567
73956
  // 获取实际的层间距 减去上下层各 1/2的层厚
73568
73957
  var actualSpacingBetweenSlices = parseFloat(spacingBetweenSlices) - parseFloat(sliceThickness);
@@ -73572,7 +73961,7 @@ var getActualSpacingBetweenSlices$2 = function getActualSpacingBetweenSlices(spa
73572
73961
  }
73573
73962
  };
73574
73963
 
73575
- var getTRAndTE$2 = function getTRAndTE(repetitionTime, echoTime) {
73964
+ var getTRAndTE$3 = function getTRAndTE(repetitionTime, echoTime) {
73576
73965
  if (repetitionTime && echoTime) {
73577
73966
  return "TR/TE: ".concat(formatNumberPrecision(repetitionTime, 1), "/").concat(formatNumberPrecision(echoTime, 1));
73578
73967
  } else if (repetitionTime) {
@@ -73584,7 +73973,7 @@ var getTRAndTE$2 = function getTRAndTE(repetitionTime, echoTime) {
73584
73973
  }
73585
73974
  };
73586
73975
 
73587
- var getADAndNEX$2 = function getADAndNEX(acquisitionDuration, numberOfAverages) {
73976
+ var getADAndNEX$1 = function getADAndNEX(acquisitionDuration, numberOfAverages) {
73588
73977
  var formatedAD = convertSecondsToMinAndSecond(acquisitionDuration);
73589
73978
 
73590
73979
  if (formatedAD && numberOfAverages) {
@@ -73598,7 +73987,7 @@ var getADAndNEX$2 = function getADAndNEX(acquisitionDuration, numberOfAverages)
73598
73987
  }
73599
73988
  };
73600
73989
 
73601
- var formatDicomInfo$2 = function formatDicomInfo(label, value) {
73990
+ var formatDicomInfo$3 = function formatDicomInfo(label, value) {
73602
73991
  var isNumber = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
73603
73992
  var formated = value;
73604
73993
 
@@ -73609,10 +73998,10 @@ var formatDicomInfo$2 = function formatDicomInfo(label, value) {
73609
73998
  return formated ? "".concat(label, ": ").concat(formated) : '';
73610
73999
  };
73611
74000
 
73612
- var ViewportOverlay$1 = /*#__PURE__*/function (_PureComponent) {
74001
+ var ViewportOverlay$2 = /*#__PURE__*/function (_PureComponent) {
73613
74002
  inherits(ViewportOverlay, _PureComponent);
73614
74003
 
73615
- var _super = _createSuper$1V(ViewportOverlay);
74004
+ var _super = _createSuper$1W(ViewportOverlay);
73616
74005
 
73617
74006
  function ViewportOverlay(props) {
73618
74007
  var _this;
@@ -73839,12 +74228,12 @@ var ViewportOverlay$1 = /*#__PURE__*/function (_PureComponent) {
73839
74228
 
73840
74229
  var diffusionBValue = dicom.DiffusionBValue.toString();
73841
74230
  var seriesDescription = dicom.SeriesDescription.toString();
73842
- var actualSpacingBetweenSlices = getActualSpacingBetweenSlices$2(sliceThickness, spacingBetweenSlices);
74231
+ var actualSpacingBetweenSlices = getActualSpacingBetweenSlices$3(sliceThickness, spacingBetweenSlices);
73843
74232
  var thk = actualSpacingBetweenSlices || sliceThickness ? "THK: ".concat(sliceThickness && parseFloat(sliceThickness).toFixed(1), "/").concat(actualSpacingBetweenSlices) : ''; // 当长度大于20时,不显示
73844
74233
 
73845
74234
  var imageComments = dicom.ImageComments.toString(); // 右上
73846
74235
 
73847
- var studyDateTime = getStudyDateTime$2(dicom);
74236
+ var studyDateTime = getStudyDateTime$3(dicom);
73848
74237
  var seriesNumber = dicom.SeriesNumber.toString();
73849
74238
  var instanceCount = stack.instanceCount || stack.imageIds.length; // 图像模式的数据才有stack.instanceCount
73850
74239
  // 当前层数 多帧dicom的情况下取currentImageIdIndex
@@ -73870,7 +74259,7 @@ var ViewportOverlay$1 = /*#__PURE__*/function (_PureComponent) {
73870
74259
  fontSize: "".concat(fontSize, "px"),
73871
74260
  display: "".concat(hide ? 'none' : 'block')
73872
74261
  }
73873
- }, /*#__PURE__*/React__default.createElement("div", null, patientOrientation), /*#__PURE__*/React__default.createElement("div", null, protocolName), /*#__PURE__*/React__default.createElement("div", null, sequenceName), /*#__PURE__*/React__default.createElement("div", null, getTRAndTE$2(repetitionTime, echoTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$2('TI', inversionTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$2('FA', flipAngle)), /*#__PURE__*/React__default.createElement("div", null, getADAndNEX$2(acquisitionDuration, numberOfAverages)), /*#__PURE__*/React__default.createElement("div", null, thk), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$2('B', diffusionBValue, false)), seriesDescription && seriesDescription !== protocolName && /*#__PURE__*/React__default.createElement("div", null, seriesDescription), imageComments && imageComments.length < 20 && /*#__PURE__*/React__default.createElement("div", null, imageComments)), /*#__PURE__*/React__default.createElement("div", {
74262
+ }, /*#__PURE__*/React__default.createElement("div", null, patientOrientation), /*#__PURE__*/React__default.createElement("div", null, protocolName), /*#__PURE__*/React__default.createElement("div", null, sequenceName), /*#__PURE__*/React__default.createElement("div", null, getTRAndTE$3(repetitionTime, echoTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$3('TI', inversionTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$3('FA', flipAngle)), /*#__PURE__*/React__default.createElement("div", null, getADAndNEX$1(acquisitionDuration, numberOfAverages)), /*#__PURE__*/React__default.createElement("div", null, thk), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo$3('B', diffusionBValue, false)), seriesDescription && seriesDescription !== protocolName && /*#__PURE__*/React__default.createElement("div", null, seriesDescription), imageComments && imageComments.length < 20 && /*#__PURE__*/React__default.createElement("div", null, imageComments)), /*#__PURE__*/React__default.createElement("div", {
73874
74263
  style: {
73875
74264
  position: 'absolute',
73876
74265
  top: 4,
@@ -73879,7 +74268,7 @@ var ViewportOverlay$1 = /*#__PURE__*/function (_PureComponent) {
73879
74268
  fontSize: "".concat(fontSize, "px"),
73880
74269
  display: "".concat(hide ? 'none' : 'block')
73881
74270
  }
73882
- }, /*#__PURE__*/React__default.createElement("div", null, studyDateTime && studyDateTime.format('YYYY-MM-DD HH:mm:ss')), /*#__PURE__*/React__default.createElement("div", null, "Se: ", seriesNumber, "/", seriesCount), /*#__PURE__*/React__default.createElement("div", null, "Im: ", instanceNumber, "/", instanceCount), /*#__PURE__*/React__default.createElement("div", null, formatInPlanePhaseEncodingDirection$2(inPlanePhaseEncodingDirection))), /*#__PURE__*/React__default.createElement("div", {
74271
+ }, /*#__PURE__*/React__default.createElement("div", null, studyDateTime && studyDateTime.format('YYYY-MM-DD HH:mm:ss')), /*#__PURE__*/React__default.createElement("div", null, "Se: ", seriesNumber, "/", seriesCount), /*#__PURE__*/React__default.createElement("div", null, "Im: ", instanceNumber, "/", instanceCount), /*#__PURE__*/React__default.createElement("div", null, formatInPlanePhaseEncodingDirection$3(inPlanePhaseEncodingDirection))), /*#__PURE__*/React__default.createElement("div", {
73883
74272
  style: {
73884
74273
  position: 'absolute',
73885
74274
  bottom: 4,
@@ -73895,7 +74284,7 @@ var ViewportOverlay$1 = /*#__PURE__*/function (_PureComponent) {
73895
74284
  return ViewportOverlay;
73896
74285
  }(React.PureComponent);
73897
74286
 
73898
- defineProperty(ViewportOverlay$1, "propTypes", {
74287
+ defineProperty(ViewportOverlay$2, "propTypes", {
73899
74288
  viewport: PropTypes$1.object.isRequired,
73900
74289
  imageId: PropTypes$1.string.isRequired,
73901
74290
  stack: PropTypes$1.object.isRequired,
@@ -73905,9 +74294,9 @@ defineProperty(ViewportOverlay$1, "propTypes", {
73905
74294
  var css_248z$O = ".paladin-mpr-direaction-tip {\n position: absolute;\n top: 10px;\n left: 10px;\n z-index: 2;\n width: 10px;\n height: 10px;\n}\n.paladin-mpr-direaction-toggle-box {\n position: absolute;\n top: 10px;\n left: 10px;\n z-index: 2;\n cursor: pointer;\n}\n.paladin-mpr-direaction-toggle-box span {\n display: inline-block;\n padding: 3px;\n font-size: 12px;\n}\n.paladin-mpr-direaction-toggle-box .paladin-mpr-direaction-toggle {\n border: 1px solid #999;\n background: #000;\n}\n.paladin-mpr-direaction-toggle-box .paladin-mpr-direaction-toggle:last-child {\n border-left: none;\n}\n.paladin-mpr-direaction-toggle-box .paladin-mpr-direaction-toggle-active {\n background: #0d5075;\n}\n.rc-slider {\n background-color: transparent !important;\n}\n.paladin-viewport-wrapper {\n overflow: hidden;\n color: white;\n height: 100%;\n position: relative;\n}\n.cornerstone-canvas-container {\n box-sizing: border-box;\n width: 100%;\n position: relative;\n}\n.paladin-viewport-scroll-wrappper {\n width: 100%;\n left: 0;\n right: 0;\n bottom: 0;\n position: absolute;\n z-index: 1;\n height: 30px;\n}\n.paladin-viewport-scroll-inner {\n width: 40%;\n margin: 5px auto auto;\n}\n.paladin-viewport-scroll-mpr-wrappper {\n width: 100%;\n position: relative;\n z-index: 1;\n}\n.paladin-key-image-tip {\n position: absolute;\n top: 9px;\n left: 50%;\n font-size: 12px;\n transform: translateX(20px);\n}\n.paladin-key-image-tip svg {\n display: inline-block;\n width: 12px !important;\n height: 12px !important;\n margin-right: 3px;\n}\n";
73906
74295
  styleInject$1(css_248z$O);
73907
74296
 
73908
- function _createSuper$1W(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1W(); 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); }; }
74297
+ function _createSuper$1X(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1X(); 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); }; }
73909
74298
 
73910
- function _isNativeReflectConstruct$1W() { 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; } }
74299
+ function _isNativeReflectConstruct$1X() { 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; } }
73911
74300
  var calculateSUV$3 = cornerstoneTools.importInternal('util/calculateSUV');
73912
74301
  var EVENT_RESIZE$1 = 'resize';
73913
74302
  var loadIndicatorDelay$3 = 300;
@@ -73942,7 +74331,7 @@ function initializeTools$2(cornerstoneTools, tools, element) {
73942
74331
  var FusionViewport = /*#__PURE__*/function (_Component) {
73943
74332
  inherits(FusionViewport, _Component);
73944
74333
 
73945
- var _super = _createSuper$1W(FusionViewport);
74334
+ var _super = _createSuper$1X(FusionViewport);
73946
74335
 
73947
74336
  function FusionViewport(props) {
73948
74337
  var _this;
@@ -74443,7 +74832,7 @@ var FusionViewport = /*#__PURE__*/function (_Component) {
74443
74832
  stack: stack,
74444
74833
  basicInfoFromStudy: basicInfoFromStudy,
74445
74834
  sliceThickness: sliceThickness
74446
- }), showOverlayText && isFusionPet && /*#__PURE__*/React__default.createElement(ViewportOverlay$1, {
74835
+ }), showOverlayText && isFusionPet && /*#__PURE__*/React__default.createElement(ViewportOverlay$2, {
74447
74836
  viewport: viewport,
74448
74837
  imageId: imageId,
74449
74838
  stack: stack,
@@ -74691,6 +75080,10 @@ var FusionViewport = /*#__PURE__*/function (_Component) {
74691
75080
 
74692
75081
  defineProperty(FusionViewport, "defaultProps", dicomToolDefaultProps$1);
74693
75082
 
75083
+ function ownKeys$1a(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
75084
+
75085
+ function _objectSpread$1a(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1a(Object(source), true).forEach(function (key) { defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1a(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
75086
+
74694
75087
  var mapStateToProps$E = function mapStateToProps(state) {
74695
75088
  var _state$paladin$tools$ = state.paladin.tools.action,
74696
75089
  activeTool = _state$paladin$tools$.activeTool,
@@ -74722,20 +75115,32 @@ var mapStateToProps$E = function mapStateToProps(state) {
74722
75115
  };
74723
75116
  };
74724
75117
 
75118
+ var mergeProps$C = function mergeProps(propsFromState, propsFromDispatch, ownProps) {
75119
+ var _showOverlayText = propsFromState.showOverlayText;
75120
+
75121
+ if (ownProps.hasOwnProperty('showOverlayText') && !ownProps.showOverlayText) {
75122
+ _showOverlayText = false;
75123
+ }
75124
+
75125
+ return _objectSpread$1a(_objectSpread$1a(_objectSpread$1a({}, ownProps), propsFromState), {}, {
75126
+ showOverlayText: _showOverlayText
75127
+ });
75128
+ };
75129
+
74725
75130
  var ConnectedFusionViewport = reactRedux.connect(mapStateToProps$E, {
74726
75131
  setActiveTool: setActiveTool,
74727
75132
  setSeriesCurrentIndex: setSeriesCurrentIndex,
74728
75133
  setFusionReduxValue: setFusionReduxValue
74729
- })(FusionViewport);
75134
+ }, mergeProps$C)(FusionViewport);
74730
75135
 
74731
- function _createSuper$1X(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1X(); 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); }; }
75136
+ function _createSuper$1Y(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1Y(); 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); }; }
74732
75137
 
74733
- function _isNativeReflectConstruct$1X() { 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; } }
75138
+ function _isNativeReflectConstruct$1Y() { 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; } }
74734
75139
 
74735
75140
  var PETLayout = /*#__PURE__*/function (_Component) {
74736
75141
  inherits(PETLayout, _Component);
74737
75142
 
74738
- var _super = _createSuper$1X(PETLayout);
75143
+ var _super = _createSuper$1Y(PETLayout);
74739
75144
 
74740
75145
  function PETLayout(props) {
74741
75146
  var _this;
@@ -74804,7 +75209,8 @@ var PETLayout = /*#__PURE__*/function (_Component) {
74804
75209
  scrollWidth: scrollWidth,
74805
75210
  showCustomScroll: true,
74806
75211
  onImageFirstRender: handleSyncAdd,
74807
- availableTools: this.availableTools
75212
+ availableTools: this.availableTools,
75213
+ showOverlayText: false
74808
75214
  })), /*#__PURE__*/React__default.createElement("div", {
74809
75215
  className: "paladin-fusion-pet"
74810
75216
  }, /*#__PURE__*/React__default.createElement(ConnectedFusionViewport, {
@@ -74866,20 +75272,20 @@ var PETLayout = /*#__PURE__*/function (_Component) {
74866
75272
 
74867
75273
  defineProperty(PETLayout, "propTypes", {});
74868
75274
 
74869
- function ownKeys$1a(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
75275
+ function ownKeys$1b(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
74870
75276
 
74871
- function _objectSpread$1a(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1a(Object(source), true).forEach(function (key) { defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1a(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
75277
+ function _objectSpread$1b(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1b(Object(source), true).forEach(function (key) { defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1b(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
74872
75278
 
74873
75279
  var mapStateToProps$F = function mapStateToProps(state) {
74874
- return _objectSpread$1a({}, state.paladin.tools.fusion);
75280
+ return _objectSpread$1b({}, state.paladin.tools.fusion);
74875
75281
  };
74876
75282
 
74877
- var mergeProps$C = function mergeProps(propsFromState, propsFromDispatch, ownProps) {
75283
+ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownProps) {
74878
75284
  var fusionScrollSynchronizer = propsFromState.fusionScrollSynchronizer,
74879
75285
  fusionSynchronizer = propsFromState.fusionSynchronizer,
74880
75286
  fusionCTWWWCSynchronizer = propsFromState.fusionCTWWWCSynchronizer,
74881
75287
  fusionPETWWWCSynchronizer = propsFromState.fusionPETWWWCSynchronizer;
74882
- return _objectSpread$1a(_objectSpread$1a(_objectSpread$1a({}, propsFromState), ownProps), {}, {
75288
+ return _objectSpread$1b(_objectSpread$1b(_objectSpread$1b({}, propsFromState), ownProps), {}, {
74883
75289
  onViewPortCellClick: function onViewPortCellClick(value) {
74884
75290
  propsFromDispatch.setFusionActiveIndex(value);
74885
75291
  },
@@ -74915,7 +75321,7 @@ var mergeProps$C = function mergeProps(propsFromState, propsFromDispatch, ownPro
74915
75321
 
74916
75322
  var ConnectedPETLayout = reactRedux.connect(mapStateToProps$F, {
74917
75323
  setFusionActiveIndex: setFusionActiveIndex
74918
- }, mergeProps$C)(PETLayout);
75324
+ }, mergeProps$D)(PETLayout);
74919
75325
 
74920
75326
  function _createForOfIteratorHelper$h(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray$j(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; } } }; }
74921
75327
 
@@ -74923,9 +75329,9 @@ function _unsupportedIterableToArray$j(o, minLen) { if (!o) return; if (typeof o
74923
75329
 
74924
75330
  function _arrayLikeToArray$j(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
74925
75331
 
74926
- function _createSuper$1Y(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1Y(); 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); }; }
75332
+ function _createSuper$1Z(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct$1Z(); 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); }; }
74927
75333
 
74928
- function _isNativeReflectConstruct$1Y() { 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; } }
75334
+ function _isNativeReflectConstruct$1Z() { 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; } }
74929
75335
 
74930
75336
  var DicomLayoutContainerWrap = function DicomLayoutContainerWrap(props) {
74931
75337
  return /*#__PURE__*/React__default.createElement("div", {
@@ -74949,7 +75355,7 @@ index$3.configure({
74949
75355
  var DicomView = /*#__PURE__*/function (_Component) {
74950
75356
  inherits(DicomView, _Component);
74951
75357
 
74952
- var _super = _createSuper$1Y(DicomView);
75358
+ var _super = _createSuper$1Z(DicomView);
74953
75359
 
74954
75360
  function DicomView(props) {
74955
75361
  var _this;
@@ -75577,9 +75983,9 @@ function _unsupportedIterableToArray$k(o, minLen) { if (!o) return; if (typeof o
75577
75983
 
75578
75984
  function _arrayLikeToArray$k(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
75579
75985
 
75580
- function ownKeys$1b(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
75986
+ function ownKeys$1c(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
75581
75987
 
75582
- function _objectSpread$1b(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1b(Object(source), true).forEach(function (key) { defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1b(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
75988
+ function _objectSpread$1c(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$1c(Object(source), true).forEach(function (key) { defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$1c(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
75583
75989
  var throttle$9 = cornerstoneTools.importInternal('util/throttle');
75584
75990
  var NO_CHECK_MULTI_FRAME_MODALITIES = ['DR', 'CR', 'DX', 'MG'];
75585
75991
 
@@ -75667,7 +76073,7 @@ var mapStateToProps$G = function mapStateToProps(state) {
75667
76073
  };
75668
76074
  };
75669
76075
 
75670
- var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownProps) {
76076
+ var mergeProps$E = function mergeProps(propsFromState, propsFromDispatch, ownProps) {
75671
76077
  var activeIndex = propsFromState.activeIndex,
75672
76078
  imageActiveIndex = propsFromState.imageActiveIndex,
75673
76079
  MPR = propsFromState.MPR,
@@ -75765,7 +76171,7 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
75765
76171
  * https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key/Key_Values
75766
76172
  */
75767
76173
 
75768
- return _objectSpread$1b(_objectSpread$1b(_objectSpread$1b({}, ownProps), propsFromState), {}, {
76174
+ return _objectSpread$1c(_objectSpread$1c(_objectSpread$1c({}, ownProps), propsFromState), {}, {
75769
76175
  showDicomThumbnail: showDicomThumbnail,
75770
76176
  viewMode: viewMode,
75771
76177
  keyMap: {
@@ -76538,7 +76944,7 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
76538
76944
  imageIds.push(imageId);
76539
76945
  }
76540
76946
 
76541
- series[i] = _objectSpread$1b(_objectSpread$1b({}, item), {}, {
76947
+ series[i] = _objectSpread$1c(_objectSpread$1c({}, item), {}, {
76542
76948
  imageIds: imageIds,
76543
76949
  numberOfSeriesRelatedInstances: numFrames,
76544
76950
  isMultiFrame: true
@@ -76615,7 +77021,7 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
76615
77021
 
76616
77022
  callback && callback({
76617
77023
  hasChange: hasMultiFrame,
76618
- study: [_objectSpread$1b(_objectSpread$1b({}, _study[0]), {}, {
77024
+ study: [_objectSpread$1c(_objectSpread$1c({}, _study[0]), {}, {
76619
77025
  series: series
76620
77026
  })]
76621
77027
  }); // 如果有frameTime的话设置fps
@@ -76740,6 +77146,7 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
76740
77146
 
76741
77147
  purgeDicomCache(); // 清除所有imageCache
76742
77148
 
77149
+ cornerstone.imageCache.purgeCache();
76743
77150
  var cacheInfo = cornerstone.imageCache.getCacheInfo();
76744
77151
  var maximumSizeInBytes = cacheInfo.maximumSizeInBytes;
76745
77152
  cornerstone.imageCache.setMaximumSizeBytes(0);
@@ -76842,7 +77249,7 @@ var ConnectedDicomView = reactRedux.connect(mapStateToProps$G, {
76842
77249
  setReduxLanguage: setReduxLanguage,
76843
77250
  setActionStateByKey: setActionStateByKey,
76844
77251
  setMprLayout: setMprLayout
76845
- }, mergeProps$D, withRef())(DicomView);
77252
+ }, mergeProps$E, withRef())(DicomView);
76846
77253
 
76847
77254
  function withRef() {
76848
77255
  var reactReduxVersion = package_json.version.split('.')[0];