@ohif/app 3.7.0-beta.16 → 3.7.0-beta.18
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/dist/{82.bundle.13651abb7d561fb13075.js → 82.bundle.36a3d722aebf6b806ba2.js} +2 -2
- package/dist/{app.bundle.3cc68334a9be5a6e6507.js → app.bundle.c9ec6ae85699a4a7f995.js} +393 -27
- package/dist/index.html +1 -1
- package/dist/sw.js +1 -1
- package/package.json +18 -18
- /package/dist/{192.bundle.d5787437d49c5b91fd74.js → 192.bundle.80c466e282bcdb5b72ac.js} +0 -0
- /package/dist/{199.bundle.3ccfa1af409ce91e0d1f.js → 199.bundle.0e613a24ec6143e83bbc.js} +0 -0
- /package/dist/{208.bundle.be570fddd8316e1c76f0.js → 208.bundle.906ff22cd208594be286.js} +0 -0
- /package/dist/{283.bundle.1c3029921e773a2347a0.js → 283.bundle.2bf72b0b9b94cdedbce1.js} +0 -0
- /package/dist/{404.bundle.b69ff378f8f6b9e39d17.js → 404.bundle.9b896bb843642ddffc20.js} +0 -0
- /package/dist/{50.bundle.856b2aa171a7e6e3ea17.js → 50.bundle.e1ef4456a2498b7e62cb.js} +0 -0
- /package/dist/{616.bundle.5c9e9f72123226c3218d.js → 616.bundle.8f1b07e988ac707600bf.js} +0 -0
- /package/dist/{642.bundle.86adc14a4188c51bf4ef.js → 642.bundle.b18d18ef141e16aad463.js} +0 -0
- /package/dist/{707.bundle.10c67cfdae61e4b4b2db.js → 707.bundle.d5d938d4857f81def2a4.js} +0 -0
- /package/dist/{744.bundle.5b0264e60cf19a39d01c.js → 744.bundle.dd652cc93cd99941c0e0.js} +0 -0
- /package/dist/{790.bundle.5a84235d113c75c41f4d.js → 790.bundle.67bb7d441bf50ab83c53.js} +0 -0
- /package/dist/{917.bundle.72958266713d00212e98.js → 917.bundle.86d381a97c835abc241c.js} +0 -0
- /package/dist/{973.bundle.d139bc687e2313cbfa57.js → 973.bundle.736ed133fd433b53c696.js} +0 -0
- /package/dist/{976.bundle.3716dc8b86e7cdd6ce21.js → 976.bundle.2a32442d3ef52d273ac7.js} +0 -0
- /package/dist/{984.bundle.c472b1a1e7c46801d1bb.js → 984.bundle.afd091fd85274c11ad0b.js} +0 -0
|
@@ -2149,8 +2149,8 @@ function ViewerLayout(_ref) {
|
|
|
2149
2149
|
hotkeyDefinitions,
|
|
2150
2150
|
hotkeyDefaults
|
|
2151
2151
|
} = hotkeysManager;
|
|
2152
|
-
const versionNumber = "3.7.0-beta.
|
|
2153
|
-
const commitHash = "
|
|
2152
|
+
const versionNumber = "3.7.0-beta.18";
|
|
2153
|
+
const commitHash = "abe939bd2052239c35e5583e4fc8204e225a0e67";
|
|
2154
2154
|
const menuOptions = [{
|
|
2155
2155
|
title: t('Header:About'),
|
|
2156
2156
|
icon: 'info',
|
|
@@ -5111,8 +5111,8 @@ function WorkList(_ref) {
|
|
|
5111
5111
|
};
|
|
5112
5112
|
});
|
|
5113
5113
|
const hasStudies = numOfStudies > 0;
|
|
5114
|
-
const versionNumber = "3.7.0-beta.
|
|
5115
|
-
const commitHash = "
|
|
5114
|
+
const versionNumber = "3.7.0-beta.18";
|
|
5115
|
+
const commitHash = "abe939bd2052239c35e5583e4fc8204e225a0e67";
|
|
5116
5116
|
const menuOptions = [{
|
|
5117
5117
|
title: t('Header:About'),
|
|
5118
5118
|
icon: 'info',
|
|
@@ -10458,23 +10458,176 @@ var validate = __webpack_require__(7315);
|
|
|
10458
10458
|
var validate_default = /*#__PURE__*/__webpack_require__.n(validate);
|
|
10459
10459
|
;// CONCATENATED MODULE: ../../core/src/services/HangingProtocolService/lib/validator.js
|
|
10460
10460
|
|
|
10461
|
-
|
|
10462
|
-
|
|
10463
|
-
|
|
10464
|
-
|
|
10461
|
+
/**
|
|
10462
|
+
* check if the value is strictly equal to options
|
|
10463
|
+
*
|
|
10464
|
+
* @example
|
|
10465
|
+
* value = ['abc', 'def', 'GHI']
|
|
10466
|
+
* testValue = 'abc' (Fail)
|
|
10467
|
+
* = ['abc'] (Fail)
|
|
10468
|
+
* = ['abc', 'def', 'GHI'] (Valid)
|
|
10469
|
+
* = ['abc', 'GHI', 'def'] (Fail)
|
|
10470
|
+
* = ['abc', 'def'] (Fail)
|
|
10471
|
+
*
|
|
10472
|
+
* value = 'Attenuation Corrected'
|
|
10473
|
+
* testValue = 'Attenuation Corrected' (Valid)
|
|
10474
|
+
* testValue = 'Attenuation' (Fail)
|
|
10475
|
+
*
|
|
10476
|
+
* value = ['Attenuation Corrected']
|
|
10477
|
+
* testValue = ['Attenuation Corrected'] (Valid)
|
|
10478
|
+
* = 'Attenuation Corrected' (Valid)
|
|
10479
|
+
* = 'Attenuation' (Fail)
|
|
10480
|
+
*
|
|
10481
|
+
* */
|
|
10482
|
+
(validate_default()).validators.equals = function (value, options, key) {
|
|
10483
|
+
const testValue = getTestValue(options);
|
|
10484
|
+
const dicomArrayValue = dicomTagToArray(value);
|
|
10485
|
+
|
|
10486
|
+
// If options is an array, then we need to validate each element in the array
|
|
10487
|
+
if (Array.isArray(testValue)) {
|
|
10488
|
+
// If the array has only one element, then we need to compare the value to that element
|
|
10489
|
+
if (testValue.length !== dicomArrayValue.length) {
|
|
10490
|
+
return `${key} must be an array of length ${testValue.length}`;
|
|
10491
|
+
} else {
|
|
10492
|
+
for (let i = 0; i < testValue.length; i++) {
|
|
10493
|
+
if (testValue[i] !== dicomArrayValue[i]) {
|
|
10494
|
+
return `${key} ${testValue[i]} must equal ${dicomArrayValue[i]}`;
|
|
10495
|
+
}
|
|
10496
|
+
}
|
|
10497
|
+
}
|
|
10498
|
+
} else if (testValue !== dicomArrayValue[0]) {
|
|
10499
|
+
return `${key} must equal ${testValue}`;
|
|
10465
10500
|
}
|
|
10466
10501
|
};
|
|
10502
|
+
/**
|
|
10503
|
+
* check if the value is not equal to options
|
|
10504
|
+
*
|
|
10505
|
+
* @example
|
|
10506
|
+
* value = ['abc', 'def', 'GHI']
|
|
10507
|
+
* testValue = 'abc' (Valid)
|
|
10508
|
+
* = ['abc'] (Valid)
|
|
10509
|
+
* = ['abc', 'def', 'GHI'] (Fail)
|
|
10510
|
+
* = ['abc', 'GHI', 'def'] (Valid)
|
|
10511
|
+
* = ['abc', 'def'] (Valid)
|
|
10512
|
+
*
|
|
10513
|
+
* value = 'Attenuation Corrected'
|
|
10514
|
+
* = 'Attenuation Corrected' (Fail)
|
|
10515
|
+
* = 'Attenuation' (Valid)
|
|
10516
|
+
*
|
|
10517
|
+
* value = ['Attenuation Corrected']
|
|
10518
|
+
* testValue = ['Attenuation Corrected'] (Fail)
|
|
10519
|
+
* = 'Attenuation Corrected' (Fail)
|
|
10520
|
+
* = 'Attenuation' (Fail)
|
|
10521
|
+
* */
|
|
10467
10522
|
(validate_default()).validators.doesNotEqual = function (value, options, key) {
|
|
10468
|
-
const testValue = options
|
|
10469
|
-
|
|
10470
|
-
|
|
10523
|
+
const testValue = getTestValue(options);
|
|
10524
|
+
const dicomArrayValue = dicomTagToArray(value);
|
|
10525
|
+
if (Array.isArray(testValue)) {
|
|
10526
|
+
if (testValue.length === dicomArrayValue.length) {
|
|
10527
|
+
let score = 0;
|
|
10528
|
+
testValue.forEach((x, i) => {
|
|
10529
|
+
if (x === dicomArrayValue[i]) {
|
|
10530
|
+
score++;
|
|
10531
|
+
}
|
|
10532
|
+
});
|
|
10533
|
+
if (score === testValue.length) {
|
|
10534
|
+
return `${key} must not equal to ${testValue}`;
|
|
10535
|
+
}
|
|
10536
|
+
}
|
|
10537
|
+
} else if (testValue === dicomArrayValue[0]) {
|
|
10538
|
+
console.debug(dicomArrayValue, testValue);
|
|
10539
|
+
return `${key} must not equal to ${testValue}`;
|
|
10471
10540
|
}
|
|
10472
10541
|
};
|
|
10473
10542
|
|
|
10543
|
+
/**
|
|
10544
|
+
* Check if a value includes one or more specified options.
|
|
10545
|
+
*
|
|
10546
|
+
* @example
|
|
10547
|
+
* value = ['abc', 'def', 'GHI']
|
|
10548
|
+
* testValue = ‘abc’ (Fail)
|
|
10549
|
+
* = ‘dog’ (Fail)
|
|
10550
|
+
* = [‘abc’] (Valid)
|
|
10551
|
+
* = [‘att’, ‘abc’] (Valid)
|
|
10552
|
+
* = ['abc', 'def', 'dog'] (Valid)
|
|
10553
|
+
* = ['cat', 'dog'] (Fail)
|
|
10554
|
+
*
|
|
10555
|
+
* value = ['Attenuation Corrected']
|
|
10556
|
+
* testValue = 'Attenuation Corrected' (Fail)
|
|
10557
|
+
* = ['Attenuation Corrected', 'Corrected'] (Valid)
|
|
10558
|
+
* = ['Attenuation', 'Corrected'] (Fail)
|
|
10559
|
+
*
|
|
10560
|
+
* value = 'Attenuation Corrected'
|
|
10561
|
+
* testValue = ['Attenuation Corrected', 'Corrected'] (Valid)
|
|
10562
|
+
* = ['Attenuation', 'Corrected'] (Fail)
|
|
10563
|
+
* */
|
|
10564
|
+
(validate_default()).validators.includes = function (value, options, key) {
|
|
10565
|
+
const testValue = getTestValue(options);
|
|
10566
|
+
const dicomArrayValue = dicomTagToArray(value);
|
|
10567
|
+
if (Array.isArray(testValue)) {
|
|
10568
|
+
const includedValues = testValue.filter(el => dicomArrayValue.includes(el));
|
|
10569
|
+
if (includedValues.length === 0) {
|
|
10570
|
+
return `${key} must include at least one of the following values: ${testValue.join(', ')}`;
|
|
10571
|
+
}
|
|
10572
|
+
} else return `${key} ${testValue} must be an array`;
|
|
10573
|
+
// else if (!value.includes(testValue)) {
|
|
10574
|
+
// return `${key} ${value} must include ${testValue}`;
|
|
10575
|
+
// }
|
|
10576
|
+
};
|
|
10577
|
+
/**
|
|
10578
|
+
* Check if a value does not include one or more specified options.
|
|
10579
|
+
*
|
|
10580
|
+
* @example
|
|
10581
|
+
* value = ['abc', 'def', 'GHI']
|
|
10582
|
+
* testValue = ['Corr'] (Valid)
|
|
10583
|
+
* = 'abc' (Fail)
|
|
10584
|
+
* = ['abc'] (Fail)
|
|
10585
|
+
* = [‘att’, ‘cor’] (Valid)
|
|
10586
|
+
* = ['abc', 'def', 'dog'] (Fail)
|
|
10587
|
+
*
|
|
10588
|
+
* value = ['Attenuation Corrected']
|
|
10589
|
+
* testValue = 'Attenuation Corrected' (Fail)
|
|
10590
|
+
* = ['Attenuation Corrected', 'Corrected'] (Fail)
|
|
10591
|
+
* = ['Attenuation', 'Corrected'] (Valid)
|
|
10592
|
+
*
|
|
10593
|
+
* value = 'Attenuation Corrected'
|
|
10594
|
+
* testValue = ['Attenuation Corrected', 'Corrected'] (Fail)
|
|
10595
|
+
* = ['Attenuation', 'Corrected'] (Valid)
|
|
10596
|
+
* */
|
|
10597
|
+
(validate_default()).validators.doesNotInclude = function (value, options, key) {
|
|
10598
|
+
const testValue = getTestValue(options);
|
|
10599
|
+
const dicomArrayValue = dicomTagToArray(value);
|
|
10600
|
+
|
|
10601
|
+
// if (!Array.isArray(value) || value.length === 1) {
|
|
10602
|
+
// return `${key} is not allowed as a single value`;
|
|
10603
|
+
// }
|
|
10604
|
+
if (Array.isArray(testValue)) {
|
|
10605
|
+
const includedValues = testValue.filter(el => dicomArrayValue.includes(el));
|
|
10606
|
+
if (includedValues.length > 0) {
|
|
10607
|
+
return `${key} must not include the following value: ${includedValues}`;
|
|
10608
|
+
}
|
|
10609
|
+
} else return `${key} ${testValue} must be an array`;
|
|
10610
|
+
};
|
|
10474
10611
|
// Ignore case contains.
|
|
10475
10612
|
// options testValue MUST be in lower case already, otherwise it won't match
|
|
10613
|
+
/**
|
|
10614
|
+
* @example
|
|
10615
|
+
* value = 'Attenuation Corrected'
|
|
10616
|
+
* testValue = ‘Corr’ (Valid)
|
|
10617
|
+
* = ‘corr’ (Valid)
|
|
10618
|
+
* = [‘att’, ‘cor’] (Valid)
|
|
10619
|
+
* = [‘Att’, ‘Wall’] (Valid)
|
|
10620
|
+
* = [‘cat’, ‘dog’] (Fail)
|
|
10621
|
+
*
|
|
10622
|
+
* value = ['abc', 'def', 'GHI']
|
|
10623
|
+
* testValue = 'def' (Valid)
|
|
10624
|
+
* = 'dog' (Fail)
|
|
10625
|
+
* = ['gh', 'de'] (Valid)
|
|
10626
|
+
* = ['cat', 'dog'] (Fail)
|
|
10627
|
+
*
|
|
10628
|
+
* */
|
|
10476
10629
|
(validate_default()).validators.containsI = function (value, options, key) {
|
|
10477
|
-
const testValue = options
|
|
10630
|
+
const testValue = getTestValue(options);
|
|
10478
10631
|
if (Array.isArray(value)) {
|
|
10479
10632
|
if (value.some(item => !validate_default().validators.containsI(item.toLowerCase(), options, key))) {
|
|
10480
10633
|
return undefined;
|
|
@@ -10482,17 +10635,33 @@ var validate_default = /*#__PURE__*/__webpack_require__.n(validate);
|
|
|
10482
10635
|
return `No item of ${value.join(',')} contains ${JSON.stringify(testValue)}`;
|
|
10483
10636
|
}
|
|
10484
10637
|
if (Array.isArray(testValue)) {
|
|
10485
|
-
if (testValue.some(subTest => !validate_default().validators.containsI(value, subTest, key))) {
|
|
10638
|
+
if (testValue.some(subTest => !validate_default().validators.containsI(value, subTest.toLowerCase(), key))) {
|
|
10486
10639
|
return;
|
|
10487
10640
|
}
|
|
10488
10641
|
return `${key} must contain at least one of ${testValue.join(',')}`;
|
|
10489
10642
|
}
|
|
10490
|
-
if (testValue && value.indexOf && value.toLowerCase().indexOf(testValue) === -1) {
|
|
10643
|
+
if (testValue && value.indexOf && value.toLowerCase().indexOf(testValue.toLowerCase()) === -1) {
|
|
10491
10644
|
return key + 'must contain any case of' + testValue;
|
|
10492
10645
|
}
|
|
10493
10646
|
};
|
|
10647
|
+
/**
|
|
10648
|
+
* @example
|
|
10649
|
+
* value = 'Attenuation Corrected'
|
|
10650
|
+
* testValue = ‘Corr’ (Valid)
|
|
10651
|
+
* = ‘corr’ (Fail)
|
|
10652
|
+
* = [‘att’, ‘cor’] (Fail)
|
|
10653
|
+
* = [‘Att’, ‘Wall’] (Valid)
|
|
10654
|
+
* = [‘cat’, ‘dog’] (Fail)
|
|
10655
|
+
*
|
|
10656
|
+
* value = ['abc', 'def', 'GHI']
|
|
10657
|
+
* testValue = 'def' (Valid)
|
|
10658
|
+
* = 'dog' (Fail)
|
|
10659
|
+
* = ['cat', 'de'] (Valid)
|
|
10660
|
+
* = ['cat', 'dog'] (Fail)
|
|
10661
|
+
*
|
|
10662
|
+
* */
|
|
10494
10663
|
(validate_default()).validators.contains = function (value, options, key) {
|
|
10495
|
-
const testValue = options
|
|
10664
|
+
const testValue = getTestValue(options);
|
|
10496
10665
|
if (Array.isArray(value)) {
|
|
10497
10666
|
if (value.some(item => !validate_default().validators.contains(item, options, key))) {
|
|
10498
10667
|
return undefined;
|
|
@@ -10509,35 +10678,231 @@ var validate_default = /*#__PURE__*/__webpack_require__.n(validate);
|
|
|
10509
10678
|
return key + 'must contain ' + testValue;
|
|
10510
10679
|
}
|
|
10511
10680
|
};
|
|
10681
|
+
/**
|
|
10682
|
+
* @example
|
|
10683
|
+
* value = 'Attenuation Corrected'
|
|
10684
|
+
* testValue = ‘Corr’ (Fail)
|
|
10685
|
+
* = ‘corr’ (Valid)
|
|
10686
|
+
* = [‘att’, ‘cor’] (Valid)
|
|
10687
|
+
* = [‘Att’, ‘Wall’] (Fail)
|
|
10688
|
+
* = [‘cat’, ‘dog’] (Valid)
|
|
10689
|
+
*
|
|
10690
|
+
* value = ['abc', 'def', 'GHI']
|
|
10691
|
+
* testValue = 'def' (Fail)
|
|
10692
|
+
* = 'dog' (Valid)
|
|
10693
|
+
* = ['cat', 'de'] (Fail)
|
|
10694
|
+
* = ['cat', 'dog'] (Valid)
|
|
10695
|
+
*
|
|
10696
|
+
* */
|
|
10512
10697
|
(validate_default()).validators.doesNotContain = function (value, options, key) {
|
|
10513
|
-
|
|
10514
|
-
|
|
10698
|
+
const containsResult = validate_default().validators.contains(value, options, key);
|
|
10699
|
+
if (!containsResult) {
|
|
10700
|
+
return `No item of ${value} should contain ${getTestValue(options)}`;
|
|
10701
|
+
}
|
|
10702
|
+
};
|
|
10703
|
+
|
|
10704
|
+
/**
|
|
10705
|
+
* @example
|
|
10706
|
+
* value = 'Attenuation Corrected'
|
|
10707
|
+
* testValue = ‘Corr’ (Fail)
|
|
10708
|
+
* = ‘corr’ (Fail)
|
|
10709
|
+
* = [‘att’, ‘cor’] (Fail)
|
|
10710
|
+
* = [‘Att’, ‘Wall’] (Fail)
|
|
10711
|
+
* = [‘cat’, ‘dog’] (Valid)
|
|
10712
|
+
*
|
|
10713
|
+
* value = ['abc', 'def', 'GHI']
|
|
10714
|
+
* testValue = 'DEF' (Fail)
|
|
10715
|
+
* = 'dog' (Valid)
|
|
10716
|
+
* = ['cat', 'gh'] (Fail)
|
|
10717
|
+
* = ['cat', 'dog'] (Valid)
|
|
10718
|
+
*
|
|
10719
|
+
* */
|
|
10720
|
+
(validate_default()).validators.doesNotContainI = function (value, options, key) {
|
|
10721
|
+
const containsResult = validate_default().validators.containsI(value, options, key);
|
|
10722
|
+
if (!containsResult) {
|
|
10723
|
+
return `No item of ${value} should not contain ${getTestValue(options)}`;
|
|
10515
10724
|
}
|
|
10516
10725
|
};
|
|
10726
|
+
/**
|
|
10727
|
+
* @example
|
|
10728
|
+
* value = 'Attenuation Corrected'
|
|
10729
|
+
* testValue = ‘Corr’ (Fail)
|
|
10730
|
+
* = ‘Att’ (Fail)
|
|
10731
|
+
* = ['cat', 'dog', 'Att'] (Valid)
|
|
10732
|
+
* = [‘cat’, ‘dog’] (Fail)
|
|
10733
|
+
*
|
|
10734
|
+
* value = ['abc', 'def', 'GHI']
|
|
10735
|
+
* testValue = 'deg' (Valid)
|
|
10736
|
+
* = ['cat', 'GH'] (Valid)
|
|
10737
|
+
* = ['cat', 'gh'] (Fail)
|
|
10738
|
+
* = ['cat', 'dog'] (Fail)
|
|
10739
|
+
*
|
|
10740
|
+
* */
|
|
10517
10741
|
(validate_default()).validators.startsWith = function (value, options, key) {
|
|
10518
|
-
|
|
10519
|
-
|
|
10742
|
+
let testValues = getTestValue(options);
|
|
10743
|
+
if (typeof testValues === 'string') {
|
|
10744
|
+
testValues = [testValues];
|
|
10745
|
+
}
|
|
10746
|
+
if (typeof value === 'string') {
|
|
10747
|
+
if (!testValues.some(testValue => value.startsWith(testValue))) {
|
|
10748
|
+
return key + ' must start with any of these values: ' + testValues;
|
|
10749
|
+
}
|
|
10750
|
+
} else if (Array.isArray(value)) {
|
|
10751
|
+
let valid = false;
|
|
10752
|
+
for (let i = 0; i < value.length; i++) {
|
|
10753
|
+
for (let j = 0; j < testValues.length; j++) {
|
|
10754
|
+
if (value[i].startsWith(testValues[j])) {
|
|
10755
|
+
valid = true; // set valid flag to true if a match is found
|
|
10756
|
+
break;
|
|
10757
|
+
}
|
|
10758
|
+
}
|
|
10759
|
+
if (valid) {
|
|
10760
|
+
return undefined; // break out of loop if a match is found
|
|
10761
|
+
}
|
|
10762
|
+
}
|
|
10763
|
+
|
|
10764
|
+
if (!valid) {
|
|
10765
|
+
return key + ' must start with any of these values: ' + testValues; // return undefined if no match is found
|
|
10766
|
+
}
|
|
10767
|
+
} else {
|
|
10768
|
+
return 'Value must be a string or an array';
|
|
10520
10769
|
}
|
|
10521
10770
|
};
|
|
10771
|
+
|
|
10772
|
+
/**
|
|
10773
|
+
* @example
|
|
10774
|
+
* value = 'Attenuation Corrected'
|
|
10775
|
+
* testValue = ‘TED’ (Fail)
|
|
10776
|
+
* = ‘ted’ (Valid)
|
|
10777
|
+
* = ['cat', 'dog', 'ted'] (Valid)
|
|
10778
|
+
* = [‘cat’, ‘dog’] (Fail)
|
|
10779
|
+
*
|
|
10780
|
+
* value = ['abc', 'def', 'GHI']
|
|
10781
|
+
* testValue = 'deg' (Valid)
|
|
10782
|
+
* = ['cat', 'HI'] (Valid)
|
|
10783
|
+
* = ['cat', 'hi'] (Fail)
|
|
10784
|
+
* = ['cat', 'dog'] (Fail)
|
|
10785
|
+
*
|
|
10786
|
+
* */
|
|
10522
10787
|
(validate_default()).validators.endsWith = function (value, options, key) {
|
|
10523
|
-
|
|
10524
|
-
|
|
10788
|
+
let testValues = getTestValue(options);
|
|
10789
|
+
if (typeof testValues === 'string') {
|
|
10790
|
+
testValues = [testValues];
|
|
10791
|
+
}
|
|
10792
|
+
if (typeof value === 'string') {
|
|
10793
|
+
if (!testValues.some(testValue => value.endsWith(testValue))) {
|
|
10794
|
+
return key + ' must end with any of these values: ' + testValues;
|
|
10795
|
+
}
|
|
10796
|
+
} else if (Array.isArray(value)) {
|
|
10797
|
+
let valid = false;
|
|
10798
|
+
for (let i = 0; i < value.length; i++) {
|
|
10799
|
+
for (let j = 0; j < testValues.length; j++) {
|
|
10800
|
+
if (value[i].endsWith(testValues[j])) {
|
|
10801
|
+
valid = true; // set valid flag to true if a match is found
|
|
10802
|
+
break;
|
|
10803
|
+
}
|
|
10804
|
+
}
|
|
10805
|
+
if (valid) {
|
|
10806
|
+
return undefined; // break out of loop if a match is found
|
|
10807
|
+
}
|
|
10808
|
+
}
|
|
10809
|
+
|
|
10810
|
+
if (!valid) {
|
|
10811
|
+
return key + ' must end with any of these values: ' + testValues; // return undefined if no match is found
|
|
10812
|
+
}
|
|
10813
|
+
} else {
|
|
10814
|
+
return key + ' must be a string or an array';
|
|
10525
10815
|
}
|
|
10526
10816
|
};
|
|
10527
|
-
|
|
10817
|
+
/**
|
|
10818
|
+
* @example
|
|
10819
|
+
* value = 30
|
|
10820
|
+
* testValue = 20 (Valid)
|
|
10821
|
+
* = 40 (Fail)
|
|
10822
|
+
*
|
|
10823
|
+
* */
|
|
10528
10824
|
(validate_default()).validators.greaterThan = function (value, options, key) {
|
|
10529
10825
|
const testValue = getTestValue(options);
|
|
10530
|
-
if (value
|
|
10531
|
-
return key
|
|
10826
|
+
if (Array.isArray(value) || typeof value === 'string') {
|
|
10827
|
+
return `${key} is not allowed as an array or string`;
|
|
10828
|
+
}
|
|
10829
|
+
if (Array.isArray(testValue)) {
|
|
10830
|
+
if (testValue.length === 1) {
|
|
10831
|
+
if (!(value >= testValue[0])) {
|
|
10832
|
+
return `${key} must be greater than or equal to ${testValue[0]}, but was ${value}`;
|
|
10833
|
+
}
|
|
10834
|
+
} else if (testValue.length > 1) {
|
|
10835
|
+
return key + ' must be an array of length 1';
|
|
10836
|
+
}
|
|
10837
|
+
} else {
|
|
10838
|
+
if (!(value >= testValue)) {
|
|
10839
|
+
return key + ' must be greater than ' + testValue;
|
|
10840
|
+
}
|
|
10532
10841
|
}
|
|
10533
10842
|
};
|
|
10534
|
-
|
|
10843
|
+
/**
|
|
10844
|
+
* @example
|
|
10845
|
+
* value = 30
|
|
10846
|
+
* testValue = 40 (Valid)
|
|
10847
|
+
* = 20 (Fail)
|
|
10848
|
+
*
|
|
10849
|
+
* */
|
|
10850
|
+
(validate_default()).validators.lessThan = function (value, options, key) {
|
|
10535
10851
|
const testValue = getTestValue(options);
|
|
10536
|
-
if (
|
|
10537
|
-
|
|
10852
|
+
if (Array.isArray(testValue)) {
|
|
10853
|
+
if (testValue.length === 1) {
|
|
10854
|
+
if (!(value <= testValue[0])) {
|
|
10855
|
+
return `${key} must be less than or equal to ${testValue[0]}, but was ${value}`;
|
|
10856
|
+
}
|
|
10857
|
+
} else if (testValue.length > 1) {
|
|
10858
|
+
return key + ' must be an array of length 1';
|
|
10859
|
+
}
|
|
10860
|
+
} else {
|
|
10861
|
+
if (!(value <= testValue)) {
|
|
10862
|
+
return key + ' must be less than ' + testValue;
|
|
10863
|
+
}
|
|
10538
10864
|
}
|
|
10539
10865
|
};
|
|
10866
|
+
/**
|
|
10867
|
+
* @example
|
|
10868
|
+
|
|
10869
|
+
*
|
|
10870
|
+
* value = 50
|
|
10871
|
+
* testValue = [10,60] (Valid)
|
|
10872
|
+
* = [60, 10] (Valid)
|
|
10873
|
+
* = [0, 10] (Fail)
|
|
10874
|
+
* = [70, 80] (Fail)
|
|
10875
|
+
* = 45 (Fail)
|
|
10876
|
+
* = [45] (Fail)
|
|
10877
|
+
*
|
|
10878
|
+
* */
|
|
10879
|
+
(validate_default()).validators.range = function (value, options, key) {
|
|
10880
|
+
const testValue = getTestValue(options);
|
|
10881
|
+
if (Array.isArray(testValue) && testValue.length === 2) {
|
|
10882
|
+
const min = Math.min(testValue[0], testValue[1]);
|
|
10883
|
+
const max = Math.max(testValue[0], testValue[1]);
|
|
10884
|
+
if (value === undefined || value < min || value > max) {
|
|
10885
|
+
return `${key} with value ${value} must be between ${min} and ${max}`;
|
|
10886
|
+
}
|
|
10887
|
+
} else return `${key} must be an array of length 2`;
|
|
10888
|
+
};
|
|
10540
10889
|
(validate_default()).validators.notNull = value => value === null || value === undefined ? 'Value is null' : undefined;
|
|
10890
|
+
const getTestValue = options => {
|
|
10891
|
+
if (Array.isArray(options)) {
|
|
10892
|
+
return options.map(option => option?.value ?? option);
|
|
10893
|
+
} else {
|
|
10894
|
+
return options?.value ?? options;
|
|
10895
|
+
}
|
|
10896
|
+
};
|
|
10897
|
+
const dicomTagToArray = value => {
|
|
10898
|
+
let dicomArrayValue;
|
|
10899
|
+
if (!Array.isArray(value)) {
|
|
10900
|
+
dicomArrayValue = [value];
|
|
10901
|
+
} else {
|
|
10902
|
+
dicomArrayValue = [...value];
|
|
10903
|
+
}
|
|
10904
|
+
return dicomArrayValue;
|
|
10905
|
+
};
|
|
10541
10906
|
/* harmony default export */ const validator = ((validate_default()));
|
|
10542
10907
|
;// CONCATENATED MODULE: ../../core/src/services/HangingProtocolService/HPMatcher.js
|
|
10543
10908
|
|
|
@@ -13460,6 +13825,7 @@ class HangingProtocolService extends PubSubService {
|
|
|
13460
13825
|
const studyMatchDetails = this.protocolEngine.findMatch(study, studyMatchingRules, {
|
|
13461
13826
|
studies: this.studies,
|
|
13462
13827
|
displaySets: studyDisplaySets,
|
|
13828
|
+
allDisplaySets: this.displaySets,
|
|
13463
13829
|
displaySetMatchDetails: this.displaySetMatchDetails
|
|
13464
13830
|
});
|
|
13465
13831
|
|
|
@@ -19984,7 +20350,7 @@ const detectionOptions = {
|
|
|
19984
20350
|
}
|
|
19985
20351
|
});
|
|
19986
20352
|
;// CONCATENATED MODULE: ../../i18n/package.json
|
|
19987
|
-
const package_namespaceObject = JSON.parse('{"i8":"3.7.0-beta.
|
|
20353
|
+
const package_namespaceObject = JSON.parse('{"i8":"3.7.0-beta.17"}');
|
|
19988
20354
|
;// CONCATENATED MODULE: ../../i18n/src/utils.js
|
|
19989
20355
|
const languagesMap = {
|
|
19990
20356
|
ar: 'Arabic',
|
|
@@ -154043,7 +154409,7 @@ var selectOrdinal = function selectOrdinal() {
|
|
|
154043
154409
|
/******/ // This function allow to reference async chunks
|
|
154044
154410
|
/******/ __webpack_require__.u = (chunkId) => {
|
|
154045
154411
|
/******/ // return url for filenames based on template
|
|
154046
|
-
/******/ return "" + (chunkId === 18 ? "dicom-microscopy-viewer" : chunkId) + ".bundle." + {"18":"aa60bdf008c32c39cfd7","50":"
|
|
154412
|
+
/******/ return "" + (chunkId === 18 ? "dicom-microscopy-viewer" : chunkId) + ".bundle." + {"18":"aa60bdf008c32c39cfd7","50":"e1ef4456a2498b7e62cb","55":"e9bf24eb17d84049c640","82":"36a3d722aebf6b806ba2","151":"31ea35044218837bf73f","192":"80c466e282bcdb5b72ac","199":"0e613a24ec6143e83bbc","205":"b5a473c200dcf2bbcdb4","208":"906ff22cd208594be286","270":"cddac4adcfdf8d1082a3","283":"2bf72b0b9b94cdedbce1","295":"957b1159fec14b9199a1","331":"af86275686a78739ec4c","351":"bbd6e3b383ac731edc94","381":"0905e683605fcbc0895f","404":"9b896bb843642ddffc20","531":"2a82fb1d69e5b57cc72b","569":"a014357d3ff0c926d1a8","581":"0b1b8273eb694c11366d","606":"5d876f5f3dd8287f0a28","616":"8f1b07e988ac707600bf","642":"b18d18ef141e16aad463","664":"09abae984223969d1bde","707":"d5d938d4857f81def2a4","728":"d13856835357400fef82","744":"dd652cc93cd99941c0e0","780":"fd0f13dc92e9caa0581e","790":"67bb7d441bf50ab83c53","799":"6fbb7a97bccfb55dc79f","806":"2e7934d0833c4315c292","917":"86d381a97c835abc241c","926":"dbc9d0e591cb9217fda2","935":"deeffff0e4f7b528e3c3","953":"bad442420f62f5ab0c4b","973":"736ed133fd433b53c696","976":"2a32442d3ef52d273ac7","984":"afd091fd85274c11ad0b"}[chunkId] + ".js";
|
|
154047
154413
|
/******/ };
|
|
154048
154414
|
/******/ })();
|
|
154049
154415
|
/******/
|
package/dist/index.html
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
<!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"/><meta name="theme-color" content="#000000"/><meta name="mobile-web-app-capable" content="yes"/><meta name="application-name" content="OHIF Viewer"/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta name="apple-mobile-web-app-title" content="@ohif/app"/><meta name="msapplication-TileColor" content="#fff"/><meta name="msapplication-TileImage" content="/assets/mstile-144x144.png"/><meta name="msapplication-config" content="/assets/browserconfig.xml"/><link rel="manifest" href="/manifest.json"/><link rel="shortcut icon" href="/assets/favicon.ico"/><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"/><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"/><link rel="apple-touch-icon" sizes="57x57" href="/assets/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon" sizes="60x60" href="/assets/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon" sizes="72x72" href="/assets/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon" sizes="76x76" href="/assets/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon" sizes="114x114" href="/assets/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon" sizes="120x120" href="/assets/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon" sizes="144x144" href="/assets/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon" sizes="152x152" href="/assets/apple-touch-icon-152x152.png"/><link rel="apple-touch-icon" sizes="167x167" href="/assets/apple-touch-icon-167x167.png"/><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon-180x180.png"/><link rel="apple-touch-icon" sizes="1024x1024" href="/assets/apple-touch-icon-1024x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-320x460.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x920.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x1096.png"/><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-750x1294.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1182x2208.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1242x2148.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-748x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-768x1004.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1496x2048.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1536x2008.png"/><link rel="icon" type="image/png" sizes="228x228" href="/assets/coast-228x228.png"/><link rel="yandex-tableau-widget" href="/assets/yandex-browser-manifest.json"/><script>window.PUBLIC_URL = '/';</script><script rel="preload" as="script" src="/app-config.js"></script><script rel="preload" as="script" type="module" src="/init-service-worker.js"></script><title>OHIF Viewer</title><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css?family=Inter:100,300,400,500,700&display=swap" rel="stylesheet" rel="preload" as="style"/><script defer="defer" src="/app.bundle.
|
|
1
|
+
<!doctype html><html lang="en"><head><meta charset="UTF-8"/><meta name="viewport" content="width=device-width,initial-scale=1,shrink-to-fit=no"/><meta name="theme-color" content="#000000"/><meta name="mobile-web-app-capable" content="yes"/><meta name="application-name" content="OHIF Viewer"/><meta name="apple-mobile-web-app-capable" content="yes"/><meta name="apple-mobile-web-app-status-bar-style" content="black-translucent"/><meta name="apple-mobile-web-app-title" content="@ohif/app"/><meta name="msapplication-TileColor" content="#fff"/><meta name="msapplication-TileImage" content="/assets/mstile-144x144.png"/><meta name="msapplication-config" content="/assets/browserconfig.xml"/><link rel="manifest" href="/manifest.json"/><link rel="shortcut icon" href="/assets/favicon.ico"/><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"/><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"/><link rel="apple-touch-icon" sizes="57x57" href="/assets/apple-touch-icon-57x57.png"/><link rel="apple-touch-icon" sizes="60x60" href="/assets/apple-touch-icon-60x60.png"/><link rel="apple-touch-icon" sizes="72x72" href="/assets/apple-touch-icon-72x72.png"/><link rel="apple-touch-icon" sizes="76x76" href="/assets/apple-touch-icon-76x76.png"/><link rel="apple-touch-icon" sizes="114x114" href="/assets/apple-touch-icon-114x114.png"/><link rel="apple-touch-icon" sizes="120x120" href="/assets/apple-touch-icon-120x120.png"/><link rel="apple-touch-icon" sizes="144x144" href="/assets/apple-touch-icon-144x144.png"/><link rel="apple-touch-icon" sizes="152x152" href="/assets/apple-touch-icon-152x152.png"/><link rel="apple-touch-icon" sizes="167x167" href="/assets/apple-touch-icon-167x167.png"/><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon-180x180.png"/><link rel="apple-touch-icon" sizes="1024x1024" href="/assets/apple-touch-icon-1024x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-320x460.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 480px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x920.png"/><link rel="apple-touch-startup-image" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-640x1096.png"/><link rel="apple-touch-startup-image" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-750x1294.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1182x2208.png"/><link rel="apple-touch-startup-image" media="(device-width: 414px) and (device-height: 736px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 3)" href="/assets/apple-touch-startup-image-1242x2148.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-748x1024.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 1)" href="/assets/apple-touch-startup-image-768x1004.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: landscape) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1496x2048.png"/><link rel="apple-touch-startup-image" media="(device-width: 768px) and (device-height: 1024px) and (orientation: portrait) and (-webkit-device-pixel-ratio: 2)" href="/assets/apple-touch-startup-image-1536x2008.png"/><link rel="icon" type="image/png" sizes="228x228" href="/assets/coast-228x228.png"/><link rel="yandex-tableau-widget" href="/assets/yandex-browser-manifest.json"/><script>window.PUBLIC_URL = '/';</script><script rel="preload" as="script" src="/app-config.js"></script><script rel="preload" as="script" type="module" src="/init-service-worker.js"></script><title>OHIF Viewer</title><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin/><link href="https://fonts.googleapis.com/css?family=Inter:100,300,400,500,700&display=swap" rel="stylesheet" rel="preload" as="style"/><script defer="defer" src="/app.bundle.c9ec6ae85699a4a7f995.js"></script><link href="/app.bundle.css" rel="stylesheet"></head><body><noscript>You need to enable JavaScript to run this app.</noscript><div id="root"></div></body></html>
|
package/dist/sw.js
CHANGED
|
@@ -51,7 +51,7 @@ self.addEventListener('message', event => {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
});
|
|
54
|
-
workbox.precaching.precacheAndRoute([{'revision':null,'url':'/151.bundle.31ea35044218837bf73f.js'},{'revision':null,'url':'/192.bundle.
|
|
54
|
+
workbox.precaching.precacheAndRoute([{'revision':null,'url':'/151.bundle.31ea35044218837bf73f.js'},{'revision':null,'url':'/192.bundle.80c466e282bcdb5b72ac.js'},{'revision':null,'url':'/199.bundle.0e613a24ec6143e83bbc.js'},{'revision':null,'url':'/205.bundle.b5a473c200dcf2bbcdb4.js'},{'revision':null,'url':'/208.bundle.906ff22cd208594be286.js'},{'revision':null,'url':'/270.bundle.cddac4adcfdf8d1082a3.js'},{'revision':null,'url':'/283.bundle.2bf72b0b9b94cdedbce1.js'},{'revision':null,'url':'/295.bundle.957b1159fec14b9199a1.js'},{'revision':null,'url':'/331.bundle.af86275686a78739ec4c.js'},{'revision':null,'url':'/351.bundle.bbd6e3b383ac731edc94.js'},{'revision':'a04a2f233dc569826f5f6e21b65bc87b','url':'/351.css'},{'revision':'c4ea120c6da08aa75348edfa3e57ece9','url':'/36785fbd89b0e17f6099.wasm'},{'revision':null,'url':'/381.bundle.0905e683605fcbc0895f.js'},{'revision':null,'url':'/404.bundle.9b896bb843642ddffc20.js'},{'revision':null,'url':'/50.bundle.e1ef4456a2498b7e62cb.js'},{'revision':'c377e1f5fe4a207d270c3f7a8dd3e3ca','url':'/5004fdc02f329ce53b69.wasm'},{'revision':null,'url':'/531.bundle.2a82fb1d69e5b57cc72b.js'},{'revision':null,'url':'/55.bundle.e9bf24eb17d84049c640.js'},{'revision':'0afb25509c7f072fbd7eda42c6895dbf','url':'/55.css'},{'revision':null,'url':'/569.bundle.a014357d3ff0c926d1a8.js'},{'revision':null,'url':'/581.bundle.0b1b8273eb694c11366d.js'},{'revision':null,'url':'/606.bundle.5d876f5f3dd8287f0a28.js'},{'revision':'62b4ae8445d191d5aab5503ce475724d','url':'/610.min.worker.js'},{'revision':'3c2206525c18cd87dd28082949a4e43e','url':'/610.min.worker.js.map'},{'revision':null,'url':'/616.bundle.8f1b07e988ac707600bf.js'},{'revision':'5800265b6831396572fb5d32c6bd8eef','url':'/62ab5d58a2bea7b5a1dc.wasm'},{'revision':null,'url':'/642.bundle.b18d18ef141e16aad463.js'},{'revision':'ce10eced3ce34e663d86569b27f5bffb','url':'/65916ef3def695744bda.wasm'},{'revision':null,'url':'/664.bundle.09abae984223969d1bde.js'},{'revision':null,'url':'/707.bundle.d5d938d4857f81def2a4.js'},{'revision':'185e5e0a10fa6ab2fc7b3c38e63d550b','url':'/707.css'},{'revision':null,'url':'/728.bundle.d13856835357400fef82.js'},{'revision':null,'url':'/744.bundle.dd652cc93cd99941c0e0.js'},{'revision':'cf3e4d4fa8884275461c195421812256','url':'/75788f12450d4c5ed494.wasm'},{'revision':'cc4a3a4da4ac1b863a714f93c66c6ef2','url':'/75a0c2dfe07b824c7d21.wasm'},{'revision':null,'url':'/780.bundle.fd0f13dc92e9caa0581e.js'},{'revision':null,'url':'/790.bundle.67bb7d441bf50ab83c53.js'},{'revision':null,'url':'/799.bundle.6fbb7a97bccfb55dc79f.js'},{'revision':'51b8ed55f5b8d448837222f03bdd6de8','url':'/806.css'},{'revision':null,'url':'/82.bundle.36a3d722aebf6b806ba2.js'},{'revision':null,'url':'/917.bundle.86d381a97c835abc241c.js'},{'revision':null,'url':'/926.bundle.dbc9d0e591cb9217fda2.js'},{'revision':null,'url':'/935.bundle.deeffff0e4f7b528e3c3.js'},{'revision':'b12abc3008862bb7daf6a91d2a13cf6a','url':'/945.min.worker.js'},{'revision':'3aba0a4898e93871a7cd61b4d0216a18','url':'/945.min.worker.js.map'},{'revision':null,'url':'/953.bundle.bad442420f62f5ab0c4b.js'},{'revision':null,'url':'/973.bundle.736ed133fd433b53c696.js'},{'revision':null,'url':'/976.bundle.2a32442d3ef52d273ac7.js'},{'revision':null,'url':'/984.bundle.afd091fd85274c11ad0b.js'},{'revision':'d1895aa7a4595dc279c382e5a31ef9f4','url':'/_headers'},{'revision':'6839a719b6810111d8097998b11293a1','url':'/_redirects'},{'revision':'52e767cf35feb8ca59c009582b8b0575','url':'/app-config.js'},{'revision':'0871da67d87443bacdeeb07df0a5c282','url':'/app.bundle.css'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/android-chrome-144x144.png'},{'revision':'5cde390de8a619ebe55a669d2ac3effd','url':'/assets/android-chrome-192x192.png'},{'revision':'e7466a67e90471de05401e53b8fe20be','url':'/assets/android-chrome-256x256.png'},{'revision':'9bbe9b80156e930d19a4e1725aa9ddae','url':'/assets/android-chrome-36x36.png'},{'revision':'5698b2ac0c82fe06d84521fc5482df04','url':'/assets/android-chrome-384x384.png'},{'revision':'56bef3fceec344d9747f8abe9c0bba27','url':'/assets/android-chrome-48x48.png'},{'revision':'3e8b8a01290992e82c242557417b0596','url':'/assets/android-chrome-512x512.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/android-chrome-72x72.png'},{'revision':'4c3289bc690f8519012686888e08da71','url':'/assets/android-chrome-96x96.png'},{'revision':'cf464289183184df09292f581df0fb4f','url':'/assets/apple-touch-icon-1024x1024.png'},{'revision':'0857c5282c594e4900e8b31e3bade912','url':'/assets/apple-touch-icon-114x114.png'},{'revision':'4208f41a28130a67e9392a9dfcee6011','url':'/assets/apple-touch-icon-120x120.png'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/apple-touch-icon-144x144.png'},{'revision':'977d293982af7e9064ba20806b45cf35','url':'/assets/apple-touch-icon-152x152.png'},{'revision':'6de91b4d2a30600b410758405cb567b4','url':'/assets/apple-touch-icon-167x167.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-180x180.png'},{'revision':'647386c34e75f1213830ea9a38913525','url':'/assets/apple-touch-icon-57x57.png'},{'revision':'0c200fe83953738b330ea431083e7a86','url':'/assets/apple-touch-icon-60x60.png'},{'revision':'517925e91e2ce724432d296b687d25e2','url':'/assets/apple-touch-icon-72x72.png'},{'revision':'c9989a807bb18633f6dcf254b5b56124','url':'/assets/apple-touch-icon-76x76.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon-precomposed.png'},{'revision':'87bff140e3773bd7479a620501c4aa5c','url':'/assets/apple-touch-icon.png'},{'revision':'05fa74ea9c1c0c3931ba96467999081d','url':'/assets/apple-touch-startup-image-1182x2208.png'},{'revision':'9e2cd03e1e6fd0520eea6846f4278018','url':'/assets/apple-touch-startup-image-1242x2148.png'},{'revision':'5591e3a1822cbc8439b99c1a40d53425','url':'/assets/apple-touch-startup-image-1496x2048.png'},{'revision':'337de578c5ca04bd7d2be19d24d83821','url':'/assets/apple-touch-startup-image-1536x2008.png'},{'revision':'cafb4ab4eafe6ef946bd229a1d88e7de','url':'/assets/apple-touch-startup-image-320x460.png'},{'revision':'d9bb9e558d729eeac5efb8be8d6111cc','url':'/assets/apple-touch-startup-image-640x1096.png'},{'revision':'038b5b02bac8b82444bf9a87602ac216','url':'/assets/apple-touch-startup-image-640x920.png'},{'revision':'2177076eb07b1d64d663d7c03268be00','url':'/assets/apple-touch-startup-image-748x1024.png'},{'revision':'4fc097443815fe92503584c4bd73c630','url':'/assets/apple-touch-startup-image-750x1294.png'},{'revision':'2e29914062dce5c5141ab47eea2fc5d9','url':'/assets/apple-touch-startup-image-768x1004.png'},{'revision':'f692ec286b3a332c17985f4ed38b1076','url':'/assets/browserconfig.xml'},{'revision':'f3d9a3b647853c45b0e132e4acd0cc4a','url':'/assets/coast-228x228.png'},{'revision':'ad6e1def5c66193d649a31474bbfe45d','url':'/assets/favicon-16x16.png'},{'revision':'84d1dcdb6cdfa55e2f46be0c80fa5698','url':'/assets/favicon-32x32.png'},{'revision':'95fb44c4998a46109e49d724c060db24','url':'/assets/favicon.ico'},{'revision':'5df2a5b0cee399ac0bc40af74ba3c2cb','url':'/assets/firefox_app_128x128.png'},{'revision':'11fd9098c4b07c8a07e1d2a1e309e046','url':'/assets/firefox_app_512x512.png'},{'revision':'27cddfc922dca3bfa27b4a00fc2f5e36','url':'/assets/firefox_app_60x60.png'},{'revision':'2017d95fae79dcf34b5a5b52586d4763','url':'/assets/manifest.webapp'},{'revision':'cb4f64534cdf8dd88f1d7219d44490db','url':'/assets/mstile-144x144.png'},{'revision':'334895225e16a7777e45d81964725a97','url':'/assets/mstile-150x150.png'},{'revision':'e295cca4af6ed0365cf7b014d91b0e9d','url':'/assets/mstile-310x150.png'},{'revision':'cbefa8c42250e5f2443819fe2c69d91e','url':'/assets/mstile-310x310.png'},{'revision':'aa411a69df2b33a1362fa38d1257fa9d','url':'/assets/mstile-70x70.png'},{'revision':'5609af4f69e40e33471aee770ea1d802','url':'/assets/yandex-browser-50x50.png'},{'revision':'cfea70d7ddc8f06f276ea0c85c4b2adf','url':'/assets/yandex-browser-manifest.json'},{'revision':'52b9a07fe0541fe8c313d9788550bf51','url':'/b6b803111e2d06a825bd.wasm'},{'revision':'7edb59d2be7c993050cb31ded36afa31','url':'/c22b37c3488e1d6c3aa4.wasm'},{'revision':'3c03abb7976d9dd2f0958e1c56654102','url':'/cornerstoneDICOMImageLoader.min.js'},{'revision':'f85de7fd8a9a8d95833085a001a19345','url':'/cornerstoneDICOMImageLoader.min.js.map'},{'revision':null,'url':'/dicom-microscopy-viewer.bundle.aa60bdf008c32c39cfd7.js'},{'revision':'9d8c85b42d04bb117a3b583d654fbb08','url':'/dicomMicroscopyViewer.min.js'},{'revision':'450494c199cf8dd8e8c34d5e98bf5334','url':'/dicomMicroscopyViewer.min.js.LICENSE.txt'},{'revision':'0ca44a1b8719e835645ffa804a9d1395','url':'/es6-shim.min.js'},{'revision':'9de58b497a43167958927602cb68cd30','url':'/google.js'},{'revision':'7015e2fdcf8876994faf2e585cce15d1','url':'/index.html'},{'revision':'0d0886e5f1fdb4a209a9065dfb542c22','url':'/index.worker.1c69152d710fa7b84bce.worker.js'},{'revision':'066fd130de42b02857b634de1dc49a73','url':'/index.worker.1c69152d710fa7b84bce.worker.js.map'},{'revision':'71cec55513e051f0778ad89be760c11a','url':'/index.worker.min.worker.js'},{'revision':'fd1116add443fee52a935df926396e0f','url':'/index.worker.min.worker.js.map'},{'revision':'c4c4be134438c4cc55613210f3913526','url':'/init-service-worker.js'},{'revision':'74fc9658b62903be2048c1f82a22b4d4','url':'/manifest.json'},{'revision':'3fa71aa0af3e34b4ebd9a71eee0f4bdd','url':'/ohif-logo-light.svg'},{'revision':'7e81da785c63e75650101db6c5d7560e','url':'/ohif-logo.svg'},{'revision':'754d698a7b334af57c00f29723fd9751','url':'/oidc-client.min.js'},{'revision':'d05a380d50b74e629738ae6f62fb7e78','url':'/polyfill.min.js'},{'revision':'f528b6861c82ee4415fce0821fd695c1','url':'/silent-refresh.html'}]);
|
|
55
55
|
|
|
56
56
|
// TODO: Cache API
|
|
57
57
|
// https://developers.google.com/web/fundamentals/instant-and-offline/web-storage/cache-api
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ohif/app",
|
|
3
|
-
"version": "3.7.0-beta.
|
|
3
|
+
"version": "3.7.0-beta.18",
|
|
4
4
|
"productVersion": "3.4.0",
|
|
5
5
|
"description": "OHIF Viewer",
|
|
6
6
|
"author": "OHIF Contributors",
|
|
@@ -52,22 +52,22 @@
|
|
|
52
52
|
"@cornerstonejs/codec-openjpeg": "^1.2.2",
|
|
53
53
|
"@cornerstonejs/codec-openjph": "^2.4.2",
|
|
54
54
|
"@cornerstonejs/dicom-image-loader": "^1.2.4",
|
|
55
|
-
"@ohif/core": "3.7.0-beta.
|
|
56
|
-
"@ohif/extension-cornerstone": "3.7.0-beta.
|
|
57
|
-
"@ohif/extension-cornerstone-dicom-rt": "3.7.0-beta.
|
|
58
|
-
"@ohif/extension-cornerstone-dicom-seg": "3.7.0-beta.
|
|
59
|
-
"@ohif/extension-cornerstone-dicom-sr": "3.7.0-beta.
|
|
60
|
-
"@ohif/extension-default": "3.7.0-beta.
|
|
61
|
-
"@ohif/extension-dicom-microscopy": "3.7.0-beta.
|
|
62
|
-
"@ohif/extension-dicom-pdf": "3.7.0-beta.
|
|
63
|
-
"@ohif/extension-dicom-video": "3.7.0-beta.
|
|
64
|
-
"@ohif/extension-test": "3.7.0-beta.
|
|
65
|
-
"@ohif/i18n": "3.7.0-beta.
|
|
66
|
-
"@ohif/mode-basic-dev-mode": "3.7.0-beta.
|
|
67
|
-
"@ohif/mode-longitudinal": "3.7.0-beta.
|
|
68
|
-
"@ohif/mode-microscopy": "3.7.0-beta.
|
|
69
|
-
"@ohif/mode-test": "3.7.0-beta.
|
|
70
|
-
"@ohif/ui": "3.7.0-beta.
|
|
55
|
+
"@ohif/core": "3.7.0-beta.18",
|
|
56
|
+
"@ohif/extension-cornerstone": "3.7.0-beta.18",
|
|
57
|
+
"@ohif/extension-cornerstone-dicom-rt": "3.7.0-beta.18",
|
|
58
|
+
"@ohif/extension-cornerstone-dicom-seg": "3.7.0-beta.18",
|
|
59
|
+
"@ohif/extension-cornerstone-dicom-sr": "3.7.0-beta.18",
|
|
60
|
+
"@ohif/extension-default": "3.7.0-beta.18",
|
|
61
|
+
"@ohif/extension-dicom-microscopy": "3.7.0-beta.18",
|
|
62
|
+
"@ohif/extension-dicom-pdf": "3.7.0-beta.18",
|
|
63
|
+
"@ohif/extension-dicom-video": "3.7.0-beta.18",
|
|
64
|
+
"@ohif/extension-test": "3.7.0-beta.18",
|
|
65
|
+
"@ohif/i18n": "3.7.0-beta.18",
|
|
66
|
+
"@ohif/mode-basic-dev-mode": "3.7.0-beta.18",
|
|
67
|
+
"@ohif/mode-longitudinal": "3.7.0-beta.18",
|
|
68
|
+
"@ohif/mode-microscopy": "3.7.0-beta.18",
|
|
69
|
+
"@ohif/mode-test": "3.7.0-beta.18",
|
|
70
|
+
"@ohif/ui": "3.7.0-beta.18",
|
|
71
71
|
"@types/react": "^17.0.38",
|
|
72
72
|
"classnames": "^2.3.2",
|
|
73
73
|
"core-js": "^3.16.1",
|
|
@@ -107,5 +107,5 @@
|
|
|
107
107
|
"webpack-cli": "^4.7.2",
|
|
108
108
|
"webpack-merge": "^5.7.3"
|
|
109
109
|
},
|
|
110
|
-
"gitHead": "
|
|
110
|
+
"gitHead": "b4dbe5656b4d068eaaa7b980c2781e44259f952b"
|
|
111
111
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|