fix(package.json): Bump WADO Image Loader dependency, remove unnecessary worker and codec paths (#727)

Note: had to disable sourcemaps for commonjs modules. This seems to be the only way to prevent memory issues on CircleCI.
This commit is contained in:
Erik Ziegler 2019-07-30 11:00:08 +02:00 committed by GitHub
parent e73d009c21
commit a4112c46a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 16 additions and 67 deletions

View File

@ -88,7 +88,6 @@ _/public/config/default.js_
```js ```js
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
relativeWebWorkerScriptsPath: '',
servers: { servers: {
dicomWeb: [ dicomWeb: [
{ {

View File

@ -50,8 +50,6 @@ include tags. Here's how it works:
window.config = { window.config = {
// default: '/' // default: '/'
routerBasename: '/', routerBasename: '/',
// default: ''
relativeWebWorkerScriptsPath: '',
servers: { servers: {
dicomWeb: [ dicomWeb: [
{ {

View File

@ -24,7 +24,6 @@ _/public/config/default.js_
```js ```js
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
relativeWebWorkerScriptsPath: '',
servers: { servers: {
dicomWeb: [ dicomWeb: [
{ {

View File

@ -104,7 +104,6 @@ like:
```js ```js
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
relativeWebWorkerScriptsPath: '',
servers: { servers: {
dicomWeb: [ dicomWeb: [
{ {

View File

@ -33,11 +33,10 @@
"docs:publish": "./publishStaticSite.sh", "docs:publish": "./publishStaticSite.sh",
"start": "yarn run dev", "start": "yarn run dev",
"predeploy": "cd example && npm install && yarn run build:package", "predeploy": "cd example && npm install && yarn run build:package",
"preBuild": "yarn run version && yarn run copy:webworkers", "preBuild": "yarn run version",
"orthanc:up": "docker-compose -f docker/Nginx-Orthanc/docker-compose.yml up", "orthanc:up": "docker-compose -f docker/Nginx-Orthanc/docker-compose.yml up",
"dev:orthanc": "yarn run preBuild && cross-env PORT=5000 REACT_APP_CONFIG=config/docker_nginx-orthanc.js react-scripts start", "dev:orthanc": "yarn run preBuild && cross-env PORT=5000 REACT_APP_CONFIG=config/docker_nginx-orthanc.js react-scripts start",
"version": "node -p -e \"'export default \\'' + require('./package.json').version + '\\';'\" > src/version.js", "version": "node -p -e \"'export default \\'' + require('./package.json').version + '\\';'\" > src/version.js",
"copy:webworkers": "cpx \"node_modules/cornerstone-wado-image-loader/dist/*.min.js*\" \"public\" -v",
"cy": "cypress open", "cy": "cypress open",
"cy:run": "cypress run", "cy:run": "cypress run",
"cy:run:ci": "yarn run cy:run -- --record" "cy:run:ci": "yarn run cy:run -- --record"
@ -89,7 +88,7 @@
"cornerstone-core": "^2.2.8", "cornerstone-core": "^2.2.8",
"cornerstone-math": "^0.1.8", "cornerstone-math": "^0.1.8",
"cornerstone-tools": "^3.16.0", "cornerstone-tools": "^3.16.0",
"cornerstone-wado-image-loader": "^2.2.3", "cornerstone-wado-image-loader": "^3.0.0",
"dcmjs": "^0.4.7", "dcmjs": "^0.4.7",
"dicom-parser": "^1.8.3", "dicom-parser": "^1.8.3",
"dicomweb-client": "^0.5.2", "dicomweb-client": "^0.5.2",

View File

@ -1,8 +1,6 @@
window.config = { window.config = {
// default: '/' // default: '/'
routerBasename: '/', routerBasename: '/',
// default: ''
relativeWebWorkerScriptsPath: '',
showStudyList: true, showStudyList: true,
servers: { servers: {
dicomWeb: [ dicomWeb: [

View File

@ -1,7 +1,6 @@
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
showStudyList: true, showStudyList: true,
relativeWebWorkerScriptsPath: '',
servers: { servers: {
dicomWeb: [ dicomWeb: [
{ {

View File

@ -1,7 +1,6 @@
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
showStudyList: true, showStudyList: true,
relativeWebWorkerScriptsPath: '',
servers: { servers: {
// This is an array, but we'll only use the first entry for now // This is an array, but we'll only use the first entry for now
dicomWeb: [ dicomWeb: [

View File

@ -1,7 +1,6 @@
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
showStudyList: true, showStudyList: true,
relativeWebWorkerScriptsPath: '',
servers: { servers: {
// This is an array, but we'll only use the first entry for now // This is an array, but we'll only use the first entry for now
dicomWeb: [ dicomWeb: [

View File

@ -1,6 +1,5 @@
window.config = { window.config = {
routerBasename: '/', routerBasename: '/',
relativeWebWorkerScriptsPath: '',
enableGoogleCloudAdapter: true, enableGoogleCloudAdapter: true,
servers: { servers: {
// This is an array, but we'll only use the first entry for now // This is an array, but we'll only use the first entry for now

View File

@ -3,7 +3,6 @@ window.config = {
routerBasename: '/', routerBasename: '/',
// default: '' // default: ''
showStudyList: true, showStudyList: true,
relativeWebWorkerScriptsPath: '',
servers: { servers: {
dicomWeb: [ dicomWeb: [
{ {

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -50,12 +50,14 @@ export default {
url(), url(),
svgr(), svgr(),
json(), json(),
resolve({ preferBuiltins: true }), builtins(),
resolve(),
babel({ babel({
exclude: 'node_modules/**', exclude: 'node_modules/**',
runtimeHelpers: true, runtimeHelpers: true,
}), }),
commonjs({ commonjs({
sourceMap: false,
include: 'node_modules/**', include: 'node_modules/**',
namedExports: { namedExports: {
'node_modules/react/index.js': [ 'node_modules/react/index.js': [
@ -107,7 +109,6 @@ export default {
'node_modules/prop-types/index.js': ['oneOfType', 'element', 'bool', 'number', 'string', 'shape', 'func', 'any', 'node'] 'node_modules/prop-types/index.js': ['oneOfType', 'element', 'bool', 'number', 'string', 'shape', 'func', 'any', 'node']
}, },
}), }),
builtins(),
startServer && serve({ startServer && serve({
open: true, open: true,
// Multiple folders to serve from // Multiple folders to serve from

View File

@ -105,7 +105,6 @@ function makeAbsoluteIfNecessary(url, base_url) {
class App extends Component { class App extends Component {
static propTypes = { static propTypes = {
routerBasename: PropTypes.string.isRequired, routerBasename: PropTypes.string.isRequired,
relativeWebWorkerScriptsPath: PropTypes.string.isRequired,
servers: PropTypes.object.isRequired, servers: PropTypes.object.isRequired,
oidc: PropTypes.array, oidc: PropTypes.array,
whiteLabelling: PropTypes.object, whiteLabelling: PropTypes.object,
@ -142,10 +141,7 @@ class App extends Component {
); );
} }
handleServers(this.props.servers); handleServers(this.props.servers);
initWebWorkers( initWebWorkers();
this.props.routerBasename,
this.props.relativeWebWorkerScriptsPath
);
} }
render() { render() {

View File

@ -11,7 +11,6 @@ export { App };
window.config = window.config || {}; window.config = window.config || {};
const applicationDefaults = { const applicationDefaults = {
routerBasename: '/', routerBasename: '/',
relativeWebWorkerScriptsPath: '',
}; };
const applicationProps = Object.assign({}, applicationDefaults, window.config); const applicationProps = Object.assign({}, applicationDefaults, window.config);
const app = React.createElement(App, applicationProps, null); const app = React.createElement(App, applicationProps, null);

View File

@ -1,32 +1,12 @@
import cornerstoneWADOImageLoader from 'cornerstone-wado-image-loader'; import cornerstoneWADOImageLoader from 'cornerstone-wado-image-loader';
/** export default function initWebWorkers() {
*
* @param {String} baseDirectory
* @param {String} webWorkScriptsPath
*/
export default function initWebWorkers(
baseDirectory = '/',
webWorkScriptsPath = ''
) {
let scriptsPath = `${window.location.protocol}//${
window.location.host
}${baseDirectory}${webWorkScriptsPath}`;
// Ensure the last character is a slash
if (scriptsPath[scriptsPath.length - 1] !== '/') {
scriptsPath += '/';
}
const config = { const config = {
maxWebWorkers: Math.max(navigator.hardwareConcurrency - 1, 1), maxWebWorkers: Math.max(navigator.hardwareConcurrency - 1, 1),
startWebWorkersOnDemand: true, startWebWorkersOnDemand: true,
webWorkerPath: `${scriptsPath}cornerstoneWADOImageLoaderWebWorker.min.js`,
taskConfiguration: { taskConfiguration: {
decodeTask: { decodeTask: {
loadCodecsOnStartup: true,
initializeCodecsOnStartup: false, initializeCodecsOnStartup: false,
codecsPath: `${scriptsPath}cornerstoneWADOImageLoaderCodecs.min.js`,
usePDFJS: false, usePDFJS: false,
strict: false, strict: false,
}, },

View File

@ -3,10 +3,7 @@ import cornerstoneWADOImageLoader from 'cornerstone-wado-image-loader';
describe('initWebWorkers', () => { describe('initWebWorkers', () => {
it("initializes cornerstoneWADOImageLoader's web workers", () => { it("initializes cornerstoneWADOImageLoader's web workers", () => {
const basePath = '/'; initWebWorkers();
const relativeWebWorkerScriptsPath = '';
initWebWorkers(basePath, relativeWebWorkerScriptsPath);
expect( expect(
cornerstoneWADOImageLoader.webWorkerManager.initialize cornerstoneWADOImageLoader.webWorkerManager.initialize

View File

@ -3848,12 +3848,13 @@ cornerstone-tools@^3.16.0:
cornerstone-math "0.1.7" cornerstone-math "0.1.7"
debug "4.1.1" debug "4.1.1"
cornerstone-wado-image-loader@^2.2.3: cornerstone-wado-image-loader@^3.0.0:
version "2.2.3" version "3.0.0"
resolved "https://registry.yarnpkg.com/cornerstone-wado-image-loader/-/cornerstone-wado-image-loader-2.2.3.tgz#2d4c06b5c87cd9198b52906c48e2d9dd145de986" resolved "https://registry.yarnpkg.com/cornerstone-wado-image-loader/-/cornerstone-wado-image-loader-3.0.0.tgz#250ba435379096815de52ed80629d6407e016841"
integrity sha512-0N5ykSEVoUx3zzfGn5Oaa7OJL/EHOthPUI2Kv8gSnMgf6ipcz5TcK8xGMOfu6grMkKlNb0SFJ/cEqsHR7bddKQ== integrity sha512-T18aPcLBkYn2dg2qVbIgA6FQUVvwJVmyDlBdWXHdfOZgQnhbxd7Gz1V0hHqpGAfAv8mH1nlNzZ9ipFsNYHvXdA==
dependencies: dependencies:
dicom-parser "^1.8.1" dicom-parser "^1.8.3"
pako "^1.0.10"
cosmiconfig@^5.0.0, cosmiconfig@^5.0.1, cosmiconfig@^5.2.0, cosmiconfig@^5.2.1: cosmiconfig@^5.0.0, cosmiconfig@^5.0.1, cosmiconfig@^5.2.0, cosmiconfig@^5.2.1:
version "5.2.1" version "5.2.1"
@ -4565,7 +4566,7 @@ dicom-microscopy-viewer@0.6.1:
dicomweb-client "^0.5.2" dicomweb-client "^0.5.2"
ol "^5.3.0" ol "^5.3.0"
dicom-parser@^1.8.1, dicom-parser@^1.8.3: dicom-parser@^1.8.3:
version "1.8.3" version "1.8.3"
resolved "https://registry.yarnpkg.com/dicom-parser/-/dicom-parser-1.8.3.tgz#6e4b862898112304db30143147562011c1ce6a4d" resolved "https://registry.yarnpkg.com/dicom-parser/-/dicom-parser-1.8.3.tgz#6e4b862898112304db30143147562011c1ce6a4d"
integrity sha512-CMeUr+jea7Ml70N+/Z5Pd2MYtvLp6IU+TnvdLe6VRVKzZuTeYLYyuAQa9R+sFK4v4N39hig+hKHN+Wfi9sQ6GA== integrity sha512-CMeUr+jea7Ml70N+/Z5Pd2MYtvLp6IU+TnvdLe6VRVKzZuTeYLYyuAQa9R+sFK4v4N39hig+hKHN+Wfi9sQ6GA==
@ -10830,7 +10831,7 @@ pako@1.0.6:
resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.6.tgz#0101211baa70c4bca4a0f63f2206e97b7dfaf258"
integrity sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg== integrity sha512-lQe48YPsMJAig+yngZ87Lus+NF+3mtu7DVOBu6b/gHO1YpKwIj5AWjZ/TOS7i46HD/UixzWb1zeWDZfGZ3iYcg==
pako@~1.0.2, pako@~1.0.5: pako@^1.0.10, pako@~1.0.2, pako@~1.0.5:
version "1.0.10" version "1.0.10"
resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732" resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.10.tgz#4328badb5086a426aa90f541977d4955da5c9732"
integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw== integrity sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==