@pagopa/io-react-native-wallet 1.6.2 → 1.7.1
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/credential/issuance/07-verify-and-parse-credential.js +69 -35
- package/lib/commonjs/credential/issuance/07-verify-and-parse-credential.js.map +1 -1
- package/lib/commonjs/credential/presentation/07-evaluate-dcql-query.js +181 -0
- package/lib/commonjs/credential/presentation/07-evaluate-dcql-query.js.map +1 -0
- package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js +3 -67
- package/lib/commonjs/credential/presentation/07-evaluate-input-descriptor.js.map +1 -1
- package/lib/commonjs/credential/presentation/08-send-authorization-response.js +98 -2
- package/lib/commonjs/credential/presentation/08-send-authorization-response.js.map +1 -1
- package/lib/commonjs/credential/presentation/index.js +14 -1
- package/lib/commonjs/credential/presentation/index.js.map +1 -1
- package/lib/commonjs/credential/presentation/types.js +9 -2
- package/lib/commonjs/credential/presentation/types.js.map +1 -1
- package/lib/commonjs/mdoc/index.js +1 -1
- package/lib/commonjs/mdoc/index.js.map +1 -1
- package/lib/commonjs/sd-jwt/__test__/index.test.js +24 -21
- package/lib/commonjs/sd-jwt/__test__/index.test.js.map +1 -1
- package/lib/commonjs/sd-jwt/__test__/types.test.js +3 -0
- package/lib/commonjs/sd-jwt/__test__/types.test.js.map +1 -1
- package/lib/commonjs/sd-jwt/types.js +4 -1
- package/lib/commonjs/sd-jwt/types.js.map +1 -1
- package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-inputs.js +469 -0
- package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-inputs.js.map +1 -0
- package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-utils.js +90 -0
- package/lib/commonjs/utils/credential/issuance/07-verify-and-parse-credentials-utils.js.map +1 -0
- package/lib/module/credential/issuance/07-verify-and-parse-credential.js +67 -35
- package/lib/module/credential/issuance/07-verify-and-parse-credential.js.map +1 -1
- package/lib/module/credential/presentation/07-evaluate-dcql-query.js +175 -0
- package/lib/module/credential/presentation/07-evaluate-dcql-query.js.map +1 -0
- package/lib/module/credential/presentation/07-evaluate-input-descriptor.js +3 -66
- package/lib/module/credential/presentation/07-evaluate-input-descriptor.js.map +1 -1
- package/lib/module/credential/presentation/08-send-authorization-response.js +97 -2
- package/lib/module/credential/presentation/08-send-authorization-response.js.map +1 -1
- package/lib/module/credential/presentation/index.js +4 -3
- package/lib/module/credential/presentation/index.js.map +1 -1
- package/lib/module/credential/presentation/types.js +9 -2
- package/lib/module/credential/presentation/types.js.map +1 -1
- package/lib/module/mdoc/index.js +1 -1
- package/lib/module/mdoc/index.js.map +1 -1
- package/lib/module/sd-jwt/__test__/index.test.js +24 -21
- package/lib/module/sd-jwt/__test__/index.test.js.map +1 -1
- package/lib/module/sd-jwt/__test__/types.test.js +3 -0
- package/lib/module/sd-jwt/__test__/types.test.js.map +1 -1
- package/lib/module/sd-jwt/types.js +4 -1
- package/lib/module/sd-jwt/types.js.map +1 -1
- package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-inputs.js +462 -0
- package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-inputs.js.map +1 -0
- package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-utils.js +83 -0
- package/lib/module/utils/credential/issuance/07-verify-and-parse-credentials-utils.js.map +1 -0
- package/lib/typescript/credential/issuance/07-verify-and-parse-credential.d.ts +12 -0
- package/lib/typescript/credential/issuance/07-verify-and-parse-credential.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/07-evaluate-dcql-query.d.ts +27 -0
- package/lib/typescript/credential/presentation/07-evaluate-dcql-query.d.ts.map +1 -0
- package/lib/typescript/credential/presentation/07-evaluate-input-descriptor.d.ts +2 -28
- 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 +23 -1
- package/lib/typescript/credential/presentation/08-send-authorization-response.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/index.d.ts +6 -4
- package/lib/typescript/credential/presentation/index.d.ts.map +1 -1
- package/lib/typescript/credential/presentation/types.d.ts +26 -7
- package/lib/typescript/credential/presentation/types.d.ts.map +1 -1
- package/lib/typescript/sd-jwt/index.d.ts +12 -0
- package/lib/typescript/sd-jwt/index.d.ts.map +1 -1
- package/lib/typescript/sd-jwt/types.d.ts +15 -0
- package/lib/typescript/sd-jwt/types.d.ts.map +1 -1
- package/lib/typescript/utils/credential/issuance/07-verify-and-parse-credentials-inputs.d.ts +3 -0
- package/lib/typescript/utils/credential/issuance/07-verify-and-parse-credentials-inputs.d.ts.map +1 -0
- package/lib/typescript/utils/credential/issuance/07-verify-and-parse-credentials-utils.d.ts +42 -0
- package/lib/typescript/utils/credential/issuance/07-verify-and-parse-credentials-utils.d.ts.map +1 -0
- package/package.json +3 -2
- package/src/credential/issuance/07-verify-and-parse-credential.ts +35 -3
- package/src/credential/presentation/07-evaluate-dcql-query.ts +228 -0
- package/src/credential/presentation/07-evaluate-input-descriptor.ts +6 -103
- package/src/credential/presentation/08-send-authorization-response.ts +137 -2
- package/src/credential/presentation/index.ts +12 -2
- package/src/credential/presentation/types.ts +33 -3
- package/src/mdoc/index.ts +1 -1
- package/src/sd-jwt/__test__/index.test.ts +45 -36
- package/src/sd-jwt/__test__/types.test.ts +3 -0
- package/src/sd-jwt/types.ts +3 -0
- package/src/utils/credential/issuance/07-verify-and-parse-credentials-inputs.ts +615 -0
- package/src/utils/credential/issuance/07-verify-and-parse-credentials-utils.ts +171 -0
@@ -1,9 +1,13 @@
|
|
1
1
|
import { EncryptJwe } from "@pagopa/io-react-native-jwt";
|
2
2
|
import uuid from "react-native-uuid";
|
3
|
-
import { NoSuitableKeysFoundInEntityConfiguration } from "./errors";
|
3
|
+
import { NoSuitableKeysFoundInEntityConfiguration, CredentialNotFoundError } from "./errors";
|
4
4
|
import { hasStatusOrThrow } from "../../utils/misc";
|
5
5
|
import * as z from "zod";
|
6
6
|
import { Base64 } from "js-base64";
|
7
|
+
import { prepareVpTokenMdoc } from "../../mdoc";
|
8
|
+
import { generateRandomAlphaNumericString } from "../../utils/misc";
|
9
|
+
import { createCryptoContextFor } from "../../utils/crypto";
|
10
|
+
import { prepareVpToken } from "../../sd-jwt";
|
7
11
|
export const AuthorizationResponse = z.object({
|
8
12
|
status: z.string().optional(),
|
9
13
|
response_code: z.string() /**
|
@@ -106,6 +110,11 @@ export const buildDirectPostJwtBody = async (jwkKeys, requestObject, payload, ge
|
|
106
110
|
return formBody.toString();
|
107
111
|
};
|
108
112
|
|
113
|
+
/**
|
114
|
+
* Type definition for the function that sends the authorization response
|
115
|
+
* to the Relying Party, completing the presentation flow.
|
116
|
+
*/
|
117
|
+
|
109
118
|
/**
|
110
119
|
* Type definition for the function that sends the authorization response
|
111
120
|
* to the Relying Party, completing the presentation flow.
|
@@ -138,7 +147,7 @@ export const sendAuthorizationResponse = async function (requestObject, presenta
|
|
138
147
|
**/
|
139
148
|
const vp_token = (presentations === null || presentations === void 0 ? void 0 : presentations.length) === 1 ? (_presentations$ = presentations[0]) === null || _presentations$ === void 0 ? void 0 : _presentations$.vpToken : presentations.map(presentation => presentation.vpToken);
|
140
149
|
const descriptor_map = presentations.map((presentation, index) => ({
|
141
|
-
id: presentation.
|
150
|
+
id: presentation.credentialId,
|
142
151
|
path: (presentations === null || presentations === void 0 ? void 0 : presentations.length) === 1 ? `$` : `$[${index}]`,
|
143
152
|
format: presentation.format
|
144
153
|
}));
|
@@ -204,4 +213,90 @@ export const sendAuthorizationErrorResponse = async function (requestObject, err
|
|
204
213
|
body: requestBody
|
205
214
|
}).then(hasStatusOrThrow(200)).then(res => res.json()).then(AuthorizationResponse.parse);
|
206
215
|
};
|
216
|
+
export const sendAuthorizationResponseDcql = async function (requestObject, jwkKeys, remotePresentation) {
|
217
|
+
let {
|
218
|
+
appFetch = fetch
|
219
|
+
} = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};
|
220
|
+
const {
|
221
|
+
generatedNonce,
|
222
|
+
presentations
|
223
|
+
} = remotePresentation;
|
224
|
+
// 1. Prepare the VP token as a JSON object with keys corresponding to the DCQL query credential IDs
|
225
|
+
const requestBody = await buildDirectPostJwtBody(jwkKeys, requestObject, {
|
226
|
+
vp_token: presentations.reduce((acc, presentation) => ({
|
227
|
+
...acc,
|
228
|
+
[presentation.credentialId]: presentation.vpToken
|
229
|
+
}), {})
|
230
|
+
}, generatedNonce);
|
231
|
+
|
232
|
+
// 2. Send the authorization response via HTTP POST and validate the response
|
233
|
+
return await appFetch(requestObject.response_uri, {
|
234
|
+
method: "POST",
|
235
|
+
headers: {
|
236
|
+
"Content-Type": "application/x-www-form-urlencoded"
|
237
|
+
},
|
238
|
+
body: requestBody
|
239
|
+
}).then(hasStatusOrThrow(200)).then(res => res.json()).then(AuthorizationResponse.parse);
|
240
|
+
};
|
241
|
+
|
242
|
+
/**
|
243
|
+
* Prepares remote presentations for a set of credentials.
|
244
|
+
*
|
245
|
+
* For each credential, this function:
|
246
|
+
* - Validates the credential format (currently supports 'mso_mdoc' and 'vc+sd-jwt').
|
247
|
+
* - Generates a verifiable presentation token (vpToken) using the appropriate method.
|
248
|
+
* - For ISO 18013-7, generates a special nonce with minimum entropy of 16.
|
249
|
+
*
|
250
|
+
* @param credentials - An array of credential items containing format, credential data, requested claims, and key information.
|
251
|
+
* @param authRequestObject - The authentication request object containing nonce, clientId, and responseUri.
|
252
|
+
* @returns A promise that resolves to an object containing an array of presentations and the generated nonce.
|
253
|
+
* @throws {CredentialNotFoundError} When the credential format is unsupported.
|
254
|
+
*/
|
255
|
+
export const prepareRemotePresentations = async (credentials, authRequestObject) => {
|
256
|
+
/* In case of ISO 18013-7 we need a nonce, it shall have a minimum entropy of 16 */
|
257
|
+
const generatedNonce = generateRandomAlphaNumericString(16);
|
258
|
+
const presentations = await Promise.all(credentials.map(async item => {
|
259
|
+
const {
|
260
|
+
credentialInputId,
|
261
|
+
format
|
262
|
+
} = item;
|
263
|
+
if (format === "mso_mdoc") {
|
264
|
+
const {
|
265
|
+
vp_token
|
266
|
+
} = await prepareVpTokenMdoc(authRequestObject.nonce, generatedNonce, authRequestObject.clientId, authRequestObject.responseUri, item.doctype, item.keyTag, [item.credential, item.requestedClaims, createCryptoContextFor(item.keyTag)]);
|
267
|
+
return {
|
268
|
+
requestedClaims: [...item.requestedClaims.map(_ref2 => {
|
269
|
+
let {
|
270
|
+
name
|
271
|
+
} = _ref2;
|
272
|
+
return name;
|
273
|
+
})],
|
274
|
+
credentialId: credentialInputId,
|
275
|
+
vpToken: vp_token,
|
276
|
+
format: "mso_mdoc"
|
277
|
+
};
|
278
|
+
}
|
279
|
+
if (format === "vc+sd-jwt") {
|
280
|
+
const {
|
281
|
+
vp_token
|
282
|
+
} = await prepareVpToken(authRequestObject.nonce, authRequestObject.clientId, [item.credential, item.requestedClaims, createCryptoContextFor(item.keyTag)]);
|
283
|
+
return {
|
284
|
+
requestedClaims: [...item.requestedClaims.map(_ref3 => {
|
285
|
+
let {
|
286
|
+
name
|
287
|
+
} = _ref3;
|
288
|
+
return name;
|
289
|
+
})],
|
290
|
+
credentialId: credentialInputId,
|
291
|
+
vpToken: vp_token,
|
292
|
+
format: "vc+sd-jwt"
|
293
|
+
};
|
294
|
+
}
|
295
|
+
throw new CredentialNotFoundError(`${format} format is not supported.`);
|
296
|
+
}));
|
297
|
+
return {
|
298
|
+
presentations,
|
299
|
+
generatedNonce
|
300
|
+
};
|
301
|
+
};
|
207
302
|
//# sourceMappingURL=08-send-authorization-response.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["EncryptJwe","uuid","NoSuitableKeysFoundInEntityConfiguration","hasStatusOrThrow","z","Base64","AuthorizationResponse","object","status","string","optional","response_code","redirect_uri","choosePublicKeyToEncrypt","rpJwkKeys","encKeys","filter","jwk","use","ecEncKeys","kty","crv","rsaEncKeys","encKey","buildDirectPostBody","requestObject","payload","formUrlEncodedBody","URLSearchParams","state","Object","fromEntries","entries","map","_ref","key","value","Array","isArray","JSON","stringify","toString","buildDirectPostJwtBody","jwkKeys","generatedNonce","authzResponsePayload","encPublicJwk","client_metadata","encryptedResponse","alg","authorization_encrypted_response_alg","enc","authorization_encrypted_response_enc","kid","apv","encodeURI","nonce","apu","encrypt","formBody","response","sendAuthorizationResponse","presentationDefinitionId","remotePresentation","_presentations$","appFetch","fetch","arguments","length","undefined","presentations","vp_token","vpToken","presentation","descriptor_map","index","id","
|
1
|
+
{"version":3,"names":["EncryptJwe","uuid","NoSuitableKeysFoundInEntityConfiguration","CredentialNotFoundError","hasStatusOrThrow","z","Base64","prepareVpTokenMdoc","generateRandomAlphaNumericString","createCryptoContextFor","prepareVpToken","AuthorizationResponse","object","status","string","optional","response_code","redirect_uri","choosePublicKeyToEncrypt","rpJwkKeys","encKeys","filter","jwk","use","ecEncKeys","kty","crv","rsaEncKeys","encKey","buildDirectPostBody","requestObject","payload","formUrlEncodedBody","URLSearchParams","state","Object","fromEntries","entries","map","_ref","key","value","Array","isArray","JSON","stringify","toString","buildDirectPostJwtBody","jwkKeys","generatedNonce","authzResponsePayload","encPublicJwk","client_metadata","encryptedResponse","alg","authorization_encrypted_response_alg","enc","authorization_encrypted_response_enc","kid","apv","encodeURI","nonce","apu","encrypt","formBody","response","sendAuthorizationResponse","presentationDefinitionId","remotePresentation","_presentations$","appFetch","fetch","arguments","length","undefined","presentations","vp_token","vpToken","presentation","descriptor_map","index","id","credentialId","path","format","presentation_submission","v4","definition_id","requestBody","response_mode","authResponse","response_uri","method","headers","body","then","res","json","safeParse","success","data","sendAuthorizationErrorResponse","error","parse","sendAuthorizationResponseDcql","reduce","acc","prepareRemotePresentations","credentials","authRequestObject","Promise","all","item","credentialInputId","clientId","responseUri","doctype","keyTag","credential","requestedClaims","_ref2","name","_ref3"],"sourceRoot":"../../../../src","sources":["credential/presentation/08-send-authorization-response.ts"],"mappings":"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"}
|
@@ -4,8 +4,9 @@ import { getRequestObject } from "./03-get-request-object";
|
|
4
4
|
import { fetchJwksFromRequestObject, fetchJwksFromConfig } from "./04-retrieve-rp-jwks";
|
5
5
|
import { verifyRequestObjectSignature } from "./05-verify-request-object";
|
6
6
|
import { fetchPresentDefinition } from "./06-fetch-presentation-definition";
|
7
|
-
import { evaluateInputDescriptors
|
8
|
-
import {
|
7
|
+
import { evaluateInputDescriptors } from "./07-evaluate-input-descriptor";
|
8
|
+
import { evaluateDcqlQuery } from "./07-evaluate-dcql-query";
|
9
|
+
import { prepareRemotePresentations, sendAuthorizationResponse, sendAuthorizationErrorResponse, sendAuthorizationResponseDcql } from "./08-send-authorization-response";
|
9
10
|
import * as Errors from "./errors";
|
10
|
-
export { startFlowFromQR, evaluateRelyingPartyTrust, getRequestObject, fetchJwksFromRequestObject, fetchJwksFromConfig, verifyRequestObjectSignature, fetchPresentDefinition, evaluateInputDescriptors, sendAuthorizationResponse, sendAuthorizationErrorResponse, prepareRemotePresentations, Errors };
|
11
|
+
export { startFlowFromQR, evaluateRelyingPartyTrust, getRequestObject, fetchJwksFromRequestObject, fetchJwksFromConfig, verifyRequestObjectSignature, fetchPresentDefinition, evaluateInputDescriptors, evaluateDcqlQuery, sendAuthorizationResponse, sendAuthorizationErrorResponse, sendAuthorizationResponseDcql, prepareRemotePresentations, Errors };
|
11
12
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["startFlowFromQR","evaluateRelyingPartyTrust","getRequestObject","fetchJwksFromRequestObject","fetchJwksFromConfig","verifyRequestObjectSignature","fetchPresentDefinition","evaluateInputDescriptors","prepareRemotePresentations","sendAuthorizationResponse","sendAuthorizationErrorResponse","Errors"],"sourceRoot":"../../../../src","sources":["credential/presentation/index.ts"],"mappings":"AAAA,SAASA,eAAe,QAAwB,iBAAiB;AACjE,SACEC,yBAAyB,QAEpB,wBAAwB;AAC/B,SACEC,gBAAgB,QAEX,yBAAyB;AAChC,SACEC,0BAA0B,EAC1BC,mBAAmB,QAEd,uBAAuB;AAC9B,SACEC,4BAA4B,QAEvB,4BAA4B;AACnC,SACEC,sBAAsB,QAEjB,oCAAoC;AAC3C,SACEC,wBAAwB,
|
1
|
+
{"version":3,"names":["startFlowFromQR","evaluateRelyingPartyTrust","getRequestObject","fetchJwksFromRequestObject","fetchJwksFromConfig","verifyRequestObjectSignature","fetchPresentDefinition","evaluateInputDescriptors","evaluateDcqlQuery","prepareRemotePresentations","sendAuthorizationResponse","sendAuthorizationErrorResponse","sendAuthorizationResponseDcql","Errors"],"sourceRoot":"../../../../src","sources":["credential/presentation/index.ts"],"mappings":"AAAA,SAASA,eAAe,QAAwB,iBAAiB;AACjE,SACEC,yBAAyB,QAEpB,wBAAwB;AAC/B,SACEC,gBAAgB,QAEX,yBAAyB;AAChC,SACEC,0BAA0B,EAC1BC,mBAAmB,QAEd,uBAAuB;AAC9B,SACEC,4BAA4B,QAEvB,4BAA4B;AACnC,SACEC,sBAAsB,QAEjB,oCAAoC;AAC3C,SACEC,wBAAwB,QAEnB,gCAAgC;AACvC,SACEC,iBAAiB,QAEZ,0BAA0B;AACjC,SACEC,0BAA0B,EAC1BC,yBAAyB,EAEzBC,8BAA8B,EAE9BC,6BAA6B,QAExB,kCAAkC;AACzC,OAAO,KAAKC,MAAM,MAAM,UAAU;AAGlC,SACEb,eAAe,EACfC,yBAAyB,EACzBC,gBAAgB,EAChBC,0BAA0B,EAC1BC,mBAAmB,EACnBC,4BAA4B,EAC5BC,sBAAsB,EACtBC,wBAAwB,EACxBC,iBAAiB,EACjBE,yBAAyB,EACzBC,8BAA8B,EAC9BC,6BAA6B,EAC7BH,0BAA0B,EAC1BI,MAAM"}
|
@@ -93,6 +93,8 @@ export const RequestObject = z.object({
|
|
93
93
|
jwks: JWKS.optional()
|
94
94
|
}).optional(),
|
95
95
|
// previous z.literal("entity_id"),
|
96
|
+
dcql_query: z.record(z.string(), z.any()).optional(),
|
97
|
+
// Validation happens within the `dcql` library, no need to duplicate it here
|
96
98
|
scope: z.string().optional(),
|
97
99
|
presentation_definition: PresentationDefinition.optional()
|
98
100
|
});
|
@@ -109,8 +111,13 @@ export const ErrorResponse = z.enum(["invalid_scope", "invalid_request", "invali
|
|
109
111
|
*/
|
110
112
|
|
111
113
|
export const DirectAuthorizationBodyPayload = z.union([z.object({
|
112
|
-
vp_token: z.union([z.string(),
|
113
|
-
|
114
|
+
vp_token: z.union([z.string(),
|
115
|
+
// Presentation Definition with one credential
|
116
|
+
z.array(z.string()),
|
117
|
+
// Presentation Definition with more credential
|
118
|
+
z.record(z.string(), z.string()) // DCQL query
|
119
|
+
]).optional(),
|
120
|
+
presentation_submission: z.record(z.string(), z.unknown()).optional()
|
114
121
|
}), z.object({
|
115
122
|
error: ErrorResponse
|
116
123
|
})]);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["UnixTime","z","JWKS","Fields","object","path","array","string","min","id","optional","purpose","name","filter","any","boolean","intent_to_retain","Constraints","fields","limit_disclosure","enum","InputDescriptor","format","record","constraints","group","SubmissionRequirement","rule","from","from_nested","count","number","PresentationDefinition","input_descriptors","submission_requirements","RequestObject","iss","iat","exp","state","nonce","response_uri","response_type","literal","response_mode","client_id","client_id_scheme","client_metadata","authorization_encrypted_response_alg","authorization_encrypted_response_enc","jwks_uri","jwks","scope","presentation_definition","ErrorResponse","DirectAuthorizationBodyPayload","union","vp_token","presentation_submission","unknown","error"],"sourceRoot":"../../../../src","sources":["credential/presentation/types.ts"],"mappings":"AACA,SAASA,QAAQ,QAAQ,oBAAoB;AAC7C,OAAO,KAAKC,CAAC,MAAM,KAAK;AACxB,SAASC,IAAI,QAAQ,iBAAiB;;
|
1
|
+
{"version":3,"names":["UnixTime","z","JWKS","Fields","object","path","array","string","min","id","optional","purpose","name","filter","any","boolean","intent_to_retain","Constraints","fields","limit_disclosure","enum","InputDescriptor","format","record","constraints","group","SubmissionRequirement","rule","from","from_nested","count","number","PresentationDefinition","input_descriptors","submission_requirements","RequestObject","iss","iat","exp","state","nonce","response_uri","response_type","literal","response_mode","client_id","client_id_scheme","client_metadata","authorization_encrypted_response_alg","authorization_encrypted_response_enc","jwks_uri","jwks","dcql_query","scope","presentation_definition","ErrorResponse","DirectAuthorizationBodyPayload","union","vp_token","presentation_submission","unknown","error"],"sourceRoot":"../../../../src","sources":["credential/presentation/types.ts"],"mappings":"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"}
|
package/lib/module/mdoc/index.js
CHANGED
@@ -9,7 +9,7 @@ export const verify = async (token, _) => {
|
|
9
9
|
if (!issuerSigned) {
|
10
10
|
throw new Error("Invalid mDoc");
|
11
11
|
}
|
12
|
-
const cert = (_issuerSigned$issuerA = issuerSigned.issuerAuth.unprotectedHeader[0]) === null || _issuerSigned$issuerA === void 0 ? void 0 : _issuerSigned$issuerA
|
12
|
+
const cert = (_issuerSigned$issuerA = issuerSigned.issuerAuth.unprotectedHeader[0]) === null || _issuerSigned$issuerA === void 0 || (_issuerSigned$issuerA = _issuerSigned$issuerA.x5chain) === null || _issuerSigned$issuerA === void 0 ? void 0 : _issuerSigned$issuerA[0];
|
13
13
|
if (!cert) throw new Error("Certificate not present in credential");
|
14
14
|
const pemcert = convertCertToPem(b64utob64(cert));
|
15
15
|
const publickey = parsePublicKey(pemcert);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["CBOR","COSE","ISO18013","b64utob64","convertCertToPem","getSigningJwk","parsePublicKey","base64ToBase64Url","verify","token","_","_issuerSigned$issuerA","issuerSigned","decodeIssuerSigned","Error","cert","issuerAuth","unprotectedHeader","
|
1
|
+
{"version":3,"names":["CBOR","COSE","ISO18013","b64utob64","convertCertToPem","getSigningJwk","parsePublicKey","base64ToBase64Url","verify","token","_","_issuerSigned$issuerA","issuerSigned","decodeIssuerSigned","Error","cert","issuerAuth","unprotectedHeader","x5chain","pemcert","publickey","jwk","x","y","signatureCorrect","rawValue","catch","prepareVpTokenMdoc","requestNonce","generatedNonce","clientId","responseUri","docType","keyTag","_ref","verifiableCredential","requestedClaims","documents","issuerSignedContent","alias","fieldRequestedAndAccepted","JSON","stringify","reduce","acc","_ref2","name","namespace","existingNamespace","vp_token","generateOID4VPDeviceResponse"],"sourceRoot":"../../../src","sources":["mdoc/index.ts"],"mappings":"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"}
|
@@ -11,35 +11,38 @@ import { SdJwt4VC } from "../types";
|
|
11
11
|
// - payload is taken from the italian specification, but _sd are compiled with:
|
12
12
|
// - "address" is used as verification._sd
|
13
13
|
// - all others disclosures are in claims._sd
|
14
|
-
const token = "
|
15
|
-
const unsigned = "
|
16
|
-
const signature = "
|
14
|
+
const token = "eyJraWQiOiJvTHZHOHFGeGJZQ2RZRXBGNVdEeEJVYzM1THI1YTgwZ2FtbjZPeU5pSFRjIiwidHlwIjoidmMrc2Qtand0IiwiYWxnIjoiRVMyNTYifQ.eyJzdWIiOiJaTGJkSm53Qm1xQks2aVJqZmVmdXNqcjBZMUk1SE11MUllcXJ5TWJGejRnIiwidmN0IjoidXJuOmV1LmV1cm9wYS5lYy5ldWRpOnBpZDoxIiwiZXhwaXJ5X2RhdGUiOiIyMDI2LTA1LTIwIiwiaXNzIjoiaHR0cHM6Ly9hcGkucG90ZW50aWFsLXdhbGxldC1pdC1waWQtcHJvdmlkZXIuaXQiLCJfc2QiOlsiNDNlbk9MQ0xSdnhseDkyTG5QaUxOMTFMR3lIVjJtT1NycmRMa1RfTm1SQSIsIkdkc1hiX0s5ZHh5WWxCd3lCclloSVdVQnlSbFdxRk9IRlVWZ1J3RWZTdjQiLCJJaGgzUFRXbWM0Zk1MQ1FZQVFsN2l5ajRYY3RwbEZOS0VaUDVtQU9BWmo4IiwiTUx0RktpVUdzUDhrMUMxN3hYblZmWFh3emhpUHN0ekx4a2dLWk10YXZ1QSIsIlkxOU9vNFNfVjZEdjZRcGVPcFJSLWxOMmlGeHJ0RzF2WkVVejFKVy1CN2MiLCJ1LWlYMXduZUtja3NDeld6elRkOUZvUTlRUGNoNlhxS2hBZkMyRFZySk9zIiwid1FURHpYcFZpNmlVa01yUW9sNFdpWkpwZkhsS2FoZi1LLWxYZjE4Rll1YyIsInhqZzVNbEpXcDVqVGltdlhzaXZRUmhMVnFlOGNTemFkTVo2MEhrazUzanMiXSwidmN0I2ludGVncml0eSI6IjI0MjMwMmQ5N2QzOGRhMjcxNGEyNTdmMmEyNTNiZjJmYTMwYWFlNWMxMDlmZTk1ODFiZmNkYTNiMWQ3OTdjOTciLCJpc3N1aW5nX2NvdW50cnkiOiJJVCIsIl9zZF9hbGciOiJzaGEtMjU2IiwiaXNzdWluZ19hdXRob3JpdHkiOiJJc3RpdHV0byBQb2xpZ3JhZmljbyBlIFplY2NhIGRlbGxvIFN0YXRvIiwiY25mIjp7Imp3ayI6eyJrdHkiOiJFQyIsImNydiI6IlAtMjU2Iiwia2lkIjoiTTBQYnZkWXNqVmdybWtXTTFfYVpZMk5zYmRMX3ZtckgyODd5TzQzTHF1WSIsIngiOiJfOHBuSVg2LXR6WEpBa0NSNmlhdnNDUVB0aW5ZYkZJeHI3NEYtNnJUejJVIiwieSI6IlJMeE53dHIxZzhIcmI1TlNoajFHYk1XZ0hvUS1DNzBCT3o0LVN5ZERoRmcifX0sImV4cCI6MTc3OTI4MzEyNSwiaWF0IjoxNzQ3NzQ3MTI1LCJ2ZXJpZmljYXRpb24iOnsiZXZpZGVuY2UiOnsibWV0aG9kIjoiY2llIn0sInRydXN0X2ZyYW1ld29yayI6ImVpZGFzIiwiYXNzdXJhbmNlX2xldmVsIjoiaGlnaCJ9LCJzdGF0dXMiOnsic3RhdHVzX2Fzc2VydGlvbiI6eyJjcmVkZW50aWFsX2hhc2hfYWxnIjoic2hhLTI1NiJ9fX0.guNNpF6KeKSowT6WCYvslgaPQbTRhwgqxTdJMPwsBOEkh6A9X2FvU8RMJoalhwXLHLo72bE4-HCvXO803I98JQ~WyItR0wxV1NiMnRWdTVTMDM4OXRFZW9nIiwiZ2l2ZW5fbmFtZSIsIk1BUklBIl0~WyJqSHYzdEFQNTNyRGxSbXVsdlo0Z2hBIiwiZmFtaWx5X25hbWUiLCJTUEVDSU1FTiJd~WyJiX3FtcnVBWTJkOEN5bk4yc0FPVm5nIiwidW5pcXVlX2lkIiwiaWRBTlBSIl0~WyJGajhqZ055bUVXYk9OdFpHeGV0SFh3IiwiYmlydGhfZGF0ZSIsIjE5OTUtMDEtMTgiXQ~WyI5aUs2UF9jY2UyY29QR1Q4b3d2TWxBIiwiYmlydGhfcGxhY2UiLCJST01BIl0~WyJucGVfcHJyUWxHT0hMU19pbS1pNmNnIiwibmF0aW9uYWxpdHkiLCJJVCJd~WyJrazlUVW9DQm9OZFd0VElpUWJValNBIiwidGF4X2lkX2NvZGUiLCJUSU5JVC1TUENNUkE5NUE1OEg1MDFUIl0~WyJjclNLNDlpaWpiZTdSbFFLSXlvcmlRIiwiaWF0IiwxNzQ3NzQ3MTI1XQ";
|
15
|
+
const unsigned = "eyJraWQiOiJvTHZHOHFGeGJZQ2RZRXBGNVdEeEJVYzM1THI1YTgwZ2FtbjZPeU5pSFRjIiwidHlwIjoidmMrc2Qtand0IiwiYWxnIjoiRVMyNTYifQ.eyJzdWIiOiJaTGJkSm53Qm1xQks2aVJqZmVmdXNqcjBZMUk1SE11MUllcXJ5TWJGejRnIiwidmN0IjoidXJuOmV1LmV1cm9wYS5lYy5ldWRpOnBpZDoxIiwiZXhwaXJ5X2RhdGUiOiIyMDI2LTA1LTIwIiwiaXNzIjoiaHR0cHM6Ly9hcGkucG90ZW50aWFsLXdhbGxldC1pdC1waWQtcHJvdmlkZXIuaXQiLCJfc2QiOlsiNDNlbk9MQ0xSdnhseDkyTG5QaUxOMTFMR3lIVjJtT1NycmRMa1RfTm1SQSIsIkdkc1hiX0s5ZHh5WWxCd3lCclloSVdVQnlSbFdxRk9IRlVWZ1J3RWZTdjQiLCJJaGgzUFRXbWM0Zk1MQ1FZQVFsN2l5ajRYY3RwbEZOS0VaUDVtQU9BWmo4IiwiTUx0RktpVUdzUDhrMUMxN3hYblZmWFh3emhpUHN0ekx4a2dLWk10YXZ1QSIsIlkxOU9vNFNfVjZEdjZRcGVPcFJSLWxOMmlGeHJ0RzF2WkVVejFKVy1CN2MiLCJ1LWlYMXduZUtja3NDeld6elRkOUZvUTlRUGNoNlhxS2hBZkMyRFZySk9zIiwid1FURHpYcFZpNmlVa01yUW9sNFdpWkpwZkhsS2FoZi1LLWxYZjE4Rll1YyIsInhqZzVNbEpXcDVqVGltdlhzaXZRUmhMVnFlOGNTemFkTVo2MEhrazUzanMiXSwidmN0I2ludGVncml0eSI6IjI0MjMwMmQ5N2QzOGRhMjcxNGEyNTdmMmEyNTNiZjJmYTMwYWFlNWMxMDlmZTk1ODFiZmNkYTNiMWQ3OTdjOTciLCJpc3N1aW5nX2NvdW50cnkiOiJJVCIsIl9zZF9hbGciOiJzaGEtMjU2IiwiaXNzdWluZ19hdXRob3JpdHkiOiJJc3RpdHV0byBQb2xpZ3JhZmljbyBlIFplY2NhIGRlbGxvIFN0YXRvIiwiY25mIjp7Imp3ayI6eyJrdHkiOiJFQyIsImNydiI6IlAtMjU2Iiwia2lkIjoiTTBQYnZkWXNqVmdybWtXTTFfYVpZMk5zYmRMX3ZtckgyODd5TzQzTHF1WSIsIngiOiJfOHBuSVg2LXR6WEpBa0NSNmlhdnNDUVB0aW5ZYkZJeHI3NEYtNnJUejJVIiwieSI6IlJMeE53dHIxZzhIcmI1TlNoajFHYk1XZ0hvUS1DNzBCT3o0LVN5ZERoRmcifX0sImV4cCI6MTc3OTI4MzEyNSwiaWF0IjoxNzQ3NzQ3MTI1LCJ2ZXJpZmljYXRpb24iOnsiZXZpZGVuY2UiOnsibWV0aG9kIjoiY2llIn0sInRydXN0X2ZyYW1ld29yayI6ImVpZGFzIiwiYXNzdXJhbmNlX2xldmVsIjoiaGlnaCJ9LCJzdGF0dXMiOnsic3RhdHVzX2Fzc2VydGlvbiI6eyJjcmVkZW50aWFsX2hhc2hfYWxnIjoic2hhLTI1NiJ9fX0";
|
16
|
+
const signature = "guNNpF6KeKSowT6WCYvslgaPQbTRhwgqxTdJMPwsBOEkh6A9X2FvU8RMJoalhwXLHLo72bE4-HCvXO803I98JQ";
|
17
17
|
const signed = `${unsigned}.${signature}`;
|
18
|
-
const tokenizedDisclosures = ["
|
18
|
+
const tokenizedDisclosures = ["WyItR0wxV1NiMnRWdTVTMDM4OXRFZW9nIiwiZ2l2ZW5fbmFtZSIsIk1BUklBIl0", "WyJqSHYzdEFQNTNyRGxSbXVsdlo0Z2hBIiwiZmFtaWx5X25hbWUiLCJTUEVDSU1FTiJd", "WyJiX3FtcnVBWTJkOEN5bk4yc0FPVm5nIiwidW5pcXVlX2lkIiwiaWRBTlBSIl0", "WyJGajhqZ055bUVXYk9OdFpHeGV0SFh3IiwiYmlydGhfZGF0ZSIsIjE5OTUtMDEtMTgiXQ", "WyI5aUs2UF9jY2UyY29QR1Q4b3d2TWxBIiwiYmlydGhfcGxhY2UiLCJST01BIl0", "WyJucGVfcHJyUWxHT0hMU19pbS1pNmNnIiwibmF0aW9uYWxpdHkiLCJJVCJd", "WyJrazlUVW9DQm9OZFd0VElpUWJValNBIiwidGF4X2lkX2NvZGUiLCJUSU5JVC1TUENNUkE5NUE1OEg1MDFUIl0", "WyJjclNLNDlpaWpiZTdSbFFLSXlvcmlRIiwiaWF0IiwxNzQ3NzQ3MTI1XQ"];
|
19
19
|
const sdJwt = {
|
20
20
|
header: {
|
21
|
-
kid: "
|
21
|
+
kid: "oLvG8qFxbYCdYEpF5WDxBUc35Lr5a80gamn6OyNiHTc",
|
22
22
|
typ: "vc+sd-jwt",
|
23
|
-
alg: "
|
23
|
+
alg: "ES256"
|
24
24
|
},
|
25
25
|
payload: {
|
26
|
-
sub: "
|
27
|
-
_sd: ["1UmtISsdd7udbFaFy-ViZ8dZFherbOGD2N3HlX4PIC8", "Fmjs4qzc5vkeOAY5G20_ZPvU-1q-oXaV7Ax516CCMFk", "Q3bagNzMeQh6EgwPBSHimbgQplmY_6v9SW4go2XAkgA", "QVwkn71B4pWfCOzzlQl9HnxFSVdEHuW35zdTQQdFQGc", "VVdR41A2KOOVzxYagZCGbVang7sSkegCeiuWf3DOtjs", "vO2dvncmzlv37MQkmWudSDIHDE9YHd0EFB8xBTDVjz0"],
|
28
|
-
"vct#integrity": "242302d97d38da2714a257f2a253bf2fa30aae5c109fe9581bfcda3b1d797c97",
|
29
|
-
_sd_alg: "sha-256",
|
26
|
+
sub: "ZLbdJnwBmqBK6iRjfefusjr0Y1I5HMu1IeqryMbFz4g",
|
30
27
|
vct: "urn:eu.europa.ec.eudi:pid:1",
|
28
|
+
expiry_date: "2026-05-20",
|
31
29
|
iss: "https://api.potential-wallet-it-pid-provider.it",
|
30
|
+
_sd: ["43enOLCLRvxlx92LnPiLN11LGyHV2mOSrrdLkT_NmRA", "GdsXb_K9dxyYlBwyBrYhIWUByRlWqFOHFUVgRwEfSv4", "Ihh3PTWmc4fMLCQYAQl7iyj4XctplFNKEZP5mAOAZj8", "MLtFKiUGsP8k1C17xXnVfXXwzhiPstzLxkgKZMtavuA", "Y19Oo4S_V6Dv6QpeOpRR-lN2iFxrtG1vZEUz1JW-B7c", "u-iX1wneKcksCzWzzTd9FoQ9QPch6XqKhAfC2DVrJOs", "wQTDzXpVi6iUkMrQol4WiZJpfHlKahf-K-lXf18FYuc", "xjg5MlJWp5jTimvXsivQRhLVqe8cSzadMZ60Hkk53js"],
|
31
|
+
"vct#integrity": "242302d97d38da2714a257f2a253bf2fa30aae5c109fe9581bfcda3b1d797c97",
|
32
|
+
issuing_country: "IT",
|
33
|
+
_sd_alg: "sha-256",
|
34
|
+
issuing_authority: "Istituto Poligrafico e Zecca dello Stato",
|
32
35
|
cnf: {
|
33
36
|
jwk: {
|
34
37
|
kty: "EC",
|
35
38
|
crv: "P-256",
|
36
|
-
kid: "
|
37
|
-
x: "
|
38
|
-
y: "
|
39
|
+
kid: "M0PbvdYsjVgrmkWM1_aZY2NsbdL_vmrH287yO43LquY",
|
40
|
+
x: "_8pnIX6-tzXJAkCR6iavsCQPtinYbFIxr74F-6rTz2U",
|
41
|
+
y: "RLxNwtr1g8Hrb5NShj1GbMWgHoQ-C70BOz4-SydDhFg"
|
39
42
|
}
|
40
43
|
},
|
41
|
-
exp:
|
42
|
-
iat:
|
44
|
+
exp: 1779283125,
|
45
|
+
iat: 1747747125,
|
43
46
|
verification: {
|
44
47
|
evidence: {
|
45
48
|
method: "cie"
|
@@ -56,7 +59,7 @@ const sdJwt = {
|
|
56
59
|
};
|
57
60
|
|
58
61
|
// In the very same order than tokenizedDisclosures
|
59
|
-
const disclosures = [["
|
62
|
+
const disclosures = [["-GL1WSb2tVu5S0389tEeog", "given_name", "MARIA"], ["jHv3tAP53rDlRmulvZ4ghA", "family_name", "SPECIMEN"], ["b_qmruAY2d8CynN2sAOVng", "unique_id", "idANPR"], ["Fj8jgNymEWbONtZGxetHXw", "birth_date", "1995-01-18"], ["9iK6P_cce2coPGT8owvMlA", "birth_place", "ROMA"], ["npe_prrQlGOHLS_im-i6cg", "nationality", "IT"], ["kk9TUoCBoNdWtTIiQbUjSA", "tax_id_code", "TINIT-SPCMRA95A58H501T"], ["crSK49iijbe7RlQKIyoriQ", "iat", 1747747125]];
|
60
63
|
it("Ensures example data correctness", () => {
|
61
64
|
expect(JSON.parse(decodeBase64(encodeBase64(JSON.stringify(sdJwt.header))))).toEqual(sdJwt.header);
|
62
65
|
expect([signed, ...tokenizedDisclosures].join("~")).toBe(token);
|
@@ -108,10 +111,10 @@ describe("disclose", () => {
|
|
108
111
|
it("should encode a valid sdjwt (one claim)", async () => {
|
109
112
|
const result = await disclose(token, ["unique_id"]);
|
110
113
|
const expected = {
|
111
|
-
token: `${signed}~
|
114
|
+
token: `${signed}~WyJiX3FtcnVBWTJkOEN5bk4yc0FPVm5nIiwidW5pcXVlX2lkIiwiaWRBTlBSIl0`,
|
112
115
|
paths: [{
|
113
116
|
claim: "unique_id",
|
114
|
-
path: "verified_claims.claims._sd[
|
117
|
+
path: "verified_claims.claims._sd[7]"
|
115
118
|
}]
|
116
119
|
};
|
117
120
|
expect(result).toEqual(expected);
|
@@ -127,13 +130,13 @@ describe("disclose", () => {
|
|
127
130
|
it("should encode a valid sdjwt (multiple claims)", async () => {
|
128
131
|
const result = await disclose(token, ["iat", "family_name"]);
|
129
132
|
const expected = {
|
130
|
-
token: `${signed}~
|
133
|
+
token: `${signed}~WyJqSHYzdEFQNTNyRGxSbXVsdlo0Z2hBIiwiZmFtaWx5X25hbWUiLCJTUEVDSU1FTiJd~WyJjclNLNDlpaWpiZTdSbFFLSXlvcmlRIiwiaWF0IiwxNzQ3NzQ3MTI1XQ`,
|
131
134
|
paths: [{
|
132
135
|
claim: "iat",
|
133
|
-
path: "verified_claims.claims._sd[
|
136
|
+
path: "verified_claims.claims._sd[0]"
|
134
137
|
}, {
|
135
138
|
claim: "family_name",
|
136
|
-
path: "verified_claims.claims._sd[
|
139
|
+
path: "verified_claims.claims._sd[5]"
|
137
140
|
}]
|
138
141
|
};
|
139
142
|
expect(result).toEqual(expected);
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["z","decode","disclose","encodeBase64","decodeBase64","SdJwt4VC","token","unsigned","signature","signed","tokenizedDisclosures","sdJwt","header","kid","typ","alg","payload","sub","_sd","
|
1
|
+
{"version":3,"names":["z","decode","disclose","encodeBase64","decodeBase64","SdJwt4VC","token","unsigned","signature","signed","tokenizedDisclosures","sdJwt","header","kid","typ","alg","payload","sub","vct","expiry_date","iss","_sd","issuing_country","_sd_alg","issuing_authority","cnf","jwk","kty","crv","x","y","exp","iat","verification","evidence","method","trust_framework","assurance_level","status","status_assertion","credential_hash_alg","disclosures","it","expect","JSON","parse","stringify","toEqual","join","toBe","describe","result","map","decoded","i","encoded","validDecoder","and","object","customField","string","invalidDecoder","error","expected","paths","claim","path","fn","rejects","any","Error"],"sourceRoot":"../../../../src","sources":["sd-jwt/__test__/index.test.ts"],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["Disclosure","SdJwt4VC","describe","it","token","header","kid","typ","alg","payload","sub","_sd","_sd_alg","vct","iss","cnf","jwk","kty","crv","x","y","exp","iat","verification","evidence","method","trust_framework","assurance_level","status","status_assertion","credential_hash_alg","success","safeParse","expect","toBe","value","type","record","source","organization_name","organization_id","country_code"],"sourceRoot":"../../../../src","sources":["sd-jwt/__test__/types.test.ts"],"mappings":"AAAA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,UAAU;AAE/CC,QAAQ,CAAC,UAAU,EAAE,MAAM;EACzBC,EAAE,CAAC,6BAA6B,EAAE,MAAM;IACtC;IACA,MAAMC,KAAK,GAAG;MACZC,MAAM,EAAE;QACNC,GAAG,EAAE,6CAA6C;QAClDC,GAAG,EAAE,WAAW;QAChBC,GAAG,EAAE;MACP,CAAC;MACDC,OAAO,EAAE;QACPC,GAAG,EAAE,6CAA6C;QAClDC,GAAG,EAAE,CACH,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,CAC9C;QACD,eAAe,EACb,kEAAkE;QACpEC,OAAO,EAAE,SAAS;QAClBC,GAAG,EAAE,6BAA6B;QAClCC,GAAG,EAAE,iDAAiD;QACtDC,GAAG,EAAE;UACHC,GAAG,EAAE;YACHC,GAAG,EAAE,IAAI;YACTC,GAAG,EAAE,OAAO;YACZZ,GAAG,EAAE,6CAA6C;YAClDa,CAAC,EAAE,6CAA6C;YAChDC,CAAC,EAAE;UACL;QACF,CAAC;QACDC,GAAG,EAAE,UAAU;QACfC,GAAG,EAAE,UAAU;QACfC,YAAY,EAAE;UACZC,QAAQ,EAAE;YACRC,MAAM,EAAE;UACV,CAAC;UACDC,eAAe,EAAE,OAAO;UACxBC,eAAe,EAAE;QACnB,CAAC;QACDC,MAAM,EAAE;UACNC,gBAAgB,EAAE;YAChBC,mBAAmB,EAAE;UACvB;QACF;MACF;IACF,CAAC;IAED,MAAM;MAAEC;IAAQ,CAAC,
|
1
|
+
{"version":3,"names":["Disclosure","SdJwt4VC","describe","it","token","header","kid","typ","alg","payload","sub","_sd","_sd_alg","vct","iss","cnf","jwk","kty","crv","x","y","exp","iat","expiry_date","issuing_country","issuing_authority","verification","evidence","method","trust_framework","assurance_level","status","status_assertion","credential_hash_alg","success","safeParse","expect","toBe","value","type","record","source","organization_name","organization_id","country_code"],"sourceRoot":"../../../../src","sources":["sd-jwt/__test__/types.test.ts"],"mappings":"AAAA,SAASA,UAAU,EAAEC,QAAQ,QAAQ,UAAU;AAE/CC,QAAQ,CAAC,UAAU,EAAE,MAAM;EACzBC,EAAE,CAAC,6BAA6B,EAAE,MAAM;IACtC;IACA,MAAMC,KAAK,GAAG;MACZC,MAAM,EAAE;QACNC,GAAG,EAAE,6CAA6C;QAClDC,GAAG,EAAE,WAAW;QAChBC,GAAG,EAAE;MACP,CAAC;MACDC,OAAO,EAAE;QACPC,GAAG,EAAE,6CAA6C;QAClDC,GAAG,EAAE,CACH,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,EAC7C,6CAA6C,CAC9C;QACD,eAAe,EACb,kEAAkE;QACpEC,OAAO,EAAE,SAAS;QAClBC,GAAG,EAAE,6BAA6B;QAClCC,GAAG,EAAE,iDAAiD;QACtDC,GAAG,EAAE;UACHC,GAAG,EAAE;YACHC,GAAG,EAAE,IAAI;YACTC,GAAG,EAAE,OAAO;YACZZ,GAAG,EAAE,6CAA6C;YAClDa,CAAC,EAAE,6CAA6C;YAChDC,CAAC,EAAE;UACL;QACF,CAAC;QACDC,GAAG,EAAE,UAAU;QACfC,GAAG,EAAE,UAAU;QACfC,WAAW,EAAE,YAAY;QACzBC,eAAe,EAAE,IAAI;QACrBC,iBAAiB,EAAE,0CAA0C;QAC7DC,YAAY,EAAE;UACZC,QAAQ,EAAE;YACRC,MAAM,EAAE;UACV,CAAC;UACDC,eAAe,EAAE,OAAO;UACxBC,eAAe,EAAE;QACnB,CAAC;QACDC,MAAM,EAAE;UACNC,gBAAgB,EAAE;YAChBC,mBAAmB,EAAE;UACvB;QACF;MACF;IACF,CAAC;IAED,MAAM;MAAEC;IAAQ,CAAC,GAAGjC,QAAQ,CAACkC,SAAS,CAAC/B,KAAK,CAAC;IAE7CgC,MAAM,CAACF,OAAO,CAAC,CAACG,IAAI,CAAC,IAAI,CAAC;EAC5B,CAAC,CAAC;AACJ,CAAC,CAAC;AAEFnC,QAAQ,CAAC,YAAY,EAAE,MAAM;EAC3BC,EAAE,CAAC,kCAAkC,EAAE,MAAM;IAC3C;IACA,MAAMmC,KAAK,GAAG,CACZ,wBAAwB,EACxB,UAAU,EACV,CACE;MACEC,IAAI,EAAE,mBAAmB;MACzBC,MAAM,EAAE;QACND,IAAI,EAAE,cAAc;QACpBE,MAAM,EAAE;UACNC,iBAAiB,EAAE,wBAAwB;UAC3CC,eAAe,EAAE,MAAM;UACvBC,YAAY,EAAE;QAChB;MACF;IACF,CAAC,CACF,CACF;IAED,MAAM;MAAEV;IAAQ,CAAC,GAAGlC,UAAU,CAACmC,SAAS,CAACG,KAAK,CAAC;IAC/CF,MAAM,CAACF,OAAO,CAAC,CAACG,IAAI,CAAC,IAAI,CAAC;EAC5B,CAAC,CAAC;AACJ,CAAC,CAAC"}
|
@@ -55,7 +55,10 @@ export const SdJwt4VC = z.object({
|
|
55
55
|
}),
|
56
56
|
vct: z.string(),
|
57
57
|
"vct#integrity": z.string().optional(),
|
58
|
-
verification: Verification.optional()
|
58
|
+
verification: Verification.optional(),
|
59
|
+
expiry_date: z.string().refine(str => !isNaN(new Date(str).getTime())),
|
60
|
+
issuing_authority: z.string(),
|
61
|
+
issuing_country: z.string()
|
59
62
|
}), ObfuscatedDisclosures)
|
60
63
|
});
|
61
64
|
//# sourceMappingURL=types.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"names":["CredentialFormat","JWK","z","UnixTime","number","min","max","ObfuscatedDisclosures","object","_sd","array","string","Disclosure","tuple","unknown","Verification","trust_framework","literal","assurance_level","evidence","method","SdJwt4VC","header","typ","alg","kid","optional","x5c","vctm","payload","intersection","iss","sub","iat","exp","_sd_alg","status","status_assertion","credential_hash_alg","cnf","jwk","vct","verification"],"sourceRoot":"../../../src","sources":["sd-jwt/types.ts"],"mappings":"AAAA,SAASA,gBAAgB,QAAQ,uCAAuC;AACxE,SAASC,GAAG,QAAQ,cAAc;AAClC,SAASC,CAAC,QAAQ,KAAK;AAEvB,OAAO,MAAMC,QAAQ,GAAGD,CAAC,CAACE,MAAM,CAAC,CAAC,CAACC,GAAG,CAAC,CAAC,CAAC,CAACC,GAAG,CAAC,aAAa,CAAC;AAI5D,OAAO,MAAMC,qBAAqB,GAAGL,CAAC,CAACM,MAAM,CAAC;EAAEC,GAAG,EAAEP,CAAC,CAACQ,KAAK,CAACR,CAAC,CAACS,MAAM,CAAC,CAAC;AAAE,CAAC,CAAC;;AAE3E;AACA;AACA;AACA;AACA;AACA;;AAEA,OAAO,MAAMC,UAAU,GAAGV,CAAC,CAACW,KAAK,CAAC,CAChC,UAAWX,CAAC,CAACS,MAAM,CAAC,CAAC,EACrB,gBAAiBT,CAAC,CAACS,MAAM,CAAC,CAAC,EAC3B,iBAAkBT,CAAC,CAACY,OAAO,CAAC,CAAC,CAC9B,CAAC;;AAEF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAOA,OAAO,MAAMC,YAAY,GAAGb,CAAC,CAACM,MAAM,CAAC;EACnCQ,eAAe,EAAEd,CAAC,CAACe,OAAO,CAAC,OAAO,CAAC;EACnCC,eAAe,EAAEhB,CAAC,CAACS,MAAM,CAAC,CAAC;EAC3BQ,QAAQ,EAAEjB,CAAC,CAACM,MAAM,CAAC;IACjBY,MAAM,EAAElB,CAAC,CAACS,MAAM,CAAC;EACnB,CAAC;AACH,CAAC,CAAC;AAGF,OAAO,MAAMU,QAAQ,GAAGnB,CAAC,CAACM,MAAM,CAAC;EAC/Bc,MAAM,EAAEpB,CAAC,CAACM,MAAM,CAAC;IACfe,GAAG,EAAEvB,gBAAgB;IACrBwB,GAAG,EAAEtB,CAAC,CAACS,MAAM,CAAC,CAAC;IACfc,GAAG,EAAEvB,CAAC,CAACS,MAAM,CAAC,CAAC,CAACe,QAAQ,CAAC,CAAC;IAC1BC,GAAG,EAAEzB,CAAC,CAACS,MAAM,CAAC,CAAC,CAACe,QAAQ,CAAC,CAAC;IAC1BE,IAAI,EAAE1B,CAAC,CAACQ,KAAK,CAACR,CAAC,CAACS,MAAM,CAAC,CAAC,CAAC,CAACe,QAAQ,CAAC;EACrC,CAAC,CAAC;EACFG,OAAO,EAAE3B,CAAC,CAAC4B,YAAY,CACrB5B,CAAC,CAACM,MAAM,CAAC;IACPuB,GAAG,EAAE7B,CAAC,CAACS,MAAM,CAAC,CAAC;IACfqB,GAAG,EAAE9B,CAAC,CAACS,MAAM,CAAC,CAAC;IACfsB,GAAG,EAAE9B,QAAQ,CAACuB,QAAQ,CAAC,CAAC;IACxBQ,GAAG,EAAE/B,QAAQ;IACbgC,OAAO,EAAEjC,CAAC,CAACe,OAAO,CAAC,SAAS,CAAC;IAC7BmB,MAAM,EAAElC,CAAC,CAACM,MAAM,CAAC;MACf6B,gBAAgB,EAAEnC,CAAC,CAACM,MAAM,CAAC;QACzB8B,mBAAmB,EAAEpC,CAAC,CAACe,OAAO,CAAC,SAAS;MAC1C,CAAC;IACH,CAAC,CAAC;IACFsB,GAAG,EAAErC,CAAC,CAACM,MAAM,CAAC;MACZgC,GAAG,EAAEvC;IACP,CAAC,CAAC;IACFwC,GAAG,EAAEvC,CAAC,CAACS,MAAM,CAAC,CAAC;IACf,eAAe,EAAET,CAAC,CAACS,MAAM,CAAC,CAAC,CAACe,QAAQ,CAAC,CAAC;IACtCgB,YAAY,EAAE3B,YAAY,CAACW,QAAQ,CAAC;
|
1
|
+
{"version":3,"names":["CredentialFormat","JWK","z","UnixTime","number","min","max","ObfuscatedDisclosures","object","_sd","array","string","Disclosure","tuple","unknown","Verification","trust_framework","literal","assurance_level","evidence","method","SdJwt4VC","header","typ","alg","kid","optional","x5c","vctm","payload","intersection","iss","sub","iat","exp","_sd_alg","status","status_assertion","credential_hash_alg","cnf","jwk","vct","verification","expiry_date","refine","str","isNaN","Date","getTime","issuing_authority","issuing_country"],"sourceRoot":"../../../src","sources":["sd-jwt/types.ts"],"mappings":"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"}
|