@pagopa/io-react-native-wallet 1.7.1 → 1.8.0
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/lib/commonjs/client/generated/wallet-provider.js +37 -11
- package/lib/commonjs/client/generated/wallet-provider.js.map +1 -1
- package/lib/commonjs/credential/issuance/02-get-issuer-config.js +83 -3
- package/lib/commonjs/credential/issuance/02-get-issuer-config.js.map +1 -1
- package/lib/commonjs/credential/issuance/03-start-user-authorization.js +5 -7
- package/lib/commonjs/credential/issuance/03-start-user-authorization.js.map +1 -1
- package/lib/commonjs/credential/issuance/06-obtain-credential.js +27 -10
- package/lib/commonjs/credential/issuance/06-obtain-credential.js.map +1 -1
- package/lib/commonjs/credential/issuance/07-verify-and-parse-credential.js +50 -46
- package/lib/commonjs/credential/issuance/07-verify-and-parse-credential.js.map +1 -1
- package/lib/commonjs/credential/issuance/README.md +1 -1
- package/lib/commonjs/credential/issuance/const.js +1 -1
- package/lib/commonjs/credential/issuance/const.js.map +1 -1
- package/lib/commonjs/credential/issuance/index.js +6 -0
- package/lib/commonjs/credential/issuance/index.js.map +1 -1
- package/lib/commonjs/credential/issuance/types.js +19 -10
- package/lib/commonjs/credential/issuance/types.js.map +1 -1
- package/lib/commonjs/credential/presentation/07-evaluate-dcql-query.js +10 -3
- package/lib/commonjs/credential/presentation/07-evaluate-dcql-query.js.map +1 -1
- package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js +11 -4
- package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js.map +1 -1
- package/lib/commonjs/credential/presentation/08-send-authorization-response.js +3 -3
- package/lib/commonjs/credential/presentation/08-send-authorization-response.js.map +1 -1
- package/lib/commonjs/credential/presentation/types.js.map +1 -1
- package/lib/commonjs/entity/openid-connect/issuer/types.js +2 -2
- package/lib/commonjs/entity/openid-connect/issuer/types.js.map +1 -1
- package/lib/commonjs/entity/trust/types.js +19 -30
- package/lib/commonjs/entity/trust/types.js.map +1 -1
- package/lib/commonjs/index.js +7 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/mdoc/index.js +3 -3
- package/lib/commonjs/mdoc/index.js.map +1 -1
- package/lib/commonjs/sd-jwt/index.js +2 -2
- package/lib/commonjs/sd-jwt/index.js.map +1 -1
- package/lib/commonjs/sd-jwt/types.js +1 -1
- package/lib/commonjs/sd-jwt/types.js.map +1 -1
- package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-utils.js +3 -2
- package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-utils.js.map +1 -1
- package/lib/commonjs/utils/pop.js +1 -1
- package/lib/commonjs/utils/pop.js.map +1 -1
- package/lib/commonjs/wallet-instance-attestation/issuing.js +11 -7
- package/lib/commonjs/wallet-instance-attestation/issuing.js.map +1 -1
- package/lib/commonjs/wallet-instance-attestation/types.js +14 -19
- package/lib/commonjs/wallet-instance-attestation/types.js.map +1 -1
- package/lib/module/client/generated/wallet-provider.js +29 -7
- package/lib/module/client/generated/wallet-provider.js.map +1 -1
- package/lib/module/credential/issuance/02-get-issuer-config.js +80 -1
- package/lib/module/credential/issuance/02-get-issuer-config.js.map +1 -1
- package/lib/module/credential/issuance/03-start-user-authorization.js +5 -7
- package/lib/module/credential/issuance/03-start-user-authorization.js.map +1 -1
- package/lib/module/credential/issuance/06-obtain-credential.js +28 -11
- package/lib/module/credential/issuance/06-obtain-credential.js.map +1 -1
- package/lib/module/credential/issuance/07-verify-and-parse-credential.js +50 -46
- package/lib/module/credential/issuance/07-verify-and-parse-credential.js.map +1 -1
- package/lib/module/credential/issuance/README.md +1 -1
- package/lib/module/credential/issuance/const.js +1 -1
- package/lib/module/credential/issuance/const.js.map +1 -1
- package/lib/module/credential/issuance/index.js +2 -2
- package/lib/module/credential/issuance/index.js.map +1 -1
- package/lib/module/credential/issuance/types.js +15 -8
- package/lib/module/credential/issuance/types.js.map +1 -1
- package/lib/module/credential/presentation/07-evaluate-dcql-query.js +10 -3
- package/lib/module/credential/presentation/07-evaluate-dcql-query.js.map +1 -1
- package/lib/module/credential/presentation/07-evaluate-input-descriptor.js +11 -4
- package/lib/module/credential/presentation/07-evaluate-input-descriptor.js.map +1 -1
- package/lib/module/credential/presentation/08-send-authorization-response.js +3 -3
- package/lib/module/credential/presentation/08-send-authorization-response.js.map +1 -1
- package/lib/module/credential/presentation/types.js.map +1 -1
- package/lib/module/entity/openid-connect/issuer/types.js +2 -2
- package/lib/module/entity/openid-connect/issuer/types.js.map +1 -1
- package/lib/module/entity/trust/types.js +19 -30
- package/lib/module/entity/trust/types.js.map +1 -1
- package/lib/module/index.js +2 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/mdoc/index.js +3 -3
- package/lib/module/mdoc/index.js.map +1 -1
- package/lib/module/sd-jwt/index.js +2 -2
- package/lib/module/sd-jwt/index.js.map +1 -1
- package/lib/module/sd-jwt/types.js +1 -1
- package/lib/module/sd-jwt/types.js.map +1 -1
- package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-utils.js +3 -2
- package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-utils.js.map +1 -1
- package/lib/module/utils/pop.js +1 -1
- package/lib/module/utils/pop.js.map +1 -1
- package/lib/module/wallet-instance-attestation/issuing.js +13 -9
- package/lib/module/wallet-instance-attestation/issuing.js.map +1 -1
- package/lib/module/wallet-instance-attestation/types.js +12 -17
- package/lib/module/wallet-instance-attestation/types.js.map +1 -1
- package/lib/typescript/client/generated/wallet-provider.d.ts +146 -17
- package/lib/typescript/client/generated/wallet-provider.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/02-get-issuer-config.d.ts +15 -0
- package/lib/typescript/credential/issuance/02-get-issuer-config.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/03-start-user-authorization.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/06-obtain-credential.d.ts +7 -2
- package/lib/typescript/credential/issuance/06-obtain-credential.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/07-verify-and-parse-credential.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/const.d.ts +1 -1
- package/lib/typescript/credential/issuance/const.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/index.d.ts +2 -2
- package/lib/typescript/credential/issuance/index.d.ts.map +1 -1
- package/lib/typescript/credential/issuance/types.d.ts +52 -21
- package/lib/typescript/credential/issuance/types.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/07-evaluate-dcql-query.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/07-evaluate-input-descriptor.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/08-send-authorization-response.d.ts +1 -1
- package/lib/typescript/credential/presentation/types.d.ts +4 -2
- package/lib/typescript/credential/presentation/types.d.ts.map +1 -1
- package/lib/typescript/entity/openid-connect/issuer/types.d.ts +17 -17
- package/lib/typescript/entity/openid-connect/issuer/types.d.ts.map +1 -1
- package/lib/typescript/entity/trust/index.d.ts +150 -140
- package/lib/typescript/entity/trust/index.d.ts.map +1 -1
- package/lib/typescript/entity/trust/types.d.ts +540 -344
- package/lib/typescript/entity/trust/types.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -1
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/pid/sd-jwt/types.d.ts +2 -2
- package/lib/typescript/sd-jwt/index.d.ts +12 -12
- package/lib/typescript/sd-jwt/types.d.ts +14 -14
- package/lib/typescript/utils/credential/issuance/07-verify-and-parse-credentials-utils.d.ts.map +1 -1
- package/lib/typescript/wallet-instance-attestation/issuing.d.ts.map +1 -1
- package/lib/typescript/wallet-instance-attestation/types.d.ts +50 -102
- package/lib/typescript/wallet-instance-attestation/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/client/generated/wallet-provider.ts +39 -7
- package/src/credential/issuance/02-get-issuer-config.ts +117 -0
- package/src/credential/issuance/03-start-user-authorization.ts +7 -8
- package/src/credential/issuance/06-obtain-credential.ts +41 -14
- package/src/credential/issuance/07-verify-and-parse-credential.ts +7 -3
- package/src/credential/issuance/README.md +1 -1
- package/src/credential/issuance/const.ts +1 -0
- package/src/credential/issuance/index.ts +6 -1
- package/src/credential/issuance/types.ts +21 -8
- package/src/credential/presentation/07-evaluate-dcql-query.ts +15 -5
- package/src/credential/presentation/07-evaluate-input-descriptor.ts +21 -4
- package/src/credential/presentation/08-send-authorization-response.ts +3 -3
- package/src/credential/presentation/types.ts +3 -0
- package/src/entity/openid-connect/issuer/types.ts +2 -1
- package/src/entity/trust/types.ts +22 -20
- package/src/index.ts +2 -0
- package/src/mdoc/index.ts +3 -3
- package/src/sd-jwt/index.ts +2 -2
- package/src/sd-jwt/types.ts +1 -1
- package/src/utils/credential/issuance/07-verify-and-parse-credentials-utils.ts +3 -2
- package/src/utils/pop.ts +1 -1
- package/src/wallet-instance-attestation/issuing.ts +14 -8
- package/src/wallet-instance-attestation/types.ts +16 -22
@@ -11,13 +11,17 @@ import { extractElementValueAsDate } from "../../mdoc/converters";
|
|
11
11
|
|
12
12
|
//Exported for testing purposes
|
13
13
|
export const parseCredentialSdJwt = function (credentials_supported, _ref) {
|
14
|
+
var _Object$entries$find;
|
14
15
|
let {
|
15
16
|
sdJwt,
|
16
17
|
disclosures
|
17
18
|
} = _ref;
|
18
19
|
let ignoreMissingAttributes = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
19
20
|
let includeUndefinedAttributes = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
20
|
-
const credentialSubject = credentials_supported
|
21
|
+
const credentialSubject = (_Object$entries$find = Object.entries(credentials_supported).find(_ref2 => {
|
22
|
+
let [, vl] = _ref2;
|
23
|
+
return vl.vct === sdJwt.payload.vct;
|
24
|
+
})) === null || _Object$entries$find === void 0 ? void 0 : _Object$entries$find[1];
|
21
25
|
if (!credentialSubject) {
|
22
26
|
throw new IoWalletError("Credential type not supported by the issuer");
|
23
27
|
}
|
@@ -34,10 +38,10 @@ export const parseCredentialSdJwt = function (credentials_supported, _ref) {
|
|
34
38
|
const attrDefinitions = Object.entries(claims);
|
35
39
|
|
36
40
|
// the key of the attribute defintion must match the disclosure's name
|
37
|
-
const attrsNotInDisclosures = attrDefinitions.filter(
|
38
|
-
let [attrKey, definition] =
|
39
|
-
return !disclosures.some(
|
40
|
-
let [, name] =
|
41
|
+
const attrsNotInDisclosures = attrDefinitions.filter(_ref3 => {
|
42
|
+
let [attrKey, definition] = _ref3;
|
43
|
+
return !disclosures.some(_ref4 => {
|
44
|
+
let [, name] = _ref4;
|
41
45
|
return name === attrKey;
|
42
46
|
}) && definition.mandatory;
|
43
47
|
});
|
@@ -53,33 +57,33 @@ export const parseCredentialSdJwt = function (credentials_supported, _ref) {
|
|
53
57
|
// and are present in the disclosure set
|
54
58
|
const definedValues = Object.fromEntries(attrDefinitions
|
55
59
|
// retrieve the value from the disclosure set
|
56
|
-
.map(
|
60
|
+
.map(_ref5 => {
|
57
61
|
var _disclosures$find;
|
58
|
-
let [attrKey, definition] =
|
62
|
+
let [attrKey, definition] = _ref5;
|
59
63
|
return [attrKey, {
|
60
64
|
...definition,
|
61
65
|
value: (_disclosures$find = disclosures.find(_ => _[1 /* name */] === attrKey)) === null || _disclosures$find === void 0 ? void 0 : _disclosures$find[2 /* value */]
|
62
66
|
}];
|
63
67
|
})
|
64
68
|
//filter the not found elements
|
65
|
-
.filter(
|
66
|
-
let [_, definition] =
|
69
|
+
.filter(_ref6 => {
|
70
|
+
let [_, definition] = _ref6;
|
67
71
|
return definition.value !== undefined;
|
68
72
|
})
|
69
73
|
// add a human readable attribute name, with i18n, in the form { locale: name }
|
70
74
|
// example: { "it-IT": "Nome", "en-EN": "Name", "es-ES": "Nombre" }
|
71
|
-
.map(
|
75
|
+
.map(_ref7 => {
|
72
76
|
let [attrKey, {
|
73
77
|
display,
|
74
78
|
...definition
|
75
|
-
}] =
|
79
|
+
}] = _ref7;
|
76
80
|
return [attrKey, {
|
77
81
|
...definition,
|
78
|
-
name: display.reduce((names,
|
82
|
+
name: display.reduce((names, _ref8) => {
|
79
83
|
let {
|
80
84
|
locale,
|
81
85
|
name
|
82
|
-
} =
|
86
|
+
} = _ref8;
|
83
87
|
return {
|
84
88
|
...names,
|
85
89
|
[locale]: name
|
@@ -90,8 +94,8 @@ export const parseCredentialSdJwt = function (credentials_supported, _ref) {
|
|
90
94
|
if (includeUndefinedAttributes) {
|
91
95
|
// attributes that are in the disclosure set
|
92
96
|
// but are not defined in the issuer configuration
|
93
|
-
const undefinedValues = Object.fromEntries(disclosures.filter(_ => !Object.keys(definedValues).includes(_[1])).map(
|
94
|
-
let [, key, value] =
|
97
|
+
const undefinedValues = Object.fromEntries(disclosures.filter(_ => !Object.keys(definedValues).includes(_[1])).map(_ref9 => {
|
98
|
+
let [, key, value] = _ref9;
|
95
99
|
return [key, {
|
96
100
|
value,
|
97
101
|
name: key
|
@@ -106,10 +110,10 @@ export const parseCredentialSdJwt = function (credentials_supported, _ref) {
|
|
106
110
|
};
|
107
111
|
|
108
112
|
//Exported for testing purposes
|
109
|
-
export const parseCredentialMDoc = function (credentials_supported, credential_type,
|
113
|
+
export const parseCredentialMDoc = function (credentials_supported, credential_type, _ref10) {
|
110
114
|
let {
|
111
115
|
issuerSigned
|
112
|
-
} =
|
116
|
+
} = _ref10;
|
113
117
|
let ignoreMissingAttributes = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
|
114
118
|
let includeUndefinedAttributes = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;
|
115
119
|
const credentialSubject = credentials_supported[credential_type];
|
@@ -123,27 +127,27 @@ export const parseCredentialMDoc = function (credentials_supported, credential_t
|
|
123
127
|
}
|
124
128
|
|
125
129
|
const claims = credentialSubject.claims;
|
126
|
-
const attrDefinitions = Object.entries(claims).flatMap(
|
127
|
-
let [namespace, claimName] =
|
128
|
-
return Object.entries(claimName).map(
|
129
|
-
let [claimNameKey, definition] =
|
130
|
+
const attrDefinitions = Object.entries(claims).flatMap(_ref11 => {
|
131
|
+
let [namespace, claimName] = _ref11;
|
132
|
+
return Object.entries(claimName).map(_ref12 => {
|
133
|
+
let [claimNameKey, definition] = _ref12;
|
130
134
|
return [namespace, claimNameKey, definition];
|
131
135
|
});
|
132
136
|
});
|
133
137
|
if (!issuerSigned.nameSpaces) {
|
134
138
|
throw new IoWalletError("Missing claims in the credential");
|
135
139
|
}
|
136
|
-
const flatNamespaces = Object.entries(issuerSigned.nameSpaces).flatMap(
|
137
|
-
let [namespace, values] =
|
140
|
+
const flatNamespaces = Object.entries(issuerSigned.nameSpaces).flatMap(_ref13 => {
|
141
|
+
let [namespace, values] = _ref13;
|
138
142
|
return values.map(v => [namespace, v.elementIdentifier, v.elementValue]);
|
139
143
|
});
|
140
144
|
|
141
145
|
// Check that all mandatory attributes defined in the issuer configuration are present in the disclosure set
|
142
146
|
// and filter the non present ones
|
143
|
-
const attrsNotInDisclosures = attrDefinitions.filter(
|
144
|
-
let [attrDefNamespace, attrKey, definition] =
|
145
|
-
const isClaimPresent = flatNamespaces.find(
|
146
|
-
let [namespace, name] =
|
147
|
+
const attrsNotInDisclosures = attrDefinitions.filter(_ref14 => {
|
148
|
+
let [attrDefNamespace, attrKey, definition] = _ref14;
|
149
|
+
const isClaimPresent = flatNamespaces.find(_ref15 => {
|
150
|
+
let [namespace, name] = _ref15;
|
147
151
|
return attrDefNamespace === namespace && name === attrKey;
|
148
152
|
});
|
149
153
|
return isClaimPresent === undefined && definition.mandatory;
|
@@ -159,36 +163,36 @@ export const parseCredentialMDoc = function (credentials_supported, credential_t
|
|
159
163
|
// Attributes defined in the issuer configuration and present in the disclosure set
|
160
164
|
const definedValues = Object.fromEntries(attrDefinitions
|
161
165
|
// Retrieve the value from the corresponding disclosure
|
162
|
-
.map(
|
166
|
+
.map(_ref16 => {
|
163
167
|
var _flatNamespaces$find;
|
164
|
-
let [attrDefNamespace, attrKey, definition] =
|
168
|
+
let [attrDefNamespace, attrKey, definition] = _ref16;
|
165
169
|
return [attrKey, {
|
166
170
|
...definition,
|
167
|
-
value: (_flatNamespaces$find = flatNamespaces.find(
|
168
|
-
let [namespace, name] =
|
171
|
+
value: (_flatNamespaces$find = flatNamespaces.find(_ref17 => {
|
172
|
+
let [namespace, name] = _ref17;
|
169
173
|
return attrDefNamespace === namespace && name === attrKey;
|
170
174
|
})) === null || _flatNamespaces$find === void 0 ? void 0 : _flatNamespaces$find[2]
|
171
175
|
}];
|
172
176
|
})
|
173
177
|
//filter the not found elements
|
174
|
-
.filter(
|
175
|
-
let [_, definition] =
|
178
|
+
.filter(_ref18 => {
|
179
|
+
let [_, definition] = _ref18;
|
176
180
|
return definition.value !== undefined;
|
177
181
|
})
|
178
182
|
// Add a human-readable attribute name, with i18n, in the form { locale: name }
|
179
183
|
// Example: { "it-IT": "Nome", "en-EN": "Name", "es-ES": "Nombre" }
|
180
|
-
.map(
|
184
|
+
.map(_ref19 => {
|
181
185
|
let [attrKey, {
|
182
186
|
display,
|
183
187
|
...definition
|
184
|
-
}] =
|
188
|
+
}] = _ref19;
|
185
189
|
return [attrKey, {
|
186
190
|
...definition,
|
187
|
-
name: display.reduce((names,
|
191
|
+
name: display.reduce((names, _ref20) => {
|
188
192
|
let {
|
189
193
|
locale,
|
190
194
|
name
|
191
|
-
} =
|
195
|
+
} = _ref20;
|
192
196
|
return {
|
193
197
|
...names,
|
194
198
|
[locale]: name
|
@@ -198,11 +202,11 @@ export const parseCredentialMDoc = function (credentials_supported, credential_t
|
|
198
202
|
}));
|
199
203
|
if (includeUndefinedAttributes) {
|
200
204
|
// Attributes that are present in the disclosure set but not defined in the issuer configuration
|
201
|
-
const undefinedValues = Object.fromEntries(flatNamespaces.filter(
|
202
|
-
let [, key] =
|
205
|
+
const undefinedValues = Object.fromEntries(flatNamespaces.filter(_ref21 => {
|
206
|
+
let [, key] = _ref21;
|
203
207
|
return !Object.keys(definedValues).includes(key);
|
204
|
-
}).map(
|
205
|
-
let [, key, value] =
|
208
|
+
}).map(_ref22 => {
|
209
|
+
let [, key, value] = _ref22;
|
206
210
|
return [key, {
|
207
211
|
value,
|
208
212
|
name: key
|
@@ -290,12 +294,12 @@ async function verifyCredentialMDoc(rawCredential, issuerKeys, holderBindingCont
|
|
290
294
|
|
291
295
|
// utility type that specialize VerifyAndParseCredential for given format
|
292
296
|
|
293
|
-
const verifyAndParseCredentialSdJwt = async (issuerConf, credential, _, __,
|
297
|
+
const verifyAndParseCredentialSdJwt = async (issuerConf, credential, _, __, _ref23) => {
|
294
298
|
let {
|
295
299
|
credentialCryptoContext,
|
296
300
|
ignoreMissingAttributes,
|
297
301
|
includeUndefinedAttributes
|
298
|
-
} =
|
302
|
+
} = _ref23;
|
299
303
|
const decoded = await verifyCredentialSdJwt(credential, issuerConf.keys, credentialCryptoContext);
|
300
304
|
const parsedCredential = parseCredentialSdJwt(issuerConf.credential_configurations_supported, decoded, ignoreMissingAttributes, includeUndefinedAttributes);
|
301
305
|
const maybeIssuedAt = getValueFromDisclosures(decoded.disclosures, "iat");
|
@@ -305,12 +309,12 @@ const verifyAndParseCredentialSdJwt = async (issuerConf, credential, _, __, _ref
|
|
305
309
|
issuedAt: typeof maybeIssuedAt === "number" ? new Date(maybeIssuedAt * 1000) : undefined
|
306
310
|
};
|
307
311
|
};
|
308
|
-
const verifyAndParseCredentialMDoc = async (issuerConf, credential, _, credentialType,
|
312
|
+
const verifyAndParseCredentialMDoc = async (issuerConf, credential, _, credentialType, _ref24) => {
|
309
313
|
var _parsedCredential$exp, _parsedCredential$iss;
|
310
314
|
let {
|
311
315
|
credentialCryptoContext,
|
312
316
|
ignoreMissingAttributes
|
313
|
-
} =
|
317
|
+
} = _ref24;
|
314
318
|
const decoded = await verifyCredentialMDoc(credential, issuerConf.keys, credentialCryptoContext);
|
315
319
|
const parsedCredential = parseCredentialMDoc(issuerConf.credential_configurations_supported, credentialType, decoded, undefined, ignoreMissingAttributes);
|
316
320
|
const expirationDate = extractElementValueAsDate(parsedCredential === null || parsedCredential === void 0 || (_parsedCredential$exp = parsedCredential.expiry_date) === null || _parsedCredential$exp === void 0 ? void 0 : _parsedCredential$exp.value);
|
@@ -341,7 +345,7 @@ const verifyAndParseCredentialMDoc = async (issuerConf, credential, _, credentia
|
|
341
345
|
* @throws {IoWalletError} If the credential data fail to parse
|
342
346
|
*/
|
343
347
|
export const verifyAndParseCredential = async (issuerConf, credential, format, credentialType, context) => {
|
344
|
-
if (format === "vc+sd-jwt") {
|
348
|
+
if (format === "vc+sd-jwt" || format === "dc+sd-jwt") {
|
345
349
|
return verifyAndParseCredentialSdJwt(issuerConf, credential, format, credentialType, context);
|
346
350
|
}
|
347
351
|
if (format === "mso_mdoc") {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["IoWalletError","SdJwt4VC","verify","verifySdJwt","verifyMdoc","getValueFromDisclosures","extractElementValueAsDate","parseCredentialSdJwt","credentials_supported","_ref","sdJwt","disclosures","ignoreMissingAttributes","arguments","length","undefined","includeUndefinedAttributes","credentialSubject","payload","vct","format","header","typ","claims","attrDefinitions","Object","entries","attrsNotInDisclosures","filter","_ref2","attrKey","definition","some","_ref3","name","mandatory","missing","map","_","join","received","definedValues","fromEntries","_ref4","_disclosures$find","value","find","_ref5","_ref6","display","reduce","names","_ref7","locale","undefinedValues","keys","includes","_ref8","key","parseCredentialMDoc","credential_type","_ref9","issuerSigned","flatMap","_ref10","namespace","claimName","_ref11","claimNameKey","nameSpaces","flatNamespaces","_ref12","values","v","elementIdentifier","elementValue","_ref13","attrDefNamespace","isClaimPresent","_ref14","_ref15","_flatNamespaces$find","_ref16","_ref17","_ref18","_ref19","_ref20","_ref21","verifyCredentialSdJwt","rawCredential","issuerKeys","holderBindingContext","decodedCredential","holderBindingKey","Promise","all","getPublicKey","cnf","jwk","kid","verifyCredentialMDoc","verifyAndParseCredentialSdJwt","issuerConf","credential","__","_ref22","credentialCryptoContext","decoded","parsedCredential","credential_configurations_supported","maybeIssuedAt","expiration","Date","exp","issuedAt","verifyAndParseCredentialMDoc","credentialType","_ref23","_parsedCredential$exp","_parsedCredential$iss","expirationDate","expiry_date","setDate","getDate","issue_date","verifyAndParseCredential","context"],"sourceRoot":"../../../../src","sources":["credential/issuance/07-verify-and-parse-credential.ts"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["IoWalletError","SdJwt4VC","verify","verifySdJwt","verifyMdoc","getValueFromDisclosures","extractElementValueAsDate","parseCredentialSdJwt","credentials_supported","_ref","_Object$entries$find","sdJwt","disclosures","ignoreMissingAttributes","arguments","length","undefined","includeUndefinedAttributes","credentialSubject","Object","entries","find","_ref2","vl","vct","payload","format","header","typ","claims","attrDefinitions","attrsNotInDisclosures","filter","_ref3","attrKey","definition","some","_ref4","name","mandatory","missing","map","_","join","received","definedValues","fromEntries","_ref5","_disclosures$find","value","_ref6","_ref7","display","reduce","names","_ref8","locale","undefinedValues","keys","includes","_ref9","key","parseCredentialMDoc","credential_type","_ref10","issuerSigned","flatMap","_ref11","namespace","claimName","_ref12","claimNameKey","nameSpaces","flatNamespaces","_ref13","values","v","elementIdentifier","elementValue","_ref14","attrDefNamespace","isClaimPresent","_ref15","_ref16","_flatNamespaces$find","_ref17","_ref18","_ref19","_ref20","_ref21","_ref22","verifyCredentialSdJwt","rawCredential","issuerKeys","holderBindingContext","decodedCredential","holderBindingKey","Promise","all","getPublicKey","cnf","jwk","kid","verifyCredentialMDoc","verifyAndParseCredentialSdJwt","issuerConf","credential","__","_ref23","credentialCryptoContext","decoded","parsedCredential","credential_configurations_supported","maybeIssuedAt","expiration","Date","exp","issuedAt","verifyAndParseCredentialMDoc","credentialType","_ref24","_parsedCredential$exp","_parsedCredential$iss","expirationDate","expiry_date","setDate","getDate","issue_date","verifyAndParseCredential","context"],"sourceRoot":"../../../../src","sources":["credential/issuance/07-verify-and-parse-credential.ts"],"mappings":"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"}
|
@@ -248,7 +248,7 @@ const credentialCryptoContext = createCryptoContextFor(credentialKeyTag);
|
|
248
248
|
// Start the issuance flow
|
249
249
|
const startFlow: Credential.Issuance.StartFlow = () => ({
|
250
250
|
issuerUrl: WALLET_EID_PROVIDER_BASE_URL,
|
251
|
-
credentialType: "
|
251
|
+
credentialType: "dc_sd_jwt_PersonIdentificationData",
|
252
252
|
appFetch,
|
253
253
|
});
|
254
254
|
|
@@ -1,4 +1,4 @@
|
|
1
1
|
import * as z from "zod";
|
2
2
|
export const ASSERTION_TYPE = "urn:ietf:params:oauth:client-assertion-type:jwt-client-attestation";
|
3
|
-
export const SupportedCredentialFormat = z.union([z.literal("vc+sd-jwt"), z.literal("mso_mdoc")]);
|
3
|
+
export const SupportedCredentialFormat = z.union([z.literal("vc+sd-jwt"), z.literal("dc+sd-jwt"), z.literal("mso_mdoc")]);
|
4
4
|
//# sourceMappingURL=const.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["z","ASSERTION_TYPE","SupportedCredentialFormat","union","literal"],"sourceRoot":"../../../../src","sources":["credential/issuance/const.ts"],"mappings":"AAAA,OAAO,KAAKA,CAAC,MAAM,KAAK;AACxB,OAAO,MAAMC,cAAc,GACzB,oEAAoE;AAKtE,OAAO,MAAMC,yBAAyB,GAAGF,CAAC,CAACG,KAAK,CAAC,CAC/CH,CAAC,CAACI,OAAO,CAAC,WAAW,CAAC,EACtBJ,CAAC,CAACI,OAAO,CAAC,UAAU,CAAC,CACtB,CAAC"}
|
1
|
+
{"version":3,"names":["z","ASSERTION_TYPE","SupportedCredentialFormat","union","literal"],"sourceRoot":"../../../../src","sources":["credential/issuance/const.ts"],"mappings":"AAAA,OAAO,KAAKA,CAAC,MAAM,KAAK;AACxB,OAAO,MAAMC,cAAc,GACzB,oEAAoE;AAKtE,OAAO,MAAMC,yBAAyB,GAAGF,CAAC,CAACG,KAAK,CAAC,CAC/CH,CAAC,CAACI,OAAO,CAAC,WAAW,CAAC,EACtBJ,CAAC,CAACI,OAAO,CAAC,WAAW,CAAC,EACtBJ,CAAC,CAACI,OAAO,CAAC,UAAU,CAAC,CACtB,CAAC"}
|
@@ -1,9 +1,9 @@
|
|
1
|
-
import { getIssuerConfig } from "./02-get-issuer-config";
|
1
|
+
import { getIssuerConfig, getIssuerConfigOIDFED } from "./02-get-issuer-config";
|
2
2
|
import { startUserAuthorization } from "./03-start-user-authorization";
|
3
3
|
import { completeUserAuthorizationWithQueryMode, completeUserAuthorizationWithFormPostJwtMode, parseAuthorizationResponse, buildAuthorizationUrl, getRequestedCredentialToBePresented } from "./04-complete-user-authorization";
|
4
4
|
import { authorizeAccess } from "./05-authorize-access";
|
5
5
|
import { obtainCredential } from "./06-obtain-credential";
|
6
6
|
import { verifyAndParseCredential } from "./07-verify-and-parse-credential";
|
7
7
|
import * as Errors from "./errors";
|
8
|
-
export { getIssuerConfig, startUserAuthorization, buildAuthorizationUrl, completeUserAuthorizationWithQueryMode, getRequestedCredentialToBePresented, completeUserAuthorizationWithFormPostJwtMode, authorizeAccess, obtainCredential, verifyAndParseCredential, parseAuthorizationResponse, Errors };
|
8
|
+
export { getIssuerConfig, getIssuerConfigOIDFED, startUserAuthorization, buildAuthorizationUrl, completeUserAuthorizationWithQueryMode, getRequestedCredentialToBePresented, completeUserAuthorizationWithFormPostJwtMode, authorizeAccess, obtainCredential, verifyAndParseCredential, parseAuthorizationResponse, Errors };
|
9
9
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["getIssuerConfig","startUserAuthorization","completeUserAuthorizationWithQueryMode","completeUserAuthorizationWithFormPostJwtMode","parseAuthorizationResponse","buildAuthorizationUrl","getRequestedCredentialToBePresented","authorizeAccess","obtainCredential","verifyAndParseCredential","Errors"],"sourceRoot":"../../../../src","sources":["credential/issuance/index.ts"],"mappings":"AACA,
|
1
|
+
{"version":3,"names":["getIssuerConfig","getIssuerConfigOIDFED","startUserAuthorization","completeUserAuthorizationWithQueryMode","completeUserAuthorizationWithFormPostJwtMode","parseAuthorizationResponse","buildAuthorizationUrl","getRequestedCredentialToBePresented","authorizeAccess","obtainCredential","verifyAndParseCredential","Errors"],"sourceRoot":"../../../../src","sources":["credential/issuance/index.ts"],"mappings":"AACA,SACEA,eAAe,EACfC,qBAAqB,QAEhB,wBAAwB;AAC/B,SACEC,sBAAsB,QAEjB,+BAA+B;AACtC,SACEC,sCAAsC,EACtCC,4CAA4C,EAC5CC,0BAA0B,EAC1BC,qBAAqB,EAKrBC,mCAAmC,QAC9B,kCAAkC;AACzC,SAASC,eAAe,QAA8B,uBAAuB;AAC7E,SACEC,gBAAgB,QAEX,wBAAwB;AAC/B,SACEC,wBAAwB,QAEnB,kCAAkC;AACzC,OAAO,KAAKC,MAAM,MAAM,UAAU;AAElC,SACEX,eAAe,EACfC,qBAAqB,EACrBC,sBAAsB,EACtBI,qBAAqB,EACrBH,sCAAsC,EACtCI,mCAAmC,EACnCH,4CAA4C,EAC5CI,eAAe,EACfC,gBAAgB,EAChBC,wBAAwB,EACxBL,0BAA0B,EAC1BM,MAAM"}
|
@@ -1,19 +1,23 @@
|
|
1
|
-
import { AuthorizationDetail } from "../../utils/par";
|
2
1
|
import * as z from "zod";
|
3
|
-
|
2
|
+
export const AuthorizationDetail = z.object({
|
3
|
+
type: z.literal("openid_credential"),
|
4
|
+
credential_configuration_id: z.string(),
|
5
|
+
credential_identifiers: z.array(z.string())
|
6
|
+
});
|
4
7
|
export const TokenResponse = z.object({
|
5
8
|
access_token: z.string(),
|
6
9
|
authorization_details: z.array(AuthorizationDetail),
|
7
|
-
c_nonce
|
8
|
-
|
10
|
+
// IT Wallet 1.0 remove c_nonce from token, mantain optional for compatibility with Potential
|
11
|
+
c_nonce: z.string().optional(),
|
12
|
+
c_nonce_expires_in: z.number().optional(),
|
9
13
|
expires_in: z.number(),
|
10
14
|
token_type: z.string()
|
11
15
|
});
|
12
16
|
export const CredentialResponse = z.object({
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
+
credentials: z.array(z.object({
|
18
|
+
credential: z.string()
|
19
|
+
})),
|
20
|
+
notification_id: z.string().optional()
|
17
21
|
});
|
18
22
|
|
19
23
|
/**
|
@@ -22,4 +26,7 @@ export const CredentialResponse = z.object({
|
|
22
26
|
export const ResponseUriResultShape = z.object({
|
23
27
|
redirect_uri: z.string()
|
24
28
|
});
|
29
|
+
export const NonceResponse = z.object({
|
30
|
+
c_nonce: z.string()
|
31
|
+
});
|
25
32
|
//# sourceMappingURL=types.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["
|
1
|
+
{"version":3,"names":["z","AuthorizationDetail","object","type","literal","credential_configuration_id","string","credential_identifiers","array","TokenResponse","access_token","authorization_details","c_nonce","optional","c_nonce_expires_in","number","expires_in","token_type","CredentialResponse","credentials","credential","notification_id","ResponseUriResultShape","redirect_uri","NonceResponse"],"sourceRoot":"../../../../src","sources":["credential/issuance/types.ts"],"mappings":"AAAA,OAAO,KAAKA,CAAC,MAAM,KAAK;AAGxB,OAAO,MAAMC,mBAAmB,GAAGD,CAAC,CAACE,MAAM,CAAC;EAC1CC,IAAI,EAAEH,CAAC,CAACI,OAAO,CAAC,mBAAmB,CAAC;EACpCC,2BAA2B,EAAEL,CAAC,CAACM,MAAM,CAAC,CAAC;EACvCC,sBAAsB,EAAEP,CAAC,CAACQ,KAAK,CAACR,CAAC,CAACM,MAAM,CAAC,CAAC;AAC5C,CAAC,CAAC;AAIF,OAAO,MAAMG,aAAa,GAAGT,CAAC,CAACE,MAAM,CAAC;EACpCQ,YAAY,EAAEV,CAAC,CAACM,MAAM,CAAC,CAAC;EACxBK,qBAAqB,EAAEX,CAAC,CAACQ,KAAK,CAACP,mBAAmB,CAAC;EACnD;EACAW,OAAO,EAAEZ,CAAC,CAACM,MAAM,CAAC,CAAC,CAACO,QAAQ,CAAC,CAAC;EAC9BC,kBAAkB,EAAEd,CAAC,CAACe,MAAM,CAAC,CAAC,CAACF,QAAQ,CAAC,CAAC;EACzCG,UAAU,EAAEhB,CAAC,CAACe,MAAM,CAAC,CAAC;EACtBE,UAAU,EAAEjB,CAAC,CAACM,MAAM,CAAC;AACvB,CAAC,CAAC;AAIF,OAAO,MAAMY,kBAAkB,GAAGlB,CAAC,CAACE,MAAM,CAAC;EACzCiB,WAAW,EAAEnB,CAAC,CAACQ,KAAK,CAClBR,CAAC,CAACE,MAAM,CAAC;IACPkB,UAAU,EAAEpB,CAAC,CAACM,MAAM,CAAC;EACvB,CAAC,CACH,CAAC;EACDe,eAAe,EAAErB,CAAC,CAACM,MAAM,CAAC,CAAC,CAACO,QAAQ,CAAC;AACvC,CAAC,CAAC;;AAEF;AACA;AACA;AACA,OAAO,MAAMS,sBAAsB,GAAGtB,CAAC,CAACE,MAAM,CAAC;EAC7CqB,YAAY,EAAEvB,CAAC,CAACM,MAAM,CAAC;AACzB,CAAC,CAAC;AAKF,OAAO,MAAMkB,aAAa,GAAGxB,CAAC,CAACE,MAAM,CAAC;EACpCU,OAAO,EAAEZ,CAAC,CAACM,MAAM,CAAC;AACpB,CAAC,CAAC"}
|
@@ -4,6 +4,7 @@ import { decode } from "../../sd-jwt";
|
|
4
4
|
import { ValidationFailed } from "../../utils/errors";
|
5
5
|
import { CredentialNotFoundError } from "./errors";
|
6
6
|
import { CBOR } from "@pagopa/io-react-native-cbor";
|
7
|
+
import { b64utob64 } from "jsrsasign";
|
7
8
|
|
8
9
|
/**
|
9
10
|
* The purpose for the credential request by the RP.
|
@@ -37,7 +38,7 @@ const mapCredentialSdJwtToObj = credentials => credentials.map(_ref => {
|
|
37
38
|
const mapCredentialsMdocToObj = async credentialsMdoc => {
|
38
39
|
return await Promise.all(credentialsMdoc === null || credentialsMdoc === void 0 ? void 0 : credentialsMdoc.map(async _ref2 => {
|
39
40
|
let [type, _, credential] = _ref2;
|
40
|
-
const issuerSigned = credential ? await CBOR.decodeIssuerSigned(credential) : undefined;
|
41
|
+
const issuerSigned = credential ? await CBOR.decodeIssuerSigned(b64utob64(credential)) : undefined;
|
41
42
|
if (!issuerSigned) {
|
42
43
|
throw new CredentialNotFoundError("mso_mdoc credential is not present.");
|
43
44
|
}
|
@@ -95,7 +96,7 @@ export const evaluateDcqlQuery = async (query, credentialsSdJwt, credentialsMdoc
|
|
95
96
|
required: Boolean(credentialSet.required)
|
96
97
|
};
|
97
98
|
});
|
98
|
-
if (match.output.credential_format === "vc+sd-jwt") {
|
99
|
+
if (match.output.credential_format === "vc+sd-jwt" || match.output.credential_format === "dc+sd-jwt") {
|
99
100
|
const {
|
100
101
|
vct,
|
101
102
|
claims
|
@@ -104,7 +105,13 @@ export const evaluateDcqlQuery = async (query, credentialsSdJwt, credentialsMdoc
|
|
104
105
|
let [type] = _ref7;
|
105
106
|
return type === vct;
|
106
107
|
});
|
107
|
-
const requiredDisclosures = Object.values(claims)
|
108
|
+
const requiredDisclosures = Object.values(claims).map(item => {
|
109
|
+
const [_, name, value] = item;
|
110
|
+
return {
|
111
|
+
name,
|
112
|
+
value
|
113
|
+
};
|
114
|
+
});
|
108
115
|
return {
|
109
116
|
id,
|
110
117
|
vct,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["DcqlQuery","DcqlError","DcqlCredentialSetError","isValiError","decode","ValidationFailed","CredentialNotFoundError","CBOR","mapCredentialSdJwtToObj","credentials","map","_ref","jwt","sdJwt","disclosures","credentialFormat","header","typ","vct","payload","credential_format","claims","reduce","acc","disclosure","decoded","mapCredentialsMdocToObj","credentialsMdoc","Promise","all","_ref2","type","_","credential","issuerSigned","decodeIssuerSigned","undefined","namespaces","Object","entries","nameSpaces","_ref3","ns","nsClaims","flattenNsClaims","ac","_ref4","el","elementIdentifier","elementValue","doctype","getDcqlQueryMatches","result","credential_matches","filter","_ref5","match","success","evaluateDcqlQuery","query","credentialsSdJwt","push","parsedQuery","parse","validate","queryResult","canBeSatisfied","Error","_ref6","_queryResult$credenti","id","purposes","credential_sets","set","_set$matching_options","matching_options","flat","includes","credentialSet","_credentialSet$purpos","description","purpose","toString","required","Boolean","output","keyTag","find","_ref7","requiredDisclosures","values","format","_ref8","_ref9","_ref10","claimName","namespace","
|
1
|
+
{"version":3,"names":["DcqlQuery","DcqlError","DcqlCredentialSetError","isValiError","decode","ValidationFailed","CredentialNotFoundError","CBOR","b64utob64","mapCredentialSdJwtToObj","credentials","map","_ref","jwt","sdJwt","disclosures","credentialFormat","header","typ","vct","payload","credential_format","claims","reduce","acc","disclosure","decoded","mapCredentialsMdocToObj","credentialsMdoc","Promise","all","_ref2","type","_","credential","issuerSigned","decodeIssuerSigned","undefined","namespaces","Object","entries","nameSpaces","_ref3","ns","nsClaims","flattenNsClaims","ac","_ref4","el","elementIdentifier","elementValue","doctype","getDcqlQueryMatches","result","credential_matches","filter","_ref5","match","success","evaluateDcqlQuery","query","credentialsSdJwt","push","parsedQuery","parse","validate","queryResult","canBeSatisfied","Error","_ref6","_queryResult$credenti","id","purposes","credential_sets","set","_set$matching_options","matching_options","flat","includes","credentialSet","_credentialSet$purpos","description","purpose","toString","required","Boolean","output","keyTag","find","_ref7","requiredDisclosures","values","item","name","value","format","_ref8","_ref9","_ref10","claimName","namespace","error","message","reason","issues","issue","join"],"sourceRoot":"../../../../src","sources":["credential/presentation/07-evaluate-dcql-query.ts"],"mappings":"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"}
|
@@ -3,6 +3,7 @@ import { JSONPath } from "jsonpath-plus";
|
|
3
3
|
import { MissingDataError, CredentialNotFoundError } from "./errors";
|
4
4
|
import Ajv from "ajv";
|
5
5
|
import { CBOR } from "@pagopa/io-react-native-cbor";
|
6
|
+
import { b64utob64 } from "jsrsasign";
|
6
7
|
const ajv = new Ajv({
|
7
8
|
allErrors: true
|
8
9
|
});
|
@@ -173,6 +174,9 @@ export const evaluateInputDescriptorForMdoc = (inputDescriptor, issuerSigned) =>
|
|
173
174
|
if (!allFieldsValid) {
|
174
175
|
throw new MissingDataError("Credential validation failed: Required fields are missing or do not match the input descriptor.");
|
175
176
|
}
|
177
|
+
if (requiredDisclosures.length === 0 && optionalDisclosures.length === 0) {
|
178
|
+
throw new MissingDataError("Credential validation failed: No required fields were requested and no optional field has been requested or found.");
|
179
|
+
}
|
176
180
|
return {
|
177
181
|
requiredDisclosures,
|
178
182
|
optionalDisclosures
|
@@ -254,6 +258,9 @@ export const evaluateInputDescriptorForSdJwt4VC = (inputDescriptor, payloadCrede
|
|
254
258
|
if (!allFieldsValid) {
|
255
259
|
throw new MissingDataError("Credential validation failed: Required fields are missing or do not match the input descriptor.");
|
256
260
|
}
|
261
|
+
if (requiredDisclosures.length === 0 && optionalDisclosures.length === 0) {
|
262
|
+
throw new MissingDataError("Credential validation failed: No required fields were requested and no optional field has been requested or found.");
|
263
|
+
}
|
257
264
|
return {
|
258
265
|
requiredDisclosures,
|
259
266
|
optionalDisclosures
|
@@ -349,7 +356,7 @@ export const evaluateInputDescriptors = async (inputDescriptors, credentialsSdJw
|
|
349
356
|
// We need decode Mdoc credentials for evaluation
|
350
357
|
const decodedMdocCredentials = (await Promise.all(credentialsMdoc === null || credentialsMdoc === void 0 ? void 0 : credentialsMdoc.map(async _ref4 => {
|
351
358
|
let [, keyTag, credential] = _ref4;
|
352
|
-
const issuerSigned = await CBOR.decodeIssuerSigned(credential);
|
359
|
+
const issuerSigned = await CBOR.decodeIssuerSigned(b64utob64(credential));
|
353
360
|
if (!issuerSigned) {
|
354
361
|
throw new CredentialNotFoundError("mso_mdoc credential is not present.");
|
355
362
|
}
|
@@ -360,7 +367,7 @@ export const evaluateInputDescriptors = async (inputDescriptors, credentialsSdJw
|
|
360
367
|
};
|
361
368
|
}))) || [];
|
362
369
|
const results = Promise.all(inputDescriptors.map(async descriptor => {
|
363
|
-
var _descriptor$format, _descriptor$format2;
|
370
|
+
var _descriptor$format, _descriptor$format2, _descriptor$format3;
|
364
371
|
if ((_descriptor$format = descriptor.format) !== null && _descriptor$format !== void 0 && _descriptor$format.mso_mdoc) {
|
365
372
|
if (!credentialsMdoc.length) {
|
366
373
|
throw new CredentialNotFoundError("mso_mdoc credential is not supported.");
|
@@ -377,9 +384,9 @@ export const evaluateInputDescriptors = async (inputDescriptors, credentialsSdJw
|
|
377
384
|
keyTag: matchedKeyTag
|
378
385
|
};
|
379
386
|
}
|
380
|
-
if ((_descriptor$format2 = descriptor.format) !== null && _descriptor$format2 !== void 0 && _descriptor$format2["vc+sd-jwt"]) {
|
387
|
+
if ((_descriptor$format2 = descriptor.format) !== null && _descriptor$format2 !== void 0 && _descriptor$format2["vc+sd-jwt"] || (_descriptor$format3 = descriptor.format) !== null && _descriptor$format3 !== void 0 && _descriptor$format3["dc+sd-jwt"]) {
|
381
388
|
if (!decodedSdJwtCredentials.length) {
|
382
|
-
throw new CredentialNotFoundError("vc+sd-jwt credential is not supported.");
|
389
|
+
throw new CredentialNotFoundError("vc+sd-jwt or dc+sd-jwt credential is not supported.");
|
383
390
|
}
|
384
391
|
const {
|
385
392
|
matchedEvaluation,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["decode","JSONPath","MissingDataError","CredentialNotFoundError","Ajv","CBOR","ajv","allErrors","disclosureWithEncodedToEvaluatedDisclosure","disclosure","claimName","claimValue","decoded","name","value","mapDisclosuresToObject","disclosures","reduce","obj","_ref","mapNamespacesToObject","namespaces","Object","entries","_ref2","namespace","elements","fromEntries","map","element","elementIdentifier","elementValue","findMatchedClaim","paths","payload","matchedPath","matchedValue","some","singlePath","result","path","json","length","error","extractClaimName","regex","match","Error","extractNamespaceAndClaimName","nameSpace","propertyName","evaluateInputDescriptorForMdoc","inputDescriptor","issuerSigned","_inputDescriptor$cons","constraints","fields","requiredDisclosures","optionalDisclosures","namespacesAsPayload","nameSpaces","allFieldsValid","every","field","undefined","optional","push","filter","validateSchema","compile","evaluateInputDescriptorForSdJwt4VC","payloadCredential","_inputDescriptor$cons2","disclosuresAsPayload","findCredentialSdJwt","decodedSdJwtCredentials","keyTag","credential","sdJwt","evaluatedDisclosure","matchedEvaluation","matchedKeyTag","matchedCredential","findCredentialMDoc","decodedMDocCredentials","evaluateInputDescriptors","inputDescriptors","credentialsSdJwt","credentialsMdoc","_ref3","decodedMdocCredentials","Promise","all","_ref4","decodeIssuerSigned","results","descriptor","_descriptor$format","_descriptor$format2","format","mso_mdoc"],"sourceRoot":"../../../../src","sources":["credential/presentation/07-evaluate-input-descriptor.ts"],"mappings":"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"}
|
1
|
+
{"version":3,"names":["decode","JSONPath","MissingDataError","CredentialNotFoundError","Ajv","CBOR","b64utob64","ajv","allErrors","disclosureWithEncodedToEvaluatedDisclosure","disclosure","claimName","claimValue","decoded","name","value","mapDisclosuresToObject","disclosures","reduce","obj","_ref","mapNamespacesToObject","namespaces","Object","entries","_ref2","namespace","elements","fromEntries","map","element","elementIdentifier","elementValue","findMatchedClaim","paths","payload","matchedPath","matchedValue","some","singlePath","result","path","json","length","error","extractClaimName","regex","match","Error","extractNamespaceAndClaimName","nameSpace","propertyName","evaluateInputDescriptorForMdoc","inputDescriptor","issuerSigned","_inputDescriptor$cons","constraints","fields","requiredDisclosures","optionalDisclosures","namespacesAsPayload","nameSpaces","allFieldsValid","every","field","undefined","optional","push","filter","validateSchema","compile","evaluateInputDescriptorForSdJwt4VC","payloadCredential","_inputDescriptor$cons2","disclosuresAsPayload","findCredentialSdJwt","decodedSdJwtCredentials","keyTag","credential","sdJwt","evaluatedDisclosure","matchedEvaluation","matchedKeyTag","matchedCredential","findCredentialMDoc","decodedMDocCredentials","evaluateInputDescriptors","inputDescriptors","credentialsSdJwt","credentialsMdoc","_ref3","decodedMdocCredentials","Promise","all","_ref4","decodeIssuerSigned","results","descriptor","_descriptor$format","_descriptor$format2","_descriptor$format3","format","mso_mdoc"],"sourceRoot":"../../../../src","sources":["credential/presentation/07-evaluate-input-descriptor.ts"],"mappings":"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"}
|
@@ -243,7 +243,7 @@ export const sendAuthorizationResponseDcql = async function (requestObject, jwkK
|
|
243
243
|
* Prepares remote presentations for a set of credentials.
|
244
244
|
*
|
245
245
|
* For each credential, this function:
|
246
|
-
* - Validates the credential format (currently supports 'mso_mdoc'
|
246
|
+
* - Validates the credential format (currently supports 'mso_mdoc', 'vc+sd-jwt' or 'dc+sd-jwt').
|
247
247
|
* - Generates a verifiable presentation token (vpToken) using the appropriate method.
|
248
248
|
* - For ISO 18013-7, generates a special nonce with minimum entropy of 16.
|
249
249
|
*
|
@@ -276,7 +276,7 @@ export const prepareRemotePresentations = async (credentials, authRequestObject)
|
|
276
276
|
format: "mso_mdoc"
|
277
277
|
};
|
278
278
|
}
|
279
|
-
if (format === "vc+sd-jwt") {
|
279
|
+
if (format === "vc+sd-jwt" || format === "dc+sd-jwt") {
|
280
280
|
const {
|
281
281
|
vp_token
|
282
282
|
} = await prepareVpToken(authRequestObject.nonce, authRequestObject.clientId, [item.credential, item.requestedClaims, createCryptoContextFor(item.keyTag)]);
|
@@ -289,7 +289,7 @@ export const prepareRemotePresentations = async (credentials, authRequestObject)
|
|
289
289
|
})],
|
290
290
|
credentialId: credentialInputId,
|
291
291
|
vpToken: vp_token,
|
292
|
-
format
|
292
|
+
format
|
293
293
|
};
|
294
294
|
}
|
295
295
|
throw new CredentialNotFoundError(`${format} format is not supported.`);
|