Compare commits

..
Author SHA1 Message Date
ohif-bot 8460409a62 chore(version): Update package versions [skip ci] 2026-06-17 16:10:51 +00:00
ohif-bot ea64ff7b89 chore(version): version.json [skip ci] 2026-06-17 16:10:43 +00:00
Joe Boccanfuso f5f086cd95 fix(security): Update dependencies to fix security vulnerabilities. Release 3.12.5 (#6086)
* Update playwright config to output html report and always include video.

* Output playwright html report to results zip.

* Fix MeasurementPanel.spec.ts to use new measurement row locator.
2026-06-17 12:04:45 -04:00
ohif-bot 1a8db3b8c6 chore(version): Update package versions [skip ci] 2026-06-05 12:56:28 +00:00
ohif-bot ac3ff44a56 chore(version): version.json [skip ci] 2026-06-05 12:56:20 +00:00
Joe Boccanfuso 62917c2142 fix(security): Update axios to fix security vulnerabilities. Release 3.12.4 (#6064) 2026-06-05 08:45:52 -04:00
ohif-bot c31db6513b chore(version): Update package versions [skip ci] 2026-05-27 14:55:54 +00:00
ohif-bot c1d9d23f78 chore(version): version.json [skip ci] 2026-05-27 14:55:44 +00:00
Joe Boccanfuso fb4441ba71 fix(security): Add tmp as a resolution to fix security vulnerability. Trigger release 3.12.3. (#6045) 2026-05-27 10:44:11 -04:00
ohif-bot db16341a4f chore(version): Update package versions [skip ci] 2026-05-18 13:39:27 +00:00
ohif-bot 0fcf3a9dc1 chore(version): version.json [skip ci] 2026-05-18 13:39:19 +00:00
Joe Boccanfuso 75a24a3393 fix(security): Update various dependencies to fix security vulnerabilities. Release 3.12.2 (#6024) 2026-05-18 09:32:40 -04:00
ohif-bot 104de8d833 chore(version): version.json [skip ci] 2026-05-08 18:51:36 +00:00
Alireza 647fd025cf fix(release): make publish-version.mjs idempotent for re-runs
Skip the peer-dep commit when nothing is staged and skip the lerna
version step when the workspace is already at the target version.
Allows the release pipeline to be re-triggered after a partial run.
2026-05-08 14:42:57 -04:00
Alireza 3fc8706126 chore(version): Update package versions [skip ci] 2026-05-08 14:37:54 -04:00
ohif-bot 539ff44f47 chore(version): version.json [skip ci] 2026-05-07 23:52:54 +00:00
Joe Boccanfuso 146897f216 chore: release 3.12.1 (#6003) 2026-05-07 19:45:13 -04:00
Joe Boccanfuso a264413124 fix(security): Patch axios security vulnerabilities. (#5997)
Patch axios security vulnerabilities.
2026-05-06 13:37:37 -04:00
Joe Boccanfuso 838f51957e fix(configuration): Harden dynamic datasource URL trust boundaries and credential handling. 3.12 (#5978) 2026-04-29 14:38:55 -04:00
Joe Boccanfuso bab20143fd fix(security): Update axios and protobufjs to fix security vulnerabilities. (#5975) 2026-04-23 14:15:16 -04:00
Joe Boccanfuso 946735bf90 fix(security):Update yarn.lock that was missed in PR #5937. (#5939) 2026-04-03 13:16:47 -04:00
Joe Boccanfuso a5be4c3dce fix(security): update dependencies to fix security vulnerabilities (#5937) 2026-04-02 18:06:35 -04:00
Joe Boccanfuso 171ea857cf fix(security): Bump flattened version to address CVE-2026-32141 for release 3.12 (#5898) 2026-03-13 15:25:55 -04:00
Joe Boccanfuso 9754fc1e92 fix(security): Bump tar version to address CVE-2026-31802 in release/3.12 (#5896) 2026-03-13 08:49:13 -04:00
Joe Boccanfuso 6772deb4c6 fix(security): Bump svgo and tar to fix vulnerabilities in release 3.12 (#5881) 2026-03-06 08:26:16 -05:00
Joe Boccanfuso 1d0a8744b2 fix(security): Address various security vulnerabilities in the release/3.12 branch (#5872) 2026-03-04 14:54:17 -05:00
Joe Boccanfuso 555c87f1c5 chore(security): Updates for running bun audit during CI and dependabot PR version update settings (#5836)
chore(security): Update circleci config to only run bun audit for lockfile changes.

Disabled all dependabot pull requests for bun and npm version updates.
2026-02-23 16:26:49 -05:00
Joe Boccanfuso 51d267e707 fix(security): CVE-2026-27212 and CVE-2026-26996 addressed for release/3.12 (#5831)
* fix(security):  CVE-2026-27212 patched.
Various dependency updates as a result of CVE-2026-26996.
Ultimately CVE-2026-26996 was ignored because it is only exposed in itk-wasm via CLI and OHIF's other use of minimatch is limited to build/dev environments.

* Switched to eslint 9.39.3 for compatibility with .eslintrc.json.
2026-02-23 14:51:42 -05:00
Joe Boccanfuso c5c18f9516 fix(security): Bump tar to 7.5.9 and lerna to 9.0.4 to fix CVE-2026-26960. (#5825)
* fix(security): Bump tar to 7.5.9 and lerna to 9.0.4 to fix CVE-2026-26960.
Bump sharp to 0.34.5 to fix tar-fs vulnerabilities.

* Update node version to 20.19.0 in circleci config. Needed for lerna and cypress tests.

* Now installing bun for cypress tests in circleci config.

* Use node version 20.19.0 in netlify config.
2026-02-18 16:52:57 -05:00
Joe Boccanfuso 213a0974bb chore(deps): bump webpack from 5.95.0 to 5.105.0 to address CVE-2025-68458 and CVE-2025-68157 (#5822) 2026-02-18 12:31:13 -05:00
0d882a425d fix: Better handle octet stream case (#5789) (#5804)
* Better handle octet stream case

* Use data source config stack options

* Use immutability helper

---------

Co-authored-by: Igor Octaviano <igoroctaviano@gmail.com>
Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
2026-02-13 12:04:05 -05:00
Joe Boccanfuso 49ea3ac82b chore(deps): bump diff to 5.2.2 to path CVE-2026-24001 (#5812) 2026-02-11 09:39:32 -05:00
Joe Boccanfuso 99736b6437 chore(deps): bump lodash and lodash-es from 4.17.21 to 4.17.23 to address CVE-2025-13465 (#5803) 2026-02-10 14:28:08 -05:00
Joe Boccanfuso 7fb67d2396 fix(security): Use a resolution for axios to address CVE-2026-25639. (#5794) 2026-02-09 16:44:12 -05:00
ohif-bot 04b121c1ba chore(version): Update package versions [skip ci] 2026-02-06 17:45:00 +00:00
ohif-bot 9782980a7a chore(version): version.json [skip ci] 2026-02-06 17:44:53 +00:00
Joe Boccanfuso 27b1afe040 chore: release 3.12.0 2026-02-06 10:03:53 -05:00
ohif-bot 891d6570c1 chore(version): Update package versions [skip ci] 2026-02-05 22:02:12 +00:00
ohif-bot 48f8e806c3 chore(version): version.json [skip ci] 2026-02-05 22:02:05 +00:00
Joe Boccanfuso 45739b31a2 fix(jump-to-contour-segment): For contours like those from RSTRUCTs, use generic jumpToSegmentCenter if a segment center is available. (#5785) 2026-02-05 16:57:15 -05:00
ohif-bot 54ff608605 chore(version): Update package versions [skip ci] 2026-02-05 16:55:14 +00:00
ohif-bot 710fefe3e8 chore(version): version.json [skip ci] 2026-02-05 16:55:06 +00:00
Bill Wallace 48f2f6fb13 fix(HistoryMemo): Segmentation delete wasn't remembered (#5775)
Will address a few more comments in a separate PR released after this one into 3.13

* fix(HistoryMemo): Segmentation delete wasn't remembered

* Temporary add of package.json linking

* fix: Use newer dcmjs version and delete segmentation with history cs3d
2026-02-05 11:49:49 -05:00
ohif-bot 3b9d3babf9 chore(version): Update package versions [skip ci] 2026-02-04 21:17:59 +00:00
ohif-bot e71a20334a chore(version): version.json [skip ci] 2026-02-04 21:17:50 +00:00
Joe Boccanfuso 512aa3b07f fix(jump-to-label-map): Use undefined for viewportId for arrow navigation. (#5774)
* Update to CS3D 4.15.28.
2026-02-04 16:12:41 -05:00
ohif-bot c40ebd2124 chore(version): Update package versions [skip ci] 2026-01-30 18:57:26 +00:00
ohif-bot ceb61fce15 chore(version): version.json [skip ci] 2026-01-30 18:57:20 +00:00
Joe Boccanfuso 9a97095d5c chore(deps): Update cornerstonejs dependencies to 4.15.24. (#5764) 2026-01-30 13:53:28 -05:00
ohif-bot a448bafbc5 chore(version): Update package versions [skip ci] 2026-01-30 16:22:51 +00:00
ohif-bot 2da384ccbc chore(version): version.json [skip ci] 2026-01-30 16:22:44 +00:00
Joe Boccanfuso 02423c5bf3 fix(segmentation): Use jumpToSegmentNext instead of jumpToSegmentCenter for arrow navigation. (#5759)
* fix(segmentation): Use jumpToSegmentNext instead of jumpToSegmentCenter for arrow navigation.

* Fixed unit tests.
2026-01-30 11:18:01 -05:00
Bill Wallace 5807889f79 Fix/duplicate redundant log measurement mapping (#5760)
* Remove all but one log message for mappings.

* fix: NPE when no segmentations list returned.
2026-01-30 11:16:37 -05:00
ohif-bot a4c99e6926 chore(version): Update package versions [skip ci] 2026-01-28 19:06:09 +00:00
ohif-bot f4ac95f96f chore(version): version.json [skip ci] 2026-01-28 19:06:03 +00:00
Joe Boccanfuso 76199884de chore(security): Ignore node-tar vulnerability. (#5753) 2026-01-28 14:02:08 -05:00
ohif-bot 64cd189cce chore(version): Update package versions [skip ci] 2026-01-27 15:18:13 +00:00
ohif-bot 8f13d92fa8 chore(version): version.json [skip ci] 2026-01-27 15:18:06 +00:00
6dedf5573e fix: Handle optional ContentSequence for NUM content items (#5703)
* fix: SR validation

* Adding links to cs3d

* Update to dcmjs 0.48.0

* Update package files to include updated adapter

* Update package files

---------

Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
Co-authored-by: arul-trenser <arul.mozhi@trenser.com>
2026-01-27 10:13:55 -05:00
ohif-bot b69abf25ee chore(version): Update package versions [skip ci] 2026-01-27 13:51:49 +00:00
ohif-bot 891012397b chore(version): version.json [skip ci] 2026-01-27 13:51:42 +00:00
Joe BoccanfusoandBill Wallace 06612fe177 fix(TMTV): Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 (#5735)
* Updated screenshots for failing tests due to FOV improvements.

---------

Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
2026-01-27 08:47:29 -05:00
ohif-bot 0321361e2c chore(version): Update package versions [skip ci] 2026-01-22 19:16:07 +00:00
ohif-bot 1bc0dece64 chore(version): version.json [skip ci] 2026-01-22 19:15:58 +00:00
Bill Wallace 0fd517d6ab fix: Navigate to contour should work (#5718)
* fix: Navigate to contour should work

* Switched back to jump to segment center for hte unit tests
2026-01-22 14:10:40 -05:00
ohif-bot b2f6e1f237 chore(version): Update package versions [skip ci] 2026-01-22 03:03:33 +00:00
ohif-bot dbb7873238 chore(version): version.json [skip ci] 2026-01-22 03:03:26 +00:00
afe184ec78 fix: the null value check issue in image spacing calculation (#5726)
Co-authored-by: 顾争 <zheng.gu-rd@djhealthunion.com.cn>
Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
2026-01-21 21:59:20 -05:00
ohif-bot 3cfddc1f64 chore(version): Update package versions [skip ci] 2026-01-21 18:07:03 +00:00
ohif-bot 1142cdbb46 chore(version): version.json [skip ci] 2026-01-21 18:06:56 +00:00
Joe Boccanfuso 320f0a7463 fix(security): Ignore CVE-2026-23745, CVE-2026-23950 and CVE-2024-28863 because they are limited to build/dev environments. (#5733)
The tar vulnerabilities affect build-time tools (lerna) and transitive dependencies, but not runtime data flow from Cornerstone3D to its dependencies.
2026-01-21 13:02:40 -05:00
129 changed files with 11222 additions and 4006 deletions

No files matched your search

+32 -7
View File
@@ -6,7 +6,7 @@ orbs:
defaults: &defaults
docker:
- image: cimg/node:20.18.1
- image: cimg/node:20.19.0
environment:
TERM: xterm
QUICK_BUILD: true
@@ -112,15 +112,40 @@ jobs:
- checkout
- attach_workspace:
at: ~/repo
# SECURITY AUDIT
# SECURITY AUDIT - only when bun.lock has changed
- run:
name: 'Security Audit - High Risk Vulnerabilities'
command: |
echo "🔍 Running bun audit for security vulnerabilities..."
git fetch origin master 2>/dev/null || true
BASE_REF=$(git merge-base HEAD origin/master 2>/dev/null)
if [[ -z "$BASE_REF" ]]; then
echo "Could not determine base ref (e.g. shallow clone or no origin/master), skipping security audit."
exit 0
fi
CHANGED_FILES=$(git diff --name-only origin/master...HEAD 2>/dev/null || echo "")
if ! echo "$CHANGED_FILES" | grep -qx 'bun.lock'; then
echo "⏭️ bun.lock unchanged - skipping security audit."
exit 0
fi
echo "🔍 bun.lock changed - running bun audit for security vulnerabilities..."
echo "Checking for HIGH-RISK vulnerabilities..."
# Ignore CVE-2025-64756 (aka GHSA-5j98-mcp5-4vw2) - glob is not used on the command line
if bun audit --ignore=GHSA-5j98-mcp5-4vw2 --audit-level high; then
# Define ignored vulnerabilities with comments
IGNORED_VULNS=(
"GHSA-3ppc-4f35-3m26" # CVE-2026-26996 - minimatch via itk-wasm and glob is safe because it does NOT use the CLI
# CVE-2026-26996 - minimatch via other packages are strictly for building and CI/CD purposes; no user supplied expressions are passed to minimatch
"GHSA-7r86-cg39-jmmj" # CVE-2026-27903 - minimatch same as above
"GHSA-23c5-xmqv-rm74" # CVE-2026-27904 - minimatch same as above
"GHSA-c2c7-rcm5-vvqj" # CVE-2026-33671 - picomatch is generally used for development and CI/CD purposes
)
# Build ignore flags
IGNORE_FLAGS=""
for vuln in "${IGNORED_VULNS[@]}"; do
IGNORE_FLAGS="$IGNORE_FLAGS --ignore=$vuln"
done
if bun audit $IGNORE_FLAGS --audit-level high; then
echo "✅ No high-risk vulnerabilities found"
echo "🎉 Security audit passed!"
else
@@ -137,8 +162,7 @@ jobs:
echo ""
echo "📋 Full audit report:"
# Ignore CVE-2025-64756 (aka GHSA-5j98-mcp5-4vw2) - glob is not used on the command line
bun audit --ignore=GHSA-5j98-mcp5-4vw2 --audit-level low || true
bun audit $IGNORE_FLAGS --audit-level low || true
echo ""
echo "❌ This build cannot proceed until high-risk vulnerabilities are resolved."
@@ -362,6 +386,7 @@ jobs:
resource_class: large
parallelism: 8
steps:
- install_bun
- run:
name: Install System Dependencies
command: |
+4
View File
@@ -2,6 +2,8 @@ version: 2
enable-beta-ecosystems: true
updates:
- package-ecosystem: 'bun'
# Disable all pull requests for bun version updates.
open-pull-requests-limit: 0
directory: '/'
schedule:
interval: 'daily'
@@ -10,6 +12,8 @@ updates:
prefix: 'chore'
include: 'scope'
- package-ecosystem: 'npm'
# Disable all pull requests for npm version updates.
open-pull-requests-limit: 0
directory: '/'
schedule:
interval: 'daily'
+1 -1
View File
@@ -38,7 +38,7 @@ jobs:
run: |
mkdir -p packaged-test-results
cp -r ./tests/test-results packaged-test-results/ || true
cp ./tests/playwright-report.json packaged-test-results/ || true
cp -r ./tests/playwright-report packaged-test-results/ || true
- name: Upload directory of test results artifact
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v4
+168
View File
@@ -3,6 +3,174 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
### Bug Fixes
* **security:** Update dependencies to fix security vulnerabilities. Release 3.12.5 ([#6086](https://github.com/OHIF/Viewers/issues/6086)) ([f5f086c](https://github.com/OHIF/Viewers/commit/f5f086cd953bfcb783276fbb8d687e05fa118725))
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
### Bug Fixes
* **security:** Update axios to fix security vulnerabilities. Release 3.12.4 ([#6064](https://github.com/OHIF/Viewers/issues/6064)) ([62917c2](https://github.com/OHIF/Viewers/commit/62917c214246233b7b76aa8926fdfd645a2385a7))
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
### Bug Fixes
* **security:** Add tmp as a resolution to fix security vulnerability. Trigger release 3.12.3. ([#6045](https://github.com/OHIF/Viewers/issues/6045)) ([fb4441b](https://github.com/OHIF/Viewers/commit/fb4441ba71ec95dd494d120152a61df9261024cb))
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
### Bug Fixes
* **release:** make publish-version.mjs idempotent for re-runs ([647fd02](https://github.com/OHIF/Viewers/commit/647fd025cf7212acc03b66807974f5d0f8ba0708))
* **security:** Update various dependencies to fix security vulnerabilities. Release 3.12.2 ([#6024](https://github.com/OHIF/Viewers/issues/6024)) ([75a24a3](https://github.com/OHIF/Viewers/commit/75a24a33935bda8779da30ef9b725b387d80723d))
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package ohif-monorepo-root
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
### Bug Fixes
* **jump-to-contour-segment:** For contours like those from RSTRUCTs, use generic jumpToSegmentCenter if a segment center is available. ([#5785](https://github.com/OHIF/Viewers/issues/5785)) ([45739b3](https://github.com/OHIF/Viewers/commit/45739b31a2c72cb646c733929f733a8e180a616c))
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package ohif-monorepo-root
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
### Bug Fixes
* **segmentation:** Use jumpToSegmentNext instead of jumpToSegmentCenter for arrow navigation. ([#5759](https://github.com/OHIF/Viewers/issues/5759)) ([02423c5](https://github.com/OHIF/Viewers/commit/02423c5bf3131006df92c8054994887d1811d821))
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package ohif-monorepo-root
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
### Bug Fixes
* Handle optional ContentSequence for NUM content items ([#5703](https://github.com/OHIF/Viewers/issues/5703)) ([6dedf55](https://github.com/OHIF/Viewers/commit/6dedf5573e78a5751bed0b79646700acedfc8a38))
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
### Bug Fixes
* Navigate to contour should work ([#5718](https://github.com/OHIF/Viewers/issues/5718)) ([0fd517d](https://github.com/OHIF/Viewers/commit/0fd517d6ab583652a3667f9af49413648f2755db))
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
### Bug Fixes
* the null value check issue in image spacing calculation ([#5726](https://github.com/OHIF/Viewers/issues/5726)) ([afe184e](https://github.com/OHIF/Viewers/commit/afe184ec78dcc8f780e64687e06670365beeb77e))
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
### Bug Fixes
* **security:** Ignore CVE-2026-23745, CVE-2026-23950 and CVE-2024-28863 because they are limited to build/dev environments. ([#5733](https://github.com/OHIF/Viewers/issues/5733)) ([320f0a7](https://github.com/OHIF/Viewers/commit/320f0a7463ad95251842ece6cd329bba7b6b2a97))
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
+131
View File
@@ -3,6 +3,137 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
### Bug Fixes
* **security:** Update dependencies to fix security vulnerabilities. Release 3.12.5 ([#6086](https://github.com/OHIF/Viewers/issues/6086)) ([f5f086c](https://github.com/OHIF/Viewers/commit/f5f086cd953bfcb783276fbb8d687e05fa118725))
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @externals/devDependencies
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @externals/devDependencies
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @externals/devDependencies
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @externals/devDependencies
+11 -15
View File
@@ -1,7 +1,7 @@
{
"name": "@externals/devDependencies",
"description": "External dev dependencies - put dev build dependencies here",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"license": "MIT",
"private": true,
"engines": {
@@ -20,7 +20,6 @@
"react-dom": "18.3.1"
},
"devDependencies": {
"@babel/eslint-parser": "7.28.0",
"@pmmmwh/react-refresh-webpack-plugin": "0.5.17",
"@rsbuild/core": "1.5.1",
"@rsbuild/plugin-node-polyfill": "1.4.2",
@@ -28,30 +27,27 @@
"@svgr/webpack": "8.1.0",
"@swc/helpers": "0.5.17",
"@types/jest": "27.5.2",
"@typescript-eslint/eslint-plugin": "6.21.0",
"@typescript-eslint/parser": "6.21.0",
"@typescript-eslint/eslint-plugin": "8.56.0",
"@typescript-eslint/parser": "8.56.0",
"autoprefixer": "10.4.21",
"babel-loader": "8.4.1",
"babel-plugin-module-resolver": "5.0.2",
"clean-webpack-plugin": "3.0.0",
"copy-webpack-plugin": "9.1.0",
"cross-env": "7.0.3",
"css-loader": "6.11.0",
"dotenv": "8.6.0",
"eslint": "8.57.1",
"eslint": "9.39.3",
"eslint-config-prettier": "7.2.0",
"eslint-config-react-app": "6.0.0",
"eslint-config-react-app": "7.0.1",
"eslint-plugin-cypress": "2.15.2",
"eslint-plugin-flowtype": "7.0.0",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-jsx-a11y": "6.10.2",
"eslint-plugin-node": "11.1.0",
"eslint-plugin-prettier": "5.5.1",
"eslint-plugin-promise": "5.2.0",
"eslint-plugin-promise": "7.2.1",
"eslint-plugin-react": "7.37.5",
"eslint-plugin-react-hooks": "4.6.2",
"eslint-plugin-react-hooks": "7.0.1",
"eslint-plugin-tsdoc": "0.2.17",
"eslint-webpack-plugin": "2.7.0",
"execa": "8.0.1",
"extract-css-chunks-webpack-plugin": "4.10.0",
"html-webpack-plugin": "5.6.3",
@@ -60,7 +56,7 @@
"jest-canvas-mock": "2.5.2",
"jest-environment-jsdom": "29.7.0",
"jest-junit": "6.4.0",
"lerna": "7.4.2",
"lerna": "9.0.4",
"lint-staged": "9.5.0",
"mini-css-extract-plugin": "2.9.2",
"optimize-css-assets-webpack-plugin": "6.0.1",
@@ -72,7 +68,7 @@
"prettier-plugin-tailwindcss": "0.6.9",
"react-refresh": "0.14.2",
"semver": "7.7.2",
"serve": "14.2.4",
"serve": "14.2.5",
"shader-loader": "1.3.1",
"shx": "0.3.4",
"source-map-loader": "4.0.2",
@@ -80,8 +76,8 @@
"terser-webpack-plugin": "5.3.14",
"typescript": "5.5.4",
"unused-webpack-plugin": "2.4.0",
"webpack": "5.95.0",
"webpack-bundle-analyzer": "4.10.2",
"webpack": "5.105.0",
"webpack-bundle-analyzer": "5.3.0",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.2.2",
"webpack-hot-middleware": "2.26.1",
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @externals/dicom-microscopy-viewer
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@externals/dicom-microscopy-viewer",
"description": "External reference to dicom-microscopy-viewer",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"license": "MIT",
"dependencies": {
"dicom-microscopy-viewer": "0.48.17"
+2 -2
View File
@@ -31,14 +31,14 @@
"@babel/plugin-transform-regenerator": "7.28.1",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "7.27.1",
"@babel/preset-typescript": "7.27.1"
},
"resolutions": {
"**/@babel/runtime": "7.28.2",
"commander": "8.3.0",
"dcmjs": "0.45.0",
"dcmjs": "0.49.4",
"dicomweb-client": "0.10.4",
"nth-check": "2.1.1",
"trim-newlines": "5.0.0",
+2050 -1079
View File
File diff suppressed because it is too large. Load diff
+1 -1
View File
@@ -1 +1 @@
4a1f5098654dc7afef4c135f2e2198a0e785f4b9
f5f086cd953bfcb783276fbb8d687e05fa118725
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-pmap
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-cornerstone-dicom-pmap",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "DICOM Parametric Map read workflow",
"author": "OHIF",
"license": "MIT",
@@ -33,10 +33,10 @@
"start": "yarn run dev"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/i18n": "3.12.5",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
@@ -46,9 +46,8 @@
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/adapters": "4.15.9",
"@cornerstonejs/core": "4.15.9",
"@kitware/vtk.js": "34.15.1",
"react-color": "2.19.3"
"@cornerstonejs/adapters": "4.15.29",
"@cornerstonejs/core": "4.15.29",
"@kitware/vtk.js": "34.15.1"
}
}
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-rt
+6 -7
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-cornerstone-dicom-rt",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "DICOM RT read workflow",
"author": "OHIF",
"license": "MIT",
@@ -33,10 +33,10 @@
"start": "yarn run dev"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/i18n": "3.12.5",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
@@ -45,7 +45,6 @@
"react-router-dom": "6.30.3"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"react-color": "2.19.3"
"@babel/runtime": "7.28.2"
}
}
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-seg
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-cornerstone-dicom-seg",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "DICOM SEG read workflow",
"author": "OHIF",
"license": "MIT",
@@ -33,10 +33,10 @@
"start": "yarn run dev"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/i18n": "3.12.5",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
@@ -46,9 +46,8 @@
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/adapters": "4.15.9",
"@cornerstonejs/core": "4.15.9",
"@kitware/vtk.js": "34.15.1",
"react-color": "2.19.3"
"@cornerstonejs/adapters": "4.15.29",
"@cornerstonejs/core": "4.15.29",
"@kitware/vtk.js": "34.15.1"
}
}
@@ -3,6 +3,146 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
### Bug Fixes
* Handle optional ContentSequence for NUM content items ([#5703](https://github.com/OHIF/Viewers/issues/5703)) ([6dedf55](https://github.com/OHIF/Viewers/commit/6dedf5573e78a5751bed0b79646700acedfc8a38))
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-cornerstone-dicom-sr
+9 -9
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-cornerstone-dicom-sr",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for an SR Cornerstone Viewport",
"author": "OHIF",
"license": "MIT",
@@ -34,11 +34,11 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-measurement-tracking": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-measurement-tracking": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
@@ -46,9 +46,9 @@
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/adapters": "4.15.9",
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/tools": "4.15.9",
"@cornerstonejs/adapters": "4.15.29",
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/tools": "4.15.29",
"classnames": "2.5.1"
}
}
@@ -637,15 +637,20 @@ function _processNonGeometricallyDefinedMeasurement(mergedContentSequence) {
NUMContentItems.forEach(item => {
const { ConceptNameCodeSequence, ContentSequence, MeasuredValueSequence } = item;
const { ValueType } = ContentSequence;
if (ValueType !== 'SCOORD' && ValueType !== 'SCOORD3D') {
console.warn(`Graphic ${ValueType} not currently supported, skipping annotation.`);
return;
}
// Handle spatial reference ONLY if ContentSequence exists
if (ContentSequence) {
const { ValueType } = ContentSequence;
const coords = _getCoordsFromSCOORDOrSCOORD3D(ContentSequence);
if (coords) {
measurement.coords.push(coords);
if (ValueType !== 'SCOORD' && ValueType !== 'SCOORD3D') {
console.warn(`Graphic ${ValueType} not currently supported, skipping annotation.`);
return;
}
const coords = _getCoordsFromSCOORDOrSCOORD3D(ContentSequence);
if (coords) {
measurement.coords.push(coords);
}
}
if (MeasuredValueSequence) {
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-cornerstone-dynamic-volume
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-cornerstone-dynamic-volume",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for 4D volumes data",
"author": "OHIF",
"license": "MIT",
@@ -29,12 +29,12 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/i18n": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
@@ -42,8 +42,8 @@
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/tools": "4.15.9",
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/tools": "4.15.29",
"classnames": "2.5.1"
}
}
+146
View File
@@ -3,6 +3,152 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-cornerstone
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-cornerstone
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-cornerstone
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
### Bug Fixes
* **jump-to-contour-segment:** For contours like those from RSTRUCTs, use generic jumpToSegmentCenter if a segment center is available. ([#5785](https://github.com/OHIF/Viewers/issues/5785)) ([45739b3](https://github.com/OHIF/Viewers/commit/45739b31a2c72cb646c733929f733a8e180a616c))
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
### Bug Fixes
* **segmentation:** Use jumpToSegmentNext instead of jumpToSegmentCenter for arrow navigation. ([#5759](https://github.com/OHIF/Viewers/issues/5759)) ([02423c5](https://github.com/OHIF/Viewers/commit/02423c5bf3131006df92c8054994887d1811d821))
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
### Bug Fixes
* Navigate to contour should work ([#5718](https://github.com/OHIF/Viewers/issues/5718)) ([0fd517d](https://github.com/OHIF/Viewers/commit/0fd517d6ab583652a3667f9af49413648f2755db))
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-cornerstone
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-cornerstone
+13 -12
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-cornerstone",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for Cornerstone",
"author": "OHIF",
"license": "MIT",
@@ -40,10 +40,10 @@
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
"@cornerstonejs/codec-openjpeg": "1.3.0",
"@cornerstonejs/codec-openjph": "2.4.7",
"@cornerstonejs/dicom-image-loader": "4.15.9",
"@ohif/core": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@cornerstonejs/dicom-image-loader": "4.15.29",
"@ohif/core": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
@@ -53,19 +53,20 @@
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/adapters": "4.15.9",
"@cornerstonejs/ai": "4.15.9",
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/labelmap-interpolation": "4.15.9",
"@cornerstonejs/polymorphic-segmentation": "4.15.9",
"@cornerstonejs/tools": "4.15.9",
"@cornerstonejs/adapters": "4.15.29",
"@cornerstonejs/ai": "4.15.29",
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/labelmap-interpolation": "4.15.29",
"@cornerstonejs/polymorphic-segmentation": "4.15.29",
"@cornerstonejs/tools": "4.15.29",
"@icr/polyseg-wasm": "0.4.0",
"@itk-wasm/morphological-contour-interpolation": "1.1.0",
"@kitware/vtk.js": "34.15.1",
"html2canvas": "1.4.1",
"immutability-helper": "3.1.1",
"lodash.compact": "3.0.1",
"lodash.debounce": "4.0.8",
"lodash.flatten": "4.4.0",
"lodash.merge": "4.6.2",
"lodash.zip": "4.2.0",
"shader-loader": "1.3.1",
"worker-loader": "3.0.8"
+1 -1
View File
@@ -1608,7 +1608,7 @@ function commandsModule({
? animationFunctionType
: undefined;
segmentationService.jumpToSegmentCenter(
segmentationService.jumpToSegmentNext(
segmentationId,
segmentIndex,
undefined,
+24 -6
View File
@@ -59,6 +59,7 @@ import utils from './utils';
import { useMeasurementTracking } from './hooks/useMeasurementTracking';
import { setUpSegmentationEventHandlers } from './utils/setUpSegmentationEventHandlers';
import { setUpAnnotationEventHandlers } from './utils/setUpAnnotationEventHandlers';
import update from 'immutability-helper';
export * from './components';
const { imageRetrieveMetadataProvider } = cornerstone.utilities;
@@ -75,7 +76,7 @@ const OHIFCornerstoneViewport = props => {
);
};
const stackRetrieveOptions = {
const DEFAULT_STACK_RETRIEVE_OPTIONS = {
retrieveOptions: {
single: {
streaming: true,
@@ -84,6 +85,12 @@ const stackRetrieveOptions = {
},
};
/** Normalize to immutability-helper spec: plain object → $merge, otherwise use as-is. */
const toUpdateSpec = (obj: object) =>
obj != null && typeof obj === 'object' && Object.keys(obj).some(k => k.startsWith('$'))
? obj
: { $merge: (obj ?? {}) as object };
const unsubscriptions = [];
/**
*
@@ -94,7 +101,11 @@ const cornerstoneExtension: Types.Extensions.Extension = {
*/
id,
onModeEnter: ({ servicesManager, commandsManager }: withAppTypes): void => {
onModeEnter: ({
servicesManager,
commandsManager,
extensionManager,
}: withAppTypes): void => {
const { cornerstoneViewportService, toolbarService, segmentationService } =
servicesManager.services;
@@ -131,10 +142,17 @@ const cornerstoneExtension: Types.Extensions.Extension = {
'volume',
cornerstone.ProgressiveRetrieveImages.interleavedRetrieveStages
);
// The default stack loading option is to progressive load HTJ2K images
// There are other possible options, but these need more thought about
// how to define them.
imageRetrieveMetadataProvider.add('stack', stackRetrieveOptions);
/**
* Stack retrieve options: read from active data source configuration.
* Pass an immutability-helper spec (e.g. { $merge: {...} } or { $set: {...} }) in
* stackRetrieveOptions to customize. Plain object is treated as $merge for backward compat.
* Set streaming: false for uncompressed DICOM that requires full file before decode.
*/
const sourceConfig = extensionManager?.getActiveDataSource?.()?.[0]?.getConfig?.() ?? {};
const config = sourceConfig.stackRetrieveOptions ?? {};
const stackOptions = update(DEFAULT_STACK_RETRIEVE_OPTIONS, toUpdateSpec(config)) as typeof DEFAULT_STACK_RETRIEVE_OPTIONS;
imageRetrieveMetadataProvider.add('stack', stackOptions);
},
getPanelModule,
onModeExit: ({ servicesManager }: withAppTypes): void => {
@@ -2117,7 +2117,9 @@ describe('SegmentationService', () => {
service.removeSegment(segmentationId, segmentIndex);
expect(cstSegmentation.removeSegment).toHaveBeenCalledTimes(1);
expect(cstSegmentation.removeSegment).toHaveBeenCalledWith(segmentationId, segmentIndex);
expect(cstSegmentation.removeSegment).toHaveBeenCalledWith(segmentationId, segmentIndex, {
recordHistory: true,
});
});
});
@@ -15,6 +15,7 @@ import {
Enums as csToolsEnums,
segmentation as cstSegmentation,
Types as cstTypes,
annotation as cstAnnotation,
} from '@cornerstonejs/tools';
import { PubSubService, Types as OHIFTypes } from '@ohif/core';
@@ -24,6 +25,9 @@ import { VOLUME_LOADER_SCHEME } from '../../constants';
import { mapROIContoursToRTStructData } from './RTSTRUCT/mapROIContoursToRTStructData';
import { SegmentationPresentation, SegmentationPresentationItem } from '../../types/Presentation';
import { EasingFunctionEnum, EasingFunctionMap } from '../../utils/transitions';
import { ViewReference } from '@cornerstonejs/core/types';
const { DefaultHistoryMemo } = csUtils.HistoryMemo;
const {
Labelmap: LABELMAP,
@@ -949,11 +953,75 @@ class SegmentationService extends PubSubService {
});
}
/**
* Creates a memo that records the current state of a segment (segmentationId/segmentIndex)
* so that undo can restore it via addSegment and redo can call removeSegment again
* without recording history.
*
* @param segmentationId - The ID of the segmentation.
* @param segmentIndex - The index of the segment (must still exist when called).
* @param _options - Reserved (e.g. deleting) for future use.
* @returns A Memo with restoreMemo(undo): undo => addSegment, redo => removeSegment (skipRecordingHistory).
*/
public createSegmentIndexMemo(
segmentationId: string,
segmentIndex: number,
_options?: { deleting?: boolean }
): csTypes.Memo | null {
const csSegmentation = this.getCornerstoneSegmentation(segmentationId);
const segment = csSegmentation?.segments?.[segmentIndex];
if (!segment) {
return null;
}
let color: csTypes.Color | undefined;
let visibility: boolean | undefined;
const viewportIds = this.getViewportIdsWithSegmentation(segmentationId);
if (viewportIds.length > 0) {
const firstViewportId = viewportIds[0];
const representations = this.getSegmentationRepresentations(firstViewportId, {
segmentationId,
});
const repType = representations[0]?.type ?? LABELMAP;
color = this.getSegmentColor(firstViewportId, segmentationId, segmentIndex);
visibility = cstSegmentation.config.visibility.getSegmentIndexVisibility(
firstViewportId,
{ segmentationId, type: repType },
segmentIndex
);
}
const segmentState = {
segmentIndex,
label: segment.label,
isLocked: segment.locked,
active: segment.active,
color,
visibility,
};
const service = this;
const memo: csTypes.Memo = {
id: csUtils.uuidv4(),
operationType: 'segmentIndex',
restoreMemo(undo?: boolean) {
if (undo === true) {
service.addSegment(segmentationId, segmentState);
} else {
// Redo: remove the segment via cornerstone without recording history
cstSegmentation.removeSegment(segmentationId, segmentIndex, { recordHistory: false });
}
},
};
return memo;
}
/**
* Removes a segment from a segmentation and updates the active segment index if necessary.
*
* @param segmentationId - The ID of the segmentation containing the segment to remove.
* @param segmentIndex - The index of the segment to remove.
* @param options - Optional. skipRecordingHistory: if true, do not push undo memo (used when redoing).
*
* @remarks
* This method performs the following actions:
@@ -962,8 +1030,21 @@ class SegmentationService extends PubSubService {
* 3. If the removed segment was the active segment, it updates the active segment index.
*
*/
public removeSegment(segmentationId: string, segmentIndex: number): void {
cstSegmentation.removeSegment(segmentationId, segmentIndex);
public removeSegment(
segmentationId: string,
segmentIndex: number,
options?: { skipRecordingHistory?: boolean }
): void {
let memo;
if (!options?.skipRecordingHistory) {
memo = this.createSegmentIndexMemo(segmentationId, segmentIndex, { deleting: true });
DefaultHistoryMemo.startGroupRecording();
cstSegmentation.removeSegment(segmentationId, segmentIndex, { recordHistory: true });
DefaultHistoryMemo.push(memo);
DefaultHistoryMemo.endGroupRecording();
} else {
cstSegmentation.removeSegment(segmentationId, segmentIndex, { recordHistory: false });
}
}
public setSegmentVisibility(
@@ -1246,6 +1327,127 @@ class SegmentationService extends PubSubService {
cstSegmentation.removeSegmentationRepresentations(viewportId, specifier);
}
/**
* Jumps to the next slice that contains the specified segment in the viewport.
* For labelmaps, it jumps to the segment center. For contours, it cycles through
* all slices that contain contour data for the segment.
*
* @param segmentationId - The ID of the segmentation
* @param segmentIndex - The index of the segment to jump to
* @param viewportId - Optional viewport ID. If not provided, applies to all viewports with this segmentation
* @param highlightAlpha - Alpha value for highlighting (0-1)
* @param highlightSegment - Whether to highlight the segment after jumping
* @param animationLength - Length of highlight animation in milliseconds
* @param highlightHideOthers - Whether to hide other segments during highlight
* @param animationFunctionType - The easing function to use for animation
*/
public jumpToSegmentNext(
segmentationId: string,
segmentIndex: number,
forViewportId?: string,
direction = 1,
highlightAlpha = 0.9,
highlightSegment = true,
animationLength = 750,
highlightHideOthers = false,
animationFunctionType: EasingFunctionEnum = EasingFunctionEnum.EASE_IN_OUT
): void {
const viewportIds = forViewportId
? [forViewportId]
: this.getViewportIdsWithSegmentation(segmentationId);
viewportIds.forEach(viewportId => {
const representations = this.getSegmentationRepresentations(viewportId, {
segmentationId,
});
if (!representations || representations.length === 0) {
return;
}
const representation = representations[0];
const { type } = representation;
// For contours, check if we have a segment center.
const center =
type === CONTOUR ? this._getSegmentCenter(segmentationId, segmentIndex) : undefined;
const canUseSegmentCenter = type !== CONTOUR || !!center;
if (canUseSegmentCenter) {
this.jumpToSegmentCenter(
segmentationId,
segmentIndex,
viewportId,
highlightAlpha,
highlightSegment,
animationLength,
highlightHideOthers,
animationFunctionType,
center
);
return;
}
const { viewport } = getEnabledElementByViewportId(viewportId);
if (!viewport) {
return;
}
const viewRefs = this._getContourViewReferences(segmentationId, viewport, segmentIndex);
if (!viewRefs) {
return;
}
// Get the current slice index
const currentSliceIndex = viewport.getCurrentImageIdIndex();
let nearestSliceIndex = null;
let loopSliceIndex = null;
for (const [sliceIndex] of viewRefs.entries()) {
// Track loop index for wraparound (smallest for forward, largest for backward)
if (direction > 0) {
if (loopSliceIndex === null || sliceIndex < loopSliceIndex) {
loopSliceIndex = sliceIndex;
}
} else {
if (loopSliceIndex === null || sliceIndex > loopSliceIndex) {
loopSliceIndex = sliceIndex;
}
}
if (direction > 0) {
// Forward direction: find nearest slice after current
if (sliceIndex <= currentSliceIndex) {
continue;
}
if (nearestSliceIndex === null || sliceIndex < nearestSliceIndex) {
nearestSliceIndex = sliceIndex;
}
} else {
// Backward direction: find nearest slice before current
if (sliceIndex >= currentSliceIndex) {
continue;
}
if (nearestSliceIndex === null || sliceIndex > nearestSliceIndex) {
nearestSliceIndex = sliceIndex;
}
}
}
// Wraparound: if no slice found in direction, use loop index
nearestSliceIndex = nearestSliceIndex ?? loopSliceIndex;
if (nearestSliceIndex === null) {
return;
}
const viewRef = viewRefs.get(nearestSliceIndex);
viewport.setViewReference(viewRef);
viewport.render();
});
}
/**
* Jumps the viewport to the center of hte given segment.
* Only works for labelmaps, and may result in not showing any contours.
*/
public jumpToSegmentCenter(
segmentationId: string,
segmentIndex: number,
@@ -1254,15 +1456,16 @@ class SegmentationService extends PubSubService {
highlightSegment = true,
animationLength = 750,
highlightHideOthers = false,
animationFunctionType: EasingFunctionEnum = EasingFunctionEnum.EASE_IN_OUT
animationFunctionType: EasingFunctionEnum = EasingFunctionEnum.EASE_IN_OUT,
center?: { image?: csTypes.Point3; world: csTypes.Point3 }
): void {
const center = this._getSegmentCenter(segmentationId, segmentIndex);
if (!center) {
const resolvedCenter = center ?? this._getSegmentCenter(segmentationId, segmentIndex);
if (!resolvedCenter) {
console.warn('No center found for segmentation', segmentationId, segmentIndex);
return;
}
const { world } = center as { world: csTypes.Point3 };
const { world } = resolvedCenter as { world: csTypes.Point3 };
// need to find which viewports are displaying the segmentation
const viewportIds = viewportId
@@ -1943,6 +2146,62 @@ class SegmentationService extends PubSubService {
segmentationId,
});
};
/**
* Gets slice indices for contour segmentations by checking view references from annotation metadata
* @private
*/
protected _getContourViewReferences(
segmentationId: string,
viewport: csTypes.IViewport,
segmentIndex?: number
): Map<number, ViewReference> | undefined {
const segmentation = cstSegmentation.state.getSegmentation(segmentationId);
const contourData = segmentation.representationData[CONTOUR];
if (!contourData || !contourData.annotationUIDsMap) {
return;
}
const viewReferences = new Map<number, ViewReference>();
// Iterate through the annotationUIDsMap
contourData.annotationUIDsMap.forEach((annotationUIDs, currentSegmentIndex) => {
// Filter by segment index if specified
if (segmentIndex !== undefined && currentSegmentIndex !== segmentIndex) {
return;
}
// Process each annotation UID
annotationUIDs.forEach(annotationUID => {
const annotation = cstAnnotation.state.getAnnotation(annotationUID);
if (!annotation?.metadata) {
return;
}
const { metadata } = annotation;
// Check if the viewport can view this annotation's view reference with navigation
const isViewable = viewport.isReferenceViewable(metadata, {
withNavigation: true,
});
if (!isViewable) {
return;
}
const { sliceIndex } = metadata;
if (sliceIndex === undefined) {
console.warn("Can't find slice index:", metadata);
return;
}
viewReferences.set(sliceIndex, metadata);
});
});
if (viewReferences.size === 0) {
return;
}
return viewReferences;
}
}
export default SegmentationService;
@@ -91,7 +91,7 @@ const segmentationRepresentationModifiedCallback = async (
type,
config: {
blendMode:
viewport.getBlendMode() === 1 ? BlendModes.LABELMAP_EDGE_PROJECTION_BLEND : undefined,
viewport?.getBlendMode?.() === 1 ? BlendModes.LABELMAP_EDGE_PROJECTION_BLEND : undefined,
},
});
};
@@ -38,6 +38,7 @@ import { usePositionPresentationStore } from '../../stores/usePositionPresentati
import { useSynchronizersStore } from '../../stores/useSynchronizersStore';
import { useSegmentationPresentationStore } from '../../stores/useSegmentationPresentationStore';
import getClosestOrientationFromIOP from '../../utils/isReferenceViewable';
import { BlendModes } from '@cornerstonejs/core/enums';
const EVENTS = {
VIEWPORT_DATA_CHANGED: 'event::cornerstoneViewportService:viewportDataChanged',
@@ -1192,6 +1193,10 @@ class CornerstoneViewportService extends PubSubService implements IViewportServi
segmentationId,
predecessorImageId,
type: representationType,
config: {
blendMode:
viewport?.getBlendMode?.() === 1 ? BlendModes.LABELMAP_EDGE_PROJECTION_BLEND : undefined,
},
});
// store the segmentation presentation id in the viewport info
@@ -1457,6 +1462,12 @@ class CornerstoneViewportService extends PubSubService implements IViewportServi
segmentationService.addSegmentationRepresentation(viewport.id, {
segmentationId,
type: representationType,
config: {
blendMode:
viewport?.getBlendMode?.() === 1
? BlendModes.LABELMAP_EDGE_PROJECTION_BLEND
: undefined,
},
});
}
});
@@ -129,7 +129,7 @@ const CornerstoneViewportDownloadForm = ({
downloadViewport.setVolumes([{ volumeId: volumeIds[0] }]);
}
if (segmentationRepresentations.length > 0) {
if (segmentationRepresentations?.length) {
segmentationRepresentations.forEach(segRepresentation => {
const { segmentationId, colorLUTIndex, type } = segRepresentation;
if (type === Enums.SegmentationRepresentations.Labelmap) {
@@ -5,7 +5,7 @@ describe('handleSegmentChange', () => {
getSegmentation: jest.fn(),
getActiveSegment: jest.fn(),
setActiveSegment: jest.fn(),
jumpToSegmentCenter: jest.fn(),
jumpToSegmentNext: jest.fn(),
};
const mockSegmentation = {
@@ -40,11 +40,12 @@ describe('handleSegmentChange', () => {
});
it('should move to next segment when direction is positive and activeSegment is null', () => {
const direction = 1;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -58,19 +59,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
2
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
2,
defaultParameters.viewportId
undefined,
direction
);
});
it('should move to previous segment when direction is negative and activeSegment is null', () => {
const direction = -1;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: -1,
direction,
selectedSegmentObjectIndex: 1,
});
@@ -78,14 +81,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should update selectedSegmentObjectIndex when activeSegment is found', () => {
const direction = 1;
const mockActiveSegment = {
segmentIndex: 2,
};
@@ -93,7 +98,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -101,19 +106,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
3
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
3,
defaultParameters.viewportId
undefined,
direction
);
});
it('should loop to first segment when going beyond last segment', () => {
const direction = 1;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 2,
});
@@ -121,19 +128,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should loop to last segment when going before first segment', () => {
const direction = -1;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: -1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -141,19 +150,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
3
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
3,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle direction with value greater than 1', () => {
const direction = 2;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: 2,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -161,19 +172,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
3
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
3,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle direction with value less than -1', () => {
const direction = -2;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: -2,
direction,
selectedSegmentObjectIndex: 1,
});
@@ -181,14 +194,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
3
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
3,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle single segment scenario with positive direction', () => {
const direction = 1;
const singleSegmentSegmentation = {
segments: {
'1': {
@@ -203,7 +218,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -211,14 +226,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle single segment scenario with negative direction', () => {
const direction = -1;
const singleSegmentSegmentation = {
segments: {
'1': {
@@ -233,7 +250,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: -1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -241,14 +258,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle activeSegment not found in segments', () => {
const direction = 1;
const mockActiveSegment = {
segmentIndex: 99,
};
@@ -256,7 +275,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -264,19 +283,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle zero direction', () => {
const direction = 0;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: 0,
direction,
selectedSegmentObjectIndex: 1,
});
@@ -284,14 +305,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
2
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
2,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle segments with non-sequential indices', () => {
const direction = 1;
const nonSequentialSegmentation = {
segments: {
'5': {
@@ -314,7 +337,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -322,14 +345,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
10
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
10,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle wrap around with non-sequential indices', () => {
const direction = 1;
const nonSequentialSegmentation = {
segments: {
'5': {
@@ -348,7 +373,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 1,
});
@@ -356,14 +381,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
5
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
5,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle empty segments object', () => {
const direction = 1;
const emptySegmentation = {
segments: {},
};
@@ -373,7 +400,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -381,19 +408,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
undefined
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
undefined,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle large positive direction that wraps multiple times', () => {
const direction = 5;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: 5,
direction,
selectedSegmentObjectIndex: 1,
});
@@ -401,19 +430,21 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle large negative direction that wraps multiple times', () => {
const direction = -5;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
direction: -5,
direction,
selectedSegmentObjectIndex: 1,
});
@@ -421,14 +452,16 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
3
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
3,
defaultParameters.viewportId
undefined,
direction
);
});
it('should handle activeSegment with segmentIndex 0', () => {
const direction = 1;
const mockActiveSegment = {
segmentIndex: 0,
};
@@ -436,7 +469,7 @@ describe('handleSegmentChange', () => {
handleSegmentChange({
...defaultParameters,
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -444,21 +477,23 @@ describe('handleSegmentChange', () => {
defaultParameters.segmentationId,
1
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
defaultParameters.segmentationId,
1,
defaultParameters.viewportId
undefined,
direction
);
});
it('should use different viewport and segmentation IDs', () => {
const direction = 1;
mockSegmentationService.getActiveSegment.mockReturnValue(null);
handleSegmentChange({
...defaultParameters,
segmentationId: 'different-segmentation-id',
viewportId: 'different-viewport-id',
direction: 1,
direction,
selectedSegmentObjectIndex: 0,
});
@@ -470,10 +505,11 @@ describe('handleSegmentChange', () => {
'different-segmentation-id',
2
);
expect(mockSegmentationService.jumpToSegmentCenter).toHaveBeenCalledWith(
expect(mockSegmentationService.jumpToSegmentNext).toHaveBeenCalledWith(
'different-segmentation-id',
2,
'different-viewport-id'
undefined,
direction
);
});
});
@@ -41,6 +41,6 @@ export const handleSegmentChange = ({
const segmentIndex = Object.values(segments)[newSelectedSegmentIndex]?.segmentIndex;
segmentationService.setActiveSegment(segmentationId, segmentIndex);
segmentationService.jumpToSegmentCenter(segmentationId, segmentIndex, viewportId);
segmentationService.jumpToSegmentNext(segmentationId, segmentIndex, undefined, direction);
selectedSegmentObjectIndex = newSelectedSegmentIndex;
};
@@ -59,6 +59,12 @@ export async function updateSegmentationStats({
Object.entries(stats).forEach(([segmentIndex, segmentStats]) => {
const index = parseInt(segmentIndex);
if (!updatedSegmentation.segments[index]) {
// This happens when a segment is being restored
console.warn('Segment not found to update cached stats:', index);
return;
}
if (!updatedSegmentation.segments[index].cachedStats) {
updatedSegmentation.segments[index].cachedStats = {};
hasUpdates = true;
+137
View File
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-default
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-default
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-default
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
### Bug Fixes
* the null value check issue in image spacing calculation ([#5726](https://github.com/OHIF/Viewers/issues/5726)) ([afe184e](https://github.com/OHIF/Viewers/commit/afe184ec78dcc8f780e64687e06670365beeb77e))
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-default
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-default
+7 -6
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-default",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Common/default features and functionality for basic image viewing",
"author": "OHIF Core Team",
"license": "MIT",
@@ -34,22 +34,23 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/i18n": "3.12.5",
"dcmjs": "0.49.4",
"dicomweb-client": "0.10.4",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
"react-i18next": "12.3.1",
"react-window": "1.8.11",
"webpack": "5.89.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/calculate-suv": "1.1.0",
"lodash.get": "4.4.2",
"lodash.uniqby": "4.7.0"
"lodash.uniqby": "4.7.0",
"react-color": "2.19.3"
}
}
@@ -4,6 +4,7 @@ import qs from 'query-string';
import getImageId from '../DicomWebDataSource/utils/getImageId';
import getDirectURL from '../utils/getDirectURL';
import { resolveConfigFetchPolicy, fetchConfigJson } from '../utils/secureConfigFetch';
const metadataProvider = OHIF.classes.MetadataProvider;
@@ -59,13 +60,18 @@ const findStudies = (key, value) => {
return studies;
};
function createDicomJSONApi(dicomJsonConfig) {
function createDicomJSONApi(dicomJsonConfig, servicesManager) {
const { userAuthenticationService } = servicesManager.services;
const implementation = {
initialize: async ({ query, url }) => {
if (!url) {
url = query.get('url');
}
let metaData = getMetaDataByURL(url);
const evaluatedUrl = resolveConfigFetchPolicy(url, {
allowedOrigins: dicomJsonConfig.dangerouslyAllowedOriginsForAuthenticatedEnvironments,
userAuthenticationService,
});
let metaData = getMetaDataByURL(evaluatedUrl.normalizedUrl);
// if we have already cached the data from this specific url
// We are only handling one StudyInstanceUID to run; however,
@@ -76,8 +82,7 @@ function createDicomJSONApi(dicomJsonConfig) {
});
}
const response = await fetch(url);
const data = await response.json();
const data = await fetchConfigJson(evaluatedUrl);
let StudyInstanceUID;
let SeriesInstanceUID;
@@ -105,11 +110,11 @@ function createDicomJSONApi(dicomJsonConfig) {
});
_store.urls.push({
url,
url: evaluatedUrl.normalizedUrl,
studies: [...data.studies],
});
_store.studyInstanceUIDMap.set(
url,
evaluatedUrl.normalizedUrl,
data.studies.map(study => study.StudyInstanceUID)
);
},
@@ -252,6 +257,8 @@ function createDicomJSONApi(dicomJsonConfig) {
console.warn(' DICOMJson store dicom not implemented');
},
},
reject: {},
deleteStudyMetadataPromise: () => {},
getImageIdsForDisplaySet(displaySet) {
const images = displaySet.images;
const imageIds = [];
@@ -297,8 +304,21 @@ function createDicomJSONApi(dicomJsonConfig) {
},
getStudyInstanceUIDs: ({ params, query }) => {
const url = query.get('url');
return _store.studyInstanceUIDMap.get(url);
if (!url) {
return;
}
try {
const evaluatedUrl = resolveConfigFetchPolicy(url, {
allowedOrigins: dicomJsonConfig.dangerouslyAllowedOriginsForAuthenticatedEnvironments,
userAuthenticationService,
});
return _store.studyInstanceUIDMap.get(evaluatedUrl.normalizedUrl);
} catch {
return;
}
},
getConfig: () => dicomJsonConfig,
};
return IWebApiDataSource.create(implementation);
}
@@ -1,5 +1,6 @@
import { IWebApiDataSource } from '@ohif/core';
import { createDicomWebApi } from '../DicomWebDataSource/index';
import { resolveConfigFetchPolicy, fetchConfigJson } from '../utils/secureConfigFetch';
/**
* This datasource is initialized with a url that returns a JSON object with a
@@ -11,6 +12,7 @@ import { createDicomWebApi } from '../DicomWebDataSource/index';
*/
function createDicomWebProxyApi(dicomWebProxyConfig, servicesManager: AppTypes.ServicesManager) {
const { name } = dicomWebProxyConfig;
const { userAuthenticationService } = servicesManager.services;
let dicomWebDelegate = undefined;
const implementation = {
@@ -20,12 +22,14 @@ function createDicomWebProxyApi(dicomWebProxyConfig, servicesManager: AppTypes.S
if (!url) {
throw new Error(`No url for '${name}'`);
} else {
const response = await fetch(url);
const data = await response.json();
const evaluatedUrl = resolveConfigFetchPolicy(url, {
allowedOrigins: dicomWebProxyConfig.dangerouslyAllowedOriginsForAuthenticatedEnvironments,
userAuthenticationService,
});
const data = await fetchConfigJson(evaluatedUrl);
if (!data.servers?.dicomWeb?.[0]) {
throw new Error('Invalid configuration returned by url');
}
dicomWebDelegate = createDicomWebApi(
data.servers.dicomWeb[0].configuration || data.servers.dicomWeb[0],
servicesManager
@@ -54,9 +58,16 @@ function createDicomWebProxyApi(dicomWebProxyConfig, servicesManager: AppTypes.S
store: {
dicom: (...args) => dicomWebDelegate.store.dicom(...args),
},
deleteStudyMetadataPromise: (...args) => dicomWebDelegate.deleteStudyMetadataPromise(...args),
getImageIdsForDisplaySet: (...args) => dicomWebDelegate.getImageIdsForDisplaySet(...args),
getImageIdsForInstance: (...args) => dicomWebDelegate.getImageIdsForInstance(...args),
reject: {
series: (...args) => dicomWebDelegate?.reject?.series?.(...args),
},
deleteStudyMetadataPromise: (...args) => dicomWebDelegate?.deleteStudyMetadataPromise?.(...args),
getImageIdsForDisplaySet: (...args) => dicomWebDelegate?.getImageIdsForDisplaySet?.(...args),
getImageIdsForInstance: (...args) => dicomWebDelegate?.getImageIdsForInstance?.(...args),
getConfig: (...args) =>
dicomWebDelegate?.getConfig?.(...args) ?? {
dicomUploadEnabled: false,
},
getStudyInstanceUIDs({ params, query }) {
let studyInstanceUIDs = [];
@@ -0,0 +1,115 @@
// @ts-nocheck
function normalizeAllowedOrigins(allowedOrigins = []) {
if (!Array.isArray(allowedOrigins)) {
return [];
}
const configuredOrigins = allowedOrigins
.filter(origin => typeof origin === 'string')
.map(origin => origin.trim())
.filter(Boolean);
return configuredOrigins
.map(origin => {
try {
const parsedOrigin = new URL(origin);
if (!['http:', 'https:'].includes(parsedOrigin.protocol)) {
console.error(
`[secureConfigFetch] Ignoring misconfigured allowed origin "${origin}". ` +
'Entries must use http:// or https://.'
);
return null;
}
if (
parsedOrigin.username ||
parsedOrigin.password ||
parsedOrigin.pathname !== '/' ||
parsedOrigin.search ||
parsedOrigin.hash
) {
console.error(
`[secureConfigFetch] Ignoring misconfigured allowed origin "${origin}". ` +
'Entries must be bare origins only (scheme + host + optional port), with no username/password, path, query, or hash.'
);
return null;
}
return parsedOrigin.origin;
} catch {
console.error(
`[secureConfigFetch] Ignoring misconfigured allowed origin "${origin}". Entry is not a valid URL.`
);
return null;
}
})
.filter(Boolean);
}
function resolveConfigUrl(rawUrl) {
if (!rawUrl || typeof rawUrl !== 'string') {
throw new Error('Missing required "url" query parameter');
}
try {
return new URL(rawUrl, window.location.href);
} catch {
throw new Error('Invalid URL in "url" query parameter');
}
}
function resolveConfigFetchPolicy(rawUrl, policy = {}) {
const { allowedOrigins = [], userAuthenticationService } = policy;
const parsedUrl = resolveConfigUrl(rawUrl);
const protocol = parsedUrl.protocol.toLowerCase();
const isSameOrigin = parsedUrl.origin === window.location.origin;
if (!['http:', 'https:'].includes(protocol)) {
throw new Error('Only HTTP(S) URLs are allowed for dynamic datasource configuration');
}
if (parsedUrl.hash) {
throw new Error('URL fragments are not allowed for dynamic datasource configuration');
}
if (parsedUrl.username || parsedUrl.password) {
throw new Error('URL userinfo is not allowed for dynamic datasource configuration');
}
const isAuthenticated = Boolean(
userAuthenticationService?.getAuthorizationHeader?.()?.Authorization
);
if (isAuthenticated && !isSameOrigin) {
const normalizedAllowedOrigins = normalizeAllowedOrigins(allowedOrigins);
if (!normalizedAllowedOrigins.length || !normalizedAllowedOrigins.includes(parsedUrl.origin)) {
throw new Error(
`Blocked remote configuration origin "${parsedUrl.origin}" in authenticated environment`
);
}
}
return {
parsedUrl,
normalizedUrl: parsedUrl.toString(),
isAuthenticated,
isSameOrigin,
};
}
async function fetchConfigJson(normalizedPolicy) {
const { normalizedUrl } = normalizedPolicy;
const response = await fetch(normalizedUrl, {
method: 'GET',
mode: 'cors',
credentials: 'same-origin',
redirect: 'error',
referrerPolicy: 'no-referrer',
});
if (!response.ok) {
throw new Error(`Failed to fetch dynamic datasource configuration (${response.status})`);
}
return response.json();
}
export { resolveConfigFetchPolicy, fetchConfigJson };
@@ -0,0 +1,163 @@
// @ts-nocheck
import { resolveConfigFetchPolicy, fetchConfigJson } from './secureConfigFetch';
describe('secureConfigFetch', () => {
describe('resolveConfigFetchPolicy', () => {
it('allows arbitrary origin in unauthenticated environments', () => {
const result = resolveConfigFetchPolicy('https://untrusted.example.com/config.json', {
userAuthenticationService: {
getAuthorizationHeader: () => ({}),
},
});
expect(result.normalizedUrl).toBe('https://untrusted.example.com/config.json');
expect(result.isAuthenticated).toBe(false);
expect(result.isSameOrigin).toBe(false);
});
it('blocks non-allowlisted origins in authenticated environments', () => {
expect(() =>
resolveConfigFetchPolicy('https://untrusted.example.com/config.json', {
allowedOrigins: ['https://trusted.example.com'],
userAuthenticationService: {
getAuthorizationHeader: () => ({ Authorization: 'Bearer token123' }),
},
})
).toThrow('Blocked remote configuration origin');
});
it('allows allowlisted origin in authenticated environments', () => {
const result = resolveConfigFetchPolicy('http://localhost:5000/config.json', {
allowedOrigins: ['http://localhost:5000', 'https://trusted.example.com'],
userAuthenticationService: {
getAuthorizationHeader: () => ({ Authorization: 'Bearer token123' }),
},
});
expect(result.normalizedUrl).toBe('http://localhost:5000/config.json');
expect(result.isAuthenticated).toBe(true);
expect(result.isSameOrigin).toBe(false);
});
it('blocks authenticated fetch when allowlist is missing', () => {
expect(() =>
resolveConfigFetchPolicy('https://noTrustList.example.com/config.json', {
userAuthenticationService: {
getAuthorizationHeader: () => ({ Authorization: 'Bearer token123' }),
},
})
).toThrow('Blocked remote configuration origin');
});
it('allows same-origin in authenticated environments without allowlist', () => {
const result = resolveConfigFetchPolicy('/protected/config.json', {
userAuthenticationService: {
getAuthorizationHeader: () => ({ Authorization: 'Bearer token123' }),
},
});
expect(result.normalizedUrl).toBe(`${window.location.origin}/protected/config.json`);
expect(result.isAuthenticated).toBe(true);
expect(result.isSameOrigin).toBe(true);
});
it('rejects embedded userinfo in config URLs', () => {
expect(() =>
resolveConfigFetchPolicy('https://user:pass@trusted.example.com/config.json', {
allowedOrigins: ['https://trusted.example.com'],
userAuthenticationService: {
getAuthorizationHeader: () => ({ Authorization: 'Bearer token123' }),
},
})
).toThrow('URL userinfo is not allowed for dynamic datasource configuration');
});
});
describe('fetchConfigJson', () => {
const originalFetch = global.fetch;
beforeEach(() => {
global.fetch = jest.fn();
});
afterEach(() => {
jest.restoreAllMocks();
global.fetch = originalFetch;
});
it('uses hardened fetch options for unauthenticated cross-origin requests', async () => {
global.fetch.mockResolvedValue({
status: 200,
ok: true,
json: async () => ({ ok: true }),
});
await fetchConfigJson({
normalizedUrl: 'https://example.com/config.json',
isAuthenticated: false,
isSameOrigin: false,
});
expect(global.fetch).toHaveBeenCalledWith(
'https://example.com/config.json',
expect.objectContaining({
method: 'GET',
mode: 'cors',
credentials: 'same-origin',
redirect: 'error',
referrerPolicy: 'no-referrer',
})
);
});
it('uses hardened fetch options for unauthenticated same-origin requests', async () => {
global.fetch.mockResolvedValue({
status: 200,
ok: true,
json: async () => ({ ok: true }),
});
await fetchConfigJson({
normalizedUrl: `${window.location.origin}/protected/config.json`,
isAuthenticated: false,
isSameOrigin: true,
});
expect(global.fetch).toHaveBeenCalledWith(
`${window.location.origin}/protected/config.json`,
expect.objectContaining({
method: 'GET',
mode: 'cors',
credentials: 'same-origin',
redirect: 'error',
referrerPolicy: 'no-referrer',
})
);
});
it('uses hardened fetch options in authenticated environments', async () => {
global.fetch.mockResolvedValue({
status: 200,
ok: true,
json: async () => ({ ok: true }),
});
await fetchConfigJson({
normalizedUrl: 'https://trusted.example.com/config.json',
isAuthenticated: true,
isSameOrigin: false,
});
expect(global.fetch).toHaveBeenCalledWith(
'https://trusted.example.com/config.json',
expect.objectContaining({
method: 'GET',
mode: 'cors',
credentials: 'same-origin',
redirect: 'error',
referrerPolicy: 'no-referrer',
})
);
});
});
});
@@ -24,7 +24,9 @@ export default function areAllImageSpacingEqual(
return;
}
const lastIpp = toNumber(instances[instances.length - 1].ImagePositionPatient);
if (!lastIpp) {
return;
}
const averageSpacingBetweenFrames =
_getPerpendicularDistance(firstImagePositionPatient, lastIpp) / (instances.length - 1);
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-dicom-microscopy
+5 -5
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-dicom-microscopy",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for DICOM microscopy",
"author": "Bill Wallace, md-prog",
"license": "MIT",
@@ -30,10 +30,10 @@
"start": "yarn run dev"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"@ohif/core": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/i18n": "3.12.5",
"@ohif/ui": "3.12.5",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
+134
View File
@@ -3,6 +3,140 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-dicom-pdf
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-dicom-pdf",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for PDF display",
"author": "OHIF",
"license": "MIT",
@@ -30,9 +30,9 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
+134
View File
@@ -3,6 +3,140 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-dicom-video
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-dicom-video
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-dicom-video
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-dicom-video
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-dicom-video
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-dicom-video",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for video display",
"author": "OHIF",
"license": "MIT",
@@ -30,9 +30,9 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-measurement-tracking
+10 -10
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-measurement-tracking",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Tracking features and functionality for basic image viewing",
"author": "OHIF Core Team",
"license": "MIT",
@@ -32,24 +32,24 @@
"start": "yarn run dev"
},
"peerDependencies": {
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/tools": "4.15.9",
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/tools": "4.15.29",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/ui": "3.12.5",
"classnames": "2.5.1",
"dcmjs": "0.45.0",
"dcmjs": "0.49.4",
"lodash.debounce": "4.0.8",
"prop-types": "15.8.1",
"react": "18.3.1",
"react-dom": "18.3.1",
"webpack": "5.89.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@ohif/ui": "3.12.0-beta.124",
"@ohif/ui": "3.12.5",
"@xstate/react": "3.2.2",
"xstate": "4.38.3"
}
+134
View File
@@ -3,6 +3,140 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-test
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-test
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-test
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-test
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-test
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-test",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension used inside e2e testing",
"author": "OHIF",
"license": "MIT",
@@ -30,9 +30,9 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
+134
View File
@@ -3,6 +3,140 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-tmtv
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-tmtv
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-tmtv
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-tmtv
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-tmtv
+4 -4
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-tmtv",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF extension for Total Metabolic Tumor Volume",
"author": "OHIF",
"license": "MIT",
@@ -30,9 +30,9 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"dcmjs": "0.45.0",
"@ohif/core": "3.12.5",
"@ohif/ui": "3.12.5",
"dcmjs": "0.49.4",
"dicom-parser": "1.8.21",
"hammerjs": "2.0.8",
"prop-types": "15.8.1",
+140
View File
@@ -3,6 +3,146 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
### Bug Fixes
* **security:** Update various dependencies to fix security vulnerabilities. Release 3.12.2 ([#6024](https://github.com/OHIF/Viewers/issues/6024)) ([75a24a3](https://github.com/OHIF/Viewers/commit/75a24a33935bda8779da30ef9b725b387d80723d))
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/extension-ultrasound-pleura-bline
+11 -15
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/extension-ultrasound-pleura-bline",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "",
"author": "Rodrigo Basilio",
"license": "MIT",
@@ -37,22 +37,21 @@
"react-i18next": "12.3.1",
"react-router": "6.30.3",
"react-router-dom": "6.30.3",
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/tools": "4.15.9",
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/ui-next": "3.12.0-beta.124"
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/tools": "4.15.29",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/i18n": "3.12.5",
"@ohif/ui-next": "3.12.5"
},
"devDependencies": {
"@babel/core": "7.28.0",
"@babel/eslint-parser": "7.28.0",
"@babel/plugin-syntax-dynamic-import": "7.8.3",
"@babel/plugin-transform-arrow-functions": "7.27.1",
"@babel/plugin-transform-class-properties": "7.27.1",
@@ -62,19 +61,16 @@
"@babel/plugin-transform-regenerator": "7.28.1",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "7.27.1",
"@babel/preset-typescript": "7.27.1",
"@svgr/webpack": "8.1.0",
"babel-loader": "8.4.1",
"babel-plugin-module-resolver": "5.0.2",
"clean-webpack-plugin": "3.0.0",
"copy-webpack-plugin": "9.1.0",
"cross-env": "7.0.3",
"dotenv": "8.6.0",
"eslint": "8.57.1",
"eslint-loader": "2.2.1",
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
}
+1 -1
View File
@@ -1,5 +1,5 @@
{
"version": "3.12.0-beta.124",
"version": "3.12.5",
"packages": ["extensions/*", "platform/*", "modes/*", "addOns/externals/*"],
"npmClient": "yarn"
}
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-basic-dev-mode
+8 -8
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-basic-dev-mode",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Basic OHIF Viewer Using Cornerstone",
"author": "OHIF",
"license": "MIT",
@@ -31,19 +31,19 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"i18next": "17.3.1"
},
"devDependencies": {
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
}
}
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-test
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-test
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-test
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-test
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-test
+10 -10
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-test",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Basic mode for testing",
"author": "OHIF",
"license": "MIT",
@@ -34,21 +34,21 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124",
"@ohif/extension-measurement-tracking": "3.12.0-beta.124",
"@ohif/extension-test": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5",
"@ohif/extension-measurement-tracking": "3.12.5",
"@ohif/extension-test": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"i18next": "17.3.1"
},
"devDependencies": {
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
}
}
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-basic
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-basic
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-basic
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-basic
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-basic
+10 -10
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-basic",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "A basic mode used to build other modes on top of",
"author": "OHIF Contributors",
"license": "MIT",
@@ -21,20 +21,20 @@
"yarn": ">=1.16.0"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-rt": "3.12.5",
"@ohif/extension-cornerstone-dicom-seg": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2"
},
"devDependencies": {
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
},
"scripts": {
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-longitudinal
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-longitudinal
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-longitudinal
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-longitudinal
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-longitudinal
+12 -12
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-longitudinal",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Longitudinal Workflow",
"author": "OHIF",
"license": "MIT",
@@ -34,23 +34,23 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124",
"@ohif/extension-measurement-tracking": "3.12.0-beta.124",
"@ohif/mode-basic": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-rt": "3.12.5",
"@ohif/extension-cornerstone-dicom-seg": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5",
"@ohif/extension-measurement-tracking": "3.12.5",
"@ohif/mode-basic": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"i18next": "17.3.1"
},
"devDependencies": {
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
}
}
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-microscopy
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-microscopy
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-microscopy
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-microscopy
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-microscopy
+3 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-microscopy",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF mode for DICOM microscopy",
"author": "OHIF",
"license": "MIT",
@@ -35,8 +35,8 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-dicom-microscopy": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-dicom-microscopy": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2",
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-preclinical-4d
+8 -8
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-preclinical-4d",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "4D Workflow",
"author": "OHIF",
"license": "MIT",
@@ -33,18 +33,18 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dynamic-volume": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-tmtv": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-seg": "3.12.5",
"@ohif/extension-cornerstone-dynamic-volume": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-tmtv": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2"
},
"devDependencies": {
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
}
}
+131
View File
@@ -3,6 +3,137 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-segmentation
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-segmentation
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-segmentation
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
### Bug Fixes
* **security:** Update various dependencies to fix security vulnerabilities. Release 3.12.2 ([#6024](https://github.com/OHIF/Viewers/issues/6024)) ([75a24a3](https://github.com/OHIF/Viewers/commit/75a24a33935bda8779da30ef9b725b387d80723d))
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-segmentation
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-segmentation
+12 -15
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-segmentation",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "OHIF segmentation mode which enables labelmap segmentation read/edit/export",
"author": "@ohif",
"license": "MIT",
@@ -35,15 +35,15 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124",
"@ohif/mode-basic": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-rt": "3.12.5",
"@ohif/extension-cornerstone-dicom-seg": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5",
"@ohif/mode-basic": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2",
@@ -51,7 +51,6 @@
},
"devDependencies": {
"@babel/core": "7.28.0",
"@babel/eslint-parser": "7.28.0",
"@babel/plugin-syntax-dynamic-import": "7.8.3",
"@babel/plugin-transform-arrow-functions": "7.27.1",
"@babel/plugin-transform-class-properties": "7.27.1",
@@ -60,7 +59,7 @@
"@babel/plugin-transform-regenerator": "7.28.1",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "7.27.1",
"@babel/preset-typescript": "7.27.1",
"@svgr/webpack": "8.1.0",
@@ -69,9 +68,7 @@
"copy-webpack-plugin": "9.1.0",
"cross-env": "7.0.3",
"dotenv": "8.6.0",
"eslint": "8.57.1",
"eslint-loader": "2.2.1",
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
}
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-tmtv
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-tmtv
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-tmtv
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-tmtv
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-tmtv
+9 -9
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-tmtv",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Total Metabolic Tumor Volume Workflow",
"author": "OHIF",
"license": "MIT",
@@ -34,20 +34,20 @@
"test:unit:ci": "jest --ci --runInBand --collectCoverage --passWithNoTests"
},
"peerDependencies": {
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124",
"@ohif/extension-measurement-tracking": "3.12.0-beta.124"
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5",
"@ohif/extension-measurement-tracking": "3.12.5"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"i18next": "17.3.1"
},
"devDependencies": {
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-merge": "5.10.0"
}
}
+140
View File
@@ -3,6 +3,146 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
### Bug Fixes
* **security:** Update various dependencies to fix security vulnerabilities. Release 3.12.2 ([#6024](https://github.com/OHIF/Viewers/issues/6024)) ([75a24a3](https://github.com/OHIF/Viewers/commit/75a24a33935bda8779da30ef9b725b387d80723d))
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/mode-ultrasound-pleura-bline
+8 -11
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/mode-ultrasound-pleura-bline",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Allows users to annotate ultrasound images with pleura B-line annotations.",
"author": "OHIF",
"license": "MIT",
@@ -34,16 +34,15 @@
},
"dependencies": {
"@babel/runtime": "7.28.2",
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/tools": "4.15.9",
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.124",
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/tools": "4.15.29",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-ultrasound-pleura-bline": "3.12.5",
"i18next": "17.3.1"
},
"devDependencies": {
"@babel/core": "7.28.0",
"@babel/eslint-parser": "7.28.0",
"@babel/plugin-syntax-dynamic-import": "7.8.3",
"@babel/plugin-transform-arrow-functions": "7.27.1",
"@babel/plugin-transform-class-properties": "7.27.1",
@@ -52,7 +51,7 @@
"@babel/plugin-transform-regenerator": "7.28.1",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "7.27.1",
"@babel/preset-typescript": "7.27.1",
"@svgr/webpack": "8.1.0",
@@ -61,9 +60,7 @@
"copy-webpack-plugin": "9.1.0",
"cross-env": "7.0.3",
"dotenv": "8.6.0",
"eslint": "8.57.1",
"eslint-loader": "2.2.1",
"webpack": "5.95.0",
"webpack": "5.105.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
}
+24 -11
View File
@@ -49,7 +49,7 @@
"install:update-lockfile": "yarn install && bun install --config=./bunfig.update-lockfile.toml",
"install:yarn:frozen-lockfile": "echo Deprecated - use install:frozen && yarn install --frozen-lockfile",
"install:frozen": "yarn install --frozen-lockfile",
"audit": "bun audit --ignore=GHSA-5j98-mcp5-4vw2",
"audit": "bun audit --ignore=GHSA-3ppc-4f35-3m26 --ignore=GHSA-7r86-cg39-jmmj --ignore=GHSA-23c5-xmqv-rm74 --ignore=GHSA-c2c7-rcm5-vvqj",
"preinstall": "node preinstall.js",
"start": "yarn run dev",
"test": "yarn run test:unit",
@@ -97,22 +97,20 @@
"@babel/plugin-transform-regenerator": "7.28.1",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "7.27.1",
"@babel/preset-typescript": "7.27.1",
"@istanbuljs/nyc-config-typescript": "1.0.2",
"@pmmmwh/react-refresh-webpack-plugin": "0.5.17",
"babel-loader": "8.4.1",
"babel-plugin-istanbul": "7.0.0",
"babel-plugin-istanbul": "7.0.1",
"babel-plugin-transform-import-meta": "2.3.3",
"cross-env": "7.0.3",
"css-loader": "6.11.0",
"cypress": "14.5.2",
"cypress-file-upload": "5.0.8",
"file-loader": "6.2.0",
"istanbul": "0.4.5",
"nyc": "17.1.0",
"patch-package": "8.0.0",
"playwright-test-coverage": "1.2.12",
"postcss-loader": "6.2.1",
"prettier": "3.6.2",
@@ -139,22 +137,37 @@
"commander": "8.3.0",
"cross-env": "7.0.3",
"cross-spawn": "7.0.6",
"dcmjs": "0.45.0",
"path-to-regexp": "0.1.12",
"dcmjs": "0.49.4",
"path-to-regexp": "0.1.13",
"nth-check": "2.1.1",
"trim-newlines": "5.0.0",
"glob-parent": "6.0.2",
"trim": "1.0.1",
"package-json": "8.1.1",
"rollup": "2.79.2",
"rollup": "2.80.0",
"body-parser": "1.20.3",
"axios": "1.12.0",
"axios": "1.17.0",
"core-js": "3.45.1",
"@babel/runtime-corejs2": "7.26.10",
"tapable": "2.2.2",
"@cornerstonejs/codec-openjpeg": "1.3.0",
"node-forge": "1.3.2",
"qs": "6.14.1"
"node-forge": "1.4.0",
"qs": "6.14.1",
"lodash": "4.18.1",
"lodash-es": "4.18.1",
"diff": "5.2.2",
"webpack": "5.105.0",
"tar": "7.5.11",
"serialize-javascript": "7.0.4",
"svgo": "3.3.3",
"flatted": "3.4.2",
"handlebars": "4.7.9",
"protobufjs": "7.6.1",
"@babel/plugin-transform-modules-systemjs": "7.29.4",
"tmp": "0.2.7",
"form-data": "4.0.6",
"ws": "8.21.0",
"shell-quote": "1.8.4"
},
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
}
+137
View File
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/app
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/app
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/app
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/app
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/app
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/app
+1 -1
View File
@@ -19,7 +19,7 @@
[build.environment]
# If 'production', `yarn install` does not install devDependencies
NODE_ENV = "development"
NODE_VERSION = "20.18.1"
NODE_VERSION = "20.19.0"
YARN_VERSION = "1.22.5"
RUBY_VERSION = "2.6.2"
YARN_FLAGS = "--no-ignore-optional --pure-lockfile"
+22 -22
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/app",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"productVersion": "3.4.0",
"description": "OHIF Viewer",
"author": "OHIF Contributors",
@@ -53,33 +53,33 @@
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
"@cornerstonejs/codec-openjpeg": "1.3.0",
"@cornerstonejs/codec-openjph": "2.4.7",
"@cornerstonejs/dicom-image-loader": "4.15.9",
"@cornerstonejs/dicom-image-loader": "4.15.29",
"@emotion/serialize": "1.3.3",
"@ohif/core": "3.12.0-beta.124",
"@ohif/extension-cornerstone": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-rt": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-seg": "3.12.0-beta.124",
"@ohif/extension-cornerstone-dicom-sr": "3.12.0-beta.124",
"@ohif/extension-default": "3.12.0-beta.124",
"@ohif/extension-dicom-microscopy": "3.12.0-beta.124",
"@ohif/extension-dicom-pdf": "3.12.0-beta.124",
"@ohif/extension-dicom-video": "3.12.0-beta.124",
"@ohif/extension-test": "3.12.0-beta.124",
"@ohif/extension-ultrasound-pleura-bline": "3.12.0-beta.124",
"@ohif/i18n": "3.12.0-beta.124",
"@ohif/mode-basic-dev-mode": "3.12.0-beta.124",
"@ohif/mode-longitudinal": "3.12.0-beta.124",
"@ohif/mode-microscopy": "3.12.0-beta.124",
"@ohif/mode-test": "3.12.0-beta.124",
"@ohif/mode-ultrasound-pleura-bline": "3.12.0-beta.124",
"@ohif/ui": "3.12.0-beta.124",
"@ohif/ui-next": "3.12.0-beta.124",
"@ohif/core": "3.12.5",
"@ohif/extension-cornerstone": "3.12.5",
"@ohif/extension-cornerstone-dicom-rt": "3.12.5",
"@ohif/extension-cornerstone-dicom-seg": "3.12.5",
"@ohif/extension-cornerstone-dicom-sr": "3.12.5",
"@ohif/extension-default": "3.12.5",
"@ohif/extension-dicom-microscopy": "3.12.5",
"@ohif/extension-dicom-pdf": "3.12.5",
"@ohif/extension-dicom-video": "3.12.5",
"@ohif/extension-test": "3.12.5",
"@ohif/extension-ultrasound-pleura-bline": "3.12.5",
"@ohif/i18n": "3.12.5",
"@ohif/mode-basic-dev-mode": "3.12.5",
"@ohif/mode-longitudinal": "3.12.5",
"@ohif/mode-microscopy": "3.12.5",
"@ohif/mode-test": "3.12.5",
"@ohif/mode-ultrasound-pleura-bline": "3.12.5",
"@ohif/ui": "3.12.5",
"@ohif/ui-next": "3.12.5",
"@svgr/webpack": "8.1.0",
"@types/react": "18.3.23",
"classnames": "2.5.1",
"core-js": "3.45.1",
"cornerstone-math": "0.1.10",
"dcmjs": "0.45.0",
"dcmjs": "0.49.4",
"detect-gpu": "4.0.50",
"dicom-parser": "1.8.21",
"dotenv-webpack": "1.8.0",
+12
View File
@@ -251,6 +251,12 @@ window.config = {
configuration: {
friendlyName: 'dicomweb delegating proxy',
name: 'dicomwebproxy',
// Security controls for runtime ?url=... datasource loading:
// In authenticated environments, runtime ?url origins must be allowlisted:
// dangerouslyAllowedOriginsForAuthenticatedEnvironments: [
// 'https://config.example.com',
// 'http://localhost:5000',
// ],
},
},
{
@@ -259,6 +265,12 @@ window.config = {
configuration: {
friendlyName: 'dicom json',
name: 'json',
// Security controls for runtime ?url=... datasource loading:
// In authenticated environments, runtime ?url origins must be allowlisted:
// dangerouslyAllowedOriginsForAuthenticatedEnvironments: [
// 'https://config.example.com',
// 'http://localhost:5000',
// ],
},
},
{
+131
View File
@@ -3,6 +3,137 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/cli
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/cli
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/cli
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
### Bug Fixes
* **security:** Update various dependencies to fix security vulnerabilities. Release 3.12.2 ([#6024](https://github.com/OHIF/Viewers/issues/6024)) ([75a24a3](https://github.com/OHIF/Viewers/commit/75a24a33935bda8779da30ef9b725b387d80723d))
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/cli
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/cli
+2 -2
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/cli",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "A CLI to bootstrap new OHIF extension or mode",
"type": "module",
"main": "src/index.js",
@@ -21,7 +21,7 @@
"license": "MIT",
"dependencies": {
"@babel/core": "7.28.0",
"axios": "1.12.0",
"axios": "1.13.5",
"chalk": "5.4.1",
"execa": "8.0.1",
"gitignore": "0.7.0",
@@ -41,20 +41,16 @@
"@babel/plugin-transform-regenerator": "^7.16.7",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "^7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "^7.27.1",
"@babel/preset-typescript": "^7.27.1",
"@babel/plugin-transform-private-property-in-object": "^7.27.1",
"@babel/eslint-parser": "7.28.0",
"babel-loader": "^8.2.4",
"@svgr/webpack": "^8.1.0",
"babel-plugin-module-resolver": "^5.0.0",
"clean-webpack-plugin": "^4.0.0",
"copy-webpack-plugin": "^10.2.0",
"cross-env": "^7.0.3",
"dotenv": "^14.1.0",
"eslint": "^8.39.0",
"eslint-loader": "^2.0.0",
"webpack": "5.89.0",
"webpack-merge": "^5.7.3",
"webpack-cli": "^5.0.2"
@@ -32,18 +32,15 @@
"@babel/plugin-transform-regenerator": "^7.16.7",
"@babel/plugin-transform-runtime": "7.28.0",
"@babel/plugin-transform-typescript": "^7.28.0",
"@babel/preset-env": "7.28.0",
"@babel/preset-env": "7.29.5",
"@babel/preset-react": "^7.27.1",
"@babel/preset-typescript": "^7.27.1",
"@babel/eslint-parser": "7.28.0",
"babel-loader": "^8.0.0-beta.4",
"@svgr/webpack": "^8.1.0",
"clean-webpack-plugin": "^4.0.0",
"copy-webpack-plugin": "^10.2.0",
"cross-env": "^7.0.3",
"dotenv": "^14.1.0",
"eslint": "^8.39.0",
"eslint-loader": "^2.0.0",
"webpack": "5.89.0",
"webpack-merge": "^5.7.3",
"webpack-cli": "^5.0.2"
+137
View File
@@ -3,6 +3,143 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/core
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/core
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/core
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/core
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
### Bug Fixes
* **HistoryMemo:** Segmentation delete wasn't remembered ([#5775](https://github.com/OHIF/Viewers/issues/5775)) ([48f2f6f](https://github.com/OHIF/Viewers/commit/48f2f6fb13f9ba0aa03ad51afd2812466bcb2f58))
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
### Bug Fixes
* **jump-to-label-map:** Use `undefined` for viewportId for arrow navigation. ([#5774](https://github.com/OHIF/Viewers/issues/5774)) ([512aa3b](https://github.com/OHIF/Viewers/commit/512aa3b07f4c783040acd67e3fd2103559a06522))
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
### Bug Fixes
* **TMTV:** Consider blend mode when adding segmentation representations. OHIF-2416, OHIF-2369 ([#5735](https://github.com/OHIF/Viewers/issues/5735)) ([06612fe](https://github.com/OHIF/Viewers/commit/06612fe177e2c31c33fa5c81c092b830a337cac2))
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/core
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/core
+6 -6
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/core",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Generic business logic for web-based medical imaging applications",
"author": "OHIF Core Team",
"license": "MIT",
@@ -37,15 +37,15 @@
"@cornerstonejs/codec-libjpeg-turbo-8bit": "1.2.2",
"@cornerstonejs/codec-openjpeg": "1.3.0",
"@cornerstonejs/codec-openjph": "2.4.7",
"@cornerstonejs/core": "4.15.9",
"@cornerstonejs/dicom-image-loader": "4.15.9",
"@ohif/ui": "3.12.0-beta.124",
"cornerstone-math": "0.1.9",
"@cornerstonejs/core": "4.15.29",
"@cornerstonejs/dicom-image-loader": "4.15.29",
"@ohif/ui": "3.12.5",
"cornerstone-math": "0.1.10",
"dicom-parser": "1.8.21"
},
"dependencies": {
"@babel/runtime": "7.28.2",
"dcmjs": "0.45.0",
"dcmjs": "0.49.4",
"dicomweb-client": "0.10.4",
"gl-matrix": "3.4.3",
"immutability-helper": "3.1.1",
@@ -102,6 +102,8 @@ enum MeasurementChangeType {
export type MeasurementFilter = (measurement) => boolean;
const sourceMissing = new Set();
/**
* MeasurementService class that supports source management and measurement management.
* Sources can be any library that can provide "annotations" (e.g. cornerstone-tools, cornerstone, etc.)
@@ -497,7 +499,10 @@ class MeasurementService extends PubSubService {
mapping => mapping.annotationType === annotationType
);
if (!sourceMapping) {
console.log('No source mapping', source.uid, annotationType, source);
if (!sourceMissing.has(source.uid) ) {
console.log('No source mapping', source.uid, annotationType, source);
sourceMissing.add(source.uid);
}
this.addUnmappedMeasurement(sourceAnnotationDetail, source);
return;
}
+131
View File
@@ -3,6 +3,137 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package ohif-docs
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package ohif-docs
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package ohif-docs
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package ohif-docs
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
### Bug Fixes
* Navigate to contour should work ([#5718](https://github.com/OHIF/Viewers/issues/5718)) ([0fd517d](https://github.com/OHIF/Viewers/commit/0fd517d6ab583652a3667f9af49413648f2755db))
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package ohif-docs
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
@@ -312,6 +312,18 @@ reasons:
However, if you would like to get compressed data in a specific transfer syntax, you can modify the `acceptHeader` configuration or
`requestTransferSyntaxUID` configuration.
### Data Source: stackRetrieveOptions
At the data source configuration level, you can set `stackRetrieveOptions` to customize Cornerstone stack image retrieval. Merged with defaults; only specify overrides. For example, set `streaming: false` when the data source returns uncompressed DICOM (e.g. `application/octet-stream` only) to avoid black image on load:
```js
configuration: {
acceptHeader: ['application/octet-stream'],
stackRetrieveOptions: {
retrieveOptions: { single: { streaming: false } },
},
}
```
## Environment Variables
We use environment variables at build and dev time to change the Viewer's
@@ -66,6 +66,56 @@ http://localhost:3000/viewer?StudyInstanceUIDs=1.2.3.4.5.6.6.7&token=e123125jsdf
## Securing dynamic datasource URLs
When using `dicomwebproxy` or `dicomjson` data sources with a runtime `?url=...` query parameter,
configure explicit trust boundaries to prevent credential exfiltration.
Use these datasource configuration options:
- `dangerouslyAllowedOriginsForAuthenticatedEnvironments`: Origin allowlist used only when the viewer is running in an authenticated environment. Entries may use `http://` or `https://` and can include localhost origins.
Allowed entry format for `dangerouslyAllowedOriginsForAuthenticatedEnvironments`:
- Must be a bare origin only: `scheme://host[:port]`
- `http://` and `https://` are both allowed
- Localhost is allowed when explicitly listed (for example, `http://localhost:5000`)
- Must not include username/password, path, query string, or hash
- Invalid entries are ignored and logged as misconfigured
Policy summary:
- In unauthenticated environments, any HTTP(S) `?url=` origin is allowed.
- In authenticated environments, same-origin `?url=` values are allowed by default.
- In authenticated environments, cross-origin `?url=` values must be present in `dangerouslyAllowedOriginsForAuthenticatedEnvironments`, otherwise loading fails closed.
- In unauthenticated environments, cross-origin config URLs are fetched with:
- `method: 'GET'`
- `mode: 'cors'`
- `credentials: 'omit'`
- `redirect: 'error'`
- `referrerPolicy: 'no-referrer'`
- In unauthenticated environments, same-origin config URLs use a plain `fetch()` call (browser default `credentials: 'same-origin'`).
- Same-origin config URLs are fetched using simple fetch behavior (so same-origin session/cookie auth is preserved).
- In authenticated environments, allowlisted cross-origin config URLs are fetched using simple fetch behavior.
- Returned datasource configuration payloads are consumed as-is (no additional URL/config scrubbing).
Example:
```js
dataSources: [
{
namespace: '@ohif/extension-default.dataSourcesModule.dicomwebproxy',
sourceName: 'dicomwebproxy',
configuration: {
name: 'dicomwebproxy',
dangerouslyAllowedOriginsForAuthenticatedEnvironments: [
'https://config.example.com',
'http://localhost:5000',
],
},
},
]
```
## Implicit Flow vs Authorization Code Flow
The Viewer supports both the Implicit Flow and the Authorization Code Flow. The Implicit Flow is the default currently, as it is easier to set up and use. However, you can opt for better security by using the Authorization Code Flow. To do so, add `useAuthorizationCodeFlow` to the configuration and change the `response_type` from `id_token token` to `code`.
@@ -56,6 +56,7 @@ setActiveSegmentation(viewportId, segmentationId)
getSegmentations()
getSegmentation(segmentationId)
jumpToSegmentCenter(segmentationId, segmentIndex, viewportId)
jumpToSegmentNext(segmentationId, segmentIndex, forViewportId?, direction?, highlightAlpha?, highlightSegment?, animationLength?, highlightHideOthers?, animationFunctionType?)
highlightSegment(segmentationId, segmentIndex, viewportId)
```
@@ -174,3 +175,59 @@ segmentationService.setSegmentColor(
[255, 0, 0, 255] // RGBA
);
```
### Navigation
#### jumpToSegmentNext
Jumps to the next or previous slice that contains the specified segment in the viewport. This method handles both labelmap and contour segmentations:
- For **labelmaps**: Jumps to the segment center
- For **contours**: Cycles through all slices that contain contour data for the segment in the specified direction
```typescript
segmentationService.jumpToSegmentNext(
segmentationId: string,
segmentIndex: number,
forViewportId?: string, // Optional viewport ID. If not provided, applies to all viewports with this segmentation
direction?: number, // 1 for forward (default), -1 for backward
highlightAlpha?: number, // Alpha value for highlighting (0-1), default: 0.9
highlightSegment?: boolean, // Whether to highlight the segment after jumping, default: true
animationLength?: number, // Length of highlight animation in milliseconds, default: 750
highlightHideOthers?: boolean, // Whether to hide other segments during highlight, default: false
animationFunctionType?: EasingFunctionEnum // The easing function to use for animation, default: EASE_IN_OUT
)
```
**Navigation Behavior:**
- **Forward (direction = 1)**: Finds the next slice after the current one that contains the segment. If no slice is found after the current one, wraps around to the first slice with the segment.
- **Backward (direction = -1)**: Finds the previous slice before the current one that contains the segment. If no slice is found before the current one, wraps around to the last slice with the segment.
**Example Usage:**
```typescript
// Jump to next slice with segment 1
segmentationService.jumpToSegmentNext(
segmentationId,
1, // segmentIndex
'viewport-1'
);
// Jump to previous slice with segment 2, with custom highlighting
segmentationService.jumpToSegmentNext(
segmentationId,
2, // segmentIndex
'viewport-1',
-1, // backward direction
0.95, // highlightAlpha
true, // highlightSegment
1000, // animationLength in ms
true // highlightHideOthers
);
// Apply to all viewports with this segmentation
segmentationService.jumpToSegmentNext(
segmentationId,
1 // segmentIndex
// forViewportId omitted - applies to all viewports
);
```
+8 -2
View File
@@ -1,6 +1,6 @@
{
"name": "ohif-docs",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"private": true,
"scripts": {
"docusaurus": "docusaurus",
@@ -97,6 +97,12 @@
"url-loader": "4.1.1"
},
"resolutions": {
"qs": "6.14.1"
"qs": "6.14.1",
"lodash": "4.17.23",
"webpack": "5.105.0",
"sharp": "0.34.5",
"serialize-javascript": "7.0.4",
"rollup": "2.80.0",
"svgo": "3.3.3"
}
}
+344 -355
View File
File diff suppressed because it is too large. Load diff
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/i18n
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/i18n
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/i18n
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/i18n
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/i18n
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/i18n",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Internationalization library for The OHIF Viewer",
"author": "OHIF",
"license": "MIT",
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/ui-next
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/ui-next
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/ui-next
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/ui-next
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/ui-next
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/ui-next",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "Next version of OHIF Viewers UI, more customizable using shadcn/ui",
"main": "dist/ohif-ui-next.umd.js",
"module": "src/index.ts",
+128
View File
@@ -3,6 +3,134 @@
All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
## [3.12.5](https://github.com/OHIF/Viewers/compare/v3.12.4...v3.12.5) (2026-06-17)
**Note:** Version bump only for package @ohif/ui
## [3.12.4](https://github.com/OHIF/Viewers/compare/v3.12.3...v3.12.4) (2026-06-05)
**Note:** Version bump only for package @ohif/ui
## [3.12.3](https://github.com/OHIF/Viewers/compare/v3.12.2...v3.12.3) (2026-05-27)
**Note:** Version bump only for package @ohif/ui
## [3.12.2](https://github.com/OHIF/Viewers/compare/v3.12.1...v3.12.2) (2026-05-18)
**Note:** Version bump only for package @ohif/ui
# [3.12.0](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.135...v3.12.0) (2026-02-06)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.135](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.134...v3.12.0-beta.135) (2026-02-05)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.134](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.133...v3.12.0-beta.134) (2026-02-05)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.133](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.132...v3.12.0-beta.133) (2026-02-04)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.132](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.131...v3.12.0-beta.132) (2026-01-30)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.131](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.130...v3.12.0-beta.131) (2026-01-30)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.130](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.129...v3.12.0-beta.130) (2026-01-28)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.129](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.128...v3.12.0-beta.129) (2026-01-27)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.128](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.127...v3.12.0-beta.128) (2026-01-27)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.127](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.126...v3.12.0-beta.127) (2026-01-22)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.126](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.125...v3.12.0-beta.126) (2026-01-22)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.125](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.124...v3.12.0-beta.125) (2026-01-21)
**Note:** Version bump only for package @ohif/ui
# [3.12.0-beta.124](https://github.com/OHIF/Viewers/compare/v3.12.0-beta.123...v3.12.0-beta.124) (2026-01-16)
**Note:** Version bump only for package @ohif/ui
+2 -3
View File
@@ -1,6 +1,6 @@
{
"name": "@ohif/ui",
"version": "3.12.0-beta.124",
"version": "3.12.5",
"description": "A set of React components for Medical Imaging Viewers",
"author": "OHIF Contributors",
"license": "MIT",
@@ -58,8 +58,7 @@
"react-test-renderer": "18.3.1",
"react-window": "1.8.11",
"react-with-direction": "1.4.0",
"swiper": "8.4.7",
"webpack": "5.95.0"
"webpack": "5.105.0"
},
"devDependencies": {
"@babel/core": "7.28.0",
+2 -9
View File
@@ -8,20 +8,13 @@ export default defineConfig({
workers: process.env.CI ? 6 : undefined,
snapshotPathTemplate: './tests/screenshots{/projectName}/{testFilePath}/{arg}{ext}',
outputDir: './tests/test-results',
reporter: [
[
process.env.CI ? 'json' : 'html',
process.env.CI
? { outputFile: './tests/playwright-report.json' }
: { outputFolder: './tests/playwright-report' },
],
],
reporter: [['html', { outputFolder: './tests/playwright-report' }]],
globalTimeout: 800_000,
timeout: 800_000,
use: {
baseURL: 'http://localhost:3335',
trace: 'on-first-retry',
video: 'on-first-retry',
video: 'retain-on-failure',
testIdAttribute: 'data-cy',
actionTimeout: 10_000,
launchOptions: {
+30 -17
View File
@@ -62,27 +62,40 @@ async function run() {
console.log('Committing and pushing changes...');
await execa('git', ['add', '-A']);
await execa('git', ['commit', '-m', 'chore(version): version.json [skip ci]']);
await execa('git', ['push', 'origin', branchName]);
// On re-runs after a partial release the peer-dep updates above are no-ops,
// leaving nothing staged. Skip the commit/push so the script stays idempotent.
const { stdout: stagedFiles } = await execa('git', ['diff', '--cached', '--name-only']);
if (stagedFiles.trim()) {
await execa('git', ['commit', '-m', 'chore(version): version.json [skip ci]']);
await execa('git', ['push', 'origin', branchName]);
} else {
console.log('No peer-dependency changes to commit, skipping');
}
console.log('Setting the version using lerna...');
// add a message to the commit to indicate that the version was set using lerna
await execa('npx', [
'lerna',
'version',
nextVersion,
'--yes',
'--exact',
'--force-publish',
'--message',
'chore(version): Update package versions [skip ci]',
'--conventional-commits',
'--create-release',
'github',
]);
// Skip lerna version if package versions already match the target (e.g. a
// previous release run finished the version bump but failed before publish).
if (lernaJson.version !== nextVersion.trim()) {
await execa('npx', [
'lerna',
'version',
nextVersion,
'--yes',
'--exact',
'--force-publish',
'--message',
'chore(version): Update package versions [skip ci]',
'--conventional-commits',
'--create-release',
'github',
]);
console.log('Version set using lerna');
console.log('Version set using lerna');
} else {
console.log(`Already at target version ${nextVersion.trim()}, skipping lerna version`);
}
}
run().catch(err => {
Loaded 100 of 129 files, more files were not shown because too many files have changed in this diff. Show more