@icure/api 4.0.83 → 4.0.88
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/icc-api/model/models.d.ts +1 -0
- package/icc-api/model/models.js +1 -0
- package/icc-api/model/models.js.map +1 -1
- package/icc-x-api/crypto/utils.d.ts +3 -3
- package/icc-x-api/crypto/utils.js +78 -111
- package/icc-x-api/crypto/utils.js.map +1 -1
- package/icc-x-api/filters/AllCodesFilter.d.ts +2 -1
- package/icc-x-api/filters/AllCodesFilter.js +5 -3
- package/icc-x-api/filters/AllCodesFilter.js.map +1 -1
- package/icc-x-api/filters/AllDevicesFilter.d.ts +2 -1
- package/icc-x-api/filters/AllDevicesFilter.js +5 -3
- package/icc-x-api/filters/AllDevicesFilter.js.map +1 -1
- package/icc-x-api/filters/AllHealthcarePartiesFilter.d.ts +2 -1
- package/icc-x-api/filters/AllHealthcarePartiesFilter.js +5 -3
- package/icc-x-api/filters/AllHealthcarePartiesFilter.js.map +1 -1
- package/icc-x-api/filters/AllUsersFilter.d.ts +2 -1
- package/icc-x-api/filters/AllUsersFilter.js +5 -3
- package/icc-x-api/filters/AllUsersFilter.js.map +1 -1
- package/icc-x-api/filters/CodeByIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/CodeByIdsFilter.js +3 -1
- package/icc-x-api/filters/CodeByIdsFilter.js.map +1 -1
- package/icc-x-api/filters/CodeByRegionTypeLabelLanguageFilter.d.ts +2 -1
- package/icc-x-api/filters/CodeByRegionTypeLabelLanguageFilter.js +3 -1
- package/icc-x-api/filters/CodeByRegionTypeLabelLanguageFilter.js.map +1 -1
- package/icc-x-api/filters/ComplementFilter.d.ts +1 -0
- package/icc-x-api/filters/ComplementFilter.js.map +1 -1
- package/icc-x-api/filters/ConstantFilter.d.ts +1 -0
- package/icc-x-api/filters/ConstantFilter.js.map +1 -1
- package/icc-x-api/filters/ContactByHcPartyFilter.d.ts +2 -1
- package/icc-x-api/filters/ContactByHcPartyFilter.js +3 -1
- package/icc-x-api/filters/ContactByHcPartyFilter.js.map +1 -1
- package/icc-x-api/filters/ContactByHcPartyPatientTagCodeDateFilter.d.ts +2 -1
- package/icc-x-api/filters/ContactByHcPartyPatientTagCodeDateFilter.js +5 -3
- package/icc-x-api/filters/ContactByHcPartyPatientTagCodeDateFilter.js.map +1 -1
- package/icc-x-api/filters/ContactByHcPartyTagCodeDateFilter.d.ts +2 -12
- package/icc-x-api/filters/ContactByHcPartyTagCodeDateFilter.js +3 -12
- package/icc-x-api/filters/ContactByHcPartyTagCodeDateFilter.js.map +1 -1
- package/icc-x-api/filters/ContactByServiceIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/ContactByServiceIdsFilter.js +5 -3
- package/icc-x-api/filters/ContactByServiceIdsFilter.js.map +1 -1
- package/icc-x-api/filters/DeviceByHcPartyFilter.d.ts +2 -12
- package/icc-x-api/filters/DeviceByHcPartyFilter.js +3 -12
- package/icc-x-api/filters/DeviceByHcPartyFilter.js.map +1 -1
- package/icc-x-api/filters/DeviceByIdsFilter.d.ts +2 -12
- package/icc-x-api/filters/DeviceByIdsFilter.js +3 -12
- package/icc-x-api/filters/DeviceByIdsFilter.js.map +1 -1
- package/icc-x-api/filters/HealthElementByHcPartyFilter.d.ts +2 -1
- package/icc-x-api/filters/HealthElementByHcPartyFilter.js +5 -3
- package/icc-x-api/filters/HealthElementByHcPartyFilter.js.map +1 -1
- package/icc-x-api/filters/HealthElementByHcPartyIdentifiersFilter.d.ts +2 -1
- package/icc-x-api/filters/HealthElementByHcPartyIdentifiersFilter.js +3 -1
- package/icc-x-api/filters/HealthElementByHcPartyIdentifiersFilter.js.map +1 -1
- package/icc-x-api/filters/HealthElementByHcPartySecretForeignKeysFilter.d.ts +2 -12
- package/icc-x-api/filters/HealthElementByHcPartySecretForeignKeysFilter.js +3 -12
- package/icc-x-api/filters/HealthElementByHcPartySecretForeignKeysFilter.js.map +1 -1
- package/icc-x-api/filters/HealthElementByHcPartyTagCodeFilter.d.ts +2 -1
- package/icc-x-api/filters/HealthElementByHcPartyTagCodeFilter.js +5 -3
- package/icc-x-api/filters/HealthElementByHcPartyTagCodeFilter.js.map +1 -1
- package/icc-x-api/filters/HealthElementByIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/HealthElementByIdsFilter.js +5 -3
- package/icc-x-api/filters/HealthElementByIdsFilter.js.map +1 -1
- package/icc-x-api/filters/HealthcarePartyByIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/HealthcarePartyByIdsFilter.js +5 -3
- package/icc-x-api/filters/HealthcarePartyByIdsFilter.js.map +1 -1
- package/icc-x-api/filters/IntersectionFilter.d.ts +1 -0
- package/icc-x-api/filters/IntersectionFilter.js.map +1 -1
- package/icc-x-api/filters/InvoiceByHcPartyCodeDateFilter.d.ts +2 -1
- package/icc-x-api/filters/InvoiceByHcPartyCodeDateFilter.js +5 -3
- package/icc-x-api/filters/InvoiceByHcPartyCodeDateFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyAndActiveFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyAndActiveFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyAndActiveFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyAndExternalIdFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyAndExternalIdFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyAndExternalIdFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyAndIdentifiersFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyAndIdentifiersFilter.js +3 -1
- package/icc-x-api/filters/PatientByHcPartyAndIdentifiersFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyAndSsinFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyAndSsinFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyAndSsinFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyAndSsinsFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyAndSsinsFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyAndSsinsFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyDateOfBirthBetweenFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyDateOfBirthBetweenFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyDateOfBirthBetweenFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyDateOfBirthFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyDateOfBirthFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyDateOfBirthFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyGenderEducationProfession.js +1 -0
- package/icc-x-api/filters/PatientByHcPartyGenderEducationProfession.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyNameContainsFuzzyFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyNameContainsFuzzyFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyNameContainsFuzzyFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByHcPartyNameFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByHcPartyNameFilter.js +5 -3
- package/icc-x-api/filters/PatientByHcPartyNameFilter.js.map +1 -1
- package/icc-x-api/filters/PatientByIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/PatientByIdsFilter.js +5 -3
- package/icc-x-api/filters/PatientByIdsFilter.js.map +1 -1
- package/icc-x-api/filters/ServiceByContactsAndSubcontactsFilter.d.ts +2 -1
- package/icc-x-api/filters/ServiceByContactsAndSubcontactsFilter.js +5 -3
- package/icc-x-api/filters/ServiceByContactsAndSubcontactsFilter.js.map +1 -1
- package/icc-x-api/filters/ServiceByHcPartyFilter.d.ts +2 -1
- package/icc-x-api/filters/ServiceByHcPartyFilter.js +5 -3
- package/icc-x-api/filters/ServiceByHcPartyFilter.js.map +1 -1
- package/icc-x-api/filters/ServiceByHcPartyIdentifiersFilter.d.ts +2 -1
- package/icc-x-api/filters/ServiceByHcPartyIdentifiersFilter.js +3 -1
- package/icc-x-api/filters/ServiceByHcPartyIdentifiersFilter.js.map +1 -1
- package/icc-x-api/filters/ServiceByHcPartyTagCodeDateFilter.d.ts +2 -1
- package/icc-x-api/filters/ServiceByHcPartyTagCodeDateFilter.js +5 -3
- package/icc-x-api/filters/ServiceByHcPartyTagCodeDateFilter.js.map +1 -1
- package/icc-x-api/filters/ServiceByIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/ServiceByIdsFilter.js +5 -3
- package/icc-x-api/filters/ServiceByIdsFilter.js.map +1 -1
- package/{icc-api/model → icc-x-api/filters}/ServiceBySecretForeignKeys.d.ts +2 -1
- package/{icc-api/model → icc-x-api/filters}/ServiceBySecretForeignKeys.js +5 -3
- package/icc-x-api/filters/ServiceBySecretForeignKeys.js.map +1 -0
- package/icc-x-api/filters/UserByIdsFilter.d.ts +2 -1
- package/icc-x-api/filters/UserByIdsFilter.js +5 -3
- package/icc-x-api/filters/UserByIdsFilter.js.map +1 -1
- package/icc-x-api/filters/filters.d.ts +35 -34
- package/icc-x-api/filters/filters.js +36 -33
- package/icc-x-api/filters/filters.js.map +1 -1
- package/icc-x-api/icc-contact-x-api.d.ts +3 -1
- package/icc-x-api/icc-contact-x-api.js +8 -0
- package/icc-x-api/icc-contact-x-api.js.map +1 -1
- package/icc-x-api/icc-crypto-x-api.d.ts +4 -2
- package/icc-x-api/icc-crypto-x-api.js +24 -26
- package/icc-x-api/icc-crypto-x-api.js.map +1 -1
- package/icc-x-api/index.js +2 -1
- package/icc-x-api/index.js.map +1 -1
- package/icc-x-api/utils/asn1-packer.d.ts +3 -0
- package/icc-x-api/utils/asn1-packer.js +83 -0
- package/icc-x-api/utils/asn1-packer.js.map +1 -0
- package/icc-x-api/utils/asn1-parser.d.ts +8 -0
- package/icc-x-api/utils/asn1-parser.js +139 -0
- package/icc-x-api/utils/asn1-parser.js.map +1 -0
- package/icc-x-api/utils/functional-util.d.ts +1 -0
- package/icc-x-api/utils/functional-util.js +9 -0
- package/icc-x-api/utils/functional-util.js.map +1 -0
- package/icc-x-api/utils/index.d.ts +1 -0
- package/icc-x-api/utils/index.js +1 -0
- package/icc-x-api/utils/index.js.map +1 -1
- package/index.d.ts +0 -1
- package/index.js +0 -1
- package/index.js.map +1 -1
- package/package.json +1 -1
- package/icc-api/model/ServiceBySecretForeignKeys.js.map +0 -1
- package/icc-x-api/utils/asn1.d.ts +0 -53
- package/icc-x-api/utils/asn1.js +0 -510
- package/icc-x-api/utils/asn1.js.map +0 -1
|
@@ -9,51 +9,52 @@ import { IntersectionFilter } from './IntersectionFilter';
|
|
|
9
9
|
import { UnionFilter } from './UnionFilter';
|
|
10
10
|
import { ComplementFilter } from './ComplementFilter';
|
|
11
11
|
import GenderEnum = Patient.GenderEnum;
|
|
12
|
-
export * from './UserByIdsFilter';
|
|
13
|
-
export * from './PatientByHcPartyAndIdentifiersFilter';
|
|
14
|
-
export * from './HealthElementByHcPartyFilter';
|
|
15
|
-
export * from './CodeByRegionTypeLabelLanguageFilter';
|
|
16
|
-
export * from './PatientByHcPartyDateOfBirthFilter';
|
|
17
|
-
export * from './DeviceByIdsFilter';
|
|
18
|
-
export * from './AllUsersFilter';
|
|
19
|
-
export * from './PatientByHcPartyAndActiveFilter';
|
|
20
|
-
export * from './AllHealthcarePartiesFilter';
|
|
21
|
-
export * from './ServiceByHcPartyTagCodeDateFilter';
|
|
22
|
-
export * from './ServiceByHcPartyFilter';
|
|
23
|
-
export * from './PatientByHcPartyDateOfBirthBetweenFilter';
|
|
24
|
-
export * from './PatientByHcPartyAndSsinFilter';
|
|
25
|
-
export * from './HealthElementByHcPartyTagCodeFilter';
|
|
26
|
-
export * from './PatientByHcPartyAndExternalIdFilter';
|
|
27
|
-
export * from './ContactByServiceIdsFilter';
|
|
28
|
-
export * from './ContactByHcPartyPatientTagCodeDateFilter';
|
|
29
|
-
export * from './PatientByHcPartyNameContainsFuzzyFilter';
|
|
30
|
-
export * from './ComplementFilter';
|
|
31
12
|
export * from './AllCodesFilter';
|
|
32
13
|
export * from './AllDevicesFilter';
|
|
33
|
-
export * from './
|
|
34
|
-
export * from './
|
|
35
|
-
export * from './
|
|
14
|
+
export * from './AllHealthcarePartiesFilter';
|
|
15
|
+
export * from './AllUsersFilter';
|
|
16
|
+
export * from './CodeByIdsFilter';
|
|
17
|
+
export * from './CodeByRegionTypeLabelLanguageFilter';
|
|
18
|
+
export * from './ComplementFilter';
|
|
19
|
+
export * from './ConstantFilter';
|
|
36
20
|
export * from './ContactByHcPartyFilter';
|
|
37
|
-
export * from './
|
|
21
|
+
export * from './ContactByHcPartyPatientTagCodeDateFilter';
|
|
22
|
+
export * from './ContactByHcPartyTagCodeDateFilter';
|
|
23
|
+
export * from './ContactByServiceIdsFilter';
|
|
38
24
|
export * from './DeviceByHcPartyFilter';
|
|
39
|
-
export * from './
|
|
40
|
-
export * from './
|
|
41
|
-
export * from './
|
|
25
|
+
export * from './DeviceByIdsFilter';
|
|
26
|
+
export * from './HealthElementByHcPartyFilter';
|
|
27
|
+
export * from './HealthElementByHcPartyIdentifiersFilter';
|
|
28
|
+
export * from './HealthElementByHcPartySecretForeignKeysFilter';
|
|
29
|
+
export * from './HealthElementByHcPartyTagCodeFilter';
|
|
42
30
|
export * from './HealthElementByIdsFilter';
|
|
43
|
-
export * from './ContactByHcPartyTagCodeDateFilter';
|
|
44
|
-
export * from './PatientByHcPartyAndSsinsFilter';
|
|
45
|
-
export * from './ServiceByIdsFilter';
|
|
46
31
|
export * from './HealthcarePartyByIdsFilter';
|
|
47
|
-
export * from './
|
|
48
|
-
export * from './ConstantFilter';
|
|
32
|
+
export * from './IntersectionFilter';
|
|
49
33
|
export * from './InvoiceByHcPartyCodeDateFilter';
|
|
50
|
-
export * from './
|
|
51
|
-
export * from './
|
|
34
|
+
export * from './PatientByHcPartyAndActiveFilter';
|
|
35
|
+
export * from './PatientByHcPartyAndExternalIdFilter';
|
|
36
|
+
export * from './PatientByHcPartyAndIdentifiersFilter';
|
|
37
|
+
export * from './PatientByHcPartyAndSsinFilter';
|
|
38
|
+
export * from './PatientByHcPartyAndSsinsFilter';
|
|
39
|
+
export * from './PatientByHcPartyDateOfBirthBetweenFilter';
|
|
40
|
+
export * from './PatientByHcPartyDateOfBirthFilter';
|
|
52
41
|
export * from './PatientByHcPartyFilter';
|
|
42
|
+
export * from './PatientByHcPartyGenderEducationProfession';
|
|
43
|
+
export * from './PatientByHcPartyNameContainsFuzzyFilter';
|
|
44
|
+
export * from './PatientByHcPartyNameFilter';
|
|
45
|
+
export * from './PatientByIdsFilter';
|
|
46
|
+
export * from './ServiceByContactsAndSubcontactsFilter';
|
|
47
|
+
export * from './ServiceByHcPartyFilter';
|
|
48
|
+
export * from './ServiceByHcPartyIdentifiersFilter';
|
|
49
|
+
export * from './ServiceByHcPartyTagCodeDateFilter';
|
|
50
|
+
export * from './ServiceByIdsFilter';
|
|
51
|
+
export * from './ServiceBySecretForeignKeys';
|
|
52
|
+
export * from './UnionFilter';
|
|
53
|
+
export * from './UserByIdsFilter';
|
|
53
54
|
export declare class Filter {
|
|
54
55
|
static patient(): PatientFilterBuilder;
|
|
55
56
|
}
|
|
56
|
-
export declare type AbstractFilter<T> = T extends Patient ? AbstractFilterPatient | ConstantFilter<
|
|
57
|
+
export declare type AbstractFilter<T> = T extends Patient ? AbstractFilterPatient | ConstantFilter<Patient> | IntersectionFilter<Patient> | UnionFilter<Patient> | ComplementFilter<Patient> : T extends Contact ? AbstractFilterContact | ConstantFilter<T> | IntersectionFilter<T> | UnionFilter<T> | ComplementFilter<T> : T extends Service ? AbstractFilterService | ConstantFilter<T> | IntersectionFilter<T> | UnionFilter<T> | ComplementFilter<T> : ConstantFilter<T> | IntersectionFilter<T> | UnionFilter<T> | ComplementFilter<T>;
|
|
57
58
|
declare abstract class FilterBuilder<T> {
|
|
58
59
|
filterProvider?: () => AbstractFilter<T>;
|
|
59
60
|
composer: (thisFilterBuilder: FilterBuilder<T>, otherFilterBuilder: FilterBuilder<T>) => FilterBuilder<T>;
|
|
@@ -25,53 +25,56 @@ const PatientByHcPartyFilter_1 = require("./PatientByHcPartyFilter");
|
|
|
25
25
|
const PatientByHcPartyGenderEducationProfession_1 = require("./PatientByHcPartyGenderEducationProfession");
|
|
26
26
|
const PatientByIdsFilter_1 = require("./PatientByIdsFilter");
|
|
27
27
|
const PatientByHcPartyNameContainsFuzzyFilter_1 = require("./PatientByHcPartyNameContainsFuzzyFilter");
|
|
28
|
-
|
|
29
|
-
__exportStar(require("./PatientByHcPartyAndIdentifiersFilter"), exports);
|
|
30
|
-
__exportStar(require("./HealthElementByHcPartyFilter"), exports);
|
|
31
|
-
__exportStar(require("./CodeByRegionTypeLabelLanguageFilter"), exports);
|
|
32
|
-
__exportStar(require("./PatientByHcPartyDateOfBirthFilter"), exports);
|
|
33
|
-
__exportStar(require("./DeviceByIdsFilter"), exports);
|
|
34
|
-
__exportStar(require("./AllUsersFilter"), exports);
|
|
35
|
-
__exportStar(require("./PatientByHcPartyAndActiveFilter"), exports);
|
|
36
|
-
__exportStar(require("./AllHealthcarePartiesFilter"), exports);
|
|
37
|
-
__exportStar(require("./ServiceByHcPartyTagCodeDateFilter"), exports);
|
|
38
|
-
__exportStar(require("./ServiceByHcPartyFilter"), exports);
|
|
39
|
-
__exportStar(require("./PatientByHcPartyDateOfBirthBetweenFilter"), exports);
|
|
40
|
-
__exportStar(require("./PatientByHcPartyAndSsinFilter"), exports);
|
|
41
|
-
__exportStar(require("./HealthElementByHcPartyTagCodeFilter"), exports);
|
|
42
|
-
__exportStar(require("./PatientByHcPartyAndExternalIdFilter"), exports);
|
|
43
|
-
__exportStar(require("./ContactByServiceIdsFilter"), exports);
|
|
44
|
-
__exportStar(require("./ContactByHcPartyPatientTagCodeDateFilter"), exports);
|
|
45
|
-
__exportStar(require("./PatientByHcPartyNameContainsFuzzyFilter"), exports);
|
|
46
|
-
__exportStar(require("./ComplementFilter"), exports);
|
|
28
|
+
const ContactByHcPartyFilter_1 = require("./ContactByHcPartyFilter");
|
|
47
29
|
__exportStar(require("./AllCodesFilter"), exports);
|
|
48
30
|
__exportStar(require("./AllDevicesFilter"), exports);
|
|
49
|
-
__exportStar(require("./
|
|
50
|
-
__exportStar(require("./
|
|
51
|
-
__exportStar(require("./
|
|
31
|
+
__exportStar(require("./AllHealthcarePartiesFilter"), exports);
|
|
32
|
+
__exportStar(require("./AllUsersFilter"), exports);
|
|
33
|
+
__exportStar(require("./CodeByIdsFilter"), exports);
|
|
34
|
+
__exportStar(require("./CodeByRegionTypeLabelLanguageFilter"), exports);
|
|
35
|
+
__exportStar(require("./ComplementFilter"), exports);
|
|
36
|
+
__exportStar(require("./ConstantFilter"), exports);
|
|
52
37
|
__exportStar(require("./ContactByHcPartyFilter"), exports);
|
|
53
|
-
__exportStar(require("./
|
|
38
|
+
__exportStar(require("./ContactByHcPartyPatientTagCodeDateFilter"), exports);
|
|
39
|
+
__exportStar(require("./ContactByHcPartyTagCodeDateFilter"), exports);
|
|
40
|
+
__exportStar(require("./ContactByServiceIdsFilter"), exports);
|
|
54
41
|
__exportStar(require("./DeviceByHcPartyFilter"), exports);
|
|
55
|
-
__exportStar(require("./
|
|
56
|
-
__exportStar(require("./
|
|
57
|
-
__exportStar(require("./
|
|
42
|
+
__exportStar(require("./DeviceByIdsFilter"), exports);
|
|
43
|
+
__exportStar(require("./HealthElementByHcPartyFilter"), exports);
|
|
44
|
+
__exportStar(require("./HealthElementByHcPartyIdentifiersFilter"), exports);
|
|
45
|
+
__exportStar(require("./HealthElementByHcPartySecretForeignKeysFilter"), exports);
|
|
46
|
+
__exportStar(require("./HealthElementByHcPartyTagCodeFilter"), exports);
|
|
58
47
|
__exportStar(require("./HealthElementByIdsFilter"), exports);
|
|
59
|
-
__exportStar(require("./ContactByHcPartyTagCodeDateFilter"), exports);
|
|
60
|
-
__exportStar(require("./PatientByHcPartyAndSsinsFilter"), exports);
|
|
61
|
-
__exportStar(require("./ServiceByIdsFilter"), exports);
|
|
62
48
|
__exportStar(require("./HealthcarePartyByIdsFilter"), exports);
|
|
63
|
-
__exportStar(require("./
|
|
64
|
-
__exportStar(require("./ConstantFilter"), exports);
|
|
49
|
+
__exportStar(require("./IntersectionFilter"), exports);
|
|
65
50
|
__exportStar(require("./InvoiceByHcPartyCodeDateFilter"), exports);
|
|
66
|
-
__exportStar(require("./
|
|
67
|
-
__exportStar(require("./
|
|
51
|
+
__exportStar(require("./PatientByHcPartyAndActiveFilter"), exports);
|
|
52
|
+
__exportStar(require("./PatientByHcPartyAndExternalIdFilter"), exports);
|
|
53
|
+
__exportStar(require("./PatientByHcPartyAndIdentifiersFilter"), exports);
|
|
54
|
+
__exportStar(require("./PatientByHcPartyAndSsinFilter"), exports);
|
|
55
|
+
__exportStar(require("./PatientByHcPartyAndSsinsFilter"), exports);
|
|
56
|
+
__exportStar(require("./PatientByHcPartyDateOfBirthBetweenFilter"), exports);
|
|
57
|
+
__exportStar(require("./PatientByHcPartyDateOfBirthFilter"), exports);
|
|
68
58
|
__exportStar(require("./PatientByHcPartyFilter"), exports);
|
|
59
|
+
__exportStar(require("./PatientByHcPartyGenderEducationProfession"), exports);
|
|
60
|
+
__exportStar(require("./PatientByHcPartyNameContainsFuzzyFilter"), exports);
|
|
61
|
+
__exportStar(require("./PatientByHcPartyNameFilter"), exports);
|
|
62
|
+
__exportStar(require("./PatientByIdsFilter"), exports);
|
|
63
|
+
__exportStar(require("./ServiceByContactsAndSubcontactsFilter"), exports);
|
|
64
|
+
__exportStar(require("./ServiceByHcPartyFilter"), exports);
|
|
65
|
+
__exportStar(require("./ServiceByHcPartyIdentifiersFilter"), exports);
|
|
66
|
+
__exportStar(require("./ServiceByHcPartyTagCodeDateFilter"), exports);
|
|
67
|
+
__exportStar(require("./ServiceByIdsFilter"), exports);
|
|
68
|
+
__exportStar(require("./ServiceBySecretForeignKeys"), exports);
|
|
69
|
+
__exportStar(require("./UnionFilter"), exports);
|
|
70
|
+
__exportStar(require("./UserByIdsFilter"), exports);
|
|
69
71
|
class Filter {
|
|
70
72
|
static patient() {
|
|
71
73
|
return new PatientFilterBuilder();
|
|
72
74
|
}
|
|
73
75
|
}
|
|
74
76
|
exports.Filter = Filter;
|
|
77
|
+
const f = new ComplementFilter_1.ComplementFilter(new ContactByHcPartyFilter_1.ContactByHcPartyFilter({}), new ContactByHcPartyFilter_1.ContactByHcPartyFilter({}));
|
|
75
78
|
class FilterBuilder {
|
|
76
79
|
constructor(filterProvider, composer) {
|
|
77
80
|
// This is the method that is called each time we chain a filter to another filter. The default behaviour is to
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../icc-x-api/filters/filters.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,qDAAiD;AAOjD,6DAAyD;AACzD,+CAA2C;AAC3C,yDAAqD;AACrD,uFAAmF;AACnF,+FAA2F;AAC3F,qFAAiF;AACjF,yGAAqG;AACrG,2FAAuF;AAEvF,uCAAsC;AACtC,qEAAiE;AACjE,2GAAuG;AACvG,6DAAyD;AACzD,uGAAmG;AAGnG,
|
|
1
|
+
{"version":3,"file":"filters.js","sourceRoot":"","sources":["../../../icc-x-api/filters/filters.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IccContactApi } from '../icc-api';
|
|
2
2
|
import { IccCryptoXApi } from './icc-crypto-x-api';
|
|
3
3
|
import * as models from '../icc-api/model/models';
|
|
4
|
-
import { Contact, Service } from '../icc-api/model/models';
|
|
4
|
+
import { Contact, ListOfIds, Service } from '../icc-api/model/models';
|
|
5
5
|
import { PaginatedListContact } from '../icc-api/model/PaginatedListContact';
|
|
6
6
|
export declare class IccContactXApi extends IccContactApi {
|
|
7
7
|
i18n: any;
|
|
@@ -41,6 +41,7 @@ export declare class IccContactXApi extends IccContactApi {
|
|
|
41
41
|
findByPatientSFKs(hcpartyId: string, patients: Array<models.Patient>): Promise<Array<models.Contact>>;
|
|
42
42
|
filterBy(startKey?: string, startDocumentId?: string, limit?: number, body?: models.FilterChainContact): never;
|
|
43
43
|
listContactsByOpeningDate(startKey: number, endKey: number, hcpartyid: string, startDocumentId?: string, limit?: number): never;
|
|
44
|
+
listServices(body?: ListOfIds): Promise<Array<Service>>;
|
|
44
45
|
findByHCPartyFormId(hcPartyId?: string, formId?: string): never;
|
|
45
46
|
findByHCPartyFormIds(hcPartyId?: string, body?: models.ListOfIds): never;
|
|
46
47
|
getContact(contactId: string): never;
|
|
@@ -51,6 +52,7 @@ export declare class IccContactXApi extends IccContactApi {
|
|
|
51
52
|
findByHCPartyPatientSecretFKeys(hcPartyId: string, secretFKeys: string, planOfActionIds?: string, skipClosedContacts?: boolean): Promise<Array<models.Contact> | any>;
|
|
52
53
|
filterByWithUser(user: models.User, startDocumentId?: string, limit?: number, body?: models.FilterChainContact): Promise<PaginatedListContact | any>;
|
|
53
54
|
listContactsByOpeningDateWithUser(user: models.User, startKey: number, endKey: number, hcpartyid: string, startDocumentId?: string, limit?: number): Promise<PaginatedListContact | any>;
|
|
55
|
+
listServicesWithUser(user: models.User, serviceIds: ListOfIds): Promise<Array<Service> | any>;
|
|
54
56
|
findByHCPartyFormIdWithUser(user: models.User, hcPartyId: string, formId: string): Promise<Array<models.Contact> | any>;
|
|
55
57
|
findByHCPartyFormIdsWithUser(user: models.User, hcPartyId: string, body: models.ListOfIds): Promise<Array<models.Contact> | any>;
|
|
56
58
|
getContactWithUser(user: models.User, contactId: string): Promise<models.Contact | any>;
|
|
@@ -166,6 +166,9 @@ class IccContactXApi extends icc_api_1.IccContactApi {
|
|
|
166
166
|
listContactsByOpeningDate(startKey, endKey, hcpartyid, startDocumentId, limit) {
|
|
167
167
|
throw new Error('Cannot call a method that returns contacts without providing a user for de/encryption');
|
|
168
168
|
}
|
|
169
|
+
listServices(body) {
|
|
170
|
+
throw new Error('Cannot call a method that returns services without providing a user for de/encryption');
|
|
171
|
+
}
|
|
169
172
|
findByHCPartyFormId(hcPartyId, formId) {
|
|
170
173
|
throw new Error('Cannot call a method that returns contacts without providing a user for de/encryption');
|
|
171
174
|
}
|
|
@@ -202,6 +205,11 @@ class IccContactXApi extends icc_api_1.IccContactApi {
|
|
|
202
205
|
.listContactsByOpeningDate(startKey, endKey, hcpartyid, startDocumentId, limit)
|
|
203
206
|
.then((ctcs) => this.decrypt(user.healthcarePartyId || user.patientId, ctcs.rows).then((decryptedRows) => Object.assign(ctcs, { rows: decryptedRows })));
|
|
204
207
|
}
|
|
208
|
+
listServicesWithUser(user, serviceIds) {
|
|
209
|
+
return super
|
|
210
|
+
.listServices(serviceIds)
|
|
211
|
+
.then((services) => this.decryptServices(user.healthcarePartyId || user.patientId, services, undefined, undefined));
|
|
212
|
+
}
|
|
205
213
|
findByHCPartyFormIdWithUser(user, hcPartyId, formId) {
|
|
206
214
|
return super.findByHCPartyFormId(hcPartyId, formId).then((ctcs) => this.decrypt((user.healthcarePartyId || user.patientId), ctcs));
|
|
207
215
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icc-contact-x-api.js","sourceRoot":"","sources":["../../icc-x-api/icc-contact-x-api.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"icc-contact-x-api.js","sourceRoot":"","sources":["../../icc-x-api/icc-contact-x-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { UtilsClass } from './crypto/utils';
|
|
|
5
5
|
import { ShamirClass } from './crypto/shamir';
|
|
6
6
|
import * as models from '../icc-api/model/models';
|
|
7
7
|
import { HealthcareParty, User } from '../icc-api/model/models';
|
|
8
|
+
import { IccDeviceApi } from '../icc-api/api/IccDeviceApi';
|
|
8
9
|
export declare class IccCryptoXApi {
|
|
9
10
|
get shamir(): ShamirClass;
|
|
10
11
|
get utils(): UtilsClass;
|
|
@@ -23,7 +24,6 @@ export declare class IccCryptoXApi {
|
|
|
23
24
|
}>;
|
|
24
25
|
};
|
|
25
26
|
emptyHcpCache(hcpartyId: string): void;
|
|
26
|
-
private getHcpOrPatient;
|
|
27
27
|
/**
|
|
28
28
|
* Gets all delegate encrypted HcParty keys of the delegate with the given `delegateHcPartyId`, and for each key the delegator id
|
|
29
29
|
* If the keys are not cached, they are retrieved from the backend.
|
|
@@ -39,6 +39,7 @@ export declare class IccCryptoXApi {
|
|
|
39
39
|
hcpPreferenceKeyEhealthCertDate: string;
|
|
40
40
|
private hcpartyBaseApi;
|
|
41
41
|
private patientBaseApi;
|
|
42
|
+
private deviceBaseApi;
|
|
42
43
|
private crypto;
|
|
43
44
|
private generateKeyConcurrencyMap;
|
|
44
45
|
private _AES;
|
|
@@ -48,7 +49,7 @@ export declare class IccCryptoXApi {
|
|
|
48
49
|
constructor(host: string, headers: {
|
|
49
50
|
[key: string]: string;
|
|
50
51
|
}, hcpartyBaseApi: IccHcpartyApi, //Init with a hcparty x api for better performances
|
|
51
|
-
patientBaseApi: IccPatientApi, crypto?: Crypto);
|
|
52
|
+
patientBaseApi: IccPatientApi, deviceBaseApi: IccDeviceApi, crypto?: Crypto);
|
|
52
53
|
randomUuid(): string;
|
|
53
54
|
encryptedShamirRSAKey(hcp: HealthcareParty, notaries: Array<HealthcareParty>, threshold?: number): Promise<HealthcareParty>;
|
|
54
55
|
decryptedShamirRSAKey(hcp: HealthcareParty, notaries: Array<HealthcareParty>): Promise<void>;
|
|
@@ -325,6 +326,7 @@ export declare class IccCryptoXApi {
|
|
|
325
326
|
getKeychainValidityDateInBrowserLocalStorage(id: string): string | null;
|
|
326
327
|
loadKeychainFromBrowserLocalStorage(id: string): Uint8Array[] | null;
|
|
327
328
|
generateKeyForDelegate(ownerId: string, delegateId: string): PromiseLike<models.HealthcareParty | models.Patient>;
|
|
329
|
+
private getDataOwner;
|
|
328
330
|
checkPrivateKeyValidity(hcp: models.HealthcareParty | models.Patient): Promise<boolean>;
|
|
329
331
|
private throwDetailedExceptionForInvalidParameter;
|
|
330
332
|
getEncryptionDecryptionKeys(healthcarePartyId: string, document: models.AccessLog | models.CalendarItem | models.Classification | models.Contact | models.Document | models.Form | models.HealthElement | models.Invoice | models.Message | models.Receipt | models.Patient): Promise<Array<string> | null>;
|
|
@@ -18,7 +18,7 @@ const _ = require("lodash");
|
|
|
18
18
|
const binary_utils_1 = require("./utils/binary-utils");
|
|
19
19
|
class IccCryptoXApi {
|
|
20
20
|
constructor(host, headers, hcpartyBaseApi, //Init with a hcparty x api for better performances
|
|
21
|
-
patientBaseApi, crypto = typeof window !== 'undefined' ? window.crypto : typeof self !== 'undefined' ? self.crypto : {}) {
|
|
21
|
+
patientBaseApi, deviceBaseApi, crypto = typeof window !== 'undefined' ? window.crypto : typeof self !== 'undefined' ? self.crypto : {}) {
|
|
22
22
|
this.hcPartyKeysCache = {};
|
|
23
23
|
//[delegateId][delegatorId] = delegateEncryptedHcPartyKey
|
|
24
24
|
//for each delegate, it stores the list of delegators and the corresponding delegateEncryptedHcPartyKey (shared HcPartyKey, from delegator to delegate, encrypted with the RSA key of the delegate)
|
|
@@ -29,6 +29,7 @@ class IccCryptoXApi {
|
|
|
29
29
|
this.hcpPreferenceKeyEhealthCertDate = 'eHealthCRTDate';
|
|
30
30
|
this.hcpartyBaseApi = hcpartyBaseApi;
|
|
31
31
|
this.patientBaseApi = patientBaseApi;
|
|
32
|
+
this.deviceBaseApi = deviceBaseApi;
|
|
32
33
|
this.crypto = crypto;
|
|
33
34
|
this.generateKeyConcurrencyMap = {};
|
|
34
35
|
this._AES = new AES_1.AESUtils(crypto);
|
|
@@ -51,9 +52,6 @@ class IccCryptoXApi {
|
|
|
51
52
|
emptyHcpCache(hcpartyId) {
|
|
52
53
|
delete this.hcPartyKeysRequestsCache[hcpartyId];
|
|
53
54
|
}
|
|
54
|
-
getHcpOrPatient(hcpartyId) {
|
|
55
|
-
return this.hcpartyBaseApi.getHealthcareParty(hcpartyId).catch(() => this.patientBaseApi.getPatient(hcpartyId));
|
|
56
|
-
}
|
|
57
55
|
/**
|
|
58
56
|
* Gets all delegate encrypted HcParty keys of the delegate with the given `delegateHcPartyId`, and for each key the delegator id
|
|
59
57
|
* If the keys are not cached, they are retrieved from the backend.
|
|
@@ -273,7 +271,7 @@ class IccCryptoXApi {
|
|
|
273
271
|
});
|
|
274
272
|
}
|
|
275
273
|
else if (fallbackOnParent) {
|
|
276
|
-
return this.
|
|
274
|
+
return this.getDataOwner(healthcarePartyId).then(({ dataOwner: hcp }) => hcp.parentId ? this.decryptAndImportAesHcPartyKeysInDelegations(hcp.parentId, delegations) : Promise.resolve([]));
|
|
277
275
|
}
|
|
278
276
|
return this.decryptAndImportAesHcPartyKeysForDelegators(Object.keys(delegatorIds), healthcarePartyId);
|
|
279
277
|
}
|
|
@@ -287,8 +285,8 @@ class IccCryptoXApi {
|
|
|
287
285
|
if (parentObject)
|
|
288
286
|
this.throwDetailedExceptionForInvalidParameter('parentObject.id', parentObject.id, 'initObjectDelegations', arguments);
|
|
289
287
|
const secretId = this.randomUuid();
|
|
290
|
-
return this.
|
|
291
|
-
.then((owner) => this.getOrCreateHcPartyKey(owner, ownerId))
|
|
288
|
+
return this.getDataOwner(ownerId)
|
|
289
|
+
.then(({ dataOwner: owner }) => this.getOrCreateHcPartyKey(owner, ownerId))
|
|
292
290
|
.then((encryptedHcPartyKey) => this.decryptHcPartyKey(ownerId, ownerId, encryptedHcPartyKey, true))
|
|
293
291
|
.then((importedAESHcPartyKey) => Promise.all([
|
|
294
292
|
this._AES.encrypt(importedAESHcPartyKey.key, binary_utils_1.string2ua(createdObject.id + ':' + secretId).buffer, importedAESHcPartyKey.rawKey),
|
|
@@ -356,8 +354,8 @@ class IccCryptoXApi {
|
|
|
356
354
|
if (parentObject)
|
|
357
355
|
this.throwDetailedExceptionForInvalidParameter('parentObject.id', parentObject.id, 'extendedDelegationsAndCryptedForeignKeys', arguments);
|
|
358
356
|
this.throwDetailedExceptionForInvalidParameter('secretIdOfModifiedObject', secretIdOfModifiedObject, 'extendedDelegationsAndCryptedForeignKeys', arguments);
|
|
359
|
-
return this.
|
|
360
|
-
.then((owner) => this.getOrCreateHcPartyKey(owner,
|
|
357
|
+
return this.getDataOwner(ownerId)
|
|
358
|
+
.then(({ dataOwner: owner }) => this.getOrCreateHcPartyKey(owner, ownerId))
|
|
361
359
|
.then((encryptedHcPartyKey) => this.decryptHcPartyKey(ownerId, delegateId, encryptedHcPartyKey, true))
|
|
362
360
|
.then((importedAESHcPartyKey) => Promise.all([
|
|
363
361
|
Promise.all(((modifiedObject.delegations || {})[delegateId] || []).map((d) => (d.key &&
|
|
@@ -480,8 +478,8 @@ class IccCryptoXApi {
|
|
|
480
478
|
modifiedObject, ownerId, delegateId, secretEncryptionKeyOfObject) {
|
|
481
479
|
this.throwDetailedExceptionForInvalidParameter('modifiedObject.id', modifiedObject.id, 'appendEncryptionKeys', arguments); //modifiedObject should never be null
|
|
482
480
|
this.throwDetailedExceptionForInvalidParameter('secretEncryptionKeyOfObject', secretEncryptionKeyOfObject, 'appendEncryptionKeys', arguments);
|
|
483
|
-
return this.
|
|
484
|
-
.then((owner) => this.getOrCreateHcPartyKey(owner,
|
|
481
|
+
return this.getDataOwner(ownerId)
|
|
482
|
+
.then(({ dataOwner: owner }) => this.getOrCreateHcPartyKey(owner, ownerId))
|
|
485
483
|
.then((encryptedHcPartyKey) => this.decryptHcPartyKey(ownerId, delegateId, encryptedHcPartyKey, true))
|
|
486
484
|
.then((importedAESHcPartyKey) => Promise.all([
|
|
487
485
|
Promise.all(((modifiedObject.encryptionKeys || {})[delegateId] || []).map((d) => (d.key &&
|
|
@@ -652,7 +650,7 @@ class IccCryptoXApi {
|
|
|
652
650
|
extractKeysHierarchyFromDelegationLikes(
|
|
653
651
|
//TODO suggested name: getSecretIdsOfHcpAndParentsFromGenericDelegations
|
|
654
652
|
hcpartyId, objectId, delegations) {
|
|
655
|
-
return this.
|
|
653
|
+
return this.getDataOwner(hcpartyId).then(({ dataOwner: hcp }) => (delegations[hcpartyId] && delegations[hcpartyId].length
|
|
656
654
|
? this.decryptAndImportAesHcPartyKeysInDelegations(hcpartyId, delegations, false).then((decryptedAndImportedAesHcPartyKeys) => {
|
|
657
655
|
const collatedAesKeysFromDelegatorToHcpartyId = {};
|
|
658
656
|
decryptedAndImportedAesHcPartyKeys.forEach((k) => (collatedAesKeysFromDelegatorToHcpartyId[k.delegatorId] = k));
|
|
@@ -678,7 +676,7 @@ class IccCryptoXApi {
|
|
|
678
676
|
extractKeysFromDelegationsForHcpHierarchy(
|
|
679
677
|
//TODO suggested name: getSecretIdsOfHcpAndParentsFromGenericDelegations
|
|
680
678
|
hcpartyId, objectId, delegations) {
|
|
681
|
-
return this.
|
|
679
|
+
return this.getDataOwner(hcpartyId).then(({ dataOwner: hcp }) => (delegations[hcpartyId] && delegations[hcpartyId].length
|
|
682
680
|
? this.decryptAndImportAesHcPartyKeysInDelegations(hcpartyId, delegations, false).then((decryptedAndImportedAesHcPartyKeys) => {
|
|
683
681
|
const collatedAesKeysFromDelegatorToHcpartyId = {};
|
|
684
682
|
decryptedAndImportedAesHcPartyKeys.forEach((k) => (collatedAesKeysFromDelegatorToHcpartyId[k.delegatorId] = k));
|
|
@@ -741,8 +739,8 @@ class IccCryptoXApi {
|
|
|
741
739
|
return Promise.all(decryptPromises).then((genericSecretId) => genericSecretId.filter((id) => !!id));
|
|
742
740
|
}
|
|
743
741
|
loadKeyPairsAsTextInBrowserLocalStorage(healthcarePartyId, privateKey) {
|
|
744
|
-
return this.
|
|
745
|
-
.then((
|
|
742
|
+
return this.getDataOwner(healthcarePartyId)
|
|
743
|
+
.then(({ dataOwner }) => dataOwner.publicKey)
|
|
746
744
|
.then((publicKey) => {
|
|
747
745
|
if (!publicKey) {
|
|
748
746
|
throw new Error('No public key has been defined for hcp');
|
|
@@ -922,16 +920,7 @@ class IccCryptoXApi {
|
|
|
922
920
|
}
|
|
923
921
|
generateKeyForDelegate(ownerId, delegateId) {
|
|
924
922
|
//Preload hcp and patient because we need them and they are going to be invalidated from the caches
|
|
925
|
-
return this._utils.notConcurrent(this.generateKeyConcurrencyMap, ownerId, () => Promise.all([
|
|
926
|
-
this.hcpartyBaseApi
|
|
927
|
-
.getHealthcareParty(ownerId, true)
|
|
928
|
-
.then((x) => ({ type: 'hcp', hcpOrPat: x }))
|
|
929
|
-
.catch(() => this.patientBaseApi.getPatient(ownerId).then((x) => ({ type: 'patient', hcpOrPat: x }))),
|
|
930
|
-
this.hcpartyBaseApi
|
|
931
|
-
.getHealthcareParty(delegateId, true)
|
|
932
|
-
.then((x) => ({ type: 'hcp', hcpOrPat: x }))
|
|
933
|
-
.catch(() => this.patientBaseApi.getPatient(delegateId).then((x) => ({ type: 'patient', hcpOrPat: x }))),
|
|
934
|
-
]).then(([{ type: ownerType, hcpOrPat: owner }, { hcpOrPat: delegate }]) => {
|
|
923
|
+
return this._utils.notConcurrent(this.generateKeyConcurrencyMap, ownerId, () => Promise.all([this.getDataOwner(ownerId), this.getDataOwner(delegateId)]).then(([{ type: ownerType, dataOwner: owner }, { dataOwner: delegate }]) => {
|
|
935
924
|
if ((owner.hcPartyKeys || {})[delegateId]) {
|
|
936
925
|
return owner;
|
|
937
926
|
}
|
|
@@ -954,7 +943,9 @@ class IccCryptoXApi {
|
|
|
954
943
|
.then(() => {
|
|
955
944
|
ownerType === 'hcp'
|
|
956
945
|
? this.hcpartyBaseApi.modifyHealthcareParty(owner).then((hcp) => resolve(['hcp', hcp]))
|
|
957
|
-
:
|
|
946
|
+
: ownerType === 'patient'
|
|
947
|
+
? this.hcpartyBaseApi.modifyHealthcareParty(owner).then((hcp) => resolve(['patient', hcp]))
|
|
948
|
+
: this.deviceBaseApi.updateDevice(owner).then((dev) => resolve(['device', dev]));
|
|
958
949
|
})
|
|
959
950
|
.catch((e) => reject(e))
|
|
960
951
|
: reject(new Error(`Missing public key for delegate ${delegateId}`));
|
|
@@ -965,6 +956,13 @@ class IccCryptoXApi {
|
|
|
965
956
|
return genProm.then((res) => res[1]);
|
|
966
957
|
}));
|
|
967
958
|
}
|
|
959
|
+
getDataOwner(ownerId) {
|
|
960
|
+
return this.hcpartyBaseApi
|
|
961
|
+
.getHealthcareParty(ownerId, true)
|
|
962
|
+
.then((x) => ({ type: 'hcp', dataOwner: x }))
|
|
963
|
+
.catch(() => this.deviceBaseApi.getDevice(ownerId).then((x) => ({ type: 'device', dataOwner: x })))
|
|
964
|
+
.catch(() => this.patientBaseApi.getPatient(ownerId).then((x) => ({ type: 'patient', dataOwner: x })));
|
|
965
|
+
}
|
|
968
966
|
// noinspection JSUnusedGlobalSymbols
|
|
969
967
|
checkPrivateKeyValidity(hcp) {
|
|
970
968
|
return new Promise((resolve) => {
|