@sphereon/ssi-sdk.data-store 0.34.1-feature.SSISDK.45.135 → 0.34.1-feature.SSISDK.45.189
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/index.cjs +127 -191
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +32 -33
- package/dist/index.d.ts +32 -33
- package/dist/index.js +127 -191
- package/dist/index.js.map +1 -1
- package/package.json +7 -7
- package/src/__tests__/pd-manager.entities.test.ts +21 -69
- package/src/__tests__/pd-manager.store.test.ts +111 -194
- package/src/entities/presentationDefinition/{PresentationDefinitionItemEntity.ts → DcqlQueryItemEntity.ts} +8 -12
- package/src/index.ts +3 -3
- package/src/migrations/generic/{13-UpdatePresentationDefinitionItemNullable.ts → 13-CreateDcqlQueryItem.ts} +8 -8
- package/src/migrations/generic/index.ts +2 -5
- package/src/migrations/postgres/1716475165345-CreatePresentationDefinitions.ts +1 -1
- package/src/migrations/postgres/1726588800000-CreateDcqlQueryItem.ts +25 -0
- package/src/migrations/sqlite/1716475165344-CreatePresentationDefinitions.ts +1 -1
- package/src/migrations/sqlite/1726617600000-CreateDcqlQueryItem.ts +24 -0
- package/src/presentationDefinition/AbstractPDStore.ts +5 -5
- package/src/presentationDefinition/PDStore.ts +40 -45
- package/src/types/presentationDefinition/IAbstractPDStore.ts +5 -5
- package/src/types/presentationDefinition/presentationDefinition.ts +8 -9
- package/src/utils/presentationDefinition/MappingUtils.ts +23 -38
- package/src/migrations/postgres/1756975509000-UpdatePresentationDefinitionItemNullable.ts +0 -15
- package/src/migrations/sqlite/1756975340000-UpdatePresentationDefinitionItemNullable.ts +0 -77
package/dist/index.js
CHANGED
|
@@ -8,55 +8,55 @@ import typeorm6 from "typeorm";
|
|
|
8
8
|
import typeorm5 from "typeorm";
|
|
9
9
|
|
|
10
10
|
// src/types/contact/contact.ts
|
|
11
|
-
var ConnectionType = /* @__PURE__ */ function(ConnectionType2) {
|
|
11
|
+
var ConnectionType = /* @__PURE__ */ (function(ConnectionType2) {
|
|
12
12
|
ConnectionType2["OPENID_CONNECT"] = "OIDC";
|
|
13
13
|
ConnectionType2["SIOPv2"] = "SIOPv2";
|
|
14
14
|
ConnectionType2["SIOPv2_OpenID4VP"] = "SIOPv2+OpenID4VP";
|
|
15
15
|
return ConnectionType2;
|
|
16
|
-
}({});
|
|
17
|
-
var CorrelationIdentifierType = /* @__PURE__ */ function(CorrelationIdentifierType2) {
|
|
16
|
+
})({});
|
|
17
|
+
var CorrelationIdentifierType = /* @__PURE__ */ (function(CorrelationIdentifierType2) {
|
|
18
18
|
CorrelationIdentifierType2["DID"] = "did";
|
|
19
19
|
CorrelationIdentifierType2["URL"] = "url";
|
|
20
20
|
return CorrelationIdentifierType2;
|
|
21
|
-
}({});
|
|
22
|
-
var PartyTypeType = /* @__PURE__ */ function(PartyTypeType2) {
|
|
21
|
+
})({});
|
|
22
|
+
var PartyTypeType = /* @__PURE__ */ (function(PartyTypeType2) {
|
|
23
23
|
PartyTypeType2["NATURAL_PERSON"] = "naturalPerson";
|
|
24
24
|
PartyTypeType2["ORGANIZATION"] = "organization";
|
|
25
25
|
return PartyTypeType2;
|
|
26
|
-
}({});
|
|
27
|
-
var PartyOrigin = /* @__PURE__ */ function(PartyOrigin2) {
|
|
26
|
+
})({});
|
|
27
|
+
var PartyOrigin = /* @__PURE__ */ (function(PartyOrigin2) {
|
|
28
28
|
PartyOrigin2["INTERNAL"] = "INTERNAL";
|
|
29
29
|
PartyOrigin2["EXTERNAL"] = "EXTERNAL";
|
|
30
30
|
return PartyOrigin2;
|
|
31
|
-
}({});
|
|
32
|
-
var IdentityOrigin = /* @__PURE__ */ function(IdentityOrigin2) {
|
|
31
|
+
})({});
|
|
32
|
+
var IdentityOrigin = /* @__PURE__ */ (function(IdentityOrigin2) {
|
|
33
33
|
IdentityOrigin2["INTERNAL"] = "INTERNAL";
|
|
34
34
|
IdentityOrigin2["EXTERNAL"] = "EXTERNAL";
|
|
35
35
|
return IdentityOrigin2;
|
|
36
|
-
}({});
|
|
36
|
+
})({});
|
|
37
37
|
|
|
38
38
|
// src/types/digitalCredential/enums.ts
|
|
39
|
-
var DocumentType = /* @__PURE__ */ function(DocumentType2) {
|
|
39
|
+
var DocumentType = /* @__PURE__ */ (function(DocumentType2) {
|
|
40
40
|
DocumentType2["VC"] = "VC";
|
|
41
41
|
DocumentType2["VP"] = "VP";
|
|
42
42
|
DocumentType2["P"] = "P";
|
|
43
43
|
DocumentType2["C"] = "C";
|
|
44
44
|
return DocumentType2;
|
|
45
|
-
}({});
|
|
46
|
-
var RegulationType = /* @__PURE__ */ function(RegulationType2) {
|
|
45
|
+
})({});
|
|
46
|
+
var RegulationType = /* @__PURE__ */ (function(RegulationType2) {
|
|
47
47
|
RegulationType2["PID"] = "PID";
|
|
48
48
|
RegulationType2["QEAA"] = "QEAA";
|
|
49
49
|
RegulationType2["EAA"] = "EAA";
|
|
50
50
|
RegulationType2["NON_REGULATED"] = "NON_REGULATED";
|
|
51
51
|
return RegulationType2;
|
|
52
|
-
}({});
|
|
53
|
-
var CredentialDocumentFormat = /* @__PURE__ */ function(CredentialDocumentFormat2) {
|
|
52
|
+
})({});
|
|
53
|
+
var CredentialDocumentFormat = /* @__PURE__ */ (function(CredentialDocumentFormat2) {
|
|
54
54
|
CredentialDocumentFormat2["JSON_LD"] = "JSON_LD";
|
|
55
55
|
CredentialDocumentFormat2["JWT"] = "JWT";
|
|
56
56
|
CredentialDocumentFormat2["SD_JWT"] = "SD_JWT";
|
|
57
57
|
CredentialDocumentFormat2["MSO_MDOC"] = "MSO_MDOC";
|
|
58
58
|
return CredentialDocumentFormat2;
|
|
59
|
-
}({});
|
|
59
|
+
})({});
|
|
60
60
|
(function(CredentialDocumentFormat2) {
|
|
61
61
|
function fromSpecValue(credentialFormat) {
|
|
62
62
|
const format = credentialFormat.toLowerCase();
|
|
@@ -89,19 +89,19 @@ var CredentialDocumentFormat = /* @__PURE__ */ function(CredentialDocumentFormat
|
|
|
89
89
|
__name(toSpecValue, "toSpecValue");
|
|
90
90
|
CredentialDocumentFormat2.toSpecValue = toSpecValue;
|
|
91
91
|
})(CredentialDocumentFormat || (CredentialDocumentFormat = {}));
|
|
92
|
-
var CredentialCorrelationType = /* @__PURE__ */ function(CredentialCorrelationType2) {
|
|
92
|
+
var CredentialCorrelationType = /* @__PURE__ */ (function(CredentialCorrelationType2) {
|
|
93
93
|
CredentialCorrelationType2["DID"] = "DID";
|
|
94
94
|
CredentialCorrelationType2["X509_SAN"] = "X509_SAN";
|
|
95
95
|
CredentialCorrelationType2["KID"] = "KID";
|
|
96
96
|
CredentialCorrelationType2["URL"] = "URL";
|
|
97
97
|
return CredentialCorrelationType2;
|
|
98
|
-
}({});
|
|
99
|
-
var CredentialStateType = /* @__PURE__ */ function(CredentialStateType2) {
|
|
98
|
+
})({});
|
|
99
|
+
var CredentialStateType = /* @__PURE__ */ (function(CredentialStateType2) {
|
|
100
100
|
CredentialStateType2["REVOKED"] = "REVOKED";
|
|
101
101
|
CredentialStateType2["VERIFIED"] = "VERIFIED";
|
|
102
102
|
CredentialStateType2["EXPIRED"] = "EXPIRED";
|
|
103
103
|
return CredentialStateType2;
|
|
104
|
-
}({});
|
|
104
|
+
})({});
|
|
105
105
|
|
|
106
106
|
// src/entities/contact/IdentityEntity.ts
|
|
107
107
|
import { BaseEntity as BaseEntity8, CreateDateColumn as CreateDateColumn7, Entity as Entity10, PrimaryGeneratedColumn as PrimaryGeneratedColumn10, UpdateDateColumn as UpdateDateColumn7, OneToOne as OneToOne4, JoinColumn as JoinColumn5, ManyToOne as ManyToOne7, Column as Column9, OneToMany as OneToMany4, BeforeInsert as BeforeInsert10, BeforeUpdate as BeforeUpdate10 } from "typeorm";
|
|
@@ -4022,7 +4022,7 @@ DigitalCredentialEntity = _ts_decorate33([
|
|
|
4022
4022
|
Entity25("DigitalCredential")
|
|
4023
4023
|
], DigitalCredentialEntity);
|
|
4024
4024
|
|
|
4025
|
-
// src/entities/presentationDefinition/
|
|
4025
|
+
// src/entities/presentationDefinition/DcqlQueryItemEntity.ts
|
|
4026
4026
|
import { BaseEntity as BaseEntity24, BeforeInsert as BeforeInsert20, BeforeUpdate as BeforeUpdate20, Column as Column31, CreateDateColumn as CreateDateColumn14, Entity as Entity26, Index as Index8, PrimaryGeneratedColumn as PrimaryGeneratedColumn23, UpdateDateColumn as UpdateDateColumn14 } from "typeorm";
|
|
4027
4027
|
import { IsNotEmpty as IsNotEmpty12 } from "class-validator";
|
|
4028
4028
|
import { typeOrmDateTime as typeOrmDateTime17 } from "@sphereon/ssi-sdk.agent-config";
|
|
@@ -4037,18 +4037,17 @@ function _ts_metadata33(k, v) {
|
|
|
4037
4037
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
4038
4038
|
}
|
|
4039
4039
|
__name(_ts_metadata33, "_ts_metadata");
|
|
4040
|
-
var
|
|
4040
|
+
var DcqlQueryItemEntity = class extends BaseEntity24 {
|
|
4041
4041
|
static {
|
|
4042
|
-
__name(this, "
|
|
4042
|
+
__name(this, "DcqlQueryItemEntity");
|
|
4043
4043
|
}
|
|
4044
4044
|
id;
|
|
4045
|
-
|
|
4045
|
+
queryId;
|
|
4046
4046
|
version;
|
|
4047
4047
|
tenantId;
|
|
4048
4048
|
purpose;
|
|
4049
4049
|
name;
|
|
4050
|
-
|
|
4051
|
-
dcqlPayload;
|
|
4050
|
+
query;
|
|
4052
4051
|
createdAt;
|
|
4053
4052
|
lastUpdatedAt;
|
|
4054
4053
|
// By default, @UpdateDateColumn in TypeORM updates the timestamp only when the entity's top-level properties change.
|
|
@@ -4059,20 +4058,20 @@ var PresentationDefinitionItemEntity = class extends BaseEntity24 {
|
|
|
4059
4058
|
_ts_decorate34([
|
|
4060
4059
|
PrimaryGeneratedColumn23("uuid"),
|
|
4061
4060
|
_ts_metadata33("design:type", String)
|
|
4062
|
-
],
|
|
4061
|
+
], DcqlQueryItemEntity.prototype, "id", void 0);
|
|
4063
4062
|
_ts_decorate34([
|
|
4064
4063
|
Column31({
|
|
4065
|
-
name: "
|
|
4064
|
+
name: "query_id",
|
|
4066
4065
|
length: 255,
|
|
4067
4066
|
type: "varchar",
|
|
4068
4067
|
nullable: false,
|
|
4069
4068
|
unique: false
|
|
4070
4069
|
}),
|
|
4071
4070
|
IsNotEmpty12({
|
|
4072
|
-
message: "A blank
|
|
4071
|
+
message: "A blank query id field is not allowed"
|
|
4073
4072
|
}),
|
|
4074
4073
|
_ts_metadata33("design:type", String)
|
|
4075
|
-
],
|
|
4074
|
+
], DcqlQueryItemEntity.prototype, "queryId", void 0);
|
|
4076
4075
|
_ts_decorate34([
|
|
4077
4076
|
Column31({
|
|
4078
4077
|
name: "version",
|
|
@@ -4085,7 +4084,7 @@ _ts_decorate34([
|
|
|
4085
4084
|
message: "A blank version field is not allowed"
|
|
4086
4085
|
}),
|
|
4087
4086
|
_ts_metadata33("design:type", String)
|
|
4088
|
-
],
|
|
4087
|
+
], DcqlQueryItemEntity.prototype, "version", void 0);
|
|
4089
4088
|
_ts_decorate34([
|
|
4090
4089
|
Column31({
|
|
4091
4090
|
name: "tenant_id",
|
|
@@ -4095,7 +4094,7 @@ _ts_decorate34([
|
|
|
4095
4094
|
unique: false
|
|
4096
4095
|
}),
|
|
4097
4096
|
_ts_metadata33("design:type", String)
|
|
4098
|
-
],
|
|
4097
|
+
], DcqlQueryItemEntity.prototype, "tenantId", void 0);
|
|
4099
4098
|
_ts_decorate34([
|
|
4100
4099
|
Column31({
|
|
4101
4100
|
name: "purpose",
|
|
@@ -4105,7 +4104,7 @@ _ts_decorate34([
|
|
|
4105
4104
|
unique: false
|
|
4106
4105
|
}),
|
|
4107
4106
|
_ts_metadata33("design:type", String)
|
|
4108
|
-
],
|
|
4107
|
+
], DcqlQueryItemEntity.prototype, "purpose", void 0);
|
|
4109
4108
|
_ts_decorate34([
|
|
4110
4109
|
Column31({
|
|
4111
4110
|
name: "name",
|
|
@@ -4115,31 +4114,19 @@ _ts_decorate34([
|
|
|
4115
4114
|
unique: false
|
|
4116
4115
|
}),
|
|
4117
4116
|
_ts_metadata33("design:type", String)
|
|
4118
|
-
],
|
|
4117
|
+
], DcqlQueryItemEntity.prototype, "name", void 0);
|
|
4119
4118
|
_ts_decorate34([
|
|
4120
4119
|
Column31({
|
|
4121
|
-
name: "
|
|
4120
|
+
name: "query",
|
|
4122
4121
|
type: "text",
|
|
4123
|
-
nullable:
|
|
4124
|
-
unique: false
|
|
4125
|
-
}),
|
|
4126
|
-
IsNotEmpty12({
|
|
4127
|
-
message: "A blank PD definition payload field is not allowed"
|
|
4128
|
-
}),
|
|
4129
|
-
_ts_metadata33("design:type", String)
|
|
4130
|
-
], PresentationDefinitionItemEntity.prototype, "definitionPayload", void 0);
|
|
4131
|
-
_ts_decorate34([
|
|
4132
|
-
Column31({
|
|
4133
|
-
name: "dcql_payload",
|
|
4134
|
-
type: "text",
|
|
4135
|
-
nullable: true,
|
|
4122
|
+
nullable: false,
|
|
4136
4123
|
unique: false
|
|
4137
4124
|
}),
|
|
4138
4125
|
IsNotEmpty12({
|
|
4139
|
-
message: "A blank dcql
|
|
4126
|
+
message: "A blank dcql query payload field is not allowed"
|
|
4140
4127
|
}),
|
|
4141
4128
|
_ts_metadata33("design:type", String)
|
|
4142
|
-
],
|
|
4129
|
+
], DcqlQueryItemEntity.prototype, "query", void 0);
|
|
4143
4130
|
_ts_decorate34([
|
|
4144
4131
|
CreateDateColumn14({
|
|
4145
4132
|
name: "created_at",
|
|
@@ -4147,7 +4134,7 @@ _ts_decorate34([
|
|
|
4147
4134
|
type: typeOrmDateTime17()
|
|
4148
4135
|
}),
|
|
4149
4136
|
_ts_metadata33("design:type", typeof Date === "undefined" ? Object : Date)
|
|
4150
|
-
],
|
|
4137
|
+
], DcqlQueryItemEntity.prototype, "createdAt", void 0);
|
|
4151
4138
|
_ts_decorate34([
|
|
4152
4139
|
UpdateDateColumn14({
|
|
4153
4140
|
name: "last_updated_at",
|
|
@@ -4155,22 +4142,22 @@ _ts_decorate34([
|
|
|
4155
4142
|
type: typeOrmDateTime17()
|
|
4156
4143
|
}),
|
|
4157
4144
|
_ts_metadata33("design:type", typeof Date === "undefined" ? Object : Date)
|
|
4158
|
-
],
|
|
4145
|
+
], DcqlQueryItemEntity.prototype, "lastUpdatedAt", void 0);
|
|
4159
4146
|
_ts_decorate34([
|
|
4160
4147
|
BeforeInsert20(),
|
|
4161
4148
|
BeforeUpdate20(),
|
|
4162
4149
|
_ts_metadata33("design:type", Function),
|
|
4163
4150
|
_ts_metadata33("design:paramtypes", []),
|
|
4164
4151
|
_ts_metadata33("design:returntype", void 0)
|
|
4165
|
-
],
|
|
4166
|
-
|
|
4167
|
-
Entity26("
|
|
4152
|
+
], DcqlQueryItemEntity.prototype, "updateUpdatedDate", null);
|
|
4153
|
+
DcqlQueryItemEntity = _ts_decorate34([
|
|
4154
|
+
Entity26("DcqlQueryItem"),
|
|
4168
4155
|
Index8([
|
|
4169
4156
|
"version"
|
|
4170
4157
|
], {
|
|
4171
4158
|
unique: false
|
|
4172
4159
|
})
|
|
4173
|
-
],
|
|
4160
|
+
], DcqlQueryItemEntity);
|
|
4174
4161
|
|
|
4175
4162
|
// src/entities/oid4vcState/Oid4vcStateEntity.ts
|
|
4176
4163
|
import { typeOrmDateTime as typeOrmDateTime18 } from "@sphereon/ssi-sdk.agent-config";
|
|
@@ -6772,65 +6759,52 @@ import { In as In4 } from "typeorm";
|
|
|
6772
6759
|
import Debug7 from "debug";
|
|
6773
6760
|
|
|
6774
6761
|
// src/utils/presentationDefinition/MappingUtils.ts
|
|
6775
|
-
import { DcqlQuery } from "dcql";
|
|
6776
6762
|
import * as blakepkg from "blakejs";
|
|
6777
|
-
|
|
6763
|
+
import { DcqlQuery } from "dcql";
|
|
6764
|
+
var dcqlQueryItemFrom = /* @__PURE__ */ __name((entity) => {
|
|
6778
6765
|
const result = {
|
|
6779
6766
|
id: entity.id,
|
|
6780
6767
|
tenantId: entity.tenantId,
|
|
6781
|
-
|
|
6768
|
+
queryId: entity.queryId,
|
|
6782
6769
|
version: entity.version,
|
|
6783
6770
|
name: entity.name,
|
|
6784
6771
|
purpose: entity.purpose,
|
|
6785
|
-
|
|
6786
|
-
...entity.dcqlPayload && {
|
|
6787
|
-
dcqlPayload: {
|
|
6788
|
-
queryId: entity.definitionId,
|
|
6789
|
-
name: entity.name,
|
|
6790
|
-
defaultPurpose: entity.purpose,
|
|
6791
|
-
dcqlQuery: DcqlQuery.parse(JSON.parse(entity.dcqlPayload))
|
|
6792
|
-
}
|
|
6793
|
-
},
|
|
6772
|
+
query: DcqlQuery.parse(JSON.parse(entity.query)),
|
|
6794
6773
|
createdAt: entity.createdAt,
|
|
6795
6774
|
lastUpdatedAt: entity.lastUpdatedAt
|
|
6796
6775
|
};
|
|
6776
|
+
if (result.query) {
|
|
6777
|
+
DcqlQuery.validate(result.query);
|
|
6778
|
+
}
|
|
6797
6779
|
return replaceNullWithUndefined(result);
|
|
6798
|
-
}, "
|
|
6799
|
-
var
|
|
6800
|
-
const entity = new
|
|
6780
|
+
}, "dcqlQueryItemFrom");
|
|
6781
|
+
var dcqlQueryEntityItemFrom = /* @__PURE__ */ __name((item) => {
|
|
6782
|
+
const entity = new DcqlQueryItemEntity();
|
|
6801
6783
|
entity.tenantId = item.tenantId;
|
|
6802
|
-
entity.
|
|
6784
|
+
entity.queryId = item.queryId;
|
|
6803
6785
|
entity.version = item.version;
|
|
6804
6786
|
entity.name = item.name;
|
|
6805
6787
|
entity.purpose = item.purpose;
|
|
6806
|
-
if (item.
|
|
6807
|
-
|
|
6808
|
-
|
|
6809
|
-
|
|
6810
|
-
entity.dcqlPayload = JSON.stringify(item.dcqlPayload.dcqlQuery);
|
|
6788
|
+
if (item.query) {
|
|
6789
|
+
const dcqlQuery = DcqlQuery.parse(item.query);
|
|
6790
|
+
DcqlQuery.validate(dcqlQuery);
|
|
6791
|
+
entity.query = JSON.stringify(item.query);
|
|
6811
6792
|
}
|
|
6812
6793
|
return entity;
|
|
6813
|
-
}, "
|
|
6794
|
+
}, "dcqlQueryEntityItemFrom");
|
|
6814
6795
|
function hashPayload(payload) {
|
|
6815
6796
|
return blakepkg.blake2bHex(JSON.stringify(payload));
|
|
6816
6797
|
}
|
|
6817
6798
|
__name(hashPayload, "hashPayload");
|
|
6818
6799
|
function isPresentationDefinitionEqual(base, compare) {
|
|
6819
|
-
if (base.
|
|
6800
|
+
if (base.queryId !== compare.queryId || base.tenantId !== compare.tenantId || base.version !== compare.version || base.name !== compare.name || base.purpose !== compare.purpose) {
|
|
6820
6801
|
return false;
|
|
6821
6802
|
}
|
|
6822
|
-
if (base.
|
|
6823
|
-
if (hashPayload(base.
|
|
6803
|
+
if (base.query && compare.query) {
|
|
6804
|
+
if (hashPayload(base.query) !== hashPayload(compare.query)) {
|
|
6824
6805
|
return false;
|
|
6825
6806
|
}
|
|
6826
|
-
} else if (base.
|
|
6827
|
-
return false;
|
|
6828
|
-
}
|
|
6829
|
-
if (base.definitionPayload && compare.definitionPayload) {
|
|
6830
|
-
if (hashPayload(base.definitionPayload) !== hashPayload(compare.definitionPayload)) {
|
|
6831
|
-
return false;
|
|
6832
|
-
}
|
|
6833
|
-
} else if (base.definitionPayload || compare.definitionPayload) {
|
|
6807
|
+
} else if (base.query || compare.query) {
|
|
6834
6808
|
return false;
|
|
6835
6809
|
}
|
|
6836
6810
|
return true;
|
|
@@ -6850,7 +6824,7 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6850
6824
|
}
|
|
6851
6825
|
getDefinition = /* @__PURE__ */ __name(async (args) => {
|
|
6852
6826
|
const { itemId } = args ?? {};
|
|
6853
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6827
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6854
6828
|
const result = await pdRepository.findOne({
|
|
6855
6829
|
where: {
|
|
6856
6830
|
id: itemId
|
|
@@ -6859,11 +6833,11 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6859
6833
|
if (!result) {
|
|
6860
6834
|
return Promise.reject(Error(`No presentation definition item found for id: ${itemId}`));
|
|
6861
6835
|
}
|
|
6862
|
-
return
|
|
6836
|
+
return dcqlQueryItemFrom(result);
|
|
6863
6837
|
}, "getDefinition");
|
|
6864
6838
|
hasDefinition = /* @__PURE__ */ __name(async (args) => {
|
|
6865
6839
|
const { itemId } = args ?? {};
|
|
6866
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6840
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6867
6841
|
const resultCount = await pdRepository.count({
|
|
6868
6842
|
where: {
|
|
6869
6843
|
id: itemId
|
|
@@ -6873,7 +6847,7 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6873
6847
|
}, "hasDefinition");
|
|
6874
6848
|
hasDefinitions = /* @__PURE__ */ __name(async (args) => {
|
|
6875
6849
|
const { filter } = args;
|
|
6876
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6850
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6877
6851
|
const resultCount = await pdRepository.count({
|
|
6878
6852
|
...filter && {
|
|
6879
6853
|
where: cleanFilter(filter)
|
|
@@ -6883,7 +6857,7 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6883
6857
|
}, "hasDefinitions");
|
|
6884
6858
|
getDefinitions = /* @__PURE__ */ __name(async (args) => {
|
|
6885
6859
|
const { filter } = args;
|
|
6886
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6860
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6887
6861
|
const initialResult = await this.findIds(pdRepository, filter);
|
|
6888
6862
|
const result = await pdRepository.find({
|
|
6889
6863
|
where: {
|
|
@@ -6893,19 +6867,19 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6893
6867
|
version: "DESC"
|
|
6894
6868
|
}
|
|
6895
6869
|
});
|
|
6896
|
-
return result.map((entity) =>
|
|
6870
|
+
return result.map((entity) => dcqlQueryItemFrom(entity));
|
|
6897
6871
|
}, "getDefinitions");
|
|
6898
6872
|
addDefinition = /* @__PURE__ */ __name(async (item) => {
|
|
6899
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6900
|
-
const entity =
|
|
6873
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6874
|
+
const entity = dcqlQueryEntityItemFrom(item);
|
|
6901
6875
|
debug7("Adding presentation definition entity", item);
|
|
6902
6876
|
const result = await pdRepository.save(entity, {
|
|
6903
6877
|
transaction: true
|
|
6904
6878
|
});
|
|
6905
|
-
return
|
|
6879
|
+
return dcqlQueryItemFrom(result);
|
|
6906
6880
|
}, "addDefinition");
|
|
6907
6881
|
updateDefinition = /* @__PURE__ */ __name(async (item) => {
|
|
6908
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6882
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6909
6883
|
const result = await pdRepository.findOne({
|
|
6910
6884
|
where: {
|
|
6911
6885
|
id: item.id
|
|
@@ -6918,25 +6892,20 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6918
6892
|
...result
|
|
6919
6893
|
};
|
|
6920
6894
|
updatedEntity.tenantId = item.tenantId;
|
|
6921
|
-
updatedEntity.
|
|
6895
|
+
updatedEntity.queryId = item.queryId;
|
|
6922
6896
|
updatedEntity.version = item.version;
|
|
6923
6897
|
updatedEntity.name = item.name;
|
|
6924
6898
|
updatedEntity.purpose = item.purpose;
|
|
6925
|
-
|
|
6926
|
-
updatedEntity.definitionPayload = JSON.stringify(item.definitionPayload);
|
|
6927
|
-
}
|
|
6928
|
-
if (item.dcqlPayload) {
|
|
6929
|
-
updatedEntity.dcqlPayload = JSON.stringify(item.dcqlPayload.dcqlQuery);
|
|
6930
|
-
}
|
|
6899
|
+
updatedEntity.query = JSON.stringify(item.query);
|
|
6931
6900
|
debug7("Updating presentation definition entity", updatedEntity);
|
|
6932
6901
|
const updateResult = await pdRepository.save(updatedEntity, {
|
|
6933
6902
|
transaction: true
|
|
6934
6903
|
});
|
|
6935
|
-
return
|
|
6904
|
+
return dcqlQueryItemFrom(updateResult);
|
|
6936
6905
|
}, "updateDefinition");
|
|
6937
6906
|
deleteDefinition = /* @__PURE__ */ __name(async (args) => {
|
|
6938
6907
|
const { itemId } = args;
|
|
6939
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6908
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6940
6909
|
const entity = await pdRepository.findOne({
|
|
6941
6910
|
where: {
|
|
6942
6911
|
id: itemId
|
|
@@ -6950,7 +6919,7 @@ var PDStore = class extends AbstractPDStore {
|
|
|
6950
6919
|
}, "deleteDefinition");
|
|
6951
6920
|
deleteDefinitions = /* @__PURE__ */ __name(async (args) => {
|
|
6952
6921
|
const { filter } = args;
|
|
6953
|
-
const pdRepository = (await this.dbConnection).getRepository(
|
|
6922
|
+
const pdRepository = (await this.dbConnection).getRepository(DcqlQueryItemEntity);
|
|
6954
6923
|
const initialResult = await this.findIds(pdRepository, filter);
|
|
6955
6924
|
const result = await pdRepository.find({
|
|
6956
6925
|
where: {
|
|
@@ -7182,7 +7151,7 @@ CREATE TABLE "PresentationDefinitionItem" (
|
|
|
7182
7151
|
"version" TEXT NOT NULL,
|
|
7183
7152
|
"purpose" TEXT,
|
|
7184
7153
|
"definition_payload" TEXT NOT NULL,
|
|
7185
|
-
"
|
|
7154
|
+
"query" TEXT,
|
|
7186
7155
|
"created_at" TIMESTAMP NOT NULL DEFAULT now(),
|
|
7187
7156
|
"last_updated_at" TIMESTAMP NOT NULL DEFAULT now(),
|
|
7188
7157
|
CONSTRAINT "PK_PresentationDefinitionItem_id" PRIMARY KEY ("id"))
|
|
@@ -7208,7 +7177,7 @@ var CreatePresentationDefinitions1716475165344 = class {
|
|
|
7208
7177
|
"version" varchar NOT NULL,
|
|
7209
7178
|
"purpose" varchar,
|
|
7210
7179
|
"definition_payload" varchar NOT NULL,
|
|
7211
|
-
"
|
|
7180
|
+
"query" varchar,
|
|
7212
7181
|
"created_at" datetime NOT NULL DEFAULT (datetime('now')),
|
|
7213
7182
|
"last_updated_at" datetime NOT NULL DEFAULT (datetime('now')))`);
|
|
7214
7183
|
}
|
|
@@ -7803,105 +7772,72 @@ var CreateBitstringStatusList1741895823000 = class {
|
|
|
7803
7772
|
}
|
|
7804
7773
|
};
|
|
7805
7774
|
|
|
7806
|
-
// src/migrations/generic/13-
|
|
7775
|
+
// src/migrations/generic/13-CreateDcqlQueryItem.ts
|
|
7807
7776
|
import Debug12 from "debug";
|
|
7808
7777
|
|
|
7809
|
-
// src/migrations/postgres/
|
|
7810
|
-
var
|
|
7778
|
+
// src/migrations/postgres/1726588800000-CreateDcqlQueryItem.ts
|
|
7779
|
+
var CreateDcqlQueryItemPG1726588800000 = class {
|
|
7811
7780
|
static {
|
|
7812
|
-
__name(this, "
|
|
7781
|
+
__name(this, "CreateDcqlQueryItemPG1726588800000");
|
|
7813
7782
|
}
|
|
7814
|
-
name = "
|
|
7783
|
+
name = "CreateDcqlQueryItemPG1726588800000";
|
|
7815
7784
|
async up(queryRunner) {
|
|
7816
|
-
await queryRunner.query(`
|
|
7785
|
+
await queryRunner.query(`
|
|
7786
|
+
CREATE TABLE "DcqlQueryItem" (
|
|
7787
|
+
"id" uuid NOT NULL DEFAULT uuid_generate_v4(),
|
|
7788
|
+
"tenant_id" TEXT,
|
|
7789
|
+
"query_id" TEXT NOT NULL,
|
|
7790
|
+
"name" TEXT,
|
|
7791
|
+
"version" TEXT NOT NULL,
|
|
7792
|
+
"purpose" TEXT,
|
|
7793
|
+
"query" TEXT NOT NULL,
|
|
7794
|
+
"created_at" TIMESTAMP NOT NULL DEFAULT now(),
|
|
7795
|
+
"last_updated_at" TIMESTAMP NOT NULL DEFAULT now(),
|
|
7796
|
+
CONSTRAINT "PK_DcqlQueryItem_id" PRIMARY KEY ("id"))
|
|
7797
|
+
`);
|
|
7817
7798
|
}
|
|
7818
7799
|
async down(queryRunner) {
|
|
7819
|
-
await queryRunner.query(`
|
|
7800
|
+
await queryRunner.query(`DROP TABLE "DcqlQueryItem"`);
|
|
7820
7801
|
}
|
|
7821
7802
|
};
|
|
7822
7803
|
|
|
7823
|
-
// src/migrations/sqlite/
|
|
7824
|
-
var
|
|
7804
|
+
// src/migrations/sqlite/1726617600000-CreateDcqlQueryItem.ts
|
|
7805
|
+
var CreateDcqlQueryItemSQlite1726617600000 = class {
|
|
7825
7806
|
static {
|
|
7826
|
-
__name(this, "
|
|
7807
|
+
__name(this, "CreateDcqlQueryItemSQlite1726617600000");
|
|
7827
7808
|
}
|
|
7828
|
-
name = "
|
|
7809
|
+
name = "CreateDcqlQueryItemSQlite1726617600000";
|
|
7829
7810
|
async up(queryRunner) {
|
|
7830
|
-
await queryRunner.query(`
|
|
7831
|
-
|
|
7832
|
-
|
|
7833
|
-
|
|
7834
|
-
|
|
7835
|
-
|
|
7836
|
-
|
|
7837
|
-
|
|
7838
|
-
|
|
7839
|
-
|
|
7840
|
-
"created_at" datetime NOT NULL DEFAULT (datetime('now')),
|
|
7841
|
-
"last_updated_at" datetime NOT NULL DEFAULT (datetime('now')),
|
|
7842
|
-
CONSTRAINT "UQ_PresentationDefinitionItem_definition_id_version" UNIQUE ("definition_id", "version")
|
|
7843
|
-
)
|
|
7844
|
-
`);
|
|
7845
|
-
await queryRunner.query(`
|
|
7846
|
-
INSERT INTO "temporary_PresentationDefinitionItem"(
|
|
7847
|
-
"id", "definition_id", "version", "tenant_id", "purpose", "name",
|
|
7848
|
-
"definition_payload", "dcql_payload", "created_at", "last_updated_at"
|
|
7849
|
-
)
|
|
7850
|
-
SELECT
|
|
7851
|
-
"id", "definition_id", "version", "tenant_id", "purpose", "name",
|
|
7852
|
-
"definition_payload", "dcql_payload", "created_at", "last_updated_at"
|
|
7853
|
-
FROM "PresentationDefinitionItem"
|
|
7854
|
-
`);
|
|
7855
|
-
await queryRunner.query(`DROP TABLE "PresentationDefinitionItem"`);
|
|
7856
|
-
await queryRunner.query(`ALTER TABLE "temporary_PresentationDefinitionItem" RENAME TO "PresentationDefinitionItem"`);
|
|
7857
|
-
await queryRunner.query(`CREATE INDEX "IDX_PresentationDefinitionItem_version" ON "PresentationDefinitionItem" ("version")`);
|
|
7811
|
+
await queryRunner.query(`CREATE TABLE "DcqlQueryItem" (
|
|
7812
|
+
"id" varchar PRIMARY KEY NOT NULL,
|
|
7813
|
+
"tenant_id" varchar,
|
|
7814
|
+
"query_id" varchar NOT NULL,
|
|
7815
|
+
"name" varchar,
|
|
7816
|
+
"version" varchar NOT NULL,
|
|
7817
|
+
"purpose" varchar,
|
|
7818
|
+
"query" varchar NOT NULL,
|
|
7819
|
+
"created_at" datetime NOT NULL DEFAULT (datetime('now')),
|
|
7820
|
+
"last_updated_at" datetime NOT NULL DEFAULT (datetime('now')))`);
|
|
7858
7821
|
}
|
|
7859
7822
|
async down(queryRunner) {
|
|
7860
|
-
await queryRunner.query(`
|
|
7861
|
-
CREATE TABLE "temporary_PresentationDefinitionItem" (
|
|
7862
|
-
"id" varchar PRIMARY KEY NOT NULL,
|
|
7863
|
-
"definition_id" varchar(255) NOT NULL,
|
|
7864
|
-
"version" varchar(255) NOT NULL,
|
|
7865
|
-
"tenant_id" varchar(255),
|
|
7866
|
-
"purpose" varchar(255),
|
|
7867
|
-
"name" varchar(255),
|
|
7868
|
-
"definition_payload" text NOT NULL,
|
|
7869
|
-
"dcql_payload" text,
|
|
7870
|
-
"created_at" datetime NOT NULL DEFAULT (datetime('now')),
|
|
7871
|
-
"last_updated_at" datetime NOT NULL DEFAULT (datetime('now')),
|
|
7872
|
-
CONSTRAINT "UQ_PresentationDefinitionItem_definition_id_version" UNIQUE ("definition_id", "version")
|
|
7873
|
-
)
|
|
7874
|
-
`);
|
|
7875
|
-
await queryRunner.query(`
|
|
7876
|
-
INSERT INTO "temporary_PresentationDefinitionItem"(
|
|
7877
|
-
"id", "definition_id", "version", "tenant_id", "purpose", "name",
|
|
7878
|
-
"definition_payload", "dcql_payload", "created_at", "last_updated_at"
|
|
7879
|
-
)
|
|
7880
|
-
SELECT
|
|
7881
|
-
"id", "definition_id", "version", "tenant_id", "purpose", "name",
|
|
7882
|
-
"definition_payload", "dcql_payload", "created_at", "last_updated_at"
|
|
7883
|
-
FROM "PresentationDefinitionItem"
|
|
7884
|
-
`);
|
|
7885
|
-
await queryRunner.query(`DROP TABLE "PresentationDefinitionItem"`);
|
|
7886
|
-
await queryRunner.query(`ALTER TABLE "temporary_PresentationDefinitionItem" RENAME TO "PresentationDefinitionItem"`);
|
|
7887
|
-
await queryRunner.query(`CREATE INDEX "IDX_PresentationDefinitionItem_version" ON "PresentationDefinitionItem" ("version")`);
|
|
7823
|
+
await queryRunner.query(`DROP TABLE "DcqlQueryItem"`);
|
|
7888
7824
|
}
|
|
7889
7825
|
};
|
|
7890
7826
|
|
|
7891
|
-
// src/migrations/generic/13-
|
|
7827
|
+
// src/migrations/generic/13-CreateDcqlQueryItem.ts
|
|
7892
7828
|
var debug12 = Debug12("sphereon:ssi-sdk:migrations");
|
|
7893
|
-
var
|
|
7829
|
+
var CreateDcqlQueryItem1726617600000 = class {
|
|
7894
7830
|
static {
|
|
7895
|
-
__name(this, "
|
|
7831
|
+
__name(this, "CreateDcqlQueryItem1726617600000");
|
|
7896
7832
|
}
|
|
7897
|
-
name = "
|
|
7833
|
+
name = "CreateDcqlQueryItem1726617600000";
|
|
7898
7834
|
async up(queryRunner) {
|
|
7899
7835
|
debug12("migration: updating presentation definition item nullable fields");
|
|
7900
7836
|
const dbType = queryRunner.connection.driver.options.type;
|
|
7901
7837
|
switch (dbType) {
|
|
7902
7838
|
case "postgres": {
|
|
7903
7839
|
debug12("using postgres migration file");
|
|
7904
|
-
const mig = new
|
|
7840
|
+
const mig = new CreateDcqlQueryItemPG1726588800000();
|
|
7905
7841
|
await mig.up(queryRunner);
|
|
7906
7842
|
debug12("Migration statements executed");
|
|
7907
7843
|
return;
|
|
@@ -7910,7 +7846,7 @@ var UpdatePresentationDefinitionItemNullable1741895824000 = class {
|
|
|
7910
7846
|
case "expo":
|
|
7911
7847
|
case "react-native": {
|
|
7912
7848
|
debug12("using sqlite/react-native migration file");
|
|
7913
|
-
const mig = new
|
|
7849
|
+
const mig = new CreateDcqlQueryItemSQlite1726617600000();
|
|
7914
7850
|
await mig.up(queryRunner);
|
|
7915
7851
|
debug12("Migration statements executed");
|
|
7916
7852
|
return;
|
|
@@ -7925,7 +7861,7 @@ var UpdatePresentationDefinitionItemNullable1741895824000 = class {
|
|
|
7925
7861
|
switch (dbType) {
|
|
7926
7862
|
case "postgres": {
|
|
7927
7863
|
debug12("using postgres migration file");
|
|
7928
|
-
const mig = new
|
|
7864
|
+
const mig = new CreateDcqlQueryItemPG1726588800000();
|
|
7929
7865
|
await mig.down(queryRunner);
|
|
7930
7866
|
debug12("Migration statements executed");
|
|
7931
7867
|
return;
|
|
@@ -7934,7 +7870,7 @@ var UpdatePresentationDefinitionItemNullable1741895824000 = class {
|
|
|
7934
7870
|
case "expo":
|
|
7935
7871
|
case "react-native": {
|
|
7936
7872
|
debug12("using sqlite/react-native migration file");
|
|
7937
|
-
const mig = new
|
|
7873
|
+
const mig = new CreateDcqlQueryItemSQlite1726617600000();
|
|
7938
7874
|
await mig.down(queryRunner);
|
|
7939
7875
|
debug12("Migration statements executed");
|
|
7940
7876
|
return;
|
|
@@ -9349,7 +9285,7 @@ var DataStoreMachineStateMigrations = [
|
|
|
9349
9285
|
];
|
|
9350
9286
|
var DataStorePresentationDefinitionMigrations = [
|
|
9351
9287
|
CreatePresentationDefinitions1716533767523,
|
|
9352
|
-
|
|
9288
|
+
CreateDcqlQueryItem1726617600000
|
|
9353
9289
|
];
|
|
9354
9290
|
var DataStoreMigrations = [
|
|
9355
9291
|
...DataStoreContactMigrations,
|
|
@@ -9536,7 +9472,7 @@ var DataStoreIssuanceBrandingEntities = [
|
|
|
9536
9472
|
CredentialClaimsEntity
|
|
9537
9473
|
];
|
|
9538
9474
|
var DataStorePresentationDefinitionEntities = [
|
|
9539
|
-
|
|
9475
|
+
DcqlQueryItemEntity
|
|
9540
9476
|
];
|
|
9541
9477
|
var DataStoreStatusListEntities = [
|
|
9542
9478
|
StatusListEntity,
|
|
@@ -9606,6 +9542,7 @@ export {
|
|
|
9606
9542
|
DataStorePresentationDefinitionMigrations,
|
|
9607
9543
|
DataStoreStatusListEntities,
|
|
9608
9544
|
DataStoreStatusListMigrations,
|
|
9545
|
+
DcqlQueryItemEntity,
|
|
9609
9546
|
DidAuthConfigEntity,
|
|
9610
9547
|
DigitalCredentialEntity,
|
|
9611
9548
|
DigitalCredentialStore,
|
|
@@ -9631,7 +9568,6 @@ export {
|
|
|
9631
9568
|
PartyOrigin,
|
|
9632
9569
|
PartyTypeType,
|
|
9633
9570
|
PhysicalAddressEntity,
|
|
9634
|
-
PresentationDefinitionItemEntity,
|
|
9635
9571
|
RegulationType,
|
|
9636
9572
|
StatusList2021Entity,
|
|
9637
9573
|
StatusListEntity,
|
|
@@ -9655,6 +9591,8 @@ export {
|
|
|
9655
9591
|
credentialBrandingFrom,
|
|
9656
9592
|
credentialClaimsEntityFrom,
|
|
9657
9593
|
credentialLocaleBrandingEntityFrom,
|
|
9594
|
+
dcqlQueryEntityItemFrom,
|
|
9595
|
+
dcqlQueryItemFrom,
|
|
9658
9596
|
didAuthConfigEntityFrom,
|
|
9659
9597
|
didAuthConfigFrom,
|
|
9660
9598
|
digitalCredentialFrom,
|
|
@@ -9694,8 +9632,6 @@ export {
|
|
|
9694
9632
|
partyTypeFrom,
|
|
9695
9633
|
physicalAddressEntityFrom,
|
|
9696
9634
|
physicalAddressFrom,
|
|
9697
|
-
presentationDefinitionEntityItemFrom,
|
|
9698
|
-
presentationDefinitionItemFrom,
|
|
9699
9635
|
textAttributesEntityFrom
|
|
9700
9636
|
};
|
|
9701
9637
|
//# sourceMappingURL=index.js.map
|