* Update all the icons
* Turn off global tool sync; watch as the world burns
* Shift a bunch of things around so we can start tracking/setting per element
* ToolBarService to initiate one of three different calls; callback passed to all button types
* SplitButton and Toolbar Button to use new `onInteraction` prop and new toolbar state
* Changes to toolbar button interface and config
* Fix broken layout selector
* Update SR viewport to activate tools in viewport component
* Duplicate activation logic in measurement tracking extension
* Add alternative/dashed variants for SR Viewport
* pass through "setToolActive" commands for other viewport types
* fix small overlay bugs (no wwwc or scale info)
* Show SpacingBetweenSlices instead of PixelSpacing in patient information dialog
* Fix prop-types
* Update tracked viewport to have alternative tracked styling
* alt styling for SR viewports
* Update to support isLocked + isRehydratable
* fix broken logic
* fix broken logic
* switch icon style
* fix icon styles
* hover and click to start flow
* expedited workflow when data is not dirty (just after SR hydration)
* fix: setting elliptical roi tool
* fix arrow annotate dialog
* fix: do not show learn more button for now
* remove dead code
* simpler cache invalidation
* simpler cache invalidation part 2
* Fix for unable to spand study cards on separate pages
* Remove trailing zeroes from patient age
* WIP reject + remove displaySet.
* ohif-316: Update DICOM SR thumbnail design to include a delete action (#1948)
* add "supportsReject" to netlify config
Co-authored-by: Igor Octaviano <igoroctaviano@gmail.com>
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* workflow changes
* Cherry pick OHIF-310 into this PR.
* fix label bug and dead code
* remove comment
* Wire up CreateReportButton
* fix additionalFindingTypes + save interaction
* Remove unused createReportAsync call
* stub for report hydration prompt
* Update PR
* Remove debuggers
* push updated code
* Push updates
* push
* fix sidebar save
* enable tracking of new study or series
* fix for duplicate created report series in sidebard
* fix for unexpected viewport dialog after visiting study list then a new study
* Fix for hydration not marking multiple series as active
* Reviewer changes.
* Respond to final review comment, add series description setting for export.
Co-authored-by: James A. Petts <jamesapetts@gmail.com>
* No more setting on debounce, jumpToMeasurement service set up.
* Fix bug causing a race condition sometimes if you click super fast.
* Optimise rendering of Tracking viewport slightly.
* element => targetElement
* Remove complete TODO
* Respond to reviewer comments.
* Fix e2e workflow.
* Fix regression that removed highlighting on jump to.
* Make sure jump to works from panel as well as viewport.
* Fix typo and remove debugger.
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* WIP
* Reset viewport grid on mode switch.
* Make lifecyclehooks distinct from modules. Add needed SR hydration state on creation.
* Update extensions/cornerstone/src/init.js
* Remove unused REMOVE_MEASUREMENT listener.
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* WIP
* double click to maximise implemented at the viewport grid layer.
* Remove memory of cached layout when the layout is changed, or a different displaySet is set.
* WIP fix double click for cornerstone.
* Update CST
* Prevent maximising when double clicking the action bar
* Update extensions/dicom-sr/src/OHIFCornerstoneSRViewport.js
* Apply suggestions from code review
* Fix conflicts.
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* Only process SR on consumption of viewport.
* Hide handles whilst moving + correct hide handles on hover.
* Up CST version
* Update cst
* Remove added cornerstone viewport checks
* Set measurement as active
* Add basic dialog component
* Update styles and prop types
* Jump to image
* Update dialog
* Format date
* Update summary to use primary modalities
* delete empty studySummary page
* add missing PropTypes import
* fix for accidental sync'd viewports
* CR Updates
* CR Update avoid cache of measurements
* Use get measurement
* Add comment to edit function
* Remove request and merge modalities from series
* Update dependency: react-cornerstone-viewport@2.3.9
react-cornerstone-viewport
* @ohif/extension-cornerstone: 2.3.8 → 2.3.9
* @ohif/extension-dicom-sr: 2.3.8 → 2.3.9
* Update extensions/measurement-tracking/src/panels/PanelMeasurementTableTracking/index.js
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* Add debugs
* remove console.debug
* Update frameindex to imageindex
* Use new rcv debounced function
* Fix hovering
* Update dialog text
* Dismiss dialogs on esc
* Update dependency: react-cornerstone-viewport@3.0.0
react-cornerstone-viewport
* @ohif/extension-cornerstone: 2.3.9 → 3.0.0
* @ohif/extension-dicom-sr: 2.3.9 → 3.0.0
* OHIF-237
* remove console.debug
* Remove dead code brought in from rebase
* EmptyViewport should not display a message
* Remove more dead code from rebase
* fix variable naming
* remove unused hook
* bump yarn lock
* formatting
* Add arrow dialog
* Filter based on trackedSeries
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* Filter segs and fetch correct metadata.
* Initiate seg loading logic on series load into viewport. Need to write.
* Automatic consumption of SEG functional.
* Pull in master.
* Fix issues after pulling in master.
* Clean up old segmentation handlers.
* WIP
* WIP
* Poppulate viewport with metadata.
* Show hide/segmentation in react-vtkjs-viewport.
* feat: 🎸 View segmentations in vtkjs viewport
* Filter segs and fetch correct metadata.
* Initiate seg loading logic on series load into viewport. Need to write.
* Automatic consumption of SEG functional.
* Pull in master.
* Fix issues after pulling in master.
* Clean up old segmentation handlers.
* WIP
* WIP
* Poppulate viewport with metadata.
* Show hide/segmentation in react-vtkjs-viewport.
* feat: 🎸 View segmentations in vtkjs viewport
* Rebase on master.
* format format format
* add basic extension parts
* Updated yarn lock
* Fetch derived/referenced displaysets in sidepanel
* Add buttons, expose seriesDescription, write notes for Danny.
* Add growcut tool extention. -> Move to a seperate repo.
* Change some text fields.
* expose dialog provider
* hide draggable area
* No pointer events for now; need to revisit
* Don't filter seg from the outset for now
* fiddling about
* fix path to series data
* fix logic to determine next available labelmapindex
* Ability to swtich between labelmaps
* Return a promise so we can make sure our labelmap is loaded before pulling metadata
* Better UI to toggle labelmaps
* Fix accidental untoggle of active labelmap for ui
* Remove brush tool from cornerstone extension
* Add cstools in preInit for seg extension
* Add buttons for seg magic
* Hide the measurements panel for now
* Slightly better seg/scissor icons
* Add eraser
* ability to switch segments
* seg color / switcher
* Fix vtk labelmap cache.
* sidepanel should scroll if there's overflow
* Use a fancier range slider
* Slightly prettier buttons
* Push in progress
* A bit more reactive; handle no-meta
* Update to vtk.js 11.14.0 and react-vtkjs-viewport 0.6.0
* chore: kickstart preview
* Fix conflict issues
* Refactor panel
* Isolate increment functions
* Wip segment table
* Hide selector and add scroll to segmentation
* Increase width of segment description
* Hide not used items
* Add new select for segmentations
* Align ui
* Fix default segmentation
* Fix broken import test
* Get measurements panel back and add spacing to grouped buttons
* Hide brush and selector and refresh when switching segmentations
* Add pointer events back and fix broken tests for measurement table
* Update segment list when switching humbnails
* CR Update: Minor UI adjustments
* CR Update: Set active segment
* Move components to components folder
* Add new settings ui
* Integrate configuration
* Improve styles
* Float numbers
* Improve css
* Refresh settings menu if side panel changed
* Fix settings rendering logic and remove comments
* Extract components
* Remove not used tools
* Remove non used extension
* Use style variables and remove comments
* Remove non used dep from lock
* Remove tools
* Remove segmentation from toolbar
* Add todo and brushradius from config
* Fix packagejson growcut import
* Remove webpack config already defined in parent
* Update package json description
* Change component name to british english to us
* Improve prop types
* Rename cornerstone label map event
* Scope css
* Extract and add doc to helper
* Update jsdocs for getDerivedDatasets
* Add proptypes and cr updates
* Update tablistitem proptypes
* config is readonly, rollback destructuring
* Remove event for side panel
* Add jsdocs for util
* Extract getimageid to studymetada
* Use ohif log instead of console
* Remove specific style from side panel
* Fix default props for brush radius
* Descructure configuration props from settings component to avoid invalid props
* Update proptypes to be required (settings)
* Update readme
* Remove commandsmodule
* Get configuration module inside the component
* Set selected segment
* Rename extension and use modality to filter
* Fix for failing tests (#1423)
* hello world
* Finish rebase for Igor.
* Re-fix cornerstoneTools version that got messed up in merge.
* Fix reactivity of isDisabled, write implementation for the SEG panel.
* Nuke yarn.lock to stack CST to 4.12.0
* Remove debugger statements.
* fix: bump cornerstone-tools version to address toFixed issue
* test: force tests for MISTER^MR to navigate to study directly
* test: remove eraser tool test
* test: count is off by one
* test: don't save SR state for the time being
* test: disable more tests
Co-authored-by: James A. Petts <jamesapetts@gmail.com>
Co-authored-by: dannyrb <danny.ri.brown@gmail.com>
Co-authored-by: igoroctaviano] <igoroctaviano@users.noreply.github.com>
Co-authored-by: Mirna Silva <mirna.silva@radicalimaging.com>
* Instance metadata plus metadata provider overhaul.
Fix consumption of wado-uri urls
fallbacks + datatype agnosticism.
WIP DICOMify things.
fix various issues with naturalized variable naming migration.
Remove metadata provider.
Fix consumption of multiframe images and addition of CWIL metadata.
Fix strange build issues.
Fix CWIL style windowWidth to array from naturalized DICOM.
Fix PT, CT, CR and DX issues for cornerstone + DX issues for vtkjs.
Move color palette fetching down to the natuaralized JSON level.
Remove unused StudyMetadataSummary
Remove redundant dicom metadata dictionary.
Working local + json routes.
Fix SR read.
Finished first round of testing + cleaned up debugging etc.
* data => metadata for instance naturalizedJSON
* Update dcmjs version
* Correct github isssues.
* Fix erroneously replaced files.
* Danny's recommended changes.
* Instance metadata plus metadata provider overhaul.
Fix consumption of wado-uri urls
fallbacks + datatype agnosticism.
WIP DICOMify things.
fix various issues with naturalized variable naming migration.
Remove metadata provider.
Fix consumption of multiframe images and addition of CWIL metadata.
Fix strange build issues.
Fix CWIL style windowWidth to array from naturalized DICOM.
Fix PT, CT, CR and DX issues for cornerstone + DX issues for vtkjs.
Move color palette fetching down to the natuaralized JSON level.
Remove unused StudyMetadataSummary
Remove redundant dicom metadata dictionary.
Working local + json routes.
Fix SR read.
Finished first round of testing + cleaned up debugging etc.
* data => metadata for instance naturalizedJSON
* Update dcmjs version
* Correct github isssues.
* Fix erroneously replaced files.
* Danny's recommended changes.
* Update JSON CI
* Update casing of import.
* Fix jump for SR.
* Fix unit tests for measurements service
* Fix json CI test.
* fix: update yarn lock
* Fix local non-encapsulated pdf view
* CI updated to new sucess message.
Co-authored-by: Danny <danny.ri.brown@gmail.com>
* feat: 🎸 MeasurementService
Work in progress...
* Remove cornerstone tools import
* Second iteration
* CR Update: Add update / added events example
* Add new props to measurements
* Update event log
* Add new measurementid to annotation
* Add context support
* Add value types
* Add area
* Add todo
* Wip measurement to annotation map
* Change points representation
* Add props to annotation mapping
* Add tests
* Extract formatter from init and add tests
* Sketch matchers
* Fix events and valuetypes imports
* Remove context support
* Rename formatter to mappings
* Sketching source and source definitions
* Adjust matching criteria in addOrUpdate
* CR Updates: Extract private functions and rename variables
* Fix broken tests
* Add more measurement service tests
* Update broken mapping tests
* Update test description
* Update getAnnotation to get mapping based on def and source
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* feat: 🎸 Configuration so viewer tools can nix handles
Adds a key to cornerstone configuration that allows to toggle on/off
handle rendering
Closes: #1223
* Update extension docs
* Update doc
* docs: include hideHandles configuration in our configuration docs
* chore: default to hiding handles for annotations
* chore: switch to drawHandlesOnHover to mimic legacy viewer functionality
* Flip logic for drawHandlesOnHover; reverse of hideHandles
* Don't hide the handles of ellipse or rectangle roi
* invert check
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
* feat: 🎸 DICOM SR STOW on MeasurementAPI
Closes: #758
* feat: 🎸 Adding the dataExchance from DICOM SR
* feat: 🎸 Fix some issues and get the retrieve measurements working
* feat: 🎸 Preventing measurement tool helpers to broke because the data is not Number (it comes as string from dcmjs)
* feat: 🎸 Adding a button to start testing SATE functionality
* feat: 🎸Small fixes into the code
* feat: 🎸 MAke sure we get latest SR in the study, even on lazyLoad mode
* Revert "feat: 🎸 Preventing measurement tool helpers to broke because the data is not Number (it comes as string from dcmjs)"
This reverts commit 4b3a1efb5810487d2319826fd59c03d779882b5e.
* feat: 🎸 Make sure after sync we update the viewports and also that annotation tools are set to passive, so it can be drawn in the viewports
* feat: 🎸 Remove console logs and start using OHIF.log
* feat: 🎸 Refactor measurement table to use Snackbar service of messages and make sure we only show save button if server type is dicomWeb
* feat: 🎸 Refactor to remove mocked wadoRoot and use server
* Fix to expose error once we can't save the SR
* Update DCMJS into latest dev version
* Update dcmjs with latest fixes
* Fix PR callouts
* Logging error on MeasurementReport creation
* Preventing from breaking on non supported tools and also warning that some toolType is not sopported
* Small error message update
* Expose better the errors and when we have unsopported tools into the measurements
* Renaming variable
* Expose dcmjs tool support check
* Change the way we warn the unsupportedTools
* Adding style to the button
* Small change on button style
* Fix git conflicts
* Fix after merge with latest master
* Fix after merge with master, btn was not clickable
* Fixing callouts
* Adding util functions into files and refactor with JSDocs
* Refactoring code, adding some basic JSDocs
* Bump dcmjs with latest version and fixes
* JSDocs and small refactors
* yarn lock file after dcmjs update
* Remove unused parameters
* Registering a plain copy of server into measurementAPI
* Small refactor
* Start changing from toolType to toolName
* Rename a function to get instanceMetadata
* Adding error if server is not DICOMWeb on retrieve
* Move snackbar outside of UI component and use UINotificationService
* Refactor and JSDocs
* Small fixes on JSDocs (style)
* Remove unused import
* Improve JSDocs on MeasurementApi
* Remove refactor leftover
* Improve JSDocs and propTypes
* JSDocs and small refactors
* Fix ExtensionManager bug and add test to bandaid
* Add tools configuration to extension manager preinit
* Fix reducing of configs
* Merge internal with external configs
* Merge internal with external configs
* Remove dialog from init in measurementstable
* Testing injected configuration
* New way to set config
* Add new prop to dialog provider to allow disabling last position
* Remove code from preinit in cornerstone
* Add new prop to dialog provider to allow disabling last position
* Add centralize to dialogs
* Reorder dialogs when adding them
* Fix draggable styles (cursor)
* Remove repositioning methods from labelling flow and remove overlay from labelling manager
* Fix empty array being set in bringToFront
* Add new command to update table and pass commands manager to modules/preinit hook
* Ad UIContextMenu service / factory
* Use new contextmenu service in measurementspanel extension
* Use dialogs for arrow annotate in default
* Remove positioning funcionality from tool context menu
* Add context menu service
* Pass commandsModule to extension
* Update edit description dialog and simple dialog to position relative
* Remove style code from labelling flow and manager
* Remove eventdata from labelling
* Remove labelling code from measurement init
* Add commandsmanager to provider
* Update contextmenu provider and service
* Add touchstart and mouseclick to hide contextmenu
* Hide labelling if click/touch
* Remove labelling and context menu dead code
* Fix undefined bug if ViewerMain grid has no children
* Fix broken prop on context menu
* Update commandsmodule based on master
* Fix broken configuration
* Update script tag config
* Remove cornerstone from toolcontextmenu
* Remove cornerstone from toolcontextmenu
* Split labelling and context menu providers
* Split labelling and context menu providers
* Update test
* Destructure extensions into new array
* CR Update: Move default arrow config to cornerstone instead of default
* CR Update: Fix app configuration props structure
* CR Update: Fix app configuration prop in script tag and extract commands manager from providers
* CR Update: Create custom providers to use commandsManager
* CR Update: Use services directly in measurementspanel
* CR Update: Pass components to providers
* CR Update: Remove position from dialog
* CR Update: fix dialog prop check
* CR Update: Fix comments
* CR Update: Update documentation
* CR Update: Add test default configuration
* CR Update: Add default empy array to extensions
* CR Update: Update i18n configuration all ot match current function configuration
* CR Update: Add defaults to injected dependencies in configuration and extension configuration
* CR Update: Add defaults to configuration with no args
* Update documentation
* CR Update: Add default for tools
* CR Update: Update config object to i18n
* CR Update: spread defaults
* CR Update: Add tool configuration example to cornerstone extension
* CR Update: Add tool configuration to netlify (testing)
* CR Update: Remove netlify config for tools
* CR Update: Rollback changes to i18n to be fixed later
* CR Update: Update documentation and pass whole cornerstone config object instead of tools key
SEE: https://www.conventionalcommits.org/en/v1.0.0/#commit-message-with-both-and-breaking-change-footer
BREAKING CHANGE: modifies the exposed react <App /> components props. The contract for providing configuration for the app has changed. Please reference updated documentation for guidance.
* Testing dialog
* Refactor modal and add dialog component to simple dialog
* Use existent dialog
* Expect event from getText callback (annotation)
* Bump cornerstone-tools version
* Use simple dialog
* bump cornersotne version
* CR Update: Update dialgo method names and default values
* CR Update: Bump overlay and show only if theres at least one overlay prop set to true
* CR Update: Use percentage over view height in draggable area
* Fix broken test vtk checks WWWC tool
* Comment test (non-deterministic)
* playing around
* Change extension init and preRegistration signature
* Clear test code
* Update core index test
* Fix test
* Tricking the bug
* Renaming file back to trick some weird bug