* feat: add initial sop class handler for SEG
* feat: move segmentation service
* update segmentation service methods
* fix: viewport data structure
* feat: Add initial render for the DICOM SEG for each displaySet
* fix: various wrong architectural dependencies between services
* feat: initial separate SEG display in each viewport
* feat: refactore viewport action bar
* initial work for SEG hydration
* fix: various bugs regarding drag and dropping different viewports
* fix: rendering issues for multiple seg displaysets
* fix: bugs for thumbnail and hydration
* feat: fix the initial segment color
* update after rebase
* feat: initial design for the segmentation group table
* feat: initial new design for the segmentation panel
* feat: segmentation panel
* feat: make segmentation appear on all related viewports
* fix: segmentation load bug based on functional groups
* initial work for segmentation crosshairs
* fix: various stylings and functionality
* fix: various stylings for the seg panel
* fix: overflow styles
* feat: add more ui components
* feat: added segmentation config
* feat: add jump to segment
* feat: add jump to segment for DICOM SEG viewport
* fix: bugs after rebase
* feat: jump in segmentation viewport
* fix: mpr support for seg
* feat: add more icons
* feat: new icons
* feat: add new side panel
* feat: add segmentation config
* feat: add loading indicator to ohif
* feat: make hanging protocols follow matching rules for viewports
* feat: enhance drag and drop to be hanging protocol aware
* fix: mpr restore previous layout
* fix: crosshairs toggle
* fix: add auth headers to the dicom loader via dicomwebclient
* fix: bug for crosshairs toggle in mpr
* fix: seg viewport reusing old toolGroup
* feat: add loading animation with lottie
* fix: various bugs for Segmentation hydration in mpr
* feat: change outline alpha to outline opacity
* feat: loading indicator for seg viewport
* fix: various segmentation group styles
* fix: local mode for seg
* feat: add animation for the highlight
* fix: loading indicatro to show segment indices
* feat: enhance modality drop down ui
* fix: panels
* fix: download form
* fix: layout shift in loading indicator
* fix: loading indicator to have correct values
* fix: update software number
* fix: image jump between MPR and default
* fix: segmentation cleanup and cine service cleanup
* fix: segmentation toolgroup clena up
* fix: highlight interval should not trigger again
* fix: issue with multiframe sorting
* rename: change onSeriesChange to onArrowsClick
* fix: buttons for tmtv and layout shift
* fix: various bugs wrt crosshairs
* fix: crosshairs re init on reset camera
* fix: middle slice calculation different from cs middle reset camera
* fix: reset camera should reset viewport camera
* fix: loading segments in MPR mode
* fix: tmtv hp back to before
* fix: layout shift
* feat: orientation markers for volume viewport
* fix: capture for volume viewports
* fix: memory leak for back to worklist
* fix: loading bar bg color
* fix: side panel for only one panel
* fix: react select style in production
* fix: various styling for segmentation groups
* fix: various ui styles
* feat: add new segmentation config styles
* fix: hover state for segmentation item
* fix: side panel layout shift
* temp add panels
* try to fix scrollbar for thimbnail
* fix: scroll not appearing for side panels
* feat: changed styles for scrollbar
* feat: add cpu fallback warning
* fix: webworker destroy
* fix: select styles
* fix: orientation marker color and position
* fix: capture screenshot for volume viewports
* fix: hide segment visibility on mpr
* fix: reloading an already loaded seg displayset
* feat: add is equal
* fix: mpr jump to measurements
* apply review comments
* fix: optimization for the segmentation load
* fix: remove unnecessary context menu and hp service reset
* fix: segmentation service wrt brush settings
* feat: initial work for the stack synchronization
* fix: add validateDisplaySetSelectorsForNewDisplaySets to make sure drag and drop can follow requirements
* fix: various react proptypes
* fix: thumbnails for the tmtv and change default props to default params
* feat: make showing loading indicator configurable and add docs
* bump versions and add more docs
* fix demo
* update cornerstone versions
* apply review comments
* feat: add reference lines
* fix build
* fix unit tests
* add reference lines icon
* fix: e2e tests
* fix static wado config
* docs: add segmentation service docs
* fix: docker build
* fix: keep camera and bump versions
* Try re-enabling minification to fix deploy previews
Co-authored-by: Erik Ziegler <erik.sweed@gmail.com>
* feat: cs3d working stack viewport and tools (#19)
* Squashed everything
* fix weird react issue
* fix eslint / prettier stuff
* thumbnails work now with cpu rendering
* feat: use new loadImageToCanvas in cs3d
* make jump to measurement work
* fix active thumbnail
* fix measurement delete
* fix window level presets
* remove segmentation and sync groups for now
* fix the dicom pdf and dicom video
* fix cornerstone window assignment for cypress
* apply review comments
Co-authored-by: Erik <erik.sweed@gmail.com>
* feat: cs3d tools and toolGroups (#20)
* add more tools to work with cs3d mode
* fix hotkeys
* add stack manager usage for stach viewports
* add image scrollbar
* wip viewport overlay
* fix toAnnotation schema for tools
* fix the unnecessary size change that triggered resize
* hanging protocol improvement to allow unmatched errors
* study description matching for hanging protocol
* fix the displaysetOptions to work
* fix handle the active tool when a new viewport is added
* fix separate toolGroups for mode
* apply review comments
* apply review comments
* yarn lock
* feat: overlay component (#21)
* fix default displayset options
* add viewport overlay
* apply review comments
* feat: loading and orientation indicators (#22)
* add loading indicator
* add orientation marker initial work
* apply review comments
* fix: orientation markers (#23)
* finished the orientation markers
* fix various broken cypress tests
* apply review comments
* update yarn lock
* feat: re-working measurement tracking mode with cornerstone3d (#2805)
* feat: cs3d working stack viewport and tools (#19)
* Squashed everything
* fix weird react issue
* fix eslint / prettier stuff
* thumbnails work now with cpu rendering
* feat: use new loadImageToCanvas in cs3d
* make jump to measurement work
* fix active thumbnail
* fix measurement delete
* fix window level presets
* remove segmentation and sync groups for now
* fix the dicom pdf and dicom video
* fix cornerstone window assignment for cypress
* apply review comments
Co-authored-by: Erik <erik.sweed@gmail.com>
* feat: Add Measurement tracking mode with cs3D (#2789)
* feat: first render for cornerstone3d tracked viewport
* make tool active work
* wip for SR extension
* renamed dicom sr to cornerstone dicom sr
* remove cornerstone from dicom pdf and video
* move dicom sr logic to sr extension
* feat: Add hydration for the length tool
* fix SR display tool for length using cs3d
* fix default config
* fix: various bugs with sr viewport and tracking
* fix promptying to continue tracking for when SR is created
* feat: add keep trackign of unique identifiers
* fix hydration for same imageIds
* feat: Add SR toolGroup creation on modeEnter
* feat: remove the need for separate mapper for SR hydration
* add SR display for ellipse
* handle hydration of elliptical ROI tool
* remove cornerstone extension
* add arrow mapping
* feat: Add ArrowAnnotate SR display and hydration
* apply review comments
* apply review comments
* move viewport labels to the viewportData
* apply review comments
* fix: integration cypress tests with cornerstone3D and add CINE tool (#2795)
* fix: integration cypress tests with cornerstone3D
* revert to addOrUpdate as it makes more sense
* fix local drag and drop
* fix tests
* move dicomLoaderService to cornerstone extension
* fix various import bugs
* fix bug for local PT series
* fix various unit tests
* bump cs3d versions
* add angle and magnify tool
* bump dependencies to avoid broken peerDeps
* feat: add initial work for capture using cs3d
* feat: show annotations on the image capture
* feat: add svg layer export
* feat: Add CINE Tool
* feat: remove unnecessary viewport rendering for cine state changes
Co-authored-by: Erik Ziegler <erik.sweed@gmail.com>
* docs: modify and improve documentation (#2800)
* cleanup docs versionings
* feat: Add all version explanations
* version docs for 3.0
* wip for changing docs
* wip for updated docs
* add utility module documentation
* fix demo with nohoisting of history
* add slides and video to resources
* apply review comments
* fix: drag and drop SR into SR viewport (#2803)
* update yarn lock
Co-authored-by: Erik <erik.sweed@gmail.com>
* update pathnames to match v3-stable
* update the e2e pathname
* fix: various bugs with regard to tracking workflow (#2811)
* fix: various issues with measurement panel
* fix: update default tool style for annotations
* fix: annotatoin label getting removed
* feat: Add backward compatibility for SR hydration with legacy cornerstone
* fix: cursors and ellipse ROI max style
* fix: ArrowAnnotate SRDisplay
* apply review comments
* bump package versions
* fix: bugin rehydration of SR
* fix: e2e tests
* fix active viewport thickness and arrowTool ui
* add readme for measurement tracking
* use uploaded image for readme
* add back images
* try to fix e2e test
* fix: window level presets hotkeys
* Update README.md
* update yarn lock
* feat: volume api and TMTV mode (#2817)
* feat: volumeAPI and TMTV mode
* feat: use cs3d cache service to obtain viewportData
* wip for volume api
* wip: fusion viewport
* feat: add blend mode option
* wip for image scrollbar
* fix drag and drop thumbnail
* wip for image scrollbar for voluems
* fix: element mismatch bug for scroll
* feat: Add image scrollbar to volumes
* feat: add syncGroups to volume api
* feat: add tmtv mode initial setup
* feat: add initial image options for the stack viewports
* feat: Add custom load strategy for volume viewports via HP
* apply review comments
fix: Jump presets cs3d (#2812)
* feat: Add JumpPreset to OHIF for Cornerstone3D
* fix: accessing viewport service from servicesManager
feat: volume API and TMTV mode (#2814)
* fix: do not display overlays on mip viewports
* feat: add optional disableCommands for toggle buttons
* fix: toggleCrossharis
* feat: config the crosshairs
* feat: add PetSUV Panel for changing metadata
* feat: initial work for the rectangleROIThreshold panel
* wip: measurement service
* roi threshold working
* feat: Add displayText to segmentations
* feat: add remove segmentation
* feat: add csv export
* feat: add RT export for annotations in tmtv mode
* fix: fusion to use pt in tmtv mode and measuremet mappings
* fix: various bugs
* apply review comments
* apply review comments
* feat: add fusion color maps
* add readme to tmtv mode
* Update README.md
* fix: try to fix build
* fix unit tests
* Update README.md
* feat: add about to the panel
* fix: changing strategy in roi panel
* apply review comments
* update package versions
* wip for stackPrefetch
* fix: cornerstone3d hydration and renaming (#2818)
* update readme
* renamed cornerstone extension
* wip for renaming cornerstone3D variables
* wip for renaming cornerstone3D variables
* wip for fixing bugs for SR viewport
* fix: jumpToMeasurement and initial label after hydration
* fix: fileName capitalization
* feat: use the new prefetch stack in the cs3d (#2820)
* feat: use the new prefetch stack in the cs3d
* use viewport scroll api for stack viewport
* fix cine stop when scrollbar changes
* feat: use new prefetch events
* fix loading state to not show repeatedly
* fix: various bugs for tmtv mode thresholding and new icons (#2823)
* feat: make tmtv mode available in worklist
* feat: add new icons for tmtv mode
* feat: add fusion color icon
* fix: parallel scale calculation
* fix: bump Cornerstone to get large image support working
* fix: Fix issues with CPU viewport flipping, including config files
* fix: bump cornerstone to fix magnify tool
* fix: Bump Cornerstone version to fix resetCamera issue in StackViewport
* ci: Add _headers file to enable CORS headers for Netlify Drag/Drop deploys
* fix: WADO-URI was not working. PET Metadata was coming from the wrong place. Fixed some minor React errors
* feat(OHIF):Allow modes and extensions to be added after commpile time. (#2838)
Also works with the compile time add that the existing cli uses, so that both build types work.
Eric and I agreed this doesn't change existing functionality, but is almost entirely build issues/fixes.
* bump: dependency versions to fix hydration bugs (#2848)
* bump: dcmjs version to fix hydration bugs
* try to fix tests
* bump dependency versions
Co-authored-by: Alireza <ar.sedghi@gmail.com>
Co-authored-by: Bill Wallace <wayfarer3130@gmail.com>
* feat: Add initial cli tool structure
* feat: add copying template files
* feat: Add mode template and command
* feat: Add readme template generation
* feat: Add documentation to extension template
* feat: Enhance documentation of the template mode
* fix: cli module type
* feat: Add config-based mode and extension registration (#2660)
* feat: Add ohif cli add/remove extension/mode (#2661)
* Basic working CLI for add-extension and remove-extension
* Basic cli for add/remove extension/mode, lots more to do.
* Cleanup and harden]
* feat: Add list of tasks to add-mode
Co-authored-by: Alireza <ar.sedghi@gmail.com>
* feat: Add git initialization for the mode or extension template (#2662)
* fix: package json file to include templates
* feat: Add git initialization for the mode or extension template
* feat: Add more checks of git and target dir
* feat: refactore library utilities
* feat: Add the list command to print extensions and modes (#2664)
* feat: Add the list command to print extensions and modes
* Add todo
* Feat/ohif cli validation + auto install (#2671)
* WIP
* Working mode keyword verification
* Validation
* auto install extensions based on modes
* WIP remove unused extensions on removeMove
* Working add-mode, remove-mode automatic extension management.
* If extension is in used by a mode, don't allow the CLI to uninstall it
* Cleanup addExtension
* cleanup removeExtension and addMode
* Cleanup removeMode
* Update existing extensions with the needed keywords/peer deps
* Fix broken config
* Feat/cli search (#2677)
* feat: refactor pretty print for console
* feat: add search for modes and extensions
* fix: ugly colors
* Feat/ohif cli error handling publishing (#2679)
* WIP
* fix: webpack imports
* wip
* fix: react router dom private routes
* from last commit
* wip
* fix: webpack prod builds
* WIP
* Working regsitration with new IDs
* Stable
Co-authored-by: Alireza <ar.sedghi@gmail.com>
* verify extensions when constructing modes. (#2681)
* verify extensions when constructing modes.
* Add version to unit tests so it conforms to schema
* Update ohif utils exposed via @ohif/core
* Fix import
* fix tests
* feat: ohif-cli link local modes/extensions for development (#2682)
* feat: enable cli to work with project root
* feat: add initial link package
* feat: add link and unlink extension
* feat: add link and unlink mode
* erro handling for link-package
* feat: add comment on ohif-cli linking for development (#2686)
* Docs/ohif cli (#2687)
* feat: Add documentation for templates
* feat: Add more documentation
* Fix/core publish (#2685)
* versions
* wip
* remove webpack clean output
* fix publish
* use next as dist tag for v3 for now
* fix webpack pro recipe for output
* fix: lerna publish next
* fix(cli): fix issues when trying to link an extension or a mode (#2725)
The generated package.json doesn't contain keywords property which is
required by the linkPackage function. The module apth wasn't correclty
handled too, and when there is no pluginOptions, it fails while reading
the file or while generating a default configuration.
* make dicom pdf and video work after cli merge
* add axios dependency
* comment out the chdir for now
* create id and version based on user inputs
* customizable path for extension and modes
* fix template to make the template mode load
* fix the questions to loop if path is not desirable
* fix templates
* correct package json order
* unify the package creation for extension and mode
* bump versions for each package
* bump extension versions to 3.0
* add gitignore to templates
* fix version requirements when ^
* update docs
* update docs and fix tests
* try to fix the tests
* bump node version
* remove the version from extensions
* remove the version from modes
* remove version from extensionManager
* fix eslint
* revert husky version
* fix eslint
* fix node version for new eslint
* fix documentatoin removing version
* fix cicle ci image version
* fix circle ci node image
* fix circle ci node image
* add back the video and pdf
Co-authored-by: Matthis Duclos <matthis.duclos@gmail.com>
Co-authored-by: James A. Petts <jamesapetts@gmail.com>
* wip on storybook as a replacement for using UI components in docusaurus, since it causes too many problems
* fix: storybook webpack config
* feat: add more stories
* feat: add more stories
* feat: add more stories
* feat: fix logo and babel runtime error
* feat: move to mdx docs for ui
* feat: enhanced mdx for header and styles
* feat: Add button usecases
* feat: Add buttonGroup docs
* feat: Add docs and use case to cine and contex menu
* feat: fix decorators
* feat: add header and dropdown docs
* feat: add Icon and input docs
* feat: add more docs
* feat: add more stories
* fix: feedback section
* feat: Add doc page
* feat: Add typography and color stories
* yarn lock
* add analytics to v3-ui
* new banner image
* new viewport component
* update review comments
This change wraps the E2E test data into a github repository, which is then included in the test builds as static data.
That makes running the e2e tests as simple as:
yarn test:e2e:server
yarn test:e2e
without any need to have docker etc installed/running.
This is the initial addition of the config point settings to allow run time loading of GUI settings via "theme" files/parameters.
The intent is to add an example PR that shows when to use config point, how to configure it, write documentation for it etc.
* feat: update to prerelease of WADO Image Loader, add copy plugin to pull dist/dynamic-import into OHIF
* fix: Set empty public path
* perf: Add webpackPrefetch tags to lazy loaded components
* Switch to using webpack alias to use dynamic import version of WADO Image Loader
* fix lockfile
* prevent polyfilling zlib
* bump to wado image loader 4.0.3 with fix for public path
* Rebased to have just the static view changes
* Changes based on the PR
* Couple more changes for the PR
* Removed an extraneous log
* Fix the study worklist display when returning to the page
* Added some documentation on the static wado data source setup, and a
bounds check change on the Queue test which was failing
* PR updates - change the undefined study description to '' and remove the aws deploy
* Fixed the e2e tests to actually pass/fail correctly on actual results
* fix: Use same config for branch deploys as for deploy previews
* chore: remove unnecessary duplicate build-deploy-preview.sh file
* fix: Attempt to workaround Netlify cache issues for Lerna repos
* chore: Remove useless debug file
* fix: try to make Gatsby less slow
* chore: init lesion-tracker extension
* chore: dev build for lesion-tracker extension
* fix: a more appropriate library name
* chore: fix script naming
This dependency depends on the `favicons` library which depends on
`sharp` which depends on a native library.
This complicates the build process as the library is built from source
because there's no binary available for my macOS Catalina
installation. As this is a common developer setup I expect others to
run into this issue as well, which is why I opted to fix this issue.
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
Co-authored-by: Erik Ziegler <erik.sweed@gmail.com>
* 1316 - E2E tests for /local
* fix test title
* update yarn.lock
* Increased timeout for thumbnails
* Removing PDF file test from script-tag server
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* init
* use workbox-window
* Try to accomodate SW hosted at non root url
* v5 updated namespaces
* Test w/ no prompt
* add icons to manifest
* remove scope for now
* add icon tile information to entrypoint
* See if we can skirt by without a duplicate install
* shift client claims to skip waiting message
* Remove prepended slash
* comment out cache handler for now
* Simplify service-worker to skip waiting and install when a new worker is detected
* Use generated icons
* Update rollbar config
* show package bundle progress
* Ability to run "quick builds" for faster feedback on status checks (e2e)
* ci: speed up PR checks
* specify quick build value
* ci: Set cache key to only use yarn.lock checksum
* Use increasingly general pattern for restoring the cache
* Avoid running script tag e2e tests twice
* Performance improvements for CI
* Valid YAML
* Valid YAML?
* Valid YAML!!!!
* Update Node image, update yarn version
* circle
* serve
* ci: test docs-publish
* Specify to use prod
* Babel should transpile with env set by webpack
* in-progress
* in-progress
* Polyfill for ie11 and edge features
* Ditch polyfills w/ babel - we'll use a service for now
* Bump tools version; shift vtk.js up a layer
* Specify we shouldn't target older than IE 11
* ditch babel plugins that should be covered by preset-env
* Add a top level build demo command
* Let our babel config determine settings
* Same babel fixes as PWA
* Rebuild deps that don't satisfy our target
* Mini helper script for excluding all node_modules, except...
* Shift vtk.js dep up a layer
* Kill core-js
* Export in a node happy way
* Updated yarn lock
* Set NODE_ENV when launching anything w/ WebPack
* docs: updated FAQ
* docs: on browser support
* Add support for redux browser extension
* misc. small clean-up
* docs: Remove roadmap page; add browser-support to sidebar
* Formatting
* Remove roadmap links
* Formatting
* ci: Remove config syntax error
* Simplified bug report template
* update community request template
* Update question's template
* simplify build scripts
* specify new script names
* fix: for measurement api being pruned by minimizer in prod builds
* Use named exports
* Simplify config
* Let's not do so much heavy lifting for a dev-server build
* fix dev build
* Add hotkeys to demo
* fix: jest babel config and env specific configs
* Remove call to non-existant command
* Shift experimental proposal plugin up a layer
* Use `https`
* Try with reduced number of package exceptions
* Try to resolve cypress issue
* Try to fix cypress issue in CI
* Skip https
* ci: test docs-publish
* Specify to use prod
* Babel should transpile with env set by webpack
* chore: production defaults to true; set in --env.production by cli
* Remove lingering merge issue
* Add minimification plugins
* Need relative URLs to find root assets
* Default public url to forward slash in define plugin
* Don't wrap w/ react-hot-loader if we're building for production
* No need to log extensions
* Minimize using terser; and minimize css
* Import redux from es; this bypasses commonjs as import and fixes our "production build" warning
* Split commone webpack build for now to test hotfix
* postfix slash
* undefined safe env access
* Try to fix node_env prod issue w/ redux
* Set NODE_ENV production for all prod builds
* Syntax error
* nix tests
* Increase max amount of available memory
* Don't run bundle analyzer by default
* ci: test docs-publish
* Require unit tests for dry run
* ci: Make sure our docs publish is executable
* Try to correct path issue
* Try repo prefix
* Try as yarn command
* Need a workspace to attach to from previous step
* Add before we call our bash script
* See if we can enforce commands being available -- or just install locally?
* Try again
* Try SSH
* Include username in gh https url
* Note regarding failure on PR branches
* Remove docs publish from PR workflow