hellfire 0.31.2 → 0.31.4
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 +8 -0
- package/dist/index.js +73 -10
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,14 @@
|
|
|
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.31.4](http://10.16.100.57/diffusion/115/paladin/compare/v0.31.3...v0.31.4) (2025-11-09)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
## [0.31.3](http://10.16.100.57/diffusion/115/paladin/compare/v0.31.2...v0.31.3) (2025-11-04)
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
5
13
|
## [0.31.2](http://10.16.100.57/diffusion/115/paladin/compare/v0.31.1...v0.31.2) (2025-10-29)
|
|
6
14
|
|
|
7
15
|
|
package/dist/index.js
CHANGED
|
@@ -52385,16 +52385,66 @@ var formatInPlanePhaseEncodingDirection = function formatInPlanePhaseEncodingDir
|
|
|
52385
52385
|
}
|
|
52386
52386
|
};
|
|
52387
52387
|
|
|
52388
|
+
var checkFloatFixed = function checkFloatFixed(num) {
|
|
52389
|
+
var decimalPart = num.toString().split('.')[1];
|
|
52390
|
+
|
|
52391
|
+
if (decimalPart && decimalPart.length > 2) {
|
|
52392
|
+
return num.toFixed(2);
|
|
52393
|
+
} else {
|
|
52394
|
+
return num.toFixed(1);
|
|
52395
|
+
}
|
|
52396
|
+
};
|
|
52397
|
+
|
|
52398
|
+
var checkFloatFixed3 = function checkFloatFixed3(num) {
|
|
52399
|
+
var decimalPart = num.toString().split('.')[1] || '';
|
|
52400
|
+
var decimalLength = decimalPart.length;
|
|
52401
|
+
|
|
52402
|
+
if (decimalLength >= 3) {
|
|
52403
|
+
return num.toFixed(3);
|
|
52404
|
+
} else if (decimalLength === 2) {
|
|
52405
|
+
return num.toFixed(2);
|
|
52406
|
+
} else {
|
|
52407
|
+
return num.toFixed(1);
|
|
52408
|
+
}
|
|
52409
|
+
};
|
|
52410
|
+
|
|
52388
52411
|
var getActualSpacingBetweenSlices = function getActualSpacingBetweenSlices(spacingBetweenSlices, sliceThickness) {
|
|
52389
52412
|
if (spacingBetweenSlices && sliceThickness) {
|
|
52390
52413
|
// 获取实际的层间距 减去上下层各 1/2的层厚
|
|
52391
52414
|
var actualSpacingBetweenSlices = parseFloat(spacingBetweenSlices) - parseFloat(sliceThickness);
|
|
52392
|
-
return actualSpacingBetweenSlices && actualSpacingBetweenSlices
|
|
52415
|
+
return actualSpacingBetweenSlices && checkFloatFixed(actualSpacingBetweenSlices);
|
|
52393
52416
|
} else {
|
|
52394
52417
|
return '';
|
|
52395
52418
|
}
|
|
52396
52419
|
};
|
|
52397
52420
|
|
|
52421
|
+
var formatThkText = function formatThkText(sliceThickness, spacingBetweenSlices) {
|
|
52422
|
+
var actualSpacingBetweenSlices = getActualSpacingBetweenSlices(sliceThickness, spacingBetweenSlices);
|
|
52423
|
+
return actualSpacingBetweenSlices || sliceThickness ? "THK: ".concat(sliceThickness && checkFloatFixed(parseFloat(sliceThickness)), "/").concat(actualSpacingBetweenSlices) : '';
|
|
52424
|
+
};
|
|
52425
|
+
|
|
52426
|
+
var formatDetText = function formatDetText(dicom) {
|
|
52427
|
+
var _dicom$TotalCollimati, _dicom$SingleCollimat, _dicom$SpiralPitchFac;
|
|
52428
|
+
|
|
52429
|
+
var totalCollimationWidth = (_dicom$TotalCollimati = dicom.TotalCollimationWidth) === null || _dicom$TotalCollimati === void 0 ? void 0 : _dicom$TotalCollimati.value;
|
|
52430
|
+
var singleCollimationWidth = (_dicom$SingleCollimat = dicom.SingleCollimationWidth) === null || _dicom$SingleCollimat === void 0 ? void 0 : _dicom$SingleCollimat.value;
|
|
52431
|
+
var spiralPitchFactor = (_dicom$SpiralPitchFac = dicom.SpiralPitchFactor) === null || _dicom$SpiralPitchFac === void 0 ? void 0 : _dicom$SpiralPitchFac.value;
|
|
52432
|
+
|
|
52433
|
+
if (!totalCollimationWidth || !totalCollimationWidth[0] || !singleCollimationWidth || !singleCollimationWidth[0] || !spiralPitchFactor || !spiralPitchFactor[0]) {
|
|
52434
|
+
return '';
|
|
52435
|
+
}
|
|
52436
|
+
|
|
52437
|
+
var detectorRows = Math.round(parseFloat(totalCollimationWidth[0]) / parseFloat(singleCollimationWidth[0]));
|
|
52438
|
+
|
|
52439
|
+
if (detectorRows > 10000) {
|
|
52440
|
+
return '';
|
|
52441
|
+
}
|
|
52442
|
+
|
|
52443
|
+
var collimationWidth = checkFloatFixed3(parseFloat(singleCollimationWidth[0]));
|
|
52444
|
+
var pitch = checkFloatFixed(parseFloat(spiralPitchFactor[0]));
|
|
52445
|
+
return "Det: ".concat(detectorRows, "x").concat(collimationWidth, "/p: ").concat(pitch);
|
|
52446
|
+
};
|
|
52447
|
+
|
|
52398
52448
|
var getFov = function getFov(dicom, imageId) {
|
|
52399
52449
|
var rows = dicom.Rows.value;
|
|
52400
52450
|
var columns = dicom.Columns.value;
|
|
@@ -52775,13 +52825,14 @@ var ViewportOverlay = /*#__PURE__*/function (_PureComponent) {
|
|
|
52775
52825
|
|
|
52776
52826
|
var diffusionBValue = dicom.DiffusionBValue.toString();
|
|
52777
52827
|
var seriesDescription = dicom.SeriesDescription.toString();
|
|
52778
|
-
var
|
|
52779
|
-
var
|
|
52828
|
+
var thk = formatThkText(sliceThickness, spacingBetweenSlices);
|
|
52829
|
+
var det = formatDetText(dicom); // 当长度大于20时,不显示
|
|
52780
52830
|
|
|
52781
52831
|
var imageComments = dicom.ImageComments.toString(); // DX DR CR专属属性
|
|
52782
52832
|
|
|
52783
52833
|
var modality = dicom.Modality.toString();
|
|
52784
52834
|
var showDXDRCR = modality === 'DX' || modality === 'DR' || modality === 'CR';
|
|
52835
|
+
var showCT = modality === 'CT';
|
|
52785
52836
|
var kvp = dicom.KVP.toString();
|
|
52786
52837
|
var exposureTime = dicom.ExposureTime.toString();
|
|
52787
52838
|
var xRayTubeCurrent = dicom.XRayTubeCurrent.toString();
|
|
@@ -52821,7 +52872,7 @@ var ViewportOverlay = /*#__PURE__*/function (_PureComponent) {
|
|
|
52821
52872
|
fontSize: "".concat(fontSize, "px"),
|
|
52822
52873
|
display: "".concat(hide ? 'none' : 'block')
|
|
52823
52874
|
}
|
|
52824
|
-
}, showDXDRCR && /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('kV', kvp)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('mA', xRayTubeCurrent)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('Time', exposureTime)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('mAs', exposure))), /*#__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(repetitionTime, echoTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo('TI', inversionTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo('FA', flipAngle)), /*#__PURE__*/React__default.createElement("div", null, getADAndNEX(acquisitionDuration, numberOfAverages)), /*#__PURE__*/React__default.createElement("div", null, thk), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo('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", {
|
|
52875
|
+
}, showDXDRCR && /*#__PURE__*/React__default.createElement("div", null, /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('kV', kvp)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('mA', xRayTubeCurrent)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('Time', exposureTime)), /*#__PURE__*/React__default.createElement("div", null, formatDRDXInfo('mAs', exposure))), /*#__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(repetitionTime, echoTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo('TI', inversionTime)), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo('FA', flipAngle)), /*#__PURE__*/React__default.createElement("div", null, getADAndNEX(acquisitionDuration, numberOfAverages)), showCT && /*#__PURE__*/React__default.createElement("div", null, thk), /*#__PURE__*/React__default.createElement("div", null, det), /*#__PURE__*/React__default.createElement("div", null, formatDicomInfo('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", {
|
|
52825
52876
|
style: {
|
|
52826
52877
|
position: 'absolute',
|
|
52827
52878
|
top: 4,
|
|
@@ -76332,7 +76383,7 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
|
|
|
76332
76383
|
},
|
|
76333
76384
|
initSeries: function () {
|
|
76334
76385
|
var _initSeries2 = asyncToGenerator( /*#__PURE__*/regenerator.mark(function _callee2(changeStudy, callback) {
|
|
76335
|
-
var data, resetToolMergeState, synchronizer, linkSynchronizer, linkImageModeSynchronizer, linkScrollSynchronizer, options, _study, series, needCheckMultiFrame, hasMultiFrame, modalitiesInStudy, i, item, wado, url, dataSet, numFrames, imageIds, _i, imageId, seriesCurrentIndex, firstReady, maxRequest, retry, clearCacheEveryLoad, dicom, frameTime, linkToolLocalDefaultState, realActiveIndex, continuousMeasureLocalDefaultState, referenceLineLocalDefaultState, shutterLocalDefaultState, autoLinkSyncWindowLevelDefaultState, autoLinkSyncOtherDefaultState, autoLinkSyncAbsoluteDefaultState, mprCrossModeDefaultState, mprVertLayout, mprHozLayout;
|
|
76386
|
+
var data, resetToolMergeState, synchronizer, linkSynchronizer, linkImageModeSynchronizer, linkScrollSynchronizer, options, _study, series, needCheckMultiFrame, hasMultiFrame, modalitiesInStudy, i, item, wado, url, dataSet, numFrames, imageIds, _i, imageId, seriesCurrentIndex, firstReady, maxRequest, retry, clearCacheEveryLoad, initTaskPoolSeries, size, dicom, frameTime, linkToolLocalDefaultState, realActiveIndex, continuousMeasureLocalDefaultState, referenceLineLocalDefaultState, shutterLocalDefaultState, autoLinkSyncWindowLevelDefaultState, autoLinkSyncOtherDefaultState, autoLinkSyncAbsoluteDefaultState, mprCrossModeDefaultState, mprVertLayout, mprHozLayout;
|
|
76336
76387
|
|
|
76337
76388
|
return regenerator.wrap(function _callee2$(_context2) {
|
|
76338
76389
|
while (1) {
|
|
@@ -76521,10 +76572,22 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
|
|
|
76521
76572
|
maxRequest = 1;
|
|
76522
76573
|
retry = 0;
|
|
76523
76574
|
clearCacheEveryLoad = true;
|
|
76524
|
-
}
|
|
76575
|
+
}
|
|
76576
|
+
/**
|
|
76577
|
+
* 预加载:
|
|
76578
|
+
* 1.多帧的情况不要预加载 只要初始化设置
|
|
76579
|
+
* 2.如果外部传入initImageLoadManual为true,则只加载初始视窗个数序列
|
|
76580
|
+
*/
|
|
76525
76581
|
|
|
76526
76582
|
|
|
76527
|
-
|
|
76583
|
+
initTaskPoolSeries = series;
|
|
76584
|
+
|
|
76585
|
+
if (ownProps.initImageLoadManual) {
|
|
76586
|
+
size = propsFromState.row * propsFromState.col || 1;
|
|
76587
|
+
initTaskPoolSeries = series.slice(0, size);
|
|
76588
|
+
}
|
|
76589
|
+
|
|
76590
|
+
initTaskPool(hasMultiFrame ? [] : initTaskPoolSeries, {
|
|
76528
76591
|
maxRequest: maxRequest,
|
|
76529
76592
|
retry: retry,
|
|
76530
76593
|
clearCacheEveryLoad: clearCacheEveryLoad,
|
|
@@ -76557,10 +76620,10 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
|
|
|
76557
76620
|
})]
|
|
76558
76621
|
}); // 如果有frameTime的话设置fps
|
|
76559
76622
|
|
|
76560
|
-
_context2.next =
|
|
76623
|
+
_context2.next = 64;
|
|
76561
76624
|
return loadAndCacheDicom(series[0].imageIds[0]);
|
|
76562
76625
|
|
|
76563
|
-
case
|
|
76626
|
+
case 64:
|
|
76564
76627
|
dicom = _context2.sent;
|
|
76565
76628
|
|
|
76566
76629
|
if (dicom && dicom.FrameTime && dicom.FrameTime.value) {
|
|
@@ -76651,7 +76714,7 @@ var mergeProps$D = function mergeProps(propsFromState, propsFromDispatch, ownPro
|
|
|
76651
76714
|
propsFromDispatch.setMprLayout('horizontal', mprHozLayout);
|
|
76652
76715
|
}
|
|
76653
76716
|
|
|
76654
|
-
case
|
|
76717
|
+
case 86:
|
|
76655
76718
|
case "end":
|
|
76656
76719
|
return _context2.stop();
|
|
76657
76720
|
}
|