@cornerstonejs/dicom-image-loader 2.0.0-beta.2 → 2.0.0-beta.21

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (248) hide show
  1. package/dist/920.bundle.min.js +3 -0
  2. package/dist/920.bundle.min.js.LICENSE.txt +5 -0
  3. package/dist/920.bundle.min.js.map +1 -0
  4. package/dist/cornerstoneDICOMImageLoader.bundle.min.js +1 -1
  5. package/dist/cornerstoneDICOMImageLoader.bundle.min.js.map +1 -1
  6. package/dist/dynamic-import/{65916ef3def695744bda.wasm → 031089e563a18ada8441.wasm} +0 -0
  7. package/dist/dynamic-import/20fc4c659b85ccd2a9c0.wasm +0 -0
  8. package/dist/dynamic-import/584.min.js +2 -0
  9. package/dist/dynamic-import/584.min.js.map +1 -0
  10. package/dist/dynamic-import/610.min.js +2 -0
  11. package/dist/dynamic-import/610.min.js.map +1 -0
  12. package/dist/dynamic-import/918.min.js +2 -0
  13. package/dist/dynamic-import/918.min.js.map +1 -0
  14. package/dist/dynamic-import/958.min.js +3 -0
  15. package/dist/dynamic-import/958.min.js.LICENSE.txt +5 -0
  16. package/dist/dynamic-import/958.min.js.map +1 -0
  17. package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js +1 -1
  18. package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js.map +1 -1
  19. package/dist/esm/codecs/jpeg.d.ts +1 -0
  20. package/dist/esm/codecs/jpeg.js +890 -0
  21. package/dist/esm/codecs/jpegLossless.d.ts +7 -0
  22. package/dist/esm/codecs/jpegLossless.js +1219 -0
  23. package/dist/esm/src/constants/transferSyntaxes.d.ts +46 -0
  24. package/dist/esm/src/constants/transferSyntaxes.js +46 -0
  25. package/dist/esm/src/decodeImageFrameWorker.d.ts +1 -0
  26. package/dist/esm/src/decodeImageFrameWorker.js +262 -0
  27. package/dist/esm/src/externalModules.d.ts +5 -0
  28. package/dist/esm/src/externalModules.js +44 -0
  29. package/dist/esm/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.d.ts +3 -0
  30. package/dist/esm/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.js +77 -0
  31. package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.d.ts +2 -0
  32. package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.js +21 -0
  33. package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.d.ts +2 -0
  34. package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.js +28 -0
  35. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.d.ts +2 -0
  36. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.js +44 -0
  37. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.d.ts +2 -0
  38. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.js +33 -0
  39. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.d.ts +2 -0
  40. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.js +35 -0
  41. package/dist/esm/src/imageLoader/colorSpaceConverters/index.d.ts +7 -0
  42. package/dist/esm/src/imageLoader/colorSpaceConverters/index.js +7 -0
  43. package/dist/esm/src/imageLoader/configure.d.ts +3 -0
  44. package/dist/esm/src/imageLoader/configure.js +11 -0
  45. package/dist/esm/src/imageLoader/convertColorSpace.d.ts +1 -0
  46. package/dist/esm/src/imageLoader/convertColorSpace.js +40 -0
  47. package/dist/esm/src/imageLoader/createImage.d.ts +5 -0
  48. package/dist/esm/src/imageLoader/createImage.js +241 -0
  49. package/dist/esm/src/imageLoader/decodeImageFrame.d.ts +3 -0
  50. package/dist/esm/src/imageLoader/decodeImageFrame.js +63 -0
  51. package/dist/esm/src/imageLoader/decodeJPEGBaseline8BitColor.d.ts +4 -0
  52. package/dist/esm/src/imageLoader/decodeJPEGBaseline8BitColor.js +64 -0
  53. package/dist/esm/src/imageLoader/getImageFrame.d.ts +3 -0
  54. package/dist/esm/src/imageLoader/getImageFrame.js +26 -0
  55. package/dist/esm/src/imageLoader/getInstanceModule.d.ts +3 -0
  56. package/dist/esm/src/imageLoader/getInstanceModule.js +40 -0
  57. package/dist/esm/src/imageLoader/getMinMax.d.ts +4 -0
  58. package/dist/esm/src/imageLoader/getMinMax.js +15 -0
  59. package/dist/esm/src/imageLoader/getScalingParameters.d.ts +6 -0
  60. package/dist/esm/src/imageLoader/getScalingParameters.js +16 -0
  61. package/dist/esm/src/imageLoader/imageIdToURI.d.ts +1 -0
  62. package/dist/esm/src/imageLoader/imageIdToURI.js +4 -0
  63. package/dist/esm/src/imageLoader/index.d.ts +94 -0
  64. package/dist/esm/src/imageLoader/index.js +36 -0
  65. package/dist/esm/src/imageLoader/internal/index.d.ts +10 -0
  66. package/dist/esm/src/imageLoader/internal/index.js +10 -0
  67. package/dist/esm/src/imageLoader/internal/options.d.ts +3 -0
  68. package/dist/esm/src/imageLoader/internal/options.js +19 -0
  69. package/dist/esm/src/imageLoader/internal/rangeRequest.d.ts +9 -0
  70. package/dist/esm/src/imageLoader/internal/rangeRequest.js +121 -0
  71. package/dist/esm/src/imageLoader/internal/streamRequest.d.ts +2 -0
  72. package/dist/esm/src/imageLoader/internal/streamRequest.js +92 -0
  73. package/dist/esm/src/imageLoader/internal/xhrRequest.d.ts +3 -0
  74. package/dist/esm/src/imageLoader/internal/xhrRequest.js +102 -0
  75. package/dist/esm/src/imageLoader/isColorConversionRequired.d.ts +1 -0
  76. package/dist/esm/src/imageLoader/isColorConversionRequired.js +22 -0
  77. package/dist/esm/src/imageLoader/isJPEGBaseline8BitColor.d.ts +3 -0
  78. package/dist/esm/src/imageLoader/isJPEGBaseline8BitColor.js +9 -0
  79. package/dist/esm/src/imageLoader/isNMReconstructable.d.ts +1 -0
  80. package/dist/esm/src/imageLoader/isNMReconstructable.js +3 -0
  81. package/dist/esm/src/imageLoader/registerLoaders.d.ts +2 -0
  82. package/dist/esm/src/imageLoader/registerLoaders.js +7 -0
  83. package/dist/esm/src/imageLoader/wadors/combineFrameInstance.d.ts +12 -0
  84. package/dist/esm/src/imageLoader/wadors/combineFrameInstance.js +44 -0
  85. package/dist/esm/src/imageLoader/wadors/extractMultipart.d.ts +23 -0
  86. package/dist/esm/src/imageLoader/wadors/extractMultipart.js +73 -0
  87. package/dist/esm/src/imageLoader/wadors/findIndexOfString.d.ts +2 -0
  88. package/dist/esm/src/imageLoader/wadors/findIndexOfString.js +32 -0
  89. package/dist/esm/src/imageLoader/wadors/getImageQualityStatus.d.ts +3 -0
  90. package/dist/esm/src/imageLoader/wadors/getImageQualityStatus.js +8 -0
  91. package/dist/esm/src/imageLoader/wadors/getPixelData.d.ts +26 -0
  92. package/dist/esm/src/imageLoader/wadors/getPixelData.js +35 -0
  93. package/dist/esm/src/imageLoader/wadors/getTagValue.d.ts +1 -0
  94. package/dist/esm/src/imageLoader/wadors/getTagValue.js +9 -0
  95. package/dist/esm/src/imageLoader/wadors/index.d.ts +25 -0
  96. package/dist/esm/src/imageLoader/wadors/index.js +21 -0
  97. package/dist/esm/src/imageLoader/wadors/loadImage.d.ts +25 -0
  98. package/dist/esm/src/imageLoader/wadors/loadImage.js +125 -0
  99. package/dist/esm/src/imageLoader/wadors/loadImage_test.d.ts +1 -0
  100. package/dist/esm/src/imageLoader/wadors/loadImage_test.js +41 -0
  101. package/dist/esm/src/imageLoader/wadors/metaData/NMHelpers.d.ts +5 -0
  102. package/dist/esm/src/imageLoader/wadors/metaData/NMHelpers.js +38 -0
  103. package/dist/esm/src/imageLoader/wadors/metaData/USHelpers.d.ts +19 -0
  104. package/dist/esm/src/imageLoader/wadors/metaData/USHelpers.js +46 -0
  105. package/dist/esm/src/imageLoader/wadors/metaData/extractPositioningFromMetadata.d.ts +3 -0
  106. package/dist/esm/src/imageLoader/wadors/metaData/extractPositioningFromMetadata.js +18 -0
  107. package/dist/esm/src/imageLoader/wadors/metaData/getFirstNumberValue.d.ts +2 -0
  108. package/dist/esm/src/imageLoader/wadors/metaData/getFirstNumberValue.js +6 -0
  109. package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.d.ts +3 -0
  110. package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.js +9 -0
  111. package/dist/esm/src/imageLoader/wadors/metaData/getNumberValue.d.ts +3 -0
  112. package/dist/esm/src/imageLoader/wadors/metaData/getNumberValue.js +9 -0
  113. package/dist/esm/src/imageLoader/wadors/metaData/getNumberValues.d.ts +3 -0
  114. package/dist/esm/src/imageLoader/wadors/metaData/getNumberValues.js +20 -0
  115. package/dist/esm/src/imageLoader/wadors/metaData/getOverlayPlaneModule.d.ts +4 -0
  116. package/dist/esm/src/imageLoader/wadors/metaData/getOverlayPlaneModule.js +38 -0
  117. package/dist/esm/src/imageLoader/wadors/metaData/getSequenceItems.d.ts +3 -0
  118. package/dist/esm/src/imageLoader/wadors/metaData/getSequenceItems.js +14 -0
  119. package/dist/esm/src/imageLoader/wadors/metaData/getValue.d.ts +3 -0
  120. package/dist/esm/src/imageLoader/wadors/metaData/getValue.js +14 -0
  121. package/dist/esm/src/imageLoader/wadors/metaData/index.d.ts +7 -0
  122. package/dist/esm/src/imageLoader/wadors/metaData/index.js +7 -0
  123. package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.d.ts +14 -0
  124. package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.js +261 -0
  125. package/dist/esm/src/imageLoader/wadors/metaDataManager.d.ts +14 -0
  126. package/dist/esm/src/imageLoader/wadors/metaDataManager.js +50 -0
  127. package/dist/esm/src/imageLoader/wadors/register.d.ts +1 -0
  128. package/dist/esm/src/imageLoader/wadors/register.js +6 -0
  129. package/dist/esm/src/imageLoader/wadors/retrieveMultiframeMetadata.d.ts +15 -0
  130. package/dist/esm/src/imageLoader/wadors/retrieveMultiframeMetadata.js +26 -0
  131. package/dist/esm/src/imageLoader/wadouri/combineFrameInstanceDataset.d.ts +22 -0
  132. package/dist/esm/src/imageLoader/wadouri/combineFrameInstanceDataset.js +69 -0
  133. package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.d.ts +31 -0
  134. package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.js +142 -0
  135. package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager_test.d.ts +1 -0
  136. package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager_test.js +10 -0
  137. package/dist/esm/src/imageLoader/wadouri/dataset-from-partial-content.d.ts +6 -0
  138. package/dist/esm/src/imageLoader/wadouri/dataset-from-partial-content.js +56 -0
  139. package/dist/esm/src/imageLoader/wadouri/fileManager.d.ts +11 -0
  140. package/dist/esm/src/imageLoader/wadouri/fileManager.js +20 -0
  141. package/dist/esm/src/imageLoader/wadouri/getEncapsulatedImageFrame.d.ts +2 -0
  142. package/dist/esm/src/imageLoader/wadouri/getEncapsulatedImageFrame.js +33 -0
  143. package/dist/esm/src/imageLoader/wadouri/getPixelData.d.ts +3 -0
  144. package/dist/esm/src/imageLoader/wadouri/getPixelData.js +13 -0
  145. package/dist/esm/src/imageLoader/wadouri/getUncompressedImageFrame.d.ts +3 -0
  146. package/dist/esm/src/imageLoader/wadouri/getUncompressedImageFrame.js +47 -0
  147. package/dist/esm/src/imageLoader/wadouri/index.d.ts +42 -0
  148. package/dist/esm/src/imageLoader/wadouri/index.js +31 -0
  149. package/dist/esm/src/imageLoader/wadouri/loadFileRequest.d.ts +2 -0
  150. package/dist/esm/src/imageLoader/wadouri/loadFileRequest.js +17 -0
  151. package/dist/esm/src/imageLoader/wadouri/loadImage.d.ts +9 -0
  152. package/dist/esm/src/imageLoader/wadouri/loadImage.js +104 -0
  153. package/dist/esm/src/imageLoader/wadouri/metaData/USHelpers.d.ts +2 -0
  154. package/dist/esm/src/imageLoader/wadouri/metaData/USHelpers.js +44 -0
  155. package/dist/esm/src/imageLoader/wadouri/metaData/extractPositioningFromDataset.d.ts +6 -0
  156. package/dist/esm/src/imageLoader/wadouri/metaData/extractPositioningFromDataset.js +80 -0
  157. package/dist/esm/src/imageLoader/wadouri/metaData/getImagePixelModule.d.ts +4 -0
  158. package/dist/esm/src/imageLoader/wadouri/metaData/getImagePixelModule.js +79 -0
  159. package/dist/esm/src/imageLoader/wadouri/metaData/getLUTs.d.ts +4 -0
  160. package/dist/esm/src/imageLoader/wadouri/metaData/getLUTs.js +44 -0
  161. package/dist/esm/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.d.ts +3 -0
  162. package/dist/esm/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.js +30 -0
  163. package/dist/esm/src/imageLoader/wadouri/metaData/getNumberValues.d.ts +3 -0
  164. package/dist/esm/src/imageLoader/wadouri/metaData/getNumberValues.js +16 -0
  165. package/dist/esm/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.d.ts +4 -0
  166. package/dist/esm/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.js +36 -0
  167. package/dist/esm/src/imageLoader/wadouri/metaData/index.d.ts +5 -0
  168. package/dist/esm/src/imageLoader/wadouri/metaData/index.js +5 -0
  169. package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.d.ts +2 -0
  170. package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.js +223 -0
  171. package/dist/esm/src/imageLoader/wadouri/parseImageId.d.ts +8 -0
  172. package/dist/esm/src/imageLoader/wadouri/parseImageId.js +20 -0
  173. package/dist/esm/src/imageLoader/wadouri/register.d.ts +2 -0
  174. package/dist/esm/src/imageLoader/wadouri/register.js +8 -0
  175. package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.d.ts +17 -0
  176. package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.js +57 -0
  177. package/dist/esm/src/imageLoader/wadouri/unpackBinaryFrame.d.ts +3 -0
  178. package/dist/esm/src/imageLoader/wadouri/unpackBinaryFrame.js +14 -0
  179. package/dist/esm/src/shared/decoders/decodeBigEndian.d.ts +4 -0
  180. package/dist/esm/src/shared/decoders/decodeBigEndian.js +28 -0
  181. package/dist/esm/src/shared/decoders/decodeHTJ2K.d.ts +5 -0
  182. package/dist/esm/src/shared/decoders/decodeHTJ2K.js +109 -0
  183. package/dist/esm/src/shared/decoders/decodeJPEG2000.d.ts +5 -0
  184. package/dist/esm/src/shared/decoders/decodeJPEG2000.js +93 -0
  185. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-js.d.ts +6 -0
  186. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-js.js +34 -0
  187. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.d.ts +1 -0
  188. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.js +1 -0
  189. package/dist/esm/src/shared/decoders/decodeJPEGBaseline8Bit.d.ts +3 -0
  190. package/dist/esm/src/shared/decoders/decodeJPEGBaseline8Bit.js +62 -0
  191. package/dist/esm/src/shared/decoders/decodeJPEGLS.d.ts +5 -0
  192. package/dist/esm/src/shared/decoders/decodeJPEGLS.js +84 -0
  193. package/dist/esm/src/shared/decoders/decodeJPEGLossless.d.ts +6 -0
  194. package/dist/esm/src/shared/decoders/decodeJPEGLossless.js +39 -0
  195. package/dist/esm/src/shared/decoders/decodeLittleEndian.d.ts +4 -0
  196. package/dist/esm/src/shared/decoders/decodeLittleEndian.js +29 -0
  197. package/dist/esm/src/shared/decoders/decodeRLE.d.ts +4 -0
  198. package/dist/esm/src/shared/decoders/decodeRLE.js +128 -0
  199. package/dist/esm/src/shared/getMinMax.d.ts +6 -0
  200. package/dist/esm/src/shared/getMinMax.js +16 -0
  201. package/dist/esm/src/shared/getMinMax_test.d.ts +1 -0
  202. package/dist/esm/src/shared/getMinMax_test.js +9 -0
  203. package/dist/esm/src/shared/getPixelDataTypeFromMinMax.d.ts +2 -0
  204. package/dist/esm/src/shared/getPixelDataTypeFromMinMax.js +22 -0
  205. package/dist/esm/src/shared/isColorImage.d.ts +1 -0
  206. package/dist/esm/src/shared/isColorImage.js +10 -0
  207. package/dist/esm/src/shared/scaling/bilinear.d.ts +1 -0
  208. package/dist/esm/src/shared/scaling/bilinear.js +32 -0
  209. package/dist/esm/src/shared/scaling/replicate.d.ts +1 -0
  210. package/dist/esm/src/shared/scaling/replicate.js +20 -0
  211. package/dist/esm/src/shared/scaling/scaleArray.d.ts +2 -0
  212. package/dist/esm/src/shared/scaling/scaleArray.js +15 -0
  213. package/dist/esm/src/types/DICOMLoaderDataSetWithFetchMore.d.ts +9 -0
  214. package/dist/esm/src/types/DICOMLoaderDataSetWithFetchMore.js +1 -0
  215. package/dist/esm/src/types/DICOMLoaderIImage.d.ts +12 -0
  216. package/dist/esm/src/types/DICOMLoaderIImage.js +1 -0
  217. package/dist/esm/src/types/DICOMLoaderImageOptions.d.ts +23 -0
  218. package/dist/esm/src/types/DICOMLoaderImageOptions.js +1 -0
  219. package/dist/esm/src/types/LoadRequestFunction.d.ts +1 -0
  220. package/dist/esm/src/types/LoadRequestFunction.js +1 -0
  221. package/dist/esm/src/types/LoaderDecodeOptions.d.ts +2 -0
  222. package/dist/esm/src/types/LoaderDecodeOptions.js +1 -0
  223. package/dist/esm/src/types/LoaderOptions.d.ts +18 -0
  224. package/dist/esm/src/types/LoaderOptions.js +1 -0
  225. package/dist/esm/src/types/LutType.d.ts +6 -0
  226. package/dist/esm/src/types/LutType.js +1 -0
  227. package/dist/esm/src/types/WADORSMetaData.d.ts +4 -0
  228. package/dist/esm/src/types/WADORSMetaData.js +1 -0
  229. package/dist/esm/src/types/WebWorkerTypes.d.ts +64 -0
  230. package/dist/esm/src/types/WebWorkerTypes.js +1 -0
  231. package/dist/esm/src/types/XHRRequest.d.ts +16 -0
  232. package/dist/esm/src/types/XHRRequest.js +1 -0
  233. package/dist/esm/src/types/index.d.ts +11 -0
  234. package/dist/esm/src/types/index.js +1 -0
  235. package/dist/esm/src/version.d.ts +2 -0
  236. package/dist/esm/src/version.js +1 -0
  237. package/package.json +24 -17
  238. package/dist/cornerstoneDICOMImageLoaderNoWebWorkers.bundle.min.js +0 -2
  239. package/dist/cornerstoneDICOMImageLoaderNoWebWorkers.bundle.min.js.map +0 -1
  240. package/dist/dynamic-import/610.min.worker.js +0 -2
  241. package/dist/dynamic-import/610.min.worker.js.map +0 -1
  242. package/dist/dynamic-import/75788f12450d4c5ed494.wasm +0 -0
  243. package/dist/dynamic-import/945.min.worker.js +0 -2
  244. package/dist/dynamic-import/945.min.worker.js.map +0 -1
  245. package/dist/dynamic-import/index.worker.e62ecca63f1a2e124230.worker.js +0 -2
  246. package/dist/dynamic-import/index.worker.e62ecca63f1a2e124230.worker.js.map +0 -1
  247. package/dist/index.worker.bundle.min.worker.js +0 -2
  248. package/dist/index.worker.bundle.min.worker.js.map +0 -1
@@ -0,0 +1,94 @@
1
+ import { convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR } from './colorSpaceConverters/index';
2
+ import { default as wadouri } from './wadouri/index';
3
+ import { default as wadors } from './wadors/index';
4
+ import { default as configure } from './configure';
5
+ import { default as convertColorSpace } from './convertColorSpace';
6
+ import { default as createImage } from './createImage';
7
+ import { default as decodeJPEGBaseline8BitColor } from './decodeJPEGBaseline8BitColor';
8
+ import { default as getImageFrame } from './getImageFrame';
9
+ import { default as getMinMax } from '../shared/getMinMax';
10
+ import { default as isColorImage } from '../shared/isColorImage';
11
+ import { default as isJPEGBaseline8BitColor } from './isJPEGBaseline8BitColor';
12
+ import { default as getPixelData } from './wadors/getPixelData';
13
+ import { internal } from './internal/index';
14
+ import { default as external } from '../externalModules';
15
+ declare const cornerstoneDICOMImageLoader: {
16
+ convertRGBColorByPixel: typeof convertRGBColorByPixel;
17
+ convertRGBColorByPlane: typeof convertRGBColorByPlane;
18
+ convertYBRFullByPixel: typeof convertYBRFullByPixel;
19
+ convertYBRFullByPlane: typeof convertYBRFullByPlane;
20
+ convertPALETTECOLOR: typeof convertPALETTECOLOR;
21
+ wadouri: {
22
+ metaData: {
23
+ getImagePixelModule: typeof import("./wadouri/metaData").getImagePixelModule;
24
+ getLUTs: typeof import("./wadouri/metaData").getLUTs;
25
+ getModalityLUTOutputPixelRepresentation: typeof import("./wadouri/metaData").getModalityLUTOutputPixelRepresentation;
26
+ getNumberValues: typeof import("./wadouri/metaData").getNumberValues;
27
+ metaDataProvider: typeof import("./wadouri/metaData").metaDataProvider;
28
+ };
29
+ dataSetCacheManager: {
30
+ isLoaded: (uri: string) => boolean;
31
+ load: (uri: string, loadRequest: import("../types").LoadRequestFunction, imageId: string) => import("./wadouri/dataSetCacheManager").CornerstoneWadoLoaderCachedPromise;
32
+ unload: (uri: string) => void;
33
+ getInfo: typeof import("./wadouri/dataSetCacheManager").getInfo;
34
+ purge: () => void;
35
+ get: (uri: string) => import("dicom-parser").DataSet;
36
+ update: (uri: string, dataSet: import("dicom-parser").DataSet) => void;
37
+ };
38
+ fileManager: {
39
+ add: (file: Blob) => string;
40
+ get: (index: number) => Blob;
41
+ remove: (index: number) => void;
42
+ purge: () => void;
43
+ };
44
+ getEncapsulatedImageFrame: typeof import("./wadouri/getEncapsulatedImageFrame").default;
45
+ getUncompressedImageFrame: typeof import("./wadouri/getUncompressedImageFrame").default;
46
+ loadFileRequest: typeof import("./wadouri/loadFileRequest").default;
47
+ loadImageFromPromise: typeof import("./wadouri/loadImage").loadImageFromPromise;
48
+ getLoaderForScheme: typeof import("./wadouri/loadImage").getLoaderForScheme;
49
+ loadImage: typeof import("./wadouri/loadImage").loadImage;
50
+ parseImageId: typeof import("./wadouri/parseImageId").default;
51
+ unpackBinaryFrame: typeof import("./wadouri/unpackBinaryFrame").default;
52
+ register: typeof import("./wadouri/register").default;
53
+ };
54
+ wadors: {
55
+ metaData: {
56
+ getNumberString: typeof import("./wadors/metaData").getNumberString;
57
+ getNumberValue: typeof import("./wadors/metaData").getNumberValue;
58
+ getNumberValues: typeof import("./wadors/metaData").getNumberValues;
59
+ getValue: typeof import("./wadors/metaData").getValue;
60
+ metaDataProvider: typeof import("./wadors/metaData").metaDataProvider;
61
+ };
62
+ findIndexOfString: typeof import("./wadors/findIndexOfString").default;
63
+ getPixelData: typeof getPixelData;
64
+ loadImage: typeof import("./wadors/loadImage").default;
65
+ metaDataManager: {
66
+ add: (imageId: string, metadata: import("../types").WADORSMetaData) => void;
67
+ get: (imageId: string) => import("../types").WADORSMetaData;
68
+ remove: (imageId: any) => void;
69
+ purge: () => void;
70
+ };
71
+ register: typeof import("./wadors/register").default;
72
+ };
73
+ configure: typeof configure;
74
+ convertColorSpace: typeof convertColorSpace;
75
+ createImage: typeof createImage;
76
+ decodeJPEGBaseline8BitColor: typeof decodeJPEGBaseline8BitColor;
77
+ getImageFrame: typeof getImageFrame;
78
+ getPixelData: typeof getPixelData;
79
+ getMinMax: typeof getMinMax;
80
+ isColorImage: typeof isColorImage;
81
+ isJPEGBaseline8BitColor: typeof isJPEGBaseline8BitColor;
82
+ internal: {
83
+ xhrRequest: typeof import("./internal/xhrRequest").default;
84
+ streamRequest: typeof import("./internal/streamRequest").default;
85
+ setOptions: typeof import("./internal/options").setOptions;
86
+ getOptions: typeof import("./internal/options").getOptions;
87
+ };
88
+ external: {
89
+ cornerstone: any;
90
+ dicomParser: any;
91
+ };
92
+ };
93
+ export { convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR, wadouri, wadors, configure, convertColorSpace, createImage, decodeJPEGBaseline8BitColor, getImageFrame, getPixelData, getMinMax, isColorImage, isJPEGBaseline8BitColor, internal, external, };
94
+ export default cornerstoneDICOMImageLoader;
@@ -0,0 +1,36 @@
1
+ import { convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR, } from './colorSpaceConverters/index';
2
+ import { default as wadouri } from './wadouri/index';
3
+ import { default as wadors } from './wadors/index';
4
+ import { default as configure } from './configure';
5
+ import { default as convertColorSpace } from './convertColorSpace';
6
+ import { default as createImage } from './createImage';
7
+ import { default as decodeJPEGBaseline8BitColor } from './decodeJPEGBaseline8BitColor';
8
+ import { default as getImageFrame } from './getImageFrame';
9
+ import { default as getMinMax } from '../shared/getMinMax';
10
+ import { default as isColorImage } from '../shared/isColorImage';
11
+ import { default as isJPEGBaseline8BitColor } from './isJPEGBaseline8BitColor';
12
+ import { default as getPixelData } from './wadors/getPixelData';
13
+ import { internal } from './internal/index';
14
+ import { default as external } from '../externalModules';
15
+ const cornerstoneDICOMImageLoader = {
16
+ convertRGBColorByPixel,
17
+ convertRGBColorByPlane,
18
+ convertYBRFullByPixel,
19
+ convertYBRFullByPlane,
20
+ convertPALETTECOLOR,
21
+ wadouri,
22
+ wadors,
23
+ configure,
24
+ convertColorSpace,
25
+ createImage,
26
+ decodeJPEGBaseline8BitColor,
27
+ getImageFrame,
28
+ getPixelData,
29
+ getMinMax,
30
+ isColorImage,
31
+ isJPEGBaseline8BitColor,
32
+ internal,
33
+ external,
34
+ };
35
+ export { convertRGBColorByPixel, convertRGBColorByPlane, convertYBRFullByPixel, convertYBRFullByPlane, convertPALETTECOLOR, wadouri, wadors, configure, convertColorSpace, createImage, decodeJPEGBaseline8BitColor, getImageFrame, getPixelData, getMinMax, isColorImage, isJPEGBaseline8BitColor, internal, external, };
36
+ export default cornerstoneDICOMImageLoader;
@@ -0,0 +1,10 @@
1
+ import { default as xhrRequest } from './xhrRequest';
2
+ import { default as streamRequest } from './streamRequest';
3
+ import { setOptions, getOptions } from './options';
4
+ declare const internal: {
5
+ xhrRequest: typeof xhrRequest;
6
+ streamRequest: typeof streamRequest;
7
+ setOptions: typeof setOptions;
8
+ getOptions: typeof getOptions;
9
+ };
10
+ export { setOptions, getOptions, xhrRequest, internal, streamRequest };
@@ -0,0 +1,10 @@
1
+ import { default as xhrRequest } from './xhrRequest';
2
+ import { default as streamRequest } from './streamRequest';
3
+ import { setOptions, getOptions } from './options';
4
+ const internal = {
5
+ xhrRequest,
6
+ streamRequest,
7
+ setOptions,
8
+ getOptions,
9
+ };
10
+ export { setOptions, getOptions, xhrRequest, internal, streamRequest };
@@ -0,0 +1,3 @@
1
+ import type { LoaderOptions } from '../../types';
2
+ export declare function setOptions(newOptions: LoaderOptions): void;
3
+ export declare function getOptions(): LoaderOptions;
@@ -0,0 +1,19 @@
1
+ let options = {
2
+ open(xhr, url) {
3
+ xhr.open('get', url, true);
4
+ },
5
+ beforeSend() {
6
+ },
7
+ beforeProcessing(xhr) {
8
+ return Promise.resolve(xhr.response);
9
+ },
10
+ imageCreated() {
11
+ },
12
+ strict: false,
13
+ };
14
+ export function setOptions(newOptions) {
15
+ options = Object.assign(options, newOptions);
16
+ }
17
+ export function getOptions() {
18
+ return options;
19
+ }
@@ -0,0 +1,9 @@
1
+ import type { Enums } from '@cornerstonejs/core';
2
+ import type { LoaderXhrRequestPromise } from '../../types';
3
+ import type { CornerstoneWadoRsLoaderOptions } from '../wadors/loadImage';
4
+ export default function rangeRequest(url: string, imageId: string, defaultHeaders?: Record<string, string>, options?: CornerstoneWadoRsLoaderOptions): LoaderXhrRequestPromise<{
5
+ contentType: string;
6
+ pixelData: Uint8Array;
7
+ imageQualityStatus: Enums.ImageQualityStatus;
8
+ percentComplete: number;
9
+ }>;
@@ -0,0 +1,121 @@
1
+ import { getOptions } from './options';
2
+ import metaDataManager from '../wadors/metaDataManager';
3
+ import extractMultipart from '../wadors/extractMultipart';
4
+ import { getImageQualityStatus } from '../wadors/getImageQualityStatus';
5
+ export default function rangeRequest(url, imageId, defaultHeaders = {}, options = {}) {
6
+ const globalOptions = getOptions();
7
+ const { retrieveOptions = {}, streamingData } = options;
8
+ const chunkSize = streamingData.chunkSize ||
9
+ getValue(imageId, retrieveOptions, 'chunkSize') ||
10
+ 65536;
11
+ const errorInterceptor = (err) => {
12
+ if (typeof globalOptions.errorInterceptor === 'function') {
13
+ const error = new Error('request failed');
14
+ globalOptions.errorInterceptor(error);
15
+ }
16
+ else {
17
+ console.warn('rangeRequest:Caught', err);
18
+ }
19
+ };
20
+ const promise = new Promise(async (resolve, reject) => {
21
+ const headers = Object.assign({}, defaultHeaders);
22
+ Object.keys(headers).forEach(function (key) {
23
+ if (headers[key] === null || headers[key] === undefined) {
24
+ delete headers[key];
25
+ }
26
+ });
27
+ try {
28
+ if (!streamingData.encodedData) {
29
+ streamingData.chunkSize = chunkSize;
30
+ streamingData.rangesFetched = 0;
31
+ }
32
+ const byteRange = getByteRange(streamingData, retrieveOptions);
33
+ const { encodedData, responseHeaders } = await fetchRangeAndAppend(url, headers, byteRange, streamingData);
34
+ const contentType = responseHeaders.get('content-type');
35
+ const { totalBytes } = streamingData;
36
+ const doneAllBytes = totalBytes === encodedData.byteLength;
37
+ const extract = extractMultipart(contentType, encodedData, {
38
+ isPartial: true,
39
+ });
40
+ const imageQualityStatus = getImageQualityStatus(retrieveOptions, doneAllBytes || extract.extractDone);
41
+ resolve({
42
+ ...extract,
43
+ imageQualityStatus,
44
+ percentComplete: extract.extractDone
45
+ ? 100
46
+ : (chunkSize * 100) / totalBytes,
47
+ });
48
+ }
49
+ catch (err) {
50
+ errorInterceptor(err);
51
+ console.error(err);
52
+ reject(err);
53
+ }
54
+ });
55
+ return promise;
56
+ }
57
+ async function fetchRangeAndAppend(url, headers, range, streamingData) {
58
+ if (range) {
59
+ headers = Object.assign(headers, {
60
+ Range: `bytes=${range[0]}-${range[1]}`,
61
+ });
62
+ }
63
+ let { encodedData } = streamingData;
64
+ if (range[1] && encodedData?.byteLength > range[1]) {
65
+ return streamingData;
66
+ }
67
+ const response = await fetch(url, {
68
+ headers,
69
+ signal: undefined,
70
+ });
71
+ const responseArrayBuffer = await response.arrayBuffer();
72
+ const responseTypedArray = new Uint8Array(responseArrayBuffer);
73
+ const { status } = response;
74
+ let newByteArray;
75
+ if (encodedData) {
76
+ newByteArray = new Uint8Array(encodedData.length + responseTypedArray.length);
77
+ newByteArray.set(encodedData, 0);
78
+ newByteArray.set(responseTypedArray, encodedData.length);
79
+ streamingData.rangesFetched = 1;
80
+ }
81
+ else {
82
+ newByteArray = new Uint8Array(responseTypedArray.length);
83
+ newByteArray.set(responseTypedArray, 0);
84
+ streamingData.rangesFetched++;
85
+ }
86
+ streamingData.encodedData = encodedData = newByteArray;
87
+ streamingData.responseHeaders = response.headers;
88
+ const contentRange = response.headers.get('Content-Range');
89
+ if (contentRange) {
90
+ streamingData.totalBytes = Number(contentRange.split('/')[1]);
91
+ }
92
+ else if (status !== 206 || !range) {
93
+ streamingData.totalBytes = encodedData?.byteLength;
94
+ }
95
+ else if (range[1] === '' || encodedData?.length < range[1]) {
96
+ streamingData.totalBytes = encodedData.byteLength;
97
+ }
98
+ else {
99
+ streamingData.totalBytes = Number.MAX_SAFE_INTEGER;
100
+ }
101
+ return streamingData;
102
+ }
103
+ function getValue(imageId, src, attr) {
104
+ const value = src[attr];
105
+ if (typeof value !== 'function') {
106
+ return value;
107
+ }
108
+ const metaData = metaDataManager.get(imageId);
109
+ return value(metaData, imageId);
110
+ }
111
+ function getByteRange(streamingData, retrieveOptions) {
112
+ const { totalBytes, encodedData, chunkSize = 65536 } = streamingData;
113
+ const { rangeIndex = 0 } = retrieveOptions;
114
+ if (rangeIndex === -1 && (!totalBytes || !encodedData)) {
115
+ return [0, ''];
116
+ }
117
+ if (rangeIndex === -1 || encodedData?.byteLength > totalBytes - chunkSize) {
118
+ return [encodedData?.byteLength || 0, ''];
119
+ }
120
+ return [encodedData?.byteLength || 0, chunkSize * (rangeIndex + 1) - 1];
121
+ }
@@ -0,0 +1,2 @@
1
+ import type { CornerstoneWadoRsLoaderOptions } from '../wadors/loadImage';
2
+ export default function streamRequest(url: string, imageId: string, defaultHeaders?: Record<string, string>, options?: CornerstoneWadoRsLoaderOptions): import("packages/core/dist/esm/utilities/ProgressiveIterator").PromiseIterator<unknown>;
@@ -0,0 +1,92 @@
1
+ import { utilities } from '@cornerstonejs/core';
2
+ import { getOptions } from './options';
3
+ import extractMultipart from '../wadors/extractMultipart';
4
+ import { getImageQualityStatus } from '../wadors/getImageQualityStatus';
5
+ const { ProgressiveIterator } = utilities;
6
+ export default function streamRequest(url, imageId, defaultHeaders = {}, options = {}) {
7
+ const globalOptions = getOptions();
8
+ const { retrieveOptions = {}, streamingData = {}, } = options;
9
+ const minChunkSize = retrieveOptions.chunkSize || 128 * 1024;
10
+ const errorInterceptor = (err) => {
11
+ if (typeof globalOptions.errorInterceptor === 'function') {
12
+ const error = new Error('request failed');
13
+ globalOptions.errorInterceptor(error);
14
+ }
15
+ };
16
+ const loadIterator = new ProgressiveIterator('streamRequest');
17
+ loadIterator.generate(async (iterator, reject) => {
18
+ const headers = Object.assign({}, defaultHeaders);
19
+ Object.keys(headers).forEach(function (key) {
20
+ if (headers[key] === null) {
21
+ headers[key] = undefined;
22
+ }
23
+ if (key === 'Accept' && url.indexOf('accept=') !== -1) {
24
+ headers[key] = undefined;
25
+ }
26
+ });
27
+ try {
28
+ const response = await fetch(url, {
29
+ headers: defaultHeaders,
30
+ signal: undefined,
31
+ });
32
+ if (response.status !== 200) {
33
+ throw new Error(`Couldn't retrieve ${url} got status ${response.status}`);
34
+ }
35
+ const responseReader = response.body.getReader();
36
+ const responseHeaders = response.headers;
37
+ const contentType = responseHeaders.get('content-type');
38
+ const totalBytes = Number(responseHeaders.get('Content-Length'));
39
+ let readDone = false;
40
+ let encodedData = streamingData.encodedData;
41
+ let lastSize = streamingData.lastSize || 0;
42
+ streamingData.isPartial = true;
43
+ while (!readDone) {
44
+ const { done, value } = await responseReader.read();
45
+ encodedData = appendChunk(encodedData, value);
46
+ if (!encodedData) {
47
+ if (readDone) {
48
+ throw new Error(`Done but no image frame available ${imageId}`);
49
+ }
50
+ continue;
51
+ }
52
+ readDone = done || encodedData.byteLength === totalBytes;
53
+ if (!readDone && encodedData.length < lastSize + minChunkSize) {
54
+ continue;
55
+ }
56
+ lastSize = encodedData.length;
57
+ streamingData.isPartial = !done;
58
+ const extracted = extractMultipart(contentType, encodedData, streamingData);
59
+ const imageQualityStatus = getImageQualityStatus(retrieveOptions, readDone);
60
+ const detail = {
61
+ url,
62
+ imageId,
63
+ ...extracted,
64
+ percentComplete: done
65
+ ? 100
66
+ : (extracted.pixelData?.length * 100) / totalBytes,
67
+ imageQualityStatus,
68
+ done: readDone,
69
+ };
70
+ iterator.add(detail, readDone);
71
+ }
72
+ }
73
+ catch (err) {
74
+ errorInterceptor(err);
75
+ console.error(err);
76
+ reject(err);
77
+ }
78
+ });
79
+ return loadIterator.getNextPromise();
80
+ }
81
+ function appendChunk(existing, chunk) {
82
+ if (!existing) {
83
+ return chunk;
84
+ }
85
+ if (!chunk) {
86
+ return existing;
87
+ }
88
+ const newDataArray = new Uint8Array(existing.length + chunk.length);
89
+ newDataArray.set(existing, 0);
90
+ newDataArray.set(chunk, existing.length);
91
+ return newDataArray;
92
+ }
@@ -0,0 +1,3 @@
1
+ import type { LoaderXhrRequestParams, LoaderXhrRequestPromise } from '../../types';
2
+ declare function xhrRequest(url: string, imageId: string, defaultHeaders?: Record<string, string>, params?: LoaderXhrRequestParams): LoaderXhrRequestPromise<ArrayBuffer>;
3
+ export default xhrRequest;
@@ -0,0 +1,102 @@
1
+ import external from '../../externalModules';
2
+ import { getOptions } from './options';
3
+ function xhrRequest(url, imageId, defaultHeaders = {}, params = {}) {
4
+ const { cornerstone } = external;
5
+ const options = getOptions();
6
+ const errorInterceptor = (xhr) => {
7
+ if (typeof options.errorInterceptor === 'function') {
8
+ const error = new Error('request failed');
9
+ error.request = xhr;
10
+ error.response = xhr.response;
11
+ error.status = xhr.status;
12
+ options.errorInterceptor(error);
13
+ }
14
+ };
15
+ const xhr = new XMLHttpRequest();
16
+ const promise = new Promise((resolve, reject) => {
17
+ options.open(xhr, url, defaultHeaders, params);
18
+ const beforeSendHeaders = options.beforeSend(xhr, imageId, defaultHeaders, params);
19
+ xhr.responseType = 'arraybuffer';
20
+ const headers = Object.assign({}, defaultHeaders, beforeSendHeaders);
21
+ Object.keys(headers).forEach(function (key) {
22
+ if (headers[key] === null) {
23
+ return;
24
+ }
25
+ if (key === 'Accept' && url.indexOf('accept=') !== -1) {
26
+ return;
27
+ }
28
+ xhr.setRequestHeader(key, headers[key]);
29
+ });
30
+ params.deferred = {
31
+ resolve,
32
+ reject,
33
+ };
34
+ params.url = url;
35
+ params.imageId = imageId;
36
+ xhr.onloadstart = function (event) {
37
+ if (options.onloadstart) {
38
+ options.onloadstart(event, params);
39
+ }
40
+ const eventData = {
41
+ url,
42
+ imageId,
43
+ };
44
+ cornerstone.triggerEvent(cornerstone.events, 'cornerstoneimageloadstart', eventData);
45
+ };
46
+ xhr.onloadend = function (event) {
47
+ if (options.onloadend) {
48
+ options.onloadend(event, params);
49
+ }
50
+ const eventData = {
51
+ url,
52
+ imageId,
53
+ };
54
+ cornerstone.triggerEvent(cornerstone.events, 'cornerstoneimageloadend', eventData);
55
+ };
56
+ xhr.onreadystatechange = function (event) {
57
+ if (options.onreadystatechange) {
58
+ options.onreadystatechange(event, params);
59
+ return;
60
+ }
61
+ if (xhr.readyState === 4) {
62
+ if (xhr.status === 200 || xhr.status === 206) {
63
+ options
64
+ .beforeProcessing(xhr)
65
+ .then(resolve)
66
+ .catch(() => {
67
+ errorInterceptor(xhr);
68
+ reject(xhr);
69
+ });
70
+ }
71
+ else {
72
+ errorInterceptor(xhr);
73
+ reject(xhr);
74
+ }
75
+ }
76
+ };
77
+ xhr.onprogress = function (oProgress) {
78
+ const loaded = oProgress.loaded;
79
+ let total;
80
+ let percentComplete;
81
+ if (oProgress.lengthComputable) {
82
+ total = oProgress.total;
83
+ percentComplete = Math.round((loaded / total) * 100);
84
+ }
85
+ if (options.onprogress) {
86
+ options.onprogress(oProgress, params);
87
+ }
88
+ };
89
+ xhr.onerror = function () {
90
+ errorInterceptor(xhr);
91
+ reject(xhr);
92
+ };
93
+ xhr.onabort = function () {
94
+ errorInterceptor(xhr);
95
+ reject(xhr);
96
+ };
97
+ xhr.send();
98
+ });
99
+ promise.xhr = xhr;
100
+ return promise;
101
+ }
102
+ export default xhrRequest;
@@ -0,0 +1 @@
1
+ export default function isColorConversionRequired(imageFrame: any): boolean;
@@ -0,0 +1,22 @@
1
+ export default function isColorConversionRequired(imageFrame) {
2
+ if (imageFrame === undefined) {
3
+ return false;
4
+ }
5
+ const { rows, columns, photometricInterpretation, pixelDataLength } = imageFrame;
6
+ if (pixelDataLength === 4 * columns * rows) {
7
+ return false;
8
+ }
9
+ if (photometricInterpretation.endsWith('420')) {
10
+ return (pixelDataLength ===
11
+ (3 * Math.ceil(columns / 2) + Math.floor(columns / 2)) * rows);
12
+ }
13
+ else if (photometricInterpretation.endsWith('422')) {
14
+ return (pixelDataLength ===
15
+ (3 * Math.ceil(columns / 2) + Math.floor(columns / 2)) *
16
+ Math.ceil(rows / 2) +
17
+ Math.floor(rows / 2) * columns);
18
+ }
19
+ else {
20
+ return photometricInterpretation !== 'RGB';
21
+ }
22
+ }
@@ -0,0 +1,3 @@
1
+ import type { Types } from '@cornerstonejs/core';
2
+ declare function isJPEGBaseline8BitColor(imageFrame: Types.IImageFrame, transferSyntax: string): boolean;
3
+ export default isJPEGBaseline8BitColor;
@@ -0,0 +1,9 @@
1
+ function isJPEGBaseline8BitColor(imageFrame, transferSyntax) {
2
+ transferSyntax = transferSyntax || imageFrame.transferSyntax;
3
+ if (imageFrame.bitsAllocated === 8 &&
4
+ transferSyntax === '1.2.840.10008.1.2.4.50' &&
5
+ (imageFrame.samplesPerPixel === 3 || imageFrame.samplesPerPixel === 4)) {
6
+ return true;
7
+ }
8
+ }
9
+ export default isJPEGBaseline8BitColor;
@@ -0,0 +1 @@
1
+ export default function isNMReconstructable(imageSubType: any): boolean;
@@ -0,0 +1,3 @@
1
+ export default function isNMReconstructable(imageSubType) {
2
+ return imageSubType === 'RECON TOMO' || imageSubType === 'RECON GATED TOMO';
3
+ }
@@ -0,0 +1,2 @@
1
+ declare function registerLoaders(cornerstone: any): void;
2
+ export default registerLoaders;
@@ -0,0 +1,7 @@
1
+ import wadors from './wadors/index';
2
+ import wadouri from './wadouri/index';
3
+ function registerLoaders(cornerstone) {
4
+ wadors.register(cornerstone);
5
+ wadouri.register(cornerstone);
6
+ }
7
+ export default registerLoaders;
@@ -0,0 +1,12 @@
1
+ declare function getFrameInformation(PerFrameFunctionalGroupsSequence: any, SharedFunctionalGroupsSequence: any, frameNumber: any): {
2
+ shared: any[];
3
+ perFrame: any[];
4
+ };
5
+ declare function getMultiframeInformation(metaData: any): {
6
+ PerFrameFunctionalGroupsSequence: any;
7
+ SharedFunctionalGroupsSequence: any;
8
+ NumberOfFrames: any;
9
+ rest: any;
10
+ };
11
+ declare function combineFrameInstance(frameNumber: any, instance: any): any;
12
+ export { combineFrameInstance, getMultiframeInformation, getFrameInformation };
@@ -0,0 +1,44 @@
1
+ import getTagValue from './getTagValue';
2
+ function getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, frameNumber) {
3
+ const shared = (SharedFunctionalGroupsSequence
4
+ ? Object.values(SharedFunctionalGroupsSequence[0])
5
+ : [])
6
+ .map((it) => it[0])
7
+ .filter((it) => it !== undefined && typeof it === 'object');
8
+ const perFrame = (PerFrameFunctionalGroupsSequence
9
+ ? Object.values(PerFrameFunctionalGroupsSequence[frameNumber - 1])
10
+ : [])
11
+ .map((it) => it.Value[0])
12
+ .filter((it) => it !== undefined && typeof it === 'object');
13
+ return {
14
+ shared,
15
+ perFrame,
16
+ };
17
+ }
18
+ function getMultiframeInformation(metaData) {
19
+ let { 52009230: PerFrameFunctionalGroupsSequence, 52009229: SharedFunctionalGroupsSequence, '00280008': NumberOfFrames, ...rest } = metaData;
20
+ PerFrameFunctionalGroupsSequence = getTagValue(PerFrameFunctionalGroupsSequence, false);
21
+ SharedFunctionalGroupsSequence = getTagValue(SharedFunctionalGroupsSequence, false);
22
+ NumberOfFrames = getTagValue(NumberOfFrames);
23
+ return {
24
+ PerFrameFunctionalGroupsSequence,
25
+ SharedFunctionalGroupsSequence,
26
+ NumberOfFrames,
27
+ rest,
28
+ };
29
+ }
30
+ function combineFrameInstance(frameNumber, instance) {
31
+ const { PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, NumberOfFrames, rest, } = getMultiframeInformation(instance);
32
+ if (PerFrameFunctionalGroupsSequence || NumberOfFrames > 1) {
33
+ const { shared, perFrame } = getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalGroupsSequence, frameNumber);
34
+ const newInstance = Object.assign(instance, { frameNumber });
35
+ [...shared, ...perFrame].forEach((item) => {
36
+ Object.entries(item).forEach(([key, value]) => {
37
+ newInstance[key] = value;
38
+ });
39
+ });
40
+ return Object.assign(rest, { '00280008': NumberOfFrames }, newInstance);
41
+ }
42
+ return instance;
43
+ }
44
+ export { combineFrameInstance, getMultiframeInformation, getFrameInformation };
@@ -0,0 +1,23 @@
1
+ import { Enums } from '@cornerstonejs/core';
2
+ export default function extractMultipart(contentType: string, imageFrameAsArrayBuffer: any, options?: any): {
3
+ contentType: string;
4
+ imageQualityStatus: Enums.ImageQualityStatus;
5
+ pixelData: Uint8Array;
6
+ extractDone?: undefined;
7
+ tokenIndex?: undefined;
8
+ responseHeaders?: undefined;
9
+ boundary?: undefined;
10
+ multipartContentType?: undefined;
11
+ } | {
12
+ contentType: any;
13
+ extractDone: boolean;
14
+ tokenIndex: any;
15
+ responseHeaders: any;
16
+ boundary: any;
17
+ multipartContentType: any;
18
+ pixelData: any;
19
+ imageQualityStatus?: undefined;
20
+ };
21
+ export declare function findBoundary(header: string[]): string;
22
+ export declare function findContentType(header: string[]): string;
23
+ export declare function uint8ArrayToString(data: any, offset: any, length: any): string;