All files / platform/app/src/routes/Local dicomFileLoader.js

30% Statements 3/10
0% Branches 0/2
33.33% Functions 1/3
12.5% Lines 1/8

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28        34x                                              
import dcmjs from 'dcmjs';
import dicomImageLoader from '@cornerstonejs/dicom-image-loader';
import FileLoader from './fileLoader';
 
const DICOMFileLoader = new (class extends FileLoader {
  fileType = 'application/dicom';
  loadFile(file, imageId) {
    return dicomImageLoader.wadouri.loadFileRequest(imageId);
  }
 
  getDataset(image, imageId) {
    const dicomData = dcmjs.data.DicomMessage.readFile(image);
 
    const dataset = dcmjs.data.DicomMetaDictionary.naturalizeDataset(dicomData.dict);
 
    dataset.url = imageId;
 
    dataset._meta = dcmjs.data.DicomMetaDictionary.namifyDataset(dicomData.meta);
 
    dataset.AvailableTransferSyntaxUID =
      dataset.AvailableTransferSyntaxUID || dataset._meta.TransferSyntaxUID?.Value?.[0];
 
    return dataset;
  }
})();
 
export default DICOMFileLoader;