@credo-ts/openid4vc 0.6.0-pr-2094-20241121142705 → 0.6.0-pr-2100-20241121224952

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 (37) hide show
  1. package/build/openid4vc-holder/OpenId4VcHolderApi.d.ts +12 -11
  2. package/build/openid4vc-holder/OpenId4VcHolderApi.js +15 -9
  3. package/build/openid4vc-holder/OpenId4VcHolderApi.js.map +1 -1
  4. package/build/openid4vc-holder/OpenId4vcSiopHolderService.d.ts +5 -170
  5. package/build/openid4vc-holder/OpenId4vcSiopHolderService.js +66 -89
  6. package/build/openid4vc-holder/OpenId4vcSiopHolderService.js.map +1 -1
  7. package/build/openid4vc-holder/OpenId4vcSiopHolderServiceOptions.d.ts +13 -26
  8. package/build/openid4vc-issuer/OpenId4VcIssuerModule.js +0 -2
  9. package/build/openid4vc-issuer/OpenId4VcIssuerModule.js.map +1 -1
  10. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.d.ts +7 -7
  11. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.js +2 -10
  12. package/build/openid4vc-issuer/OpenId4VcIssuerModuleConfig.js.map +1 -1
  13. package/build/openid4vc-issuer/OpenId4VcIssuerService.js +14 -6
  14. package/build/openid4vc-issuer/OpenId4VcIssuerService.js.map +1 -1
  15. package/build/openid4vc-issuer/OpenId4VcIssuerServiceOptions.d.ts +7 -2
  16. package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.d.ts +3 -12
  17. package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.js +26 -24
  18. package/build/openid4vc-verifier/OpenId4VcSiopVerifierService.js.map +1 -1
  19. package/build/openid4vc-verifier/OpenId4VcSiopVerifierServiceOptions.d.ts +12 -1
  20. package/build/openid4vc-verifier/OpenId4VcVerifierModule.js +0 -3
  21. package/build/openid4vc-verifier/OpenId4VcVerifierModule.js.map +1 -1
  22. package/build/openid4vc-verifier/router/index.d.ts +0 -1
  23. package/build/openid4vc-verifier/router/index.js +1 -3
  24. package/build/openid4vc-verifier/router/index.js.map +1 -1
  25. package/build/shared/models/OpenId4VcJwtIssuer.d.ts +1 -4
  26. package/build/shared/transform.js +1 -0
  27. package/build/shared/transform.js.map +1 -1
  28. package/build/shared/utils.d.ts +3 -11
  29. package/build/shared/utils.js +8 -100
  30. package/build/shared/utils.js.map +1 -1
  31. package/package.json +4 -6
  32. package/build/openid4vc-issuer/router/federationEndpoint.d.ts +0 -2
  33. package/build/openid4vc-issuer/router/federationEndpoint.js +0 -89
  34. package/build/openid4vc-issuer/router/federationEndpoint.js.map +0 -1
  35. package/build/openid4vc-verifier/router/federationEndpoint.d.ts +0 -2
  36. package/build/openid4vc-verifier/router/federationEndpoint.js +0 -118
  37. package/build/openid4vc-verifier/router/federationEndpoint.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import type { OpenId4VciResolvedCredentialOffer, OpenId4VciAuthCodeFlowOptions, OpenId4VciTokenRequestOptions as OpenId4VciRequestTokenOptions, OpenId4VciCredentialRequestOptions as OpenId4VciRequestCredentialOptions, OpenId4VciSendNotificationOptions, OpenId4VciRequestTokenResponse, OpenId4VciRetrieveAuthorizationCodeUsingPresentationOptions } from './OpenId4VciHolderServiceOptions';
2
- import type { OpenId4VcSiopAcceptAuthorizationRequestOptions, OpenId4VcSiopResolveAuthorizationRequestOptions, OpenId4VcSiopResolveTrustChainsOptions } from './OpenId4vcSiopHolderServiceOptions';
3
- import { AgentContext, DifPresentationExchangeService, DifPexCredentialsForRequest } from '@credo-ts/core';
2
+ import type { OpenId4VcSiopAcceptAuthorizationRequestOptions } from './OpenId4vcSiopHolderServiceOptions';
3
+ import { AgentContext, DifPresentationExchangeService, DifPexCredentialsForRequest, DcqlQueryResult, DcqlService } from '@credo-ts/core';
4
4
  import { OpenId4VciMetadata } from '../shared';
5
5
  import { OpenId4VciHolderService } from './OpenId4VciHolderService';
6
6
  import { OpenId4VcSiopHolderService } from './OpenId4vcSiopHolderService';
@@ -12,7 +12,8 @@ export declare class OpenId4VcHolderApi {
12
12
  private openId4VciHolderService;
13
13
  private openId4VcSiopHolderService;
14
14
  private difPresentationExchangeService;
15
- constructor(agentContext: AgentContext, openId4VciHolderService: OpenId4VciHolderService, openId4VcSiopHolderService: OpenId4VcSiopHolderService, difPresentationExchangeService: DifPresentationExchangeService);
15
+ private dcqlService;
16
+ constructor(agentContext: AgentContext, openId4VciHolderService: OpenId4VciHolderService, openId4VcSiopHolderService: OpenId4VcSiopHolderService, difPresentationExchangeService: DifPresentationExchangeService, dcqlService: DcqlService);
16
17
  /**
17
18
  * Resolves the authentication request given as URI or JWT to a unified format, and
18
19
  * verifies the validity of the request.
@@ -27,7 +28,7 @@ export declare class OpenId4VcHolderApi {
27
28
  * @param requestJwtOrUri JWT or an SIOPv2 request URI
28
29
  * @returns the resolved and verified authentication request.
29
30
  */
30
- resolveSiopAuthorizationRequest(requestJwtOrUri: string, options?: OpenId4VcSiopResolveAuthorizationRequestOptions): Promise<import("./OpenId4vcSiopHolderServiceOptions").OpenId4VcSiopResolvedAuthorizationRequest>;
31
+ resolveSiopAuthorizationRequest(requestJwtOrUri: string): Promise<import("./OpenId4vcSiopHolderServiceOptions").OpenId4VcSiopResolvedAuthorizationRequest>;
31
32
  /**
32
33
  * Accepts the authentication request after it has been resolved and verified with {@link resolveSiopAuthorizationRequest}.
33
34
  *
@@ -56,10 +57,15 @@ export declare class OpenId4VcHolderApi {
56
57
  readonly presentationDuringIssuanceSession: string | undefined;
57
58
  }>;
58
59
  /**
59
- * Automatically select credentials from available credentials for a request. Can be called after calling
60
+ * Automatically select credentials from available credentials for a presentation exchange request. Can be called after calling
60
61
  * @see resolveSiopAuthorizationRequest.
61
62
  */
62
- selectCredentialsForRequest(credentialsForRequest: DifPexCredentialsForRequest): import("@credo-ts/core").DifPexInputDescriptorToCredentials;
63
+ selectCredentialsForPresentationExchangeRequest(credentialsForRequest: DifPexCredentialsForRequest): import("@credo-ts/core").DifPexInputDescriptorToCredentials;
64
+ /**
65
+ * Automatically select credentials from available credentials for a dcql request. Can be called after calling
66
+ * @see resolveSiopAuthorizationRequest.
67
+ */
68
+ selectCredentialsForDcqlRequest(dcqlQueryResult: DcqlQueryResult): import("@credo-ts/core").DcqlCredentialsForRequest;
63
69
  resolveIssuerMetadata(credentialIssuer: string): Promise<OpenId4VciMetadata>;
64
70
  /**
65
71
  * Resolves a credential offer given as credential offer URL, or issuance initiation URL,
@@ -121,9 +127,4 @@ export declare class OpenId4VcHolderApi {
121
127
  * Send a notification event to the credential issuer
122
128
  */
123
129
  sendNotification(options: OpenId4VciSendNotificationOptions): Promise<void>;
124
- resolveOpenIdFederationChains(options: OpenId4VcSiopResolveTrustChainsOptions): Promise<{
125
- chain: Awaited<ReturnType<typeof import("@openid-federation/core").fetchEntityStatementChain>>;
126
- leafEntityConfiguration: Awaited<ReturnType<typeof import("@openid-federation/core").fetchEntityConfiguration>>;
127
- trustAnchorEntityConfiguration: Awaited<ReturnType<typeof import("@openid-federation/core").fetchEntityConfiguration>>;
128
- }[]>;
129
130
  }
@@ -28,11 +28,12 @@ const OpenId4vcSiopHolderService_1 = require("./OpenId4vcSiopHolderService");
28
28
  * @public
29
29
  */
30
30
  let OpenId4VcHolderApi = class OpenId4VcHolderApi {
31
- constructor(agentContext, openId4VciHolderService, openId4VcSiopHolderService, difPresentationExchangeService) {
31
+ constructor(agentContext, openId4VciHolderService, openId4VcSiopHolderService, difPresentationExchangeService, dcqlService) {
32
32
  this.agentContext = agentContext;
33
33
  this.openId4VciHolderService = openId4VciHolderService;
34
34
  this.openId4VcSiopHolderService = openId4VcSiopHolderService;
35
35
  this.difPresentationExchangeService = difPresentationExchangeService;
36
+ this.dcqlService = dcqlService;
36
37
  }
37
38
  /**
38
39
  * Resolves the authentication request given as URI or JWT to a unified format, and
@@ -48,8 +49,8 @@ let OpenId4VcHolderApi = class OpenId4VcHolderApi {
48
49
  * @param requestJwtOrUri JWT or an SIOPv2 request URI
49
50
  * @returns the resolved and verified authentication request.
50
51
  */
51
- async resolveSiopAuthorizationRequest(requestJwtOrUri, options = {}) {
52
- return this.openId4VcSiopHolderService.resolveAuthorizationRequest(this.agentContext, requestJwtOrUri, options);
52
+ async resolveSiopAuthorizationRequest(requestJwtOrUri) {
53
+ return this.openId4VcSiopHolderService.resolveAuthorizationRequest(this.agentContext, requestJwtOrUri);
53
54
  }
54
55
  /**
55
56
  * Accepts the authentication request after it has been resolved and verified with {@link resolveSiopAuthorizationRequest}.
@@ -63,12 +64,19 @@ let OpenId4VcHolderApi = class OpenId4VcHolderApi {
63
64
  return await this.openId4VcSiopHolderService.acceptAuthorizationRequest(this.agentContext, options);
64
65
  }
65
66
  /**
66
- * Automatically select credentials from available credentials for a request. Can be called after calling
67
+ * Automatically select credentials from available credentials for a presentation exchange request. Can be called after calling
67
68
  * @see resolveSiopAuthorizationRequest.
68
69
  */
69
- selectCredentialsForRequest(credentialsForRequest) {
70
+ selectCredentialsForPresentationExchangeRequest(credentialsForRequest) {
70
71
  return this.difPresentationExchangeService.selectCredentialsForRequest(credentialsForRequest);
71
72
  }
73
+ /**
74
+ * Automatically select credentials from available credentials for a dcql request. Can be called after calling
75
+ * @see resolveSiopAuthorizationRequest.
76
+ */
77
+ selectCredentialsForDcqlRequest(dcqlQueryResult) {
78
+ return this.dcqlService.selectCredentialsForRequest(dcqlQueryResult);
79
+ }
72
80
  async resolveIssuerMetadata(credentialIssuer) {
73
81
  return await this.openId4VciHolderService.resolveIssuerMetadata(this.agentContext, credentialIssuer);
74
82
  }
@@ -148,9 +156,6 @@ let OpenId4VcHolderApi = class OpenId4VcHolderApi {
148
156
  async sendNotification(options) {
149
157
  return this.openId4VciHolderService.sendNotification(this.agentContext, options);
150
158
  }
151
- async resolveOpenIdFederationChains(options) {
152
- return this.openId4VcSiopHolderService.resolveOpenIdFederationChains(this.agentContext, options);
153
- }
154
159
  };
155
160
  exports.OpenId4VcHolderApi = OpenId4VcHolderApi;
156
161
  exports.OpenId4VcHolderApi = OpenId4VcHolderApi = __decorate([
@@ -158,6 +163,7 @@ exports.OpenId4VcHolderApi = OpenId4VcHolderApi = __decorate([
158
163
  __metadata("design:paramtypes", [core_1.AgentContext,
159
164
  OpenId4VciHolderService_1.OpenId4VciHolderService,
160
165
  OpenId4vcSiopHolderService_1.OpenId4VcSiopHolderService,
161
- core_1.DifPresentationExchangeService])
166
+ core_1.DifPresentationExchangeService,
167
+ core_1.DcqlService])
162
168
  ], OpenId4VcHolderApi);
163
169
  //# sourceMappingURL=OpenId4VcHolderApi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OpenId4VcHolderApi.js","sourceRoot":"","sources":["../../src/openid4vc-holder/OpenId4VcHolderApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenId4VcHolderApi.js","sourceRoot":"","sources":["../../src/openid4vc-holder/OpenId4VcHolderApi.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
- import type { OpenId4VcSiopAcceptAuthorizationRequestOptions, OpenId4VcSiopFetchEntityConfigurationOptions, OpenId4VcSiopResolveAuthorizationRequestOptions, OpenId4VcSiopResolvedAuthorizationRequest, OpenId4VcSiopResolveTrustChainsOptions } from './OpenId4vcSiopHolderServiceOptions';
1
+ import type { OpenId4VcSiopAcceptAuthorizationRequestOptions, OpenId4VcSiopResolvedAuthorizationRequest } from './OpenId4vcSiopHolderServiceOptions';
2
2
  import type { AgentContext } from '@credo-ts/core';
3
3
  import type { AuthorizationResponsePayload } from '@sphereon/did-auth-siop';
4
- import { DifPresentationExchangeService } from '@credo-ts/core';
5
- import { fetchEntityConfiguration as federationFetchEntityConfiguration } from '@openid-federation/core';
4
+ import { DifPresentationExchangeService, DcqlService } from '@credo-ts/core';
6
5
  export declare class OpenId4VcSiopHolderService {
7
6
  private presentationExchangeService;
8
- constructor(presentationExchangeService: DifPresentationExchangeService);
9
- resolveAuthorizationRequest(agentContext: AgentContext, requestJwtOrUri: string, options?: OpenId4VcSiopResolveAuthorizationRequestOptions): Promise<OpenId4VcSiopResolvedAuthorizationRequest>;
7
+ private dcqlService;
8
+ constructor(presentationExchangeService: DifPresentationExchangeService, dcqlService: DcqlService);
9
+ resolveAuthorizationRequest(agentContext: AgentContext, requestJwtOrUri: string): Promise<OpenId4VcSiopResolvedAuthorizationRequest>;
10
10
  acceptAuthorizationRequest(agentContext: AgentContext, options: OpenId4VcSiopAcceptAuthorizationRequestOptions): Promise<{
11
11
  readonly ok: false;
12
12
  readonly serverResponse: {
@@ -30,169 +30,4 @@ export declare class OpenId4VcSiopHolderService {
30
30
  private getOpenIdTokenIssuerFromVerifiablePresentation;
31
31
  private assertValidTokenIssuer;
32
32
  private encryptJarmResponse;
33
- resolveOpenIdFederationChains(agentContext: AgentContext, options: OpenId4VcSiopResolveTrustChainsOptions): Promise<{
34
- chain: Awaited<ReturnType<typeof import("@openid-federation/core").fetchEntityStatementChain>>;
35
- leafEntityConfiguration: Awaited<ReturnType<typeof federationFetchEntityConfiguration>>;
36
- trustAnchorEntityConfiguration: Awaited<ReturnType<typeof federationFetchEntityConfiguration>>;
37
- }[]>;
38
- fetchOpenIdFederationEntityConfiguration(agentContext: AgentContext, options: OpenId4VcSiopFetchEntityConfigurationOptions): Promise<{
39
- sub: string;
40
- jwks: {
41
- keys: import("zod").objectOutputType<{
42
- kty: import("zod").ZodString;
43
- kid: import("zod").ZodString;
44
- use: import("zod").ZodOptional<import("zod").ZodString>;
45
- key_ops: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
46
- alg: import("zod").ZodOptional<import("zod").ZodString>;
47
- x5u: import("zod").ZodOptional<import("zod").ZodString>;
48
- x5c: import("zod").ZodOptional<import("zod").ZodString>;
49
- x5t: import("zod").ZodOptional<import("zod").ZodString>;
50
- "x5t#S256": import("zod").ZodOptional<import("zod").ZodString>;
51
- }, import("zod").ZodTypeAny, "passthrough">[];
52
- };
53
- iss: string;
54
- iat: Date;
55
- exp: Date;
56
- authority_hints?: string[] | undefined;
57
- metadata?: {
58
- federation_entity?: {
59
- jwks?: {
60
- keys: import("zod").objectOutputType<{
61
- kty: import("zod").ZodString;
62
- kid: import("zod").ZodString;
63
- use: import("zod").ZodOptional<import("zod").ZodString>;
64
- key_ops: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
65
- alg: import("zod").ZodOptional<import("zod").ZodString>;
66
- x5u: import("zod").ZodOptional<import("zod").ZodString>;
67
- x5c: import("zod").ZodOptional<import("zod").ZodString>;
68
- x5t: import("zod").ZodOptional<import("zod").ZodString>;
69
- "x5t#S256": import("zod").ZodOptional<import("zod").ZodString>;
70
- }, import("zod").ZodTypeAny, "passthrough">[];
71
- } | undefined;
72
- signed_jwks_uri?: string | undefined;
73
- jwks_uri?: string | undefined;
74
- organization_name?: string | undefined;
75
- contacts?: string[] | undefined;
76
- logo_uri?: string | undefined;
77
- policy_uri?: string | undefined;
78
- homepage_uri?: string | undefined;
79
- federation_fetch_endpoint?: string | undefined;
80
- federation_list_endpoint?: string | undefined;
81
- federation_resolve_endpoint?: string | undefined;
82
- federation_trust_mark_status_endpoint?: string | undefined;
83
- federation_trust_mark_list_endpoint?: string | undefined;
84
- federation_trust_mark_endpoint?: string | undefined;
85
- federation_historical_keys_endpoint?: string | undefined;
86
- } | undefined;
87
- oauth_client?: {
88
- [x: string]: any;
89
- } | undefined;
90
- oauth_resource?: {
91
- [x: string]: any;
92
- } | undefined;
93
- openid_provider?: {
94
- client_registration_types_supported: ("automatic" | "explicit")[];
95
- jwks?: {
96
- keys: import("zod").objectOutputType<{
97
- kty: import("zod").ZodString;
98
- kid: import("zod").ZodString;
99
- use: import("zod").ZodOptional<import("zod").ZodString>;
100
- key_ops: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
101
- alg: import("zod").ZodOptional<import("zod").ZodString>;
102
- x5u: import("zod").ZodOptional<import("zod").ZodString>;
103
- x5c: import("zod").ZodOptional<import("zod").ZodString>;
104
- x5t: import("zod").ZodOptional<import("zod").ZodString>;
105
- "x5t#S256": import("zod").ZodOptional<import("zod").ZodString>;
106
- }, import("zod").ZodTypeAny, "passthrough">[];
107
- } | undefined;
108
- signed_jwks_uri?: string | undefined;
109
- jwks_uri?: string | undefined;
110
- organization_name?: string | undefined;
111
- contacts?: string[] | undefined;
112
- logo_uri?: string | undefined;
113
- policy_uri?: string | undefined;
114
- homepage_uri?: string | undefined;
115
- federation_registration_endpoint?: string | undefined;
116
- request_authentication_methods_supported?: {
117
- authorization_endpoint?: string[] | undefined;
118
- pushed_authorization_request_endpoint?: string[] | undefined;
119
- } | undefined;
120
- request_authentication_signing_alg_values_supported?: string[] | undefined;
121
- } | undefined;
122
- openid_relying_party?: {
123
- client_registration_types: ("automatic" | "explicit")[];
124
- jwks?: {
125
- keys: import("zod").objectOutputType<{
126
- kty: import("zod").ZodString;
127
- kid: import("zod").ZodString;
128
- use: import("zod").ZodOptional<import("zod").ZodString>;
129
- key_ops: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
130
- alg: import("zod").ZodOptional<import("zod").ZodString>;
131
- x5u: import("zod").ZodOptional<import("zod").ZodString>;
132
- x5c: import("zod").ZodOptional<import("zod").ZodString>;
133
- x5t: import("zod").ZodOptional<import("zod").ZodString>;
134
- "x5t#S256": import("zod").ZodOptional<import("zod").ZodString>;
135
- }, import("zod").ZodTypeAny, "passthrough">[];
136
- } | undefined;
137
- signed_jwks_uri?: string | undefined;
138
- jwks_uri?: string | undefined;
139
- organization_name?: string | undefined;
140
- contacts?: string[] | undefined;
141
- logo_uri?: string | undefined;
142
- policy_uri?: string | undefined;
143
- homepage_uri?: string | undefined;
144
- } | undefined;
145
- oauth_authorization_server?: {
146
- [x: string]: any;
147
- } | undefined;
148
- } | undefined;
149
- metadata_policy?: ({
150
- [x: string]: any;
151
- } & {
152
- [k: string]: unknown;
153
- }) | undefined;
154
- constraints?: {
155
- max_path_length?: number | undefined;
156
- naming_constraints?: {
157
- permitted?: string[] | undefined;
158
- excluded?: string[] | undefined;
159
- } | undefined;
160
- allowed_entity_types?: string[] | undefined;
161
- } | undefined;
162
- crit?: string[] | undefined;
163
- metadata_policy_crit?: string[] | undefined;
164
- trust_marks?: {
165
- id: string;
166
- trust_mark: {
167
- header: Record<string | number, unknown>;
168
- claims: {
169
- sub: string;
170
- iss: string;
171
- id: string;
172
- iat: Date;
173
- exp?: Date | undefined;
174
- ref?: string | undefined;
175
- };
176
- signature: Uint8Array;
177
- };
178
- }[] | undefined;
179
- trust_mark_issuers?: Record<string, string[]> | undefined;
180
- trust_mark_owners?: Record<string, {
181
- sub: string;
182
- jwks: {
183
- keys: import("zod").objectOutputType<{
184
- kty: import("zod").ZodString;
185
- kid: import("zod").ZodString;
186
- use: import("zod").ZodOptional<import("zod").ZodString>;
187
- key_ops: import("zod").ZodOptional<import("zod").ZodArray<import("zod").ZodString, "many">>;
188
- alg: import("zod").ZodOptional<import("zod").ZodString>;
189
- x5u: import("zod").ZodOptional<import("zod").ZodString>;
190
- x5c: import("zod").ZodOptional<import("zod").ZodString>;
191
- x5t: import("zod").ZodOptional<import("zod").ZodString>;
192
- "x5t#S256": import("zod").ZodOptional<import("zod").ZodString>;
193
- }, import("zod").ZodTypeAny, "passthrough">[];
194
- };
195
- }> | undefined;
196
- source_endpoint?: string | undefined;
197
- }>;
198
33
  }
@@ -11,19 +11,17 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.OpenId4VcSiopHolderService = void 0;
13
13
  const core_1 = require("@credo-ts/core");
14
- const core_2 = require("@openid-federation/core");
15
14
  const did_auth_siop_1 = require("@sphereon/did-auth-siop");
16
15
  const transform_1 = require("../shared/transform");
17
16
  const utils_1 = require("../shared/utils");
18
17
  let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
19
- constructor(presentationExchangeService) {
18
+ constructor(presentationExchangeService, dcqlService) {
20
19
  this.presentationExchangeService = presentationExchangeService;
20
+ this.dcqlService = dcqlService;
21
21
  }
22
- async resolveAuthorizationRequest(agentContext, requestJwtOrUri, options = {}) {
23
- var _a, _b, _c;
24
- const openidProvider = await this.getOpenIdProvider(agentContext, {
25
- federation: options.federation,
26
- });
22
+ async resolveAuthorizationRequest(agentContext, requestJwtOrUri) {
23
+ var _a, _b;
24
+ const openidProvider = await this.getOpenIdProvider(agentContext);
27
25
  // parsing happens automatically in verifyAuthorizationRequest
28
26
  const verifiedAuthorizationRequest = await openidProvider.verifyAuthorizationRequest(requestJwtOrUri);
29
27
  agentContext.config.logger.debug(`verified SIOP Authorization Request for issuer '${verifiedAuthorizationRequest.issuer}'`);
@@ -33,30 +31,7 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
33
31
  throw new core_1.CredoError('Only a single presentation definition is supported.');
34
32
  }
35
33
  const presentationDefinition = (_b = (_a = verifiedAuthorizationRequest.presentationDefinitions) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.definition;
36
- if (verifiedAuthorizationRequest.clientIdScheme === 'entity_id') {
37
- const clientId = await verifiedAuthorizationRequest.authorizationRequest.getMergedProperty('client_id');
38
- if (!clientId) {
39
- throw new core_1.CredoError("Unable to extract 'client_id' from authorization request");
40
- }
41
- const jwsService = agentContext.dependencyManager.resolve(core_1.JwsService);
42
- const entityConfiguration = await (0, core_2.fetchEntityConfiguration)({
43
- entityId: clientId,
44
- verifyJwtCallback: async ({ jwt, jwk }) => {
45
- const res = await jwsService.verifyJws(agentContext, {
46
- jws: jwt,
47
- jwkResolver: () => (0, core_1.getJwkFromJson)(jwk),
48
- });
49
- return res.isValid;
50
- },
51
- });
52
- if (!entityConfiguration)
53
- throw new core_1.CredoError(`Unable to fetch entity configuration for entityId '${clientId}'`);
54
- const openidRelyingPartyMetadata = (_c = entityConfiguration.metadata) === null || _c === void 0 ? void 0 : _c.openid_relying_party;
55
- // When the metadata is present in the federation we want to use that instead of what is passed with the request
56
- if (openidRelyingPartyMetadata) {
57
- verifiedAuthorizationRequest.authorizationRequestPayload.client_metadata = openidRelyingPartyMetadata;
58
- }
59
- }
34
+ const dcqlQuery = verifiedAuthorizationRequest.dcqlQuery;
60
35
  return {
61
36
  authorizationRequest: verifiedAuthorizationRequest,
62
37
  // Parameters related to DIF Presentation Exchange
@@ -66,20 +41,23 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
66
41
  credentialsForRequest: await this.presentationExchangeService.getCredentialsForRequest(agentContext, presentationDefinition),
67
42
  }
68
43
  : undefined,
44
+ dcql: dcqlQuery
45
+ ? {
46
+ queryResult: await this.dcqlService.getCredentialsForRequest(agentContext, dcqlQuery),
47
+ }
48
+ : undefined,
69
49
  };
70
50
  }
71
51
  async acceptAuthorizationRequest(agentContext, options) {
72
52
  var _a;
73
- const { authorizationRequest, presentationExchange } = options;
53
+ const { authorizationRequest, presentationExchange, dcql } = options;
74
54
  let openIdTokenIssuer = options.openIdTokenIssuer;
75
55
  let presentationExchangeOptions = undefined;
56
+ let dcqlOptions = undefined;
76
57
  const wantsIdToken = await authorizationRequest.authorizationRequest.containsResponseType(did_auth_siop_1.ResponseType.ID_TOKEN);
77
58
  const authorizationResponseNonce = await agentContext.wallet.generateNonce();
78
- // Handle presentation exchange part
79
- if (authorizationRequest.presentationDefinitions && authorizationRequest.presentationDefinitions.length > 0) {
80
- if (!presentationExchange) {
81
- throw new core_1.CredoError('Authorization request included presentation definition. `presentationExchange` MUST be supplied to accept authorization requests.');
82
- }
59
+ if ((authorizationRequest.presentationDefinitions && authorizationRequest.presentationDefinitions.length > 0) ||
60
+ authorizationRequest.dcqlQuery) {
83
61
  const nonce = await authorizationRequest.authorizationRequest.getMergedProperty('nonce');
84
62
  if (!nonce) {
85
63
  throw new core_1.CredoError("Unable to extract 'nonce' from authorization request");
@@ -92,24 +70,52 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
92
70
  if (!responseUri) {
93
71
  throw new core_1.CredoError("Unable to extract 'response_uri' from authorization request");
94
72
  }
95
- const { verifiablePresentations, presentationSubmission } = await this.presentationExchangeService.createPresentation(agentContext, {
96
- credentialsForInputDescriptor: presentationExchange.credentials,
97
- presentationDefinition: authorizationRequest.presentationDefinitions[0].definition,
98
- challenge: nonce,
99
- domain: clientId,
100
- presentationSubmissionLocation: core_1.DifPresentationExchangeSubmissionLocation.EXTERNAL,
101
- openid4vp: {
102
- mdocGeneratedNonce: authorizationResponseNonce,
103
- responseUri,
104
- },
105
- });
106
- presentationExchangeOptions = {
107
- verifiablePresentations: verifiablePresentations.map((vp) => (0, transform_1.getSphereonVerifiablePresentation)(vp)),
108
- presentationSubmission,
109
- vpTokenLocation: did_auth_siop_1.VPTokenLocation.AUTHORIZATION_RESPONSE,
110
- };
111
- if (wantsIdToken && !openIdTokenIssuer) {
112
- openIdTokenIssuer = this.getOpenIdTokenIssuerFromVerifiablePresentation(verifiablePresentations[0]);
73
+ if (authorizationRequest.presentationDefinitions && authorizationRequest.presentationDefinitions.length > 0) {
74
+ if (!presentationExchange) {
75
+ throw new core_1.CredoError('Authorization request included presentation definition. `presentationExchange` MUST be supplied to accept authorization requests.');
76
+ }
77
+ const { verifiablePresentations, presentationSubmission } = await this.presentationExchangeService.createPresentation(agentContext, {
78
+ credentialsForInputDescriptor: presentationExchange.credentials,
79
+ presentationDefinition: authorizationRequest.presentationDefinitions[0].definition,
80
+ challenge: nonce,
81
+ domain: clientId,
82
+ presentationSubmissionLocation: core_1.DifPresentationExchangeSubmissionLocation.EXTERNAL,
83
+ openid4vp: {
84
+ mdocGeneratedNonce: authorizationResponseNonce,
85
+ responseUri,
86
+ },
87
+ });
88
+ if (wantsIdToken && !openIdTokenIssuer) {
89
+ openIdTokenIssuer = this.getOpenIdTokenIssuerFromVerifiablePresentation(verifiablePresentations[0]);
90
+ }
91
+ presentationExchangeOptions = {
92
+ verifiablePresentations: verifiablePresentations.map((vp) => (0, transform_1.getSphereonVerifiablePresentation)(vp)),
93
+ presentationSubmission,
94
+ vpTokenLocation: did_auth_siop_1.VPTokenLocation.AUTHORIZATION_RESPONSE,
95
+ };
96
+ }
97
+ else {
98
+ if (!dcql) {
99
+ throw new core_1.CredoError('Authorization request included dcql query. `dcql` MUST be supplied to accept authorization requests.');
100
+ }
101
+ const presentationRecord = await this.dcqlService.createPresentationRecord(agentContext, {
102
+ credentialQueryToCredential: dcql.credentials,
103
+ challenge: nonce,
104
+ domain: clientId,
105
+ openid4vp: {
106
+ mdocGeneratedNonce: authorizationResponseNonce,
107
+ responseUri,
108
+ },
109
+ });
110
+ dcqlOptions = {
111
+ encodedPresentationRecord: await this.dcqlService.getEncodedPresentationRecord(presentationRecord),
112
+ };
113
+ if (wantsIdToken && !openIdTokenIssuer) {
114
+ const nonMdocPresentation = Object.values(presentationRecord).find((presentation) => presentation instanceof core_1.MdocDeviceResponse === false);
115
+ if (nonMdocPresentation) {
116
+ openIdTokenIssuer = this.getOpenIdTokenIssuerFromVerifiablePresentation(nonMdocPresentation);
117
+ }
118
+ }
113
119
  }
114
120
  }
115
121
  else if (options.presentationExchange) {
@@ -128,6 +134,7 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
128
134
  const authorizationResponseWithCorrelationId = await openidProvider.createAuthorizationResponse(authorizationRequest, {
129
135
  jwtIssuer,
130
136
  presentationExchange: presentationExchangeOptions,
137
+ dcqlQuery: dcqlOptions,
131
138
  // https://openid.net/specs/openid-connect-self-issued-v2-1_0.html#name-aud-of-a-request-object
132
139
  audience: authorizationRequest.authorizationRequestPayload.client_id,
133
140
  });
@@ -195,7 +202,7 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
195
202
  presentationDuringIssuanceSession: responseJson === null || responseJson === void 0 ? void 0 : responseJson.presentation_during_issuance_session,
196
203
  };
197
204
  }
198
- async getOpenIdProvider(agentContext, options = {}) {
205
+ async getOpenIdProvider(agentContext) {
199
206
  const builder = did_auth_siop_1.OP.builder()
200
207
  .withExpiresIn(6000)
201
208
  .withIssuer(did_auth_siop_1.ResponseIss.SELF_ISSUED_V2)
@@ -206,9 +213,7 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
206
213
  did_auth_siop_1.SupportedVersion.SIOPv2_D12_OID4VP_D20,
207
214
  ])
208
215
  .withCreateJwtCallback((0, utils_1.getCreateJwtCallback)(agentContext))
209
- .withVerifyJwtCallback((0, utils_1.getVerifyJwtCallback)(agentContext, {
210
- federation: options.federation,
211
- }))
216
+ .withVerifyJwtCallback((0, utils_1.getVerifyJwtCallback)(agentContext))
212
217
  .withHasher(core_1.Hasher.hash);
213
218
  const openidProvider = builder.build();
214
219
  return openidProvider;
@@ -322,39 +327,11 @@ let OpenId4VcSiopHolderService = class OpenId4VcSiopHolderService {
322
327
  });
323
328
  return jwe;
324
329
  }
325
- async resolveOpenIdFederationChains(agentContext, options) {
326
- const jwsService = agentContext.dependencyManager.resolve(core_1.JwsService);
327
- const { entityId, trustAnchorEntityIds } = options;
328
- return (0, core_2.resolveTrustChains)({
329
- entityId,
330
- trustAnchorEntityIds,
331
- verifyJwtCallback: async ({ jwt, jwk }) => {
332
- const res = await jwsService.verifyJws(agentContext, {
333
- jws: jwt,
334
- jwkResolver: () => (0, core_1.getJwkFromJson)(jwk),
335
- });
336
- return res.isValid;
337
- },
338
- });
339
- }
340
- async fetchOpenIdFederationEntityConfiguration(agentContext, options) {
341
- const jwsService = agentContext.dependencyManager.resolve(core_1.JwsService);
342
- const { entityId } = options;
343
- return (0, core_2.fetchEntityConfiguration)({
344
- entityId,
345
- verifyJwtCallback: async ({ jwt, jwk }) => {
346
- const res = await jwsService.verifyJws(agentContext, {
347
- jws: jwt,
348
- jwkResolver: () => (0, core_1.getJwkFromJson)(jwk),
349
- });
350
- return res.isValid;
351
- },
352
- });
353
- }
354
330
  };
355
331
  exports.OpenId4VcSiopHolderService = OpenId4VcSiopHolderService;
356
332
  exports.OpenId4VcSiopHolderService = OpenId4VcSiopHolderService = __decorate([
357
333
  (0, core_1.injectable)(),
358
- __metadata("design:paramtypes", [core_1.DifPresentationExchangeService])
334
+ __metadata("design:paramtypes", [core_1.DifPresentationExchangeService,
335
+ core_1.DcqlService])
359
336
  ], OpenId4VcSiopHolderService);
360
337
  //# sourceMappingURL=OpenId4vcSiopHolderService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OpenId4vcSiopHolderService.js","sourceRoot":"","sources":["../../src/openid4vc-holder/OpenId4vcSiopHolderService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OpenId4vcSiopHolderService.js","sourceRoot":"","sources":["../../src/openid4vc-holder/OpenId4vcSiopHolderService.ts"],"names":[],"mappings":"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"}