dcmjs 0.19.8 → 0.19.9

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.
package/build/dcmjs.es.js CHANGED
@@ -12441,24 +12441,58 @@ function generateToolState$1(imageIds, arrayBuffer, metadataProvider) {
12441
12441
 
12442
12442
 
12443
12443
  function findReferenceSourceImageId(multiframe, frameSegment, imageIds, metadataProvider, tolerance) {
12444
+ var imageId = undefined;
12445
+
12446
+ if (!multiframe) {
12447
+ return imageId;
12448
+ }
12449
+
12444
12450
  var FrameOfReferenceUID = multiframe.FrameOfReferenceUID,
12445
12451
  PerFrameFunctionalGroupsSequence = multiframe.PerFrameFunctionalGroupsSequence,
12446
12452
  SourceImageSequence = multiframe.SourceImageSequence,
12447
12453
  ReferencedSeriesSequence = multiframe.ReferencedSeriesSequence;
12454
+
12455
+ if (!PerFrameFunctionalGroupsSequence || PerFrameFunctionalGroupsSequence.length === 0) {
12456
+ return imageId;
12457
+ }
12458
+
12448
12459
  var PerFrameFunctionalGroup = PerFrameFunctionalGroupsSequence[frameSegment];
12449
- var imageId = undefined;
12450
- var sourceImageSequence;
12451
12460
 
12452
- if (SourceImageSequence) {
12453
- sourceImageSequence = multiframe.SourceImageSequence[frameSegment];
12461
+ if (!PerFrameFunctionalGroup) {
12462
+ return imageId;
12463
+ }
12464
+
12465
+ var frameSourceImageSequence = undefined;
12466
+
12467
+ if (SourceImageSequence && SourceImageSequence.length !== 0) {
12468
+ frameSourceImageSequence = SourceImageSequence[frameSegment];
12454
12469
  } else if (PerFrameFunctionalGroup.DerivationImageSequence) {
12455
12470
  var DerivationImageSequence = PerFrameFunctionalGroup.DerivationImageSequence;
12456
- DerivationImageSequence = Array.isArray(DerivationImageSequence) ? DerivationImageSequence[0] : DerivationImageSequence;
12457
- sourceImageSequence = DerivationImageSequence.SourceImageSequence;
12458
- sourceImageSequence = Array.isArray(sourceImageSequence) ? sourceImageSequence[0] : sourceImageSequence;
12471
+
12472
+ if (Array.isArray(DerivationImageSequence)) {
12473
+ if (DerivationImageSequence.length !== 0) {
12474
+ DerivationImageSequence = DerivationImageSequence[0];
12475
+ } else {
12476
+ DerivationImageSequence = undefined;
12477
+ }
12478
+ }
12479
+
12480
+ if (DerivationImageSequence) {
12481
+ frameSourceImageSequence = DerivationImageSequence.SourceImageSequence;
12482
+
12483
+ if (Array.isArray(frameSourceImageSequence)) {
12484
+ if (frameSourceImageSequence.length !== 0) {
12485
+ frameSourceImageSequence = frameSourceImageSequence[0];
12486
+ } else {
12487
+ frameSourceImageSequence = undefined;
12488
+ }
12489
+ }
12490
+ }
12459
12491
  }
12460
12492
 
12461
- imageId = getImageIdOfSourceImagebySourceImageSequence(sourceImageSequence, imageIds, metadataProvider);
12493
+ if (frameSourceImageSequence) {
12494
+ imageId = getImageIdOfSourceImagebySourceImageSequence(frameSourceImageSequence, imageIds, metadataProvider);
12495
+ }
12462
12496
 
12463
12497
  if (imageId === undefined && ReferencedSeriesSequence) {
12464
12498
  var referencedSeriesSequence = Array.isArray(ReferencedSeriesSequence) ? ReferencedSeriesSequence[0] : ReferencedSeriesSequence;