@sphereon/ssi-sdk.oid4vci-issuer 0.32.1-feature.VDX.341.57 → 0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187

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.
@@ -64,4 +64,12 @@ export declare function createVciIssuer({ issuerOpts, issuerMetadata, authorizat
64
64
  authorizationServerMetadata: AuthorizationServerMetadata;
65
65
  credentialDataSupplier?: CredentialDataSupplier;
66
66
  }, context: IRequiredContext): Promise<VcIssuer<DIDDocument>>;
67
+ export declare function createAuthRequestUriCallback(opts: {
68
+ path: string;
69
+ presentationDefinitionId: string;
70
+ }): Promise<() => Promise<string>>;
71
+ export declare function createVerifyAuthResponseCallback(opts: {
72
+ path: string;
73
+ presentationDefinitionId: string;
74
+ }): Promise<(correlationId: string) => Promise<boolean>>;
67
75
  //# sourceMappingURL=functions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAE3B,cAAc,EACd,GAAG,EACH,eAAe,EAEhB,MAAM,0BAA0B,CAAA;AAEjC,OAAO,EAAE,sBAAsB,EAA2B,wBAAwB,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC/I,OAAO,EAAoB,WAAW,EAAE,MAAM,iCAAiC,CAAA;AAC/E,OAAO,EAAiC,6BAA6B,EAAE,MAAM,6CAA6C,CAAA;AAK1H,OAAO,EAAqB,WAAW,EAAe,MAAM,cAAc,CAAA;AAE1E,OAAO,EAAwB,gBAAgB,EAAa,MAAM,SAAS,CAAA;AAC3E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAEzC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzE,wBAAgB,oBAAoB,CAAC,EAAE,UAAU,EAAE,EAAE;IAAE,UAAU,CAAC,EAAE,gBAAgB,CAAA;CAAE,EAAE,QAAQ,EAAE,gBAAgB,UAC5F;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,KAAG,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAkE1F;AAED,wBAAsB,oBAAoB,CACxC,IAAI,EAAE;IACJ;;OAEG;IACH,MAAM,CAAC,EAAE,6BAA6B,CAAA;IACtC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB,EACD,OAAO,EAAE,gBAAgB,0FAI1B;AAED,wBAAsB,4BAA4B,CAChD,IAAI,EAAE;IACJ;;OAEG;IACH,MAAM,CAAC,EAAE,6BAA6B,CAAA;IACtC;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAA;IACf;;OAEG;IACH,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB,EACD,OAAO,EAAE,gBAAgB,iBAoBqB,GAAG,QAAQ,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC,EASlF;AAED,wBAAsB,2BAA2B,CAC/C,MAAM,EAAE,6BAA6B,GAAG;IACtC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,EACD,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,wBAAwB,CAAC,WAAW,CAAC,CAAC,CAgFhD;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE;IACJ,UAAU,EAAE,cAAc,CAAA;IAC1B,cAAc,EAAE,cAAc,CAAA;IAC9B,2BAA2B,EAAE,2BAA2B,CAAA;IACxD,QAAQ,CAAC,EAAE,UAAU,CAAA;IACrB,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;CAChD,EACD,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC,CAkCvC;AAED,wBAAsB,eAAe,CACnC,EACE,UAAU,EACV,cAAc,EACd,2BAA2B,EAC3B,sBAAsB,GACvB,EAAE;IACD,UAAU,EAAE,cAAc,CAAA;IAC1B,cAAc,EAAE,cAAc,CAAA;IAC9B,2BAA2B,EAAE,2BAA2B,CAAA;IACxD,sBAAsB,CAAC,EAAE,sBAAsB,CAAA;CAChD,EACD,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAYhC"}
1
+ {"version":3,"file":"functions.d.ts","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
package/dist/functions.js CHANGED
@@ -8,6 +8,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __importDefault = (this && this.__importDefault) || function (mod) {
12
+ return (mod && mod.__esModule) ? mod : { "default": mod };
13
+ };
11
14
  Object.defineProperty(exports, "__esModule", { value: true });
12
15
  exports.getJwtVerifyCallback = getJwtVerifyCallback;
13
16
  exports.getAccessTokenKeyRef = getAccessTokenKeyRef;
@@ -15,6 +18,8 @@ exports.getAccessTokenSignerCallback = getAccessTokenSignerCallback;
15
18
  exports.getCredentialSignerCallback = getCredentialSignerCallback;
16
19
  exports.createVciIssuerBuilder = createVciIssuerBuilder;
17
20
  exports.createVciIssuer = createVciIssuer;
21
+ exports.createAuthRequestUriCallback = createAuthRequestUriCallback;
22
+ exports.createVerifyAuthResponseCallback = createVerifyAuthResponseCallback;
18
23
  const oid4vci_issuer_1 = require("@sphereon/oid4vci-issuer");
19
24
  const ssi_sdk_ext_did_utils_1 = require("@sphereon/ssi-sdk-ext.did-utils");
20
25
  const ssi_sdk_ext_identifier_resolution_1 = require("@sphereon/ssi-sdk-ext.identifier-resolution");
@@ -23,9 +28,11 @@ const ssi_types_1 = require("@sphereon/ssi-types");
23
28
  const utils_1 = require("@veramo/utils");
24
29
  const did_jwt_1 = require("did-jwt");
25
30
  const jwt_decode_1 = require("jwt-decode");
31
+ const cross_fetch_1 = __importDefault(require("cross-fetch"));
32
+ const did_auth_siop_1 = require("@sphereon/did-auth-siop");
26
33
  function getJwtVerifyCallback({ verifyOpts }, _context) {
27
34
  return (args) => __awaiter(this, void 0, void 0, function* () {
28
- var _a, _b;
35
+ var _a, _b, _c;
29
36
  const resolver = (0, ssi_sdk_ext_did_utils_1.getAgentResolver)(_context, {
30
37
  resolverResolution: true,
31
38
  uniresolverResolution: true,
@@ -51,10 +58,12 @@ function getJwtVerifyCallback({ verifyOpts }, _context) {
51
58
  }
52
59
  const header = (0, jwt_decode_1.jwtDecode)(args.jwt, { header: true });
53
60
  const payload = (0, jwt_decode_1.jwtDecode)(args.jwt, { header: false });
54
- return Object.assign(Object.assign({ alg }, identifier), { jwt: { header, payload } });
61
+ const kid = (_b = args.kid) !== null && _b !== void 0 ? _b : header.kid;
62
+ const jwk = !kid ? jwkInfo.jwk : undefined; // TODO double-check if this is correct
63
+ return Object.assign(Object.assign(Object.assign(Object.assign({ alg }, identifier), { jwt: { header, payload } }), (kid && { kid })), (jwk && { jwk }));
55
64
  }
56
65
  const decodedJwt = (yield (0, did_jwt_1.decodeJWT)(args.jwt));
57
- const kid = (_b = args.kid) !== null && _b !== void 0 ? _b : decodedJwt.header.kid;
66
+ const kid = (_c = args.kid) !== null && _c !== void 0 ? _c : decodedJwt.header.kid;
58
67
  if (!kid || !kid.startsWith('did:')) {
59
68
  // No DID method present in header. We already performed the validation above. So return that
60
69
  return {
@@ -124,8 +133,8 @@ function getCredentialSignerCallback(idOpts, context) {
124
133
  return __awaiter(this, void 0, void 0, function* () {
125
134
  function issueVCCallback(args) {
126
135
  return __awaiter(this, void 0, void 0, function* () {
127
- var _a;
128
- const { jwtVerifyResult, format } = args;
136
+ var _a, _b, _c;
137
+ const { jwtVerifyResult, format, statusListOpts } = args;
129
138
  const credential = args.credential; // TODO: SDJWT
130
139
  let proofFormat;
131
140
  const resolution = yield context.agent.identifierManagedGet(idOpts);
@@ -150,7 +159,7 @@ function getCredentialSignerCallback(idOpts, context) {
150
159
  // TODO: We should extend the plugin capabilities of issuance so we do not have to tuck this into the sign callback
151
160
  if ((0, ssi_sdk_agent_config_1.contextHasPlugin)(context, 'slAddStatusToCredential')) {
152
161
  // Add status list if enabled (and when the input has a credentialStatus object (can be empty))
153
- const credentialStatusVC = yield context.agent.slAddStatusToCredential({ credential });
162
+ const credentialStatusVC = yield context.agent.slAddStatusToCredential({ credential, statusListOpts });
154
163
  if (credential.credentialStatus && !credential.credentialStatus.statusListCredential) {
155
164
  credential.credentialStatus = credentialStatusVC.credentialStatus;
156
165
  }
@@ -176,6 +185,19 @@ function getCredentialSignerCallback(idOpts, context) {
176
185
  _sd: credential['_sd'],
177
186
  };
178
187
  }
188
+ if ((0, ssi_sdk_agent_config_1.contextHasPlugin)(context, 'slAddStatusToSdJwtCredential')) {
189
+ if ((sdJwtPayload.status && sdJwtPayload.status.status_list) || (statusListOpts && statusListOpts.length > 0)) {
190
+ // Add status list if enabled (and when the input has a credentialStatus object (can be empty))
191
+ const credentialStatusVC = yield context.agent.slAddStatusToSdJwtCredential({ credential: sdJwtPayload, statusListOpts });
192
+ if ((_c = (_b = sdJwtPayload.status) === null || _b === void 0 ? void 0 : _b.status_list) === null || _c === void 0 ? void 0 : _c.idx) {
193
+ if (!credentialStatusVC.status || !credentialStatusVC.status.status_list) {
194
+ // TODO check, looks like sdJwtPayload and credentialStatusVC is the same
195
+ return Promise.reject(Error('slAddStatusToSdJwtCredential did not return a status_list'));
196
+ }
197
+ sdJwtPayload.status.status_list.idx = credentialStatusVC.status.status_list.idx;
198
+ }
199
+ }
200
+ }
179
201
  const result = yield context.agent.createSdJwtVc({
180
202
  credentialPayload: sdJwtPayload,
181
203
  disclosureFrame: disclosureFrame,
@@ -228,4 +250,58 @@ function createVciIssuer(_a, context_1) {
228
250
  }, context)).build();
229
251
  });
230
252
  }
253
+ function createAuthRequestUriCallback(opts) {
254
+ return __awaiter(this, void 0, void 0, function* () {
255
+ function authRequestUriCallback() {
256
+ return __awaiter(this, void 0, void 0, function* () {
257
+ const path = opts.path.replace(':definitionId', opts.presentationDefinitionId);
258
+ return (0, cross_fetch_1.default)(path, {
259
+ method: 'POST',
260
+ headers: {
261
+ 'Content-Type': 'application/json',
262
+ },
263
+ }).then((response) => __awaiter(this, void 0, void 0, function* () {
264
+ if (response.status >= 400) {
265
+ return Promise.reject(Error(yield response.text()));
266
+ }
267
+ else {
268
+ const responseData = yield response.json();
269
+ if (!responseData.authRequestURI) {
270
+ return Promise.reject(Error('Missing auth request uri in response body'));
271
+ }
272
+ return responseData.authRequestURI;
273
+ }
274
+ }));
275
+ });
276
+ }
277
+ return authRequestUriCallback;
278
+ });
279
+ }
280
+ function createVerifyAuthResponseCallback(opts) {
281
+ return __awaiter(this, void 0, void 0, function* () {
282
+ function verifyAuthResponseCallback(correlationId) {
283
+ return __awaiter(this, void 0, void 0, function* () {
284
+ return (0, cross_fetch_1.default)(opts.path, {
285
+ method: 'POST',
286
+ headers: {
287
+ 'Content-Type': 'application/json',
288
+ },
289
+ body: JSON.stringify({ definitionId: opts.presentationDefinitionId, correlationId }),
290
+ }).then((response) => __awaiter(this, void 0, void 0, function* () {
291
+ if (response.status >= 400) {
292
+ return Promise.reject(Error(yield response.text()));
293
+ }
294
+ else {
295
+ const responseData = yield response.json();
296
+ if (!responseData.status) {
297
+ return Promise.reject(Error('Missing status in response body'));
298
+ }
299
+ return responseData.status === did_auth_siop_1.AuthorizationResponseStateStatus.VERIFIED;
300
+ }
301
+ }));
302
+ });
303
+ }
304
+ return verifyAuthResponseCallback;
305
+ });
306
+ }
231
307
  //# sourceMappingURL=functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"functions.js","sourceRoot":"","sources":["../src/functions.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ import { IOID4VCIStore } from '@sphereon/ssi-sdk.oid4vci-issuer-store';
6
6
  import { ICredential } from '@sphereon/ssi-types/dist';
7
7
  import { IAgentContext, ICredentialIssuer, IDIDManager, IKeyManager, IPluginMethodMap, IResolver } from '@veramo/core';
8
8
  import { IssuerInstance } from '../IssuerInstance';
9
- import { IJwtService } from '@sphereon/ssi-sdk-ext.identifier-resolution/src/types/IJwtService';
9
+ import { IJwtService } from '@sphereon/ssi-sdk-ext.jwt-service';
10
10
  export type IssuerCredentialDefinition = JsonLdIssuerCredentialDefinition;
11
11
  export interface IOID4VCIIssuer extends IPluginMethodMap {
12
12
  oid4vciCreateOfferURI(createArgs: ICreateOfferArgs, context: IRequiredContext): Promise<ICreateCredentialOfferURIResult>;
@@ -62,6 +62,10 @@ export interface IIssuerOptions {
62
62
  didOpts?: IDIDOptions;
63
63
  userPinRequired?: boolean;
64
64
  cNonceExpiresIn?: number;
65
+ /**
66
+ * Used in the callbacks for the first party flow
67
+ */
68
+ presentationDefinitionId?: string;
65
69
  }
66
70
  export interface IMetadataOptions {
67
71
  credentialIssuer: string;
@@ -1 +1 @@
1
- {"version":3,"file":"IOID4VCIIssuer.d.ts","sourceRoot":"","sources":["../../src/types/IOID4VCIIssuer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"IOID4VCIIssuer.d.ts","sourceRoot":"","sources":["../../src/types/IOID4VCIIssuer.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sphereon/ssi-sdk.oid4vci-issuer",
3
- "version": "0.32.1-feature.VDX.341.57+c933fcf4",
3
+ "version": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
4
4
  "source": "src/index.ts",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -14,19 +14,20 @@
14
14
  "build:clean": "tsc --build --clean && tsc --build"
15
15
  },
16
16
  "dependencies": {
17
- "@sphereon/oid4vci-common": "0.16.1-feature.VDX.341.dcql.275",
18
- "@sphereon/oid4vci-issuer": "0.16.1-feature.VDX.341.dcql.275",
17
+ "@sphereon/oid4vci-common": "0.16.1-feature.IATAB2B.52.345",
18
+ "@sphereon/oid4vci-issuer": "0.16.1-feature.IATAB2B.52.345",
19
19
  "@sphereon/ssi-sdk-ext.did-utils": "0.27.0",
20
20
  "@sphereon/ssi-sdk-ext.identifier-resolution": "0.27.0",
21
- "@sphereon/ssi-sdk.agent-config": "0.32.1-feature.VDX.341.57+c933fcf4",
22
- "@sphereon/ssi-sdk.core": "0.32.1-feature.VDX.341.57+c933fcf4",
23
- "@sphereon/ssi-sdk.kv-store-temp": "0.32.1-feature.VDX.341.57+c933fcf4",
24
- "@sphereon/ssi-sdk.mdl-mdoc": "0.32.1-feature.VDX.341.57+c933fcf4",
25
- "@sphereon/ssi-sdk.oid4vci-issuer-store": "0.32.1-feature.VDX.341.57+c933fcf4",
26
- "@sphereon/ssi-sdk.sd-jwt": "0.32.1-feature.VDX.341.57+c933fcf4",
27
- "@sphereon/ssi-sdk.vc-status-list": "0.32.1-feature.VDX.341.57+c933fcf4",
28
- "@sphereon/ssi-sdk.vc-status-list-issuer": "0.32.1-feature.VDX.341.57+c933fcf4",
29
- "@sphereon/ssi-types": "0.32.1-feature.VDX.341.57+c933fcf4",
21
+ "@sphereon/ssi-sdk-ext.jwt-service": "0.27.0",
22
+ "@sphereon/ssi-sdk.agent-config": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
23
+ "@sphereon/ssi-sdk.core": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
24
+ "@sphereon/ssi-sdk.kv-store-temp": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
25
+ "@sphereon/ssi-sdk.mdl-mdoc": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
26
+ "@sphereon/ssi-sdk.oid4vci-issuer-store": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
27
+ "@sphereon/ssi-sdk.sd-jwt": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
28
+ "@sphereon/ssi-sdk.vc-status-list": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
29
+ "@sphereon/ssi-sdk.vc-status-list-issuer": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
30
+ "@sphereon/ssi-types": "0.32.1-feature.oid4vp.rest.api.improv.bootcamp.187+cb1cb474",
30
31
  "@types/uuid": "^9.0.8",
31
32
  "@veramo/core": "4.2.0",
32
33
  "@veramo/credential-w3c": "4.2.0",
@@ -35,6 +36,7 @@
35
36
  "uuid": "^9.0.1"
36
37
  },
37
38
  "devDependencies": {
39
+ "@sphereon/did-auth-siop": "0.16.1-feature.IATAB2B.52.345",
38
40
  "@sphereon/did-uni-client": "^0.6.3",
39
41
  "@veramo/did-provider-key": "4.2.0",
40
42
  "@veramo/did-resolver": "4.2.0",
@@ -70,5 +72,5 @@
70
72
  "Authenticator"
71
73
  ],
72
74
  "nx": {},
73
- "gitHead": "c933fcf458a0a541de46ee82ac863a8c23c50e82"
75
+ "gitHead": "cb1cb474f6b670933f9bd5ea40da9dc421d5585f"
74
76
  }
package/src/functions.ts CHANGED
@@ -5,6 +5,7 @@ import {
5
5
  Jwt,
6
6
  JwtVerifyResult,
7
7
  OID4VCICredentialFormat,
8
+ StatusListOpts,
8
9
  } from '@sphereon/oid4vci-common'
9
10
  import { JWTHeader, JWTPayload } from '@sphereon/oid4vci-common/lib/types'
10
11
  import { CredentialDataSupplier, CredentialIssuanceInput, CredentialSignerCallback, VcIssuer, VcIssuerBuilder } from '@sphereon/oid4vci-issuer'
@@ -20,6 +21,8 @@ import { createJWT, decodeJWT, JWTVerifyOptions, verifyJWT } from 'did-jwt'
20
21
  import { Resolvable } from 'did-resolver'
21
22
  import { jwtDecode } from 'jwt-decode'
22
23
  import { IIssuerOptions, IRequiredContext } from './types/IOID4VCIIssuer'
24
+ import fetch from 'cross-fetch'
25
+ import { AuthorizationResponseStateStatus } from '@sphereon/did-auth-siop'
23
26
 
24
27
  export function getJwtVerifyCallback({ verifyOpts }: { verifyOpts?: JWTVerifyOptions }, _context: IRequiredContext) {
25
28
  return async (args: { jwt: string; kid?: string }): Promise<JwtVerifyResult<DIDDocument>> => {
@@ -49,10 +52,14 @@ export function getJwtVerifyCallback({ verifyOpts }: { verifyOpts?: JWTVerifyOpt
49
52
 
50
53
  const header = jwtDecode<JWTHeader>(args.jwt, { header: true })
51
54
  const payload = jwtDecode<JWTPayload>(args.jwt, { header: false })
55
+ const kid = args.kid ?? header.kid
56
+ const jwk = !kid ? jwkInfo.jwk : undefined // TODO double-check if this is correct
52
57
  return {
53
58
  alg,
54
59
  ...identifier,
55
60
  jwt: { header, payload },
61
+ ...(kid && { kid }),
62
+ ...(jwk && { jwk }),
56
63
  } as JwtVerifyResult<DIDDocument>
57
64
  }
58
65
 
@@ -176,8 +183,9 @@ export async function getCredentialSignerCallback(
176
183
  credential: CredentialIssuanceInput
177
184
  jwtVerifyResult: JwtVerifyResult<DIDDocument>
178
185
  format?: OID4VCICredentialFormat
186
+ statusListOpts?: Array<StatusListOpts>
179
187
  }): Promise<W3CVerifiableCredential | CompactSdJwtVc> {
180
- const { jwtVerifyResult, format } = args
188
+ const { jwtVerifyResult, format, statusListOpts } = args
181
189
  const credential = args.credential as ICredential // TODO: SDJWT
182
190
  let proofFormat: ProofFormat
183
191
 
@@ -204,7 +212,7 @@ export async function getCredentialSignerCallback(
204
212
  // TODO: We should extend the plugin capabilities of issuance so we do not have to tuck this into the sign callback
205
213
  if (contextHasPlugin<IStatusListPlugin>(context, 'slAddStatusToCredential')) {
206
214
  // Add status list if enabled (and when the input has a credentialStatus object (can be empty))
207
- const credentialStatusVC = await context.agent.slAddStatusToCredential({ credential })
215
+ const credentialStatusVC = await context.agent.slAddStatusToCredential({ credential, statusListOpts })
208
216
  if (credential.credentialStatus && !credential.credentialStatus.statusListCredential) {
209
217
  credential.credentialStatus = credentialStatusVC.credentialStatus
210
218
  }
@@ -237,6 +245,22 @@ export async function getCredentialSignerCallback(
237
245
  _sd: credential['_sd'],
238
246
  }
239
247
  }
248
+
249
+ if (contextHasPlugin<IStatusListPlugin>(context, 'slAddStatusToSdJwtCredential')) {
250
+ if ((sdJwtPayload.status && sdJwtPayload.status.status_list) || (statusListOpts && statusListOpts.length > 0)) {
251
+ // Add status list if enabled (and when the input has a credentialStatus object (can be empty))
252
+ const credentialStatusVC = await context.agent.slAddStatusToSdJwtCredential({ credential: sdJwtPayload, statusListOpts })
253
+ if (sdJwtPayload.status?.status_list?.idx) {
254
+ if (!credentialStatusVC.status || !credentialStatusVC.status.status_list) {
255
+ // TODO check, looks like sdJwtPayload and credentialStatusVC is the same
256
+ return Promise.reject(Error('slAddStatusToSdJwtCredential did not return a status_list'))
257
+ }
258
+
259
+ sdJwtPayload.status.status_list.idx = credentialStatusVC.status.status_list.idx
260
+ }
261
+ }
262
+ }
263
+
240
264
  const result = await context.agent.createSdJwtVc({
241
265
  credentialPayload: sdJwtPayload,
242
266
  disclosureFrame: disclosureFrame,
@@ -323,3 +347,58 @@ export async function createVciIssuer(
323
347
  )
324
348
  ).build()
325
349
  }
350
+
351
+ export async function createAuthRequestUriCallback(opts: { path: string; presentationDefinitionId: string }): Promise<() => Promise<string>> {
352
+ async function authRequestUriCallback(): Promise<string> {
353
+ const path = opts.path.replace(':definitionId', opts.presentationDefinitionId)
354
+ return fetch(path, {
355
+ method: 'POST',
356
+ headers: {
357
+ 'Content-Type': 'application/json',
358
+ },
359
+ }).then(async (response): Promise<string> => {
360
+ if (response.status >= 400) {
361
+ return Promise.reject(Error(await response.text()))
362
+ } else {
363
+ const responseData = await response.json()
364
+
365
+ if (!responseData.authRequestURI) {
366
+ return Promise.reject(Error('Missing auth request uri in response body'))
367
+ }
368
+
369
+ return responseData.authRequestURI
370
+ }
371
+ })
372
+ }
373
+
374
+ return authRequestUriCallback
375
+ }
376
+
377
+ export async function createVerifyAuthResponseCallback(opts: {
378
+ path: string
379
+ presentationDefinitionId: string
380
+ }): Promise<(correlationId: string) => Promise<boolean>> {
381
+ async function verifyAuthResponseCallback(correlationId: string): Promise<boolean> {
382
+ return fetch(opts.path, {
383
+ method: 'POST',
384
+ headers: {
385
+ 'Content-Type': 'application/json',
386
+ },
387
+ body: JSON.stringify({ definitionId: opts.presentationDefinitionId, correlationId }),
388
+ }).then(async (response): Promise<boolean> => {
389
+ if (response.status >= 400) {
390
+ return Promise.reject(Error(await response.text()))
391
+ } else {
392
+ const responseData = await response.json()
393
+
394
+ if (!responseData.status) {
395
+ return Promise.reject(Error('Missing status in response body'))
396
+ }
397
+
398
+ return responseData.status === AuthorizationResponseStateStatus.VERIFIED
399
+ }
400
+ })
401
+ }
402
+
403
+ return verifyAuthResponseCallback
404
+ }
@@ -17,7 +17,7 @@ import { IOID4VCIStore } from '@sphereon/ssi-sdk.oid4vci-issuer-store'
17
17
  import { ICredential } from '@sphereon/ssi-types/dist'
18
18
  import { IAgentContext, ICredentialIssuer, IDIDManager, IKeyManager, IPluginMethodMap, IResolver } from '@veramo/core'
19
19
  import { IssuerInstance } from '../IssuerInstance'
20
- import { IJwtService } from '@sphereon/ssi-sdk-ext.identifier-resolution/src/types/IJwtService'
20
+ import { IJwtService } from '@sphereon/ssi-sdk-ext.jwt-service'
21
21
 
22
22
  export type IssuerCredentialDefinition = JsonLdIssuerCredentialDefinition
23
23
 
@@ -82,6 +82,12 @@ export interface IIssuerOptions {
82
82
  didOpts?: IDIDOptions
83
83
  userPinRequired?: boolean
84
84
  cNonceExpiresIn?: number
85
+
86
+ /**
87
+ * Used in the callbacks for the first party flow
88
+ */
89
+ // FIXME SPRIND-151 we need to start supporting a map with a definition id per credential, we can use the credential offer session to check which credential is being issued and then look it up in this map
90
+ presentationDefinitionId?: string
85
91
  }
86
92
 
87
93
  export interface IMetadataOptions {