diff --git a/docs/latest/SUMMARY.md b/docs/latest/SUMMARY.md
index 7534de5f6..3a738a735 100644
--- a/docs/latest/SUMMARY.md
+++ b/docs/latest/SUMMARY.md
@@ -46,4 +46,5 @@
- [Contributing](contributing.md)
- [FAQ](frequently-asked-questions.md)
+- [Roadmap](roadmap.md)
- [Help](help.md)
diff --git a/docs/latest/roadmap.md b/docs/latest/roadmap.md
new file mode 100644
index 000000000..d5e516a87
--- /dev/null
+++ b/docs/latest/roadmap.md
@@ -0,0 +1,25 @@
+# Roadmap
+
+If you want to know what's planned for the very near future,
+[check out our roadmap](https://ohif.canny.io/). The best way to influence when
+and what is worked on is to contribute to the conversation by creating GitHub
+issues, and contributing code through pull requests. OHIF's high level
+priorities for the near future are:
+
+- Feature parity with version 1
+- Extension and configuration improvements with key integration partners
+- Continued Developer Experience Improvements
+- Segmentation Tools, and improved VTK.js support
+
+More granular information will make it's way to the backlog as these items
+become scoped for development by core maintainers.
+
+> Don't hesitate to ask questions, propose features, or create pull requests.
+> We're here, we're listening, and we're ready to build the best open source
+> medical imaging viewer on the web.
+
+### Roadmap Generously Powered by Canny.io
+
+
+
+
diff --git a/extensions/ohif-cornerstone-extension/README.md b/extensions/ohif-cornerstone-extension/README.md
new file mode 100644
index 000000000..82af692dd
--- /dev/null
+++ b/extensions/ohif-cornerstone-extension/README.md
@@ -0,0 +1 @@
+# @ohif/extension-cornerstone
diff --git a/extensions/ohif-cornerstone-extension/package.json b/extensions/ohif-cornerstone-extension/package.json
index d7899dc2a..45febdbc9 100644
--- a/extensions/ohif-cornerstone-extension/package.json
+++ b/extensions/ohif-cornerstone-extension/package.json
@@ -1,6 +1,6 @@
{
- "name": "ohif-cornerstone-extension",
- "version": "0.0.32",
+ "name": "@ohif/extension-cornerstone",
+ "version": "0.0.34",
"description": "OHIF extension for Cornerstone",
"author": "OHIF",
"license": "MIT",
@@ -32,7 +32,7 @@
"react-dom": "^15.0.0 || ^16.0.0",
"react-redux": "^6.0.0",
"react-resize-detector": "^3.4.0",
- "react-viewerbase": "^0.2.10",
+ "react-viewerbase": "^0.6.0",
"redux": "^4.0.1"
},
"dependencies": {
@@ -92,6 +92,10 @@
"not op_mini all"
],
"files": [
- "dist"
- ]
+ "dist",
+ "README.md"
+ ],
+ "publishConfig": {
+ "access": "public"
+ }
}
diff --git a/extensions/ohif-cornerstone-extension/src/ToolbarModule.js b/extensions/ohif-cornerstone-extension/src/ToolbarModule.js
index df3fb99ee..ddb5ea30a 100644
--- a/extensions/ohif-cornerstone-extension/src/ToolbarModule.js
+++ b/extensions/ohif-cornerstone-extension/src/ToolbarModule.js
@@ -1,7 +1,8 @@
import React, { Component } from 'react';
+
+import ConnectedCineDialog from './ConnectedCineDialog';
import ConnectedToolbarSection from './ConnectedToolbarSection';
import { ToolbarButton } from 'react-viewerbase';
-import ConnectedCineDialog from './ConnectedCineDialog';
class ToolbarModule extends Component {
state = {
@@ -28,8 +29,8 @@ class ToolbarModule extends Component {
diff --git a/extensions/ohif-vtk-extension/README.md b/extensions/ohif-vtk-extension/README.md
new file mode 100644
index 000000000..1b4c09ef6
--- /dev/null
+++ b/extensions/ohif-vtk-extension/README.md
@@ -0,0 +1 @@
+# @ohif/extension-vtk
diff --git a/extensions/ohif-vtk-extension/package.json b/extensions/ohif-vtk-extension/package.json
index c4123e36e..2b9a4ef07 100644
--- a/extensions/ohif-vtk-extension/package.json
+++ b/extensions/ohif-vtk-extension/package.json
@@ -1,6 +1,6 @@
{
- "name": "ohif-vtk-extension",
- "version": "0.0.1",
+ "name": "@ohif/extension-vtk",
+ "version": "0.0.2",
"description": "OHIF extension for VTK.js",
"author": "OHIF",
"license": "MIT",
@@ -30,6 +30,7 @@
"react-dom": "^15.0.0 || ^16.0.0",
"react-redux": "^6.0.0",
"react-resize-detector": "^3.4.0",
+ "react-viewerbase": "^0.6.0",
"redux": "^4.0.1"
},
"devDependencies": {
@@ -52,7 +53,6 @@
"prettier": "^1.15.3",
"react": "^16.6.3",
"react-dom": "^16.6.3",
- "react-viewerbase": "^0.2.11",
"rollup": "^1.1.2",
"rollup-plugin-babel": "^4.2.0",
"rollup-plugin-commonjs": "^9.2.0",
@@ -83,8 +83,12 @@
"not op_mini all"
],
"files": [
- "dist"
+ "dist",
+ "README.md"
],
+ "publishConfig": {
+ "access": "public"
+ },
"dependencies": {
"@babel/runtime": "^7.2.0",
"classnames": "^2.2.6",
diff --git a/extensions/ohif-vtk-extension/rollup.config.js b/extensions/ohif-vtk-extension/rollup.config.js
index 41f477179..dcbddc988 100644
--- a/extensions/ohif-vtk-extension/rollup.config.js
+++ b/extensions/ohif-vtk-extension/rollup.config.js
@@ -1,27 +1,30 @@
-import babel from 'rollup-plugin-babel'
-import commonjs from 'rollup-plugin-commonjs'
-import external from 'rollup-plugin-peer-deps-external'
-import postcss from 'rollup-plugin-postcss'
-import resolve from 'rollup-plugin-node-resolve'
-import url from 'rollup-plugin-url'
-import pkg from './package.json'
-// Deal with https://github.com/rollup/rollup-plugin-commonjs/issues/297
+import babel from 'rollup-plugin-babel';
import builtins from 'rollup-plugin-node-builtins';
+import commonjs from 'rollup-plugin-commonjs';
+import external from 'rollup-plugin-peer-deps-external';
+import pkg from './package.json';
+import postcss from 'rollup-plugin-postcss';
+import resolve from 'rollup-plugin-node-resolve';
+import url from 'rollup-plugin-url';
-const globals = {
- 'react': 'React',
+// Deal with https://github.com/rollup/rollup-plugin-commonjs/issues/297
+
+
+const globals = {
+ react: 'React',
'react-dom': 'ReactDOM',
'react-redux': 'ReactRedux',
'react-resize-detector': 'ReactResizeDetector',
+ 'react-viewerbase': 'reactViewerbase',
'prop-types': 'PropTypes',
'cornerstone-core': 'cornerstone',
'cornerstone-wado-image-loader': 'cornerstoneWADOImageLoader',
'cornerstone-math': 'cornerstoneMath',
'cornerstone-tools': 'cornerstoneTools',
- 'dcmjs': 'dcmjs',
+ dcmjs: 'dcmjs',
'dicom-parser': 'dicomParser',
'ohif-core': 'OHIF',
- 'hammerjs': 'Hammer'
+ hammerjs: 'Hammer'
};
export default {
@@ -57,20 +60,20 @@ export default {
commonjs({
include: ['node_modules/**', '.yalc/**'],
namedExports: {
- 'node_modules/react-vtkjs-viewport/dist/index.js': [
- 'getImageData',
- 'loadImageData',
- 'VTKViewport',
- 'VTKMPRViewport',
- ],
- '.yalc/react-vtkjs-viewport/dist/index.js': [
- 'getImageData',
- 'loadImageData',
- 'VTKViewport',
- 'VTKMPRViewport',
- ]
+ 'node_modules/react-vtkjs-viewport/dist/index.js': [
+ 'getImageData',
+ 'loadImageData',
+ 'VTKViewport',
+ 'VTKMPRViewport'
+ ],
+ '.yalc/react-vtkjs-viewport/dist/index.js': [
+ 'getImageData',
+ 'loadImageData',
+ 'VTKViewport',
+ 'VTKMPRViewport'
+ ]
}
})
],
- external: Object.keys(pkg.peerDependencies || {}),
-}
+ external: Object.keys(pkg.peerDependencies || {})
+};
diff --git a/extensions/ohif-vtk-extension/src/ConnectedToolbarSection.js b/extensions/ohif-vtk-extension/src/ConnectedToolbarSection.js
index 19f2e18f0..963e01ce2 100644
--- a/extensions/ohif-vtk-extension/src/ConnectedToolbarSection.js
+++ b/extensions/ohif-vtk-extension/src/ConnectedToolbarSection.js
@@ -3,7 +3,6 @@ import { ToolbarSection } from 'react-viewerbase';
import OHIF from 'ohif-core';
const { setToolActive } = OHIF.redux.actions;
-const Icons = `${window.config.routerBasename}/icons.svg`.replace('//', '/');
const mapStateToProps = state => {
const activeButton = state.tools.buttons.find(tool => tool.active === true);
@@ -14,7 +13,7 @@ const mapStateToProps = state => {
command: 'Rotate',
type: 'tool',
text: 'Rotate',
- svgUrl: `${Icons}#3d-rotate`,
+ icon: '3d-rotate',
active: true
}
],
diff --git a/extensions/ohif-vtk-extension/yarn.lock b/extensions/ohif-vtk-extension/yarn.lock
index 7bbe5bc73..74b43e077 100644
--- a/extensions/ohif-vtk-extension/yarn.lock
+++ b/extensions/ohif-vtk-extension/yarn.lock
@@ -660,7 +660,7 @@
dependencies:
regenerator-runtime "^0.12.0"
-"@babel/runtime@^7.0.0", "@babel/runtime@^7.1.2", "@babel/runtime@^7.2.0":
+"@babel/runtime@^7.2.0":
version "7.3.1"
resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.3.1.tgz#574b03e8e8a9898eaf4a872a92ea20b7846f6f2a"
integrity sha512-7jGW8ppV0ant637pIqAcFfQDDH1orEPGJb8aXfUozuCU3QqX7rX4DA8iwrbPrR1hcH0FTTHz47yQnk+bl5xHQA==
@@ -815,22 +815,6 @@ agentkeepalive@^3.3.0, agentkeepalive@^3.4.1:
dependencies:
humanize-ms "^1.2.1"
-airbnb-prop-types@^2.10.0, airbnb-prop-types@^2.8.1:
- version "2.12.0"
- resolved "https://registry.yarnpkg.com/airbnb-prop-types/-/airbnb-prop-types-2.12.0.tgz#67b30a5ba4dda9b9e70a480f85150a2ccd7fa132"
- integrity sha512-EJLaLf0Rjg+AouOgIBlO1rerwgwu3Y0dwxp7BWzUemY9J1UPO9XOlMmOXzpaHW9O0RzpofiThVl0sIToHtLPAQ==
- dependencies:
- array.prototype.find "^2.0.4"
- function.prototype.name "^1.1.0"
- has "^1.0.3"
- is-regex "^1.0.4"
- object-is "^1.0.1"
- object.assign "^4.1.0"
- object.entries "^1.1.0"
- prop-types "^15.6.2"
- prop-types-exact "^1.2.0"
- react-is "^16.8.1"
-
ajv@^6.5.3, ajv@^6.5.5, ajv@^6.9.1:
version "6.9.1"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.9.1.tgz#a4d3683d74abc5670e75f0b16520f70a20ea8dc1"
@@ -980,29 +964,12 @@ array-unique@^0.3.2:
resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428"
integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=
-array.prototype.find@^2.0.4:
- version "2.0.4"
- resolved "https://registry.yarnpkg.com/array.prototype.find/-/array.prototype.find-2.0.4.tgz#556a5c5362c08648323ddaeb9de9d14bc1864c90"
- integrity sha1-VWpcU2LAhkgyPdrrnenRS8GGTJA=
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.7.0"
-
-array.prototype.flat@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/array.prototype.flat/-/array.prototype.flat-1.2.1.tgz#812db8f02cad24d3fab65dd67eabe3b8903494a4"
- integrity sha512-rVqIs330nLJvfC7JqYvEWwqVr5QjYF1ib02i3YJtR/fICO6527Tjpc/e4Mvmxh3GIePPreRXMdaGyC99YphWEw==
- dependencies:
- define-properties "^1.1.2"
- es-abstract "^1.10.0"
- function-bind "^1.1.1"
-
arrify@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d"
integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=
-asap@^2.0.0, asap@^2.0.6, asap@~2.0.3:
+asap@^2.0.0:
version "2.0.6"
resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46"
integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=
@@ -1211,11 +1178,6 @@ braces@^2.3.1:
split-string "^3.0.2"
to-regex "^3.0.1"
-brcast@^2.0.2:
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/brcast/-/brcast-2.0.2.tgz#2db16de44140e418dc37fab10beec0369e78dcef"
- integrity sha512-Tfn5JSE7hrUlFcOoaLzVvkbgIemIorMIyoMr3TgvszWW7jFt2C9PdeMLtysYD9RU0MmU17b69+XJG1eRY2OBRg==
-
brorand@^1.0.1:
version "1.1.0"
resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f"
@@ -1492,11 +1454,6 @@ chalk@^2.0.0, chalk@^2.0.1, chalk@^2.1.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4
escape-string-regexp "^1.0.5"
supports-color "^5.3.0"
-change-emitter@^0.1.2:
- version "0.1.6"
- resolved "https://registry.yarnpkg.com/change-emitter/-/change-emitter-0.1.6.tgz#e8b2fe3d7f1ab7d69a32199aff91ea6931409515"
- integrity sha1-6LL+PX8at9aaMhma/5HqaTFAlRU=
-
character-entities-html4@^1.0.0:
version "1.1.2"
resolved "https://registry.yarnpkg.com/character-entities-html4/-/character-entities-html4-1.1.2.tgz#c44fdde3ce66b52e8d321d6c1bf46101f0150610"
@@ -1570,7 +1527,7 @@ class-utils@^0.3.5:
isobject "^3.0.0"
static-extend "^0.1.1"
-classnames@^2.2.5, classnames@^2.2.6:
+classnames@^2.2.6:
version "2.2.6"
resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.6.tgz#43935bffdd291f326dad0a205309b38d00f650ce"
integrity sha512-JR/iSQOSt+LQIWwrwEzJ9uk0xfN3mTVYMwt1Ir5mUcSN6pU+V4zQFFaJsclJbPuAUQH+yfWef6tm7l1quW3C8Q==
@@ -1810,11 +1767,6 @@ console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-
resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e"
integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=
-"consolidated-events@^1.1.1 || ^2.0.0":
- version "2.0.2"
- resolved "https://registry.yarnpkg.com/consolidated-events/-/consolidated-events-2.0.2.tgz#da8d8f8c2b232831413d9e190dc11669c79f4a91"
- integrity sha512-2/uRVMdRypf5z/TW/ncD/66l75P5hH2vM/GR8Jf8HLc2xnfJtmina6F6du8+v4Z2vTrMo7jC+W1tmEEuuELgkQ==
-
contains-path@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/contains-path/-/contains-path-0.1.0.tgz#fe8cf184ff6670b6baef01a9d4861a5cbec4120a"
@@ -1844,11 +1796,6 @@ copy-descriptor@^0.1.0:
resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d"
integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=
-core-js@^1.0.0:
- version "1.2.7"
- resolved "https://registry.yarnpkg.com/core-js/-/core-js-1.2.7.tgz#652294c14651db28fa93bd2d5ff2983a4f08c636"
- integrity sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=
-
core-js@~2.3.0:
version "2.3.0"
resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.3.0.tgz#fab83fbb0b2d8dc85fa636c4b9d34c75420c6d65"
@@ -2238,11 +2185,6 @@ deep-is@~0.1.3:
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
-deepmerge@^1.5.1, deepmerge@^1.5.2:
- version "1.5.2"
- resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-1.5.2.tgz#10499d868844cdad4fee0842df8c7f6f0c95a753"
- integrity sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==
-
defaults@^1.0.3:
version "1.0.3"
resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d"
@@ -2350,21 +2292,6 @@ dir-glob@^2.2.1:
dependencies:
path-type "^3.0.0"
-direction@^1.0.1:
- version "1.0.2"
- resolved "https://registry.yarnpkg.com/direction/-/direction-1.0.2.tgz#ac49c4699edf1283fd82f34e701ca668ea4883b9"
- integrity sha512-hSKoz5FBn+zhP9vWKkVQaaxnRDg3/MoPdcg2au54HIUDR8MrP8Ah1jXSJwCXel6SV3Afh5DSzc8Uqv2r1UoQwQ==
-
-dnd-core@^7.0.2:
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/dnd-core/-/dnd-core-7.0.2.tgz#6c080eb57243fa0372fd083b3db242d9eb525010"
- integrity sha512-InwRBi6zTndtE3+3nTYpLJkYMEr7utSR7OziAoSFhtQsbUfJE1KeqxM+ZFRIMKn6ehxUTAC+QU6QC7IG9u86Mg==
- dependencies:
- asap "^2.0.6"
- invariant "^2.2.4"
- lodash "^4.17.11"
- redux "^4.0.1"
-
doctrine@1.5.0:
version "1.5.0"
resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa"
@@ -2380,13 +2307,6 @@ doctrine@^2.1.0:
dependencies:
esutils "^2.0.2"
-dom-helpers@^3.2.1, dom-helpers@^3.3.1:
- version "3.4.0"
- resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.4.0.tgz#e9b369700f959f62ecde5a6babde4bccd9169af8"
- integrity sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==
- dependencies:
- "@babel/runtime" "^7.1.2"
-
dom-serializer@0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.1.tgz#1ec4059e284babed36eec2941d4a970a189ce7c0"
@@ -2531,7 +2451,7 @@ error-ex@^1.2.0, error-ex@^1.3.1:
dependencies:
is-arrayish "^0.2.1"
-es-abstract@^1.10.0, es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0:
+es-abstract@^1.11.0, es-abstract@^1.12.0, es-abstract@^1.5.1, es-abstract@^1.7.0:
version "1.13.0"
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.13.0.tgz#ac86145fdd5099d8dd49558ccba2eaf9b88e24e9"
integrity sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==
@@ -2899,19 +2819,6 @@ fastparse@^1.1.1:
resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.2.tgz#91728c5a5942eced8531283c79441ee4122c35a9"
integrity sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==
-fbjs@^0.8.1, fbjs@^0.8.4:
- version "0.8.17"
- resolved "https://registry.yarnpkg.com/fbjs/-/fbjs-0.8.17.tgz#c4d598ead6949112653d6588b01a5cdcd9f90fdd"
- integrity sha1-xNWY6taUkRJlPWWIsBpc3Nn5D90=
- dependencies:
- core-js "^1.0.0"
- isomorphic-fetch "^2.1.1"
- loose-envify "^1.0.0"
- object-assign "^4.1.0"
- promise "^7.1.1"
- setimmediate "^1.0.5"
- ua-parser-js "^0.7.18"
-
figgy-pudding@^3.0.0, figgy-pudding@^3.5.1:
version "3.5.1"
resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.1.tgz#862470112901c727a0e495a80744bd5baa1d6790"
@@ -3142,15 +3049,6 @@ function-bind@^1.1.1:
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
-function.prototype.name@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/function.prototype.name/-/function.prototype.name-1.1.0.tgz#8bd763cc0af860a859cc5d49384d74b932cd2327"
- integrity sha512-Bs0VRrTz4ghD8pTmbJQD1mZ8A/mN0ur/jGz+A6FBxPDUPkm1tNfF6bhTYPA7i7aF4lZJVr+OXTNNrnnIl58Wfg==
- dependencies:
- define-properties "^1.1.2"
- function-bind "^1.1.1"
- is-callable "^1.1.3"
-
functional-red-black-tree@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327"
@@ -3314,14 +3212,6 @@ glob@^7.0.0, glob@^7.0.3, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@~7.1.2:
once "^1.3.0"
path-is-absolute "^1.0.0"
-global-cache@^1.2.1:
- version "1.2.1"
- resolved "https://registry.yarnpkg.com/global-cache/-/global-cache-1.2.1.tgz#39ca020d3dd7b3f0934c52b75363f8d53312c16d"
- integrity sha512-EOeUaup5DgWKlCMhA9YFqNRIlZwoxt731jCh47WBV9fQqHgXhr3Fa55hfgIUqilIcPsfdNKN7LHjrNY+Km40KA==
- dependencies:
- define-properties "^1.1.2"
- is-symbol "^1.0.1"
-
global-dirs@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445"
@@ -3516,18 +3406,6 @@ hmac-drbg@^1.0.0:
minimalistic-assert "^1.0.0"
minimalistic-crypto-utils "^1.0.1"
-hoist-non-react-statics@^2.3.1, hoist-non-react-statics@^2.5.0:
- version "2.5.5"
- resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-2.5.5.tgz#c5903cf409c0dfd908f388e619d86b9c1174cb47"
- integrity sha512-rqcy4pJo55FTTLWt+bU8ukscqHeE/e9KWvsOW2b/a3afxQZhwkQdT1rPPCJ0rYXdj4vNcasY8zHTH+jF/qStxw==
-
-hoist-non-react-statics@^3.1.0:
- version "3.3.0"
- resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b"
- integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA==
- dependencies:
- react-is "^16.7.0"
-
hosted-git-info@^2.1.4, hosted-git-info@^2.6.0:
version "2.7.1"
resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.7.1.tgz#97f236977bd6e125408930ff6de3eec6281ec047"
@@ -3786,7 +3664,7 @@ interpret@^1.0.0:
resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.2.0.tgz#d5061a6224be58e8083985f5014d844359576296"
integrity sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==
-invariant@^2.1.0, invariant@^2.2.2, invariant@^2.2.4:
+invariant@^2.2.2:
version "2.2.4"
resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6"
integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==
@@ -3867,7 +3745,7 @@ is-builtin-module@^1.0.0:
dependencies:
builtin-modules "^1.0.0"
-is-callable@^1.1.3, is-callable@^1.1.4:
+is-callable@^1.1.4:
version "1.1.4"
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
@@ -4105,7 +3983,7 @@ is-retry-allowed@^1.0.0:
resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34"
integrity sha1-EaBgVotnM5REAz0BJaYaINVk+zQ=
-is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0:
+is-stream@^1.0.0, is-stream@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ=
@@ -4122,18 +4000,13 @@ is-svg@^3.0.0:
dependencies:
html-comment-regex "^1.1.0"
-is-symbol@^1.0.1, is-symbol@^1.0.2:
+is-symbol@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
dependencies:
has-symbols "^1.0.0"
-is-touch-device@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/is-touch-device/-/is-touch-device-1.0.1.tgz#9a2fd59f689e9a9bf6ae9a86924c4ba805a42eab"
- integrity sha512-LAYzo9kMT1b2p19L/1ATGt2XcSilnzNlyvq6c0pbPRVisLbAPpLqr53tIJS00kvrTkj0HtR8U7+u8X0yR8lPSw==
-
is-typedarray@~1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
@@ -4191,14 +4064,6 @@ isobject@^3.0.0, isobject@^3.0.1:
resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df"
integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8=
-isomorphic-fetch@^2.1.1:
- version "2.2.1"
- resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9"
- integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=
- dependencies:
- node-fetch "^1.0.1"
- whatwg-fetch ">=0.10.0"
-
isstream@~0.1.2:
version "0.1.2"
resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
@@ -4669,11 +4534,6 @@ lodash.get@^4.4.2:
resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=
-lodash.isequal@^4.5.0:
- version "4.5.0"
- resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0"
- integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA=
-
lodash.memoize@^4.1.2:
version "4.1.2"
resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe"
@@ -4699,7 +4559,7 @@ lodash@^3.10.1:
resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.10.1.tgz#5bf45e8e49ba4189e17d482789dfd15bd140b7b6"
integrity sha1-W/Rejkm6QYnhfUgnid/RW9FAt7Y=
-lodash@^4.1.1, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5:
+lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.4, lodash@^4.17.5:
version "4.17.11"
resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==
@@ -5106,11 +4966,6 @@ mkpath@^1.0.0:
resolved "https://registry.yarnpkg.com/mkpath/-/mkpath-1.0.0.tgz#ebb3a977e7af1c683ae6fda12b545a6ba6c5853d"
integrity sha1-67Opd+evHGg65v2hK1Raa6bFhT0=
-moment@>=1.6.0, moment@^2.24.0:
- version "2.24.0"
- resolved "https://registry.yarnpkg.com/moment/-/moment-2.24.0.tgz#0d055d53f5052aa653c9f6eb68bb5d12bf5c2b5b"
- integrity sha512-bV7f+6l2QigeBBZSM/6yTNq4P2fNpSWj/0e7jQcy87A8e7o2nAfP/34/2ky5Vw4B9S446EtIhodAzkFCcR4dQg==
-
move-concurrently@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
@@ -5179,14 +5034,6 @@ node-fetch-npm@^2.0.2:
json-parse-better-errors "^1.0.0"
safe-buffer "^5.1.1"
-node-fetch@^1.0.1:
- version "1.7.3"
- resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-1.7.3.tgz#980f6f72d85211a5347c6b2bc18c5b84c3eb47ef"
- integrity sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==
- dependencies:
- encoding "^0.1.11"
- is-stream "^1.0.1"
-
node-gyp@^3.6.2, node-gyp@^3.8.0:
version "3.8.0"
resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c"
@@ -5582,12 +5429,7 @@ object-copy@^0.1.0:
define-property "^0.2.5"
kind-of "^3.0.3"
-object-is@^1.0.1:
- version "1.0.1"
- resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.0.1.tgz#0aa60ec9989a0b3ed795cf4d06f62cf1ad6539b6"
- integrity sha1-CqYOyZiaCz7Xlc9NBvYs8a1lObY=
-
-object-keys@^1.0.11, object-keys@^1.0.12:
+object-keys@^1.0.12:
version "1.1.0"
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.0.tgz#11bd22348dd2e096a045ab06f6c85bcc340fa032"
integrity sha512-6OO5X1+2tYkNyNEx6TsCxEqFfRWaqx6EtMiSbGrw8Ob8v9Ne+Hl8rBAgLBZn5wjEz3s/s6U1WXFUFOcxxAwUpg==
@@ -5613,26 +5455,6 @@ object-visit@^1.0.0:
dependencies:
isobject "^3.0.0"
-object.assign@^4.1.0:
- version "4.1.0"
- resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.0.tgz#968bf1100d7956bb3ca086f006f846b3bc4008da"
- integrity sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==
- dependencies:
- define-properties "^1.1.2"
- function-bind "^1.1.1"
- has-symbols "^1.0.0"
- object-keys "^1.0.11"
-
-object.entries@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.0.tgz#2024fc6d6ba246aee38bdb0ffd5cfbcf371b7519"
- integrity sha512-l+H6EQ8qzGRxbkHOd5I/aHRhHDKoQXQ8g0BYt4uSweQU1/J6dZUOyWh9a2Vky35YCKjzmgxOzta2hH6kf9HuXA==
- dependencies:
- define-properties "^1.1.3"
- es-abstract "^1.12.0"
- function-bind "^1.1.1"
- has "^1.0.3"
-
object.fromentries@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.0.tgz#49a543d92151f8277b3ac9600f1e930b189d30ab"
@@ -6525,13 +6347,6 @@ promise.series@^0.2.0:
resolved "https://registry.yarnpkg.com/promise.series/-/promise.series-0.2.0.tgz#2cc7ebe959fc3a6619c04ab4dbdc9e452d864bbd"
integrity sha1-LMfr6Vn8OmYZwEq029yeRS2GS70=
-promise@^7.1.1:
- version "7.3.1"
- resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf"
- integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==
- dependencies:
- asap "~2.0.3"
-
promzard@^0.3.0:
version "0.3.0"
resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee"
@@ -6539,24 +6354,7 @@ promzard@^0.3.0:
dependencies:
read "1"
-prop-types-exact@^1.2.0:
- version "1.2.0"
- resolved "https://registry.yarnpkg.com/prop-types-exact/-/prop-types-exact-1.2.0.tgz#825d6be46094663848237e3925a98c6e944e9869"
- integrity sha512-K+Tk3Kd9V0odiXFP9fwDHUYRyvK3Nun3GVyPapSIs5OBkITAm15W0CPFD/YKTkMUAbc0b9CUwRQp2ybiBIq+eA==
- dependencies:
- has "^1.0.3"
- object.assign "^4.1.0"
- reflect.ownkeys "^0.2.0"
-
-prop-types-extra@^1.0.1, prop-types-extra@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/prop-types-extra/-/prop-types-extra-1.1.0.tgz#32609910ea2dcf190366bacd3490d5a6412a605f"
- integrity sha512-QFyuDxvMipmIVKD2TwxLVPzMnO4e5oOf1vr3tJIomL8E7d0lr6phTHd5nkPhFIzTD1idBLLEPeylL9g+rrTzRg==
- dependencies:
- react-is "^16.3.2"
- warning "^3.0.0"
-
-prop-types@^15.5.10, prop-types@^15.5.8, prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2:
+prop-types@^15.6.2:
version "15.7.2"
resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5"
integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==
@@ -6723,66 +6521,6 @@ rc@^1.0.1, rc@^1.1.6:
minimist "^1.2.0"
strip-json-comments "~2.0.1"
-react-addons-shallow-compare@^15.6.2:
- version "15.6.2"
- resolved "https://registry.yarnpkg.com/react-addons-shallow-compare/-/react-addons-shallow-compare-15.6.2.tgz#198a00b91fc37623db64a28fd17b596ba362702f"
- integrity sha1-GYoAuR/DdiPbZKKP0XtZa6NicC8=
- dependencies:
- fbjs "^0.8.4"
- object-assign "^4.1.0"
-
-react-bootstrap-modal@^4.2.0:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/react-bootstrap-modal/-/react-bootstrap-modal-4.2.0.tgz#010b3ca9230a3c147fa5fc6aa39b6971e34151bd"
- integrity sha512-2Xx9yvPEnMNhJIAKCg+t3CECF6w3qt2mmICv1Y1vwDBHeuyyf3OvSFcnRM8E0Tn7pywgopL2qyU4yx0vnGKmdA==
- dependencies:
- classnames "^2.2.6"
- dom-helpers "^3.3.1"
- prop-types "^15.6.1"
- prop-types-extra "^1.1.0"
- react-overlays "^0.8.0"
- react-transition-group "^2.0.0"
-
-react-dates@^18.4.1:
- version "18.5.0"
- resolved "https://registry.yarnpkg.com/react-dates/-/react-dates-18.5.0.tgz#31cc8ab01b2cc546b938e198fd8d4316878f5717"
- integrity sha512-5zWR3+ekkRzf740omDkO+N0JifsGGOeyvWwQ/7dFxSb2CqHUsOfKgvpXOiwd3hBm4yr+lelESI3b458BEOU5og==
- dependencies:
- airbnb-prop-types "^2.10.0"
- consolidated-events "^1.1.1 || ^2.0.0"
- is-touch-device "^1.0.1"
- lodash "^4.1.1"
- object.assign "^4.1.0"
- object.values "^1.0.4"
- prop-types "^15.6.1"
- react-addons-shallow-compare "^15.6.2"
- react-moment-proptypes "^1.6.0"
- react-outside-click-handler "^1.2.0"
- react-portal "^4.1.5"
- react-with-direction "^1.3.0"
- react-with-styles "^3.2.0"
- react-with-styles-interface-css "^4.0.2"
-
-react-dnd-html5-backend@^7.0.2:
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/react-dnd-html5-backend/-/react-dnd-html5-backend-7.0.2.tgz#f74181ca0ff05be13eb6094629c5ad560f558a7e"
- integrity sha512-BPhmHeQjvhPXRykHvFLbM+TJFrrarcuf/mIArNEmXzZuNhLfbOnHtMSzR8lPwodABcDAYj7hEF7vTABXX298vA==
- dependencies:
- dnd-core "^7.0.2"
- lodash "^4.17.11"
-
-react-dnd@^7.0.2:
- version "7.0.2"
- resolved "https://registry.yarnpkg.com/react-dnd/-/react-dnd-7.0.2.tgz#8f5611a6e877592932c082d6280c64d1c817f420"
- integrity sha512-nJnHJo/tNQjyod234+hPNopWHPvgH0gujf3pcdJWRe3l0GL+jSXXwXJ2SFwIHkVmxPYrx8+gbKU3+Pq26p6fkg==
- dependencies:
- dnd-core "^7.0.2"
- hoist-non-react-statics "^3.1.0"
- invariant "^2.1.0"
- lodash "^4.17.11"
- recompose "^0.30.0"
- shallowequal "^1.1.0"
-
react-dom@^16.6.3:
version "16.8.3"
resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-16.8.3.tgz#ae236029e66210783ac81999d3015dfc475b9c32"
@@ -6793,78 +6531,11 @@ react-dom@^16.6.3:
prop-types "^15.6.2"
scheduler "^0.13.3"
-react-is@^16.3.2, react-is@^16.7.0, react-is@^16.8.1:
+react-is@^16.8.1:
version "16.8.3"
resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.3.tgz#4ad8b029c2a718fc0cfc746c8d4e1b7221e5387d"
integrity sha512-Y4rC1ZJmsxxkkPuMLwvKvlL1Zfpbcu+Bf4ZigkHup3v9EfdYhAlWAaVyA19olXq2o2mGn0w+dFKvk3pVVlYcIA==
-react-lifecycles-compat@^3.0.2, react-lifecycles-compat@^3.0.4:
- version "3.0.4"
- resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362"
- integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==
-
-react-moment-proptypes@^1.6.0:
- version "1.6.0"
- resolved "https://registry.yarnpkg.com/react-moment-proptypes/-/react-moment-proptypes-1.6.0.tgz#8ec266ee392a08ba3412d2df2eebf833ab1046df"
- integrity sha512-4h7EuhDMTzQqZ+02KUUO+AVA7PqhbD88yXB740nFpNDyDS/bj9jiPyn2rwr9sa8oDyaE1ByFN9+t5XPyPTmN6g==
- dependencies:
- moment ">=1.6.0"
-
-react-outside-click-handler@^1.2.0:
- version "1.2.2"
- resolved "https://registry.yarnpkg.com/react-outside-click-handler/-/react-outside-click-handler-1.2.2.tgz#2c4609fbaacbfc192e269786d555419b115bf93f"
- integrity sha512-MgCxmFARGN1VrZdwoLkER/y3So6mC/fSniXI4XcXcB+Jt05nw/k8a/R1hSoa7p414uZUZ8NfClN3eVmZm9bM5Q==
- dependencies:
- airbnb-prop-types "^2.10.0"
- consolidated-events "^1.1.1 || ^2.0.0"
- object.values "^1.0.4"
- prop-types "^15.6.1"
-
-react-overlays@^0.8.0:
- version "0.8.3"
- resolved "https://registry.yarnpkg.com/react-overlays/-/react-overlays-0.8.3.tgz#fad65eea5b24301cca192a169f5dddb0b20d3ac5"
- integrity sha512-h6GT3jgy90PgctleP39Yu3eK1v9vaJAW73GOA/UbN9dJ7aAN4BTZD6793eI1D5U+ukMk17qiqN/wl3diK1Z5LA==
- dependencies:
- classnames "^2.2.5"
- dom-helpers "^3.2.1"
- prop-types "^15.5.10"
- prop-types-extra "^1.0.1"
- react-transition-group "^2.2.0"
- warning "^3.0.0"
-
-react-portal@^4.1.5:
- version "4.2.0"
- resolved "https://registry.yarnpkg.com/react-portal/-/react-portal-4.2.0.tgz#5400831cdb0ae64dccb8128121cf076089ab1afd"
- integrity sha512-Zf+vGQ/VEAb5XAy+muKEn48yhdCNYPZaB1BWg1xc8sAZWD8pXTgPtQT4ihBdmWzsfCq8p8/kqf0GWydSBqc+Eg==
- dependencies:
- prop-types "^15.5.8"
-
-react-transition-group@^2.0.0, react-transition-group@^2.2.0:
- version "2.5.3"
- resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.5.3.tgz#26de363cab19e5c88ae5dbae105c706cf953bb92"
- integrity sha512-2DGFck6h99kLNr8pOFk+z4Soq3iISydwOFeeEVPjTN6+Y01CmvbWmnN02VuTWyFdnRtIDPe+wy2q6Ui8snBPZg==
- dependencies:
- dom-helpers "^3.3.1"
- loose-envify "^1.4.0"
- prop-types "^15.6.2"
- react-lifecycles-compat "^3.0.4"
-
-react-viewerbase@^0.2.11:
- version "0.2.11"
- resolved "https://registry.yarnpkg.com/react-viewerbase/-/react-viewerbase-0.2.11.tgz#1015bb6c2876b2ce1a40dece8d614f7266d9fcb1"
- integrity sha512-s2Nr3VSjANIvalhTPKn2CUoHzDpKiHl81BYYEFdcAt20chTmpBRlH6J6uQ7rrxpO8Iz3OblpWinNJf9+6E0pDg==
- dependencies:
- "@babel/runtime" "^7.2.0"
- classnames "^2.2.6"
- lodash.isequal "^4.5.0"
- moment "^2.24.0"
- prop-types "^15.6.2"
- react-bootstrap-modal "^4.2.0"
- react-dates "^18.4.1"
- react-dnd "^7.0.2"
- react-dnd-html5-backend "^7.0.2"
- react-with-direction "^1.3.0"
-
react-vtkjs-viewport@^0.0.7:
version "0.0.7"
resolved "https://registry.yarnpkg.com/react-vtkjs-viewport/-/react-vtkjs-viewport-0.0.7.tgz#8fcb3adfc6609d6e3fc6d5af94d59cb1ec4426c0"
@@ -6874,38 +6545,6 @@ react-vtkjs-viewport@^0.0.7:
cornerstone-math "^0.1.8"
vtk.js "^8.3.11"
-react-with-direction@^1.3.0:
- version "1.3.0"
- resolved "https://registry.yarnpkg.com/react-with-direction/-/react-with-direction-1.3.0.tgz#9885f5941aa986be753db95a41e8f3d8f8de97ff"
- integrity sha512-2TflEebNckTNUybw3Rzqjg4BwM/H380ZL5lsbZ5f4UTY2JyE5uQdQZK5T2w+BDJSAMcqoA2RDJYa4e7Cl6C2Kg==
- dependencies:
- airbnb-prop-types "^2.8.1"
- brcast "^2.0.2"
- deepmerge "^1.5.1"
- direction "^1.0.1"
- hoist-non-react-statics "^2.3.1"
- object.assign "^4.1.0"
- object.values "^1.0.4"
- prop-types "^15.6.0"
-
-react-with-styles-interface-css@^4.0.2:
- version "4.0.3"
- resolved "https://registry.yarnpkg.com/react-with-styles-interface-css/-/react-with-styles-interface-css-4.0.3.tgz#c4a61277b2b8e4126b2cd25eca3ac4097bd2af09"
- integrity sha512-wE43PIyjal2dexxyyx4Lhbcb+E42amoYPnkunRZkb9WTA+Z+9LagbyxwsI352NqMdFmghR0opg29dzDO4/YXbw==
- dependencies:
- array.prototype.flat "^1.2.1"
- global-cache "^1.2.1"
-
-react-with-styles@^3.2.0:
- version "3.2.1"
- resolved "https://registry.yarnpkg.com/react-with-styles/-/react-with-styles-3.2.1.tgz#57a313ae3dcd0b347193a5538d5061d3bb96bab4"
- integrity sha512-L+x/EDgrKkqV6pTfDtLMShf7Xs+bVQ+HAT5rByX88QYX+ft9t5Gn4PWMmg36Ur21IVEBMGjjQQIJGJpBrzbsyg==
- dependencies:
- deepmerge "^1.5.2"
- hoist-non-react-statics "^2.5.0"
- prop-types "^15.6.1"
- react-with-direction "^1.3.0"
-
react@^16.6.3:
version "16.8.3"
resolved "https://registry.yarnpkg.com/react/-/react-16.8.3.tgz#c6f988a2ce895375de216edcfaedd6b9a76451d9"
@@ -7081,18 +6720,6 @@ rechoir@^0.6.2:
dependencies:
resolve "^1.1.6"
-recompose@^0.30.0:
- version "0.30.0"
- resolved "https://registry.yarnpkg.com/recompose/-/recompose-0.30.0.tgz#82773641b3927e8c7d24a0d87d65aeeba18aabd0"
- integrity sha512-ZTrzzUDa9AqUIhRk4KmVFihH0rapdCSMFXjhHbNrjAWxBuUD/guYlyysMnuHjlZC/KRiOKRtB4jf96yYSkKE8w==
- dependencies:
- "@babel/runtime" "^7.0.0"
- change-emitter "^0.1.2"
- fbjs "^0.8.1"
- hoist-non-react-statics "^2.3.1"
- react-lifecycles-compat "^3.0.2"
- symbol-observable "^1.0.4"
-
redent@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa"
@@ -7101,19 +6728,6 @@ redent@^2.0.0:
indent-string "^3.0.0"
strip-indent "^2.0.0"
-redux@^4.0.1:
- version "4.0.1"
- resolved "https://registry.yarnpkg.com/redux/-/redux-4.0.1.tgz#436cae6cc40fbe4727689d7c8fae44808f1bfef5"
- integrity sha512-R7bAtSkk7nY6O/OYMVR9RiBI+XghjF9rlbl5806HJbQph0LJVHZrU5oaO4q70eUKiqMRqm4y07KLTlMZ2BlVmg==
- dependencies:
- loose-envify "^1.4.0"
- symbol-observable "^1.2.0"
-
-reflect.ownkeys@^0.2.0:
- version "0.2.0"
- resolved "https://registry.yarnpkg.com/reflect.ownkeys/-/reflect.ownkeys-0.2.0.tgz#749aceec7f3fdf8b63f927a04809e90c5c0b3460"
- integrity sha1-dJrO7H8/34tj+SegSAnpDFwLNGA=
-
regenerate-unicode-properties@^7.0.0:
version "7.0.0"
resolved "https://registry.yarnpkg.com/regenerate-unicode-properties/-/regenerate-unicode-properties-7.0.0.tgz#107405afcc4a190ec5ed450ecaa00ed0cafa7a4c"
@@ -7603,11 +7217,6 @@ set-value@^2.0.0:
is-plain-object "^2.0.3"
split-string "^3.0.1"
-setimmediate@^1.0.5:
- version "1.0.5"
- resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285"
- integrity sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=
-
sha.js@^2.4.0, sha.js@^2.4.8:
version "2.4.11"
resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.11.tgz#37a5cf0b81ecbc6943de109ba2960d1b26584ae7"
@@ -7624,11 +7233,6 @@ sha@~2.0.1:
graceful-fs "^4.1.2"
readable-stream "^2.0.2"
-shallowequal@^1.1.0:
- version "1.1.0"
- resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8"
- integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==
-
shebang-command@^1.2.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea"
@@ -8233,7 +7837,7 @@ svgo@^1.0.0:
unquote "~1.1.1"
util.promisify "~1.0.0"
-symbol-observable@^1.0.4, symbol-observable@^1.1.0, symbol-observable@^1.2.0:
+symbol-observable@^1.1.0:
version "1.2.0"
resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804"
integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==
@@ -8431,11 +8035,6 @@ typedarray@^0.0.6:
resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777"
integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=
-ua-parser-js@^0.7.18:
- version "0.7.19"
- resolved "https://registry.yarnpkg.com/ua-parser-js/-/ua-parser-js-0.7.19.tgz#94151be4c0a7fb1d001af7022fdaca4642659e4b"
- integrity sha512-T3PVJ6uz8i0HzPxOF9SWzWAlfN/DavlpQqepn22xgve/5QecC+XMCAtmUNnY7C9StehaV6exjUCI801lOI7QlQ==
-
uid-number@0.0.6:
version "0.0.6"
resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81"
@@ -8728,13 +8327,6 @@ vtk.js@^8.3.11:
webvr-polyfill "0.10.8"
webworker-promise "0.4.2"
-warning@^3.0.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/warning/-/warning-3.0.0.tgz#32e5377cb572de4ab04753bdf8821c01ed605b7c"
- integrity sha1-MuU3fLVy3kqwR1O9+IIcAe1gW3w=
- dependencies:
- loose-envify "^1.0.0"
-
wcwidth@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8"
@@ -8759,11 +8351,6 @@ webworker-promise@0.4.2:
resolved "https://registry.yarnpkg.com/webworker-promise/-/webworker-promise-0.4.2.tgz#aeb92684a3a5a05e95ddaeccf8482254c6cf5dc0"
integrity sha512-/se9zS6MpRhyodk+C7YcBZq5mY1apJvKys6Tb6t2NDDeRMGgRuuyYjox38PssylFyPodjPEab/S0WuA20CFu7g==
-whatwg-fetch@>=0.10.0:
- version "3.0.0"
- resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.0.0.tgz#fc804e458cc460009b1a2b966bc8817d2578aefb"
- integrity sha512-9GSJUgz1D4MfyKU7KRqwOjXCXTqWdFNvEr7eUBYchQiVc744mqK/MzXPNR2WsPkmkOa4ywfg8C2n8h+13Bey1Q==
-
which-module@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a"
diff --git a/package.json b/package.json
index 29e775d09..d35ecf1fd 100644
--- a/package.json
+++ b/package.json
@@ -66,6 +66,8 @@
"dependencies": {
"@babel/polyfill": "^7.2.5",
"@babel/runtime": "^7.2.0",
+ "@ohif/extension-cornerstone": "0.0.34",
+ "@ohif/extension-vtk": "0.0.2",
"classnames": "^2.2.6",
"cornerstone-core": "^2.2.8",
"cornerstone-math": "^0.1.8",
@@ -78,11 +80,9 @@
"lodash.isequal": "4.5.0",
"moment": "^2.24.0",
"ohif-core": "0.5.5",
- "ohif-cornerstone-extension": "0.0.32",
"ohif-dicom-html-extension": "^0.0.2",
"ohif-dicom-microscopy-extension": "^0.0.5",
"ohif-dicom-pdf-extension": "^0.0.6",
- "ohif-vtk-extension": "^0.0.1",
"oidc-client": "1.7.x",
"prop-types": "^15.6.2",
"react-bootstrap-modal": "^4.2.0",
@@ -92,7 +92,7 @@
"react-resize-detector": "^3.4.0",
"react-router": "^4.3.1",
"react-router-dom": "^4.3.1",
- "react-viewerbase": "0.4.2",
+ "react-viewerbase": "0.6.1",
"react-vtkjs-viewport": "^0.0.7",
"redux": "^4.0.1",
"redux-oidc": "3.1.x"
diff --git a/public/icons.svg b/public/icons.svg
deleted file mode 100644
index 3b0690b4f..000000000
--- a/public/icons.svg
+++ /dev/null
@@ -1,246 +0,0 @@
-
-
- HUD
-
-
-
-
-
-
-
-
- Additional Measurements
-
-
-
-
-
- Lesions
-
-
-
-
-
- Settings
-
-
-
- Complete
-
-
-
-
-
- Locked
-
-
-
- Studies
-
-
-
-
-
- Window / Level
-
-
-
-
-
-
- Link
-
-
-
-
-
-
- Non-Target Measurement
-
-
-
-
-
-
-
- Target Measurement
-
-
-
-
-
-
- Target CR Measurement
-
- CR
-
-
-
-
- Target UN Measurement
-
- UN
-
-
-
-
- Temporary Measurement
-
-
-
-
-
-
-
- More
-
-
-
-
-
- Pan
-
-
-
-
-
-
-
-
-
-
- Zoom
-
-
-
-
-
-
- Invert
-
-
-
- Stack Scroll
-
-
-
- Elliptical ROI
-
-
-
- Magnify
-
-
-
- Reset
-
-
-
- Rotate
-
-
-
- Rotate Right
-
-
-
- Cineplay Toggle
-
-
-
- Vertical
-
-
-
- Horizontal
-
-
-
- Trial Information
-
-
-
-
-
- Expand
-
-
-
- Add
-
-
-
- Close
-
-
-
-
-
-
- Capture Screen
-
-
-
-
-
-
-
- Warning
-
-
-
-
-
- Open Health Imaging Foundation
-
-
-
-
-
-
-
-
- Viewport Link
-
-
-
-
-
-
- Theme
-
-
-
- Log
-
-
-
- Server
-
-
-
- Study List
-
-
-
- Logout
-
-
-
- Password
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/App.js b/src/App.js
index 7d3718fd3..2d73bb449 100644
--- a/src/App.js
+++ b/src/App.js
@@ -1,26 +1,28 @@
-import React, { Component } from 'react';
-import { BrowserRouter as Router } from 'react-router-dom';
-import { Provider } from 'react-redux';
-import { createStore, combineReducers } from 'redux';
-import PropTypes from 'prop-types';
-import OHIF from 'ohif-core';
import './config';
-import ui from './redux/ui.js';
-import OHIFStandaloneViewer from './OHIFStandaloneViewer';
-import WhiteLabellingContext from './WhiteLabellingContext';
-import OHIFCornerstoneExtension from 'ohif-cornerstone-extension';
-import OHIFVTKExtension from 'ohif-vtk-extension';
-import OHIFDicomPDFExtension from 'ohif-dicom-pdf-extension';
-import OHIFDicomHtmlExtension from 'ohif-dicom-html-extension';
-import OHIFDicomMicroscopyExtension from 'ohif-dicom-microscopy-extension';
+
import { OidcProvider, reducer as oidcReducer } from 'redux-oidc';
+import React, { Component } from 'react';
+import { combineReducers, createStore } from 'redux';
import {
getDefaultToolbarButtons,
getUserManagerForOpenIdConnectClient,
initWebWorkers,
} from './utils/index.js';
-import setupTools from './setupTools';
+
import ConnectedToolContextMenu from './connectedComponents/ConnectedToolContextMenu';
+import OHIF from 'ohif-core';
+import OHIFCornerstoneExtension from '@ohif/extension-cornerstone';
+import OHIFDicomHtmlExtension from 'ohif-dicom-html-extension';
+import OHIFDicomMicroscopyExtension from 'ohif-dicom-microscopy-extension';
+import OHIFDicomPDFExtension from 'ohif-dicom-pdf-extension';
+import OHIFStandaloneViewer from './OHIFStandaloneViewer';
+import OHIFVTKExtension from '@ohif/extension-vtk';
+import PropTypes from 'prop-types';
+import { Provider } from 'react-redux';
+import { BrowserRouter as Router } from 'react-router-dom';
+import WhiteLabellingContext from './WhiteLabellingContext';
+import setupTools from './setupTools';
+import ui from './redux/ui.js';
const { ExtensionManager } = OHIF.extensions;
const { reducers, localStorage } = OHIF.redux;
diff --git a/src/components/Header/Header.js b/src/components/Header/Header.js
index 010baa830..51c3ad744 100644
--- a/src/components/Header/Header.js
+++ b/src/components/Header/Header.js
@@ -29,12 +29,16 @@ class Header extends Component {
this.options = [
{
title: 'Preferences ',
- icon: 'fa fa-user',
+ icon: {
+ name: 'user',
+ },
onClick: this.props.openUserPreferencesModal,
},
{
title: 'About',
- icon: 'fa fa-info',
+ icon: {
+ name: 'info',
+ },
link: 'http://ohif.org',
},
];
diff --git a/src/components/Labelling/LabellingFlow.js b/src/components/Labelling/LabellingFlow.js
index 6056df906..5fdebd145 100644
--- a/src/components/Labelling/LabellingFlow.js
+++ b/src/components/Labelling/LabellingFlow.js
@@ -1,14 +1,12 @@
+import { Icon, SelectTree } from 'react-viewerbase';
import React, { Component } from 'react';
-import PropTypes from 'prop-types';
-
-import cloneDeep from 'lodash.clonedeep';
-import bounding from '../../lib/utils/bounding.js';
import LabellingTransition from './LabellingTransition.js';
-import { SelectTree } from 'react-viewerbase';
-import { getAddLabelButtonStyle } from './labellingPositionUtils.js';
-
import OHIFLabellingData from './OHIFLabellingData.js';
+import PropTypes from 'prop-types';
+import bounding from '../../lib/utils/bounding.js';
+import cloneDeep from 'lodash.clonedeep';
+import { getAddLabelButtonStyle } from './labellingPositionUtils.js';
export default class LabellingFlow extends Component {
static propTypes = {
@@ -93,11 +91,6 @@ export default class LabellingFlow extends Component {
locationLabel,
} = this.state;
- const Icons = `${window.config.routerBasename}/icons.svg`.replace(
- '//',
- '/'
- );
-
if (!skipAddLabelButton) {
return (
<>
@@ -128,9 +121,7 @@ export default class LabellingFlow extends Component {
className="checkIconWrapper"
onClick={this.fadeOutAndLeaveFast}
>
-
-
-
+
{locationLabel}
diff --git a/src/components/OHIFLogo/OHIFLogo.css b/src/components/OHIFLogo/OHIFLogo.css
index 34cd6510b..4fc3886a8 100644
--- a/src/components/OHIFLogo/OHIFLogo.css
+++ b/src/components/OHIFLogo/OHIFLogo.css
@@ -1,23 +1,29 @@
.header-brand {
height: 30px;
text-decoration: none;
- float: left;
- clear: both;
+ text-decoration-color: none;
+
+ display: flex;
+ color: var(--text-primary-color);
+ font-size: 14px;
+ font-weight: var(--logo-font-weight);
+ font-family: var(--logo-font-family);
+}
+
+.header-brand:hover,
+.header-brand:active,
+.header-band:visited {
+ color: var(--text-primary-color);
+ text-decoration: none;
}
.header-logo-text {
- display: inline-block;
- font-family: var(--logo-font-family);
- font-size: 14px;
- font-weight: var(--logo-font-weight);
- color: var(--text-primary-color);
line-height: 30px;
+ margin-left: 8px;
}
.header-logo-image {
- fill: transparent;
- height: 100%;
- margin: 0 8px 0 0;
+ height: 30px;
width: 30px;
- float: left;
+ font-size: 30px;
}
diff --git a/src/components/OHIFLogo/OHIFLogo.js b/src/components/OHIFLogo/OHIFLogo.js
index 4126f6de0..1f5d69471 100644
--- a/src/components/OHIFLogo/OHIFLogo.js
+++ b/src/components/OHIFLogo/OHIFLogo.js
@@ -1,7 +1,7 @@
-import React from 'react';
import './OHIFLogo.css';
-const Icons = `${window.config.routerBasename}/icons.svg`.replace('//', '/');
+import { Icon } from 'react-viewerbase';
+import React from 'react';
function OHIFLogo() {
return (
@@ -11,9 +11,7 @@ function OHIFLogo() {
className="header-brand"
href="http://ohif.org"
>
-
-
-
+
Open Health Imaging Foundation
);
diff --git a/src/connectedComponents/ConnectedPluginSwitch.js b/src/connectedComponents/ConnectedPluginSwitch.js
index 9d99e4e62..4281064c1 100644
--- a/src/connectedComponents/ConnectedPluginSwitch.js
+++ b/src/connectedComponents/ConnectedPluginSwitch.js
@@ -36,14 +36,13 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
// TODO: Do not display certain options if the current display set
// cannot be displayed using these view types
- const Icons = `${window.config.routerBasename}/icons.svg`.replace('//', '/');
const buttons = [
{
text: 'Acquired',
type: 'command',
- iconClasses: 'fa fa-bars',
+ icon: 'bars',
active: false,
- onClick: click => {
+ onClick: () => {
console.warn('Original Acquisition');
const layoutData = setSingleLayoutData(
@@ -57,10 +56,9 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
},
{
text: 'Axial',
- svgUrl: `${Icons}#cube`,
- svgClasses: 'icon-rotate-120',
+ icon: 'cube',
active: false,
- onClick: click => {
+ onClick: () => {
console.warn('Axial');
const data = {
plugin: 'vtk',
@@ -81,9 +79,9 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
},
{
text: 'Sagittal',
- svgUrl: `${Icons}#cube`,
+ icon: 'cube',
active: false,
- onClick: click => {
+ onClick: () => {
console.warn('Sagittal');
const data = {
plugin: 'vtk',
@@ -104,10 +102,9 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
},
{
text: 'Coronal',
- svgUrl: `${Icons}#cube`,
- svgClasses: 'fa-rotate-90 fa-flip-horizontal',
+ icon: 'cube',
active: false,
- onClick: click => {
+ onClick: () => {
console.warn('Coronal');
const data = {
plugin: 'vtk',
@@ -128,7 +125,7 @@ const mergeProps = (propsFromState, propsFromDispatch, ownProps) => {
},
/*{
text: '3D',
- svgUrl: `${Icons}#cube`,
+ icon: `#cube`,
onClick: (click) => {
console.warn('3D Perspective');
const data = {
diff --git a/src/connectedComponents/FlexboxLayout.js b/src/connectedComponents/FlexboxLayout.js
index e4dc47617..3467fc403 100644
--- a/src/connectedComponents/FlexboxLayout.js
+++ b/src/connectedComponents/FlexboxLayout.js
@@ -1,9 +1,11 @@
+import './FlexboxLayout.css';
+
import React, { Component } from 'react';
-import PropTypes from 'prop-types';
+
+import ConnectedMeasurementTable from './ConnectedMeasurementTable';
import ConnectedStudyBrowser from './ConnectedStudyBrowser.js';
import ConnectedViewerMain from './ConnectedViewerMain.js';
-import ConnectedMeasurementTable from './ConnectedMeasurementTable';
-import './FlexboxLayout.css';
+import PropTypes from 'prop-types';
class FlexboxLayout extends Component {
static propTypes = {
@@ -41,16 +43,22 @@ class FlexboxLayout extends Component {
seriesNumber,
instanceNumber,
numImageFrames,
+ // TODO: This is undefined
+ // modality,
} = displaySet;
let imageId;
+ let altImageText = ' '; // modality
if (displaySet.images && displaySet.images.length) {
imageId = displaySet.images[0].getImageId();
+ } else {
+ altImageText = 'SR';
}
return {
imageId,
+ altImageText,
displaySetInstanceUid,
seriesDescription,
seriesNumber,
diff --git a/src/connectedComponents/ToolbarRow.js b/src/connectedComponents/ToolbarRow.js
index 26b1425ba..deda8d4c4 100644
--- a/src/connectedComponents/ToolbarRow.js
+++ b/src/connectedComponents/ToolbarRow.js
@@ -1,12 +1,12 @@
-import React, { Component } from 'react';
-import PropTypes from 'prop-types';
-import OHIF from 'ohif-core';
-import { RoundedButtonGroup } from 'react-viewerbase';
-import ConnectedLayoutButton from './ConnectedLayoutButton';
-import ConnectedPluginSwitch from './ConnectedPluginSwitch.js';
import './ToolbarRow.css';
-const Icons = `${window.config.routerBasename}/icons.svg`.replace('//', '/');
+import React, { Component } from 'react';
+
+import ConnectedLayoutButton from './ConnectedLayoutButton';
+import ConnectedPluginSwitch from './ConnectedPluginSwitch.js';
+import OHIF from 'ohif-core';
+import PropTypes from 'prop-types';
+import { RoundedButtonGroup } from 'react-viewerbase';
class ToolbarRow extends Component {
static propTypes = {
@@ -34,9 +34,7 @@ class ToolbarRow extends Component {
const leftSidebarToggle = [
{
value: 'studies',
- svgLink: `${Icons}#icon-studies`,
- svgWidth: 15,
- svgHeight: 13,
+ icon: 'th-large',
bottomLabel: 'Series',
},
];
@@ -44,9 +42,7 @@ class ToolbarRow extends Component {
const rightSidebarToggle = [
{
value: 'measurements',
- svgLink: `${Icons}#icon-measurements-lesions`,
- svgWidth: 15,
- svgHeight: 13,
+ icon: 'list',
bottomLabel: 'Measurements',
},
];
diff --git a/src/images/icons.svg b/src/images/icons.svg
deleted file mode 100644
index aa3817af6..000000000
--- a/src/images/icons.svg
+++ /dev/null
@@ -1,237 +0,0 @@
-
-
- HUD
-
-
-
-
-
-
-
-
- Additional Measurements
-
-
-
-
-
- Lesions
-
-
-
-
-
- Settings
-
-
-
- Complete
-
-
-
-
-
- Locked
-
-
-
- Studies
-
-
-
-
-
- Window / Level
-
-
-
-
-
-
- Link
-
-
-
-
-
-
- Non-Target Measurement
-
-
-
-
-
-
-
- Target Measurement
-
-
-
-
-
-
- Target CR Measurement
-
- CR
-
-
-
-
- Target UN Measurement
-
- UN
-
-
-
-
- Temporary Measurement
-
-
-
-
-
-
-
- More
-
-
-
-
-
- Pan
-
-
-
-
-
-
-
-
-
-
- Zoom
-
-
-
-
-
-
- Invert
-
-
-
- Stack Scroll
-
-
-
- Elliptical ROI
-
-
-
- Magnify
-
-
-
- Reset
-
-
-
- Rotate
-
-
-
- Rotate Right
-
-
-
- Cineplay Toggle
-
-
-
- Vertical
-
-
-
- Horizontal
-
-
-
- Trial Information
-
-
-
-
-
- Expand
-
-
-
- Add
-
-
-
- Close
-
-
-
-
-
-
- Capture Screen
-
-
-
-
-
-
-
- Warning
-
-
-
-
-
- Open Health Imaging Foundation
-
-
-
-
-
-
-
-
- Viewport Link
-
-
-
-
-
-
- Theme
-
-
-
- Log
-
-
-
- Server
-
-
-
- Study List
-
-
-
- Logout
-
-
-
- Password
-
-
-
diff --git a/src/utils/getDefaultToolbarButtons.js b/src/utils/getDefaultToolbarButtons.js
index 2ec95275e..a4393eb3c 100644
--- a/src/utils/getDefaultToolbarButtons.js
+++ b/src/utils/getDefaultToolbarButtons.js
@@ -1,115 +1,101 @@
-/**
- *
- * @param {String} [baseDirectory='/']
- */
-export default function(baseDirectory = '/') {
- const iconsFileName = 'icons.svg';
- const sanitizedBaseDirectory =
- baseDirectory[baseDirectory.length - 1] === '/'
- ? baseDirectory
- : `${baseDirectory}/`;
- const relativePathToIcons = `${sanitizedBaseDirectory}${iconsFileName}`.replace(
- '//',
- '/'
- );
-
+export default function() {
return [
{
command: 'StackScroll',
type: 'tool',
text: 'Stack Scroll',
- svgUrl: `${relativePathToIcons}#icon-tools-stack-scroll`,
+ icon: 'bars',
active: false,
},
{
command: 'Zoom',
type: 'tool',
text: 'Zoom',
- svgUrl: `${relativePathToIcons}#icon-tools-zoom`,
+ icon: 'search-plus',
active: false,
},
{
command: 'Wwwc',
type: 'tool',
text: 'Levels',
- svgUrl: `${relativePathToIcons}#icon-tools-levels`,
+ icon: 'level',
active: true,
},
{
command: 'Pan',
type: 'tool',
text: 'Pan',
- svgUrl: `${relativePathToIcons}#icon-tools-pan`,
+ icon: 'arrows',
active: false,
},
{
command: 'Length',
type: 'tool',
text: 'Length',
- svgUrl: `${relativePathToIcons}#icon-tools-measure-temp`,
+ icon: 'measure-temp',
active: false,
},
/*{
command: 'Annotate',
type: 'tool',
text: 'Annotate',
- svgUrl: `${Icons}#icon-tools-measure-non-target`,
+ icon: `icon-tools-measure-non-target`,
active: false
},*/
{
command: 'Angle',
type: 'tool',
text: 'Angle',
- iconClasses: 'fa fa-angle-left',
+ icon: 'angle-left',
active: false,
},
{
command: 'Bidirectional',
type: 'tool',
text: 'Bidirectional',
- svgUrl: `${relativePathToIcons}#icon-tools-measure-target`,
+ icon: 'measure-target',
active: false,
},
{
command: 'Brush',
type: 'tool',
text: 'Brush',
- iconClasses: 'fa fa-circle',
+ icon: 'circle',
active: false,
},
{
command: 'FreehandMouse',
type: 'tool',
text: 'Freehand',
- iconClasses: 'fa fa-star',
+ icon: 'star',
active: false,
},
{
command: 'EllipticalRoi',
type: 'tool',
text: 'EllipticalRoi',
- iconClasses: 'far fa-circle',
+ icon: 'oval',
active: false,
},
{
command: 'CircleRoi',
type: 'tool',
text: 'CircleRoi',
- iconClasses: 'far fa-dot-circle',
+ icon: 'dot-circle',
active: false,
},
{
command: 'RectangleRoi',
type: 'tool',
text: 'RectangleRoi',
- iconClasses: 'far fa-square',
+ icon: 'square-o',
active: false,
},
{
command: 'reset',
type: 'command',
text: 'Reset',
- svgUrl: `${relativePathToIcons}#icon-tools-reset`,
+ icon: 'reset',
active: false,
},
];
diff --git a/src/utils/getDefaultToolbarButtons.test.js b/src/utils/getDefaultToolbarButtons.test.js
index c98c2471f..8f59f53fa 100644
--- a/src/utils/getDefaultToolbarButtons.test.js
+++ b/src/utils/getDefaultToolbarButtons.test.js
@@ -2,25 +2,8 @@ import getDefaultToolbarButtons from './getDefaultToolbarButtons.js';
describe('getDefaultToolbarButtons.js', () => {
it('returns a non-empty array', () => {
- const basePath = '/';
-
- const buttons = getDefaultToolbarButtons(basePath);
+ const buttons = getDefaultToolbarButtons();
expect(buttons.length).toBeGreaterThan(0);
});
-
- it('uses the provided basePath in buttons with an svgUrl property', () => {
- const basePath = '/demo/';
-
- const buttons = getDefaultToolbarButtons(basePath);
- const hasOneOrMoreButtonsWithSvgUrlProperty = buttons.some(btn =>
- btn.hasOwnProperty('svgUrl')
- );
- const usesBasePathInButtonSvgUrls = buttons.every(
- btn => !btn.hasOwnProperty('svgUrl') || btn.svgUrl.includes(basePath)
- );
-
- expect(hasOneOrMoreButtonsWithSvgUrlProperty).toBeTruthy();
- expect(usesBasePathInButtonSvgUrls).toBeTruthy();
- });
});
diff --git a/yarn.lock b/yarn.lock
index 7b88a30c5..ee5069c3b 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -1014,6 +1014,25 @@
universal-user-agent "^2.0.0"
url-template "^2.0.8"
+"@ohif/extension-cornerstone@0.0.34":
+ version "0.0.34"
+ resolved "https://registry.yarnpkg.com/@ohif/extension-cornerstone/-/extension-cornerstone-0.0.34.tgz#b3e0ddd21e21f15b67ee1288dd83b833763cfa73"
+ integrity sha512-Q20FRXvyaeR8pgNJWPJ6oPrYgVtbO+CvAsn0TWqWvuMyuT1kGGlcmrGHjOt++dflx2Do7fVf/qCPFagHbrU9rA==
+ dependencies:
+ "@babel/runtime" "^7.2.0"
+ classnames "^2.2.6"
+ lodash.throttle "^4.1.1"
+ react-cornerstone-viewport "0.1.29"
+
+"@ohif/extension-vtk@0.0.2":
+ version "0.0.2"
+ resolved "https://registry.yarnpkg.com/@ohif/extension-vtk/-/extension-vtk-0.0.2.tgz#99f0ea796ddae14d7e64cff958c0656b5d964f4e"
+ integrity sha512-WDuQVwK4RlHgXwbmKIECZrP90x8cVOwESQz8bJOeNG2eVPDBVlNWx/zOXShAhn6J62QG6Sn1RnHQWLedgGnhyA==
+ dependencies:
+ "@babel/runtime" "^7.2.0"
+ classnames "^2.2.6"
+ react-vtkjs-viewport "^0.0.7"
+
"@samverschueren/stream-to-observable@^0.3.0":
version "0.3.0"
resolved "https://registry.yarnpkg.com/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.0.tgz#ecdf48d532c58ea477acfcab80348424f8d0662f"
@@ -9688,16 +9707,6 @@ ohif-core@0.5.5:
lodash.merge "^4.6.1"
validate.js "^0.12.0"
-ohif-cornerstone-extension@0.0.32:
- version "0.0.32"
- resolved "https://registry.yarnpkg.com/ohif-cornerstone-extension/-/ohif-cornerstone-extension-0.0.32.tgz#607852e2e300b320e29a37f0f8c9ced3cf4b07e5"
- integrity sha512-qHpYno6pYT3UqqAVd+SsMvwIei2sPRxkasqt8uxDSA+tbsM/TaY8daICMknC5aRGvr5XrY9+gSztE6GPJbX0Og==
- dependencies:
- "@babel/runtime" "^7.2.0"
- classnames "^2.2.6"
- lodash.throttle "^4.1.1"
- react-cornerstone-viewport "0.1.29"
-
ohif-dicom-html-extension@^0.0.2:
version "0.0.2"
resolved "https://registry.yarnpkg.com/ohif-dicom-html-extension/-/ohif-dicom-html-extension-0.0.2.tgz#5dd80836ee8f12f6ddf6de2b88c72af96d8c347b"
@@ -9723,15 +9732,6 @@ ohif-dicom-pdf-extension@^0.0.6:
classnames "^2.2.6"
lodash.isequal "^4.5.0"
-ohif-vtk-extension@^0.0.1:
- version "0.0.1"
- resolved "https://registry.yarnpkg.com/ohif-vtk-extension/-/ohif-vtk-extension-0.0.1.tgz#aec448c1d0a905d162154c65982227b3503f5f15"
- integrity sha512-JfLh0AyEc2hOstpiXj9wMwvuYIQathOmsbb49SZFTw9Y9jMjgdxzdTJaiGtERsVT/92I9u42YrMYk6w5TQCT6A==
- dependencies:
- "@babel/runtime" "^7.2.0"
- classnames "^2.2.6"
- react-vtkjs-viewport "^0.0.7"
-
oidc-client@1.7.x:
version "1.7.1"
resolved "https://registry.yarnpkg.com/oidc-client/-/oidc-client-1.7.1.tgz#8b9d8d50fd7f878968b1cda17712c1747eef9a54"
@@ -11760,10 +11760,10 @@ react-transition-group@^2.0.0, react-transition-group@^2.2.0:
prop-types "^15.6.2"
react-lifecycles-compat "^3.0.4"
-react-viewerbase@0.4.2:
- version "0.4.2"
- resolved "https://registry.yarnpkg.com/react-viewerbase/-/react-viewerbase-0.4.2.tgz#a890db450c0f6d1ec495dc2ceb85dbe38fcb7fda"
- integrity sha512-1rqdXZ3gQIuRtuxOTKwg9D4EJ1NJ8ug9mQWOAFxx+7PSFhfbjXn55O4Fko92qXrlKqd+Rba1jqBvzTXPr0h0fQ==
+react-viewerbase@0.6.1:
+ version "0.6.1"
+ resolved "https://registry.yarnpkg.com/react-viewerbase/-/react-viewerbase-0.6.1.tgz#60cb6d1b9e90f627b3756f1e426505b9551d0485"
+ integrity sha512-1wGW4a8lHaG/j5WeC9/R9TZrJLthL6cm5IPDEmthTKF8PNiImMY1VgLR80aXDhfKYi8AVEyCEhOkvvXbPgBl1A==
dependencies:
"@babel/runtime" "7.2.0"
classnames "2.2.6"