fix: prevent annotation from appearing in active viewport when switching series with different Frame of Reference UID (#5630)
* fix: prevent annotation from appearing in active viewport when switching series with different Frame of Reference UID * refactor: extract viewport update strategies * Update version and use nearest orientation viewport --------- Co-authored-by: trenser-belbin <belbin.kunjumon@prenuvo.com> Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
This commit is contained in:
parent
0af4c2ae47
commit
658994c854
330
bun.lock
330
bun.lock
@ -52,7 +52,7 @@
|
|||||||
},
|
},
|
||||||
"addOns/externals/devDependencies": {
|
"addOns/externals/devDependencies": {
|
||||||
"name": "@externals/devDependencies",
|
"name": "@externals/devDependencies",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
@ -137,22 +137,22 @@
|
|||||||
},
|
},
|
||||||
"addOns/externals/dicom-microscopy-viewer": {
|
"addOns/externals/dicom-microscopy-viewer": {
|
||||||
"name": "@externals/dicom-microscopy-viewer",
|
"name": "@externals/dicom-microscopy-viewer",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"dicom-microscopy-viewer": "0.48.6",
|
"dicom-microscopy-viewer": "0.48.6",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"extensions/cornerstone": {
|
"extensions/cornerstone": {
|
||||||
"name": "@ohif/extension-cornerstone",
|
"name": "@ohif/extension-cornerstone",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/ai": "4.14.4",
|
"@cornerstonejs/ai": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/labelmap-interpolation": "4.14.4",
|
"@cornerstonejs/labelmap-interpolation": "4.14.5",
|
||||||
"@cornerstonejs/polymorphic-segmentation": "4.14.4",
|
"@cornerstonejs/polymorphic-segmentation": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@itk-wasm/morphological-contour-interpolation": "1.1.0",
|
"@itk-wasm/morphological-contour-interpolation": "1.1.0",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
"html2canvas": "1.4.1",
|
"html2canvas": "1.4.1",
|
||||||
@ -169,9 +169,9 @@
|
|||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
||||||
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
||||||
"@cornerstonejs/codec-openjph": "2.4.7",
|
"@cornerstonejs/codec-openjph": "2.4.7",
|
||||||
"@cornerstonejs/dicom-image-loader": "4.14.4",
|
"@cornerstonejs/dicom-image-loader": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
"hammerjs": "2.0.8",
|
"hammerjs": "2.0.8",
|
||||||
@ -183,19 +183,19 @@
|
|||||||
},
|
},
|
||||||
"extensions/cornerstone-dicom-pmap": {
|
"extensions/cornerstone-dicom-pmap": {
|
||||||
"name": "@ohif/extension-cornerstone-dicom-pmap",
|
"name": "@ohif/extension-cornerstone-dicom-pmap",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
"react-color": "2.19.3",
|
"react-color": "2.19.3",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"prop-types": "15.8.1",
|
"prop-types": "15.8.1",
|
||||||
"react": "18.3.1",
|
"react": "18.3.1",
|
||||||
"react-dom": "18.3.1",
|
"react-dom": "18.3.1",
|
||||||
@ -206,16 +206,16 @@
|
|||||||
},
|
},
|
||||||
"extensions/cornerstone-dicom-rt": {
|
"extensions/cornerstone-dicom-rt": {
|
||||||
"name": "@ohif/extension-cornerstone-dicom-rt",
|
"name": "@ohif/extension-cornerstone-dicom-rt",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"react-color": "2.19.3",
|
"react-color": "2.19.3",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"prop-types": "15.8.1",
|
"prop-types": "15.8.1",
|
||||||
"react": "18.3.1",
|
"react": "18.3.1",
|
||||||
"react-dom": "18.3.1",
|
"react-dom": "18.3.1",
|
||||||
@ -226,19 +226,19 @@
|
|||||||
},
|
},
|
||||||
"extensions/cornerstone-dicom-seg": {
|
"extensions/cornerstone-dicom-seg": {
|
||||||
"name": "@ohif/extension-cornerstone-dicom-seg",
|
"name": "@ohif/extension-cornerstone-dicom-seg",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
"react-color": "2.19.3",
|
"react-color": "2.19.3",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"prop-types": "15.8.1",
|
"prop-types": "15.8.1",
|
||||||
"react": "18.3.1",
|
"react": "18.3.1",
|
||||||
"react-dom": "18.3.1",
|
"react-dom": "18.3.1",
|
||||||
@ -249,19 +249,19 @@
|
|||||||
},
|
},
|
||||||
"extensions/cornerstone-dicom-sr": {
|
"extensions/cornerstone-dicom-sr": {
|
||||||
"name": "@ohif/extension-cornerstone-dicom-sr",
|
"name": "@ohif/extension-cornerstone-dicom-sr",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-measurement-tracking": "3.12.0-beta.105",
|
"@ohif/extension-measurement-tracking": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
"hammerjs": "2.0.8",
|
"hammerjs": "2.0.8",
|
||||||
@ -271,19 +271,19 @@
|
|||||||
},
|
},
|
||||||
"extensions/cornerstone-dynamic-volume": {
|
"extensions/cornerstone-dynamic-volume": {
|
||||||
"name": "@ohif/extension-cornerstone-dynamic-volume",
|
"name": "@ohif/extension-cornerstone-dynamic-volume",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
"hammerjs": "2.0.8",
|
"hammerjs": "2.0.8",
|
||||||
@ -293,7 +293,7 @@
|
|||||||
},
|
},
|
||||||
"extensions/default": {
|
"extensions/default": {
|
||||||
"name": "@ohif/extension-default",
|
"name": "@ohif/extension-default",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/calculate-suv": "1.1.0",
|
"@cornerstonejs/calculate-suv": "1.1.0",
|
||||||
@ -301,8 +301,8 @@
|
|||||||
"lodash.uniqby": "4.7.0",
|
"lodash.uniqby": "4.7.0",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicomweb-client": "0.10.4",
|
"dicomweb-client": "0.10.4",
|
||||||
"prop-types": "15.8.1",
|
"prop-types": "15.8.1",
|
||||||
@ -316,7 +316,7 @@
|
|||||||
},
|
},
|
||||||
"extensions/dicom-microscopy": {
|
"extensions/dicom-microscopy": {
|
||||||
"name": "@ohif/extension-dicom-microscopy",
|
"name": "@ohif/extension-dicom-microscopy",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/codec-charls": "1.2.3",
|
"@cornerstonejs/codec-charls": "1.2.3",
|
||||||
@ -327,10 +327,10 @@
|
|||||||
"mathjs": "12.4.3",
|
"mathjs": "12.4.3",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"prop-types": "15.8.1",
|
"prop-types": "15.8.1",
|
||||||
"react": "18.3.1",
|
"react": "18.3.1",
|
||||||
"react-dom": "18.3.1",
|
"react-dom": "18.3.1",
|
||||||
@ -341,14 +341,14 @@
|
|||||||
},
|
},
|
||||||
"extensions/dicom-pdf": {
|
"extensions/dicom-pdf": {
|
||||||
"name": "@ohif/extension-dicom-pdf",
|
"name": "@ohif/extension-dicom-pdf",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
"hammerjs": "2.0.8",
|
"hammerjs": "2.0.8",
|
||||||
@ -358,14 +358,14 @@
|
|||||||
},
|
},
|
||||||
"extensions/dicom-video": {
|
"extensions/dicom-video": {
|
||||||
"name": "@ohif/extension-dicom-video",
|
"name": "@ohif/extension-dicom-video",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
"hammerjs": "2.0.8",
|
"hammerjs": "2.0.8",
|
||||||
@ -375,20 +375,20 @@
|
|||||||
},
|
},
|
||||||
"extensions/measurement-tracking": {
|
"extensions/measurement-tracking": {
|
||||||
"name": "@ohif/extension-measurement-tracking",
|
"name": "@ohif/extension-measurement-tracking",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"@xstate/react": "3.2.2",
|
"@xstate/react": "3.2.2",
|
||||||
"xstate": "4.38.3",
|
"xstate": "4.38.3",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"lodash.debounce": "4.0.8",
|
"lodash.debounce": "4.0.8",
|
||||||
@ -401,14 +401,14 @@
|
|||||||
},
|
},
|
||||||
"extensions/test-extension": {
|
"extensions/test-extension": {
|
||||||
"name": "@ohif/extension-test",
|
"name": "@ohif/extension-test",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
"hammerjs": "2.0.8",
|
"hammerjs": "2.0.8",
|
||||||
@ -418,7 +418,7 @@
|
|||||||
},
|
},
|
||||||
"extensions/tmtv": {
|
"extensions/tmtv": {
|
||||||
"name": "@ohif/extension-tmtv",
|
"name": "@ohif/extension-tmtv",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
@ -435,16 +435,16 @@
|
|||||||
},
|
},
|
||||||
"extensions/usAnnotation": {
|
"extensions/usAnnotation": {
|
||||||
"name": "@ohif/extension-ultrasound-pleura-bline",
|
"name": "@ohif/extension-ultrasound-pleura-bline",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"@ohif/ui-next": "3.12.0-beta.105",
|
"@ohif/ui-next": "3.12.0-beta.107",
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@babel/core": "7.28.0",
|
"@babel/core": "7.28.0",
|
||||||
@ -487,7 +487,7 @@
|
|||||||
},
|
},
|
||||||
"modes/basic": {
|
"modes/basic": {
|
||||||
"name": "@ohif/mode-basic",
|
"name": "@ohif/mode-basic",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
},
|
},
|
||||||
@ -496,19 +496,19 @@
|
|||||||
"webpack-merge": "5.10.0",
|
"webpack-merge": "5.10.0",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-pdf": "3.12.0-beta.105",
|
"@ohif/extension-dicom-pdf": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-video": "3.12.0-beta.105",
|
"@ohif/extension-dicom-video": "3.12.0-beta.107",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"modes/basic-dev-mode": {
|
"modes/basic-dev-mode": {
|
||||||
"name": "@ohif/mode-basic-dev-mode",
|
"name": "@ohif/mode-basic-dev-mode",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
@ -518,17 +518,17 @@
|
|||||||
"webpack-merge": "5.10.0",
|
"webpack-merge": "5.10.0",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-pdf": "3.12.0-beta.105",
|
"@ohif/extension-dicom-pdf": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-video": "3.12.0-beta.105",
|
"@ohif/extension-dicom-video": "3.12.0-beta.107",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"modes/basic-test-mode": {
|
"modes/basic-test-mode": {
|
||||||
"name": "@ohif/mode-test",
|
"name": "@ohif/mode-test",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
@ -538,19 +538,19 @@
|
|||||||
"webpack-merge": "5.10.0",
|
"webpack-merge": "5.10.0",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-pdf": "3.12.0-beta.105",
|
"@ohif/extension-dicom-pdf": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-video": "3.12.0-beta.105",
|
"@ohif/extension-dicom-video": "3.12.0-beta.107",
|
||||||
"@ohif/extension-measurement-tracking": "3.12.0-beta.105",
|
"@ohif/extension-measurement-tracking": "3.12.0-beta.107",
|
||||||
"@ohif/extension-test": "3.12.0-beta.105",
|
"@ohif/extension-test": "3.12.0-beta.107",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"modes/longitudinal": {
|
"modes/longitudinal": {
|
||||||
"name": "@ohif/mode-longitudinal",
|
"name": "@ohif/mode-longitudinal",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
@ -560,33 +560,33 @@
|
|||||||
"webpack-merge": "5.10.0",
|
"webpack-merge": "5.10.0",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-pdf": "3.12.0-beta.105",
|
"@ohif/extension-dicom-pdf": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-video": "3.12.0-beta.105",
|
"@ohif/extension-dicom-video": "3.12.0-beta.107",
|
||||||
"@ohif/extension-measurement-tracking": "3.12.0-beta.105",
|
"@ohif/extension-measurement-tracking": "3.12.0-beta.107",
|
||||||
"@ohif/mode-basic": "3.12.0-beta.105",
|
"@ohif/mode-basic": "3.12.0-beta.107",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"modes/microscopy": {
|
"modes/microscopy": {
|
||||||
"name": "@ohif/mode-microscopy",
|
"name": "@ohif/mode-microscopy",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-microscopy": "3.12.0-beta.105",
|
"@ohif/extension-dicom-microscopy": "3.12.0-beta.107",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"modes/preclinical-4d": {
|
"modes/preclinical-4d": {
|
||||||
"name": "@ohif/mode-preclinical-4d",
|
"name": "@ohif/mode-preclinical-4d",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
},
|
},
|
||||||
@ -605,7 +605,7 @@
|
|||||||
},
|
},
|
||||||
"modes/segmentation": {
|
"modes/segmentation": {
|
||||||
"name": "@ohif/mode-segmentation",
|
"name": "@ohif/mode-segmentation",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
@ -650,7 +650,7 @@
|
|||||||
},
|
},
|
||||||
"modes/tmtv": {
|
"modes/tmtv": {
|
||||||
"name": "@ohif/mode-tmtv",
|
"name": "@ohif/mode-tmtv",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
@ -671,14 +671,14 @@
|
|||||||
},
|
},
|
||||||
"modes/usAnnotation": {
|
"modes/usAnnotation": {
|
||||||
"name": "@ohif/mode-ultrasound-pleura-bline",
|
"name": "@ohif/mode-ultrasound-pleura-bline",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.105",
|
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.107",
|
||||||
"i18next": "17.3.1",
|
"i18next": "17.3.1",
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
@ -710,34 +710,34 @@
|
|||||||
},
|
},
|
||||||
"platform/app": {
|
"platform/app": {
|
||||||
"name": "@ohif/app",
|
"name": "@ohif/app",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/codec-charls": "1.2.3",
|
"@cornerstonejs/codec-charls": "1.2.3",
|
||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
||||||
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
||||||
"@cornerstonejs/codec-openjph": "2.4.7",
|
"@cornerstonejs/codec-openjph": "2.4.7",
|
||||||
"@cornerstonejs/dicom-image-loader": "4.14.4",
|
"@cornerstonejs/dicom-image-loader": "4.14.5",
|
||||||
"@emotion/serialize": "1.3.3",
|
"@emotion/serialize": "1.3.3",
|
||||||
"@ohif/core": "3.12.0-beta.105",
|
"@ohif/core": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.107",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.105",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.107",
|
||||||
"@ohif/extension-default": "3.12.0-beta.105",
|
"@ohif/extension-default": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-microscopy": "3.12.0-beta.105",
|
"@ohif/extension-dicom-microscopy": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-pdf": "3.12.0-beta.105",
|
"@ohif/extension-dicom-pdf": "3.12.0-beta.107",
|
||||||
"@ohif/extension-dicom-video": "3.12.0-beta.105",
|
"@ohif/extension-dicom-video": "3.12.0-beta.107",
|
||||||
"@ohif/extension-test": "3.12.0-beta.105",
|
"@ohif/extension-test": "3.12.0-beta.107",
|
||||||
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.105",
|
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.107",
|
||||||
"@ohif/i18n": "3.12.0-beta.105",
|
"@ohif/i18n": "3.12.0-beta.107",
|
||||||
"@ohif/mode-basic-dev-mode": "3.12.0-beta.105",
|
"@ohif/mode-basic-dev-mode": "3.12.0-beta.107",
|
||||||
"@ohif/mode-longitudinal": "3.12.0-beta.105",
|
"@ohif/mode-longitudinal": "3.12.0-beta.107",
|
||||||
"@ohif/mode-microscopy": "3.12.0-beta.105",
|
"@ohif/mode-microscopy": "3.12.0-beta.107",
|
||||||
"@ohif/mode-test": "3.12.0-beta.105",
|
"@ohif/mode-test": "3.12.0-beta.107",
|
||||||
"@ohif/mode-ultrasound-pleura-bline": "3.12.0-beta.105",
|
"@ohif/mode-ultrasound-pleura-bline": "3.12.0-beta.107",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"@ohif/ui-next": "3.12.0-beta.105",
|
"@ohif/ui-next": "3.12.0-beta.107",
|
||||||
"@svgr/webpack": "8.1.0",
|
"@svgr/webpack": "8.1.0",
|
||||||
"@types/react": "18.3.23",
|
"@types/react": "18.3.23",
|
||||||
"classnames": "2.5.1",
|
"classnames": "2.5.1",
|
||||||
@ -789,7 +789,7 @@
|
|||||||
},
|
},
|
||||||
"platform/cli": {
|
"platform/cli": {
|
||||||
"name": "@ohif/cli",
|
"name": "@ohif/cli",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"bin": {
|
"bin": {
|
||||||
"ohif-cli": "src/index.js",
|
"ohif-cli": "src/index.js",
|
||||||
},
|
},
|
||||||
@ -813,7 +813,7 @@
|
|||||||
},
|
},
|
||||||
"platform/core": {
|
"platform/core": {
|
||||||
"name": "@ohif/core",
|
"name": "@ohif/core",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
@ -838,16 +838,16 @@
|
|||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
||||||
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
||||||
"@cornerstonejs/codec-openjph": "2.4.7",
|
"@cornerstonejs/codec-openjph": "2.4.7",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/dicom-image-loader": "4.14.4",
|
"@cornerstonejs/dicom-image-loader": "4.14.5",
|
||||||
"@ohif/ui": "3.12.0-beta.105",
|
"@ohif/ui": "3.12.0-beta.107",
|
||||||
"cornerstone-math": "0.1.9",
|
"cornerstone-math": "0.1.9",
|
||||||
"dicom-parser": "1.8.21",
|
"dicom-parser": "1.8.21",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
"platform/i18n": {
|
"platform/i18n": {
|
||||||
"name": "@ohif/i18n",
|
"name": "@ohif/i18n",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"i18next-locize-backend": "2.2.2",
|
"i18next-locize-backend": "2.2.2",
|
||||||
@ -872,7 +872,7 @@
|
|||||||
},
|
},
|
||||||
"platform/ui": {
|
"platform/ui": {
|
||||||
"name": "@ohif/ui",
|
"name": "@ohif/ui",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@testing-library/react": "13.4.0",
|
"@testing-library/react": "13.4.0",
|
||||||
"browser-detect": "0.2.28",
|
"browser-detect": "0.2.28",
|
||||||
@ -923,7 +923,7 @@
|
|||||||
},
|
},
|
||||||
"platform/ui-next": {
|
"platform/ui-next": {
|
||||||
"name": "@ohif/ui-next",
|
"name": "@ohif/ui-next",
|
||||||
"version": "3.12.0-beta.105",
|
"version": "3.12.0-beta.107",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@radix-ui/react-accordion": "1.2.11",
|
"@radix-ui/react-accordion": "1.2.11",
|
||||||
"@radix-ui/react-checkbox": "1.3.2",
|
"@radix-ui/react-checkbox": "1.3.2",
|
||||||
@ -1231,9 +1231,9 @@
|
|||||||
|
|
||||||
"@bcoe/v8-coverage": ["@bcoe/v8-coverage@0.2.3", "", {}, "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="],
|
"@bcoe/v8-coverage": ["@bcoe/v8-coverage@0.2.3", "", {}, "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw=="],
|
||||||
|
|
||||||
"@cornerstonejs/adapters": ["@cornerstonejs/adapters@4.14.4", "", { "dependencies": { "@babel/runtime-corejs2": "7.26.10", "buffer": "6.0.3", "dcmjs": "0.45.0", "gl-matrix": "3.4.3", "ndarray": "1.0.19" }, "peerDependencies": { "@cornerstonejs/core": "4.14.4", "@cornerstonejs/tools": "4.14.4" } }, "sha512-4Xn30/01yjFK7YjiNBB0IOKzdUiD31AM3Yd45zLOsYzRv+UeIQNMWFJQpKOBGetP16Z5sfRJil2T1HOHDFPjJw=="],
|
"@cornerstonejs/adapters": ["@cornerstonejs/adapters@4.14.5", "", { "dependencies": { "@babel/runtime-corejs2": "7.26.10", "buffer": "6.0.3", "dcmjs": "0.45.0", "gl-matrix": "3.4.3", "ndarray": "1.0.19" }, "peerDependencies": { "@cornerstonejs/core": "4.14.5", "@cornerstonejs/tools": "4.14.5" } }, "sha512-PA1w4RT+2FRoSRo+br2m+evB9MMJwcybgCUP2sLpD2Aj+2ZM/VyoIvraBz5ioUchqirRzwoVwx53YSfcg0RR5Q=="],
|
||||||
|
|
||||||
"@cornerstonejs/ai": ["@cornerstonejs/ai@4.14.4", "", { "dependencies": { "@babel/runtime-corejs2": "7.26.10", "buffer": "6.0.3", "dcmjs": "0.45.0", "gl-matrix": "3.4.3", "lodash.clonedeep": "4.5.0", "ndarray": "1.0.19", "onnxruntime-common": "1.17.1", "onnxruntime-web": "1.17.1" }, "peerDependencies": { "@cornerstonejs/core": "4.14.4", "@cornerstonejs/tools": "4.14.4" } }, "sha512-DyMaElHNeS2KltJzfb0v3Ox0A9ns75Ubh7E9Bs3SKPTFNSGkIyP7ysz05LaJ1D+HkpDFw8Uo9Uadky2na/5sDQ=="],
|
"@cornerstonejs/ai": ["@cornerstonejs/ai@4.14.5", "", { "dependencies": { "@babel/runtime-corejs2": "7.26.10", "buffer": "6.0.3", "dcmjs": "0.45.0", "gl-matrix": "3.4.3", "lodash.clonedeep": "4.5.0", "ndarray": "1.0.19", "onnxruntime-common": "1.17.1", "onnxruntime-web": "1.17.1" }, "peerDependencies": { "@cornerstonejs/core": "4.14.5", "@cornerstonejs/tools": "4.14.5" } }, "sha512-l5fLdtwgU0HqJ12dzO2CJlNqZKAQVSIbt0n70HodrijPLlgph+43JEXyTiDLcl9czHJSA9EJoQ8y+0y3irkCGw=="],
|
||||||
|
|
||||||
"@cornerstonejs/calculate-suv": ["@cornerstonejs/calculate-suv@1.1.0", "", {}, "sha512-Q9XraiDJif9aMFArD2iEuDO/HXbcRVCqB7KfaHgDrdTTjgDFovS91Psbdim7crypRSvE6dh/+HKeFNHdvNkA6w=="],
|
"@cornerstonejs/calculate-suv": ["@cornerstonejs/calculate-suv@1.1.0", "", {}, "sha512-Q9XraiDJif9aMFArD2iEuDO/HXbcRVCqB7KfaHgDrdTTjgDFovS91Psbdim7crypRSvE6dh/+HKeFNHdvNkA6w=="],
|
||||||
|
|
||||||
@ -1245,15 +1245,15 @@
|
|||||||
|
|
||||||
"@cornerstonejs/codec-openjph": ["@cornerstonejs/codec-openjph@2.4.7", "", {}, "sha512-qvP4q4JDib7mi9r7LqKOwqz7YZ8gjtDX4ZCezeYf8+eb7MBXCz5uXAMeVF3yz9Axw4XiIMdB/pqXkm8tqCl13w=="],
|
"@cornerstonejs/codec-openjph": ["@cornerstonejs/codec-openjph@2.4.7", "", {}, "sha512-qvP4q4JDib7mi9r7LqKOwqz7YZ8gjtDX4ZCezeYf8+eb7MBXCz5uXAMeVF3yz9Axw4XiIMdB/pqXkm8tqCl13w=="],
|
||||||
|
|
||||||
"@cornerstonejs/core": ["@cornerstonejs/core@4.14.4", "", { "dependencies": { "@kitware/vtk.js": "34.15.1", "comlink": "4.4.2", "gl-matrix": "3.4.3", "loglevel": "1.9.2" } }, "sha512-KNd648mwqzNqniRONyp2QkOpi1UMnDtDfUdJRLpbJKVdNzNkDG+nq3uNrWG8+YBWyeunUIB3ydrCHnKmxVs1RQ=="],
|
"@cornerstonejs/core": ["@cornerstonejs/core@4.14.5", "", { "dependencies": { "@kitware/vtk.js": "34.15.1", "comlink": "4.4.2", "gl-matrix": "3.4.3", "loglevel": "1.9.2" } }, "sha512-GZOQpkbbb1ocZyApF3SB1Nd1zn0f/BgkInuLu/ovCPjjft+sobzomr/sKZP0OA+5hdymjghI+jOZrZNAwgFezw=="],
|
||||||
|
|
||||||
"@cornerstonejs/dicom-image-loader": ["@cornerstonejs/dicom-image-loader@4.14.4", "", { "dependencies": { "@cornerstonejs/codec-charls": "1.2.3", "@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2", "@cornerstonejs/codec-openjpeg": "1.3.0", "@cornerstonejs/codec-openjph": "2.4.7", "comlink": "4.4.2", "dicom-parser": "1.8.21", "jpeg-lossless-decoder-js": "2.1.2", "pako": "2.1.0", "uuid": "9.0.1" }, "peerDependencies": { "@cornerstonejs/core": "4.14.4" } }, "sha512-cxw1tD2gLBZkiWhty23Pi4PlPzrug33cbwcYcQ4PbcH7/MvLGR5pRVeclpbbDpN6IwLb3D3UNY4+oUx520gQ0w=="],
|
"@cornerstonejs/dicom-image-loader": ["@cornerstonejs/dicom-image-loader@4.14.5", "", { "dependencies": { "@cornerstonejs/codec-charls": "1.2.3", "@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2", "@cornerstonejs/codec-openjpeg": "1.3.0", "@cornerstonejs/codec-openjph": "2.4.7", "comlink": "4.4.2", "dicom-parser": "1.8.21", "jpeg-lossless-decoder-js": "2.1.2", "pako": "2.1.0", "uuid": "9.0.1" }, "peerDependencies": { "@cornerstonejs/core": "4.14.5" } }, "sha512-fCcAraxsGcfwlwbzK2fznL5bhsAsGRYdugCvlugLQg7cYxXi90djIotRO1KFHmAMQ/SkeywR9BwqrorcCWaLiQ=="],
|
||||||
|
|
||||||
"@cornerstonejs/labelmap-interpolation": ["@cornerstonejs/labelmap-interpolation@4.14.4", "", { "dependencies": { "@itk-wasm/morphological-contour-interpolation": "1.1.0", "itk-wasm": "1.0.0-b.165" }, "peerDependencies": { "@cornerstonejs/core": "4.14.4", "@cornerstonejs/tools": "4.14.4", "@kitware/vtk.js": "34.15.1" } }, "sha512-0NK136qCyljm4LRiY5tE09VAGIKw1Ei7oFFL6g509exYzc4XgqKi6qfO8dR4m0m6WRFz/o1Na6w+KhO6umUpNw=="],
|
"@cornerstonejs/labelmap-interpolation": ["@cornerstonejs/labelmap-interpolation@4.14.5", "", { "dependencies": { "@itk-wasm/morphological-contour-interpolation": "1.1.0", "itk-wasm": "1.0.0-b.165" }, "peerDependencies": { "@cornerstonejs/core": "4.14.5", "@cornerstonejs/tools": "4.14.5", "@kitware/vtk.js": "34.15.1" } }, "sha512-P37hUjOn43mCwkIWTX0v+r0gQPTUj+c6efjkz/lqM0qAJ3KIu3EkZa9eGmUyBD9Y0Htxda20TifL8oo/qkveew=="],
|
||||||
|
|
||||||
"@cornerstonejs/polymorphic-segmentation": ["@cornerstonejs/polymorphic-segmentation@4.14.4", "", { "dependencies": { "@icr/polyseg-wasm": "0.4.0" }, "peerDependencies": { "@cornerstonejs/core": "4.14.4", "@cornerstonejs/tools": "4.14.4", "@kitware/vtk.js": "34.15.1" } }, "sha512-RJBtqair3EX09K5lRgPGkF5qVNLb5ArtvSZCz/TZ52xMmaUww8yKeXbuqawUQwj9iAdQRlyCfrlfhNpwHeYybA=="],
|
"@cornerstonejs/polymorphic-segmentation": ["@cornerstonejs/polymorphic-segmentation@4.14.5", "", { "dependencies": { "@icr/polyseg-wasm": "0.4.0" }, "peerDependencies": { "@cornerstonejs/core": "4.14.5", "@cornerstonejs/tools": "4.14.5", "@kitware/vtk.js": "34.15.1" } }, "sha512-q5y5+uTW55FSbeG1tQZ3oPbiZqA+H7i6uopGtaXCqcwxXxzDj5SGb6RGh2fdI96osyCpi+g5YSCob31fWUtq2A=="],
|
||||||
|
|
||||||
"@cornerstonejs/tools": ["@cornerstonejs/tools@4.14.4", "", { "dependencies": { "@types/offscreencanvas": "2019.7.3", "comlink": "4.4.2", "lodash.get": "4.4.2" }, "peerDependencies": { "@cornerstonejs/core": "4.14.4", "@kitware/vtk.js": "34.15.1", "@types/d3-array": "3.2.1", "@types/d3-interpolate": "3.0.4", "d3-array": "3.2.4", "d3-interpolate": "3.0.1", "gl-matrix": "3.4.3" } }, "sha512-Ej4lnOiDgGdUmf8h0P3xpMMbnWbcrUHYjA0tCq1qa3MTBIrfU4dktiRdg5gJJqayfaUwV56DxSHMrx+VLN9N7A=="],
|
"@cornerstonejs/tools": ["@cornerstonejs/tools@4.14.5", "", { "dependencies": { "@types/offscreencanvas": "2019.7.3", "comlink": "4.4.2", "lodash.get": "4.4.2" }, "peerDependencies": { "@cornerstonejs/core": "4.14.5", "@kitware/vtk.js": "34.15.1", "@types/d3-array": "3.2.1", "@types/d3-interpolate": "3.0.4", "d3-array": "3.2.4", "d3-interpolate": "3.0.1", "gl-matrix": "3.4.3" } }, "sha512-Wcyy8C9UVA3tD6d6xWVpYgYVhrdrys4fa9BfNyqMnkTPMfWwCRU8+DPl7nMtxBvxlqQcX7Z0Cb8mUUBQwNzOHg=="],
|
||||||
|
|
||||||
"@cspotcode/source-map-support": ["@cspotcode/source-map-support@0.8.1", "", { "dependencies": { "@jridgewell/trace-mapping": "0.3.9" } }, "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw=="],
|
"@cspotcode/source-map-support": ["@cspotcode/source-map-support@0.8.1", "", { "dependencies": { "@jridgewell/trace-mapping": "0.3.9" } }, "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw=="],
|
||||||
|
|
||||||
|
|||||||
@ -46,8 +46,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
"react-color": "2.19.3"
|
"react-color": "2.19.3"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -46,8 +46,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
"react-color": "2.19.3"
|
"react-color": "2.19.3"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -46,9 +46,9 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"classnames": "2.5.1"
|
"classnames": "2.5.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -42,8 +42,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"classnames": "2.5.1"
|
"classnames": "2.5.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -40,7 +40,7 @@
|
|||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
||||||
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
||||||
"@cornerstonejs/codec-openjph": "2.4.7",
|
"@cornerstonejs/codec-openjph": "2.4.7",
|
||||||
"@cornerstonejs/dicom-image-loader": "4.14.4",
|
"@cornerstonejs/dicom-image-loader": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.109",
|
"@ohif/core": "3.12.0-beta.109",
|
||||||
"@ohif/ui": "3.12.0-beta.109",
|
"@ohif/ui": "3.12.0-beta.109",
|
||||||
"dcmjs": "0.45.0",
|
"dcmjs": "0.45.0",
|
||||||
@ -53,12 +53,12 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/adapters": "4.14.4",
|
"@cornerstonejs/adapters": "4.14.5",
|
||||||
"@cornerstonejs/ai": "4.14.4",
|
"@cornerstonejs/ai": "4.14.5",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/labelmap-interpolation": "4.14.4",
|
"@cornerstonejs/labelmap-interpolation": "4.14.5",
|
||||||
"@cornerstonejs/polymorphic-segmentation": "4.14.4",
|
"@cornerstonejs/polymorphic-segmentation": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@itk-wasm/morphological-contour-interpolation": "1.1.0",
|
"@itk-wasm/morphological-contour-interpolation": "1.1.0",
|
||||||
"@kitware/vtk.js": "34.15.1",
|
"@kitware/vtk.js": "34.15.1",
|
||||||
"html2canvas": "1.4.1",
|
"html2canvas": "1.4.1",
|
||||||
|
|||||||
@ -37,6 +37,7 @@ import { useLutPresentationStore } from '../../stores/useLutPresentationStore';
|
|||||||
import { usePositionPresentationStore } from '../../stores/usePositionPresentationStore';
|
import { usePositionPresentationStore } from '../../stores/usePositionPresentationStore';
|
||||||
import { useSynchronizersStore } from '../../stores/useSynchronizersStore';
|
import { useSynchronizersStore } from '../../stores/useSynchronizersStore';
|
||||||
import { useSegmentationPresentationStore } from '../../stores/useSegmentationPresentationStore';
|
import { useSegmentationPresentationStore } from '../../stores/useSegmentationPresentationStore';
|
||||||
|
import getClosestOrientationFromIOP from '../../utils/isReferenceViewable';
|
||||||
|
|
||||||
const EVENTS = {
|
const EVENTS = {
|
||||||
VIEWPORT_DATA_CHANGED: 'event::cornerstoneViewportService:viewportDataChanged',
|
VIEWPORT_DATA_CHANGED: 'event::cornerstoneViewportService:viewportDataChanged',
|
||||||
@ -634,42 +635,84 @@ class CornerstoneViewportService extends PubSubService implements IViewportServi
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Figures out which viewport to update when the viewport type needs to change.
|
* Figures out which viewport to update when the viewport type needs to change.
|
||||||
* This may not be the active viewport if there is already a viewport showing
|
* Orchestrates the search strategies in order of preference.
|
||||||
* the display set, but in the wrong orientation.
|
|
||||||
*
|
|
||||||
* The viewport will need to update the viewport type and/or display set to
|
|
||||||
* display the resulting data.
|
|
||||||
*
|
|
||||||
* The first choice will be a viewport already showing the correct display set,
|
|
||||||
* but showing it as a stack.
|
|
||||||
*
|
|
||||||
* Second choice is to see if there is a viewport already showing the right
|
|
||||||
* orientation for the image, but the wrong display set. This fixes the
|
|
||||||
* case where the user is in MPR and a viewport other than active should be
|
|
||||||
* the one to change to display the iamge.
|
|
||||||
*
|
|
||||||
* Final choice is to use the provide activeViewportId. This will cover
|
|
||||||
* changes to/from video and wsi viewports and other cases where no
|
|
||||||
* viewport is really even close to being able to display the measurement.
|
|
||||||
*/
|
*/
|
||||||
public findUpdateableViewportConfiguration(activeViewportId: string, measurement) {
|
public findUpdateableViewportConfiguration(activeViewportId: string, measurement) {
|
||||||
const { metadata, displaySetInstanceUID } = measurement;
|
const { metadata, displaySetInstanceUID } = measurement;
|
||||||
const { volumeId, referencedImageId } = metadata;
|
const { displaySetService } = this.servicesManager.services;
|
||||||
const { displaySetService, viewportGridService } = this.servicesManager.services;
|
|
||||||
const displaySet = displaySetService.getDisplaySetByUID(displaySetInstanceUID);
|
const displaySet = displaySetService.getDisplaySetByUID(displaySetInstanceUID);
|
||||||
|
|
||||||
|
// 1. Determine the target Viewport Type (Stack vs Volume)
|
||||||
|
const viewportType = this.determineTargetViewportType(displaySet, metadata);
|
||||||
|
|
||||||
|
// 2. Strategy: Find viewport already showing this volume
|
||||||
|
const volumeMatch = this.findViewportShowingVolume(
|
||||||
|
metadata,
|
||||||
|
displaySetInstanceUID,
|
||||||
|
viewportType
|
||||||
|
);
|
||||||
|
if (volumeMatch) {
|
||||||
|
return volumeMatch;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 3. Strategy: Find viewport with compatible orientation (even if different display set)
|
||||||
|
const compatibleMatch = this.findViewportConvertibleToVolume(
|
||||||
|
metadata,
|
||||||
|
displaySetInstanceUID,
|
||||||
|
viewportType
|
||||||
|
);
|
||||||
|
if (compatibleMatch) {
|
||||||
|
return compatibleMatch;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 4. Strategy: Find viewport with matching orientation via IOP
|
||||||
|
const orientationMatch = this.findViewportWithMatchingOrientation(
|
||||||
|
displaySetInstanceUID,
|
||||||
|
viewportType
|
||||||
|
);
|
||||||
|
if (orientationMatch) {
|
||||||
|
return orientationMatch;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 5. Fallback: Use the active viewport
|
||||||
|
return {
|
||||||
|
viewportId: activeViewportId,
|
||||||
|
displaySetInstanceUID,
|
||||||
|
viewportOptions: { viewportType },
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determines if the viewport should be what is specified in
|
||||||
|
* the viewportType of the display set, or stack if the display
|
||||||
|
* set isn't reconstructable and there is a referenced image id, otherwise
|
||||||
|
* volume.
|
||||||
|
*
|
||||||
|
* Expect there to be more rules in the future for different types of annotations/settings
|
||||||
|
* such as 3d annotations.
|
||||||
|
*/
|
||||||
|
public determineTargetViewportType(displaySet, metadata): string {
|
||||||
let { viewportType } = displaySet;
|
let { viewportType } = displaySet;
|
||||||
|
|
||||||
if (!viewportType) {
|
if (!viewportType) {
|
||||||
if (referencedImageId && !displaySet.isReconstructable) {
|
if (metadata.referencedImageId && !displaySet.isReconstructable) {
|
||||||
viewportType = csEnums.ViewportType.STACK;
|
viewportType = csEnums.ViewportType.STACK;
|
||||||
} else if (volumeId) {
|
} else if (metadata.volumeId) {
|
||||||
viewportType = 'volume';
|
viewportType = 'volume';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return viewportType;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Find viewports that could be updated to be volumes to show this view.
|
||||||
|
* Prefers a viewport already showing the right display set.
|
||||||
|
*/
|
||||||
|
public findViewportShowingVolume(metadata, displaySetInstanceUID, viewportType) {
|
||||||
|
if (!metadata.volumeId) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
// Find viewports that could be updated to be volumes to show this view
|
|
||||||
// That prefers a viewport already showing the right display set.
|
|
||||||
if (volumeId) {
|
|
||||||
for (const id of this.viewportsById.keys()) {
|
for (const id of this.viewportsById.keys()) {
|
||||||
const viewport = this.getCornerstoneViewport(id);
|
const viewport = this.getCornerstoneViewport(id);
|
||||||
if (viewport?.isReferenceViewable(metadata, { asVolume: true, withNavigation: true })) {
|
if (viewport?.isReferenceViewable(metadata, { asVolume: true, withNavigation: true })) {
|
||||||
@ -680,21 +723,30 @@ class CornerstoneViewportService extends PubSubService implements IViewportServi
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Find a viewport in the correct orientation showing a different display set
|
/**
|
||||||
// which could be used to display the annotation.
|
* Find a viewport that could be converted to a volume to show this annotation,
|
||||||
|
* already showing the right display set.
|
||||||
|
*/
|
||||||
|
public findViewportConvertibleToVolume(metadata, displaySetInstanceUID, viewportType) {
|
||||||
|
const { viewportGridService } = this.servicesManager.services;
|
||||||
const altMetadata = { ...metadata, volumeId: null, referencedImageId: null };
|
const altMetadata = { ...metadata, volumeId: null, referencedImageId: null };
|
||||||
|
|
||||||
for (const id of this.viewportsById.keys()) {
|
for (const id of this.viewportsById.keys()) {
|
||||||
const viewport = this.getCornerstoneViewport(id);
|
const viewport = this.getCornerstoneViewport(id);
|
||||||
const viewportDisplaySetUID = viewportGridService.getDisplaySetsUIDsForViewport(id)?.[0];
|
const viewportDisplaySetUID = viewportGridService.getDisplaySetsUIDsForViewport(id)?.[0];
|
||||||
|
|
||||||
if (!viewportDisplaySetUID || !viewport) {
|
if (!viewportDisplaySetUID || !viewport) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
if (volumeId) {
|
|
||||||
|
if (metadata.volumeId) {
|
||||||
altMetadata.volumeId = viewportDisplaySetUID;
|
altMetadata.volumeId = viewportDisplaySetUID;
|
||||||
}
|
}
|
||||||
altMetadata.FrameOfReferenceUID = this._getFrameOfReferenceUID(viewportDisplaySetUID);
|
altMetadata.FrameOfReferenceUID = this._getFrameOfReferenceUID(viewportDisplaySetUID);
|
||||||
|
|
||||||
if (viewport.isReferenceViewable(altMetadata, { asVolume: true, withNavigation: true })) {
|
if (viewport.isReferenceViewable(altMetadata, { asVolume: true, withNavigation: true })) {
|
||||||
return {
|
return {
|
||||||
viewportId: id,
|
viewportId: id,
|
||||||
@ -703,14 +755,23 @@ class CornerstoneViewportService extends PubSubService implements IViewportServi
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
// Just display in the active viewport
|
/**
|
||||||
|
* Find a viewport with the closest orientation but on a different display set.
|
||||||
|
*/
|
||||||
|
public findViewportWithMatchingOrientation(metadata, displaySetInstanceUID, viewportType) {
|
||||||
|
const viewportAlignmentData = this.getViewportAlignmentData(metadata);
|
||||||
|
if (viewportAlignmentData?.length) {
|
||||||
return {
|
return {
|
||||||
viewportId: activeViewportId,
|
...viewportAlignmentData[0],
|
||||||
displaySetInstanceUID,
|
displaySetInstanceUID,
|
||||||
viewportOptions: { viewportType },
|
viewportOptions: { viewportType },
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Sets the image data for the given viewport.
|
* Sets the image data for the given viewport.
|
||||||
|
|||||||
@ -32,8 +32,8 @@
|
|||||||
"start": "yarn run dev"
|
"start": "yarn run dev"
|
||||||
},
|
},
|
||||||
"peerDependencies": {
|
"peerDependencies": {
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.109",
|
"@ohif/core": "3.12.0-beta.109",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.109",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.109",
|
||||||
"@ohif/extension-default": "3.12.0-beta.109",
|
"@ohif/extension-default": "3.12.0-beta.109",
|
||||||
|
|||||||
@ -42,8 +42,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.109",
|
"@ohif/core": "3.12.0-beta.109",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.109",
|
"@ohif/extension-cornerstone": "3.12.0-beta.109",
|
||||||
"@ohif/extension-default": "3.12.0-beta.109",
|
"@ohif/extension-default": "3.12.0-beta.109",
|
||||||
|
|||||||
@ -34,8 +34,8 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@babel/runtime": "7.28.2",
|
"@babel/runtime": "7.28.2",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/tools": "4.14.4",
|
"@cornerstonejs/tools": "4.14.5",
|
||||||
"@ohif/core": "3.12.0-beta.109",
|
"@ohif/core": "3.12.0-beta.109",
|
||||||
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.109",
|
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.109",
|
||||||
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.109",
|
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.109",
|
||||||
|
|||||||
@ -53,7 +53,7 @@
|
|||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
||||||
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
||||||
"@cornerstonejs/codec-openjph": "2.4.7",
|
"@cornerstonejs/codec-openjph": "2.4.7",
|
||||||
"@cornerstonejs/dicom-image-loader": "4.14.4",
|
"@cornerstonejs/dicom-image-loader": "4.14.5",
|
||||||
"@emotion/serialize": "1.3.3",
|
"@emotion/serialize": "1.3.3",
|
||||||
"@ohif/core": "3.12.0-beta.109",
|
"@ohif/core": "3.12.0-beta.109",
|
||||||
"@ohif/extension-cornerstone": "3.12.0-beta.109",
|
"@ohif/extension-cornerstone": "3.12.0-beta.109",
|
||||||
|
|||||||
@ -37,8 +37,8 @@
|
|||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
|
||||||
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
"@cornerstonejs/codec-openjpeg": "1.3.0",
|
||||||
"@cornerstonejs/codec-openjph": "2.4.7",
|
"@cornerstonejs/codec-openjph": "2.4.7",
|
||||||
"@cornerstonejs/core": "4.14.4",
|
"@cornerstonejs/core": "4.14.5",
|
||||||
"@cornerstonejs/dicom-image-loader": "4.14.4",
|
"@cornerstonejs/dicom-image-loader": "4.14.5",
|
||||||
"@ohif/ui": "3.12.0-beta.109",
|
"@ohif/ui": "3.12.0-beta.109",
|
||||||
"cornerstone-math": "0.1.9",
|
"cornerstone-math": "0.1.9",
|
||||||
"dicom-parser": "1.8.21"
|
"dicom-parser": "1.8.21"
|
||||||
|
|||||||
56
yarn.lock
56
yarn.lock
@ -1278,10 +1278,10 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
|
resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39"
|
||||||
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==
|
||||||
|
|
||||||
"@cornerstonejs/adapters@4.14.4":
|
"@cornerstonejs/adapters@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/adapters/-/adapters-4.14.4.tgz#ee7084f9da5acdae8a27c7f29276a4159e15de76"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/adapters/-/adapters-4.14.5.tgz#3f473bafc663add7cc4ba5c3e93a221454340f9b"
|
||||||
integrity sha512-4Xn30/01yjFK7YjiNBB0IOKzdUiD31AM3Yd45zLOsYzRv+UeIQNMWFJQpKOBGetP16Z5sfRJil2T1HOHDFPjJw==
|
integrity sha512-PA1w4RT+2FRoSRo+br2m+evB9MMJwcybgCUP2sLpD2Aj+2ZM/VyoIvraBz5ioUchqirRzwoVwx53YSfcg0RR5Q==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime-corejs2" "7.26.10"
|
"@babel/runtime-corejs2" "7.26.10"
|
||||||
buffer "6.0.3"
|
buffer "6.0.3"
|
||||||
@ -1289,10 +1289,10 @@
|
|||||||
gl-matrix "3.4.3"
|
gl-matrix "3.4.3"
|
||||||
ndarray "1.0.19"
|
ndarray "1.0.19"
|
||||||
|
|
||||||
"@cornerstonejs/ai@4.14.4":
|
"@cornerstonejs/ai@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/ai/-/ai-4.14.4.tgz#a55a2a36f0067da1f402443db8f53d4f09d57f3b"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/ai/-/ai-4.14.5.tgz#97385d959ce802d15cae604be75d98819abd3c19"
|
||||||
integrity sha512-DyMaElHNeS2KltJzfb0v3Ox0A9ns75Ubh7E9Bs3SKPTFNSGkIyP7ysz05LaJ1D+HkpDFw8Uo9Uadky2na/5sDQ==
|
integrity sha512-l5fLdtwgU0HqJ12dzO2CJlNqZKAQVSIbt0n70HodrijPLlgph+43JEXyTiDLcl9czHJSA9EJoQ8y+0y3irkCGw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@babel/runtime-corejs2" "7.26.10"
|
"@babel/runtime-corejs2" "7.26.10"
|
||||||
buffer "6.0.3"
|
buffer "6.0.3"
|
||||||
@ -1328,20 +1328,20 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/codec-openjph/-/codec-openjph-2.4.7.tgz#784394d05d8cf735640e9c3baa206535ee8e0376"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/codec-openjph/-/codec-openjph-2.4.7.tgz#784394d05d8cf735640e9c3baa206535ee8e0376"
|
||||||
integrity sha512-qvP4q4JDib7mi9r7LqKOwqz7YZ8gjtDX4ZCezeYf8+eb7MBXCz5uXAMeVF3yz9Axw4XiIMdB/pqXkm8tqCl13w==
|
integrity sha512-qvP4q4JDib7mi9r7LqKOwqz7YZ8gjtDX4ZCezeYf8+eb7MBXCz5uXAMeVF3yz9Axw4XiIMdB/pqXkm8tqCl13w==
|
||||||
|
|
||||||
"@cornerstonejs/core@4.14.4":
|
"@cornerstonejs/core@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/core/-/core-4.14.4.tgz#08c2b50c45f22698e052244a682a43f0e1c5c244"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/core/-/core-4.14.5.tgz#8fd74a8851ca369ad2beeab542d27007e2a05b6d"
|
||||||
integrity sha512-KNd648mwqzNqniRONyp2QkOpi1UMnDtDfUdJRLpbJKVdNzNkDG+nq3uNrWG8+YBWyeunUIB3ydrCHnKmxVs1RQ==
|
integrity sha512-GZOQpkbbb1ocZyApF3SB1Nd1zn0f/BgkInuLu/ovCPjjft+sobzomr/sKZP0OA+5hdymjghI+jOZrZNAwgFezw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@kitware/vtk.js" "34.15.1"
|
"@kitware/vtk.js" "34.15.1"
|
||||||
comlink "4.4.2"
|
comlink "4.4.2"
|
||||||
gl-matrix "3.4.3"
|
gl-matrix "3.4.3"
|
||||||
loglevel "1.9.2"
|
loglevel "1.9.2"
|
||||||
|
|
||||||
"@cornerstonejs/dicom-image-loader@4.14.4":
|
"@cornerstonejs/dicom-image-loader@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/dicom-image-loader/-/dicom-image-loader-4.14.4.tgz#f3df2ea31a8b527de47bce445f543609fb56af0c"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/dicom-image-loader/-/dicom-image-loader-4.14.5.tgz#f2ffa77f57819091a2ee1dbd4507de017cb336dc"
|
||||||
integrity sha512-cxw1tD2gLBZkiWhty23Pi4PlPzrug33cbwcYcQ4PbcH7/MvLGR5pRVeclpbbDpN6IwLb3D3UNY4+oUx520gQ0w==
|
integrity sha512-fCcAraxsGcfwlwbzK2fznL5bhsAsGRYdugCvlugLQg7cYxXi90djIotRO1KFHmAMQ/SkeywR9BwqrorcCWaLiQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@cornerstonejs/codec-charls" "1.2.3"
|
"@cornerstonejs/codec-charls" "1.2.3"
|
||||||
"@cornerstonejs/codec-libjpeg-turbo-8bit" "1.2.2"
|
"@cornerstonejs/codec-libjpeg-turbo-8bit" "1.2.2"
|
||||||
@ -1353,25 +1353,25 @@
|
|||||||
pako "2.1.0"
|
pako "2.1.0"
|
||||||
uuid "9.0.1"
|
uuid "9.0.1"
|
||||||
|
|
||||||
"@cornerstonejs/labelmap-interpolation@4.14.4":
|
"@cornerstonejs/labelmap-interpolation@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/labelmap-interpolation/-/labelmap-interpolation-4.14.4.tgz#aa24b44fe450905145c27045b27be3b0eb9b975b"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/labelmap-interpolation/-/labelmap-interpolation-4.14.5.tgz#d1c4bcaf6d43be3d4557d782f2c419acaadac167"
|
||||||
integrity sha512-0NK136qCyljm4LRiY5tE09VAGIKw1Ei7oFFL6g509exYzc4XgqKi6qfO8dR4m0m6WRFz/o1Na6w+KhO6umUpNw==
|
integrity sha512-P37hUjOn43mCwkIWTX0v+r0gQPTUj+c6efjkz/lqM0qAJ3KIu3EkZa9eGmUyBD9Y0Htxda20TifL8oo/qkveew==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@itk-wasm/morphological-contour-interpolation" "1.1.0"
|
"@itk-wasm/morphological-contour-interpolation" "1.1.0"
|
||||||
itk-wasm "1.0.0-b.165"
|
itk-wasm "1.0.0-b.165"
|
||||||
|
|
||||||
"@cornerstonejs/polymorphic-segmentation@4.14.4":
|
"@cornerstonejs/polymorphic-segmentation@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/polymorphic-segmentation/-/polymorphic-segmentation-4.14.4.tgz#a0aa1d45b44b4932fc8b4e974e7d8a66b40a53cd"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/polymorphic-segmentation/-/polymorphic-segmentation-4.14.5.tgz#20dafd9c37f3cf7b7cd81c29c9ac3e4de403a86c"
|
||||||
integrity sha512-RJBtqair3EX09K5lRgPGkF5qVNLb5ArtvSZCz/TZ52xMmaUww8yKeXbuqawUQwj9iAdQRlyCfrlfhNpwHeYybA==
|
integrity sha512-q5y5+uTW55FSbeG1tQZ3oPbiZqA+H7i6uopGtaXCqcwxXxzDj5SGb6RGh2fdI96osyCpi+g5YSCob31fWUtq2A==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@icr/polyseg-wasm" "0.4.0"
|
"@icr/polyseg-wasm" "0.4.0"
|
||||||
|
|
||||||
"@cornerstonejs/tools@4.14.4":
|
"@cornerstonejs/tools@4.14.5":
|
||||||
version "4.14.4"
|
version "4.14.5"
|
||||||
resolved "https://registry.yarnpkg.com/@cornerstonejs/tools/-/tools-4.14.4.tgz#eb353f96e472dc264de2229fd56bc5725496da38"
|
resolved "https://registry.yarnpkg.com/@cornerstonejs/tools/-/tools-4.14.5.tgz#813a3a110ad7098d5fee770242fbc4d6601e16a4"
|
||||||
integrity sha512-Ej4lnOiDgGdUmf8h0P3xpMMbnWbcrUHYjA0tCq1qa3MTBIrfU4dktiRdg5gJJqayfaUwV56DxSHMrx+VLN9N7A==
|
integrity sha512-Wcyy8C9UVA3tD6d6xWVpYgYVhrdrys4fa9BfNyqMnkTPMfWwCRU8+DPl7nMtxBvxlqQcX7Z0Cb8mUUBQwNzOHg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/offscreencanvas" "2019.7.3"
|
"@types/offscreencanvas" "2019.7.3"
|
||||||
comlink "4.4.2"
|
comlink "4.4.2"
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user