@cornerstonejs/dicom-image-loader 2.0.0-beta.20 → 2.0.0-beta.22

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 (119) hide show
  1. package/dist/920.bundle.min.js +1 -1
  2. package/dist/920.bundle.min.js.map +1 -1
  3. package/dist/cornerstoneDICOMImageLoader.bundle.min.js +1 -1
  4. package/dist/cornerstoneDICOMImageLoader.bundle.min.js.map +1 -1
  5. package/dist/dynamic-import/918.min.js +1 -1
  6. package/dist/dynamic-import/918.min.js.map +1 -1
  7. package/dist/dynamic-import/958.min.js +1 -1
  8. package/dist/dynamic-import/958.min.js.map +1 -1
  9. package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js +1 -1
  10. package/dist/dynamic-import/cornerstoneDICOMImageLoader.min.js.map +1 -1
  11. package/dist/esm/codecs/jpeg.d.ts +1 -10
  12. package/dist/esm/codecs/jpeg.js +1 -1
  13. package/dist/esm/codecs/jpegLossless.js +1 -1
  14. package/dist/esm/src/decodeImageFrameWorker.js +6 -10
  15. package/dist/esm/src/externalModules.js +1 -4
  16. package/dist/esm/src/imageLoader/colorSpaceConverters/convertPALETTECOLOR.d.ts +3 -3
  17. package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPixel.d.ts +1 -1
  18. package/dist/esm/src/imageLoader/colorSpaceConverters/convertRGBColorByPlane.d.ts +1 -1
  19. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFull422ByPixel.d.ts +1 -1
  20. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPixel.d.ts +1 -1
  21. package/dist/esm/src/imageLoader/colorSpaceConverters/convertYBRFullByPlane.d.ts +1 -1
  22. package/dist/esm/src/imageLoader/configure.d.ts +1 -1
  23. package/dist/esm/src/imageLoader/configure.js +2 -0
  24. package/dist/esm/src/imageLoader/createImage.d.ts +4 -3
  25. package/dist/esm/src/imageLoader/createImage.js +13 -20
  26. package/dist/esm/src/imageLoader/decodeImageFrame.d.ts +2 -2
  27. package/dist/esm/src/imageLoader/decodeJPEGBaseline8BitColor.d.ts +3 -3
  28. package/dist/esm/src/imageLoader/getImageFrame.d.ts +2 -2
  29. package/dist/esm/src/imageLoader/getInstanceModule.d.ts +1 -1
  30. package/dist/esm/src/imageLoader/getScalingParameters.js +2 -1
  31. package/dist/esm/src/imageLoader/index.d.ts +1 -1
  32. package/dist/esm/src/imageLoader/internal/index.d.ts +3 -1
  33. package/dist/esm/src/imageLoader/internal/index.js +3 -1
  34. package/dist/esm/src/imageLoader/internal/options.d.ts +1 -1
  35. package/dist/esm/src/imageLoader/internal/options.js +0 -4
  36. package/dist/esm/src/imageLoader/internal/rangeRequest.d.ts +3 -3
  37. package/dist/esm/src/imageLoader/internal/streamRequest.d.ts +1 -1
  38. package/dist/esm/src/imageLoader/internal/xhrRequest.d.ts +1 -1
  39. package/dist/esm/src/imageLoader/isJPEGBaseline8BitColor.d.ts +2 -2
  40. package/dist/esm/src/imageLoader/registerLoaders.js +4 -4
  41. package/dist/esm/src/imageLoader/wadors/getImageQualityStatus.d.ts +2 -1
  42. package/dist/esm/src/imageLoader/wadors/getPixelData.d.ts +1 -1
  43. package/dist/esm/src/imageLoader/wadors/index.d.ts +5 -1
  44. package/dist/esm/src/imageLoader/wadors/index.js +5 -1
  45. package/dist/esm/src/imageLoader/wadors/loadImage.d.ts +1 -1
  46. package/dist/esm/src/imageLoader/wadors/metaData/getFirstNumberValue.d.ts +1 -1
  47. package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.d.ts +1 -1
  48. package/dist/esm/src/imageLoader/wadors/metaData/getNumberString.js +1 -1
  49. package/dist/esm/src/imageLoader/wadors/metaData/getNumberValue.d.ts +1 -1
  50. package/dist/esm/src/imageLoader/wadors/metaData/getNumberValues.d.ts +1 -1
  51. package/dist/esm/src/imageLoader/wadors/metaData/getOverlayPlaneModule.d.ts +1 -1
  52. package/dist/esm/src/imageLoader/wadors/metaData/getSequenceItems.d.ts +1 -1
  53. package/dist/esm/src/imageLoader/wadors/metaData/getValue.d.ts +1 -1
  54. package/dist/esm/src/imageLoader/wadors/metaData/getValue.js +1 -1
  55. package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.d.ts +1 -1
  56. package/dist/esm/src/imageLoader/wadors/metaData/metaDataProvider.js +2 -3
  57. package/dist/esm/src/imageLoader/wadors/metaDataManager.d.ts +7 -2
  58. package/dist/esm/src/imageLoader/wadors/metaDataManager.js +25 -4
  59. package/dist/esm/src/imageLoader/wadors/register.js +1 -1
  60. package/dist/esm/src/imageLoader/wadouri/combineFrameInstanceDataset.js +4 -2
  61. package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.d.ts +3 -6
  62. package/dist/esm/src/imageLoader/wadouri/dataSetCacheManager.js +2 -2
  63. package/dist/esm/src/imageLoader/wadouri/dataset-from-partial-content.d.ts +1 -1
  64. package/dist/esm/src/imageLoader/wadouri/getEncapsulatedImageFrame.d.ts +1 -1
  65. package/dist/esm/src/imageLoader/wadouri/getPixelData.d.ts +1 -1
  66. package/dist/esm/src/imageLoader/wadouri/getUncompressedImageFrame.d.ts +1 -1
  67. package/dist/esm/src/imageLoader/wadouri/index.d.ts +0 -1
  68. package/dist/esm/src/imageLoader/wadouri/loadImage.d.ts +3 -3
  69. package/dist/esm/src/imageLoader/wadouri/loadedDataSets.d.ts +7 -0
  70. package/dist/esm/src/imageLoader/wadouri/loadedDataSets.js +5 -0
  71. package/dist/esm/src/imageLoader/wadouri/metaData/USHelpers.d.ts +2 -0
  72. package/dist/esm/src/imageLoader/wadouri/metaData/USHelpers.js +44 -0
  73. package/dist/esm/src/imageLoader/wadouri/metaData/getImagePixelModule.d.ts +3 -3
  74. package/dist/esm/src/imageLoader/wadouri/metaData/getLUTs.d.ts +2 -2
  75. package/dist/esm/src/imageLoader/wadouri/metaData/getModalityLUTOutputPixelRepresentation.d.ts +1 -1
  76. package/dist/esm/src/imageLoader/wadouri/metaData/getNumberValues.d.ts +1 -1
  77. package/dist/esm/src/imageLoader/wadouri/metaData/getOverlayPlaneModule.d.ts +1 -1
  78. package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.d.ts +1 -1
  79. package/dist/esm/src/imageLoader/wadouri/metaData/metaDataProvider.js +13 -0
  80. package/dist/esm/src/imageLoader/wadouri/register.d.ts +1 -1
  81. package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.d.ts +0 -1
  82. package/dist/esm/src/imageLoader/wadouri/retrieveMultiframeDataset.js +1 -1
  83. package/dist/esm/src/imageLoader/wadouri/unpackBinaryFrame.d.ts +1 -1
  84. package/dist/esm/src/shared/decoders/decodeBigEndian.d.ts +3 -3
  85. package/dist/esm/src/shared/decoders/decodeHTJ2K.d.ts +2 -2
  86. package/dist/esm/src/shared/decoders/decodeJPEG2000.d.ts +3 -2
  87. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-js.d.ts +4 -3
  88. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.d.ts +1 -0
  89. package/dist/esm/src/shared/decoders/decodeJPEGBaseline12Bit-wasm-not-yet-working.js +1 -1
  90. package/dist/esm/src/shared/decoders/decodeJPEGBaseline8Bit.d.ts +2 -2
  91. package/dist/esm/src/shared/decoders/decodeJPEGLS.d.ts +3 -2
  92. package/dist/esm/src/shared/decoders/decodeJPEGLossless.d.ts +4 -3
  93. package/dist/esm/src/shared/decoders/decodeLittleEndian.d.ts +3 -3
  94. package/dist/esm/src/shared/decoders/decodeRLE.d.ts +3 -3
  95. package/dist/esm/src/shared/getMinMax.d.ts +2 -2
  96. package/dist/esm/src/shared/getPixelDataTypeFromMinMax.d.ts +2 -2
  97. package/dist/esm/src/shared/scaling/scaleArray.d.ts +2 -2
  98. package/dist/esm/src/types/DICOMLoaderDataSetWithFetchMore.d.ts +1 -1
  99. package/dist/esm/src/types/DICOMLoaderIImage.d.ts +3 -4
  100. package/dist/esm/src/types/DICOMLoaderImageOptions.d.ts +4 -7
  101. package/dist/esm/src/types/LoadRequestFunction.d.ts +1 -1
  102. package/dist/esm/src/types/LoaderDecodeOptions.d.ts +0 -2
  103. package/dist/esm/src/types/LoaderOptions.d.ts +9 -9
  104. package/dist/esm/src/types/WebWorkerTypes.d.ts +8 -8
  105. package/dist/esm/src/types/XHRRequest.d.ts +2 -2
  106. package/dist/esm/src/types/index.d.ts +11 -14
  107. package/package.json +6 -10
  108. package/dist/esm/src/imageLoader/wadors/retrieveMultiframeMetadata.d.ts +0 -15
  109. package/dist/esm/src/imageLoader/wadors/retrieveMultiframeMetadata.js +0 -26
  110. package/dist/esm/src/shared/calculateMinMax.d.ts +0 -2
  111. package/dist/esm/src/shared/calculateMinMax.js +0 -24
  112. package/dist/esm/src/shared/calculateMinMax_test.d.ts +0 -1
  113. package/dist/esm/src/shared/calculateMinMax_test.js +0 -38
  114. package/dist/esm/src/types/ImageFrame.d.ts +0 -43
  115. package/dist/esm/src/types/ImageFrame.js +0 -1
  116. package/dist/esm/src/types/MetadataModules.d.ts +0 -66
  117. package/dist/esm/src/types/MetadataModules.js +0 -1
  118. package/dist/esm/src/types/PixelDataTypedArray.d.ts +0 -2
  119. package/dist/esm/src/types/PixelDataTypedArray.js +0 -1
@@ -19,11 +19,13 @@ function getFrameInformation(PerFrameFunctionalGroupsSequence, SharedFunctionalG
19
19
  const shared = {};
20
20
  (SharedFunctionalGroupsSequence
21
21
  ? Object.values(SharedFunctionalGroupsSequence.items[0].dataSet.elements)
22
- : []).map((it) => (shared[it.tag] = it));
22
+ : [])
23
+ .map((it) => (shared[it.tag] = it));
23
24
  const perFrame = {};
24
25
  (PerFrameFunctionalGroupsSequence
25
26
  ? Object.values(PerFrameFunctionalGroupsSequence.items[frameNumber - 1].dataSet.elements)
26
- : []).map((it) => (perFrame[it.tag] = it));
27
+ : [])
28
+ .map((it) => (perFrame[it.tag] = it));
27
29
  return {
28
30
  shared,
29
31
  perFrame,
@@ -1,5 +1,6 @@
1
- import { DataSet } from 'dicom-parser';
2
- import { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
1
+ import type { DataSet } from 'dicom-parser';
2
+ import type { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
3
+ import { loadedDataSets } from './loadedDataSets';
3
4
  export interface CornerstoneWadoLoaderCacheManagerInfoResponse {
4
5
  cacheSizeInBytes: number;
5
6
  numberOfDataSetsCached: number;
@@ -7,10 +8,6 @@ export interface CornerstoneWadoLoaderCacheManagerInfoResponse {
7
8
  export interface CornerstoneWadoLoaderCachedPromise extends Promise<DataSet | DICOMLoaderDataSetWithFetchMore> {
8
9
  cacheCount?: number;
9
10
  }
10
- declare let loadedDataSets: Record<string, {
11
- dataSet: DataSet;
12
- cacheCount: number;
13
- }>;
14
11
  declare function isLoaded(uri: string): boolean;
15
12
  declare function get(uri: string): DataSet;
16
13
  declare function update(uri: string, dataSet: DataSet): void;
@@ -3,8 +3,8 @@ import { xhrRequest } from '../internal/index';
3
3
  import dataSetFromPartialContent from './dataset-from-partial-content';
4
4
  import { combineFrameInstanceDataset } from './combineFrameInstanceDataset';
5
5
  import multiframeDataset from './retrieveMultiframeDataset';
6
+ import { loadedDataSets, purgeLoadedDataSets } from './loadedDataSets';
6
7
  let cacheSizeInBytes = 0;
7
- let loadedDataSets = {};
8
8
  let promises = {};
9
9
  function isLoaded(uri) {
10
10
  return loadedDataSets[uri] !== undefined;
@@ -126,7 +126,7 @@ export function getInfo() {
126
126
  };
127
127
  }
128
128
  function purge() {
129
- loadedDataSets = {};
129
+ purgeLoadedDataSets();
130
130
  promises = {};
131
131
  cacheSizeInBytes = 0;
132
132
  }
@@ -1,4 +1,4 @@
1
- import { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
1
+ import type { LoadRequestFunction, DICOMLoaderDataSetWithFetchMore } from '../../types';
2
2
  export default function dataSetFromPartialContent(byteArray: Uint8Array, loadRequest: LoadRequestFunction, metadata: {
3
3
  uri: string;
4
4
  imageId: string;
@@ -1,2 +1,2 @@
1
- import { ByteArray, DataSet } from 'dicom-parser';
1
+ import type { ByteArray, DataSet } from 'dicom-parser';
2
2
  export default function getEncapsulatedImageFrame(dataSet: DataSet, frameIndex: number): ByteArray;
@@ -1,3 +1,3 @@
1
- import { ByteArray, DataSet } from 'dicom-parser';
1
+ import type { ByteArray, DataSet } from 'dicom-parser';
2
2
  declare function getPixelData(dataSet: DataSet, frameIndex?: number): ByteArray;
3
3
  export default getPixelData;
@@ -1,3 +1,3 @@
1
- import { DataSet } from 'dicom-parser';
1
+ import type { DataSet } from 'dicom-parser';
2
2
  declare function getUncompressedImageFrame(dataSet: DataSet, frameIndex: number): Uint8Array;
3
3
  export default getUncompressedImageFrame;
@@ -1,4 +1,3 @@
1
- /// <reference types="dicom-parser" />
2
1
  import { getImagePixelModule, getLUTs, getModalityLUTOutputPixelRepresentation, getNumberValues, metaDataProvider } from './metaData/index';
3
2
  import getEncapsulatedImageFrame from './getEncapsulatedImageFrame';
4
3
  import getUncompressedImageFrame from './getUncompressedImageFrame';
@@ -1,6 +1,6 @@
1
- import { DataSet } from 'dicom-parser';
2
- import { Types } from '@cornerstonejs/core';
3
- import { LoadRequestFunction, DICOMLoaderIImage, DICOMLoaderImageOptions } from '../../types';
1
+ import type { DataSet } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core';
3
+ import type { LoadRequestFunction, DICOMLoaderIImage, DICOMLoaderImageOptions } from '../../types';
4
4
  declare function loadImageFromPromise(dataSetPromise: Promise<DataSet>, imageId: string, frame: number, sharedCacheKey: string, options: DICOMLoaderImageOptions, callbacks?: {
5
5
  imageDoneCallback: (image: DICOMLoaderIImage) => void;
6
6
  }): Types.IImageLoadObject;
@@ -0,0 +1,7 @@
1
+ import type { DataSet } from 'dicom-parser';
2
+ declare let loadedDataSets: Record<string, {
3
+ dataSet: DataSet;
4
+ cacheCount: number;
5
+ }>;
6
+ declare const purgeLoadedDataSets: () => void;
7
+ export { loadedDataSets, purgeLoadedDataSets };
@@ -0,0 +1,5 @@
1
+ let loadedDataSets = {};
2
+ const purgeLoadedDataSets = () => {
3
+ loadedDataSets = {};
4
+ };
5
+ export { loadedDataSets, purgeLoadedDataSets };
@@ -0,0 +1,2 @@
1
+ declare function getUSEnhancedRegions(metadata: any): any;
2
+ export { getUSEnhancedRegions };
@@ -0,0 +1,44 @@
1
+ function getUSEnhancedRegions(metadata) {
2
+ const sequence = metadata.elements['x00186011'];
3
+ if (!sequence || !sequence.items) {
4
+ return [];
5
+ }
6
+ const regions = sequence.items.map((item) => {
7
+ const physicalDeltaX = item.dataSet.double('x0018602c');
8
+ const physicalDeltaY = item.dataSet.double('x0018602e');
9
+ const physicalUnitsXDirection = item.dataSet.uint16('x00186024');
10
+ const physicalUnitsYDirection = item.dataSet.uint16('x00186026');
11
+ const regionLocationMinY0 = item.dataSet.uint16('x0018601a');
12
+ const regionLocationMaxY1 = item.dataSet.uint16('x0018601e');
13
+ const regionLocationMinX0 = item.dataSet.uint16('x00186018');
14
+ const regionLocationMaxX1 = item.dataSet.uint16('x0018601c');
15
+ const referencePixelX0 = item.dataSet.int32('x00186020') || null;
16
+ const referencePixelY0 = item.dataSet.int32('x00186022') || null;
17
+ const referencePhysicalPixelValueY = item.dataSet.uint16('x0018602a');
18
+ const referencePhysicalPixelValueX = item.dataSet.uint16('x00186028');
19
+ const regionSpatialFormat = item.dataSet.uint16('x00186012');
20
+ const regionDataType = item.dataSet.uint16('x00186014');
21
+ const regionFlags = item.dataSet.uint16('x00186016');
22
+ const transducerFrequency = item.dataSet.uint16('x00186030');
23
+ return {
24
+ regionLocationMinY0,
25
+ regionLocationMaxY1,
26
+ regionLocationMinX0,
27
+ regionLocationMaxX1,
28
+ referencePixelX0,
29
+ referencePixelY0,
30
+ physicalDeltaX,
31
+ physicalDeltaY,
32
+ physicalUnitsXDirection,
33
+ physicalUnitsYDirection,
34
+ referencePhysicalPixelValueY,
35
+ referencePhysicalPixelValueX,
36
+ regionSpatialFormat,
37
+ regionDataType,
38
+ regionFlags,
39
+ transducerFrequency,
40
+ };
41
+ });
42
+ return regions;
43
+ }
44
+ export { getUSEnhancedRegions };
@@ -1,4 +1,4 @@
1
- import { MetadataImagePixelModule } from '../../../types';
2
- import { DataSet } from 'dicom-parser';
3
- declare function getImagePixelModule(dataSet: DataSet): MetadataImagePixelModule;
1
+ import type { Types } from '@cornerstonejs/core';
2
+ import type { DataSet } from 'dicom-parser';
3
+ declare function getImagePixelModule(dataSet: DataSet): Types.ImagePixelModuleMetadata;
4
4
  export default getImagePixelModule;
@@ -1,4 +1,4 @@
1
- import { Element } from 'dicom-parser';
2
- import { LutType } from '../../../types';
1
+ import type { Element } from 'dicom-parser';
2
+ import type { LutType } from '../../../types';
3
3
  declare function getLUTs(pixelRepresentation: number, lutSequence: Element): LutType[];
4
4
  export default getLUTs;
@@ -1,3 +1,3 @@
1
- import { DataSet } from 'dicom-parser';
1
+ import type { DataSet } from 'dicom-parser';
2
2
  declare function getModalityLUTOutputPixelRepresentation(dataSet: DataSet): number;
3
3
  export default getModalityLUTOutputPixelRepresentation;
@@ -1,3 +1,3 @@
1
- import { DataSet } from 'dicom-parser';
1
+ import type { DataSet } from 'dicom-parser';
2
2
  declare function getNumberValues(dataSet: DataSet, tag: string, minimumLength: number): number[];
3
3
  export default getNumberValues;
@@ -1,4 +1,4 @@
1
- import { DataSet } from 'dicom-parser';
1
+ import type { DataSet } from 'dicom-parser';
2
2
  export default function getOverlayPlaneModule(dataSet: DataSet): {
3
3
  overlays: any[];
4
4
  };
@@ -1,2 +1,2 @@
1
- declare function metaDataProvider(type: any, imageId: any): object;
1
+ declare function metaDataProvider(type: any, imageId: any): any;
2
2
  export default metaDataProvider;
@@ -11,6 +11,7 @@ import multiframeDataset from '../retrieveMultiframeDataset';
11
11
  import { getImageTypeSubItemFromDataset, extractOrientationFromDataset, extractPositionFromDataset, extractSpacingFromDataset, extractSliceThicknessFromDataset, } from './extractPositioningFromDataset';
12
12
  import isNMReconstructable from '../../isNMReconstructable';
13
13
  import { getInstanceModule, instanceModuleNames, } from '../../getInstanceModule';
14
+ import { getUSEnhancedRegions } from './USHelpers';
14
15
  function metaDataProvider(type, imageId) {
15
16
  const { MetadataModules } = external.cornerstone.Enums;
16
17
  const { dicomParser } = external;
@@ -203,6 +204,18 @@ function metaDataProvider(type, imageId) {
203
204
  actualFrameDuration: dataSet.intString(dataSet.string('x00181242')),
204
205
  };
205
206
  }
207
+ if (type === MetadataModules.ULTRASOUND_ENHANCED_REGION) {
208
+ return getUSEnhancedRegions(dataSet);
209
+ }
210
+ if (type === MetadataModules.CALIBRATION) {
211
+ const modality = dataSet.string('x00080060');
212
+ if (modality === 'US') {
213
+ const enhancedRegion = getUSEnhancedRegions(dataSet);
214
+ return {
215
+ sequenceOfUltrasoundRegions: enhancedRegion,
216
+ };
217
+ }
218
+ }
206
219
  if (type === 'instance') {
207
220
  return getInstanceModule(imageId, metaDataProvider, instanceModuleNames);
208
221
  }
@@ -1,2 +1,2 @@
1
- import * as cornerstoneImport from '@cornerstonejs/core';
1
+ import type * as cornerstoneImport from '@cornerstonejs/core';
2
2
  export default function (cornerstone: typeof cornerstoneImport): void;
@@ -1,4 +1,3 @@
1
- /// <reference types="dicom-parser" />
2
1
  declare function _get(uri: any): {
3
2
  dataSet: import("dicom-parser").DataSet;
4
3
  cacheCount: number;
@@ -1,4 +1,4 @@
1
- import { loadedDataSets } from './dataSetCacheManager';
1
+ import { loadedDataSets } from './loadedDataSets';
2
2
  function _get(uri) {
3
3
  if (!loadedDataSets[uri]) {
4
4
  return;
@@ -1,3 +1,3 @@
1
- import { ByteArray } from 'dicom-parser';
1
+ import type { ByteArray } from 'dicom-parser';
2
2
  declare function unpackBinaryFrame(byteArray: ByteArray, frameOffset: number, pixelsPerFrame: number): Uint8Array;
3
3
  export default unpackBinaryFrame;
@@ -1,4 +1,4 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import { ImageFrame } from '../../types';
3
- declare function decodeBigEndian(imageFrame: ImageFrame, pixelData: ByteArray): Promise<ImageFrame>;
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core/src';
3
+ declare function decodeBigEndian(imageFrame: Types.IImageFrame, pixelData: ByteArray): Promise<Types.IImageFrame>;
4
4
  export default decodeBigEndian;
@@ -1,5 +1,5 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import { LoaderDecodeOptions } from '../../types';
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { LoaderDecodeOptions } from '../../types';
3
3
  export declare function initialize(decodeConfig?: LoaderDecodeOptions): Promise<void>;
4
4
  declare function decodeAsync(compressedImageFrame: ByteArray, imageInfo: any): Promise<any>;
5
5
  export default decodeAsync;
@@ -1,4 +1,5 @@
1
- import { ImageFrame, WebWorkerDecodeConfig } from '../../types';
1
+ import type { Types } from '@cornerstonejs/core/src';
2
+ import type { WebWorkerDecodeConfig } from '../../types';
2
3
  export declare function initialize(decodeConfig?: WebWorkerDecodeConfig): Promise<void>;
3
- declare function decodeAsync(compressedImageFrame: any, imageInfo: any): Promise<ImageFrame>;
4
+ declare function decodeAsync(compressedImageFrame: any, imageInfo: any): Promise<Types.IImageFrame>;
4
5
  export default decodeAsync;
@@ -1,5 +1,6 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import { ImageFrame, WebWorkerDecodeConfig } from '../../types';
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core/src';
3
+ import type { WebWorkerDecodeConfig } from '../../types';
3
4
  export declare function initialize(decodeConfig?: WebWorkerDecodeConfig): Promise<void>;
4
- declare function decodeJPEGBaseline12BitAsync(imageFrame: ImageFrame, pixelData: ByteArray): Promise<ImageFrame>;
5
+ declare function decodeJPEGBaseline12BitAsync(imageFrame: Types.IImageFrame, pixelData: ByteArray): Promise<Types.IImageFrame>;
5
6
  export default decodeJPEGBaseline12BitAsync;
@@ -1 +1 @@
1
- "use strict";
1
+ export {};
@@ -1,3 +1,3 @@
1
- import { ImageFrame } from '../../types';
2
- declare function decodeAsync(compressedImageFrame: any, imageInfo: any): Promise<ImageFrame>;
1
+ import type { Types } from '@cornerstonejs/core/src';
2
+ declare function decodeAsync(compressedImageFrame: any, imageInfo: any): Promise<Types.IImageFrame>;
3
3
  export default decodeAsync;
@@ -1,4 +1,5 @@
1
- import { ImageFrame, WebWorkerDecodeConfig } from '../../types';
1
+ import type { WebWorkerDecodeConfig } from '../../types';
2
+ import type { Types } from '@cornerstonejs/core/src';
2
3
  export declare function initialize(decodeConfig?: WebWorkerDecodeConfig): Promise<void>;
3
- declare function decodeAsync(compressedImageFrame: any, imageInfo: any): Promise<ImageFrame>;
4
+ declare function decodeAsync(compressedImageFrame: any, imageInfo: any): Promise<Types.IImageFrame>;
4
5
  export default decodeAsync;
@@ -1,5 +1,6 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import { ImageFrame, WebWorkerDecodeConfig } from '../../types';
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core/src';
3
+ import type { WebWorkerDecodeConfig } from '../../types';
3
4
  export declare function initialize(decodeConfig?: WebWorkerDecodeConfig): Promise<void>;
4
- declare function decodeJPEGLossless(imageFrame: ImageFrame, pixelData: ByteArray): Promise<ImageFrame>;
5
+ declare function decodeJPEGLossless(imageFrame: Types.IImageFrame, pixelData: ByteArray): Promise<Types.IImageFrame>;
5
6
  export default decodeJPEGLossless;
@@ -1,4 +1,4 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import { ImageFrame } from '../../types';
3
- declare function decodeLittleEndian(imageFrame: ImageFrame, pixelData: ByteArray): Promise<ImageFrame>;
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core';
3
+ declare function decodeLittleEndian(imageFrame: Types.IImageFrame, pixelData: ByteArray): Promise<Types.IImageFrame>;
4
4
  export default decodeLittleEndian;
@@ -1,4 +1,4 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import { ImageFrame } from '../../types';
3
- declare function decodeRLE(imageFrame: ImageFrame, pixelData: ByteArray): Promise<ImageFrame>;
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core';
3
+ declare function decodeRLE(imageFrame: Types.IImageFrame, pixelData: ByteArray): Promise<Types.IImageFrame>;
4
4
  export default decodeRLE;
@@ -1,5 +1,5 @@
1
- import { PixelDataTypedArray } from '../types';
2
- declare function getMinMax(storedPixelData: PixelDataTypedArray): {
1
+ import type { Types } from '@cornerstonejs/core';
2
+ declare function getMinMax(storedPixelData: Types.PixelDataTypedArray): {
3
3
  min: number;
4
4
  max: number;
5
5
  };
@@ -1,2 +1,2 @@
1
- import { PixelDataTypedArray } from '../types';
2
- export default function getPixelDataTypeFromMinMax(min: number, max: number): PixelDataTypedArray;
1
+ import type { Types } from '@cornerstonejs/core';
2
+ export default function getPixelDataTypeFromMinMax(min: number, max: number): Types.PixelDataTypedArray;
@@ -1,2 +1,2 @@
1
- import { PixelDataTypedArray } from '../../types';
2
- export default function scaleArray(array: PixelDataTypedArray, scalingParameters: any): boolean;
1
+ import type { Types } from '@cornerstonejs/core';
2
+ export default function scaleArray(array: Types.PixelDataTypedArray, scalingParameters: any): boolean;
@@ -1,4 +1,4 @@
1
- import { DataSet } from 'dicom-parser';
1
+ import type { DataSet } from 'dicom-parser';
2
2
  export interface DICOMLoaderDataSetWithFetchMore extends DataSet {
3
3
  fetchMore?: (fetchOptions: {
4
4
  uri: string;
@@ -1,13 +1,12 @@
1
- import { Types } from '@cornerstonejs/core';
2
- import { ByteArray, DataSet } from 'dicom-parser';
3
- import ImageFrame from './ImageFrame';
1
+ import type { Types } from '@cornerstonejs/core';
2
+ import type { ByteArray, DataSet } from 'dicom-parser';
4
3
  export interface DICOMLoaderIImage extends Types.IImage {
5
4
  decodeTimeInMS: number;
6
5
  floatPixelData?: ByteArray | Float32Array;
7
6
  loadTimeInMS?: number;
8
7
  totalTimeInMS?: number;
9
8
  data?: DataSet;
10
- imageFrame?: ImageFrame;
9
+ imageFrame?: Types.IImageFrame;
11
10
  voiLUTFunction: string | undefined;
12
11
  transferSyntaxUID?: string;
13
12
  }
@@ -1,24 +1,21 @@
1
- import { Types } from '@cornerstonejs/core';
2
- import { LoadRequestFunction } from './LoadRequestFunction';
3
- import { StreamingData } from '../imageLoader/wadors/loadImage';
1
+ import type { Types } from '@cornerstonejs/core';
2
+ import type { LoadRequestFunction } from './LoadRequestFunction';
3
+ import type { StreamingData } from '../imageLoader/wadors/loadImage';
4
4
  export interface DICOMLoaderImageOptions {
5
5
  useRGBA?: boolean;
6
- useNativeDataType?: boolean;
7
6
  allowFloatRendering?: boolean;
8
- skipCreateImage?: boolean;
9
7
  preScale?: {
10
8
  enabled: boolean;
11
9
  scalingParameters?: Types.ScalingParameters;
12
10
  };
13
11
  targetBuffer?: {
14
- type: 'Uint8Array' | 'Uint16Array' | 'Int16Array' | 'Float32Array';
12
+ type: Types.PixelDataTypedArrayString;
15
13
  arrayBuffer: ArrayBufferLike;
16
14
  length: number;
17
15
  offset: number;
18
16
  rows?: number;
19
17
  columns?: number;
20
18
  };
21
- isSharedArrayBuffer?: boolean;
22
19
  loader?: LoadRequestFunction;
23
20
  decodeLevel?: number;
24
21
  retrieveOptions?: Types.RetrieveOptions;
@@ -1 +1 @@
1
- export type LoadRequestFunction = (url: string, imageId: string, ...args: any[]) => Promise<ArrayBuffer>;
1
+ export type LoadRequestFunction = (url: string, imageId: string, ...args: unknown[]) => Promise<ArrayBuffer>;
@@ -1,4 +1,2 @@
1
1
  export interface LoaderDecodeOptions {
2
- convertFloatPixelDataToInt?: boolean;
3
- use16BitDataType?: boolean;
4
2
  }
@@ -1,17 +1,17 @@
1
- import { LoaderDecodeOptions } from './LoaderDecodeOptions';
2
- import { LoaderXhrRequestError, LoaderXhrRequestParams } from './XHRRequest';
1
+ import type { LoaderDecodeOptions } from './LoaderDecodeOptions';
2
+ import type { LoaderXhrRequestError, LoaderXhrRequestParams } from './XHRRequest';
3
3
  export interface LoaderOptions {
4
- cornerstone?: any;
5
- dicomParser?: any;
4
+ cornerstone?: unknown;
5
+ dicomParser?: unknown;
6
6
  maxWebWorkers?: number;
7
7
  open?: (xhr: XMLHttpRequest, url: string, defaultHeaders: Record<string, string>, params: LoaderXhrRequestParams) => void;
8
8
  beforeSend?: (xhr: XMLHttpRequest, imageId: string, defaultHeaders: Record<string, string>, params: LoaderXhrRequestParams) => Record<string, string> | void;
9
9
  beforeProcessing?: (xhr: XMLHttpRequest) => Promise<ArrayBuffer>;
10
- imageCreated?: (...args: any[]) => void;
11
- onloadstart?: (event: ProgressEvent<EventTarget>, params: any) => void;
12
- onloadend?: (event: ProgressEvent<EventTarget>, params: any) => void;
13
- onreadystatechange?: (event: Event, params: any) => void;
14
- onprogress?: (event: ProgressEvent<EventTarget>, params: any) => void;
10
+ imageCreated?: (imageObject: unknown) => void;
11
+ onloadstart?: (event: ProgressEvent<EventTarget>, params: unknown) => void;
12
+ onloadend?: (event: ProgressEvent<EventTarget>, params: unknown) => void;
13
+ onreadystatechange?: (event: Event, params: unknown) => void;
14
+ onprogress?: (event: ProgressEvent<EventTarget>, params: unknown) => void;
15
15
  errorInterceptor?: (error: LoaderXhrRequestError) => void;
16
16
  strict?: boolean;
17
17
  decodeConfig?: LoaderDecodeOptions;
@@ -1,7 +1,7 @@
1
- import { ByteArray } from 'dicom-parser';
2
- import ImageFrame from './ImageFrame';
3
- import { LoaderOptions } from './LoaderOptions';
4
- import { LoaderDecodeOptions } from './LoaderDecodeOptions';
1
+ import type { ByteArray } from 'dicom-parser';
2
+ import type { Types } from '@cornerstonejs/core';
3
+ import type { LoaderOptions } from './LoaderOptions';
4
+ import type { LoaderDecodeOptions } from './LoaderDecodeOptions';
5
5
  export interface WebWorkerOptions {
6
6
  maxWebWorkers?: number;
7
7
  startWebWorkersOnDemand?: boolean;
@@ -15,7 +15,7 @@ export interface WebWorkerDecodeConfig {
15
15
  export interface WebWorkerTaskOptions {
16
16
  decodeTask: WebWorkerDecodeConfig;
17
17
  }
18
- export interface WebWorkerDeferredObject<T = any> {
18
+ export interface WebWorkerDeferredObject<T = unknown> {
19
19
  resolve: (arg: T | PromiseLike<T>) => void;
20
20
  reject: (err: any) => void;
21
21
  }
@@ -32,7 +32,7 @@ export interface WorkerTask {
32
32
  transferList: Transferable[];
33
33
  }
34
34
  export interface WebWorkerDecodeTaskData {
35
- imageFrame: ImageFrame;
35
+ imageFrame: Types.IImageFrame;
36
36
  transferSyntax: string;
37
37
  pixelData: ByteArray;
38
38
  options: LoaderOptions;
@@ -59,6 +59,6 @@ export interface WebWorkerResponse {
59
59
  taskType: WorkerTaskTypes;
60
60
  status: 'failed' | 'success';
61
61
  workerIndex: number;
62
- data?: ImageFrame;
63
- result: string | ImageFrame;
62
+ data?: Types.IImageFrame;
63
+ result: string | Types.IImageFrame;
64
64
  }
@@ -1,13 +1,13 @@
1
1
  export interface LoaderXhrRequestError extends Error {
2
2
  request: XMLHttpRequest;
3
- response: any;
3
+ response: unknown;
4
4
  status: number;
5
5
  }
6
6
  export interface LoaderXhrRequestParams {
7
7
  url?: string;
8
8
  deferred?: {
9
9
  resolve: (value: ArrayBuffer | PromiseLike<ArrayBuffer>) => void;
10
- reject: (reason?: any) => void;
10
+ reject: (reason: any) => void;
11
11
  };
12
12
  imageId?: string;
13
13
  }
@@ -1,14 +1,11 @@
1
- import ImageFrame from './ImageFrame';
2
- import PixelDataTypedArray from './PixelDataTypedArray';
3
- import { LoaderXhrRequestError, LoaderXhrRequestParams, LoaderXhrRequestPromise } from './XHRRequest';
4
- import { WADORSMetaData, WADORSMetaDataElement } from './WADORSMetaData';
5
- import { LoaderOptions } from './LoaderOptions';
6
- import { LoaderDecodeOptions } from './LoaderDecodeOptions';
7
- import { DICOMLoaderIImage } from './DICOMLoaderIImage';
8
- import { DICOMLoaderImageOptions } from './DICOMLoaderImageOptions';
9
- import { LutType } from './LutType';
10
- import { LoadRequestFunction } from './LoadRequestFunction';
11
- import { DICOMLoaderDataSetWithFetchMore } from './DICOMLoaderDataSetWithFetchMore';
12
- import { MetaDataTypes, MetadataGeneralSeriesModule, MetadataImagePixelModule, MetadataImagePlaneModule, MetadataPatientStudyModule, MetadataSopCommonModule, MetadataTransferSyntax, DicomDateObject, DicomTimeObject } from './MetadataModules';
13
- import { WebWorkerOptions, WebWorkerDecodeConfig, WebWorkerTaskOptions, WorkerTaskTypes, WorkerTask, WebWorkerDecodeTaskData, WebWorkerDecodeData, WebWorkerLoadData, WebWorkerInitializeData, WebWorkerData, WebWorkerResponse, WebWorkerDeferredObject } from './WebWorkerTypes';
14
- export { ImageFrame, LoaderDecodeOptions, LoaderOptions, WADORSMetaData, WADORSMetaDataElement, LoaderXhrRequestError, LoaderXhrRequestParams, LoaderXhrRequestPromise, DICOMLoaderIImage, DICOMLoaderImageOptions, MetaDataTypes, MetadataGeneralSeriesModule, MetadataImagePixelModule, MetadataImagePlaneModule, MetadataPatientStudyModule, MetadataSopCommonModule, MetadataTransferSyntax, DicomDateObject, DicomTimeObject, LutType, WebWorkerOptions, WebWorkerDecodeConfig, WebWorkerTaskOptions, WorkerTaskTypes, WorkerTask, WebWorkerDecodeTaskData, WebWorkerDecodeData, WebWorkerLoadData, WebWorkerInitializeData, WebWorkerData, WebWorkerResponse, WebWorkerDeferredObject, LoadRequestFunction, DICOMLoaderDataSetWithFetchMore, PixelDataTypedArray, };
1
+ import type { LoaderXhrRequestError, LoaderXhrRequestParams, LoaderXhrRequestPromise } from './XHRRequest';
2
+ import type { WADORSMetaData, WADORSMetaDataElement } from './WADORSMetaData';
3
+ import type { LoaderOptions } from './LoaderOptions';
4
+ import type { LoaderDecodeOptions } from './LoaderDecodeOptions';
5
+ import type { DICOMLoaderIImage } from './DICOMLoaderIImage';
6
+ import type { DICOMLoaderImageOptions } from './DICOMLoaderImageOptions';
7
+ import type { LutType } from './LutType';
8
+ import type { LoadRequestFunction } from './LoadRequestFunction';
9
+ import type { DICOMLoaderDataSetWithFetchMore } from './DICOMLoaderDataSetWithFetchMore';
10
+ import type { WebWorkerOptions, WebWorkerDecodeConfig, WebWorkerTaskOptions, WorkerTaskTypes, WorkerTask, WebWorkerDecodeTaskData, WebWorkerDecodeData, WebWorkerLoadData, WebWorkerInitializeData, WebWorkerData, WebWorkerResponse, WebWorkerDeferredObject } from './WebWorkerTypes';
11
+ export type { LoaderDecodeOptions, LoaderOptions, WADORSMetaData, WADORSMetaDataElement, LoaderXhrRequestError, LoaderXhrRequestParams, LoaderXhrRequestPromise, DICOMLoaderIImage, DICOMLoaderImageOptions, LutType, WebWorkerOptions, WebWorkerDecodeConfig, WebWorkerTaskOptions, WorkerTaskTypes, WorkerTask, WebWorkerDecodeTaskData, WebWorkerDecodeData, WebWorkerLoadData, WebWorkerInitializeData, WebWorkerData, WebWorkerResponse, WebWorkerDeferredObject, LoadRequestFunction, DICOMLoaderDataSetWithFetchMore, };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cornerstonejs/dicom-image-loader",
3
- "version": "2.0.0-beta.20",
3
+ "version": "2.0.0-beta.22",
4
4
  "description": "Cornerstone Image Loader for DICOM WADO-URI and WADO-RS and Local file",
5
5
  "keywords": [
6
6
  "DICOM",
@@ -40,17 +40,19 @@
40
40
  "build:umd:dynamic": "cross-env NODE_ENV=production webpack --config .webpack/webpack-dynamic-import.js",
41
41
  "build:umd:bundle": "cross-env NODE_ENV=production webpack --config .webpack/webpack-bundle.js",
42
42
  "build:all": "yarn run build:umd:dynamic & yarn run build:umd:bundle && yarn run build:esm",
43
+ "build:update-api": "echo 'not implemented yet'",
43
44
  "copy-dts": "echo 'not implemented yet'",
44
45
  "clean": "shx rm -rf dist",
45
46
  "clean:deep": "yarn run clean && shx rm -rf node_modules",
46
- "api-check": "echo 'not implemented yet'",
47
- "build:update-api": "echo 'not implemented yet'",
47
+ "format-check": "npx eslint ./src --quiet",
48
+ "api-check": "yarn run format-check",
48
49
  "cm": "npx git-cz",
49
50
  "clean:dist": "shx rm -rf dist",
50
51
  "clean:docs": "shx rm -rf documentation",
51
52
  "clean:coverage": "shx rm -rf coverage",
52
53
  "doc": "npm run doc:generate && opn documentation/index.html",
53
54
  "doc:generate": "npm run clean:docs && jsdoc -c .jsdocrc",
55
+ "dev": "tsc --project ./tsconfig.esm.json --watch",
54
56
  "eslint": "eslint -c .eslintrc.js src",
55
57
  "eslint-quiet": "eslint -c .eslintrc.js --quiet src",
56
58
  "eslint-fix": "eslint -c .eslintrc.js --fix src",
@@ -64,7 +66,6 @@
64
66
  "test:firefox": "karma start config/karma/karma-firefox.js",
65
67
  "test:watch": "karma start config/karma/karma-watch.js",
66
68
  "watch": "npm run clean && shx mkdir dist && npm run webpack:watch",
67
- "dev": "npm run webpack:dev",
68
69
  "webpack:dev": "webpack serve --progress --config .webpack/webpack-dev.js",
69
70
  "webpack:dynamic-import": "webpack --progress --config .webpack/webpack-dynamic-import",
70
71
  "webpack:bundle": "webpack --progress --config .webpack/webpack-bundle",
@@ -83,11 +84,6 @@
83
84
  "pako": "^2.0.4",
84
85
  "uuid": "^9.0.0"
85
86
  },
86
- "husky": {
87
- "hooks": {
88
- "pre-commit": "lint-staged"
89
- }
90
- },
91
87
  "lint-staged": {
92
88
  "src/**/*.{js,jsx,json,css}": [
93
89
  "eslint --fix",
@@ -100,5 +96,5 @@
100
96
  "path": "./node_modules/cz-conventional-changelog"
101
97
  }
102
98
  },
103
- "gitHead": "7606aa14c5a072bc63b24d82cbe347eb80cf5c6a"
99
+ "gitHead": "2728527bed3e9fba859b637cb87671da16b79c07"
104
100
  }