@openid4vc/openid4vp 0.3.0-alpha-20250321202313 → 0.3.0-alpha-20250321205459

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.js CHANGED
@@ -885,7 +885,7 @@ function parseOpenid4vpAuthorizationRequest(options) {
885
885
  // src/authorization-request/resolve-authorization-request.ts
886
886
  var import_oauth219 = require("@openid4vc/oauth2");
887
887
  var import_utils14 = require("@openid4vc/utils");
888
- var import_zod14 = __toESM(require("zod"));
888
+ var import_zod13 = __toESM(require("zod"));
889
889
 
890
890
  // src/fetch-client-metadata.ts
891
891
  var import_oauth213 = require("@openid4vc/oauth2");
@@ -982,22 +982,25 @@ function parseAuthorizationRequestVersion(request) {
982
982
  // src/jar/jar-request-object/fetch-jar-request-object.ts
983
983
  var import_oauth215 = require("@openid4vc/oauth2");
984
984
  var import_utils12 = require("@openid4vc/utils");
985
- var import_zod11 = require("zod");
986
985
  async function fetchJarRequestObject(options) {
987
- const { requestUri, clientIdentifierScheme, method, wallet, fetch } = options;
988
- const fetcher = (0, import_utils12.createZodFetcher)(fetch);
986
+ const { requestUri, clientIdentifierScheme, method, wallet, fetch = import_utils12.defaultFetcher } = options;
989
987
  let requestBody = wallet.metadata ? { wallet_metadata: wallet.metadata, wallet_nonce: wallet.nonce } : void 0;
990
988
  if (requestBody?.wallet_metadata?.request_object_signing_alg_values_supported && clientIdentifierScheme === "redirect_uri") {
991
989
  const { request_object_signing_alg_values_supported, ...rest } = requestBody.wallet_metadata;
992
990
  requestBody = { ...requestBody, wallet_metadata: { ...rest } };
993
991
  }
994
- const { result, response } = await fetcher(import_zod11.z.string(), import_utils12.ContentType.OAuthAuthorizationRequestJwt, requestUri, {
992
+ const response = await fetch(requestUri, {
995
993
  method,
994
+ body: method === "POST" ? (0, import_utils12.objectToQueryParams)(wallet.metadata ?? {}) : void 0,
996
995
  headers: {
997
- Accept: `${import_utils12.ContentType.OAuthAuthorizationRequestJwt}, ${import_utils12.ContentType.Jwt};q=0.9`,
996
+ Accept: `${import_utils12.ContentType.OAuthAuthorizationRequestJwt}, ${import_utils12.ContentType.Jwt};q=0.9, text/plain`,
998
997
  "Content-Type": import_utils12.ContentType.XWwwFormUrlencoded
999
- },
1000
- body: method === "POST" ? (0, import_utils12.objectToQueryParams)(wallet.metadata ?? {}) : void 0
998
+ }
999
+ }).catch(() => {
1000
+ throw new import_oauth215.Oauth2ServerErrorResponseError({
1001
+ error_description: `Fetching request_object from request_uri '${requestUri}' failed`,
1002
+ error: import_oauth215.Oauth2ErrorCodes.InvalidRequestUri
1003
+ });
1001
1004
  });
1002
1005
  if (!response.ok) {
1003
1006
  throw new import_oauth215.Oauth2ServerErrorResponseError({
@@ -1005,21 +1008,15 @@ async function fetchJarRequestObject(options) {
1005
1008
  error: import_oauth215.Oauth2ErrorCodes.InvalidRequestUri
1006
1009
  });
1007
1010
  }
1008
- if (!result || !result.success) {
1009
- throw new import_oauth215.Oauth2ServerErrorResponseError({
1010
- error_description: `Parsing request_object from request_uri '${requestUri}' failed.`,
1011
- error: import_oauth215.Oauth2ErrorCodes.InvalidRequestObject
1012
- });
1013
- }
1014
- return result.data;
1011
+ return await response.text();
1015
1012
  }
1016
1013
 
1017
1014
  // src/jar/jar-request-object/z-jar-request-object.ts
1018
1015
  var import_oauth216 = require("@openid4vc/oauth2");
1019
- var import_zod12 = require("zod");
1020
- var zJarRequestObjectPayload = import_zod12.z.object({
1016
+ var import_zod11 = require("zod");
1017
+ var zJarRequestObjectPayload = import_zod11.z.object({
1021
1018
  ...import_oauth216.zJwtPayload.shape,
1022
- client_id: import_zod12.z.string()
1019
+ client_id: import_zod11.z.string()
1023
1020
  }).passthrough();
1024
1021
 
1025
1022
  // src/jar/handle-jar-request/verify-jar-request.ts
@@ -1123,13 +1120,13 @@ var import_oauth218 = require("@openid4vc/oauth2");
1123
1120
  var import_utils13 = require("@openid4vc/utils");
1124
1121
 
1125
1122
  // src/transaction-data/z-transaction-data.ts
1126
- var import_zod13 = require("zod");
1127
- var zTransactionEntry = import_zod13.z.object({
1128
- type: import_zod13.z.string(),
1129
- credential_ids: import_zod13.z.array(import_zod13.z.string()).nonempty(),
1130
- transaction_data_hashes_alg: import_zod13.z.array(import_zod13.z.string()).optional()
1123
+ var import_zod12 = require("zod");
1124
+ var zTransactionEntry = import_zod12.z.object({
1125
+ type: import_zod12.z.string(),
1126
+ credential_ids: import_zod12.z.array(import_zod12.z.string()).nonempty(),
1127
+ transaction_data_hashes_alg: import_zod12.z.array(import_zod12.z.string()).optional()
1131
1128
  });
1132
- var zTransactionData = import_zod13.z.array(zTransactionEntry);
1129
+ var zTransactionData = import_zod12.z.array(zTransactionEntry);
1133
1130
 
1134
1131
  // src/transaction-data/parse-transaction-data.ts
1135
1132
  function parseTransactionData(options) {
@@ -1154,7 +1151,7 @@ async function resolveOpenid4vpAuthorizationRequest(options) {
1154
1151
  const { wallet, callbacks, origin, disableOriginValidation } = options;
1155
1152
  let authorizationRequestPayload;
1156
1153
  const parsed = (0, import_utils14.parseWithErrorHandling)(
1157
- import_zod14.default.union([zOpenid4vpAuthorizationRequestDcApi, zOpenid4vpAuthorizationRequest, zJarAuthorizationRequest]),
1154
+ import_zod13.default.union([zOpenid4vpAuthorizationRequestDcApi, zOpenid4vpAuthorizationRequest, zJarAuthorizationRequest]),
1158
1155
  options.authorizationRequestPayload,
1159
1156
  "Invalid authorization request. Could not parse openid4vp authorization request as openid4vp or jar auth request."
1160
1157
  );
@@ -1162,7 +1159,7 @@ async function resolveOpenid4vpAuthorizationRequest(options) {
1162
1159
  if (isJarAuthorizationRequest(parsed)) {
1163
1160
  jar = await verifyJarRequest({ jarRequestParams: parsed, callbacks, wallet });
1164
1161
  const parsedJarAuthorizationRequestPayload = (0, import_utils14.parseWithErrorHandling)(
1165
- import_zod14.default.union([zOpenid4vpAuthorizationRequestDcApi, zOpenid4vpAuthorizationRequest]),
1162
+ import_zod13.default.union([zOpenid4vpAuthorizationRequestDcApi, zOpenid4vpAuthorizationRequest]),
1166
1163
  jar.authorizationRequestPayload,
1167
1164
  "Invalid authorization request. Could not parse jar request payload as openid4vp auth request."
1168
1165
  );
@@ -1276,7 +1273,7 @@ async function createJarmAuthorizationResponse(options) {
1276
1273
  }
1277
1274
 
1278
1275
  // src/jarm/jarm-response-mode.ts
1279
- var import_zod15 = require("zod");
1276
+ var import_zod14 = require("zod");
1280
1277
  var jarmResponseMode = [
1281
1278
  "jwt",
1282
1279
  "query.jwt",
@@ -1285,7 +1282,7 @@ var jarmResponseMode = [
1285
1282
  "direct_post.jwt",
1286
1283
  "dc_api.jwt"
1287
1284
  ];
1288
- var zJarmResponseMode = import_zod15.z.enum(jarmResponseMode);
1285
+ var zJarmResponseMode = import_zod14.z.enum(jarmResponseMode);
1289
1286
  var isJarmResponseMode = (responseMode) => {
1290
1287
  return jarmResponseMode.includes(responseMode);
1291
1288
  };
@@ -1483,17 +1480,17 @@ var import_oauth225 = require("@openid4vc/oauth2");
1483
1480
  var import_utils19 = require("@openid4vc/utils");
1484
1481
 
1485
1482
  // src/vp-token/z-vp-token.ts
1486
- var import_zod16 = require("zod");
1487
- var zVpTokenPexEntry = import_zod16.z.union([import_zod16.z.string(), import_zod16.z.record(import_zod16.z.any())], {
1483
+ var import_zod15 = require("zod");
1484
+ var zVpTokenPexEntry = import_zod15.z.union([import_zod15.z.string(), import_zod15.z.record(import_zod15.z.any())], {
1488
1485
  message: "pex vp_token entry must be a string or object"
1489
1486
  });
1490
- var zVpTokenPex = import_zod16.z.union(
1491
- [zVpTokenPexEntry, import_zod16.z.array(zVpTokenPexEntry).nonempty("Must have at least entry in vp_token array")],
1487
+ var zVpTokenPex = import_zod15.z.union(
1488
+ [zVpTokenPexEntry, import_zod15.z.array(zVpTokenPexEntry).nonempty("Must have at least entry in vp_token array")],
1492
1489
  {
1493
1490
  message: "pex vp_token must be a string, object or array of strings and objects"
1494
1491
  }
1495
1492
  );
1496
- var zVpTokenDcql = import_zod16.z.record(import_zod16.z.union([import_zod16.z.string(), import_zod16.z.record(import_zod16.z.any())]), {
1493
+ var zVpTokenDcql = import_zod15.z.record(import_zod15.z.union([import_zod15.z.string(), import_zod15.z.record(import_zod15.z.any())]), {
1497
1494
  message: "dcql vp_token must be an object with keys referencing the dcql credential query id, and values the encoded (string or object) presentation"
1498
1495
  });
1499
1496
  var zVpToken = zVpTokenDcql.or(zVpTokenPex);
@@ -1567,23 +1564,23 @@ var import_utils21 = require("@openid4vc/utils");
1567
1564
 
1568
1565
  // src/authorization-response/z-authorization-response.ts
1569
1566
  var import_utils20 = require("@openid4vc/utils");
1570
- var import_zod18 = require("zod");
1567
+ var import_zod17 = require("zod");
1571
1568
 
1572
1569
  // src/models/z-pex.ts
1573
- var import_zod17 = require("zod");
1574
- var zPexPresentationDefinition = import_zod17.z.record(import_zod17.z.any());
1575
- var zPexPresentationSubmission = import_zod17.z.record(import_zod17.z.any());
1570
+ var import_zod16 = require("zod");
1571
+ var zPexPresentationDefinition = import_zod16.z.record(import_zod16.z.any());
1572
+ var zPexPresentationSubmission = import_zod16.z.record(import_zod16.z.any());
1576
1573
 
1577
1574
  // src/authorization-response/z-authorization-response.ts
1578
- var zOpenid4vpAuthorizationResponse = import_zod18.z.object({
1579
- state: import_zod18.z.string().optional(),
1580
- id_token: import_zod18.z.string().optional(),
1575
+ var zOpenid4vpAuthorizationResponse = import_zod17.z.object({
1576
+ state: import_zod17.z.string().optional(),
1577
+ id_token: import_zod17.z.string().optional(),
1581
1578
  vp_token: zVpToken,
1582
1579
  presentation_submission: zPexPresentationSubmission.or(import_utils20.zStringToJson).optional(),
1583
- refresh_token: import_zod18.z.string().optional(),
1584
- token_type: import_zod18.z.string().optional(),
1585
- access_token: import_zod18.z.string().optional(),
1586
- expires_in: import_zod18.z.number().optional()
1580
+ refresh_token: import_zod17.z.string().optional(),
1581
+ token_type: import_zod17.z.string().optional(),
1582
+ access_token: import_zod17.z.string().optional(),
1583
+ expires_in: import_zod17.z.number().optional()
1587
1584
  }).passthrough();
1588
1585
 
1589
1586
  // src/authorization-response/parse-authorization-response-payload.ts
@@ -1598,11 +1595,11 @@ function parseOpenid4VpAuthorizationResponsePayload(payload) {
1598
1595
  // src/authorization-response/parse-jarm-authorization-response.ts
1599
1596
  var import_oauth226 = require("@openid4vc/oauth2");
1600
1597
  var import_utils22 = require("@openid4vc/utils");
1601
- var import_zod19 = __toESM(require("zod"));
1598
+ var import_zod18 = __toESM(require("zod"));
1602
1599
  async function parseJarmAuthorizationResponse(options) {
1603
1600
  const { jarmResponseJwt, callbacks, authorizationRequestPayload, expectedClientId } = options;
1604
1601
  const jarmAuthorizationResponseJwt = (0, import_utils22.parseWithErrorHandling)(
1605
- import_zod19.default.union([import_oauth226.zCompactJwt, import_oauth226.zCompactJwe]),
1602
+ import_zod18.default.union([import_oauth226.zCompactJwt, import_oauth226.zCompactJwe]),
1606
1603
  jarmResponseJwt,
1607
1604
  "Invalid jarm authorization response jwt."
1608
1605
  );
@@ -1796,22 +1793,22 @@ var Openid4vpVerifier = class {
1796
1793
  };
1797
1794
 
1798
1795
  // src/models/z-credential-formats.ts
1799
- var import_zod20 = require("zod");
1800
- var zCredentialFormat = import_zod20.z.enum(["jwt_vc_json", "ldp_vc", "ac_vc", "mso_mdoc", "dc+sd-jwt", "vc+sd-jwt"]);
1796
+ var import_zod19 = require("zod");
1797
+ var zCredentialFormat = import_zod19.z.enum(["jwt_vc_json", "ldp_vc", "ac_vc", "mso_mdoc", "dc+sd-jwt", "vc+sd-jwt"]);
1801
1798
 
1802
1799
  // src/models/z-proof-formats.ts
1803
- var import_zod21 = require("zod");
1804
- var zProofFormat = import_zod21.z.enum(["jwt_vp_json", "ldc_vp", "ac_vp", "dc+sd-jwt", "vc+sd-jwt", "mso_mdoc"]);
1800
+ var import_zod20 = require("zod");
1801
+ var zProofFormat = import_zod20.z.enum(["jwt_vp_json", "ldc_vp", "ac_vp", "dc+sd-jwt", "vc+sd-jwt", "mso_mdoc"]);
1805
1802
 
1806
1803
  // src/models/z-wallet-metadata.ts
1807
- var import_zod22 = require("zod");
1808
- var zWalletMetadata = import_zod22.z.object({
1809
- presentation_definition_uri_supported: import_zod22.z.optional(import_zod22.z.boolean()),
1804
+ var import_zod21 = require("zod");
1805
+ var zWalletMetadata = import_zod21.z.object({
1806
+ presentation_definition_uri_supported: import_zod21.z.optional(import_zod21.z.boolean()),
1810
1807
  vp_formats_supported: zVpFormatsSupported,
1811
- client_id_schemes_supported: import_zod22.z.optional(import_zod22.z.array(zClientIdScheme)),
1812
- request_object_signing_alg_values_supported: import_zod22.z.optional(import_zod22.z.array(import_zod22.z.string())),
1813
- authorization_encryption_alg_values_supported: import_zod22.z.optional(import_zod22.z.array(import_zod22.z.string())),
1814
- authorization_encryption_enc_values_supported: import_zod22.z.optional(import_zod22.z.array(import_zod22.z.string()))
1808
+ client_id_schemes_supported: import_zod21.z.optional(import_zod21.z.array(zClientIdScheme)),
1809
+ request_object_signing_alg_values_supported: import_zod21.z.optional(import_zod21.z.array(import_zod21.z.string())),
1810
+ authorization_encryption_alg_values_supported: import_zod21.z.optional(import_zod21.z.array(import_zod21.z.string())),
1811
+ authorization_encryption_enc_values_supported: import_zod21.z.optional(import_zod21.z.array(import_zod21.z.string()))
1815
1812
  });
1816
1813
  // Annotate the CommonJS export names for ESM import in node:
1817
1814
  0 && (module.exports = {