New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

cornerstone-wado-image-loader

Package Overview
Dependencies
Maintainers
5
Versions
74
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cornerstone-wado-image-loader - npm Package Compare versions

Comparing version 0.14.7 to 0.15.0

coverage/html/src/externalModules.js.html

2

config/webpack/merge.js

@@ -15,2 +15,2 @@ const _ = require('lodash');

return merged;
}
};

@@ -29,8 +29,2 @@ const path = require('path');

},
'cornerstone-core': {
commonjs: "cornerstone-core",
commonjs2: "cornerstone-core",
amd: "cornerstone-core",
root: 'cornerstone'
},
'dicom-parser': {

@@ -37,0 +31,0 @@ commonjs: "dicom-parser",

=============================== Coverage summary ===============================
Statements : 3.41% ( 38/1114 )
Branches : 0.7% ( 4/572 )
Functions : 2.22% ( 3/135 )
Lines : 3.41% ( 38/1113 )
Statements : 2.93% ( 33/1125 )
Branches : 0.7% ( 4/569 )
Functions : 1.99% ( 3/151 )
Lines : 2.94% ( 33/1124 )
================================================================================
---------------------------------------------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
---------------------------------------------|----------|----------|----------|----------|----------------|
src/  | 100 | 100 | 100 | 100 |  |
src/  | 25 | 100 | 100 | 25 |  |
externalModules.js  | 25 | 100 | 100 | 25 | 9,11,14 |
version.js  | 100 | 100 | 100 | 100 |  |
src/imageLoader/  | 6.07 | 1.26 | 3.23 | 6.1 |  |
src/imageLoader/  | 2.88 | 1.27 | 0 | 2.89 |  |
configure.js  | 0 | 100 | 0 | 0 | 4 |
convertColorSpace.js  | 0 | 0 | 0 | 0 |... 34,35,36,38 |
createImage.js  | 1.69 | 0 | 0 | 1.72 |... 145,148,151 |
decodeImageFrame.js  | 0 | 0 | 0 | 0 |... 65,66,68,84 |
decodeJPEGBaseline8BitColor.js  | 0 | 0 | 0 | 0 |... 70,71,73,78 |
dicom-parser.js  | 100 | 100 | 100 | 100 |  |
createImage.js  | 1.69 | 0 | 0 | 1.72 |... 143,144,147 |
decodeImageFrame.js  | 0 | 0 | 0 | 0 |... 63,64,66,82 |
decodeJPEGBaseline8BitColor.js  | 0 | 0 | 0 | 0 |... 71,73,77,78 |
getImageFrame.js  | 0 | 100 | 0 | 0 | 4,6 |
getMinMax.js  | 100 | 100 | 100 | 100 |  |
index.js  | 100 | 100 | 100 | 100 |  |
isColorImage.js  | 0 | 0 | 0 | 0 | 2 |
isJPEGBaseline8BitColor.js  | 0 | 0 | 0 | 0 | 2,4,7 |
jquery.js  | 100 | 100 | 100 | 100 |  |
webWorkerManager.js  | 7.32 | 5.71 | 0 | 7.32 |... 299,300,302 |
registerLoaders.js  | 0 | 100 | 0 | 0 | 11,12 |
webWorkerManager.js  | 7.14 | 5.71 | 0 | 7.14 |... 304,305,307 |
src/imageLoader/colorSpaceConverters/  | 0 | 0 | 0 | 0 |  |

@@ -27,13 +26,14 @@ convertPALETTECOLOR.js  | 0 | 0 | 0 | 0 |... 30,31,32,33 |

index.js  | 100 | 100 | 100 | 100 |  |
src/imageLoader/internal/  | 7.32 | 0 | 12.5 | 7.32 |  |
src/imageLoader/internal/  | 7.5 | 0 | 11.11 | 7.5 |  |
index.js  | 100 | 100 | 100 | 100 |  |
options.js  | 66.67 | 100 | 50 | 66.67 | 12 |
xhrRequest.js  | 0 | 0 | 0 | 0 |... 6,90,99,101 |
src/imageLoader/wadors/  | 3.8 | 0 | 0 | 3.8 |  |
xhrRequest.js  | 0 | 0 | 0 | 0 |... 7,88,92,101 |
src/imageLoader/wadors/  | 2.6 | 0 | 0 | 2.6 |  |
findIndexOfString.js  | 0 | 0 | 0 | 0 |... 35,37,38,43 |
getPixelData.js  | 0 | 0 | 0 | 0 |... 72,76,79,87 |
getPixelData.js  | 0 | 0 | 0 | 0 |... 64,65,69,72 |
index.js  | 100 | 100 | 100 | 100 |  |
loadImage.js  | 5 | 0 | 0 | 5 |... 42,43,46,49 |
loadImage.js  | 0 | 0 | 0 | 0 |... 40,42,45,48 |
metaDataManager.js  | 20 | 100 | 0 | 20 | 6,10,14,18 |
src/imageLoader/wadors/metaData/  | 2.04 | 0 | 0 | 2.04 |  |
register.js  | 0 | 100 | 0 | 0 | 6,7 |
src/imageLoader/wadors/metaData/  | 0 | 0 | 0 | 0 |  |
getNumberString.js  | 0 | 0 | 0 | 0 | 12,14,15,18 |

@@ -44,5 +44,5 @@ getNumberValue.js  | 0 | 0 | 0 | 0 | 4,6,7,10 |

index.js  | 100 | 100 | 100 | 100 |  |
metaDataProvider.js  | 4.35 | 0 | 0 | 4.35 |... 92,94,95,98 |
src/imageLoader/wadouri/  | 5.15 | 0 | 0 | 5.15 |  |
dataSetCacheManager.js  | 5.71 | 0 | 0 | 5.71 |... ,98,105,106 |
metaDataProvider.js  | 0 | 0 | 0 | 0 |... 91,93,94,97 |
src/imageLoader/wadouri/  | 2.63 | 0 | 0 | 2.63 |  |
dataSetCacheManager.js  | 6.45 | 0 | 0 | 6.45 |... 86,88,95,96 |
fileManager.js  | 16.67 | 100 | 0 | 16.67 | 4,6,10,14,18 |

@@ -52,20 +52,22 @@ getEncapsulatedImageFrame.js  | 0 | 0 | 0 | 0 |... 23,24,26,29 |

index.js  | 100 | 100 | 100 | 100 |  |
loadFileRequest.js  | 0 | 100 | 0 | 0 |... 16,18,20,22 |
loadImage.js  | 8.33 | 0 | 0 | 8.33 |... 71,74,75,79 |
parseImageId.js  | 0 | 0 | 0 | 0 |... 11,13,14,17 |
loadFileRequest.js  | 0 | 100 | 0 | 0 |... 13,15,18,20 |
loadImage.js  | 0 | 0 | 0 | 0 |... 100,104,106 |
parseImageId.js  | 0 | 0 | 0 | 0 |... ,9,11,12,15 |
register.js  | 0 | 100 | 0 | 0 | 6,7,8,11 |
unpackBinaryFrame.js  | 0 | 0 | 0 | 0 |... 19,22,25,28 |
src/imageLoader/wadouri/metaData/  | 0.93 | 0 | 0 | 0.93 |  |
getImagePixelModule.js  | 0 | 0 | 0 | 0 |... 56,69,70,72 |
getLUTs.js  | 0 | 0 | 0 | 0 |... 46,48,49,53 |
src/imageLoader/wadouri/metaData/  | 0 | 0 | 0 | 0 |  |
getImagePixelModule.js  | 0 | 0 | 0 | 0 |... 53,66,67,69 |
getLUTs.js  | 0 | 0 | 0 | 0 |... 44,46,47,51 |
getModalityLUTOutputPixelRepresentation.js | 0 | 0 | 0 | 0 |... 38,43,44,48 |
getNumberValues.js  | 0 | 0 | 0 | 0 |... 11,13,14,17 |
index.js  | 100 | 100 | 100 | 100 |  |
metaDataProvider.js  | 3.85 | 0 | 0 | 3.85 |... 83,84,87,90 |
metaDataProvider.js  | 0 | 0 | 0 | 0 |... 82,83,86,89 |
src/shared/  | 100 | 100 | 100 | 100 |  |
getMinMax.js  | 100 | 100 | 100 | 100 |  |
src/webWorker/  | 20 | 14.29 | 16.67 | 20 |  |
index.js  | 100 | 100 | 100 | 100 |  |
webWorker.js  | 17.65 | 14.29 | 16.67 | 17.65 |... 109,110,111 |
src/webWorker/decodeTask/  | 1.49 | 0 | 0 | 1.49 |  |
src/webWorker/decodeTask/  | 1.69 | 0 | 0 | 1.69 |  |
decodeImageFrame.js  | 0 | 0 | 0 | 0 |... 56,72,74,76 |
decodeTask.js  | 3.85 | 0 | 0 | 3.85 |... 77,84,88,92 |
getMinMax.js  | 0 | 100 | 0 | 0 |... 11,12,13,16 |
src/webWorker/decodeTask/decoders/  | 0 | 0 | 0 | 0 |  |

@@ -80,3 +82,3 @@ decodeBigEndian.js  | 0 | 0 | 0 | 0 |... 28,31,32,35 |

---------------------------------------------|----------|----------|----------|----------|----------------|
All files  | 3.41 | 0.7 | 2.22 | 3.41 |  |
All files  | 2.93 | 0.7 | 1.99 | 2.94 |  |
---------------------------------------------|----------|----------|----------|----------|----------------|

@@ -1,3 +0,3 @@

/*! cornerstone-wado-image-loader - 0.14.7 - 2017-09-15 | (c) 2016 Chris Hafey | https://github.com/chafey/cornerstoneWADOImageLoader */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("cornerstone-core"),require("dicom-parser"),require("jquery")):"function"==typeof define&&define.amd?define("cornerstoneWADOImageLoader",["cornerstone-core","dicom-parser","jquery"],t):"object"==typeof exports?exports.cornerstoneWADOImageLoader=t(require("cornerstone-core"),require("dicom-parser"),require("jquery")):e.cornerstoneWADOImageLoader=t(e.cornerstone,e.dicomParser,e.$)}(this,function(e,t,r){return function(e){function t(n){if(r[n])return r[n].exports;var a=r[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,t),a.l=!0,a.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=45)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(63),a=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=a.default},function(t,r){t.exports=e},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.internal=t.xhrRequest=t.getOptions=t.setOptions=void 0;var n=r(46),a=function(e){return e&&e.__esModule?e:{default:e}}(n),o=r(9),u={xhrRequest:a.default,setOptions:o.setOptions,getOptions:o.getOptions};t.setOptions=o.setOptions,t.getOptions=o.getOptions,t.xhrRequest=a.default,t.internal=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="0.14.7"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(62);Object.keys(n).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}})})},function(e,t,r){"use strict";function n(e,t,r){return t=t||0,e&&e.Value?e.Value.length<=t?r:e.Value[t]:r}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){var t=e.indexOf(":"),r=e.substring(t+1),n=r.indexOf("frame="),a=void 0;if(-1!==n){var o=r.substr(n+6);a=parseInt(o,10),r=r.substr(0,n-1)}return{scheme:e.substr(0,t),url:r,frame:a}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){return"1.2.840.10008.5.1.4.1.1.12.1"!==e&&"1.2.840.10008.5.1.4.1.1.12.2.1"!==e}function o(e){16===e.bitsAllocated?0===e.pixelRepresentation?e.pixelData=new Uint16Array(e.pixelData):e.pixelData=new Int16Array(e.pixelData):e.pixelData=new Uint8Array(e.pixelData)}function u(e,t,r,n){var u=document.createElement("canvas"),i=l.default.Deferred(),d=(0,f.default)(e);return(0,c.default)(d,r,t,u,n).then(function(t){var n=_.metaData.get("imagePlaneModule",e)||{},l=_.metaData.get("voiLutModule",e)||{},d=_.metaData.get("modalityLutModule",e)||{},f=_.metaData.get("sopCommonModule",e)||{},s=(0,g.default)(t.photometricInterpretation);if(!(0,x.default)(t,r)&&(o(t),s)){u.height=t.rows,u.width=t.columns;var c=u.getContext("2d"),p=c.createImageData(t.columns,t.rows);(0,v.default)(t,p),t.imageData=p,t.pixelData=p.data;var m=(0,P.default)(t.pixelData);t.smallestPixelValue=m.min,t.largestPixelValue=m.max}var b={imageId:e,color:s,columnPixelSpacing:n.pixelSpacing?n.pixelSpacing[1]:void 0,columns:t.columns,height:t.rows,intercept:d.rescaleIntercept?d.rescaleIntercept:0,invert:"MONOCHROME1"===t.photometricInterpretation,minPixelValue:t.smallestPixelValue,maxPixelValue:t.largestPixelValue,render:void 0,rowPixelSpacing:n.pixelSpacing?n.pixelSpacing[0]:void 0,rows:t.rows,sizeInBytes:t.pixelData.length,slope:d.rescaleSlope?d.rescaleSlope:1,width:t.columns,windowCenter:l.windowCenter?l.windowCenter[0]:void 0,windowWidth:l.windowWidth?l.windowWidth[0]:void 0,decodeTimeInMS:t.decodeTimeInMS};if(b.getPixelData=function(){return t.pixelData},b.color?(b.render=_.renderColorImage,b.getCanvas=function(){return O===e?u:(u.height=b.rows,u.width=b.columns,u.getContext("2d").putImageData(t.imageData,0,0),O=e,u)}):b.render=_.renderGrayscaleImage,d.modalityLUTSequence&&d.modalityLUTSequence.length>0&&a(f.sopClassUID)&&(b.modalityLUT=d.modalityLUTSequence[0]),l.voiLUTSequence&&l.voiLUTSequence.length>0&&(b.voiLUT=l.voiLUTSequence[0]),void 0===b.windowCenter||void 0===b.windowWidth)if(b.color)b.windowWidth=255,b.windowCenter=128;else{var y=b.maxPixelValue*b.slope+b.intercept,h=b.minPixelValue*b.slope+b.intercept;b.windowWidth=y-h,b.windowCenter=(y+h)/2}i.resolve(b)}),i.promise()}Object.defineProperty(t,"__esModule",{value:!0});var i=r(0),l=n(i),d=r(16),f=n(d),s=r(14),c=n(s),p=r(17),g=n(p),m=r(13),v=n(m),b=r(8),P=n(b),y=r(18),x=n(y),h=r(1),_=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(h),O="";t.default=u},function(e,t,r){"use strict";function n(e){for(var t=e[0],r=e[0],n=void 0,a=e.length,o=0;o<a;o++)n=e[o],t=Math.min(t,n),r=Math.max(r,n);return{min:t,max:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){o=e}function a(){return o}Object.defineProperty(t,"__esModule",{value:!0}),t.setOptions=n,t.getOptions=a;var o={beforeSend:function(){},imageCreated:function(){},strict:!1}},function(e,t,r){"use strict";function n(e,t){i[e]=t}function a(e){return i[e]}function o(e){i[e]=void 0}function u(){i=[]}Object.defineProperty(t,"__esModule",{value:!0});var i=[];t.default={add:n,get:a,remove:o,purge:u}},function(e,t,r){"use strict";function n(e){return void 0!==p[e]}function a(e){if(p[e])return p[e].dataSet}function o(e,t,r){if(t=t||c.xhrRequest,p[e]){var n=d.default.Deferred();return p[e].cacheCount++,n.resolve(p[e].dataSet),n}if(g[e])return g[e];var a=t(e,r),o=d.default.Deferred();return a.then(function(t){var r=new Uint8Array(t),n=void 0;try{n=s.parseDicom(r)}catch(e){return void o.reject(e)}p[e]={dataSet:n,cacheCount:1},o.resolve(n),delete g[e]},function(e){o.reject(e)}).always(function(){delete g[e]}),g[e]=o,o}function u(e){p[e]&&0===--p[e].cacheCount&&delete p[e]}function i(){p={},g={}}Object.defineProperty(t,"__esModule",{value:!0});var l=r(0),d=function(e){return e&&e.__esModule?e:{default:e}}(l),f=r(4),s=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(f),c=r(2),p={},g={};t.default={isLoaded:n,load:o,unload:u,purge:i,get:a}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(41);Object.defineProperty(t,"convertRGBColorByPixel",{enumerable:!0,get:function(){return n(a).default}});var o=r(42);Object.defineProperty(t,"convertRGBColorByPlane",{enumerable:!0,get:function(){return n(o).default}});var u=r(43);Object.defineProperty(t,"convertYBRFullByPixel",{enumerable:!0,get:function(){return n(u).default}});var i=r(44);Object.defineProperty(t,"convertYBRFullByPlane",{enumerable:!0,get:function(){return n(i).default}});var l=r(40);Object.defineProperty(t,"convertPALETTECOLOR",{enumerable:!0,get:function(){return n(l).default}})},function(e,t,r){"use strict";function n(e,t){0===e.planarConfiguration?(0,u.convertRGBColorByPixel)(e.pixelData,t):(0,u.convertRGBColorByPlane)(e.pixelData,t)}function a(e,t){0===e.planarConfiguration?(0,u.convertYBRFullByPixel)(e.pixelData,t):(0,u.convertYBRFullByPlane)(e.pixelData,t)}function o(e,t){var r=t.data;if("RGB"===e.photometricInterpretation)n(e,r);else if("YBR_RCT"===e.photometricInterpretation)n(e,r);else if("YBR_ICT"===e.photometricInterpretation)n(e,r);else if("PALETTE COLOR"===e.photometricInterpretation)(0,u.convertPALETTECOLOR)(e,r);else if("YBR_FULL_422"===e.photometricInterpretation)n(e,r);else{if("YBR_FULL"!==e.photometricInterpretation)throw new Error("No color space conversion for photometric interpretation "+e.photometricInterpretation);a(e,r)}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var u=r(12)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e,t,r,n){var a=n.priority||void 0,o=n.transferPixelData?[r.buffer]:void 0;return i.default.addTask("decodeTask",{imageFrame:e,transferSyntax:t,pixelData:r,options:n},a,o).promise}function o(e,t,r,n,o){if(o=o||{},"1.2.840.10008.1.2"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.1"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.2"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.1.99"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.5"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.50"===t)return 8!==e.bitsAllocated||3!==e.samplesPerPixel&&4!==e.samplesPerPixel?a(e,t,r,o):(0,d.default)(e,r,n);if("1.2.840.10008.1.2.4.51"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.57"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.70"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.80"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.81"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.90"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.91"===t)return a(e,t,r,o);throw new Error("No decoder for transfer syntax "+t)}Object.defineProperty(t,"__esModule",{value:!0});var u=r(19),i=n(u),l=r(15),d=n(l);t.default=o},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){return o(String.fromCharCode.apply(null,Array.prototype.slice.apply(new Uint8Array(e))))}function o(e){var t=void 0;try{return decodeURIComponent(escape(e))}catch(r){if((t=r)instanceof URIError)return e;throw t}}function u(e,t,r){var n=(new Date).getTime(),o=l.default.Deferred(),u=new Blob([t],{type:"image/jpeg"}),i=new FileReader;return void 0===i.readAsBinaryString?i.readAsArrayBuffer(u):i.readAsBinaryString(u),i.onload=function(){var t=new Image;t.onload=function(){r.height=t.height,r.width=t.width,e.rows=t.height,e.columns=t.width;var a=r.getContext("2d");a.drawImage(this,0,0);var u=a.getImageData(0,0,t.width,t.height),i=(new Date).getTime();e.pixelData=u.data,e.imageData=u,e.decodeTimeInMS=i-n;var l=(0,f.default)(e.pixelData);e.smallestPixelValue=l.min,e.largestPixelValue=l.max,o.resolve(e)},t.onerror=function(e){o.reject(e)},void 0===i.readAsBinaryString?t.src="data:image/jpeg;base64,"+window.btoa(a(i.result)):t.src="data:image/jpeg;base64,"+window.btoa(i.result)},o.promise()}Object.defineProperty(t,"__esModule",{value:!0});var i=r(0),l=n(i),d=r(8),f=n(d);t.default=u},function(e,t,r){"use strict";function n(e){var t=o.metaData.get("imagePixelModule",e);return{samplesPerPixel:t.samplesPerPixel,photometricInterpretation:t.photometricInterpretation,planarConfiguration:t.planarConfiguration,rows:t.rows,columns:t.columns,bitsAllocated:t.bitsAllocated,pixelRepresentation:t.pixelRepresentation,smallestPixelValue:t.smallestPixelValue,largestPixelValue:t.largestPixelValue,redPaletteColorLookupTableDescriptor:t.redPaletteColorLookupTableDescriptor,greenPaletteColorLookupTableDescriptor:t.greenPaletteColorLookupTableDescriptor,bluePaletteColorLookupTableDescriptor:t.bluePaletteColorLookupTableDescriptor,redPaletteColorLookupTableData:t.redPaletteColorLookupTableData,greenPaletteColorLookupTableData:t.greenPaletteColorLookupTableData,bluePaletteColorLookupTableData:t.bluePaletteColorLookupTableData,pixelData:void 0}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(1),o=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(a);t.default=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"RGB"===e||"PALETTE COLOR"===e||"YBR_FULL"===e||"YBR_FULL_422"===e||"YBR_PARTIAL_422"===e||"YBR_PARTIAL_420"===e||"YBR_RCT"===e||"YBR_ICT"===e}},function(e,t,r){"use strict";function n(e,t){if(t=t||e.transferSyntax,8===e.bitsAllocated&&"1.2.840.10008.1.2.4.50"===t&&(3===e.samplesPerPixel||4===e.samplesPerPixel))return!0}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(){if(v.length){for(var e=0;e<b.length;e++)if("ready"===b[e].status){b[e].status="busy";var t=v.shift();t.start=(new Date).getTime();var r=(new Date).getTime();return h.totalTimeDelayedInMS+=r-t.added,b[e].task=t,b[e].worker.postMessage({taskType:t.taskType,workerIndex:e,data:t.data},t.transferList),void h.numTasksExecuting++}b.length<x.maxWebWorkers&&o()}}function a(e){if("initialize"===e.data.taskType)b[e.data.workerIndex].status="ready",n();else{var t=b[e.data.workerIndex].task.start;b[e.data.workerIndex].task.deferred.resolve(e.data.result),b[e.data.workerIndex].task=void 0,h.numTasksExecuting--,b[e.data.workerIndex].status="ready",h.numTasksCompleted++;var r=(new Date).getTime();h.totalTaskTimeInMS+=r-t,n()}}function o(){if(!(b.length>=x.maxWebWorkers)){var e=new Worker(x.webWorkerPath);b.push({worker:e,status:"initializing"}),e.addEventListener("message",a),e.postMessage({taskType:"initialize",workerIndex:b.length-1,config:x})}}function u(e){if(e=e||y,x)throw new Error("WebWorkerManager already initialized");if(x=e,x.maxWebWorkers=x.maxWebWorkers||navigator.hardwareConcurrency||1,!x.startWebWorkersOnDemand)for(var t=0;t<x.maxWebWorkers;t++)o()}function i(e,t){x.webWorkerTaskPaths.push(e),t&&(x.taskConfiguration=Object.assign(x.taskConfiguration,t));for(var r=0;r<b.length;r++)b[r].worker.postMessage({taskType:"loadWebWorkerTask",workerIndex:b.length-1,sourcePath:e,config:x})}function l(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments[3];x||u();var o=p.default.Deferred(),i=void 0;for(i=0;i<v.length&&!(v[i].priority<=r);i++);var l=m++;return v.splice(i,0,{taskId:l,taskType:e,status:"ready",added:(new Date).getTime(),data:t,deferred:o,priority:r,transferList:a}),n(),{taskId:l,promise:o.promise()}}function d(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=0;r<v.length;r++)if(v[r].taskId===e){var n=v.splice(r,1)[0];for(n.priority=t,r=0;r<v.length&&!(v[r].priority<=t);r++);return v.splice(r,0,n),!0}return!1}function f(e,t){for(var r=0;r<v.length;r++)if(v[r].taskId===e){var n=v.splice(r,1);return n.promise.reject(t),!0}return!1}function s(){return h.maxWebWorkers=x.maxWebWorkers,h.numWebWorkers=b.length,h.numTasksQueued=v.length,h}Object.defineProperty(t,"__esModule",{value:!0});var c=r(0),p=function(e){return e&&e.__esModule?e:{default:e}}(c),g=r(9),m=0,v=[],b=[],P=(0,g.getOptions)(),y={maxWebWorkers:navigator.hardwareConcurrency||1,startWebWorkersOnDemand:!0,webWorkerPath:"../../dist/cornerstoneWADOImageLoaderWebWorker.js",webWorkerTaskPaths:[],taskConfiguration:{decodeTask:{loadCodecsOnStartup:!0,initializeCodecsOnStartup:!1,codecsPath:"../dist/cornerstoneWADOImageLoaderCodecs.js",usePDFJS:!1,strict:P.strict}}},x=void 0,h={maxWebWorkers:0,numWebWorkers:0,numTasksQueued:0,numTasksExecuting:0,numTasksCompleted:0,totalTaskTimeInMS:0,totalTimeDelayedInMS:0};t.default={initialize:u,loadWebWorkerTask:i,addTask:l,getStatistics:s,setTaskPriority:d,cancelTask:f}},function(e,t,r){"use strict";function n(e,t,r){if(r+e.length>t.length)return!1;for(var n=r,a=0;a<e.length;a++)if(e[a]!==t[n++])return!1;return!0}function a(e){for(var t=new Uint8Array(e.length),r=0,n=e.length;r<n;r++)t[r]=e.charCodeAt(r);return t}function o(e,t,r){r=r||0;for(var o=a(t),u=r;u<e.length;u++)if(o[0]===e[u]&&n(o,e,u))return u;return-1}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){for(var t=0;t<e.length;t++)if("--"===e[t].substr(0,2))return e[t]}function o(e){for(var t=0;t<e.length;t++)if("Content-Type:"===e[t].substr(0,13))return e[t].substr(13).trim()}function u(e,t,r){t=t||0,r=r||e.length-t;for(var n="",a=t;a<t+r;a++)n+=String.fromCharCode(e[a]);return n}function i(e,t,r){r=r||"application/octet-stream";var n={accept:r},i=d.default.Deferred();return(0,f.xhrRequest)(e,t,n).then(function(e){var t=new Uint8Array(e),r=(0,c.default)(t,"\r\n\r\n");-1===r&&i.reject("invalid response - no multipart mime header");var n=u(t,0,r),l=n.split("\r\n"),d=a(l);d||i.reject("invalid response - no boundary marker");var f=r+4,s=(0,c.default)(t,d,f);-1===s&&i.reject("invalid response - terminating boundary not found");var p=s-f-2;i.resolve({contentType:o(l),imageFrame:{pixelData:new Uint8Array(e,f,p)}})}),i.promise()}Object.defineProperty(t,"__esModule",{value:!0});var l=r(0),d=n(l),f=r(2),s=r(20),c=n(s);t.default=i},function(e,t,r){"use strict";function n(e,t){var r=(0,o.default)(e,t);if(void 0!==r)return parseFloat(r)}Object.defineProperty(t,"__esModule",{value:!0});var a=r(5),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default=n},function(e,t,r){"use strict";function n(e,t){if(e&&e.Value&&!(t&&e.Value.length<t)){for(var r=[],n=0;n<e.Value.length;n++)r.push(parseFloat(e.Value[n]));return r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){return"dicomfile:"+(i.push(e)-1)}function a(e){return i[e]}function o(e){i[e]=void 0}function u(){i=[]}Object.defineProperty(t,"__esModule",{value:!0});var i=[];t.default={add:n,get:a,remove:o,purge:u}},function(e,t,r){"use strict";function n(e){return e.intString("x00280008")!==e.elements.x7fe00010.fragments.length}function a(e,t){if(e.elements.x7fe00010.basicOffsetTable.length)return u.readEncapsulatedImageFrame(e,e.elements.x7fe00010,t);if(n(e)){var r=u.createJPEGBasicOffsetTable(e,e.elements.x7fe00010);return u.readEncapsulatedImageFrame(e,e.elements.x7fe00010,t,r)}return u.readEncapsulatedPixelDataFromFragments(e,e.elements.x7fe00010,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var o=r(4),u=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(o)},function(e,t,r){"use strict";function n(e,t){var r=e.elements.x7fe00010,n=e.uint16("x00280100"),a=e.uint16("x00280010"),u=e.uint16("x00280011"),i=e.uint16("x00280002"),l=r.dataOffset,d=a*u*i,f=void 0;if(8===n){if((f=l+t*d)>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Uint8Array(e.byteArray.buffer,f,d)}if(16===n){if((f=l+t*d*2)>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Uint8Array(e.byteArray.buffer,f,2*d)}if(1===n){if((f=l+t*d*.125)>=e.byteArray.length)throw"frame exceeds size of pixelData";return(0,o.default)(e.byteArray,f,d)}throw"unsupported pixel format"}Object.defineProperty(t,"__esModule",{value:!0});var a=r(32),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){var t=(0,l.default)(e),r=parseInt(t.url,10),n=f.default.get(r),a=u.default.Deferred(),o=new FileReader;return o.onload=function(e){var t=e.target.result;a.resolve(t)},o.readAsArrayBuffer(n),a.promise()}Object.defineProperty(t,"__esModule",{value:!0});var o=r(0),u=n(o),i=r(6),l=n(i),d=r(24),f=n(d);t.default=a},function(e,t,r){"use strict";function n(e,t){if(e.elements[t]&&6===e.elements[t].length)return[e.uint16(t,0),e.uint16(t,1),e.uint16(t,2)]}function a(e,t,r){for(var n=[],a=e.elements[t],o=r[0],u=0;u<o;u++)16===r[2]?n[u]=e.uint16(t,u):n[u]=e.byteArray[u+a.dataOffset];return n}function o(e,t){"PALETTE COLOR"===t.photometricInterpretation&&e.elements.x00281101&&(t.redPaletteColorLookupTableDescriptor=n(e,"x00281101"),t.greenPaletteColorLookupTableDescriptor=n(e,"x00281102"),t.bluePaletteColorLookupTableDescriptor=n(e,"x00281103"),t.redPaletteColorLookupTableData=a(e,"x00281201",t.redPaletteColorLookupTableDescriptor),t.greenPaletteColorLookupTableData=a(e,"x00281202",t.greenPaletteColorLookupTableDescriptor),t.bluePaletteColorLookupTableData=a(e,"x00281203",t.bluePaletteColorLookupTableDescriptor))}function u(e,t){0===e.uint16("x00280103")?(t.smallestPixelValue=e.uint16("x00280106"),t.largestPixelValue=e.uint16("x00280107")):(t.smallestPixelValue=e.int16("x00280106"),t.largestPixelValue=e.int16("x00280107"))}function i(e){var t={samplesPerPixel:e.uint16("x00280002"),photometricInterpretation:e.string("x00280004"),rows:e.uint16("x00280010"),columns:e.uint16("x00280011"),bitsAllocated:e.uint16("x00280100"),bitsStored:e.uint16("x00280101"),highBit:e.uint16("x00280102"),pixelRepresentation:e.uint16("x00280103"),planarConfiguration:e.uint16("x00280006"),pixelAspectRatio:e.string("x00280034")};return u(e,t),o(e,t),t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=i},function(e,t,r){"use strict";function n(e,t){var r=t.uint16("x00283002",0);0===r&&(r=65535);var n=0;n=0===e?t.uint16("x00283002",1):t.int16("x00283002",1);for(var a=t.uint16("x00283002",2),o={id:"1",firstValueMapped:n,numBitsPerEntry:a,lut:[]},u=0;u<r;u++)o.lut[u]=0===e?t.uint16("x00283006",u):t.int16("x00283006",u);return o}function a(e,t){if(t&&t.items.length){for(var r=[],a=0;a<t.items.length;a++){var o=t.items[a].dataSet,u=n(e,o);u&&r.push(u)}return r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},function(e,t,r){"use strict";function n(e){var t=e.uint16("x00280103"),r=e.uint16("x00280101");return 0===t?0:-1<<r-1}function a(e){var t=e.string("x00080016");if("1.2.840.10008.5.1.4.1.1.2"===t||"1.2.840.10008.5.1.4.1.1.2.1"===t)return 1;var r=e.floatString("x00281052"),a=e.floatString("x00281053");if(void 0!==r&&void 0!==a){return n(e)*a+r<0?1:0}return e.elements.x00283000&&e.elements.x00283000.length>0?0:e.uint16("x00280103")}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},function(e,t,r){"use strict";function n(e,t,r){var n=[],a=e.string(t);if(a){var o=a.split("\\");if(!(r&&o.length<r)){for(var u=0;u<o.length;u++)n.push(parseFloat(o[u]));return n}}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e,t){return e&1<<t}function a(e,t,r){for(var a=new Uint8Array(r),o=0;o<r;o++){var u=Math.floor(o/8),i=e[u+t],l=o%8;a[o]=n(i,l)?1:0}return a}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},,,function(e,t,r){"use strict";function n(e){(0,a.setOptions)(e)}Object.defineProperty(t,"__esModule",{value:!0});var a=r(2);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(49),o=r(20),u=n(o),i=r(21),l=n(i),d=r(10),f=n(d),s=r(47),c=n(s),p={getNumberString:a.getNumberString,getNumberValue:a.getNumberValue,getNumberValues:a.getNumberValues,getValue:a.getValue,metaDataProvider:a.metaDataProvider};t.default={metaData:p,findIndexOfString:u.default,getPixelData:l.default,loadImage:c.default,metaDataManager:f.default}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(52),o=r(11),u=n(o),i=r(24),l=n(i),d=r(25),f=n(d),s=r(26),c=n(s),p=r(27),g=n(p),m=r(51),v=r(6),b=n(v),P=r(32),y=n(P),x={getImagePixelModule:a.getImagePixelModule,getLUTs:a.getLUTs,getModalityLUTOutputPixelRepresentation:a.getModalityLUTOutputPixelRepresentation,getNumberValues:a.getNumberValues,metaDataProvider:a.metaDataProvider};t.default={metaData:x,dataSetCacheManager:u.default,fileManager:l.default,getEncapsulatedImageFrame:f.default,getUncompressedImageFrame:c.default,loadFileRequest:g.default,loadImageFromPromise:m.loadImageFromPromise,getLoaderForScheme:m.getLoaderForScheme,loadImage:m.loadImage,parseImageId:b.default,unpackBinaryFrame:y.default}},,,function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var r=e.columns*e.rows,n=0,a=0,o=e.pixelData,u=e.redPaletteColorLookupTableDescriptor[1],i=e.redPaletteColorLookupTableData,l=e.greenPaletteColorLookupTableData,d=e.bluePaletteColorLookupTableData,f=8===e.redPaletteColorLookupTableDescriptor[2]?0:8,s=e.redPaletteColorLookupTableData.length;0===s&&(s=65535);for(var c=0;c<r;++c){var p=o[n++];p<u?p=0:p>u+s-1?p=s-1:p-=u,t[a++]=i[p]>>f,t[a++]=l[p]>>f,t[a++]=d[p]>>f,t[a++]=255}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: rgbBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: rgbBuffer length must be divisible by 3");for(var r=e.length/3,n=0,a=0,o=0;o<r;o++)t[a++]=e[n++],t[a++]=e[n++],t[a++]=e[n++],t[a++]=255}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: rgbBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: rgbBuffer length must be divisible by 3");for(var r=e.length/3,n=0,a=0,o=r,u=2*r,i=0;i<r;i++)t[n++]=e[a++],t[n++]=e[o++],t[n++]=e[u++],t[n++]=255}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/3,n=0,a=0,o=0;o<r;o++){var u=e[n++],i=e[n++],l=e[n++];t[a++]=u+1.402*(l-128),t[a++]=u-.34414*(i-128)-.71414*(l-128),t[a++]=u+1.772*(i-128),t[a++]=255}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/3,n=0,a=0,o=r,u=2*r,i=0;i<r;i++){var l=e[a++],d=e[o++],f=e[u++];t[n++]=l+1.402*(f-128),t[n++]=l-.34414*(d-128)-.71414*(f-128),t[n++]=l+1.772*(d-128),t[n++]=255}}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(12);Object.keys(a).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}})});var o=r(37);Object.defineProperty(t,"wadouri",{enumerable:!0,get:function(){return n(o).default}});var u=r(36);Object.defineProperty(t,"wadors",{enumerable:!0,get:function(){return n(u).default}});var i=r(35);Object.defineProperty(t,"configure",{enumerable:!0,get:function(){return n(i).default}});var l=r(13);Object.defineProperty(t,"convertColorSpace",{enumerable:!0,get:function(){return n(l).default}});var d=r(7);Object.defineProperty(t,"createImage",{enumerable:!0,get:function(){return n(d).default}});var f=r(14);Object.defineProperty(t,"decodeImageFrame",{enumerable:!0,get:function(){return n(f).default}});var s=r(15);Object.defineProperty(t,"decodeJPEGBaseline8BitColor",{enumerable:!0,get:function(){return n(s).default}});var c=r(16);Object.defineProperty(t,"getImageFrame",{enumerable:!0,get:function(){return n(c).default}});var p=r(8);Object.defineProperty(t,"getMinMax",{enumerable:!0,get:function(){return n(p).default}});var g=r(17);Object.defineProperty(t,"isColorImage",{enumerable:!0,get:function(){return n(g).default}});var m=r(18);Object.defineProperty(t,"isJPEGBaseline8BitColor",{enumerable:!0,get:function(){return n(m).default}});var v=r(19);Object.defineProperty(t,"webWorkerManager",{enumerable:!0,get:function(){return n(v).default}});var b=r(3);Object.defineProperty(t,"version",{enumerable:!0,get:function(){return n(b).default}});var P=r(2);Object.defineProperty(t,"internal",{enumerable:!0,get:function(){return P.internal}})},function(e,t,r){"use strict";function n(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=o.default.Deferred(),i=(0,u.getOptions)(),d=new XMLHttpRequest;return d.open("get",e,!0),d.responseType="arraybuffer",i.beforeSend(d),Object.keys(r).forEach(function(e){d.setRequestHeader(e,r[e])}),n.deferred=a,n.url=e,n.imageId=t,d.onloadstart=function(r){i.onloadstart&&i.onloadstart(r,n),(0,o.default)(l.events).trigger("CornerstoneImageLoadStart",{url:e,imageId:t})},d.onloadend=function(r){i.onloadend&&i.onloadend(r,n),(0,o.default)(l.events).trigger("CornerstoneImageLoadEnd",{url:e,imageId:t})},d.onreadystatechange=function(e){if(i.onreadystatechange)return void i.onreadystatechange(e,n);4===d.readyState&&(200===d.status?a.resolve(d.response,d):a.reject(d))},d.onprogress=function(r){var a=r.loaded,u=void 0,d=void 0;r.lengthComputable&&(u=r.total,d=Math.round(a/u*100)),i.onprogress&&i.onprogress(r,n),(0,o.default)(l.events).trigger("CornerstoneImageLoadProgress",{url:e,imageId:t,loaded:a,total:u,percentComplete:d})},d.send(),a.promise()}Object.defineProperty(t,"__esModule",{value:!0});var a=r(0),o=function(e){return e&&e.__esModule?e:{default:e}}(a),u=r(9),i=r(1),l=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(i);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(){return"1.2.840.10008.1.2"}function o(e,t){var r=(new Date).getTime(),n=i.default.Deferred(),o=e.substring(7);if(void 0===s.default.get(e))return n.reject("no metadata for imageId "+e),n.promise();return(0,p.default)(o,e,'multipart/related; type="application/octet-stream"').then(function(o){var u=a(o.contentType),i=o.imageFrame.pixelData;(0,m.default)(e,i,u,t).then(function(e){var t=(new Date).getTime();e.loadTimeInMS=t-r,n.resolve(e)})}).fail(function(e){n.reject(e)}),n}Object.defineProperty(t,"__esModule",{value:!0});var u=r(0),i=n(u),l=r(1),d=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(l),f=r(10),s=n(f),c=r(21),p=n(c),g=r(7),m=n(g);d.registerImageLoader("wadors",o),t.default=o},function(e,t,r){"use strict";function n(e,t,r){var n=(0,o.default)(e,t,r);if(void 0!==n)return parseFloat(n)}Object.defineProperty(t,"__esModule",{value:!0});var a=r(5),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(48);Object.defineProperty(t,"getNumberString",{enumerable:!0,get:function(){return n(a).default}});var o=r(22);Object.defineProperty(t,"getNumberValue",{enumerable:!0,get:function(){return n(o).default}});var u=r(23);Object.defineProperty(t,"getNumberValues",{enumerable:!0,get:function(){return n(u).default}});var i=r(5);Object.defineProperty(t,"getValue",{enumerable:!0,get:function(){return n(i).default}});var l=r(50);Object.defineProperty(t,"metaDataProvider",{enumerable:!0,get:function(){return n(l).default}})},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function a(e){return e&&e.__esModule?e:{default:e}}function o(e,t){var r=p.default.get(t);if(r){if("generalSeriesModule"===e)return{modality:(0,d.default)(r["00080060"]),seriesInstanceUID:(0,d.default)(r["0020000e"]),seriesNumber:(0,s.default)(r["00200011"]),studyInstanceUID:(0,d.default)(r["0020000d"]),seriesDate:m.parseDA((0,d.default)(r["00080021"])),seriesTime:m.parseTM((0,d.default)(r["00080031"],0,""))};if("patientStudyModule"===e)return{patientAge:(0,s.default)(r["00101010"]),patientSize:(0,s.default)(r["00101020"]),patientWeight:(0,s.default)(r["00101030"])};if("imagePlaneModule"===e)return{pixelSpacing:(0,i.default)(r["00280030"],2),imageOrientationPatient:(0,i.default)(r["00200037"],6),imagePositionPatient:(0,i.default)(r["00200032"],3),sliceThickness:(0,s.default)(r["00180050"]),sliceLocation:(0,s.default)(r["00201041"])};if("imagePixelModule"===e)return{samplesPerPixel:(0,s.default)(r["00280002"]),photometricInterpretation:(0,d.default)(r["00280004"]),rows:(0,s.default)(r["00280010"]),columns:(0,s.default)(r["00280011"]),bitsAllocated:(0,s.default)(r["00280100"]),bitsStored:(0,s.default)(r["00280101"]),highBit:(0,d.default)(r["00280102"]),pixelRepresentation:(0,s.default)(r["00280103"]),planarConfiguration:(0,s.default)(r["00280006"]),pixelAspectRatio:(0,d.default)(r["00280034"]),smallestPixelValue:(0,s.default)(r["00280106"]),largestPixelValue:(0,s.default)(r["00280107"]),redPaletteColorLookupTableDescriptor:(0,i.default)(r["00281101"]),greenPaletteColorLookupTableDescriptor:(0,i.default)(r["00281102"]),bluePaletteColorLookupTableDescriptor:(0,i.default)(r["00281103"]),redPaletteColorLookupTableData:(0,i.default)(r["00281201"]),greenPaletteColorLookupTableData:(0,i.default)(r["00281202"]),bluePaletteColorLookupTableData:(0,i.default)(r["00281203"])};if("voiLutModule"===e)return{windowCenter:(0,i.default)(r["00281050"],1),windowWidth:(0,i.default)(r["00281051"],1)};if("modalityLutModule"===e)return{rescaleIntercept:(0,s.default)(r["00281052"]),rescaleSlope:(0,s.default)(r["00281053"]),rescaleType:(0,d.default)(r["00281054"])};if("sopCommonModule"===e)return{sopClassUID:(0,d.default)(r["00080016"]),sopInstanceUID:(0,d.default)(r["00080018"])};if("petIsotopeModule"===e){var n=(0,d.default)(r["00540016"]);if(void 0===n)return;return{radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:m.parseTM((0,d.default)(n["00181072"],0,"")),radionuclideTotalDose:(0,s.default)(n["00181074"]),radionuclideHalfLife:(0,s.default)(n["00181075"])}}}}}Object.defineProperty(t,"__esModule",{value:!0});var u=r(23),i=a(u),l=r(5),d=a(l),f=r(22),s=a(f),c=r(10),p=a(c),g=r(4),m=n(g);n(r(1)).metaData.addProvider(o),t.default=o},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){e.decache=function(){var t=(0,v.default)(e.imageId);P.default.unload(t.url)}}function o(e,t){return e.elements.x7fe00010.encapsulatedPixelData?(0,x.default)(e,t):(0,_.default)(e,t)}function u(e,t,r,n,u){var i=(new Date).getTime();r=r||0;var l=f.default.Deferred();return e.then(function(e){var n=o(e,r),d=e.string("x00020010"),f=(new Date).getTime();(0,g.default)(t,n,d,u).then(function(t){t.data=e;var r=(new Date).getTime();t.loadTimeInMS=f-i,t.totalTimeInMS=r-i,a(t),l.resolve(t)})},function(e){l.reject(e)}),l}function i(e){return"dicomweb"===e||"wadouri"===e?M.xhrRequest:"dicomfile"===e?w.default:void 0}function l(e,t){var r=(0,v.default)(e),n=i(r.scheme);return P.default.isLoaded(r.url),u(P.default.load(r.url,n,e),e,r.frame,r.url,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.getLoaderForScheme=t.loadImageFromPromise=void 0;var d=r(0),f=n(d),s=r(1),c=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(s),p=r(7),g=n(p),m=r(6),v=n(m),b=r(11),P=n(b),y=r(25),x=n(y),h=r(26),_=n(h),O=r(27),w=n(O),M=r(2);c.registerImageLoader("dicomweb",l),c.registerImageLoader("wadouri",l),c.registerImageLoader("dicomfile",l),t.loadImageFromPromise=u,t.getLoaderForScheme=i,t.default=l},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(28);Object.defineProperty(t,"getImagePixelModule",{enumerable:!0,get:function(){return n(a).default}});var o=r(29);Object.defineProperty(t,"getLUTs",{enumerable:!0,get:function(){return n(o).default}});var u=r(30);Object.defineProperty(t,"getModalityLUTOutputPixelRepresentation",{enumerable:!0,get:function(){return n(u).default}});var i=r(31);Object.defineProperty(t,"getNumberValues",{enumerable:!0,get:function(){return n(i).default}});var l=r(53);Object.defineProperty(t,"metaDataProvider",{enumerable:!0,get:function(){return n(l).default}})},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function a(e){return e&&e.__esModule?e:{default:e}}function o(e,t){var r=(0,d.default)(t),n=s.default.get(r.url);if(n){if("generalSeriesModule"===e)return{modality:n.string("x00080060"),seriesInstanceUID:n.string("x0020000e"),seriesNumber:n.intString("x00200011"),studyInstanceUID:n.string("x0020000d"),seriesDate:y.parseDA(n.string("x00080021")),seriesTime:y.parseTM(n.string("x00080031")||"")};if("patientStudyModule"===e)return{patientAge:n.intString("x00101010"),patientSize:n.floatString("x00101020"),patientWeight:n.floatString("x00101030")};if("imagePlaneModule"===e)return{pixelSpacing:(0,i.default)(n,"x00280030",2),imageOrientationPatient:(0,i.default)(n,"x00200037",6),imagePositionPatient:(0,i.default)(n,"x00200032",3),sliceThickness:n.floatString("x00180050"),sliceLocation:n.floatString("x00201041"),frameOfReferenceUID:n.string("x00200052")};if("imagePixelModule"===e)return(0,p.default)(n);if("modalityLutModule"===e)return{rescaleIntercept:n.floatString("x00281052"),rescaleSlope:n.floatString("x00281053"),rescaleType:n.string("x00281054"),modalityLUTSequence:(0,m.default)(n.uint16("x00280103"),n.elements.x00283000)};if("voiLutModule"===e){var a=(0,b.default)(n);return{windowCenter:(0,i.default)(n,"x00281050",1),windowWidth:(0,i.default)(n,"x00281051",1),voiLUTSequence:(0,m.default)(a,n.elements.x00283010)}}if("sopCommonModule"===e)return{sopClassUID:n.string("x00080016"),sopInstanceUID:n.string("x00080018")};if("petIsotopeModule"===e){var o=n.elements.x00540016;if(void 0===o)return;var u=o.items[0].dataSet;return{radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:y.parseTM(u.string("x00181072")||""),radionuclideTotalDose:u.floatString("x00181074"),radionuclideHalfLife:u.floatString("x00181075")}}}}}Object.defineProperty(t,"__esModule",{value:!0});var u=r(31),i=a(u),l=r(6),d=a(l),f=r(11),s=a(f),c=r(28),p=a(c),g=r(29),m=a(g),v=r(30),b=a(v),P=r(4),y=n(P);n(r(1)).metaData.addProvider(o),t.default=o},,,,,,,,,function(e,r){e.exports=t},function(e,t){e.exports=r}])});
/*! cornerstone-wado-image-loader - 0.15.0 - 2017-10-25 | (c) 2016 Chris Hafey | https://github.com/chafey/cornerstoneWADOImageLoader */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("dicom-parser"),require("jquery")):"function"==typeof define&&define.amd?define("cornerstoneWADOImageLoader",["dicom-parser","jquery"],t):"object"==typeof exports?exports.cornerstoneWADOImageLoader=t(require("dicom-parser"),require("jquery")):e.cornerstoneWADOImageLoader=t(e.dicomParser,e.$)}(this,function(e,t){return function(e){function t(n){if(r[n])return r[n].exports;var a=r[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,t),a.l=!0,a.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,n){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:n})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=47)}([function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.external=t.dicomParser=t.$=void 0;var a=r(63),o=n(a),i=r(62),u=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(i),l=r(49),d=n(l),f=void 0,s={set cornerstone(e){f=e,(0,d.default)(f)},get cornerstone(){return f}};t.$=o.default,t.dicomParser=u,t.external=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.internal=t.xhrRequest=t.getOptions=t.setOptions=void 0;var n=r(48),a=function(e){return e&&e.__esModule?e:{default:e}}(n),o=r(7),i={xhrRequest:a.default,setOptions:o.setOptions,getOptions:o.getOptions};t.setOptions=o.setOptions,t.getOptions=o.getOptions,t.xhrRequest=a.default,t.internal=i},function(e,t,r){"use strict";function n(e){for(var t=e[0],r=e[0],n=void 0,a=e.length,o=1;o<a;o++)n=e[o],t=Math.min(t,n),r=Math.max(r,n);return{min:t,max:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="0.15.0"},function(e,t,r){"use strict";function n(e,t,r){return t=t||0,e&&e.Value?e.Value.length<=t?r:e.Value[t]:r}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){var t=e.indexOf(":"),r=e.substring(t+1),n=r.indexOf("frame="),a=void 0;if(-1!==n){var o=r.substr(n+6);a=parseInt(o,10),r=r.substr(0,n-1)}return{scheme:e.substr(0,t),url:r,frame:a}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){return"1.2.840.10008.5.1.4.1.1.12.1"!==e&&"1.2.840.10008.5.1.4.1.1.12.2.1"!==e}function o(e){16===e.bitsAllocated?0===e.pixelRepresentation?e.pixelData=new Uint16Array(e.pixelData):e.pixelData=new Int16Array(e.pixelData):e.pixelData=new Uint8Array(e.pixelData)}function i(e,t,r,n){var i=u.external.cornerstone,l=document.createElement("canvas"),f=(0,d.default)(e),c=(0,s.default)(f,r,t,l,n);return new Promise(function(t,n){c.then(function(n){var u=i.metaData.get("imagePlaneModule",e)||{},d=i.metaData.get("voiLutModule",e)||{},f=i.metaData.get("modalityLutModule",e)||{},s=i.metaData.get("sopCommonModule",e)||{},c=(0,p.default)(n.photometricInterpretation);if(!(0,x.default)(n,r)&&(o(n),c)){l.height=n.rows,l.width=n.columns;var g=l.getContext("2d"),v=g.createImageData(n.columns,n.rows);(0,m.default)(n,v),n.imageData=v,n.pixelData=v.data;var P=(0,b.default)(n.pixelData);n.smallestPixelValue=P.min,n.largestPixelValue=P.max}var h={imageId:e,color:c,columnPixelSpacing:u.pixelSpacing?u.pixelSpacing[1]:void 0,columns:n.columns,height:n.rows,intercept:f.rescaleIntercept?f.rescaleIntercept:0,invert:"MONOCHROME1"===n.photometricInterpretation,minPixelValue:n.smallestPixelValue,maxPixelValue:n.largestPixelValue,render:void 0,rowPixelSpacing:u.pixelSpacing?u.pixelSpacing[0]:void 0,rows:n.rows,sizeInBytes:n.pixelData.length,slope:f.rescaleSlope?f.rescaleSlope:1,width:n.columns,windowCenter:d.windowCenter?d.windowCenter[0]:void 0,windowWidth:d.windowWidth?d.windowWidth[0]:void 0,decodeTimeInMS:n.decodeTimeInMS};if(h.getPixelData=function(){return n.pixelData},h.color?(h.render=i.renderColorImage,h.getCanvas=function(){return y===e?l:(l.height=h.rows,l.width=h.columns,l.getContext("2d").putImageData(n.imageData,0,0),y=e,l)}):h.render=i.renderGrayscaleImage,f.modalityLUTSequence&&f.modalityLUTSequence.length>0&&a(s.sopClassUID)&&(h.modalityLUT=f.modalityLUTSequence[0]),d.voiLUTSequence&&d.voiLUTSequence.length>0&&(h.voiLUT=d.voiLUTSequence[0]),void 0===h.windowCenter||void 0===h.windowWidth)if(h.color)h.windowWidth=255,h.windowCenter=128;else{var _=h.maxPixelValue*h.slope+h.intercept,w=h.minPixelValue*h.slope+h.intercept;h.windowWidth=_-w,h.windowCenter=(_+w)/2}t(h)},n)})}Object.defineProperty(t,"__esModule",{value:!0});var u=r(0),l=r(14),d=n(l),f=r(12),s=n(f),c=r(15),p=n(c),g=r(11),m=n(g),v=r(2),b=n(v),P=r(16),x=n(P),y="";t.default=i},function(e,t,r){"use strict";function n(e){o=e}function a(){return o}Object.defineProperty(t,"__esModule",{value:!0}),t.setOptions=n,t.getOptions=a;var o={beforeSend:function(){},imageCreated:function(){},strict:!1}},function(e,t,r){"use strict";function n(e,t){u[e]=t}function a(e){return u[e]}function o(e){u[e]=void 0}function i(){u=[]}Object.defineProperty(t,"__esModule",{value:!0});var u=[];t.default={add:n,get:a,remove:o,purge:i}},function(e,t,r){"use strict";function n(e){return void 0!==f[e]}function a(e){if(f[e])return f[e].dataSet}function o(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:d.xhrRequest,r=arguments[2];if(f[e])return new Promise(function(t){f[e].cacheCount++,t(f[e].dataSet)});if(s[e])return s[e];var n=t(e,r),a=new Promise(function(t,r){n.then(function(n){var a=new Uint8Array(n),o=void 0;try{o=l.dicomParser.parseDicom(a)}catch(e){return r(e)}f[e]={dataSet:o,cacheCount:1},t(o)},function(e){r(e)}).then(function(){delete s[e]})});return s[e]=a,a}function i(e){f[e]&&0===--f[e].cacheCount&&delete f[e]}function u(){f={},s={}}Object.defineProperty(t,"__esModule",{value:!0});var l=r(0),d=r(1),f={},s={};t.default={isLoaded:n,load:o,unload:i,purge:u,get:a}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(43);Object.defineProperty(t,"convertRGBColorByPixel",{enumerable:!0,get:function(){return n(a).default}});var o=r(44);Object.defineProperty(t,"convertRGBColorByPlane",{enumerable:!0,get:function(){return n(o).default}});var i=r(45);Object.defineProperty(t,"convertYBRFullByPixel",{enumerable:!0,get:function(){return n(i).default}});var u=r(46);Object.defineProperty(t,"convertYBRFullByPlane",{enumerable:!0,get:function(){return n(u).default}});var l=r(42);Object.defineProperty(t,"convertPALETTECOLOR",{enumerable:!0,get:function(){return n(l).default}})},function(e,t,r){"use strict";function n(e,t){0===e.planarConfiguration?(0,i.convertRGBColorByPixel)(e.pixelData,t):(0,i.convertRGBColorByPlane)(e.pixelData,t)}function a(e,t){0===e.planarConfiguration?(0,i.convertYBRFullByPixel)(e.pixelData,t):(0,i.convertYBRFullByPlane)(e.pixelData,t)}function o(e,t){var r=t.data;if("RGB"===e.photometricInterpretation)n(e,r);else if("YBR_RCT"===e.photometricInterpretation)n(e,r);else if("YBR_ICT"===e.photometricInterpretation)n(e,r);else if("PALETTE COLOR"===e.photometricInterpretation)(0,i.convertPALETTECOLOR)(e,r);else if("YBR_FULL_422"===e.photometricInterpretation)n(e,r);else{if("YBR_FULL"!==e.photometricInterpretation)throw new Error("No color space conversion for photometric interpretation "+e.photometricInterpretation);a(e,r)}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o;var i=r(10)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e,t,r,n){var a=n.priority||void 0,o=n.transferPixelData?[r.buffer]:void 0;return u.default.addTask("decodeTask",{imageFrame:e,transferSyntax:t,pixelData:r,options:n},a,o).promise}function o(e,t,r,n){var o=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};if("1.2.840.10008.1.2"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.1"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.2"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.1.99"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.5"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.50"===t)return 8!==e.bitsAllocated||3!==e.samplesPerPixel&&4!==e.samplesPerPixel?a(e,t,r,o):(0,d.default)(e,r,n);if("1.2.840.10008.1.2.4.51"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.57"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.70"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.80"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.81"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.90"===t)return a(e,t,r,o);if("1.2.840.10008.1.2.4.91"===t)return a(e,t,r,o);throw new Error("No decoder for transfer syntax "+t)}Object.defineProperty(t,"__esModule",{value:!0});var i=r(19),u=n(i),l=r(13),d=n(l);t.default=o},function(e,t,r){"use strict";function n(e){return a(String.fromCharCode.apply(null,Array.prototype.slice.apply(new Uint8Array(e))))}function a(e){var t=void 0;try{return decodeURIComponent(escape(e))}catch(r){if((t=r)instanceof URIError)return e;throw t}}function o(e,t,r){var a=(new Date).getTime(),o=new Blob([t],{type:"image/jpeg"});return new Promise(function(t,i){var l=new FileReader;void 0===l.readAsBinaryString?l.readAsArrayBuffer(o):l.readAsBinaryString(o),l.onload=function(){var o=new Image;o.onload=function(){r.height=o.height,r.width=o.width,e.rows=o.height,e.columns=o.width;var n=r.getContext("2d");n.drawImage(this,0,0);var i=n.getImageData(0,0,o.width,o.height),l=(new Date).getTime();e.pixelData=i.data,e.imageData=i,e.decodeTimeInMS=l-a;var d=(0,u.default)(e.pixelData);e.smallestPixelValue=d.min,e.largestPixelValue=d.max,t(e)},o.onerror=function(e){i(e)},void 0===l.readAsBinaryString?o.src="data:image/jpeg;base64,"+window.btoa(n(l.result)):o.src="data:image/jpeg;base64,"+window.btoa(l.result)},l.onerror=function(e){i(e)}})}Object.defineProperty(t,"__esModule",{value:!0});var i=r(2),u=function(e){return e&&e.__esModule?e:{default:e}}(i);t.default=o},function(e,t,r){"use strict";function n(e){var t=a.external.cornerstone.metaData.get("imagePixelModule",e);return{samplesPerPixel:t.samplesPerPixel,photometricInterpretation:t.photometricInterpretation,planarConfiguration:t.planarConfiguration,rows:t.rows,columns:t.columns,bitsAllocated:t.bitsAllocated,pixelRepresentation:t.pixelRepresentation,smallestPixelValue:t.smallestPixelValue,largestPixelValue:t.largestPixelValue,redPaletteColorLookupTableDescriptor:t.redPaletteColorLookupTableDescriptor,greenPaletteColorLookupTableDescriptor:t.greenPaletteColorLookupTableDescriptor,bluePaletteColorLookupTableDescriptor:t.bluePaletteColorLookupTableDescriptor,redPaletteColorLookupTableData:t.redPaletteColorLookupTableData,greenPaletteColorLookupTableData:t.greenPaletteColorLookupTableData,bluePaletteColorLookupTableData:t.bluePaletteColorLookupTableData,pixelData:void 0}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(0);t.default=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){return"RGB"===e||"PALETTE COLOR"===e||"YBR_FULL"===e||"YBR_FULL_422"===e||"YBR_PARTIAL_422"===e||"YBR_PARTIAL_420"===e||"YBR_RCT"===e||"YBR_ICT"===e}},function(e,t,r){"use strict";function n(e,t){if(t=t||e.transferSyntax,8===e.bitsAllocated&&"1.2.840.10008.1.2.4.50"===t&&(3===e.samplesPerPixel||4===e.samplesPerPixel))return!0}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(25),o=r(20),i=n(o),u=r(21),l=n(u),d=r(8),f=n(d),s=r(22),c=n(s),p=r(52),g=n(p),m={getNumberString:a.getNumberString,getNumberValue:a.getNumberValue,getNumberValues:a.getNumberValues,getValue:a.getValue,metaDataProvider:a.metaDataProvider};t.default={metaData:m,findIndexOfString:i.default,getPixelData:l.default,loadImage:c.default,metaDataManager:f.default,register:g.default}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(35),o=r(9),i=n(o),u=r(26),l=n(u),d=r(27),f=n(d),s=r(28),c=n(s),p=r(29),g=n(p),m=r(30),v=r(5),b=n(v),P=r(36),x=n(P),y=r(54),h=n(y),_={getImagePixelModule:a.getImagePixelModule,getLUTs:a.getLUTs,getModalityLUTOutputPixelRepresentation:a.getModalityLUTOutputPixelRepresentation,getNumberValues:a.getNumberValues,metaDataProvider:a.metaDataProvider};t.default={metaData:_,dataSetCacheManager:i.default,fileManager:l.default,getEncapsulatedImageFrame:f.default,getUncompressedImageFrame:c.default,loadFileRequest:g.default,loadImageFromPromise:m.loadImageFromPromise,getLoaderForScheme:m.getLoaderForScheme,loadImage:m.loadImage,parseImageId:b.default,unpackBinaryFrame:x.default,register:h.default}},function(e,t,r){"use strict";function n(){if(g.length){for(var e=0;e<m.length;e++)if("ready"===m[e].status){m[e].status="busy";var t=g.shift();t.start=(new Date).getTime();var r=(new Date).getTime();return x.totalTimeDelayedInMS+=r-t.added,m[e].task=t,m[e].worker.postMessage({taskType:t.taskType,workerIndex:e,data:t.data},t.transferList),void x.numTasksExecuting++}m.length<P.maxWebWorkers&&o()}}function a(e){if("initialize"===e.data.taskType)m[e.data.workerIndex].status="ready",n();else{var t=m[e.data.workerIndex].task.start;m[e.data.workerIndex].task.deferred.resolve(e.data.result),m[e.data.workerIndex].task=void 0,x.numTasksExecuting--,m[e.data.workerIndex].status="ready",x.numTasksCompleted++;var r=(new Date).getTime();x.totalTaskTimeInMS+=r-t,n()}}function o(){if(!(m.length>=P.maxWebWorkers)){var e=new Worker(P.webWorkerPath);m.push({worker:e,status:"initializing"}),e.addEventListener("message",a),e.postMessage({taskType:"initialize",workerIndex:m.length-1,config:P})}}function i(e){if(e=e||b,P)throw new Error("WebWorkerManager already initialized");if(P=e,P.maxWebWorkers=P.maxWebWorkers||navigator.hardwareConcurrency||1,!P.startWebWorkersOnDemand)for(var t=0;t<P.maxWebWorkers;t++)o()}function u(e,t){P.webWorkerTaskPaths.push(e),t&&(P.taskConfiguration=Object.assign(P.taskConfiguration,t));for(var r=0;r<m.length;r++)m[r].worker.postMessage({taskType:"loadWebWorkerTask",workerIndex:m.length-1,sourcePath:e,config:P})}function l(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,a=arguments[3];P||i();var o={},u=new Promise(function(e,t){o={resolve:e,reject:t}}),l=void 0;for(l=0;l<g.length&&!(g[l].priority<r);l++);var d=p++;return g.splice(l,0,{taskId:d,taskType:e,status:"ready",added:(new Date).getTime(),data:t,deferred:o,priority:r,transferList:a}),n(),{taskId:d,promise:u}}function d(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,r=0;r<g.length;r++)if(g[r].taskId===e){var n=g.splice(r,1)[0];for(n.priority=t,r=0;r<g.length&&!(g[r].priority<t);r++);return g.splice(r,0,n),!0}return!1}function f(e,t){for(var r=0;r<g.length;r++)if(g[r].taskId===e){var n=g.splice(r,1);return n.deferred.reject(t),!0}return!1}function s(){return x.maxWebWorkers=P.maxWebWorkers,x.numWebWorkers=m.length,x.numTasksQueued=g.length,x}Object.defineProperty(t,"__esModule",{value:!0});var c=r(7),p=0,g=[],m=[],v=(0,c.getOptions)(),b={maxWebWorkers:navigator.hardwareConcurrency||1,startWebWorkersOnDemand:!0,webWorkerPath:"../../dist/cornerstoneWADOImageLoaderWebWorker.js",webWorkerTaskPaths:[],taskConfiguration:{decodeTask:{loadCodecsOnStartup:!0,initializeCodecsOnStartup:!1,codecsPath:"../dist/cornerstoneWADOImageLoaderCodecs.js",usePDFJS:!1,strict:v.strict}}},P=void 0,x={maxWebWorkers:0,numWebWorkers:0,numTasksQueued:0,numTasksExecuting:0,numTasksCompleted:0,totalTaskTimeInMS:0,totalTimeDelayedInMS:0};t.default={initialize:i,loadWebWorkerTask:u,addTask:l,getStatistics:s,setTaskPriority:d,cancelTask:f}},function(e,t,r){"use strict";function n(e,t,r){if(r+e.length>t.length)return!1;for(var n=r,a=0;a<e.length;a++)if(e[a]!==t[n++])return!1;return!0}function a(e){for(var t=new Uint8Array(e.length),r=0,n=e.length;r<n;r++)t[r]=e.charCodeAt(r);return t}function o(e,t,r){r=r||0;for(var o=a(t),i=r;i<e.length;i++)if(o[0]===e[i]&&n(o,e,i))return i;return-1}Object.defineProperty(t,"__esModule",{value:!0}),t.default=o},function(e,t,r){"use strict";function n(e){for(var t=0;t<e.length;t++)if("--"===e[t].substr(0,2))return e[t]}function a(e){for(var t=0;t<e.length;t++)if("Content-Type:"===e[t].substr(0,13))return e[t].substr(13).trim()}function o(e,t,r){t=t||0,r=r||e.length-t;for(var n="",a=t;a<t+r;a++)n+=String.fromCharCode(e[a]);return n}function i(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"application/octet-stream",i={accept:r};return new Promise(function(r,l){(0,u.xhrRequest)(e,t,i).then(function(e){var t=new Uint8Array(e),i=(0,d.default)(t,"\r\n\r\n");-1===i&&l(new Error("invalid response - no multipart mime header"));var u=o(t,0,i),f=u.split("\r\n"),s=n(f);s||l(new Error("invalid response - no boundary marker"));var c=i+4,p=(0,d.default)(t,s,c);-1===p&&l(new Error("invalid response - terminating boundary not found"));var g=p-c-2;r({contentType:a(f),imageFrame:{pixelData:new Uint8Array(e,c,g)}})})})}Object.defineProperty(t,"__esModule",{value:!0});var u=r(1),l=r(20),d=function(e){return e&&e.__esModule?e:{default:e}}(l);t.default=i},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(){return"1.2.840.10008.1.2"}function o(e,t){var r=(new Date).getTime(),n=e.substring(7),o=i.$.Deferred();if(void 0===l.default.get(e))return o.reject("no metadata for imageId "+e),o.promise();return(0,f.default)(n,e,'multipart/related; type="application/octet-stream"').then(function(n){var i=a(n.contentType),u=n.imageFrame.pixelData;(0,c.default)(e,u,i,t).then(function(e){var t=(new Date).getTime();e.loadTimeInMS=t-r,o.resolve(e)},function(e){o.reject(e)})},function(e){o.reject(e)}),o}Object.defineProperty(t,"__esModule",{value:!0});var i=r(0),u=r(8),l=n(u),d=r(21),f=n(d),s=r(6),c=n(s);t.default=o},function(e,t,r){"use strict";function n(e,t){var r=(0,o.default)(e,t);if(void 0!==r)return parseFloat(r)}Object.defineProperty(t,"__esModule",{value:!0});var a=r(4),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default=n},function(e,t,r){"use strict";function n(e,t){if(e&&e.Value&&!(t&&e.Value.length<t)){for(var r=[],n=0;n<e.Value.length;n++)r.push(parseFloat(e.Value[n]));return r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(50);Object.defineProperty(t,"getNumberString",{enumerable:!0,get:function(){return n(a).default}});var o=r(23);Object.defineProperty(t,"getNumberValue",{enumerable:!0,get:function(){return n(o).default}});var i=r(24);Object.defineProperty(t,"getNumberValues",{enumerable:!0,get:function(){return n(i).default}});var u=r(4);Object.defineProperty(t,"getValue",{enumerable:!0,get:function(){return n(u).default}});var l=r(51);Object.defineProperty(t,"metaDataProvider",{enumerable:!0,get:function(){return n(l).default}})},function(e,t,r){"use strict";function n(e){return"dicomfile:"+(u.push(e)-1)}function a(e){return u[e]}function o(e){u[e]=void 0}function i(){u=[]}Object.defineProperty(t,"__esModule",{value:!0});var u=[];t.default={add:n,get:a,remove:o,purge:i}},function(e,t,r){"use strict";function n(e){return e.intString("x00280008")!==e.elements.x7fe00010.fragments.length}function a(e,t){if(e.elements.x7fe00010.basicOffsetTable.length)return o.dicomParser.readEncapsulatedImageFrame(e,e.elements.x7fe00010,t);if(n(e)){var r=o.dicomParser.createJPEGBasicOffsetTable(e,e.elements.x7fe00010);return o.dicomParser.readEncapsulatedImageFrame(e,e.elements.x7fe00010,t,r)}return o.dicomParser.readEncapsulatedPixelDataFromFragments(e,e.elements.x7fe00010,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a;var o=r(0)},function(e,t,r){"use strict";function n(e,t){var r=e.elements.x7fe00010,n=e.uint16("x00280100"),a=e.uint16("x00280010"),i=e.uint16("x00280011"),u=e.uint16("x00280002"),l=r.dataOffset,d=a*i*u,f=void 0;if(8===n){if((f=l+t*d)>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Uint8Array(e.byteArray.buffer,f,d)}if(16===n){if((f=l+t*d*2)>=e.byteArray.length)throw"frame exceeds size of pixelData";return new Uint8Array(e.byteArray.buffer,f,2*d)}if(1===n){if((f=l+t*d*.125)>=e.byteArray.length)throw"frame exceeds size of pixelData";return(0,o.default)(e.byteArray,f,d)}throw"unsupported pixel format"}Object.defineProperty(t,"__esModule",{value:!0});var a=r(36),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){var t=(0,i.default)(e),r=parseInt(t.url,10),n=l.default.get(r);return new Promise(function(e,t){var r=new FileReader;r.onload=function(t){var r=t.target.result;e(r)},r.onerror=t,r.readAsArrayBuffer(n)})}Object.defineProperty(t,"__esModule",{value:!0});var o=r(5),i=n(o),u=r(26),l=n(u);t.default=a},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){e.decache=function(){var t=(0,g.default)(e.imageId);v.default.unload(t.url)}}function o(e,t){return e.elements.x7fe00010.encapsulatedPixelData?(0,P.default)(e,t):(0,y.default)(e,t)}function i(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments[3],i=arguments[4],u=(new Date).getTime(),l=f.$.Deferred();return e.then(function(e){var d=o(e,r),f=e.string("x00020010"),s=(new Date).getTime();(0,c.default)(t,d,f,i).then(function(t){t.data=e,t.sharedCacheKey=n;var r=(new Date).getTime();t.loadTimeInMS=s-u,t.totalTimeInMS=r-u,a(t),l.resolve(t)},function(e){l.reject(e)})},function(e){l.reject(e)}),l}function u(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0,n=arguments[3],i=arguments[4],u=(new Date).getTime(),l=f.$.Deferred(),d=o(e,r),s=e.string("x00020010"),p=(new Date).getTime();return(0,c.default)(t,d,s,i).then(function(t){t.data=e,t.sharedCacheKey=n;var r=(new Date).getTime();t.loadTimeInMS=p-u,t.totalTimeInMS=r-u,a(t),l.resolve(t)},function(e){l.reject(e)}),l}function l(e){return"dicomweb"===e||"wadouri"===e?w.xhrRequest:"dicomfile"===e?_.default:void 0}function d(e,t){var r=(0,g.default)(e),n=l(r.scheme);if(v.default.isLoaded(r.url)){return u(v.default.get(r.url,n,e),e,r.frame,r.url,t)}return i(v.default.load(r.url,n,e),e,r.frame,r.url,t)}Object.defineProperty(t,"__esModule",{value:!0}),t.loadImage=t.getLoaderForScheme=t.loadImageFromPromise=void 0;var f=r(0),s=r(6),c=n(s),p=r(5),g=n(p),m=r(9),v=n(m),b=r(27),P=n(b),x=r(28),y=n(x),h=r(29),_=n(h),w=r(1);t.loadImageFromPromise=i,t.getLoaderForScheme=l,t.loadImage=d},function(e,t,r){"use strict";function n(e,t){if(e.elements[t]&&6===e.elements[t].length)return[e.uint16(t,0),e.uint16(t,1),e.uint16(t,2)]}function a(e,t,r){for(var n=[],a=e.elements[t],o=r[0],i=0;i<o;i++)16===r[2]?n[i]=e.uint16(t,i):n[i]=e.byteArray[i+a.dataOffset];return n}function o(e,t){"PALETTE COLOR"===t.photometricInterpretation&&e.elements.x00281101&&(t.redPaletteColorLookupTableDescriptor=n(e,"x00281101"),t.greenPaletteColorLookupTableDescriptor=n(e,"x00281102"),t.bluePaletteColorLookupTableDescriptor=n(e,"x00281103"),t.redPaletteColorLookupTableData=a(e,"x00281201",t.redPaletteColorLookupTableDescriptor),t.greenPaletteColorLookupTableData=a(e,"x00281202",t.greenPaletteColorLookupTableDescriptor),t.bluePaletteColorLookupTableData=a(e,"x00281203",t.bluePaletteColorLookupTableDescriptor))}function i(e,t){0===e.uint16("x00280103")?(t.smallestPixelValue=e.uint16("x00280106"),t.largestPixelValue=e.uint16("x00280107")):(t.smallestPixelValue=e.int16("x00280106"),t.largestPixelValue=e.int16("x00280107"))}function u(e){var t={samplesPerPixel:e.uint16("x00280002"),photometricInterpretation:e.string("x00280004"),rows:e.uint16("x00280010"),columns:e.uint16("x00280011"),bitsAllocated:e.uint16("x00280100"),bitsStored:e.uint16("x00280101"),highBit:e.uint16("x00280102"),pixelRepresentation:e.uint16("x00280103"),planarConfiguration:e.uint16("x00280006"),pixelAspectRatio:e.string("x00280034")};return i(e,t),o(e,t),t}Object.defineProperty(t,"__esModule",{value:!0}),t.default=u},function(e,t,r){"use strict";function n(e,t){var r=t.uint16("x00283002",0);0===r&&(r=65535);var n=0;n=0===e?t.uint16("x00283002",1):t.int16("x00283002",1);for(var a=t.uint16("x00283002",2),o={id:"1",firstValueMapped:n,numBitsPerEntry:a,lut:[]},i=0;i<r;i++)o.lut[i]=0===e?t.uint16("x00283006",i):t.int16("x00283006",i);return o}function a(e,t){if(t&&t.items.length){for(var r=[],a=0;a<t.items.length;a++){var o=t.items[a].dataSet,i=n(e,o);i&&r.push(i)}return r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},function(e,t,r){"use strict";function n(e){var t=e.uint16("x00280103"),r=e.uint16("x00280101");return 0===t?0:-1<<r-1}function a(e){var t=e.string("x00080016");if("1.2.840.10008.5.1.4.1.1.2"===t||"1.2.840.10008.5.1.4.1.1.2.1"===t)return 1;var r=e.floatString("x00281052"),a=e.floatString("x00281053");if(void 0!==r&&void 0!==a){return n(e)*a+r<0?1:0}return e.elements.x00283000&&e.elements.x00283000.length>0?0:e.uint16("x00280103")}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},function(e,t,r){"use strict";function n(e,t,r){var n=[],a=e.string(t);if(a){var o=a.split("\\");if(!(r&&o.length<r)){for(var i=0;i<o.length;i++)n.push(parseFloat(o[i]));return n}}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(31);Object.defineProperty(t,"getImagePixelModule",{enumerable:!0,get:function(){return n(a).default}});var o=r(32);Object.defineProperty(t,"getLUTs",{enumerable:!0,get:function(){return n(o).default}});var i=r(33);Object.defineProperty(t,"getModalityLUTOutputPixelRepresentation",{enumerable:!0,get:function(){return n(i).default}});var u=r(34);Object.defineProperty(t,"getNumberValues",{enumerable:!0,get:function(){return n(u).default}});var l=r(53);Object.defineProperty(t,"metaDataProvider",{enumerable:!0,get:function(){return n(l).default}})},function(e,t,r){"use strict";function n(e,t){return e&1<<t}function a(e,t,r){for(var a=new Uint8Array(r),o=0;o<r;o++){var i=Math.floor(o/8),u=e[i+t],l=o%8;a[o]=n(u,l)?1:0}return a}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},,,function(e,t,r){"use strict";function n(e){(0,a.setOptions)(e)}Object.defineProperty(t,"__esModule",{value:!0});var a=r(1);t.default=n},,,function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){var r=e.columns*e.rows,n=0,a=0,o=e.pixelData,i=e.redPaletteColorLookupTableDescriptor[1],u=e.redPaletteColorLookupTableData,l=e.greenPaletteColorLookupTableData,d=e.bluePaletteColorLookupTableData,f=8===e.redPaletteColorLookupTableDescriptor[2]?0:8,s=e.redPaletteColorLookupTableData.length;0===s&&(s=65535);for(var c=0;c<r;++c){var p=o[n++];p<i?p=0:p>i+s-1?p=s-1:p-=i,t[a++]=u[p]>>f,t[a++]=l[p]>>f,t[a++]=d[p]>>f,t[a++]=255}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: rgbBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: rgbBuffer length must be divisible by 3");for(var r=e.length/3,n=0,a=0,o=0;o<r;o++)t[a++]=e[n++],t[a++]=e[n++],t[a++]=e[n++],t[a++]=255}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: rgbBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: rgbBuffer length must be divisible by 3");for(var r=e.length/3,n=0,a=0,o=r,i=2*r,u=0;u<r;u++)t[n++]=e[a++],t[n++]=e[o++],t[n++]=e[i++],t[n++]=255}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/3,n=0,a=0,o=0;o<r;o++){var i=e[n++],u=e[n++],l=e[n++];t[a++]=i+1.402*(l-128),t[a++]=i-.34414*(u-128)-.71414*(l-128),t[a++]=i+1.772*(u-128),t[a++]=255}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e,t){if(void 0===e)throw new Error("decodeRGB: ybrBuffer must not be undefined");if(e.length%3!=0)throw new Error("decodeRGB: ybrBuffer length must be divisble by 3");for(var r=e.length/3,n=0,a=0,o=r,i=2*r,u=0;u<r;u++){var l=e[a++],d=e[o++],f=e[i++];t[n++]=l+1.402*(f-128),t[n++]=l-.34414*(d-128)-.71414*(f-128),t[n++]=l+1.772*(d-128),t[n++]=255}}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=r(10);Object.keys(a).forEach(function(e){"default"!==e&&"__esModule"!==e&&Object.defineProperty(t,e,{enumerable:!0,get:function(){return a[e]}})});var o=r(18);Object.defineProperty(t,"wadouri",{enumerable:!0,get:function(){return n(o).default}});var i=r(17);Object.defineProperty(t,"wadors",{enumerable:!0,get:function(){return n(i).default}});var u=r(39);Object.defineProperty(t,"configure",{enumerable:!0,get:function(){return n(u).default}});var l=r(11);Object.defineProperty(t,"convertColorSpace",{enumerable:!0,get:function(){return n(l).default}});var d=r(6);Object.defineProperty(t,"createImage",{enumerable:!0,get:function(){return n(d).default}});var f=r(12);Object.defineProperty(t,"decodeImageFrame",{enumerable:!0,get:function(){return n(f).default}});var s=r(13);Object.defineProperty(t,"decodeJPEGBaseline8BitColor",{enumerable:!0,get:function(){return n(s).default}});var c=r(14);Object.defineProperty(t,"getImageFrame",{enumerable:!0,get:function(){return n(c).default}});var p=r(2);Object.defineProperty(t,"getMinMax",{enumerable:!0,get:function(){return n(p).default}});var g=r(15);Object.defineProperty(t,"isColorImage",{enumerable:!0,get:function(){return n(g).default}});var m=r(16);Object.defineProperty(t,"isJPEGBaseline8BitColor",{enumerable:!0,get:function(){return n(m).default}});var v=r(19);Object.defineProperty(t,"webWorkerManager",{enumerable:!0,get:function(){return n(v).default}});var b=r(3);Object.defineProperty(t,"version",{enumerable:!0,get:function(){return n(b).default}});var P=r(1);Object.defineProperty(t,"internal",{enumerable:!0,get:function(){return P.internal}});var x=r(0);Object.defineProperty(t,"external",{enumerable:!0,get:function(){return x.external}})},function(e,t,r){"use strict";function n(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},i=(0,o.getOptions)();return new Promise(function(o,u){var l=new XMLHttpRequest;l.open("get",e,!0),l.responseType="arraybuffer",i.beforeSend(l),Object.keys(r).forEach(function(e){l.setRequestHeader(e,r[e])}),n.deferred={resolve:o,reject:u},n.url=e,n.imageId=t,l.onloadstart=function(r){i.onloadstart&&i.onloadstart(r,n),(0,a.$)(a.external.cornerstone.events).trigger("CornerstoneImageLoadStart",{url:e,imageId:t})},l.onloadend=function(r){i.onloadend&&i.onloadend(r,n),(0,a.$)(a.external.cornerstone.events).trigger("CornerstoneImageLoadEnd",{url:e,imageId:t})},l.onreadystatechange=function(e){if(i.onreadystatechange)return void i.onreadystatechange(e,n);4===l.readyState&&(200===l.status?o(l.response,l):u(l))},l.onprogress=function(r){var o=r.loaded,u=void 0,l=void 0;r.lengthComputable&&(u=r.total,l=Math.round(o/u*100)),i.onprogress&&i.onprogress(r,n),(0,a.$)(a.external.cornerstone.events).trigger("CornerstoneImageLoadProgress",{url:e,imageId:t,loaded:o,total:u,percentComplete:l})},l.send()})}Object.defineProperty(t,"__esModule",{value:!0});var a=r(0),o=r(7);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e){i.default.register(e),l.default.register(e)}Object.defineProperty(t,"__esModule",{value:!0});var o=r(17),i=n(o),u=r(18),l=n(u);t.default=a},function(e,t,r){"use strict";function n(e,t,r){var n=(0,o.default)(e,t,r);if(void 0!==n)return parseFloat(n)}Object.defineProperty(t,"__esModule",{value:!0});var a=r(4),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default=n},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e,t){var r=p.default.get(t);if(r){if("generalSeriesModule"===e)return{modality:(0,d.default)(r["00080060"]),seriesInstanceUID:(0,d.default)(r["0020000e"]),seriesNumber:(0,s.default)(r["00200011"]),studyInstanceUID:(0,d.default)(r["0020000d"]),seriesDate:o.dicomParser.parseDA((0,d.default)(r["00080021"])),seriesTime:o.dicomParser.parseTM((0,d.default)(r["00080031"],0,""))};if("patientStudyModule"===e)return{patientAge:(0,s.default)(r["00101010"]),patientSize:(0,s.default)(r["00101020"]),patientWeight:(0,s.default)(r["00101030"])};if("imagePlaneModule"===e)return{pixelSpacing:(0,u.default)(r["00280030"],2),imageOrientationPatient:(0,u.default)(r["00200037"],6),imagePositionPatient:(0,u.default)(r["00200032"],3),sliceThickness:(0,s.default)(r["00180050"]),sliceLocation:(0,s.default)(r["00201041"])};if("imagePixelModule"===e)return{samplesPerPixel:(0,s.default)(r["00280002"]),photometricInterpretation:(0,d.default)(r["00280004"]),rows:(0,s.default)(r["00280010"]),columns:(0,s.default)(r["00280011"]),bitsAllocated:(0,s.default)(r["00280100"]),bitsStored:(0,s.default)(r["00280101"]),highBit:(0,d.default)(r["00280102"]),pixelRepresentation:(0,s.default)(r["00280103"]),planarConfiguration:(0,s.default)(r["00280006"]),pixelAspectRatio:(0,d.default)(r["00280034"]),smallestPixelValue:(0,s.default)(r["00280106"]),largestPixelValue:(0,s.default)(r["00280107"]),redPaletteColorLookupTableDescriptor:(0,u.default)(r["00281101"]),greenPaletteColorLookupTableDescriptor:(0,u.default)(r["00281102"]),bluePaletteColorLookupTableDescriptor:(0,u.default)(r["00281103"]),redPaletteColorLookupTableData:(0,u.default)(r["00281201"]),greenPaletteColorLookupTableData:(0,u.default)(r["00281202"]),bluePaletteColorLookupTableData:(0,u.default)(r["00281203"])};if("voiLutModule"===e)return{windowCenter:(0,u.default)(r["00281050"],1),windowWidth:(0,u.default)(r["00281051"],1)};if("modalityLutModule"===e)return{rescaleIntercept:(0,s.default)(r["00281052"]),rescaleSlope:(0,s.default)(r["00281053"]),rescaleType:(0,d.default)(r["00281054"])};if("sopCommonModule"===e)return{sopClassUID:(0,d.default)(r["00080016"]),sopInstanceUID:(0,d.default)(r["00080018"])};if("petIsotopeModule"===e){var n=(0,d.default)(r["00540016"]);if(void 0===n)return;return{radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:o.dicomParser.parseTM((0,d.default)(n["00181072"],0,"")),radionuclideTotalDose:(0,s.default)(n["00181074"]),radionuclideHalfLife:(0,s.default)(n["00181075"])}}}}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(0),i=r(24),u=n(i),l=r(4),d=n(l),f=r(23),s=n(f),c=r(8),p=n(c);t.default=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e.registerImageLoader("wadors",a.default),e.metaData.addProvider(o.metaDataProvider)};var n=r(22),a=function(e){return e&&e.__esModule?e:{default:e}}(n),o=r(25)},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function a(e,t){var r=(0,d.default)(t),n=s.default.get(r.url);if(n){if("generalSeriesModule"===e)return{modality:n.string("x00080060"),seriesInstanceUID:n.string("x0020000e"),seriesNumber:n.intString("x00200011"),studyInstanceUID:n.string("x0020000d"),seriesDate:o.dicomParser.parseDA(n.string("x00080021")),seriesTime:o.dicomParser.parseTM(n.string("x00080031")||"")};if("patientStudyModule"===e)return{patientAge:n.intString("x00101010"),patientSize:n.floatString("x00101020"),patientWeight:n.floatString("x00101030")};if("imagePlaneModule"===e)return{pixelSpacing:(0,u.default)(n,"x00280030",2),imageOrientationPatient:(0,u.default)(n,"x00200037",6),imagePositionPatient:(0,u.default)(n,"x00200032",3),sliceThickness:n.floatString("x00180050"),sliceLocation:n.floatString("x00201041"),frameOfReferenceUID:n.string("x00200052")};if("imagePixelModule"===e)return(0,p.default)(n);if("modalityLutModule"===e)return{rescaleIntercept:n.floatString("x00281052"),rescaleSlope:n.floatString("x00281053"),rescaleType:n.string("x00281054"),modalityLUTSequence:(0,m.default)(n.uint16("x00280103"),n.elements.x00283000)};if("voiLutModule"===e){var a=(0,b.default)(n);return{windowCenter:(0,u.default)(n,"x00281050",1),windowWidth:(0,u.default)(n,"x00281051",1),voiLUTSequence:(0,m.default)(a,n.elements.x00283010)}}if("sopCommonModule"===e)return{sopClassUID:n.string("x00080016"),sopInstanceUID:n.string("x00080018")};if("petIsotopeModule"===e){var i=n.elements.x00540016;if(void 0===i)return;var l=i.items[0].dataSet;return{radiopharmaceuticalInfo:{radiopharmaceuticalStartTime:o.dicomParser.parseTM(l.string("x00181072")||""),radionuclideTotalDose:l.floatString("x00181074"),radionuclideHalfLife:l.floatString("x00181075")}}}}}Object.defineProperty(t,"__esModule",{value:!0});var o=r(0),i=r(34),u=n(i),l=r(5),d=n(l),f=r(9),s=n(f),c=r(31),p=n(c),g=r(32),m=n(g),v=r(33),b=n(v);t.default=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=function(e){e.registerImageLoader("dicomweb",n.loadImage),e.registerImageLoader("wadouri",n.loadImage),e.registerImageLoader("dicomfile",n.loadImage),e.metaData.addProvider(a.metaDataProvider)};var n=r(30),a=r(35)},,,,,,,,function(t,r){t.exports=e},function(e,r){e.exports=t}])});
//# sourceMappingURL=cornerstoneWADOImageLoader.min.js.map

@@ -1,2 +0,2 @@

/*! cornerstone-wado-image-loader - 0.14.7 - 2017-09-15 | (c) 2016 Chris Hafey | https://github.com/chafey/cornerstoneWADOImageLoader */
/*! cornerstone-wado-image-loader - 0.15.0 - 2017-10-25 | (c) 2016 Chris Hafey | https://github.com/chafey/cornerstoneWADOImageLoader */
(function webpackUniversalModuleDefinition(root, factory) {

@@ -82,2 +82,36 @@ if(typeof exports === 'object' && typeof module === 'object')

/***/ 2:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
function getMinMax(storedPixelData) {
// we always calculate the min max values since they are not always
// present in DICOM and we don't want to trust them anyway as cornerstone
// depends on us providing reliable values for these
var min = storedPixelData[0];
var max = storedPixelData[0];
var storedPixel = void 0;
var numPixels = storedPixelData.length;
for (var index = 1; index < numPixels; index++) {
storedPixel = storedPixelData[index];
min = Math.min(min, storedPixel);
max = Math.max(max, storedPixel);
}
return {
min: min,
max: max
};
}
exports.default = getMinMax;
/***/ }),
/***/ 3:

@@ -92,7 +126,7 @@ /***/ (function(module, exports, __webpack_require__) {

});
exports.default = '0.14.7';
exports.default = '0.15.0';
/***/ }),
/***/ 33:
/***/ 37:
/***/ (function(module, exports, __webpack_require__) {

@@ -268,3 +302,3 @@

/***/ 34:
/***/ 38:
/***/ (function(module, exports, __webpack_require__) {

@@ -384,3 +418,3 @@

/***/ 38:
/***/ 40:
/***/ (function(module, exports, __webpack_require__) {

@@ -395,11 +429,11 @@

var _decodeJPEG = __webpack_require__(33);
var _decodeJPEG = __webpack_require__(37);
var _decodeJPEGLS = __webpack_require__(34);
var _decodeJPEGLS = __webpack_require__(38);
var _getMinMax = __webpack_require__(60);
var _getMinMax = __webpack_require__(2);
var _getMinMax2 = _interopRequireDefault(_getMinMax);
var _decodeImageFrame = __webpack_require__(54);
var _decodeImageFrame = __webpack_require__(55);

@@ -502,3 +536,3 @@ var _decodeImageFrame2 = _interopRequireDefault(_decodeImageFrame);

/***/ 39:
/***/ 41:
/***/ (function(module, exports, __webpack_require__) {

@@ -631,3 +665,3 @@

/***/ 54:
/***/ 55:
/***/ (function(module, exports, __webpack_require__) {

@@ -642,27 +676,27 @@

var _decodeLittleEndian = __webpack_require__(58);
var _decodeLittleEndian = __webpack_require__(59);
var _decodeLittleEndian2 = _interopRequireDefault(_decodeLittleEndian);
var _decodeBigEndian = __webpack_require__(55);
var _decodeBigEndian = __webpack_require__(56);
var _decodeBigEndian2 = _interopRequireDefault(_decodeBigEndian);
var _decodeRLE = __webpack_require__(59);
var _decodeRLE = __webpack_require__(60);
var _decodeRLE2 = _interopRequireDefault(_decodeRLE);
var _decodeJPEGBaseline = __webpack_require__(56);
var _decodeJPEGBaseline = __webpack_require__(57);
var _decodeJPEGBaseline2 = _interopRequireDefault(_decodeJPEGBaseline);
var _decodeJPEGLossless = __webpack_require__(57);
var _decodeJPEGLossless = __webpack_require__(58);
var _decodeJPEGLossless2 = _interopRequireDefault(_decodeJPEGLossless);
var _decodeJPEGLS = __webpack_require__(34);
var _decodeJPEGLS = __webpack_require__(38);
var _decodeJPEGLS2 = _interopRequireDefault(_decodeJPEGLS);
var _decodeJPEG = __webpack_require__(33);
var _decodeJPEG = __webpack_require__(37);

@@ -724,13 +758,13 @@ var _decodeJPEG2 = _interopRequireDefault(_decodeJPEG);

/* Don't know if these work...
// JPEG 2000 Part 2 Multicomponent Image Compression (Lossless Only)
else if(transferSyntax === "1.2.840.10008.1.2.4.92")
{
return decodeJPEG2000(dataSet, frame);
}
// JPEG 2000 Part 2 Multicomponent Image Compression
else if(transferSyntax === "1.2.840.10008.1.2.4.93")
{
return decodeJPEG2000(dataSet, frame);
}
*/
// JPEG 2000 Part 2 Multicomponent Image Compression (Lossless Only)
else if(transferSyntax === "1.2.840.10008.1.2.4.92")
{
return decodeJPEG2000(dataSet, frame);
}
// JPEG 2000 Part 2 Multicomponent Image Compression
else if(transferSyntax === "1.2.840.10008.1.2.4.93")
{
return decodeJPEG2000(dataSet, frame);
}
*/

@@ -748,3 +782,3 @@ var end = new Date().getTime();

/***/ 55:
/***/ 56:
/***/ (function(module, exports, __webpack_require__) {

@@ -796,3 +830,3 @@

/***/ 56:
/***/ 57:
/***/ (function(module, exports, __webpack_require__) {

@@ -836,3 +870,3 @@

/***/ 57:
/***/ 58:
/***/ (function(module, exports, __webpack_require__) {

@@ -881,3 +915,3 @@

/***/ 58:
/***/ 59:
/***/ (function(module, exports, __webpack_require__) {

@@ -920,3 +954,3 @@

/***/ 59:
/***/ 60:
/***/ (function(module, exports, __webpack_require__) {

@@ -1096,36 +1130,2 @@

/***/ 60:
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
function getMinMax(storedPixelData) {
// we always calculate the min max values since they are not always
// present in DICOM and we don't want to trust them anyway as cornerstone
// depends on us providing reliable values for these
var min = storedPixelData[0];
var max = storedPixelData[0];
var storedPixel = void 0;
var numPixels = storedPixelData.length;
for (var index = 1; index < numPixels; index++) {
storedPixel = storedPixelData[index];
min = Math.min(min, storedPixel);
max = Math.max(max, storedPixel);
}
return {
min: min,
max: max
};
}
exports.default = getMinMax;
/***/ }),
/***/ 61:

@@ -1151,5 +1151,5 @@ /***/ (function(module, exports, __webpack_require__) {

var _webWorker = __webpack_require__(39);
var _webWorker = __webpack_require__(41);
var _decodeTask = __webpack_require__(38);
var _decodeTask = __webpack_require__(40);

@@ -1156,0 +1156,0 @@ var _decodeTask2 = _interopRequireDefault(_decodeTask);

@@ -1,3 +0,3 @@

/*! cornerstone-wado-image-loader - 0.14.7 - 2017-09-15 | (c) 2016 Chris Hafey | https://github.com/chafey/cornerstoneWADOImageLoader */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cornerstoneWADOImageLoaderWebWorker",[],t):"object"==typeof exports?exports.cornerstoneWADOImageLoaderWebWorker=t():e.cornerstoneWADOImageLoaderWebWorker=t()}(this,function(){return function(e){function t(a){if(r[a])return r[a].exports;var n=r[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,t),n.l=!0,n.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,a){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:a})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=61)}({3:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="0.14.7"},33:function(e,t,r){"use strict";function a(e,t){var r=new JpxImage;r.parse(t);var a=r.tiles.length;if(1!==a)throw"JPEG2000 decoder returned a tileCount of "+a+", when 1 is expected";return e.columns=r.width,e.rows=r.height,e.pixelData=r.tiles[0].items,e}function n(e,t,r){var a=s._malloc(e.length);s.writeArrayToMemory(e,a);var n=s._malloc(4),i=s._malloc(4),o=s._malloc(4),l=s._malloc(4),f=s._malloc(4),u=Date.now();if(0!==s.ccall("jp2_decode","number",["number","number","number","number","number","number","number"],[a,e.length,n,i,o,l,f]))return console.log("[opj_decode] decoding failed!"),s._free(a),s._free(s.getValue(n,"*")),s._free(o),s._free(l),s._free(i),void s._free(f);var d=s.getValue(n,"*"),c={length:s.getValue(i,"i32"),sx:s.getValue(o,"i32"),sy:s.getValue(l,"i32"),nbChannels:s.getValue(f,"i32"),perf_timetodecode:void 0,pixelData:void 0},p=c.sx*c.sy*c.nbChannels,m=new Int32Array(s.HEAP32.buffer,d,p);if(1===t)if(Uint8Array.from)c.pixelData=Uint8Array.from(m);else{c.pixelData=new Uint8Array(p);for(var g=0;g<p;g++)c.pixelData[g]=m[g]}else if(r)if(Int16Array.from)c.pixelData=Int16Array.from(m);else{c.pixelData=new Int16Array(p);for(var y=0;y<p;y++)c.pixelData[y]=m[y]}else if(Uint16Array.from)c.pixelData=Uint16Array.from(m);else{c.pixelData=new Uint16Array(p);for(var b=0;b<p;b++)c.pixelData[b]=m[b]}var x=Date.now();return c.perf_timetodecode=x-u,s._free(a),s._free(n),s._free(d),s._free(i),s._free(o),s._free(l),s._free(f),c}function i(e,t){var r=e.bitsAllocated<=8?1:2,a=1===e.pixelRepresentation,i=n(t,r,a);return e.columns=i.sx,e.rows=i.sy,e.pixelData=i.pixelData,i.nbChannels>1&&(e.photometricInterpretation="RGB"),e}function o(e){if(!e.usePDFJS&&"undefined"==typeof OpenJPEG)throw"OpenJPEG decoder not loaded";if(!(s||(s=OpenJPEG())&&s._jp2_decode))throw"OpenJPEG failed to initialize"}function l(e,t,r,n){return n=n||{},o(r),n.usePDFJS||r.usePDFJS?a(e,t):i(e,t)}Object.defineProperty(t,"__esModule",{value:!0});var s=void 0;t.default=l,t.initializeJPEG2000=o},34:function(e,t,r){"use strict";function a(e,t){var r=o._malloc(e.length);o.writeArrayToMemory(e,r);var a=o._malloc(4),n=o._malloc(4),i=o._malloc(4),l=o._malloc(4),s=o._malloc(4),f=o._malloc(4),u=o._malloc(4),d=o._malloc(4),c=o._malloc(4),p=o.ccall("jpegls_decode","number",["number","number","number","number","number","number","number","number","number","number","number"],[r,e.length,a,n,i,l,s,f,d,u,c]),m={result:p,width:o.getValue(i,"i32"),height:o.getValue(l,"i32"),bitsPerSample:o.getValue(s,"i32"),stride:o.getValue(f,"i32"),components:o.getValue(d,"i32"),allowedLossyError:o.getValue(u,"i32"),interleaveMode:o.getValue(c,"i32"),pixelData:void 0},g=o.getValue(a,"*");return m.bitsPerSample<=8?(m.pixelData=new Uint8Array(m.width*m.height*m.components),m.pixelData.set(new Uint8Array(o.HEAP8.buffer,g,m.pixelData.length))):t?(m.pixelData=new Int16Array(m.width*m.height*m.components),m.pixelData.set(new Int16Array(o.HEAP16.buffer,g,m.pixelData.length))):(m.pixelData=new Uint16Array(m.width*m.height*m.components),m.pixelData.set(new Uint16Array(o.HEAP16.buffer,g,m.pixelData.length))),o._free(r),o._free(g),o._free(a),o._free(n),o._free(i),o._free(l),o._free(s),o._free(f),o._free(d),o._free(c),m}function n(){if("undefined"==typeof CharLS)throw"No JPEG-LS decoder loaded";if(!(o||(o=CharLS())&&o._jpegls_decode))throw"JPEG-LS failed to initialize"}function i(e,t){n();var r=a(t,1===e.pixelRepresentation);if(0!==r.result&&6!==r.result)throw"JPEG-LS decoder failed to decode frame (error code "+r.result+")";return e.columns=r.width,e.rows=r.height,e.pixelData=r.pixelData,e}Object.defineProperty(t,"__esModule",{value:!0});var o=void 0;t.default=i,t.initializeJPEGLS=n},38:function(e,t,r){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}function n(e){m||(self.importScripts(e.decodeTask.codecsPath),m=!0,e.decodeTask.initializeCodecsOnStartup&&((0,s.initializeJPEG2000)(e.decodeTask),(0,f.initializeJPEGLS)(e.decodeTask)))}function i(e){g=e,e.decodeTask.loadCodecsOnStartup&&n(e)}function o(e){var t=(0,d.default)(e.pixelData);!0===g.decodeTask.strict?(e.smallestPixelValue!==t.min&&console.warn("Image smallestPixelValue tag is incorrect. Rendering performance will suffer considerably."),e.largestPixelValue!==t.max&&console.warn("Image largestPixelValue tag is incorrect. Rendering performance will suffer considerably.")):(e.smallestPixelValue=t.min,e.largestPixelValue=t.max)}function l(e,t){n(g);var r=e.data.imageFrame,a=new Uint8Array(e.data.pixelData);(0,p.default)(r,e.data.transferSyntax,a,g.decodeTask,e.data.options),o(r),r.pixelData=r.pixelData.buffer,t(r,[r.pixelData])}Object.defineProperty(t,"__esModule",{value:!0});var s=r(33),f=r(34),u=r(60),d=a(u),c=r(54),p=a(c),m=!1,g=void 0;t.default={taskType:"decodeTask",handler:l,initialize:i}},39:function(e,t,r){"use strict";function a(e){if(!l){if(s=e.config,e.config.webWorkerTaskPaths)for(var t=0;t<e.config.webWorkerTaskPaths.length;t++)self.importScripts(e.config.webWorkerTaskPaths[t]);Object.keys(o).forEach(function(e){o[e].initialize(s.taskConfiguration)}),self.postMessage({taskType:"initialize",status:"success",result:{},workerIndex:e.workerIndex}),l=!0}}function n(e){if(o[e.taskType])return console.log('attempt to register duplicate task handler "',e.taskType,'"'),!1;o[e.taskType]=e,l&&e.initialize(s.taskConfiguration)}function i(e){s=e.config,self.importScripts(e.sourcePath)}Object.defineProperty(t,"__esModule",{value:!0}),t.registerTaskHandler=n;var o={},l=!1,s=void 0;self.onmessage=function(e){return"initialize"===e.data.taskType?void a(e.data):"loadWebWorkerTask"===e.data.taskType?void i(e.data):o[e.data.taskType]?void o[e.data.taskType].handler(e.data,function(t,r){self.postMessage({taskType:e.data.taskType,status:"success",result:t,workerIndex:e.data.workerIndex},r)}):(console.log("no task handler for ",e.data.taskType),console.log(o),void self.postMessage({taskType:e.data.taskType,status:"failed - no task handler registered",workerIndex:e.data.workerIndex}))}},54:function(e,t,r){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}function n(e,t,r,a,n){var i=(new Date).getTime();if("1.2.840.10008.1.2"===t)e=(0,o.default)(e,r);else if("1.2.840.10008.1.2.1"===t)e=(0,o.default)(e,r);else if("1.2.840.10008.1.2.2"===t)e=(0,s.default)(e,r);else if("1.2.840.10008.1.2.1.99"===t)e=(0,o.default)(e,r);else if("1.2.840.10008.1.2.5"===t)e=(0,u.default)(e,r);else if("1.2.840.10008.1.2.4.50"===t)e=(0,c.default)(e,r);else if("1.2.840.10008.1.2.4.51"===t)e=(0,c.default)(e,r);else if("1.2.840.10008.1.2.4.57"===t)e=(0,m.default)(e,r);else if("1.2.840.10008.1.2.4.70"===t)e=(0,m.default)(e,r);else if("1.2.840.10008.1.2.4.80"===t)e=(0,y.default)(e,r);else if("1.2.840.10008.1.2.4.81"===t)e=(0,y.default)(e,r);else if("1.2.840.10008.1.2.4.90"===t)e=(0,x.default)(e,r,a,n);else{if("1.2.840.10008.1.2.4.91"!==t)throw console&&console.log&&console.log("Image cannot be decoded due to Unsupported transfer syntax "+t),"no decoder for transfer syntax "+t;e=(0,x.default)(e,r,a,n)}var l=(new Date).getTime();return e.decodeTimeInMS=l-i,e}Object.defineProperty(t,"__esModule",{value:!0});var i=r(58),o=a(i),l=r(55),s=a(l),f=r(59),u=a(f),d=r(56),c=a(d),p=r(57),m=a(p),g=r(34),y=a(g),b=r(33),x=a(b);t.default=n},55:function(e,t,r){"use strict";function a(e){return(255&e)<<8|e>>8&255}function n(e,t){if(16===e.bitsAllocated){var r=t.buffer,n=t.byteOffset,i=t.length;n%2&&(r=r.slice(n),n=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,n,i/2):e.pixelData=new Int16Array(r,n,i/2);for(var o=0;o<e.pixelData.length;o++)e.pixelData[o]=a(e.pixelData[o])}else 8===e.bitsAllocated&&(e.pixelData=t);return e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},56:function(e,t,r){"use strict";function a(e,t){if("undefined"==typeof JpegImage)throw"No JPEG Baseline decoder loaded";var r=new JpegImage;return r.parse(t),r.colorTransform=!1,8===e.bitsAllocated?(e.pixelData=r.getData(e.columns,e.rows),e):16===e.bitsAllocated?(e.pixelData=r.getData16(e.columns,e.rows),e):void 0}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},57:function(e,t,r){"use strict";function a(e,t){if("undefined"==typeof jpeg||void 0===jpeg.lossless||void 0===jpeg.lossless.Decoder)throw"No JPEG Lossless decoder loaded";var r=e.bitsAllocated<=8?1:2,a=t.buffer,n=new jpeg.lossless.Decoder,i=n.decode(a,t.byteOffset,t.length,r);return 0===e.pixelRepresentation?16===e.bitsAllocated?(e.pixelData=new Uint16Array(i.buffer),e):(e.pixelData=new Uint8Array(i.buffer),e):(e.pixelData=new Int16Array(i.buffer),e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},58:function(e,t,r){"use strict";function a(e,t){if(16===e.bitsAllocated){var r=t.buffer,a=t.byteOffset,n=t.length;a%2&&(r=r.slice(a),a=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,a,n/2):e.pixelData=new Int16Array(r,a,n/2)}else 8===e.bitsAllocated&&(e.pixelData=t);return e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},59:function(e,t,r){"use strict";function a(e,t){if(8===e.bitsAllocated)return e.planarConfiguration?i(e,t):n(e,t);if(16===e.bitsAllocated)return o(e,t);throw"unsupported pixel format for RLE"}function n(e,t){for(var r=t,a=e.rows*e.columns,n=new ArrayBuffer(a*e.samplesPerPixel),i=new DataView(r.buffer,r.byteOffset),o=new Int8Array(r.buffer,r.byteOffset),l=new Int8Array(n),s=0,f=i.getInt32(0,!0),u=0;u<f;++u){s=u;var d=i.getInt32(4*(u+1),!0),c=i.getInt32(4*(u+2),!0);0===c&&(c=r.length);for(var p=a*f;d<c;){var m=o[d++];if(m>=0&&m<=127)for(var g=0;g<m+1&&s<p;++g)l[s]=o[d++],s+=e.samplesPerPixel;else if(m<=-1&&m>=-127)for(var y=o[d++],b=0;b<1-m&&s<p;++b)l[s]=y,s+=e.samplesPerPixel}}return e.pixelData=new Uint8Array(n),e}function i(e,t){for(var r=t,a=e.rows*e.columns,n=new ArrayBuffer(a*e.samplesPerPixel),i=new DataView(r.buffer,r.byteOffset),o=new Int8Array(r.buffer,r.byteOffset),l=new Int8Array(n),s=0,f=i.getInt32(0,!0),u=0;u<f;++u){s=u*a;var d=i.getInt32(4*(u+1),!0),c=i.getInt32(4*(u+2),!0);0===c&&(c=r.length);for(var p=a*f;d<c;){var m=o[d++];if(m>=0&&m<=127)for(var g=0;g<m+1&&s<p;++g)l[s]=o[d++],s++;else if(m<=-1&&m>=-127)for(var y=o[d++],b=0;b<1-m&&s<p;++b)l[s]=y,s++}}return e.pixelData=new Uint8Array(n),e}function o(e,t){for(var r=t,a=e.rows*e.columns,n=new ArrayBuffer(a*e.samplesPerPixel*2),i=new DataView(r.buffer,r.byteOffset),o=new Int8Array(r.buffer,r.byteOffset),l=new Int8Array(n),s=i.getInt32(0,!0),f=0;f<s;++f){var u=0,d=0===f?1:0,c=i.getInt32(4*(f+1),!0),p=i.getInt32(4*(f+2),!0);for(0===p&&(p=r.length);c<p;){var m=o[c++];if(m>=0&&m<=127)for(var g=0;g<m+1&&u<a;++g)l[2*u+d]=o[c++],u++;else if(m<=-1&&m>=-127)for(var y=o[c++],b=0;b<1-m&&u<a;++b)l[2*u+d]=y,u++}}return 0===e.pixelRepresentation?e.pixelData=new Uint16Array(n):e.pixelData=new Int16Array(n),e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},60:function(e,t,r){"use strict";function a(e){for(var t=e[0],r=e[0],a=void 0,n=e.length,i=1;i<n;i++)a=e[i],t=Math.min(t,a),r=Math.max(r,a);return{min:t,max:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},61:function(e,t,r){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.version=t.registerTaskHandler=void 0;var n=r(3);Object.defineProperty(t,"version",{enumerable:!0,get:function(){return a(n).default}});var i=r(39),o=r(38),l=a(o);(0,i.registerTaskHandler)(l.default),t.registerTaskHandler=i.registerTaskHandler}})});
/*! cornerstone-wado-image-loader - 0.15.0 - 2017-10-25 | (c) 2016 Chris Hafey | https://github.com/chafey/cornerstoneWADOImageLoader */
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("cornerstoneWADOImageLoaderWebWorker",[],t):"object"==typeof exports?exports.cornerstoneWADOImageLoaderWebWorker=t():e.cornerstoneWADOImageLoaderWebWorker=t()}(this,function(){return function(e){function t(a){if(r[a])return r[a].exports;var n=r[a]={i:a,l:!1,exports:{}};return e[a].call(n.exports,n,n.exports,t),n.l=!0,n.exports}var r={};return t.m=e,t.c=r,t.i=function(e){return e},t.d=function(e,r,a){t.o(e,r)||Object.defineProperty(e,r,{configurable:!1,enumerable:!0,get:a})},t.n=function(e){var r=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(r,"a",r),r},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=61)}({2:function(e,t,r){"use strict";function a(e){for(var t=e[0],r=e[0],a=void 0,n=e.length,i=1;i<n;i++)a=e[i],t=Math.min(t,a),r=Math.max(r,a);return{min:t,max:r}}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},3:function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default="0.15.0"},37:function(e,t,r){"use strict";function a(e,t){var r=new JpxImage;r.parse(t);var a=r.tiles.length;if(1!==a)throw"JPEG2000 decoder returned a tileCount of "+a+", when 1 is expected";return e.columns=r.width,e.rows=r.height,e.pixelData=r.tiles[0].items,e}function n(e,t,r){var a=s._malloc(e.length);s.writeArrayToMemory(e,a);var n=s._malloc(4),i=s._malloc(4),o=s._malloc(4),l=s._malloc(4),f=s._malloc(4),u=Date.now();if(0!==s.ccall("jp2_decode","number",["number","number","number","number","number","number","number"],[a,e.length,n,i,o,l,f]))return console.log("[opj_decode] decoding failed!"),s._free(a),s._free(s.getValue(n,"*")),s._free(o),s._free(l),s._free(i),void s._free(f);var d=s.getValue(n,"*"),c={length:s.getValue(i,"i32"),sx:s.getValue(o,"i32"),sy:s.getValue(l,"i32"),nbChannels:s.getValue(f,"i32"),perf_timetodecode:void 0,pixelData:void 0},p=c.sx*c.sy*c.nbChannels,m=new Int32Array(s.HEAP32.buffer,d,p);if(1===t)if(Uint8Array.from)c.pixelData=Uint8Array.from(m);else{c.pixelData=new Uint8Array(p);for(var g=0;g<p;g++)c.pixelData[g]=m[g]}else if(r)if(Int16Array.from)c.pixelData=Int16Array.from(m);else{c.pixelData=new Int16Array(p);for(var y=0;y<p;y++)c.pixelData[y]=m[y]}else if(Uint16Array.from)c.pixelData=Uint16Array.from(m);else{c.pixelData=new Uint16Array(p);for(var b=0;b<p;b++)c.pixelData[b]=m[b]}var x=Date.now();return c.perf_timetodecode=x-u,s._free(a),s._free(n),s._free(d),s._free(i),s._free(o),s._free(l),s._free(f),c}function i(e,t){var r=e.bitsAllocated<=8?1:2,a=1===e.pixelRepresentation,i=n(t,r,a);return e.columns=i.sx,e.rows=i.sy,e.pixelData=i.pixelData,i.nbChannels>1&&(e.photometricInterpretation="RGB"),e}function o(e){if(!e.usePDFJS&&"undefined"==typeof OpenJPEG)throw"OpenJPEG decoder not loaded";if(!(s||(s=OpenJPEG())&&s._jp2_decode))throw"OpenJPEG failed to initialize"}function l(e,t,r,n){return n=n||{},o(r),n.usePDFJS||r.usePDFJS?a(e,t):i(e,t)}Object.defineProperty(t,"__esModule",{value:!0});var s=void 0;t.default=l,t.initializeJPEG2000=o},38:function(e,t,r){"use strict";function a(e,t){var r=o._malloc(e.length);o.writeArrayToMemory(e,r);var a=o._malloc(4),n=o._malloc(4),i=o._malloc(4),l=o._malloc(4),s=o._malloc(4),f=o._malloc(4),u=o._malloc(4),d=o._malloc(4),c=o._malloc(4),p=o.ccall("jpegls_decode","number",["number","number","number","number","number","number","number","number","number","number","number"],[r,e.length,a,n,i,l,s,f,d,u,c]),m={result:p,width:o.getValue(i,"i32"),height:o.getValue(l,"i32"),bitsPerSample:o.getValue(s,"i32"),stride:o.getValue(f,"i32"),components:o.getValue(d,"i32"),allowedLossyError:o.getValue(u,"i32"),interleaveMode:o.getValue(c,"i32"),pixelData:void 0},g=o.getValue(a,"*");return m.bitsPerSample<=8?(m.pixelData=new Uint8Array(m.width*m.height*m.components),m.pixelData.set(new Uint8Array(o.HEAP8.buffer,g,m.pixelData.length))):t?(m.pixelData=new Int16Array(m.width*m.height*m.components),m.pixelData.set(new Int16Array(o.HEAP16.buffer,g,m.pixelData.length))):(m.pixelData=new Uint16Array(m.width*m.height*m.components),m.pixelData.set(new Uint16Array(o.HEAP16.buffer,g,m.pixelData.length))),o._free(r),o._free(g),o._free(a),o._free(n),o._free(i),o._free(l),o._free(s),o._free(f),o._free(d),o._free(c),m}function n(){if("undefined"==typeof CharLS)throw"No JPEG-LS decoder loaded";if(!(o||(o=CharLS())&&o._jpegls_decode))throw"JPEG-LS failed to initialize"}function i(e,t){n();var r=a(t,1===e.pixelRepresentation);if(0!==r.result&&6!==r.result)throw"JPEG-LS decoder failed to decode frame (error code "+r.result+")";return e.columns=r.width,e.rows=r.height,e.pixelData=r.pixelData,e}Object.defineProperty(t,"__esModule",{value:!0});var o=void 0;t.default=i,t.initializeJPEGLS=n},40:function(e,t,r){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}function n(e){m||(self.importScripts(e.decodeTask.codecsPath),m=!0,e.decodeTask.initializeCodecsOnStartup&&((0,s.initializeJPEG2000)(e.decodeTask),(0,f.initializeJPEGLS)(e.decodeTask)))}function i(e){g=e,e.decodeTask.loadCodecsOnStartup&&n(e)}function o(e){var t=(0,d.default)(e.pixelData);!0===g.decodeTask.strict?(e.smallestPixelValue!==t.min&&console.warn("Image smallestPixelValue tag is incorrect. Rendering performance will suffer considerably."),e.largestPixelValue!==t.max&&console.warn("Image largestPixelValue tag is incorrect. Rendering performance will suffer considerably.")):(e.smallestPixelValue=t.min,e.largestPixelValue=t.max)}function l(e,t){n(g);var r=e.data.imageFrame,a=new Uint8Array(e.data.pixelData);(0,p.default)(r,e.data.transferSyntax,a,g.decodeTask,e.data.options),o(r),r.pixelData=r.pixelData.buffer,t(r,[r.pixelData])}Object.defineProperty(t,"__esModule",{value:!0});var s=r(37),f=r(38),u=r(2),d=a(u),c=r(55),p=a(c),m=!1,g=void 0;t.default={taskType:"decodeTask",handler:l,initialize:i}},41:function(e,t,r){"use strict";function a(e){if(!l){if(s=e.config,e.config.webWorkerTaskPaths)for(var t=0;t<e.config.webWorkerTaskPaths.length;t++)self.importScripts(e.config.webWorkerTaskPaths[t]);Object.keys(o).forEach(function(e){o[e].initialize(s.taskConfiguration)}),self.postMessage({taskType:"initialize",status:"success",result:{},workerIndex:e.workerIndex}),l=!0}}function n(e){if(o[e.taskType])return console.log('attempt to register duplicate task handler "',e.taskType,'"'),!1;o[e.taskType]=e,l&&e.initialize(s.taskConfiguration)}function i(e){s=e.config,self.importScripts(e.sourcePath)}Object.defineProperty(t,"__esModule",{value:!0}),t.registerTaskHandler=n;var o={},l=!1,s=void 0;self.onmessage=function(e){return"initialize"===e.data.taskType?void a(e.data):"loadWebWorkerTask"===e.data.taskType?void i(e.data):o[e.data.taskType]?void o[e.data.taskType].handler(e.data,function(t,r){self.postMessage({taskType:e.data.taskType,status:"success",result:t,workerIndex:e.data.workerIndex},r)}):(console.log("no task handler for ",e.data.taskType),console.log(o),void self.postMessage({taskType:e.data.taskType,status:"failed - no task handler registered",workerIndex:e.data.workerIndex}))}},55:function(e,t,r){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}function n(e,t,r,a,n){var i=(new Date).getTime();if("1.2.840.10008.1.2"===t)e=(0,o.default)(e,r);else if("1.2.840.10008.1.2.1"===t)e=(0,o.default)(e,r);else if("1.2.840.10008.1.2.2"===t)e=(0,s.default)(e,r);else if("1.2.840.10008.1.2.1.99"===t)e=(0,o.default)(e,r);else if("1.2.840.10008.1.2.5"===t)e=(0,u.default)(e,r);else if("1.2.840.10008.1.2.4.50"===t)e=(0,c.default)(e,r);else if("1.2.840.10008.1.2.4.51"===t)e=(0,c.default)(e,r);else if("1.2.840.10008.1.2.4.57"===t)e=(0,m.default)(e,r);else if("1.2.840.10008.1.2.4.70"===t)e=(0,m.default)(e,r);else if("1.2.840.10008.1.2.4.80"===t)e=(0,y.default)(e,r);else if("1.2.840.10008.1.2.4.81"===t)e=(0,y.default)(e,r);else if("1.2.840.10008.1.2.4.90"===t)e=(0,x.default)(e,r,a,n);else{if("1.2.840.10008.1.2.4.91"!==t)throw console&&console.log&&console.log("Image cannot be decoded due to Unsupported transfer syntax "+t),"no decoder for transfer syntax "+t;e=(0,x.default)(e,r,a,n)}var l=(new Date).getTime();return e.decodeTimeInMS=l-i,e}Object.defineProperty(t,"__esModule",{value:!0});var i=r(59),o=a(i),l=r(56),s=a(l),f=r(60),u=a(f),d=r(57),c=a(d),p=r(58),m=a(p),g=r(38),y=a(g),b=r(37),x=a(b);t.default=n},56:function(e,t,r){"use strict";function a(e){return(255&e)<<8|e>>8&255}function n(e,t){if(16===e.bitsAllocated){var r=t.buffer,n=t.byteOffset,i=t.length;n%2&&(r=r.slice(n),n=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,n,i/2):e.pixelData=new Int16Array(r,n,i/2);for(var o=0;o<e.pixelData.length;o++)e.pixelData[o]=a(e.pixelData[o])}else 8===e.bitsAllocated&&(e.pixelData=t);return e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=n},57:function(e,t,r){"use strict";function a(e,t){if("undefined"==typeof JpegImage)throw"No JPEG Baseline decoder loaded";var r=new JpegImage;return r.parse(t),r.colorTransform=!1,8===e.bitsAllocated?(e.pixelData=r.getData(e.columns,e.rows),e):16===e.bitsAllocated?(e.pixelData=r.getData16(e.columns,e.rows),e):void 0}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},58:function(e,t,r){"use strict";function a(e,t){if("undefined"==typeof jpeg||void 0===jpeg.lossless||void 0===jpeg.lossless.Decoder)throw"No JPEG Lossless decoder loaded";var r=e.bitsAllocated<=8?1:2,a=t.buffer,n=new jpeg.lossless.Decoder,i=n.decode(a,t.byteOffset,t.length,r);return 0===e.pixelRepresentation?16===e.bitsAllocated?(e.pixelData=new Uint16Array(i.buffer),e):(e.pixelData=new Uint8Array(i.buffer),e):(e.pixelData=new Int16Array(i.buffer),e)}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},59:function(e,t,r){"use strict";function a(e,t){if(16===e.bitsAllocated){var r=t.buffer,a=t.byteOffset,n=t.length;a%2&&(r=r.slice(a),a=0),0===e.pixelRepresentation?e.pixelData=new Uint16Array(r,a,n/2):e.pixelData=new Int16Array(r,a,n/2)}else 8===e.bitsAllocated&&(e.pixelData=t);return e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},60:function(e,t,r){"use strict";function a(e,t){if(8===e.bitsAllocated)return e.planarConfiguration?i(e,t):n(e,t);if(16===e.bitsAllocated)return o(e,t);throw"unsupported pixel format for RLE"}function n(e,t){for(var r=t,a=e.rows*e.columns,n=new ArrayBuffer(a*e.samplesPerPixel),i=new DataView(r.buffer,r.byteOffset),o=new Int8Array(r.buffer,r.byteOffset),l=new Int8Array(n),s=0,f=i.getInt32(0,!0),u=0;u<f;++u){s=u;var d=i.getInt32(4*(u+1),!0),c=i.getInt32(4*(u+2),!0);0===c&&(c=r.length);for(var p=a*f;d<c;){var m=o[d++];if(m>=0&&m<=127)for(var g=0;g<m+1&&s<p;++g)l[s]=o[d++],s+=e.samplesPerPixel;else if(m<=-1&&m>=-127)for(var y=o[d++],b=0;b<1-m&&s<p;++b)l[s]=y,s+=e.samplesPerPixel}}return e.pixelData=new Uint8Array(n),e}function i(e,t){for(var r=t,a=e.rows*e.columns,n=new ArrayBuffer(a*e.samplesPerPixel),i=new DataView(r.buffer,r.byteOffset),o=new Int8Array(r.buffer,r.byteOffset),l=new Int8Array(n),s=0,f=i.getInt32(0,!0),u=0;u<f;++u){s=u*a;var d=i.getInt32(4*(u+1),!0),c=i.getInt32(4*(u+2),!0);0===c&&(c=r.length);for(var p=a*f;d<c;){var m=o[d++];if(m>=0&&m<=127)for(var g=0;g<m+1&&s<p;++g)l[s]=o[d++],s++;else if(m<=-1&&m>=-127)for(var y=o[d++],b=0;b<1-m&&s<p;++b)l[s]=y,s++}}return e.pixelData=new Uint8Array(n),e}function o(e,t){for(var r=t,a=e.rows*e.columns,n=new ArrayBuffer(a*e.samplesPerPixel*2),i=new DataView(r.buffer,r.byteOffset),o=new Int8Array(r.buffer,r.byteOffset),l=new Int8Array(n),s=i.getInt32(0,!0),f=0;f<s;++f){var u=0,d=0===f?1:0,c=i.getInt32(4*(f+1),!0),p=i.getInt32(4*(f+2),!0);for(0===p&&(p=r.length);c<p;){var m=o[c++];if(m>=0&&m<=127)for(var g=0;g<m+1&&u<a;++g)l[2*u+d]=o[c++],u++;else if(m<=-1&&m>=-127)for(var y=o[c++],b=0;b<1-m&&u<a;++b)l[2*u+d]=y,u++}}return 0===e.pixelRepresentation?e.pixelData=new Uint16Array(n):e.pixelData=new Int16Array(n),e}Object.defineProperty(t,"__esModule",{value:!0}),t.default=a},61:function(e,t,r){"use strict";function a(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.version=t.registerTaskHandler=void 0;var n=r(3);Object.defineProperty(t,"version",{enumerable:!0,get:function(){return a(n).default}});var i=r(41),o=r(40),l=a(o);(0,i.registerTaskHandler)(l.default),t.registerTaskHandler=i.registerTaskHandler}})});
//# sourceMappingURL=cornerstoneWADOImageLoaderWebWorker.min.js.map

@@ -98,3 +98,3 @@ (function () {

taskType :'convolveTask',
handler: handler ,
handler: handler,
initialize: initialize

@@ -101,0 +101,0 @@ });

{
"name": "cornerstone-wado-image-loader",
"version": "0.14.7",
"version": "0.15.0",
"description": "Cornerstone ImageLoader for DICOM WADO-URI",

@@ -52,13 +52,14 @@ "keywords": [

"babel-core": "^6.24.1",
"babel-eslint": "^7.2.2",
"babel-loader": "^6.4.1",
"babel-eslint": "^8.0.1",
"babel-loader": "^7.1.0",
"babel-plugin-transform-object-rest-spread": "^6.23.0",
"babel-preset-es2015": "^6.24.1",
"chai": "^3.5.0",
"chai": "^4.1.2",
"concat": "^1.0.3",
"coveralls": "^2.13.1",
"cornerstone-core": "^0.13.0",
"coveralls": "^3.0.0",
"docdash": "^0.4.0",
"eslint": "^3.19.0",
"eslint": "^4.9.0",
"eslint-loader": "^1.7.1",
"istanbul-instrumenter-loader": "^2.0.0",
"istanbul-instrumenter-loader": "^3.0.0",
"jsdoc": "^3.4.3",

@@ -73,10 +74,10 @@ "karma": "^1.6.0",

"lodash": "^4.17.4",
"mocha": "^3.2.0",
"mocha": "^4.0.1",
"opn-cli": "^3.1.0",
"promise-polyfill": "^6.0.2",
"shx": "^0.2.2",
"uglify-js": "^3.0.7",
"webpack": "^2.4.1"
"webpack": "^3.1.0"
},
"dependencies": {
"cornerstone-core": "^0.12.2",
"dicom-parser": "^1.7.4",

@@ -83,0 +84,0 @@ "jquery": "^2.2.4"

@@ -48,7 +48,13 @@ [![NPM version][npm-version-image]][npm-url] [![NPM downloads][npm-downloads-image]][npm-url] [![MIT License][license-image]][license-url] [![Build Status][travis-image]][travis-url]

2. [dicomParser](https://github.com/chafey/dicomParser)
3. [cornerstone](https://github.com/chafey/cornerStone)
3. [cornerstone](https://github.com/chafey/cornerstone)
*New in 0.15*: Specify the cornerstone instance you want to register the loader with.
````javascript
cornerstoneWADOImageLoader.externals.cornerstone = cornerstone;
````
Have your code configure the web worker framework with the paths to the web worker and the codecs:
``` javascript
```javascript
var config = {

@@ -55,0 +61,0 @@ webWorkerPath : '../../dist/cornerstoneWADOImageLoaderWebWorker.js',

import { convertRGBColorByPixel, convertRGBColorByPlane,
convertYBRFullByPixel, convertYBRFullByPlane,
convertPALETTECOLOR } from './colorSpaceConverters/index.js';
convertYBRFullByPixel, convertYBRFullByPlane,
convertPALETTECOLOR } from './colorSpaceConverters/index.js';

@@ -5,0 +5,0 @@ function convertRGB (imageFrame, rgbaBuffer) {

@@ -1,9 +0,8 @@

import $ from './jquery.js';
import { external } from '../externalModules.js';
import getImageFrame from './getImageFrame.js';
import decodeImageFrame from './decodeImageFrame.js';
import { default as isColorImageFn } from './isColorImage.js';
import isColorImageFn from './isColorImage.js';
import convertColorSpace from './convertColorSpace.js';
import getMinMax from './getMinMax.js';
import getMinMax from '../shared/getMinMax.js';
import isJPEGBaseline8BitColor from './isJPEGBaseline8BitColor.js';
import * as cornerstone from 'cornerstone-core';

@@ -37,119 +36,118 @@ let lastImageIdDrawn = '';

function createImage (imageId, pixelData, transferSyntax, options) {
const cornerstone = external.cornerstone;
const canvas = document.createElement('canvas');
const deferred = $.Deferred();
const imageFrame = getImageFrame(imageId);
const decodePromise = decodeImageFrame(imageFrame, transferSyntax, pixelData, canvas, options);
decodePromise.then(function (imageFrame) {
// var imagePixelModule = metaDataProvider('imagePixelModule', imageId);
const imagePlaneModule = cornerstone.metaData.get('imagePlaneModule', imageId) || {};
const voiLutModule = cornerstone.metaData.get('voiLutModule', imageId) || {};
const modalityLutModule = cornerstone.metaData.get('modalityLutModule', imageId) || {};
const sopCommonModule = cornerstone.metaData.get('sopCommonModule', imageId) || {};
const isColorImage = isColorImageFn(imageFrame.photometricInterpretation);
return new Promise((resolve, reject) => {
decodePromise.then(function (imageFrame) {
const imagePlaneModule = cornerstone.metaData.get('imagePlaneModule', imageId) || {};
const voiLutModule = cornerstone.metaData.get('voiLutModule', imageId) || {};
const modalityLutModule = cornerstone.metaData.get('modalityLutModule', imageId) || {};
const sopCommonModule = cornerstone.metaData.get('sopCommonModule', imageId) || {};
const isColorImage = isColorImageFn(imageFrame.photometricInterpretation);
// JPEGBaseline (8 bits) is already returning the pixel data in the right format (rgba)
// because it's using a canvas to load and decode images.
if (!isJPEGBaseline8BitColor(imageFrame, transferSyntax)) {
setPixelDataType(imageFrame);
// JPEGBaseline (8 bits) is already returning the pixel data in the right format (rgba)
// because it's using a canvas to load and decode images.
if (!isJPEGBaseline8BitColor(imageFrame, transferSyntax)) {
setPixelDataType(imageFrame);
// convert color space
if (isColorImage) {
// setup the canvas context
canvas.height = imageFrame.rows;
canvas.width = imageFrame.columns;
// convert color space
if (isColorImage) {
// setup the canvas context
canvas.height = imageFrame.rows;
canvas.width = imageFrame.columns;
const context = canvas.getContext('2d');
const imageData = context.createImageData(imageFrame.columns, imageFrame.rows);
const context = canvas.getContext('2d');
const imageData = context.createImageData(imageFrame.columns, imageFrame.rows);
convertColorSpace(imageFrame, imageData);
imageFrame.imageData = imageData;
imageFrame.pixelData = imageData.data;
convertColorSpace(imageFrame, imageData);
imageFrame.imageData = imageData;
imageFrame.pixelData = imageData.data;
// calculate smallest and largest PixelValue of the converted pixelData
const minMax = getMinMax(imageFrame.pixelData);
// calculate smallest and largest PixelValue of the converted pixelData
const minMax = getMinMax(imageFrame.pixelData);
imageFrame.smallestPixelValue = minMax.min;
imageFrame.largestPixelValue = minMax.max;
imageFrame.smallestPixelValue = minMax.min;
imageFrame.largestPixelValue = minMax.max;
}
}
}
const image = {
imageId,
color: isColorImage,
columnPixelSpacing: imagePlaneModule.pixelSpacing ? imagePlaneModule.pixelSpacing[1] : undefined,
columns: imageFrame.columns,
height: imageFrame.rows,
intercept: modalityLutModule.rescaleIntercept ? modalityLutModule.rescaleIntercept : 0,
invert: imageFrame.photometricInterpretation === 'MONOCHROME1',
minPixelValue: imageFrame.smallestPixelValue,
maxPixelValue: imageFrame.largestPixelValue,
render: undefined, // set below
rowPixelSpacing: imagePlaneModule.pixelSpacing ? imagePlaneModule.pixelSpacing[0] : undefined,
rows: imageFrame.rows,
sizeInBytes: imageFrame.pixelData.length,
slope: modalityLutModule.rescaleSlope ? modalityLutModule.rescaleSlope : 1,
width: imageFrame.columns,
windowCenter: voiLutModule.windowCenter ? voiLutModule.windowCenter[0] : undefined,
windowWidth: voiLutModule.windowWidth ? voiLutModule.windowWidth[0] : undefined,
decodeTimeInMS: imageFrame.decodeTimeInMS
};
const image = {
imageId,
color: isColorImage,
columnPixelSpacing: imagePlaneModule.pixelSpacing ? imagePlaneModule.pixelSpacing[1] : undefined,
columns: imageFrame.columns,
height: imageFrame.rows,
intercept: modalityLutModule.rescaleIntercept ? modalityLutModule.rescaleIntercept : 0,
invert: imageFrame.photometricInterpretation === 'MONOCHROME1',
minPixelValue: imageFrame.smallestPixelValue,
maxPixelValue: imageFrame.largestPixelValue,
render: undefined, // set below
rowPixelSpacing: imagePlaneModule.pixelSpacing ? imagePlaneModule.pixelSpacing[0] : undefined,
rows: imageFrame.rows,
sizeInBytes: imageFrame.pixelData.length,
slope: modalityLutModule.rescaleSlope ? modalityLutModule.rescaleSlope : 1,
width: imageFrame.columns,
windowCenter: voiLutModule.windowCenter ? voiLutModule.windowCenter[0] : undefined,
windowWidth: voiLutModule.windowWidth ? voiLutModule.windowWidth[0] : undefined,
decodeTimeInMS: imageFrame.decodeTimeInMS
};
// add function to return pixel data
image.getPixelData = () => imageFrame.pixelData;
// add function to return pixel data
image.getPixelData = () => imageFrame.pixelData;
// Setup the renderer
if (image.color) {
image.render = cornerstone.renderColorImage;
image.getCanvas = function () {
if (lastImageIdDrawn === imageId) {
return canvas;
}
// Setup the renderer
if (image.color) {
image.render = cornerstone.renderColorImage;
image.getCanvas = function () {
if (lastImageIdDrawn === imageId) {
return canvas;
}
canvas.height = image.rows;
canvas.width = image.columns;
const context = canvas.getContext('2d');
canvas.height = image.rows;
canvas.width = image.columns;
const context = canvas.getContext('2d');
context.putImageData(imageFrame.imageData, 0, 0);
lastImageIdDrawn = imageId;
context.putImageData(imageFrame.imageData, 0, 0);
lastImageIdDrawn = imageId;
return canvas;
};
return canvas;
};
} else {
image.render = cornerstone.renderGrayscaleImage;
}
} else {
image.render = cornerstone.renderGrayscaleImage;
}
// Modality LUT
if (modalityLutModule.modalityLUTSequence &&
modalityLutModule.modalityLUTSequence.length > 0 &&
isModalityLUTForDisplay(sopCommonModule.sopClassUID)) {
image.modalityLUT = modalityLutModule.modalityLUTSequence[0];
}
// Modality LUT
if (modalityLutModule.modalityLUTSequence &&
modalityLutModule.modalityLUTSequence.length > 0 &&
isModalityLUTForDisplay(sopCommonModule.sopClassUID)) {
image.modalityLUT = modalityLutModule.modalityLUTSequence[0];
}
// VOI LUT
if (voiLutModule.voiLUTSequence &&
voiLutModule.voiLUTSequence.length > 0) {
image.voiLUT = voiLutModule.voiLUTSequence[0];
}
// VOI LUT
if (voiLutModule.voiLUTSequence &&
voiLutModule.voiLUTSequence.length > 0) {
image.voiLUT = voiLutModule.voiLUTSequence[0];
}
// set the ww/wc to cover the dynamic range of the image if no values are supplied
if (image.windowCenter === undefined || image.windowWidth === undefined) {
if (image.color) {
image.windowWidth = 255;
image.windowCenter = 128;
} else {
const maxVoi = image.maxPixelValue * image.slope + image.intercept;
const minVoi = image.minPixelValue * image.slope + image.intercept;
// set the ww/wc to cover the dynamic range of the image if no values are supplied
if (image.windowCenter === undefined || image.windowWidth === undefined) {
if (image.color) {
image.windowWidth = 255;
image.windowCenter = 128;
} else {
const maxVoi = image.maxPixelValue * image.slope + image.intercept;
const minVoi = image.minPixelValue * image.slope + image.intercept;
image.windowWidth = maxVoi - minVoi;
image.windowCenter = (maxVoi + minVoi) / 2;
image.windowWidth = maxVoi - minVoi;
image.windowCenter = (maxVoi + minVoi) / 2;
}
}
}
deferred.resolve(image);
resolve(image);
}, reject);
});
return deferred.promise();
}
export default createImage;

@@ -18,5 +18,3 @@ import webWorkerManager from './webWorkerManager.js';

function decodeImageFrame (imageFrame, transferSyntax, pixelData, canvas, options) {
options = options || {};
function decodeImageFrame (imageFrame, transferSyntax, pixelData, canvas, options = {}) {
// TODO: Turn this into a switch statement instead

@@ -23,0 +21,0 @@ if (transferSyntax === '1.2.840.10008.1.2') {

@@ -1,3 +0,2 @@

import $ from './jquery.js';
import getMinMax from './getMinMax';
import getMinMax from '../shared/getMinMax.js';

@@ -29,54 +28,57 @@ /**

const start = new Date().getTime();
const deferred = $.Deferred();
const imgBlob = new Blob([pixelData], { type: 'image/jpeg' });
const r = new FileReader();
return new Promise((resolve, reject) => {
const fileReader = new FileReader();
if (r.readAsBinaryString === undefined) {
r.readAsArrayBuffer(imgBlob);
} else {
r.readAsBinaryString(imgBlob); // doesn't work on IE11
}
if (fileReader.readAsBinaryString === undefined) {
fileReader.readAsArrayBuffer(imgBlob);
} else {
fileReader.readAsBinaryString(imgBlob); // doesn't work on IE11
}
r.onload = function () {
const img = new Image();
fileReader.onload = function () {
const img = new Image();
img.onload = function () {
canvas.height = img.height;
canvas.width = img.width;
imageFrame.rows = img.height;
imageFrame.columns = img.width;
const context = canvas.getContext('2d');
img.onload = function () {
canvas.height = img.height;
canvas.width = img.width;
imageFrame.rows = img.height;
imageFrame.columns = img.width;
const context = canvas.getContext('2d');
context.drawImage(this, 0, 0);
const imageData = context.getImageData(0, 0, img.width, img.height);
const end = new Date().getTime();
context.drawImage(this, 0, 0);
const imageData = context.getImageData(0, 0, img.width, img.height);
const end = new Date().getTime();
imageFrame.pixelData = imageData.data;
imageFrame.imageData = imageData;
imageFrame.decodeTimeInMS = end - start;
imageFrame.pixelData = imageData.data;
imageFrame.imageData = imageData;
imageFrame.decodeTimeInMS = end - start;
// calculate smallest and largest PixelValue
const minMax = getMinMax(imageFrame.pixelData);
// calculate smallest and largest PixelValue
const minMax = getMinMax(imageFrame.pixelData);
imageFrame.smallestPixelValue = minMax.min;
imageFrame.largestPixelValue = minMax.max;
imageFrame.smallestPixelValue = minMax.min;
imageFrame.largestPixelValue = minMax.max;
deferred.resolve(imageFrame);
resolve(imageFrame);
};
img.onerror = function (error) {
reject(error);
};
if (fileReader.readAsBinaryString === undefined) {
img.src = `data:image/jpeg;base64,${window.btoa(arrayBufferToString(fileReader.result))}`;
} else {
img.src = `data:image/jpeg;base64,${window.btoa(fileReader.result)}`; // doesn't work on IE11
}
};
img.onerror = function (error) {
deferred.reject(error);
fileReader.onerror = (e) => {
reject(e);
};
if (r.readAsBinaryString === undefined) {
img.src = `data:image/jpeg;base64,${window.btoa(arrayBufferToString(r.result))}`;
} else {
img.src = `data:image/jpeg;base64,${window.btoa(r.result)}`; // doesn't work on IE11
}
};
return deferred.promise();
});
}
export default decodeJPEGBaseline8BitColor;

@@ -1,5 +0,5 @@

import * as cornerstone from 'cornerstone-core';
import { external } from '../externalModules.js';
function getImageFrame (imageId) {
const imagePixelModule = cornerstone.metaData.get('imagePixelModule', imageId);
const imagePixelModule = external.cornerstone.metaData.get('imagePixelModule', imageId);

@@ -6,0 +6,0 @@ return {

@@ -11,3 +11,3 @@ export * from './colorSpaceConverters/index.js';

export { default as getImageFrame } from './getImageFrame.js';
export { default as getMinMax } from './getMinMax.js';
export { default as getMinMax } from '../shared/getMinMax.js';
export { default as isColorImage } from './isColorImage.js';

@@ -18,1 +18,2 @@ export { default as isJPEGBaseline8BitColor } from './isJPEGBaseline8BitColor.js';

export { internal } from './internal/index.js';
export { external } from '../externalModules.js';

@@ -1,104 +0,105 @@

import $ from '../jquery.js';
import { $, external } from '../../externalModules.js';
import { getOptions } from './options.js';
import * as cornerstone from 'cornerstone-core';
function xhrRequest (url, imageId, headers = {}, params = {}) {
const deferred = $.Deferred();
const options = getOptions();
// Make the request for the DICOM P10 SOP Instance
const xhr = new XMLHttpRequest();
return new Promise((resolve, reject) => {
const xhr = new XMLHttpRequest();
xhr.open('get', url, true);
xhr.responseType = 'arraybuffer';
options.beforeSend(xhr);
Object.keys(headers).forEach(function (key) {
xhr.setRequestHeader(key, headers[key]);
});
xhr.open('get', url, true);
xhr.responseType = 'arraybuffer';
options.beforeSend(xhr);
Object.keys(headers).forEach(function (key) {
xhr.setRequestHeader(key, headers[key]);
});
params.deferred = deferred;
params.url = url;
params.imageId = imageId;
params.deferred = {
resolve,
reject
};
params.url = url;
params.imageId = imageId;
// Event triggered when downloading an image starts
xhr.onloadstart = function (event) {
// Action
if (options.onloadstart) {
options.onloadstart(event, params);
}
// Event triggered when downloading an image starts
xhr.onloadstart = function (event) {
// Action
if (options.onloadstart) {
options.onloadstart(event, params);
}
// Event
$(cornerstone.events).trigger('CornerstoneImageLoadStart', {
url,
imageId
});
};
// Event
$(external.cornerstone.events).trigger('CornerstoneImageLoadStart', {
url,
imageId
});
};
// Event triggered when downloading an image ends
xhr.onloadend = function (event) {
// Action
if (options.onloadend) {
options.onloadend(event, params);
}
// Event triggered when downloading an image ends
xhr.onloadend = function (event) {
// Action
if (options.onloadend) {
options.onloadend(event, params);
}
// Event
$(cornerstone.events).trigger('CornerstoneImageLoadEnd', {
url,
imageId
});
};
// Event
$(external.cornerstone.events).trigger('CornerstoneImageLoadEnd', {
url,
imageId
});
};
// handle response data
xhr.onreadystatechange = function (event) {
// Action
if (options.onreadystatechange) {
options.onreadystatechange(event, params);
// handle response data
xhr.onreadystatechange = function (event) {
// Action
if (options.onreadystatechange) {
options.onreadystatechange(event, params);
return;
}
return;
}
// Default action
// TODO: consider sending out progress messages here as we receive the pixel data
if (xhr.readyState === 4) {
if (xhr.status === 200) {
deferred.resolve(xhr.response, xhr);
} else {
// request failed, reject the deferred
deferred.reject(xhr);
// Default action
// TODO: consider sending out progress messages here as we receive the pixel data
if (xhr.readyState === 4) {
if (xhr.status === 200) {
resolve(xhr.response, xhr);
} else {
// request failed, reject the Promise
reject(xhr);
}
}
}
};
};
// Event triggered when downloading an image progresses
xhr.onprogress = function (oProgress) {
// console.log('progress:',oProgress)
const loaded = oProgress.loaded; // evt.loaded the bytes browser receive
let total;
let percentComplete;
// Event triggered when downloading an image progresses
xhr.onprogress = function (oProgress) {
// console.log('progress:',oProgress)
const loaded = oProgress.loaded; // evt.loaded the bytes browser receive
let total;
let percentComplete;
if (oProgress.lengthComputable) {
total = oProgress.total; // evt.total the total bytes seted by the header
percentComplete = Math.round((loaded / total) * 100);
}
if (oProgress.lengthComputable) {
total = oProgress.total; // evt.total the total bytes seted by the header
percentComplete = Math.round((loaded / total) * 100);
}
// Action
if (options.onprogress) {
options.onprogress(oProgress, params);
}
// Action
if (options.onprogress) {
options.onprogress(oProgress, params);
}
// Event
$(cornerstone.events).trigger('CornerstoneImageLoadProgress', {
url,
imageId,
loaded,
total,
percentComplete
});
};
// Event
$(external.cornerstone.events).trigger('CornerstoneImageLoadProgress', {
url,
imageId,
loaded,
total,
percentComplete
});
};
xhr.send();
return deferred.promise();
xhr.send();
});
}
export default xhrRequest;

@@ -1,2 +0,1 @@

import $ from '../jquery.js';
import { xhrRequest } from '../internal/index.js';

@@ -11,4 +10,2 @@ import findIndexOfString from './findIndexOfString.js';

}
return undefined;
}

@@ -22,4 +19,2 @@

}
return undefined;
}

@@ -39,4 +34,3 @@

function getPixelData (uri, imageId, mediaType) {
mediaType = mediaType || 'application/octet-stream';
function getPixelData (uri, imageId, mediaType = 'application/octet-stream') {
const headers = {

@@ -46,49 +40,47 @@ accept: mediaType

const deferred = $.Deferred();
return new Promise((resolve, reject) => {
const loadPromise = xhrRequest(uri, imageId, headers);
const loadPromise = xhrRequest(uri, imageId, headers);
loadPromise.then(function (imageFrameAsArrayBuffer/* , xhr*/) {
loadPromise.then(function (imageFrameAsArrayBuffer/* , xhr*/) {
// request succeeded, Parse the multi-part mime response
const response = new Uint8Array(imageFrameAsArrayBuffer);
// request succeeded, Parse the multi-part mime response
const response = new Uint8Array(imageFrameAsArrayBuffer);
// First look for the multipart mime header
const tokenIndex = findIndexOfString(response, '\r\n\r\n');
// First look for the multipart mime header
const tokenIndex = findIndexOfString(response, '\r\n\r\n');
if (tokenIndex === -1) {
reject(new Error('invalid response - no multipart mime header'));
}
const header = uint8ArrayToString(response, 0, tokenIndex);
// Now find the boundary marker
const split = header.split('\r\n');
const boundary = findBoundary(split);
if (tokenIndex === -1) {
deferred.reject('invalid response - no multipart mime header');
}
const header = uint8ArrayToString(response, 0, tokenIndex);
// Now find the boundary marker
const split = header.split('\r\n');
const boundary = findBoundary(split);
if (!boundary) {
reject(new Error('invalid response - no boundary marker'));
}
const offset = tokenIndex + 4; // skip over the \r\n\r\n
if (!boundary) {
deferred.reject('invalid response - no boundary marker');
}
const offset = tokenIndex + 4; // skip over the \r\n\r\n
// find the terminal boundary marker
const endIndex = findIndexOfString(response, boundary, offset);
// find the terminal boundary marker
const endIndex = findIndexOfString(response, boundary, offset);
if (endIndex === -1) {
reject(new Error('invalid response - terminating boundary not found'));
}
if (endIndex === -1) {
deferred.reject('invalid response - terminating boundary not found');
}
// Remove \r\n from the length
const length = endIndex - offset - 2;
// Remove \r\n from the length
const length = endIndex - offset - 2;
// return the info for this pixel data
deferred.resolve({
contentType: findContentType(split),
imageFrame: {
pixelData: new Uint8Array(imageFrameAsArrayBuffer, offset, length)
}
// return the info for this pixel data
resolve({
contentType: findContentType(split),
imageFrame: {
pixelData: new Uint8Array(imageFrameAsArrayBuffer, offset, length)
}
});
});
});
return deferred.promise();
}
export default getPixelData;
import { getNumberString,
getNumberValue,
getNumberValues,
getValue,
metaDataProvider } from './metaData/index.js';
getNumberValue,
getNumberValues,
getValue,
metaDataProvider } from './metaData/index.js';

@@ -11,2 +11,3 @@ import findIndexOfString from './findIndexOfString.js';

import loadImage from './loadImage.js';
import register from './register.js';

@@ -26,3 +27,4 @@ const metaData = {

loadImage,
metaDataManager
metaDataManager,
register
};

@@ -1,3 +0,2 @@

import $ from '../jquery.js';
import * as cornerstone from 'cornerstone-core';
import { $ } from '../../externalModules.js';
import metaDataManager from './metaDataManager.js';

@@ -13,7 +12,6 @@ import getPixelData from './getPixelData.js';

const start = new Date().getTime();
const uri = imageId.substring(7);
const deferred = $.Deferred();
const uri = imageId.substring(7);
// check to make sure we have metadata for this imageId

@@ -29,3 +27,2 @@ const metaData = metaDataManager.get(imageId);

// TODO: load bulk data items that we might need
const mediaType = 'multipart/related; type="application/octet-stream"'; // 'image/dicom+jp2';

@@ -46,4 +43,6 @@

deferred.resolve(image);
}, function (reason) {
deferred.reject(reason);
});
}).fail(function (reason) {
}, function (reason) {
deferred.reject(reason);

@@ -55,6 +54,3 @@ });

// register wadors scheme
cornerstone.registerImageLoader('wadors', loadImage);
export default loadImage;

@@ -0,1 +1,2 @@

import { dicomParser } from '../../../externalModules.js';
import getNumberValues from './getNumberValues.js';

@@ -5,4 +6,2 @@ import getValue from './getValue.js';

import metaDataManager from '../metaDataManager.js';
import * as dicomParser from '../../dicom-parser.js';
import * as cornerstone from 'cornerstone-core';

@@ -110,4 +109,2 @@ function metaDataProvider (type, imageId) {

cornerstone.metaData.addProvider(metaDataProvider);
export default metaDataProvider;

@@ -1,3 +0,2 @@

import $ from '../jquery.js';
import * as dicomParser from '../dicom-parser.js';
import { dicomParser } from '../../externalModules.js';
import { xhrRequest } from '../internal/index.js';

@@ -29,15 +28,11 @@

// loads the dicom dataset from the wadouri sp
function load (uri, loadRequest, imageId) {
loadRequest = loadRequest || xhrRequest;
// loads the dicom dataset from the wadouri sp
function load (uri, loadRequest = xhrRequest, imageId) {
// if already loaded return it right away
if (loadedDataSets[uri]) {
// console.log('using loaded dataset ' + uri);
const alreadyLoadedpromise = $.Deferred();
loadedDataSets[uri].cacheCount++;
alreadyLoadedpromise.resolve(loadedDataSets[uri].dataSet);
return alreadyLoadedpromise;
return new Promise((resolve) => {
loadedDataSets[uri].cacheCount++;
resolve(loadedDataSets[uri].dataSet);
});
}

@@ -51,41 +46,36 @@

// console.log('loading ' + uri);
// This uri is not loaded or being loaded, load it via an xhrRequest
const promise = loadRequest(uri, imageId);
const loadDICOMPromise = loadRequest(uri, imageId);
// handle success and failure of the XHR request load
const loadDeferred = $.Deferred();
const promise = new Promise((resolve, reject) => {
loadDICOMPromise.then(function (dicomPart10AsArrayBuffer/* , xhr*/) {
const byteArray = new Uint8Array(dicomPart10AsArrayBuffer);
promise.then(function (dicomPart10AsArrayBuffer/* , xhr*/) {
const byteArray = new Uint8Array(dicomPart10AsArrayBuffer);
// Reject the promise if parsing the dicom file fails
let dataSet;
// Reject the promise if parsing the dicom file fails
let dataSet;
try {
dataSet = dicomParser.parseDicom(byteArray);
} catch (error) {
return reject(error);
}
try {
dataSet = dicomParser.parseDicom(byteArray);
} catch (error) {
loadDeferred.reject(error);
loadedDataSets[uri] = {
dataSet,
cacheCount: 1
};
return;
}
loadedDataSets[uri] = {
dataSet,
cacheCount: 1
};
loadDeferred.resolve(dataSet);
// done loading, remove the promise
delete promises[uri];
}, function (error) {
loadDeferred.reject(error);
}).always(function () {
// error thrown, remove the promise
delete promises[uri];
resolve(dataSet);
}, (error) => {
reject(error);
}).then(() => {
// Remove the promise regardless of success or failure
delete promises[uri];
});
});
promises[uri] = loadDeferred;
promises[uri] = promise;
return loadDeferred;
return promise;
}

@@ -92,0 +82,0 @@

@@ -1,2 +0,2 @@

import * as dicomParser from '../dicom-parser.js';
import { dicomParser } from '../../externalModules.js';

@@ -3,0 +3,0 @@ /**

import { getImagePixelModule,
getLUTs,
getModalityLUTOutputPixelRepresentation,
getNumberValues,
metaDataProvider } from './metaData/index.js';
getLUTs,
getModalityLUTOutputPixelRepresentation,
getNumberValues,
metaDataProvider } from './metaData/index.js';

@@ -13,6 +13,7 @@ import dataSetCacheManager from './dataSetCacheManager.js';

import { loadImageFromPromise,
getLoaderForScheme,
loadImage } from './loadImage.js';
getLoaderForScheme,
loadImage } from './loadImage.js';
import parseImageId from './parseImageId.js';
import unpackBinaryFrame from './unpackBinaryFrame.js';
import register from './register.js';

@@ -38,3 +39,4 @@ const metaData = {

parseImageId,
unpackBinaryFrame
unpackBinaryFrame,
register
};

@@ -1,2 +0,1 @@

import $ from '../jquery.js';
import parseImageId from './parseImageId.js';

@@ -10,17 +9,17 @@ import fileManager from './fileManager.js';

// create a deferred object
const deferred = $.Deferred();
return new Promise((resolve, reject) => {
const fileReader = new FileReader();
const fileReader = new FileReader();
fileReader.onload = (e) => {
const dicomPart10AsArrayBuffer = e.target.result;
fileReader.onload = function (e) {
const dicomPart10AsArrayBuffer = e.target.result;
resolve(dicomPart10AsArrayBuffer);
};
deferred.resolve(dicomPart10AsArrayBuffer);
};
fileReader.readAsArrayBuffer(file);
fileReader.onerror = reject;
return deferred.promise();
fileReader.readAsArrayBuffer(file);
});
}
export default loadFileRequest;

@@ -1,3 +0,2 @@

import $ from '../jquery.js';
import * as cornerstone from 'cornerstone-core';
import { $ } from '../../externalModules.js';
import createImage from '../createImage.js';

@@ -29,10 +28,6 @@ import parseImageId from './parseImageId.js';

return getUncompressedImageFrame(dataSet, frameIndex);
}
function loadImageFromPromise (dataSetPromise, imageId, frame, sharedCacheKey, options) {
function loadImageFromPromise (dataSetPromise, imageId, frame = 0, sharedCacheKey, options) {
const start = new Date().getTime();
frame = frame || 0;
const deferred = $.Deferred();

@@ -48,2 +43,3 @@

image.data = dataSet;
image.sharedCacheKey = sharedCacheKey;
const end = new Date().getTime();

@@ -55,2 +51,4 @@

deferred.resolve(image);
}, function (error) {
deferred.reject(error);
});

@@ -64,2 +62,27 @@ }, function (error) {

function loadImageFromDataSet (dataSet, imageId, frame = 0, sharedCacheKey, options) {
const start = new Date().getTime();
const deferred = $.Deferred();
const pixelData = getPixelData(dataSet, frame);
const transferSyntax = dataSet.string('x00020010');
const loadEnd = new Date().getTime();
const imagePromise = createImage(imageId, pixelData, transferSyntax, options);
imagePromise.then((image) => {
image.data = dataSet;
image.sharedCacheKey = sharedCacheKey;
const end = new Date().getTime();
image.loadTimeInMS = loadEnd - start;
image.totalTimeInMS = end - start;
addDecache(image);
deferred.resolve(image);
}, function (error) {
deferred.reject(error);
});
return deferred;
}
function getLoaderForScheme (scheme) {

@@ -79,15 +102,13 @@ if (scheme === 'dicomweb' || scheme === 'wadouri') {

if (dataSetCacheManager.isLoaded(parsedImageId.url)) {
return loadImageFromPromise(dataSetCacheManager.load(parsedImageId.url, loader, imageId), imageId, parsedImageId.frame, parsedImageId.url, options);
const dataSet = dataSetCacheManager.get(parsedImageId.url, loader, imageId);
return loadImageFromDataSet(dataSet, imageId, parsedImageId.frame, parsedImageId.url, options);
}
// load the dataSet via the dataSetCacheManager
return loadImageFromPromise(dataSetCacheManager.load(parsedImageId.url, loader, imageId), imageId, parsedImageId.frame, parsedImageId.url, options);
const dataSetPromise = dataSetCacheManager.load(parsedImageId.url, loader, imageId);
return loadImageFromPromise(dataSetPromise, imageId, parsedImageId.frame, parsedImageId.url, options);
}
// register dicomweb and wadouri image loader prefixes
cornerstone.registerImageLoader('dicomweb', loadImage);
cornerstone.registerImageLoader('wadouri', loadImage);
cornerstone.registerImageLoader('dicomfile', loadImage);
export { loadImageFromPromise, getLoaderForScheme };
export default loadImage;
export { loadImageFromPromise, getLoaderForScheme, loadImage };

@@ -1,3 +0,1 @@

function getLutDescriptor (dataSet, tag) {

@@ -55,3 +53,2 @@ if (!dataSet.elements[tag] || dataSet.elements[tag].length !== 6) {

function getImagePixelModule (dataSet) {
const imagePixelModule = {

@@ -74,5 +71,4 @@ samplesPerPixel: dataSet.uint16('x00280002'),

return imagePixelModule;
}
export default getImagePixelModule;

@@ -1,3 +0,1 @@

function getLUT (pixelRepresentation, lutDataSet) {

@@ -4,0 +2,0 @@ let numLUTEntries = lutDataSet.uint16('x00283002', 0);

@@ -0,1 +1,2 @@

import { dicomParser } from '../../../externalModules.js';
import getNumberValues from './getNumberValues.js';

@@ -7,4 +8,2 @@ import parseImageId from '../parseImageId.js';

import getModalityLUTOutputPixelRepresentation from './getModalityLUTOutputPixelRepresentation.js';
import * as dicomParser from '../../dicom-parser.js';
import * as cornerstone from 'cornerstone-core';

@@ -99,8 +98,4 @@ function metaDataProvider (type, imageId) {

}
}
// register our metadata provider
cornerstone.metaData.addProvider(metaDataProvider);
export default metaDataProvider;

@@ -1,3 +0,1 @@

function parseImageId (imageId) {

@@ -4,0 +2,0 @@ // build a url by parsing out the url scheme and frame index from the imageId

@@ -1,2 +0,1 @@

import $ from './jquery.js';
import { getOptions } from './internal/options.js';

@@ -204,3 +203,9 @@

const deferred = $.Deferred();
let deferred = {};
const promise = new Promise((resolve, reject) => {
deferred = {
resolve,
reject
};
});

@@ -211,3 +216,3 @@ // find the right spot to insert this decode task (based on priority)

for (i = 0; i < tasks.length; i++) {
if (tasks[i].priority <= priority) {
if (tasks[i].priority < priority) {
break;

@@ -236,3 +241,3 @@ }

taskId,
promise: deferred.promise()
promise
};

@@ -259,3 +264,3 @@ }

for (i = 0; i < tasks.length; i++) {
if (tasks[i].priority <= priority) {
if (tasks[i].priority < priority) {
break;

@@ -288,3 +293,3 @@ }

task.promise.reject(reason);
task.deferred.reject(reason);

@@ -291,0 +296,0 @@ return true;

@@ -1,1 +0,1 @@

export default '0.14.7';
export default '0.15.0';

@@ -59,3 +59,3 @@ import decodeLittleEndian from './decoders/decodeLittleEndian.js';

/* Don't know if these work...
/* Don't know if these work...
// JPEG 2000 Part 2 Multicomponent Image Compression (Lossless Only)

@@ -62,0 +62,0 @@ else if(transferSyntax === "1.2.840.10008.1.2.4.92")

@@ -24,3 +24,3 @@

}
// untested!
// untested!
imageFrame.pixelData = new Uint8Array(decompressedData.buffer);

@@ -27,0 +27,0 @@

import { initializeJPEG2000 } from './decoders/decodeJPEG2000.js';
import { initializeJPEGLS } from './decoders/decodeJPEGLS.js';
import getMinMax from './getMinMax.js';
import getMinMax from '../../shared/getMinMax.js';
import decodeImageFrame from './decodeImageFrame.js';

@@ -5,0 +5,0 @@

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is too big to display

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc