diff --git a/bun.lock b/bun.lock index e6f8ee0c1..2e2df38c5 100644 --- a/bun.lock +++ b/bun.lock @@ -33,7 +33,7 @@ }, "addOns/externals/devDependencies": { "name": "@externals/devDependencies", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "@kitware/vtk.js": "32.12.0", @@ -121,21 +121,21 @@ }, "addOns/externals/dicom-microscopy-viewer": { "name": "@externals/dicom-microscopy-viewer", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "dicom-microscopy-viewer": "^0.46.1", }, }, "extensions/cornerstone": { "name": "@ohif/extension-cornerstone", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/labelmap-interpolation": "^3.7.1", - "@cornerstonejs/polymorphic-segmentation": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/labelmap-interpolation": "^3.7.5", + "@cornerstonejs/polymorphic-segmentation": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", "@itk-wasm/morphological-contour-interpolation": "1.1.0", "@kitware/vtk.js": "32.12.0", "html2canvas": "^1.4.1", @@ -152,9 +152,9 @@ "@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2", "@cornerstonejs/codec-openjpeg": "^1.2.4", "@cornerstonejs/codec-openjph": "^2.4.5", - "@cornerstonejs/dicom-image-loader": "^3.7.1", - "@ohif/core": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@cornerstonejs/dicom-image-loader": "^3.7.5", + "@ohif/core": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", "dicom-parser": "^1.8.21", "hammerjs": "^2.0.8", @@ -166,19 +166,19 @@ }, "extensions/cornerstone-dicom-pmap": { "name": "@ohif/extension-cornerstone-dicom-pmap", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", "@kitware/vtk.js": "32.12.0", "react-color": "^2.19.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", "prop-types": "^15.6.2", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -189,16 +189,16 @@ }, "extensions/cornerstone-dicom-rt": { "name": "@ohif/extension-cornerstone-dicom-rt", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "react-color": "^2.19.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", "prop-types": "^15.6.2", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -209,19 +209,19 @@ }, "extensions/cornerstone-dicom-seg": { "name": "@ohif/extension-cornerstone-dicom-seg", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", "@kitware/vtk.js": "32.12.0", "react-color": "^2.19.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", "prop-types": "^15.6.2", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -232,19 +232,19 @@ }, "extensions/cornerstone-dicom-sr": { "name": "@ohif/extension-cornerstone-dicom-sr", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", "classnames": "^2.3.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-measurement-tracking": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-measurement-tracking": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", "dicom-parser": "^1.8.9", "hammerjs": "^2.0.8", @@ -254,19 +254,19 @@ }, "extensions/cornerstone-dynamic-volume": { "name": "@ohif/extension-cornerstone-dynamic-volume", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", "classnames": "^2.3.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", "dicom-parser": "^1.8.21", "hammerjs": "^2.0.8", @@ -276,7 +276,7 @@ }, "extensions/default": { "name": "@ohif/extension-default", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "@cornerstonejs/calculate-suv": "^1.1.0", @@ -284,8 +284,8 @@ "lodash.uniqby": "^4.7.0", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", "dcmjs": "*", "dicomweb-client": "^0.10.4", "prop-types": "^15.6.2", @@ -299,7 +299,7 @@ }, "extensions/dicom-microscopy": { "name": "@ohif/extension-dicom-microscopy", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "@cornerstonejs/codec-charls": "^1.2.3", @@ -310,10 +310,10 @@ "mathjs": "^12.4.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "prop-types": "^15.6.2", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -324,14 +324,14 @@ }, "extensions/dicom-pdf": { "name": "@ohif/extension-dicom-pdf", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "classnames": "^2.3.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", "dicom-parser": "^1.8.9", "hammerjs": "^2.0.8", @@ -341,14 +341,14 @@ }, "extensions/dicom-video": { "name": "@ohif/extension-dicom-video", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "classnames": "^2.3.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", "dicom-parser": "^1.8.9", "hammerjs": "^2.0.8", @@ -358,20 +358,20 @@ }, "extensions/measurement-tracking": { "name": "@ohif/extension-measurement-tracking", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/ui": "3.10.0-beta.130", "@xstate/react": "^3.2.2", "xstate": "^4.10.0", }, "peerDependencies": { - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "classnames": "^2.3.2", "dcmjs": "*", "lodash.debounce": "^4.0.8", @@ -384,14 +384,14 @@ }, "extensions/test-extension": { "name": "@ohif/extension-test", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "classnames": "^2.3.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "0.38.0", "dicom-parser": "^1.8.9", "hammerjs": "^2.0.8", @@ -401,14 +401,14 @@ }, "extensions/tmtv": { "name": "@ohif/extension-tmtv", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "classnames": "^2.3.2", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", "dicom-parser": "^1.8.9", "hammerjs": "^2.0.8", @@ -418,7 +418,7 @@ }, "modes/basic-dev-mode": { "name": "@ohif/mode-basic-dev-mode", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next": "^17.0.3", @@ -428,17 +428,17 @@ "webpack-merge": "^5.7.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-dicom-pdf": "3.10.0-beta.128", - "@ohif/extension-dicom-video": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-dicom-pdf": "3.10.0-beta.130", + "@ohif/extension-dicom-video": "3.10.0-beta.130", }, }, "modes/basic-test-mode": { "name": "@ohif/mode-test", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next": "^17.0.3", @@ -448,19 +448,19 @@ "webpack-merge": "^5.7.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-dicom-pdf": "3.10.0-beta.128", - "@ohif/extension-dicom-video": "3.10.0-beta.128", - "@ohif/extension-measurement-tracking": "3.10.0-beta.128", - "@ohif/extension-test": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-dicom-pdf": "3.10.0-beta.130", + "@ohif/extension-dicom-video": "3.10.0-beta.130", + "@ohif/extension-measurement-tracking": "3.10.0-beta.130", + "@ohif/extension-test": "3.10.0-beta.130", }, }, "modes/longitudinal": { "name": "@ohif/mode-longitudinal", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next": "^17.0.3", @@ -470,32 +470,32 @@ "webpack-merge": "^5.7.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-rt": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-dicom-pdf": "3.10.0-beta.128", - "@ohif/extension-dicom-video": "3.10.0-beta.128", - "@ohif/extension-measurement-tracking": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-rt": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-dicom-pdf": "3.10.0-beta.130", + "@ohif/extension-dicom-video": "3.10.0-beta.130", + "@ohif/extension-measurement-tracking": "3.10.0-beta.130", }, }, "modes/microscopy": { "name": "@ohif/mode-microscopy", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next": "^17.0.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-dicom-microscopy": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-dicom-microscopy": "3.10.0-beta.130", }, }, "modes/preclinical-4d": { "name": "@ohif/mode-preclinical-4d", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", }, @@ -504,17 +504,17 @@ "webpack-merge": "^5.7.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dynamic-volume": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-tmtv": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dynamic-volume": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-tmtv": "3.10.0-beta.130", }, }, "modes/segmentation": { "name": "@ohif/mode-segmentation", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next": "^17.0.3", @@ -546,19 +546,19 @@ "webpack-merge": "^5.7.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-rt": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-dicom-pdf": "3.10.0-beta.128", - "@ohif/extension-dicom-video": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-rt": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-dicom-pdf": "3.10.0-beta.130", + "@ohif/extension-dicom-video": "3.10.0-beta.130", }, }, "modes/tmtv": { "name": "@ohif/mode-tmtv", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next": "^17.0.3", @@ -568,43 +568,43 @@ "webpack-merge": "^5.7.3", }, "peerDependencies": { - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-dicom-pdf": "3.10.0-beta.128", - "@ohif/extension-dicom-video": "3.10.0-beta.128", - "@ohif/extension-measurement-tracking": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-dicom-pdf": "3.10.0-beta.130", + "@ohif/extension-dicom-video": "3.10.0-beta.130", + "@ohif/extension-measurement-tracking": "3.10.0-beta.130", }, }, "platform/app": { "name": "@ohif/app", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "@cornerstonejs/codec-charls": "^1.2.3", "@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2", "@cornerstonejs/codec-openjpeg": "^1.2.4", "@cornerstonejs/codec-openjph": "^2.4.5", - "@cornerstonejs/dicom-image-loader": "^3.7.1", + "@cornerstonejs/dicom-image-loader": "^3.7.5", "@emotion/serialize": "^1.1.3", - "@ohif/core": "3.10.0-beta.128", - "@ohif/extension-cornerstone": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-rt": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.128", - "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.128", - "@ohif/extension-default": "3.10.0-beta.128", - "@ohif/extension-dicom-microscopy": "3.10.0-beta.128", - "@ohif/extension-dicom-pdf": "3.10.0-beta.128", - "@ohif/extension-dicom-video": "3.10.0-beta.128", - "@ohif/extension-test": "3.10.0-beta.128", - "@ohif/i18n": "3.10.0-beta.128", - "@ohif/mode-basic-dev-mode": "3.10.0-beta.128", - "@ohif/mode-longitudinal": "3.10.0-beta.128", - "@ohif/mode-microscopy": "3.10.0-beta.128", - "@ohif/mode-test": "3.10.0-beta.128", - "@ohif/ui": "3.10.0-beta.128", - "@ohif/ui-next": "3.10.0-beta.128", + "@ohif/core": "3.10.0-beta.130", + "@ohif/extension-cornerstone": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-rt": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-seg": "3.10.0-beta.130", + "@ohif/extension-cornerstone-dicom-sr": "3.10.0-beta.130", + "@ohif/extension-default": "3.10.0-beta.130", + "@ohif/extension-dicom-microscopy": "3.10.0-beta.130", + "@ohif/extension-dicom-pdf": "3.10.0-beta.130", + "@ohif/extension-dicom-video": "3.10.0-beta.130", + "@ohif/extension-test": "3.10.0-beta.130", + "@ohif/i18n": "3.10.0-beta.130", + "@ohif/mode-basic-dev-mode": "3.10.0-beta.130", + "@ohif/mode-longitudinal": "3.10.0-beta.130", + "@ohif/mode-microscopy": "3.10.0-beta.130", + "@ohif/mode-test": "3.10.0-beta.130", + "@ohif/ui": "3.10.0-beta.130", + "@ohif/ui-next": "3.10.0-beta.130", "@svgr/webpack": "^8.1.0", "@types/react": "^18.3.3", "classnames": "^2.3.2", @@ -645,7 +645,7 @@ }, "platform/cli": { "name": "@ohif/cli", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "bin": { "ohif-cli": "src/index.js", }, @@ -669,7 +669,7 @@ }, "platform/core": { "name": "@ohif/core", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "dcmjs": "*", @@ -694,15 +694,15 @@ "@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2", "@cornerstonejs/codec-openjpeg": "^1.2.4", "@cornerstonejs/codec-openjph": "^2.4.5", - "@cornerstonejs/dicom-image-loader": "^3.7.1", - "@ohif/ui": "3.10.0-beta.128", + "@cornerstonejs/dicom-image-loader": "^3.7.5", + "@ohif/ui": "3.10.0-beta.130", "cornerstone-math": "0.1.9", "dicom-parser": "^1.8.21", }, }, "platform/i18n": { "name": "@ohif/i18n", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@babel/runtime": "^7.20.13", "i18next-locize-backend": "^2.0.0", @@ -727,7 +727,7 @@ }, "platform/ui": { "name": "@ohif/ui", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@testing-library/react": "^13.1.0", "browser-detect": "^0.2.28", @@ -787,7 +787,7 @@ }, "platform/ui-next": { "name": "@ohif/ui-next", - "version": "3.10.0-beta.128", + "version": "3.10.0-beta.130", "dependencies": { "@radix-ui/react-accordion": "^1.2.0", "@radix-ui/react-checkbox": "^1.1.1", @@ -1095,7 +1095,7 @@ "@colors/colors": ["@colors/colors@1.5.0", "", {}, "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ=="], - "@cornerstonejs/adapters": ["@cornerstonejs/adapters@3.7.1", "", { "dependencies": { "@babel/runtime-corejs2": "^7.17.8", "buffer": "^6.0.3", "dcmjs": "^0.29.8", "gl-matrix": "^3.4.3", "ndarray": "^1.0.19" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.1", "@cornerstonejs/tools": "^3.7.1" } }, "sha512-aREkDwxmoIxBT4xJs00i7ghI9kCdKa7hmmDdCxw54lD0kI6aGLAHrwIeeYl+C19suyNH18duwuy1E/GYLfg5pA=="], + "@cornerstonejs/adapters": ["@cornerstonejs/adapters@3.7.5", "", { "dependencies": { "@babel/runtime-corejs2": "^7.17.8", "buffer": "^6.0.3", "dcmjs": "^0.29.8", "gl-matrix": "^3.4.3", "ndarray": "^1.0.19" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.5", "@cornerstonejs/tools": "^3.7.5" } }, "sha512-Pdrlx1dYVe/nakC7geec8QOQwqi4hJaAgTpN18y+/a7Vk3wpzj+/q+vf03lt4BhUygAu9+3t5gAUDm0kzXq02g=="], "@cornerstonejs/calculate-suv": ["@cornerstonejs/calculate-suv@1.1.0", "", {}, "sha512-Q9XraiDJif9aMFArD2iEuDO/HXbcRVCqB7KfaHgDrdTTjgDFovS91Psbdim7crypRSvE6dh/+HKeFNHdvNkA6w=="], @@ -1107,15 +1107,15 @@ "@cornerstonejs/codec-openjph": ["@cornerstonejs/codec-openjph@2.4.7", "", {}, "sha512-qvP4q4JDib7mi9r7LqKOwqz7YZ8gjtDX4ZCezeYf8+eb7MBXCz5uXAMeVF3yz9Axw4XiIMdB/pqXkm8tqCl13w=="], - "@cornerstonejs/core": ["@cornerstonejs/core@3.7.1", "", { "dependencies": { "@kitware/vtk.js": "32.12.1", "comlink": "^4.4.1", "gl-matrix": "^3.4.3", "loglevel": "^1.9.2" } }, "sha512-+I6rCCFW+Am5GRJoaFdl2mD8R+Z0UXRZOBUE7hfTs0F6S8+45nOrlUccIK0UJdRq3bUc+h+G2tHW/i04FFs/mg=="], + "@cornerstonejs/core": ["@cornerstonejs/core@3.7.5", "", { "dependencies": { "@kitware/vtk.js": "32.12.1", "comlink": "^4.4.1", "gl-matrix": "^3.4.3", "loglevel": "^1.9.2" } }, "sha512-AMzZrl4nTTcoZejI3qomi5f9LNPr8QkHGconRnNe7aEjuUHUiT9uwX3ieoltJ2IDNmmqhK3wVzJ19EKVqfuESQ=="], - "@cornerstonejs/dicom-image-loader": ["@cornerstonejs/dicom-image-loader@3.7.1", "", { "dependencies": { "@cornerstonejs/codec-charls": "^1.2.3", "@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2", "@cornerstonejs/codec-openjpeg": "^1.2.2", "@cornerstonejs/codec-openjph": "^2.4.5", "comlink": "^4.4.1", "dicom-parser": "^1.8.9", "jpeg-lossless-decoder-js": "^2.1.0", "pako": "^2.0.4", "uuid": "^9.0.0" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.1" } }, "sha512-mfbZ4PjLIGRh9CaMGxw0I4skI0y3sG+z0SlH40m/cwWvfKj18T5iqoLVSovSnYhqCcKdSyljM/ZTAj1t0vfRVQ=="], + "@cornerstonejs/dicom-image-loader": ["@cornerstonejs/dicom-image-loader@3.7.5", "", { "dependencies": { "@cornerstonejs/codec-charls": "^1.2.3", "@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2", "@cornerstonejs/codec-openjpeg": "^1.2.2", "@cornerstonejs/codec-openjph": "^2.4.5", "comlink": "^4.4.1", "dicom-parser": "^1.8.9", "jpeg-lossless-decoder-js": "^2.1.0", "pako": "^2.0.4", "uuid": "^9.0.0" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.5" } }, "sha512-bDm4hx9NagD7tTU//ls+Z+U8duYgunOfLsAiU6SvNfB2vEINOSHVSnz7pAcnzfnE21ObJYnZnmH5aa8/sa/xCg=="], - "@cornerstonejs/labelmap-interpolation": ["@cornerstonejs/labelmap-interpolation@3.7.1", "", { "dependencies": { "@itk-wasm/morphological-contour-interpolation": "1.1.0", "itk-wasm": "1.0.0-b.165" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.1", "@cornerstonejs/tools": "^3.7.1", "@kitware/vtk.js": "32.12.1" } }, "sha512-D9VwRPeWlIMfbGD9e5R+zPQLiqKmP0sz3kMN6pxEiDbHpJ6QirtgyJyzZRI3+Z68zL2mxUDNLbfw0GbYm9fhEg=="], + "@cornerstonejs/labelmap-interpolation": ["@cornerstonejs/labelmap-interpolation@3.7.5", "", { "dependencies": { "@itk-wasm/morphological-contour-interpolation": "1.1.0", "itk-wasm": "1.0.0-b.165" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.5", "@cornerstonejs/tools": "^3.7.5", "@kitware/vtk.js": "32.12.1" } }, "sha512-mIdT8qzQpps1my6daRMAQDejhAAj6QGvkZyU4vbcqIHqqEnWezWFdKNWIlZhm6MX52Vy3Jnl7qBlQ8JtPd+5gQ=="], - "@cornerstonejs/polymorphic-segmentation": ["@cornerstonejs/polymorphic-segmentation@3.7.1", "", { "dependencies": { "@icr/polyseg-wasm": "0.4.0" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.1", "@cornerstonejs/tools": "^3.7.1", "@kitware/vtk.js": "32.12.1" } }, "sha512-CRmSSgngzQqfBIiOmVFLzcM9lmDw2ueH/Co44/RDuo437J8mTG3QfDBmKoRt0VhlkiWy+C/cVMKqHwZ63Xl7Og=="], + "@cornerstonejs/polymorphic-segmentation": ["@cornerstonejs/polymorphic-segmentation@3.7.5", "", { "dependencies": { "@icr/polyseg-wasm": "0.4.0" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.5", "@cornerstonejs/tools": "^3.7.5", "@kitware/vtk.js": "32.12.1" } }, "sha512-+4T5yKjfd0b4dGqy/Tj/V5biuQgjvJVkUv7qe5xU8L/0f8irvr4XtfYoeX9Hoo/iFrYKxdI5LrC35rsKWJttpQ=="], - "@cornerstonejs/tools": ["@cornerstonejs/tools@3.7.1", "", { "dependencies": { "@types/offscreencanvas": "2019.7.3", "comlink": "^4.4.1", "lodash.get": "^4.4.2" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.1", "@kitware/vtk.js": "32.12.1", "@types/d3-array": "^3.0.4", "@types/d3-interpolate": "^3.0.1", "d3-array": "^3.2.3", "d3-interpolate": "^3.0.1", "gl-matrix": "^3.4.3" } }, "sha512-OVLfmGmQBuR9Ig1ZKy35EjwRLv6zNs6q4hrXf9EoIysMSH/mYB+V4n9/FQsqnlVh4IN0DuBqkwoUmBaGSPkspQ=="], + "@cornerstonejs/tools": ["@cornerstonejs/tools@3.7.5", "", { "dependencies": { "@types/offscreencanvas": "2019.7.3", "comlink": "^4.4.1", "lodash.get": "^4.4.2" }, "peerDependencies": { "@cornerstonejs/core": "^3.7.5", "@kitware/vtk.js": "32.12.1", "@types/d3-array": "^3.0.4", "@types/d3-interpolate": "^3.0.1", "d3-array": "^3.2.3", "d3-interpolate": "^3.0.1", "gl-matrix": "^3.4.3" } }, "sha512-9GcUI0meHqsO8uzePwv7k99Knr1ta6Q0OCb5AmTKGP6u6ZSEAi1aj2pBSoFZPlG/2vhcXh2NYHkNmeLTYlTP1g=="], "@csstools/postcss-cascade-layers": ["@csstools/postcss-cascade-layers@1.1.1", "", { "dependencies": { "@csstools/selector-specificity": "^2.0.2", "postcss-selector-parser": "^6.0.10" }, "peerDependencies": { "postcss": "^8.2" } }, "sha512-+KdYrpKC5TgomQr2DlZF4lDEpHcoxnj5IGddYYfBWJAKfj1JtuHUIqMa+E1pJJ+z3kvDViWMqyqPlG4Ja7amQA=="], diff --git a/extensions/cornerstone-dicom-pmap/package.json b/extensions/cornerstone-dicom-pmap/package.json index 25ee7b6c0..095d663e8 100644 --- a/extensions/cornerstone-dicom-pmap/package.json +++ b/extensions/cornerstone-dicom-pmap/package.json @@ -46,8 +46,8 @@ }, "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", "@kitware/vtk.js": "32.12.0", "react-color": "^2.19.3" } diff --git a/extensions/cornerstone-dicom-seg/package.json b/extensions/cornerstone-dicom-seg/package.json index 3abdabc77..240f6886a 100644 --- a/extensions/cornerstone-dicom-seg/package.json +++ b/extensions/cornerstone-dicom-seg/package.json @@ -46,8 +46,8 @@ }, "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", "@kitware/vtk.js": "32.12.0", "react-color": "^2.19.3" } diff --git a/extensions/cornerstone-dicom-sr/package.json b/extensions/cornerstone-dicom-sr/package.json index 8f7332eec..c0fa93662 100644 --- a/extensions/cornerstone-dicom-sr/package.json +++ b/extensions/cornerstone-dicom-sr/package.json @@ -46,9 +46,9 @@ }, "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", "classnames": "^2.3.2" } } diff --git a/extensions/cornerstone-dynamic-volume/package.json b/extensions/cornerstone-dynamic-volume/package.json index c31915231..55884a9a8 100644 --- a/extensions/cornerstone-dynamic-volume/package.json +++ b/extensions/cornerstone-dynamic-volume/package.json @@ -42,8 +42,8 @@ }, "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", "classnames": "^2.3.2" } } diff --git a/extensions/cornerstone/package.json b/extensions/cornerstone/package.json index d48f24e23..5c06ac019 100644 --- a/extensions/cornerstone/package.json +++ b/extensions/cornerstone/package.json @@ -38,7 +38,7 @@ "@cornerstonejs/codec-libjpeg-turbo-8bit": "^1.2.2", "@cornerstonejs/codec-openjpeg": "^1.2.4", "@cornerstonejs/codec-openjph": "^2.4.5", - "@cornerstonejs/dicom-image-loader": "^3.7.1", + "@cornerstonejs/dicom-image-loader": "^3.7.5", "@ohif/core": "3.10.0-beta.130", "@ohif/ui": "3.10.0-beta.130", "dcmjs": "*", @@ -51,11 +51,11 @@ }, "dependencies": { "@babel/runtime": "^7.20.13", - "@cornerstonejs/adapters": "^3.7.1", - "@cornerstonejs/core": "^3.7.1", - "@cornerstonejs/labelmap-interpolation": "^3.7.1", - "@cornerstonejs/polymorphic-segmentation": "^3.7.1", - "@cornerstonejs/tools": "^3.7.1", + "@cornerstonejs/adapters": "^3.7.5", + "@cornerstonejs/core": "^3.7.5", + "@cornerstonejs/labelmap-interpolation": "^3.7.5", + "@cornerstonejs/polymorphic-segmentation": "^3.7.5", + "@cornerstonejs/tools": "^3.7.5", "@itk-wasm/morphological-contour-interpolation": "1.1.0", "@kitware/vtk.js": "32.12.0", "html2canvas": "^1.4.1", diff --git a/extensions/cornerstone/src/commandsModule.ts b/extensions/cornerstone/src/commandsModule.ts index 849335130..2e4558431 100644 --- a/extensions/cornerstone/src/commandsModule.ts +++ b/extensions/cornerstone/src/commandsModule.ts @@ -41,6 +41,23 @@ const toggleSyncFunctions = { voi: toggleVOISliceSync, }; +const getLabelmapTools = ({ toolGroupService }) => { + const labelmapTools = []; + const toolGroupIds = toolGroupService.getToolGroupIds(); + toolGroupIds.forEach(toolGroupId => { + const toolGroup = cornerstoneTools.ToolGroupManager.getToolGroup(toolGroupId); + const tools = toolGroup.getToolInstances(); + // tools is an object with toolName as the key and tool as the value + Object.keys(tools).forEach(toolName => { + const tool = tools[toolName]; + if (tool instanceof cornerstoneTools.LabelmapBaseTool) { + labelmapTools.push(tool); + } + }); + }); + return labelmapTools; +}; + function commandsModule({ servicesManager, commandsManager, @@ -57,6 +74,7 @@ function commandsModule({ colorbarService, hangingProtocolService, syncGroupService, + toolbarService, segmentationService, displaySetService, } = servicesManager.services as AppTypes.Services; @@ -1484,6 +1502,41 @@ function commandsModule({ redo: () => { DefaultHistoryMemo.redo(); }, + toggleSegmentPreviewEdit: ({ toggle }) => { + const labelmapTools = getLabelmapTools({ toolGroupService }); + labelmapTools.forEach(tool => { + tool.configuration = { + ...tool.configuration, + preview: { + ...tool.configuration.preview, + enabled: toggle, + }, + }; + }); + }, + toggleSegmentSelect: ({ toggle }) => { + const toolGroupIds = toolGroupService.getToolGroupIds(); + toolGroupIds.forEach(toolGroupId => { + const toolGroup = cornerstoneTools.ToolGroupManager.getToolGroup(toolGroupId); + if (toggle) { + toolGroup.setToolActive(cornerstoneTools.SegmentSelectTool.toolName); + } else { + toolGroup.setToolDisabled(cornerstoneTools.SegmentSelectTool.toolName); + } + }); + }, + acceptPreview: () => { + const labelmapTools = getLabelmapTools({ toolGroupService }); + labelmapTools.forEach(tool => { + tool.acceptPreview(); + }); + }, + rejectPreview: () => { + const labelmapTools = getLabelmapTools({ toolGroupService }); + labelmapTools.forEach(tool => { + tool.rejectPreview(); + }); + }, }; const definitions = { @@ -1755,6 +1808,10 @@ function commandsModule({ interpolateLabelmap: actions.interpolateLabelmap, runSegmentBidirectional: actions.runSegmentBidirectional, downloadCSVSegmentationReport: actions.downloadCSVSegmentationReport, + toggleSegmentPreviewEdit: actions.toggleSegmentPreviewEdit, + toggleSegmentSelect: actions.toggleSegmentSelect, + acceptPreview: actions.acceptPreview, + rejectPreview: actions.rejectPreview, }; return { diff --git a/extensions/cornerstone/src/customizations/segmentationPanelCustomization.tsx b/extensions/cornerstone/src/customizations/segmentationPanelCustomization.tsx index 23236f701..38c842fa3 100644 --- a/extensions/cornerstone/src/customizations/segmentationPanelCustomization.tsx +++ b/extensions/cornerstone/src/customizations/segmentationPanelCustomization.tsx @@ -1,5 +1,7 @@ import { CustomDropdownMenuContent } from './CustomDropdownMenuContent'; import { CustomSegmentStatisticsHeader } from './CustomSegmentStatisticsHeader'; +import React, { useState } from 'react'; +import { Switch } from '@ohif/ui-next'; export default function getSegmentationPanelCustomization({ commandsManager, servicesManager }) { return { @@ -30,5 +32,40 @@ export default function getSegmentationPanelCustomization({ commandsManager, ser volume: 'Volume', lesionGlycolysis: 'Lesion Glycolysis', }, + 'segmentationToolbox.config': () => { + // Get initial states based on current configuration + const [previewEdits, setPreviewEdits] = useState(false); + const [toggleSegmentEnabled, setToggleSegmentEnabled] = useState(false); + + const handlePreviewEditsChange = checked => { + setPreviewEdits(checked); + commandsManager.run('toggleSegmentPreviewEdit', { toggle: checked }); + }; + + const handleToggleSegmentEnabledChange = checked => { + setToggleSegmentEnabled(checked); + commandsManager.run('toggleSegmentSelect', { toggle: checked }); + }; + + return ( +