Commit Graph

1860 Commits

Author SHA1 Message Date
Alireza
7f0ad6f84d
feat(cli): Ohif cli for modes and extensions modification (#2696)
* 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>
2022-04-06 13:28:42 -04:00
Bill Wallace
82df3eac03
feat(PDF):Add PDF viewer (#2730)
Display DICOM encapsulated PDF documents in a PDF viewer.
Addressed the remaining PR comments, and am merging this.
2022-04-04 09:48:14 -04:00
Bill Wallace
ca9ed62a5f
feat(OHIF):Add DICOM Video Display
* feat(OHIFv3):Add a video viewport

* Fixed a couple of viewing issues

* fix(OHIF):If not all instances are used by a given provider, then continue to add items

* Added video data

* Add a basic e2e test for video display

* Adding a screen shot as requested
2022-02-24 11:55:12 -05:00
Alireza
5c8ee7f906
feat: OHIF-v3 UI Component Library (#2653)
* 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
2022-02-10 14:08:34 -05:00
Erik Ziegler
3c9f3cb273
feat: Update to WADO Image Loader 4.0.3 to add dynamically imported WebAssembly codec support 🚀 (#2538)
* 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
2021-09-24 09:06:52 +02:00
Alireza
46c2dc285c
feat: Add mode validity for the base viewer (#2525)
* feat: Add mode validity for the base viewer

* feat: Edit documentation and remove unnecessary files

* feat: Add probe tool documentation

* docs: Improved screenshots annotations

* Added new screenshot for measurements
2021-08-30 09:36:05 -04:00
Erik Ziegler
ff28a2264b fixes for hotkeys usage in docusaurus 2021-07-21 12:58:15 +02:00
Erik Ziegler
7a9f113b91
Merge branch 'feat/v2-main' into feat/v2-main-docusaurus-netlify-monorepo 2021-07-20 15:55:21 +02:00
Alireza
042dbb13b4
Fix: Google cloud config and tooltips (#2471)
* fix: google cloud config and tooltips

* fix: version number

* fix: cine player commandOptions
2021-07-16 13:32:51 -04:00
Erik Ziegler
97805df68c reorganization to support SSR for component library in docusaurus 2021-07-14 15:26:06 +02:00
Erik Ziegler
825e13bcf3 chore: Upgrade to webpack 5, fix conflicting issues with react-router under docusaurus with yarn workspaces 2021-07-08 15:23:09 +02:00
Erik Ziegler
99b8dc4759
feat: Add White Labelling, Hanging Protocols, and tons of Extensions / Mode fixes
* modified

* new files in existing extensions/libraries/modes

* fixed bugs and tests

* Clean up

* fix: viewport display fixed

* Fixed configs for deployment

* Removed unnecessary files and functions

* Fixed default HP module

* Added white labelling

* Fixed hash routing

* Removed unnecessary routers

Co-authored-by: Alireza Sedghi <ar.sedghi@gmail.com>
2021-05-28 14:32:48 -04:00
Erik Ziegler
0db81b30f3
chore: Clean up unused files, imports, and work on getting end-to-end tests and unit tests running (#2272) 2021-03-01 16:52:54 +01:00
Danny Brown
2f4cba28a5
fix: update DICOMSR and Measurement Panel copy to use L/W (#2174)
* fix: update DICOMSR and Measurement Panel copy to use L/W

* functional viewport

* support the active viewport for snapshot

* Support empty viewport case

* bump cs-tools to pick up misc. fixes
2020-11-18 00:14:52 -05:00
Danny Brown
93fa71a2bf
fix: temporarily hide/disable capture until it can be repaired (#2084) 2020-10-05 21:43:52 -04:00
Danny Brown
380acc1331
fix: for incorrect toolbar state between routes (#2082) 2020-10-05 21:42:30 -04:00
Danny Brown
2fc7169fa4
fix/chore: Various style improvements (#2015)
* 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

* fix: viewport grid area top padding should align with sidepanel gap

* fix: don't wrap split button list item text

* fix: cine player moz/chrome styles

* fix: split button arrows

* fix: tighten toolbar and splitbutton styles

* chore: clean up worklist sort logic
2020-09-21 10:42:53 +02:00
Danny Brown
cae54b0779
Fix/update branch cherry pick (#2039)
* 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
2020-09-14 21:18:46 -04:00
Igor Octaviano
8cea1a04d6
OHIF-333: Split Button (#1988)
* ohif-333: add component foundation

* ohif-333: add expandable content and mocked data

* ohif-333: improve ListMenu component for the new toolbar button and add radio behavior

* ohif-333: add click outside behavior and update primary and secondary props

* ohif-333: separate classes from markup

* ohif-333: fix layout issues

* ohif-333: extract window level component

* ohif-333: update component returns

* ohif-333: update chevron thickness

* ohif-333: remove is active prop

* Delete lerna-debug.log

* ohif-333: clean toolbar and use example in ui package

* ohif-333: update styles to avoid word break

* ohif-333: fix ui package build

Co-authored-by: Erik Ziegler <erik.sweed@gmail.com>
Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-08-19 15:49:00 -04:00
Igor Octaviano
760e2a62ae
OHIF-323: Cine Dialog (#1961)
* ohif-323: add cineplayer flow

* ohif-323: improve toolbar flow of cine

* ohif-323: improve cine styles

* ohif-323: use toggle instead of set

* ohif-323: add compatibility comment

* ohif-323: move cine logic to command

* ohif-323: cr update

* ohif-323: remove typo and update svg title

* ohif-323: remove log

* ohif-323: update props and remove dead code

Co-authored-by: Danny Brown <danny.ri.brown@gmail.com>
2020-08-19 15:24:07 -04:00
Igor Octaviano
3e944780dc
OHIF-332: Users should be able to see all available hotkeys and language settings in one place (#1895)
* OHIF-330: Update Modal Styles

* feat/ohif-332: finish raw ui

* feat/ohif-332: update mode configuration strategy

* feat/ohif-332: fix hotkey errors

* feat/ohif-332: update hotkey logic with recent merged changes

* feat/ohif-322: wrap

* feat/ohif-322: add disable state

* ohif-332: cr updates

* ohif-332: disable

* ohif-332: cr updates

* ohif-332: extract header component

* ohif-332: cr update to fix merge conflicts and design issue

Co-authored-by: Rodrigo Antinarelli <rodrigoantinarelli@gmail.com>
2020-08-19 15:02:59 -04:00
Erik Ziegler
4528ee9175
OHIF-324: Switch Probe to DragProbe and apply minimal strategy (#1918) 2020-07-24 08:53:10 +02:00
Igor Octaviano
11fbe4cf01
OHIF-223: Add "Clear" all measurements to annotation toolbar (#1861)
* Add clear button

* Use james event

* Create new commands module to default
2020-07-03 12:39:41 -04:00
dannyrb
e82b6b3c5e Rename longitudinal mode to "Basic Viewer"; matching design 2020-06-30 15:30:47 -04:00
dannyrb
92314513f6 Delete "basic" example mode, replace with segmentation mode 2020-06-30 15:20:14 -04:00
igoroctaviano
686acabd9f Wire presets 2020-06-29 14:53:49 -03:00
igoroctaviano
db795f3cb0 Add hotkeys config for modes and defaults to core 2020-06-29 11:53:46 -03:00
igoroctaviano
b18e5099d9 Add more icons 2020-06-26 17:03:17 -03:00
igoroctaviano
550564d60f Add more icons 2020-06-26 16:59:47 -03:00
igoroctaviano
9bd1ce734c Add more icons 2020-06-26 16:56:19 -03:00
igoroctaviano
f5b78536d2 Add old icons 2020-06-26 16:49:34 -03:00
igoroctaviano
44297af965 Create window level dropdown menu 2020-06-25 15:27:42 -03:00
dannyrb
4ec357bec4 Commands running on at least first viewport 2020-06-17 08:50:11 -04:00
dannyrb
10484fceec Duplicate toolbar buttons for "example" mode and add nested menu buttons 2020-06-16 23:57:38 -04:00
dannyrb
5eb06d0916 Wire up mode buttons to mode routes; Expose displayName; 2020-06-16 22:06:54 -04:00
dannyrb
0842eb9a8c Delete SR Viewport example mode 2020-06-16 00:26:12 -04:00
James A. Petts
00f0ae4bbc By default other tool state not loaded into the viewport. (set disabled) 2020-06-15 12:09:48 +01:00
James A. Petts
e7501933dd Pull in master 2020-06-15 09:23:35 +01:00
dannyrb
9146a9ee32 Create new ToolbarButton type for Layout Selector; wire up custom UI; prep for viewportGridService usage 2020-06-15 00:51:36 -04:00
dannyrb
8c1a844558 Nested toolbar w/ "sticky" when clicked 2020-06-14 23:42:44 -04:00
dannyrb
83e191b850 Update toolbar service to use button types, update longitudinal flow to use new service api 2020-06-14 21:20:32 -04:00
James A. Petts
c5e6e97980 Merge in feat/ui-v2-rebase-services 2020-06-11 17:26:38 +01:00
dannyrb
9dd04122af pull in tracked measurements panel 2020-06-03 15:20:09 -04:00
James A. Petts
558ab00c23 WIP SR viewport. 2020-06-03 18:12:13 +01:00
dannyrb
38e60e297b longitudinal mode to use "tracked" thumbnails 2020-05-26 10:39:40 -04:00
dannyrb
d557acbb40 Support for additional "tracking" mode 2020-05-26 09:03:58 -04:00
James A. Petts
6a3e0db53e ToolBarService 2020-05-19 10:01:44 +01:00
Erik Ziegler
63cf079288 Make thumbnails display 2020-05-18 23:21:41 +02:00
James A. Petts
4fc3169fed display viewport. 2020-05-15 18:07:21 +01:00
James A. Petts
b8a4ac231d something WIP 2020-05-15 13:04:53 +01:00
James A. Petts
4b9a1ee9d1 Remove all the debugging. 2020-05-15 13:04:53 +01:00
James A. Petts
07ca72d0df Added other required definitions. 2020-05-15 13:04:51 +01:00
James A. Petts
41c508b2da Add layout tools based on mode. 2020-05-15 13:04:09 +01:00
James A. Petts
c23c1e8db6 Add toolbar layout to context. 2020-05-15 13:04:09 +01:00
James A. Petts
c42aa37d7f Update extension manager to ingest each module type. Add toolbar Manager. 2020-05-15 13:04:06 +01:00
James A. Petts
a8340b9b69 WIP 2020-05-15 13:02:38 +01:00
Erik Ziegler
3cf2eb5ed8 Wire up contextModule, panelModule, layoutTemplateModule. Viewer sort of displays 2020-05-15 13:01:25 +01:00
Erik Ziegler
8acd744710 Continue the ModeRoute work. Routes are reachable, but extensionManager needs to be improve to provide module entries correctly 2020-05-15 13:01:25 +01:00
dannyrb
f5570c6ba0 remove viewports from modes config as a slot 2020-05-15 13:00:07 +01:00
dannyrb
40fa10be87 init modes folder 2020-05-15 13:00:06 +01:00