@sphereon/oid4vci-client 0.8.2-next.48 → 0.8.2-next.87

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.
Files changed (47) hide show
  1. package/dist/AccessTokenClient.d.ts +0 -1
  2. package/dist/AccessTokenClient.d.ts.map +1 -1
  3. package/dist/AccessTokenClient.js +2 -9
  4. package/dist/AccessTokenClient.js.map +1 -1
  5. package/dist/AuthorizationCodeClient.d.ts +9 -0
  6. package/dist/AuthorizationCodeClient.d.ts.map +1 -0
  7. package/dist/AuthorizationCodeClient.js +124 -0
  8. package/dist/AuthorizationCodeClient.js.map +1 -0
  9. package/dist/CredentialOfferClient.d.ts.map +1 -1
  10. package/dist/CredentialOfferClient.js +3 -1
  11. package/dist/CredentialOfferClient.js.map +1 -1
  12. package/dist/CredentialRequestClient.d.ts +2 -0
  13. package/dist/CredentialRequestClient.d.ts.map +1 -1
  14. package/dist/CredentialRequestClient.js +9 -7
  15. package/dist/CredentialRequestClient.js.map +1 -1
  16. package/dist/OpenID4VCIClient.d.ts +50 -29
  17. package/dist/OpenID4VCIClient.d.ts.map +1 -1
  18. package/dist/OpenID4VCIClient.js +191 -190
  19. package/dist/OpenID4VCIClient.js.map +1 -1
  20. package/dist/functions/AuthorizationUtil.d.ts +3 -0
  21. package/dist/functions/AuthorizationUtil.d.ts.map +1 -0
  22. package/dist/functions/AuthorizationUtil.js +22 -0
  23. package/dist/functions/AuthorizationUtil.js.map +1 -0
  24. package/dist/index.d.ts +1 -0
  25. package/dist/index.d.ts.map +1 -1
  26. package/dist/index.js +1 -0
  27. package/dist/index.js.map +1 -1
  28. package/dist/types/index.d.ts +1 -0
  29. package/dist/types/index.d.ts.map +1 -0
  30. package/dist/types/index.js +2 -0
  31. package/dist/types/index.js.map +1 -0
  32. package/lib/AccessTokenClient.ts +5 -11
  33. package/lib/AuthorizationCodeClient.ts +151 -0
  34. package/lib/CredentialOfferClient.ts +4 -1
  35. package/lib/CredentialRequestClient.ts +13 -4
  36. package/lib/OpenID4VCIClient.ts +250 -228
  37. package/lib/__tests__/AccessTokenClient.spec.ts +2 -0
  38. package/lib/__tests__/CredentialRequestClient.spec.ts +10 -2
  39. package/lib/__tests__/EBSIE2E.spec.test.ts +8 -6
  40. package/lib/__tests__/OpenID4VCIClient.spec.ts +115 -79
  41. package/lib/__tests__/OpenID4VCIClientPAR.spec.ts +59 -49
  42. package/lib/__tests__/SdJwt.spec.ts +2 -0
  43. package/lib/__tests__/SphereonE2E.spec.test.ts +2 -2
  44. package/lib/functions/AuthorizationUtil.ts +18 -0
  45. package/lib/index.ts +1 -0
  46. package/lib/types/index.ts +0 -0
  47. package/package.json +3 -3
@@ -16,7 +16,6 @@ export declare class AccessTokenClient {
16
16
  private assertNonEmptyPreAuthorizedCode;
17
17
  private assertNonEmptyCodeVerifier;
18
18
  private assertNonEmptyCode;
19
- private assertNonEmptyRedirectUri;
20
19
  private validate;
21
20
  private sendAuthCode;
22
21
  static determineTokenURL({ asOpts, issuerOpts, metadata, }: {
@@ -1 +1 @@
1
- {"version":3,"file":"AccessTokenClient.d.ts","sourceRoot":"","sources":["../lib/AccessTokenClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EAEnB,uBAAuB,EAEvB,gBAAgB,EAGhB,UAAU,EACV,cAAc,EAKf,MAAM,0BAA0B,CAAC;AASlC,qBAAa,iBAAiB;IACf,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IA+B9F,8BAA8B,CAAC,EAC1C,kBAAkB,EAClB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,UAAU,GACX,EAAE;QACD,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;QAC5B,MAAM,CAAC,EAAE,uBAAuB,CAAC;QACjC,UAAU,CAAC,EAAE,UAAU,CAAC;KACzB,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAgBnC,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoChG,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,+BAA+B;IAOvC,OAAO,CAAC,0BAA0B;IAOlC,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,yBAAyB;IAOjC,OAAO,CAAC,QAAQ;YAeF,YAAY;WAIZ,iBAAiB,CAAC,EAC9B,MAAM,EACN,UAAU,EACV,QAAQ,GACT,EAAE;QACD,MAAM,CAAC,EAAE,uBAAuB,CAAC;QACjC,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;KAC7B,GAAG,MAAM;IAuBV,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAUnC,OAAO,CAAC,qBAAqB;CAI9B"}
1
+ {"version":3,"file":"AccessTokenClient.d.ts","sourceRoot":"","sources":["../lib/AccessTokenClient.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EAEnB,uBAAuB,EAEvB,gBAAgB,EAGhB,UAAU,EAEV,cAAc,EAKf,MAAM,0BAA0B,CAAC;AASlC,qBAAa,iBAAiB;IACf,kBAAkB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IA+B9F,8BAA8B,CAAC,EAC1C,kBAAkB,EAClB,aAAa,EACb,QAAQ,EACR,MAAM,EACN,UAAU,GACX,EAAE;QACD,kBAAkB,EAAE,kBAAkB,CAAC;QACvC,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;QAC5B,MAAM,CAAC,EAAE,uBAAuB,CAAC;QACjC,UAAU,CAAC,EAAE,UAAU,CAAC;KACzB,GAAG,OAAO,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAgBnC,wBAAwB,CAAC,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAoChG,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,4BAA4B;IAMpC,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,gBAAgB;IAYxB,OAAO,CAAC,+BAA+B;IAOvC,OAAO,CAAC,0BAA0B;IAOlC,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,QAAQ;YAcF,YAAY;WAIZ,iBAAiB,CAAC,EAC9B,MAAM,EACN,UAAU,EACV,QAAQ,GACT,EAAE;QACD,MAAM,CAAC,EAAE,uBAAuB,CAAC;QACjC,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;KAC7B,GAAG,MAAM;IAuBV,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAYnC,OAAO,CAAC,qBAAqB;CAI9B"}
@@ -147,12 +147,6 @@ class AccessTokenClient {
147
147
  throw new Error('Authorization flow requires the code to be present');
148
148
  }
149
149
  }
150
- assertNonEmptyRedirectUri(accessTokenRequest) {
151
- if (!accessTokenRequest.redirect_uri) {
152
- debug('No redirect_uri present, whilst it is required');
153
- throw new Error('Authorization flow requires the redirect_uri to be present');
154
- }
155
- }
156
150
  validate(accessTokenRequest, isPinRequired) {
157
151
  if (accessTokenRequest.grant_type === oid4vci_common_1.GrantTypes.PRE_AUTHORIZED_CODE) {
158
152
  this.assertPreAuthorizedGrantType(accessTokenRequest.grant_type);
@@ -163,7 +157,6 @@ class AccessTokenClient {
163
157
  this.assertAuthorizationGrantType(accessTokenRequest.grant_type);
164
158
  this.assertNonEmptyCodeVerifier(accessTokenRequest);
165
159
  this.assertNonEmptyCode(accessTokenRequest);
166
- this.assertNonEmptyRedirectUri(accessTokenRequest);
167
160
  }
168
161
  else {
169
162
  this.throwNotSupportedFlow();
@@ -171,7 +164,7 @@ class AccessTokenClient {
171
164
  }
172
165
  sendAuthCode(requestTokenURL, accessTokenRequest) {
173
166
  return __awaiter(this, void 0, void 0, function* () {
174
- return yield (0, functions_1.formPost)(requestTokenURL, (0, functions_1.convertJsonToURI)(accessTokenRequest));
167
+ return yield (0, functions_1.formPost)(requestTokenURL, (0, functions_1.convertJsonToURI)(accessTokenRequest, { mode: oid4vci_common_1.JsonURIMode.X_FORM_WWW_URLENCODED }));
175
168
  });
176
169
  }
177
170
  static determineTokenURL({ asOpts, issuerOpts, metadata, }) {
@@ -199,7 +192,7 @@ class AccessTokenClient {
199
192
  }
200
193
  static creatTokenURLFromURL(url, allowInsecureEndpoints, tokenEndpoint) {
201
194
  if (allowInsecureEndpoints !== true && url.startsWith('http:')) {
202
- throw Error(`Unprotected token endpoints are not allowed ${url}. Adjust settings if you really need this (dev/test settings only!!)`);
195
+ throw Error(`Unprotected token endpoints are not allowed ${url}. Use the 'allowInsecureEndpoints' param if you really need this for dev/testing!`);
203
196
  }
204
197
  const hostname = url.replace(/https?:\/\//, '').replace(/\/$/, '');
205
198
  const endpoint = tokenEndpoint ? (tokenEndpoint.startsWith('/') ? tokenEndpoint : tokenEndpoint.substring(1)) : '/token';
@@ -1 +1 @@
1
- {"version":3,"file":"AccessTokenClient.js","sourceRoot":"","sources":["../lib/AccessTokenClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AccessTokenClient.js","sourceRoot":"","sources":["../lib/AccessTokenClient.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { AuthorizationRequestOpts, CredentialOfferRequestWithBaseUrl, CredentialSupported, EndpointMetadataResult, PKCEOpts } from '@sphereon/oid4vci-common';
2
+ export declare const createAuthorizationRequestUrl: ({ pkce, endpointMetadata, authorizationRequest, credentialOffer, credentialsSupported, }: {
3
+ pkce: PKCEOpts;
4
+ endpointMetadata: EndpointMetadataResult;
5
+ authorizationRequest: AuthorizationRequestOpts;
6
+ credentialOffer?: CredentialOfferRequestWithBaseUrl | undefined;
7
+ credentialsSupported?: CredentialSupported[] | undefined;
8
+ }) => Promise<string>;
9
+ //# sourceMappingURL=AuthorizationCodeClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthorizationCodeClient.d.ts","sourceRoot":"","sources":["../lib/AuthorizationCodeClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,wBAAwB,EAGxB,iCAAiC,EACjC,mBAAmB,EACnB,sBAAsB,EAGtB,QAAQ,EAGT,MAAM,0BAA0B,CAAC;AAMlC,eAAO,MAAM,6BAA6B;UAOlC,QAAQ;sBACI,sBAAsB;0BAClB,wBAAwB;;;MAG5C,QAAQ,MAAM,CAgFjB,CAAC"}
@@ -0,0 +1,124 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.createAuthorizationRequestUrl = void 0;
16
+ const oid4vci_common_1 = require("@sphereon/oid4vci-common");
17
+ const oid4vci_common_2 = require("@sphereon/oid4vci-common");
18
+ const debug_1 = __importDefault(require("debug"));
19
+ const debug = (0, debug_1.default)('sphereon:oid4vci');
20
+ const createAuthorizationRequestUrl = ({ pkce, endpointMetadata, authorizationRequest, credentialOffer, credentialsSupported, }) => __awaiter(void 0, void 0, void 0, function* () {
21
+ var _a, _b, _c, _d;
22
+ const { redirectUri, clientId } = authorizationRequest;
23
+ let { scope, authorizationDetails } = authorizationRequest;
24
+ const parMode = ((_a = endpointMetadata === null || endpointMetadata === void 0 ? void 0 : endpointMetadata.credentialIssuerMetadata) === null || _a === void 0 ? void 0 : _a.require_pushed_authorization_requests)
25
+ ? oid4vci_common_1.PARMode.REQUIRE
26
+ : (_b = authorizationRequest.parMode) !== null && _b !== void 0 ? _b : oid4vci_common_1.PARMode.AUTO;
27
+ // Scope and authorization_details can be used in the same authorization request
28
+ // https://datatracker.ietf.org/doc/html/draft-ietf-oauth-rar-23#name-relationship-to-scope-param
29
+ if (!scope && !authorizationDetails) {
30
+ if (!credentialOffer) {
31
+ throw Error('Please provide a scope or authorization_details if no credential offer is present');
32
+ }
33
+ const creds = credentialOffer.credential_offer.credentials;
34
+ // FIXME: complains about VCT for sd-jwt
35
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
36
+ // @ts-ignore
37
+ authorizationDetails = creds
38
+ .flatMap((cred) => (typeof cred === 'string' ? credentialsSupported : cred))
39
+ .filter((cred) => !!cred)
40
+ .map((cred) => {
41
+ return Object.assign(Object.assign({}, cred), { type: 'openid_credential', locations: [endpointMetadata.issuer],
42
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
43
+ // @ts-ignore
44
+ format: cred.format });
45
+ });
46
+ if (!authorizationDetails || authorizationDetails.length === 0) {
47
+ throw Error(`Could not create authorization details from credential offer. Please pass in explicit details`);
48
+ }
49
+ }
50
+ if (!(endpointMetadata === null || endpointMetadata === void 0 ? void 0 : endpointMetadata.authorization_endpoint)) {
51
+ throw Error('Server metadata does not contain authorization endpoint');
52
+ }
53
+ const parEndpoint = (_c = endpointMetadata.credentialIssuerMetadata) === null || _c === void 0 ? void 0 : _c.pushed_authorization_request_endpoint;
54
+ // add 'openid' scope if not present
55
+ if (!(scope === null || scope === void 0 ? void 0 : scope.includes('openid'))) {
56
+ scope = ['openid', scope].filter((s) => !!s).join(' ');
57
+ }
58
+ let queryObj = Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({ response_type: oid4vci_common_1.ResponseType.AUTH_CODE }, (!pkce.disabled && {
59
+ code_challenge_method: (_d = pkce.codeChallengeMethod) !== null && _d !== void 0 ? _d : oid4vci_common_1.CodeChallengeMethod.S256,
60
+ code_challenge: pkce.codeChallenge,
61
+ })), { authorization_details: JSON.stringify(handleAuthorizationDetails(endpointMetadata, authorizationDetails)) }), (redirectUri && { redirect_uri: redirectUri })), (clientId && { client_id: clientId })), ((credentialOffer === null || credentialOffer === void 0 ? void 0 : credentialOffer.issuerState) && { issuer_state: credentialOffer.issuerState })), { scope });
62
+ if (!parEndpoint && parMode === oid4vci_common_1.PARMode.REQUIRE) {
63
+ throw Error(`PAR mode is set to required by Authorization Server does not support PAR!`);
64
+ }
65
+ else if (parEndpoint && parMode !== oid4vci_common_1.PARMode.NEVER) {
66
+ debug(`USING PAR with endpoint ${parEndpoint}`);
67
+ const parResponse = yield (0, oid4vci_common_2.formPost)(parEndpoint, new URLSearchParams(queryObj));
68
+ if (parResponse.errorBody || !parResponse.successBody) {
69
+ throw Error(`PAR error`);
70
+ }
71
+ debug(`PAR response: ${(parResponse.successBody, null, 2)}`);
72
+ queryObj = { request_uri: parResponse.successBody.request_uri };
73
+ }
74
+ debug(`Object that will become query params: ` + JSON.stringify(queryObj, null, 2));
75
+ const url = (0, oid4vci_common_1.convertJsonToURI)(queryObj, {
76
+ baseUrl: endpointMetadata.authorization_endpoint,
77
+ uriTypeProperties: ['client_id', 'request_uri', 'redirect_uri', 'scope', 'authorization_details', 'issuer_state'],
78
+ // arrayTypeProperties: ['authorization_details'],
79
+ mode: oid4vci_common_1.JsonURIMode.X_FORM_WWW_URLENCODED,
80
+ // We do not add the version here, as this always needs to be form encoded
81
+ });
82
+ debug(`Authorization Request URL: ${url}`);
83
+ return url;
84
+ });
85
+ exports.createAuthorizationRequestUrl = createAuthorizationRequestUrl;
86
+ const handleAuthorizationDetails = (endpointMetadata, authorizationDetails) => {
87
+ if (authorizationDetails) {
88
+ if (typeof authorizationDetails === 'string') {
89
+ // backwards compat for older versions of the lib
90
+ return authorizationDetails;
91
+ }
92
+ if (Array.isArray(authorizationDetails)) {
93
+ return authorizationDetails
94
+ .filter((value) => typeof value !== 'string')
95
+ .map((value) => handleLocations(endpointMetadata, typeof value === 'string' ? value : Object.assign({}, value)));
96
+ }
97
+ else {
98
+ return handleLocations(endpointMetadata, Object.assign({}, authorizationDetails));
99
+ }
100
+ }
101
+ return authorizationDetails;
102
+ };
103
+ const handleLocations = (endpointMetadata, authorizationDetails) => {
104
+ var _a;
105
+ if (typeof authorizationDetails === 'string') {
106
+ // backwards compat for older versions of the lib
107
+ return authorizationDetails;
108
+ }
109
+ if (authorizationDetails && (((_a = endpointMetadata.credentialIssuerMetadata) === null || _a === void 0 ? void 0 : _a.authorization_server) || endpointMetadata.authorization_endpoint)) {
110
+ if (authorizationDetails.locations) {
111
+ if (Array.isArray(authorizationDetails.locations)) {
112
+ authorizationDetails.locations.push(endpointMetadata.issuer);
113
+ }
114
+ else {
115
+ authorizationDetails.locations = [authorizationDetails.locations, endpointMetadata.issuer];
116
+ }
117
+ }
118
+ else {
119
+ authorizationDetails.locations = [endpointMetadata.issuer];
120
+ }
121
+ }
122
+ return authorizationDetails;
123
+ };
124
+ //# sourceMappingURL=AuthorizationCodeClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthorizationCodeClient.js","sourceRoot":"","sources":["../lib/AuthorizationCodeClient.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"CredentialOfferClient.d.ts","sourceRoot":"","sources":["../lib/CredentialOfferClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,iCAAiC,EAGjC,iBAAiB,EAElB,MAAM,0BAA0B,CAAC;AAOlC,qBAAa,qBAAqB;WACZ,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,iCAAiC,CAAC;WA+CpG,KAAK,CACjB,kBAAkB,EAAE,iCAAiC,EACrD,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,iBAAiB,CAAC;KAC7B,GACA,MAAM;CAsCV"}
1
+ {"version":3,"file":"CredentialOfferClient.d.ts","sourceRoot":"","sources":["../lib/CredentialOfferClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,iCAAiC,EAIjC,iBAAiB,EAElB,MAAM,0BAA0B,CAAC;AAOlC,qBAAa,qBAAqB;WACZ,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,OAAO,CAAC,iCAAiC,CAAC;WAiDpG,KAAK,CACjB,kBAAkB,EAAE,iCAAiC,EACrD,IAAI,CAAC,EAAE;QACL,OAAO,CAAC,EAAE,iBAAiB,CAAC;KAC7B,GACA,MAAM;CAsCV"}
@@ -50,9 +50,11 @@ class CredentialOfferClient {
50
50
  }
51
51
  }
52
52
  const request = yield (0, oid4vci_common_1.toUniformCredentialOfferRequest)(credentialOffer, Object.assign(Object.assign({}, opts), { version }));
53
+ const clientId = (0, oid4vci_common_1.getClientIdFromCredentialOfferPayload)(request.credential_offer);
53
54
  const grants = (_a = request.credential_offer) === null || _a === void 0 ? void 0 : _a.grants;
54
55
  return Object.assign(Object.assign(Object.assign(Object.assign({ scheme,
55
- baseUrl }, request), (((_b = grants === null || grants === void 0 ? void 0 : grants.authorization_code) === null || _b === void 0 ? void 0 : _b.issuer_state) && { issuerState: grants.authorization_code.issuer_state })), (((_c = grants === null || grants === void 0 ? void 0 : grants['urn:ietf:params:oauth:grant-type:pre-authorized_code']) === null || _c === void 0 ? void 0 : _c['pre-authorized_code']) && {
56
+ baseUrl,
57
+ clientId }, request), (((_b = grants === null || grants === void 0 ? void 0 : grants.authorization_code) === null || _b === void 0 ? void 0 : _b.issuer_state) && { issuerState: grants.authorization_code.issuer_state })), (((_c = grants === null || grants === void 0 ? void 0 : grants['urn:ietf:params:oauth:grant-type:pre-authorized_code']) === null || _c === void 0 ? void 0 : _c['pre-authorized_code']) && {
56
58
  preAuthorizedCode: grants['urn:ietf:params:oauth:grant-type:pre-authorized_code']['pre-authorized_code'],
57
59
  })), { userPinRequired: (_g = (_f = (_e = (_d = request.credential_offer) === null || _d === void 0 ? void 0 : _d.grants) === null || _e === void 0 ? void 0 : _e['urn:ietf:params:oauth:grant-type:pre-authorized_code']) === null || _f === void 0 ? void 0 : _f.user_pin_required) !== null && _g !== void 0 ? _g : false });
58
60
  });
@@ -1 +1 @@
1
- {"version":3,"file":"CredentialOfferClient.js","sourceRoot":"","sources":["../lib/CredentialOfferClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CredentialOfferClient.js","sourceRoot":"","sources":["../lib/CredentialOfferClient.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ export declare class CredentialRequestClient {
28
28
  acquireCredentialsUsingProof<DIDDoc>(opts: {
29
29
  proofInput: ProofOfPossessionBuilder<DIDDoc> | ProofOfPossession;
30
30
  credentialTypes?: string | string[];
31
+ context?: string[];
31
32
  format?: CredentialFormat | OID4VCICredentialFormat;
32
33
  }): Promise<OpenIDResponse<CredentialResponse>>;
33
34
  acquireCredentialsUsingRequest(uniformRequest: UniformCredentialRequest): Promise<OpenIDResponse<CredentialResponse>>;
@@ -37,6 +38,7 @@ export declare class CredentialRequestClient {
37
38
  createCredentialRequest<DIDDoc>(opts: {
38
39
  proofInput: ProofOfPossessionBuilder<DIDDoc> | ProofOfPossession;
39
40
  credentialTypes?: string | string[];
41
+ context?: string[];
40
42
  format?: CredentialFormat | OID4VCICredentialFormat;
41
43
  version: OpenId4VCIVersion;
42
44
  }): Promise<UniformCredentialRequest>;
@@ -1 +1 @@
1
- {"version":3,"file":"CredentialRequestClient.d.ts","sourceRoot":"","sources":["../lib/CredentialRequestClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAIlB,uBAAuB,EACvB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,wBAAwB,EAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAKtE,MAAM,WAAW,qBAAqB;IACpC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,CAAC;IACpD,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAED,wBAAsB,UAAU,CAAC,MAAM,EACrC,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,GAAG,iBAAiB,EAChE,IAAI,EAAE;IACJ,OAAO,EAAE,iBAAiB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,8BAYF;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAiC;IACxE,OAAO,CAAC,WAAW,CAAS;IAE5B,IAAI,qBAAqB,IAAI,qBAAqB,CAEjD;IAEM,UAAU,IAAI,OAAO;IAIrB,qBAAqB,IAAI,MAAM;IAI/B,6BAA6B,IAAI,MAAM,GAAG,SAAS;gBAIvC,OAAO,EAAE,8BAA8B;IAI7C,4BAA4B,CAAC,MAAM,EAAE,IAAI,EAAE;QACtD,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;QACjE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QACpC,MAAM,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,CAAC;KACrD,GAAG,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAOlC,8BAA8B,CAAC,cAAc,EAAE,wBAAwB,GAAG,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAoBrH,yBAAyB,CACpC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,GAAG,kBAAkB,GAAG,SAAS,CAAC,EACrF,IAAI,CAAC,EAAE;QACL,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GACA,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAmBjC,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;QACjD,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;QACjE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QACpC,MAAM,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,CAAC;QACpD,OAAO,EAAE,iBAAiB,CAAC;KAC5B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IAsDrC,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,aAAa;CAGtB"}
1
+ {"version":3,"file":"CredentialRequestClient.d.ts","sourceRoot":"","sources":["../lib/CredentialRequestClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAIlB,uBAAuB,EACvB,iBAAiB,EACjB,cAAc,EACd,iBAAiB,EACjB,wBAAwB,EAEzB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,8BAA8B,EAAE,MAAM,kCAAkC,CAAC;AAClF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AAKtE,MAAM,WAAW,qBAAqB;IACpC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,CAAC;IACpD,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,iBAAiB,CAAC;CAC5B;AAED,wBAAsB,UAAU,CAAC,MAAM,EACrC,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,GAAG,iBAAiB,EAChE,IAAI,EAAE;IACJ,OAAO,EAAE,iBAAiB,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,8BAYF;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAiC;IACxE,OAAO,CAAC,WAAW,CAAS;IAE5B,IAAI,qBAAqB,IAAI,qBAAqB,CAEjD;IAEM,UAAU,IAAI,OAAO;IAIrB,qBAAqB,IAAI,MAAM;IAI/B,6BAA6B,IAAI,MAAM,GAAG,SAAS;gBAIvC,OAAO,EAAE,8BAA8B;IAI7C,4BAA4B,CAAC,MAAM,EAAE,IAAI,EAAE;QACtD,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;QACjE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QACpC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,CAAC;KACrD,GAAG,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAOlC,8BAA8B,CAAC,cAAc,EAAE,wBAAwB,GAAG,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAoBrH,yBAAyB,CACpC,QAAQ,EAAE,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,GAAG,kBAAkB,GAAG,SAAS,CAAC,EACrF,IAAI,CAAC,EAAE;QACL,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,GACA,OAAO,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAmBjC,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE;QACjD,UAAU,EAAE,wBAAwB,CAAC,MAAM,CAAC,GAAG,iBAAiB,CAAC;QACjE,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QACpC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,EAAE,gBAAgB,GAAG,uBAAuB,CAAC;QACpD,OAAO,EAAE,iBAAiB,CAAC;KAC5B,GAAG,OAAO,CAAC,wBAAwB,CAAC;IA6DrC,OAAO,CAAC,OAAO;IAIf,OAAO,CAAC,aAAa;CAGtB"}
@@ -52,8 +52,8 @@ class CredentialRequestClient {
52
52
  }
53
53
  acquireCredentialsUsingProof(opts) {
54
54
  return __awaiter(this, void 0, void 0, function* () {
55
- const { credentialTypes, proofInput, format } = opts;
56
- const request = yield this.createCredentialRequest({ proofInput, credentialTypes, format, version: this.version() });
55
+ const { credentialTypes, proofInput, format, context } = opts;
56
+ const request = yield this.createCredentialRequest({ proofInput, credentialTypes, context, format, version: this.version() });
57
57
  return yield this.acquireCredentialsUsingRequest(request);
58
58
  });
59
59
  }
@@ -129,14 +129,16 @@ class CredentialRequestClient {
129
129
  };
130
130
  }
131
131
  else if (format === 'jwt_vc_json-ld' || format === 'ldp_vc') {
132
+ if (this.version() >= oid4vci_common_1.OpenId4VCIVersion.VER_1_0_12 && !opts.context) {
133
+ throw Error('No @context value present, but it is required');
134
+ }
132
135
  return {
133
136
  format,
134
137
  proof,
135
- credential_definition: {
136
- types,
137
- // FIXME: this was not included in the original code, but it is required
138
- '@context': [],
139
- },
138
+ // Ignored because v11 does not have the context value, but it is required in v12
139
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
140
+ // @ts-ignore
141
+ credential_definition: Object.assign({ types }, (opts.context && { '@context': opts.context })),
140
142
  };
141
143
  }
142
144
  else if (format === 'vc+sd-jwt') {
@@ -1 +1 @@
1
- {"version":3,"file":"CredentialRequestClient.js","sourceRoot":"","sources":["../lib/CredentialRequestClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CredentialRequestClient.js","sourceRoot":"","sources":["../lib/CredentialRequestClient.ts"],"names":[],"mappings":"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"}
@@ -1,57 +1,68 @@
1
- import { AccessTokenResponse, Alg, AuthzFlowType, CodeChallengeMethod, CredentialOfferRequestWithBaseUrl, CredentialResponse, CredentialSupported, EndpointMetadataResult, JWK, OID4VCICredentialFormat, OpenId4VCIVersion, ProofOfPossessionCallbacks } from '@sphereon/oid4vci-common';
1
+ import { AccessTokenResponse, Alg, AuthorizationRequestOpts, AuthorizationResponse, AuthzFlowType, CredentialOfferRequestWithBaseUrl, CredentialResponse, CredentialSupported, EndpointMetadataResult, JWK, OID4VCICredentialFormat, OpenId4VCIVersion, PKCEOpts, ProofOfPossessionCallbacks } from '@sphereon/oid4vci-common';
2
2
  import { CredentialFormat } from '@sphereon/ssi-types';
3
- interface AuthDetails {
4
- type: 'openid_credential' | string;
5
- locations?: string | string[];
6
- format: CredentialFormat | CredentialFormat[];
7
- [s: string]: unknown;
8
- }
9
- interface AuthRequestOpts {
10
- codeChallenge: string;
11
- codeChallengeMethod?: CodeChallengeMethod;
12
- authorizationDetails?: AuthDetails | AuthDetails[];
13
- redirectUri: string;
14
- scope?: string;
3
+ export interface OpenID4VCIClientState {
4
+ credentialIssuer: string;
5
+ credentialOffer?: CredentialOfferRequestWithBaseUrl;
6
+ clientId?: string;
7
+ kid?: string;
8
+ jwk?: JWK;
9
+ alg?: Alg | string;
10
+ endpointMetadata?: EndpointMetadataResult;
11
+ accessTokenResponse?: AccessTokenResponse;
12
+ authorizationRequestOpts?: AuthorizationRequestOpts;
13
+ pkce: PKCEOpts;
14
+ authorizationURL?: string;
15
15
  }
16
16
  export declare class OpenID4VCIClient {
17
- private readonly _credentialOffer?;
18
- private _credentialIssuer;
19
- private _clientId?;
20
- private _kid;
21
- private _jwk;
22
- private _alg;
23
- private _endpointMetadata;
24
- private _accessTokenResponse;
17
+ private readonly _state;
25
18
  private constructor();
26
- static fromCredentialIssuer({ kid, alg, retrieveServerMetadata, clientId, credentialIssuer, }: {
19
+ static fromCredentialIssuer({ kid, alg, retrieveServerMetadata, clientId, credentialIssuer, pkce, authorizationRequest, createAuthorizationRequestURL, }: {
27
20
  credentialIssuer: string;
28
21
  kid?: string;
29
22
  alg?: Alg | string;
30
23
  retrieveServerMetadata?: boolean;
31
24
  clientId?: string;
25
+ createAuthorizationRequestURL?: boolean;
26
+ authorizationRequest?: AuthorizationRequestOpts;
27
+ pkce?: PKCEOpts;
28
+ }): Promise<OpenID4VCIClient>;
29
+ static fromState({ state }: {
30
+ state: OpenID4VCIClientState | string;
32
31
  }): Promise<OpenID4VCIClient>;
33
- static fromURI({ uri, kid, alg, retrieveServerMetadata, clientId, resolveOfferUri, }: {
32
+ static fromURI({ uri, kid, alg, retrieveServerMetadata, clientId, pkce, createAuthorizationRequestURL, authorizationRequest, resolveOfferUri, }: {
34
33
  uri: string;
35
34
  kid?: string;
36
35
  alg?: Alg | string;
37
36
  retrieveServerMetadata?: boolean;
37
+ createAuthorizationRequestURL?: boolean;
38
38
  resolveOfferUri?: boolean;
39
+ pkce?: PKCEOpts;
39
40
  clientId?: string;
41
+ authorizationRequest?: AuthorizationRequestOpts;
40
42
  }): Promise<OpenID4VCIClient>;
43
+ /**
44
+ * Allows you to create an Authorization Request URL when using an Authorization Code flow. This URL needs to be accessed using the front channel (browser)
45
+ *
46
+ * The Identity provider would present a login screen typically; after you authenticated, it would redirect to the provided redirectUri; which can be same device or cross-device
47
+ * @param opts
48
+ */
49
+ createAuthorizationRequestUrl(opts?: {
50
+ authorizationRequest?: AuthorizationRequestOpts;
51
+ pkce?: PKCEOpts;
52
+ }): Promise<string>;
41
53
  retrieveServerMetadata(): Promise<EndpointMetadataResult>;
42
- createAuthorizationRequestUrl({ codeChallengeMethod, codeChallenge, authorizationDetails, redirectUri, scope }: AuthRequestOpts): string;
43
- acquirePushedAuthorizationRequestURI({ codeChallengeMethod, codeChallenge, authorizationDetails, redirectUri, scope, }: AuthRequestOpts): Promise<string>;
44
- handleAuthorizationDetails(authorizationDetails?: AuthDetails | AuthDetails[]): AuthDetails | AuthDetails[] | undefined;
45
- private handleLocations;
54
+ private calculatePKCEOpts;
46
55
  acquireAccessToken(opts?: {
47
56
  pin?: string;
48
57
  clientId?: string;
49
58
  codeVerifier?: string;
59
+ authorizationResponse?: string | AuthorizationResponse;
50
60
  code?: string;
51
61
  redirectUri?: string;
52
62
  }): Promise<AccessTokenResponse>;
53
- acquireCredentials({ credentialTypes, proofCallbacks, format, kid, jwk, alg, jti, deferredCredentialAwait, deferredCredentialIntervalInMS, }: {
63
+ acquireCredentials({ credentialTypes, context, proofCallbacks, format, kid, jwk, alg, jti, deferredCredentialAwait, deferredCredentialIntervalInMS, }: {
54
64
  credentialTypes: string | string[];
65
+ context?: string[];
55
66
  proofCallbacks: ProofOfPossessionCallbacks<any>;
56
67
  format?: CredentialFormat | OID4VCICredentialFormat;
57
68
  kid?: string;
@@ -61,24 +72,34 @@ export declare class OpenID4VCIClient {
61
72
  deferredCredentialAwait?: boolean;
62
73
  deferredCredentialIntervalInMS?: number;
63
74
  }): Promise<CredentialResponse>;
75
+ exportState(): Promise<string>;
64
76
  getCredentialsSupported(restrictToInitiationTypes: boolean, format?: (OID4VCICredentialFormat | string) | (OID4VCICredentialFormat | string)[]): CredentialSupported[];
65
77
  getCredentialOfferTypes(): string[][];
66
78
  issuerSupportedFlowTypes(): AuthzFlowType[];
79
+ isFlowTypeSupported(flowType: AuthzFlowType): boolean;
80
+ get authorizationURL(): string | undefined;
81
+ hasAuthorizationURL(): boolean;
67
82
  get credentialOffer(): CredentialOfferRequestWithBaseUrl | undefined;
68
83
  version(): OpenId4VCIVersion;
69
84
  get endpointMetadata(): EndpointMetadataResult;
70
85
  get kid(): string;
71
86
  get alg(): string;
87
+ set clientId(value: string | undefined);
72
88
  get clientId(): string | undefined;
89
+ hasAccessTokenResponse(): boolean;
73
90
  get accessTokenResponse(): AccessTokenResponse;
74
91
  getIssuer(): string;
75
92
  getAccessTokenEndpoint(): string;
76
93
  getCredentialEndpoint(): string;
77
94
  hasDeferredCredentialEndpoint(): boolean;
78
95
  getDeferredCredentialEndpoint(): string;
96
+ /**
97
+ * Too bad we need a method like this, but EBSI is not exposing metadata
98
+ */
99
+ isEBSI(): boolean | undefined;
79
100
  private assertIssuerData;
80
101
  private assertServerMetadata;
81
102
  private assertAccessToken;
103
+ private syncAuthorizationRequestOpts;
82
104
  }
83
- export {};
84
105
  //# sourceMappingURL=OpenID4VCIClient.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OpenID4VCIClient.d.ts","sourceRoot":"","sources":["../lib/OpenID4VCIClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenID4VCIClient.d.ts","sourceRoot":"","sources":["../lib/OpenID4VCIClient.ts"],"names":[],"mappings":"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"}