@nmshd/consumption 7.3.0-openid4vc.8 → 7.3.0

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 (87) hide show
  1. package/dist/buildInformation.js +5 -5
  2. package/dist/consumption/ConsumptionConfig.d.ts +0 -1
  3. package/dist/consumption/ConsumptionConfig.d.ts.map +1 -1
  4. package/dist/consumption/ConsumptionController.d.ts +1 -3
  5. package/dist/consumption/ConsumptionController.d.ts.map +1 -1
  6. package/dist/consumption/ConsumptionController.js +1 -7
  7. package/dist/consumption/ConsumptionController.js.map +1 -1
  8. package/dist/consumption/ConsumptionControllerName.d.ts +1 -2
  9. package/dist/consumption/ConsumptionControllerName.d.ts.map +1 -1
  10. package/dist/consumption/ConsumptionControllerName.js +0 -1
  11. package/dist/consumption/ConsumptionControllerName.js.map +1 -1
  12. package/dist/consumption/ConsumptionIds.d.ts +0 -1
  13. package/dist/consumption/ConsumptionIds.d.ts.map +1 -1
  14. package/dist/consumption/ConsumptionIds.js +0 -1
  15. package/dist/consumption/ConsumptionIds.js.map +1 -1
  16. package/dist/modules/index.d.ts +0 -1
  17. package/dist/modules/index.d.ts.map +1 -1
  18. package/dist/modules/index.js +0 -1
  19. package/dist/modules/index.js.map +1 -1
  20. package/dist/modules/requests/events/index.d.ts +0 -1
  21. package/dist/modules/requests/events/index.d.ts.map +1 -1
  22. package/dist/modules/requests/events/index.js +0 -1
  23. package/dist/modules/requests/events/index.js.map +1 -1
  24. package/dist/modules/requests/index.d.ts +0 -3
  25. package/dist/modules/requests/index.d.ts.map +1 -1
  26. package/dist/modules/requests/index.js +0 -3
  27. package/dist/modules/requests/index.js.map +1 -1
  28. package/dist/modules/requests/outgoing/OutgoingRequestsController.d.ts.map +1 -1
  29. package/dist/modules/requests/outgoing/OutgoingRequestsController.js +1 -3
  30. package/dist/modules/requests/outgoing/OutgoingRequestsController.js.map +1 -1
  31. package/package.json +16 -38
  32. package/dist/modules/openid4vc/OpenId4VcController.d.ts +0 -36
  33. package/dist/modules/openid4vc/OpenId4VcController.d.ts.map +0 -1
  34. package/dist/modules/openid4vc/OpenId4VcController.js +0 -100
  35. package/dist/modules/openid4vc/OpenId4VcController.js.map +0 -1
  36. package/dist/modules/openid4vc/index.d.ts +0 -8
  37. package/dist/modules/openid4vc/index.d.ts.map +0 -1
  38. package/dist/modules/openid4vc/index.js +0 -24
  39. package/dist/modules/openid4vc/index.js.map +0 -1
  40. package/dist/modules/openid4vc/local/BaseAgent.d.ts +0 -17
  41. package/dist/modules/openid4vc/local/BaseAgent.d.ts.map +0 -1
  42. package/dist/modules/openid4vc/local/BaseAgent.js +0 -72
  43. package/dist/modules/openid4vc/local/BaseAgent.js.map +0 -1
  44. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.d.ts +0 -14
  45. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.d.ts.map +0 -1
  46. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.js +0 -29
  47. package/dist/modules/openid4vc/local/EnmeshedHolderFileSystem.js.map +0 -1
  48. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.d.ts +0 -33
  49. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.d.ts.map +0 -1
  50. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.js +0 -345
  51. package/dist/modules/openid4vc/local/EnmeshedHolderKeyManagmentService.js.map +0 -1
  52. package/dist/modules/openid4vc/local/EnmeshedStorageService.d.ts +0 -24
  53. package/dist/modules/openid4vc/local/EnmeshedStorageService.d.ts.map +0 -1
  54. package/dist/modules/openid4vc/local/EnmeshedStorageService.js +0 -138
  55. package/dist/modules/openid4vc/local/EnmeshedStorageService.js.map +0 -1
  56. package/dist/modules/openid4vc/local/Holder.d.ts +0 -43
  57. package/dist/modules/openid4vc/local/Holder.d.ts.map +0 -1
  58. package/dist/modules/openid4vc/local/Holder.js +0 -184
  59. package/dist/modules/openid4vc/local/Holder.js.map +0 -1
  60. package/dist/modules/openid4vc/local/KeyStorage.d.ts +0 -12
  61. package/dist/modules/openid4vc/local/KeyStorage.d.ts.map +0 -1
  62. package/dist/modules/openid4vc/local/KeyStorage.js +0 -67
  63. package/dist/modules/openid4vc/local/KeyStorage.js.map +0 -1
  64. package/dist/modules/openid4vc/local/OpenId4VciCredentialResponseJSON.d.ts +0 -7
  65. package/dist/modules/openid4vc/local/OpenId4VciCredentialResponseJSON.d.ts.map +0 -1
  66. package/dist/modules/openid4vc/local/OpenId4VciCredentialResponseJSON.js +0 -3
  67. package/dist/modules/openid4vc/local/OpenId4VciCredentialResponseJSON.js.map +0 -1
  68. package/dist/modules/openid4vc/local/RequestedCredentialCache.d.ts +0 -9
  69. package/dist/modules/openid4vc/local/RequestedCredentialCache.d.ts.map +0 -1
  70. package/dist/modules/openid4vc/local/RequestedCredentialCache.js +0 -57
  71. package/dist/modules/openid4vc/local/RequestedCredentialCache.js.map +0 -1
  72. package/dist/modules/requests/events/ShareCredentialOfferRequestItemProcessedByRecipientEvent.d.ts +0 -12
  73. package/dist/modules/requests/events/ShareCredentialOfferRequestItemProcessedByRecipientEvent.d.ts.map +0 -1
  74. package/dist/modules/requests/events/ShareCredentialOfferRequestItemProcessedByRecipientEvent.js +0 -12
  75. package/dist/modules/requests/events/ShareCredentialOfferRequestItemProcessedByRecipientEvent.js.map +0 -1
  76. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/AcceptShareAuthorizationRequestRequestItemParameters.d.ts +0 -11
  77. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/AcceptShareAuthorizationRequestRequestItemParameters.d.ts.map +0 -1
  78. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/AcceptShareAuthorizationRequestRequestItemParameters.js +0 -29
  79. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/AcceptShareAuthorizationRequestRequestItemParameters.js.map +0 -1
  80. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/ShareAuthorizationRequestRequestItemProcessor.d.ts +0 -12
  81. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/ShareAuthorizationRequestRequestItemProcessor.d.ts.map +0 -1
  82. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/ShareAuthorizationRequestRequestItemProcessor.js +0 -55
  83. package/dist/modules/requests/itemProcessors/shareAuthorizationRequest/ShareAuthorizationRequestRequestItemProcessor.js.map +0 -1
  84. package/dist/modules/requests/itemProcessors/shareCredentialOffer/ShareCredentialOfferRequestItemProcessor.d.ts +0 -14
  85. package/dist/modules/requests/itemProcessors/shareCredentialOffer/ShareCredentialOfferRequestItemProcessor.d.ts.map +0 -1
  86. package/dist/modules/requests/itemProcessors/shareCredentialOffer/ShareCredentialOfferRequestItemProcessor.js +0 -45
  87. package/dist/modules/requests/itemProcessors/shareCredentialOffer/ShareCredentialOfferRequestItemProcessor.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnmeshedStorageService.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/EnmeshedStorageService.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,UAAU,EACV,qBAAqB,EAIrB,KAAK,EACL,YAAY,EAEZ,cAAc,EAEjB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,qBACa,sBAAsB,CAAC,CAAC,SAAS,UAAU,CAAE,YAAW,cAAc,CAAC,CAAC,CAAC;IAG9E,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAClC,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,UAAU;IAJxB,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAwB;gBAEjC,iBAAiB,EAAE,iBAAiB,EACpC,mBAAmB,EAAE,oBAAoB,EACzC,UAAU,EAAE,UAAU;IAGpC,IAAI,CAAC,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IASrD,eAAe,CACxB,YAAY,EAAE,YAAY,EAC1B,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACnC,IAAI,EAAE,MAAM,EACZ,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAC3C,OAAO,CAAC,oBAAoB,CAAC;IAkBzB,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9D,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9D,UAAU,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3G,OAAO,CAAC,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;IAM9F,MAAM,CAAC,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAiBrG,OAAO,CAAC,0BAA0B;IAarB,WAAW,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,qBAAqB,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,YAAY,CAAC,EAAE,YAAY,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAoBvJ,OAAO,CAAC,YAAY;CAQvB;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,CAWtG"}
@@ -1,138 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.EnmeshedStorageService = void 0;
13
- exports.decodeRecord = decodeRecord;
14
- const core_1 = require("@credo-ts/core");
15
- const content_1 = require("@nmshd/content");
16
- const transport_1 = require("@nmshd/transport");
17
- const AttributesController_1 = require("../../attributes/AttributesController");
18
- const KeyStorage_1 = require("./KeyStorage");
19
- let EnmeshedStorageService = class EnmeshedStorageService {
20
- constructor(accountController, attributeController, keyStorage) {
21
- this.accountController = accountController;
22
- this.attributeController = attributeController;
23
- this.keyStorage = keyStorage;
24
- this.storage = new Map();
25
- }
26
- save(_agentContext, record) {
27
- if (record.id !== "STORAGE_VERSION_RECORD_ID" && record.type !== "DidRecord") {
28
- throw new Error("Only storage of STORAGE_VERSION_RECORD_ID and DidRecord implemented because others previously not needed");
29
- }
30
- this.storage.set(record.id, record);
31
- return Promise.resolve();
32
- }
33
- async saveWithDisplay(agentContext, value, type, displayInformation) {
34
- const owner = this.accountController.identity.address;
35
- const identityAttribute = content_1.IdentityAttribute.from({
36
- value: {
37
- "@type": "VerifiableCredential",
38
- value: value,
39
- type: type,
40
- displayInformation: displayInformation
41
- },
42
- owner: owner
43
- });
44
- const result = await this.attributeController.createOwnIdentityAttribute({
45
- content: identityAttribute
46
- });
47
- agentContext.config.logger.debug(`Saved record: ${JSON.stringify(result)}`);
48
- return await Promise.resolve(result);
49
- }
50
- update(_agentContext, _record) {
51
- throw new Error("Storage update not implemented because previously not needed");
52
- }
53
- delete(_agentContext, _record) {
54
- throw new Error("Storage delete not implemented because previously not needed");
55
- }
56
- deleteById(_agentContext, _recordClass, _id) {
57
- throw new Error("Storage delete not implemented because previously not needed");
58
- }
59
- getById(_agentContext, _recordClass, id) {
60
- const record = this.storage.get(id);
61
- if (!record)
62
- throw new Error(`Record with id ${id} not found`);
63
- return Promise.resolve(record);
64
- }
65
- async getAll(_agentContext, recordClass) {
66
- // so far only encountered in the credential context
67
- const recordType = recordClass.type;
68
- const correspondingCredentialType = this.recordTypeToCredentialType(recordType);
69
- const attributes = await this.attributeController.getLocalAttributes({
70
- "@type": "OwnIdentityAttribute",
71
- "content.value.@type": "VerifiableCredential",
72
- "content.value.type": correspondingCredentialType
73
- });
74
- return attributes.map((attribute) => {
75
- const attributeValue = attribute.content.value;
76
- return decodeRecord(correspondingCredentialType, attributeValue.value);
77
- });
78
- }
79
- recordTypeToCredentialType(recordType) {
80
- switch (recordType) {
81
- case core_1.SdJwtVcRecord.name:
82
- return core_1.ClaimFormat.SdJwtDc;
83
- case core_1.MdocRecord.name:
84
- return core_1.ClaimFormat.MsoMdoc;
85
- case core_1.W3cCredentialRecord.name:
86
- return core_1.ClaimFormat.SdJwtW3cVc;
87
- default:
88
- throw new Error("Record type not supported.");
89
- }
90
- }
91
- async findByQuery(agentContext, recordClass, query, queryOptions) {
92
- // so far only encountered in the credential context
93
- agentContext.config.logger.debug(`Finding records by query ${JSON.stringify(query)} and options ${JSON.stringify(queryOptions)}`);
94
- const records = [];
95
- for (const record of await this.getAll(agentContext, recordClass)) {
96
- if (this.matchesQuery(record, query)) {
97
- records.push(record);
98
- }
99
- }
100
- if (records.length === 0) {
101
- // try to recover over local storage - temporary fix
102
- for (const record of this.storage.values()) {
103
- if (this.matchesQuery(record, query)) {
104
- records.push(record);
105
- }
106
- }
107
- }
108
- return records;
109
- }
110
- matchesQuery(record, query) {
111
- return Object.entries(query).every(([key, value]) => {
112
- if (key === "$or") {
113
- return value.some((subquery) => this.matchesQuery(record, subquery));
114
- }
115
- return record.getTags()[key] === value;
116
- });
117
- }
118
- };
119
- exports.EnmeshedStorageService = EnmeshedStorageService;
120
- exports.EnmeshedStorageService = EnmeshedStorageService = __decorate([
121
- (0, core_1.injectable)(),
122
- __metadata("design:paramtypes", [transport_1.AccountController,
123
- AttributesController_1.AttributesController,
124
- KeyStorage_1.KeyStorage])
125
- ], EnmeshedStorageService);
126
- function decodeRecord(type, encoded) {
127
- switch (type) {
128
- case core_1.ClaimFormat.SdJwtDc:
129
- return new core_1.SdJwtVcRecord({ credentialInstances: [{ compactSdJwtVc: encoded }] });
130
- case core_1.ClaimFormat.MsoMdoc:
131
- return new core_1.MdocRecord({ credentialInstances: [{ issuerSignedBase64Url: encoded }] });
132
- case core_1.ClaimFormat.SdJwtW3cVc:
133
- return new core_1.W3cCredentialRecord({ credentialInstances: [{ credential: encoded }] });
134
- default:
135
- throw new Error("Credential type not supported.");
136
- }
137
- }
138
- //# sourceMappingURL=EnmeshedStorageService.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"EnmeshedStorageService.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/EnmeshedStorageService.ts"],"names":[],"mappings":"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"}
@@ -1,43 +0,0 @@
1
- import { X509Module } from "@credo-ts/core";
2
- import { OpenId4VciCredentialResponse, OpenId4VcModule, type OpenId4VciResolvedCredentialOffer, type OpenId4VpResolvedAuthorizationRequest } from "@credo-ts/openid4vc";
3
- import { TokenContentVerifiablePresentation, VerifiableCredential } from "@nmshd/content";
4
- import { AccountController } from "@nmshd/transport";
5
- import { AttributesController, OwnIdentityAttribute } from "../../attributes";
6
- import { BaseAgent } from "./BaseAgent";
7
- import { KeyStorage } from "./KeyStorage";
8
- import { OpenId4VciCredentialResponseJSON } from "./OpenId4VciCredentialResponseJSON";
9
- declare function getOpenIdHolderModules(): {
10
- readonly openid4vc: OpenId4VcModule<null, null>;
11
- readonly x509: X509Module;
12
- };
13
- export declare class Holder extends BaseAgent<ReturnType<typeof getOpenIdHolderModules>> {
14
- client: {
15
- clientId: string;
16
- redirectUri: string;
17
- };
18
- constructor(keyStorage: KeyStorage, accountController: AccountController, attributeController: AttributesController, fetchInstance: typeof fetch);
19
- resolveCredentialOffer(credentialOffer: string): Promise<OpenId4VciResolvedCredentialOffer>;
20
- requestCredentials(resolvedCredentialOffer: OpenId4VciResolvedCredentialOffer, credentialConfigurationIds: string[], access: {
21
- accessToken: string;
22
- } | {
23
- pinCode?: string;
24
- }): Promise<OpenId4VciCredentialResponse[]>;
25
- storeCredentials(credentialResponses: OpenId4VciCredentialResponseJSON[]): Promise<OwnIdentityAttribute[]>;
26
- resolveAuthorizationRequest(request: string): Promise<OpenId4VpResolvedAuthorizationRequest>;
27
- acceptAuthorizationRequest(resolvedAuthorizationRequest: OpenId4VpResolvedAuthorizationRequest, credential: OwnIdentityAttribute): Promise<{
28
- readonly status: number;
29
- readonly body: string | Record<string, unknown> | null;
30
- } | {
31
- readonly status: number;
32
- readonly body: Record<string, unknown>;
33
- } | undefined>;
34
- createPresentationTokenContent(credential: VerifiableCredential, nonce: string): Promise<TokenContentVerifiablePresentation>;
35
- verifyPresentationTokenContent(tokenContent: TokenContentVerifiablePresentation, expectedNonce: string): Promise<{
36
- isValid: boolean;
37
- error?: Error;
38
- }>;
39
- exit(): Promise<void>;
40
- restart(): Promise<void>;
41
- }
42
- export {};
43
- //# sourceMappingURL=Holder.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Holder.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/Holder.ts"],"names":[],"mappings":"AAAA,OAAO,EAYH,UAAU,EACb,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,4BAA4B,EAAE,eAAe,EAAE,KAAK,iCAAiC,EAAE,KAAK,qCAAqC,EAAE,MAAM,qBAAqB,CAAC;AACxK,OAAO,EAAE,kCAAkC,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC1F,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAEtF,iBAAS,sBAAsB;;;EAW9B;AAED,qBAAa,MAAO,SAAQ,SAAS,CAAC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC;IACrE,MAAM;;;MAGX;gBAEiB,UAAU,EAAE,UAAU,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,aAAa,EAAE,OAAO,KAAK;IAI1I,sBAAsB,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,iCAAiC,CAAC;IAI3F,kBAAkB,CAC3B,uBAAuB,EAAE,iCAAiC,EAC1D,0BAA0B,EAAE,MAAM,EAAE,EACpC,MAAM,EAAE;QAAE,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,GACvD,OAAO,CAAC,4BAA4B,EAAE,CAAC;IAkE7B,gBAAgB,CAAC,mBAAmB,EAAE,gCAAgC,EAAE,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAsB1G,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,qCAAqC,CAAC;IAK5F,0BAA0B,CACnC,4BAA4B,EAAE,qCAAqC,EACnE,UAAU,EAAE,oBAAoB,GACjC,OAAO,CACJ;QACI,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;KAC1D,GACD;QACI,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAC1C,GACD,SAAS,CACd;IA8CY,8BAA8B,CAAC,UAAU,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,kCAAkC,CAAC;IAoB5H,8BAA8B,CAAC,YAAY,EAAE,kCAAkC,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,CAAC;IAerJ,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAGxC"}
@@ -1,184 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Holder = void 0;
4
- const core_1 = require("@credo-ts/core");
5
- const openid4vc_1 = require("@credo-ts/openid4vc");
6
- const content_1 = require("@nmshd/content");
7
- const BaseAgent_1 = require("./BaseAgent");
8
- const EnmeshedStorageService_1 = require("./EnmeshedStorageService");
9
- function getOpenIdHolderModules() {
10
- return {
11
- openid4vc: new openid4vc_1.OpenId4VcModule(),
12
- x509: new core_1.X509Module({
13
- getTrustedCertificatesForVerification: (_agentContext, { certificateChain, verification }) => {
14
- // eslint-disable-next-line no-console
15
- console.log(`dynamically trusting certificate ${certificateChain[0].getIssuerNameField("C")} for verification of ${verification.type}`);
16
- return [certificateChain[0].toString("pem")];
17
- }
18
- })
19
- };
20
- }
21
- class Holder extends BaseAgent_1.BaseAgent {
22
- constructor(keyStorage, accountController, attributeController, fetchInstance) {
23
- super(keyStorage, getOpenIdHolderModules(), accountController, attributeController, fetchInstance);
24
- this.client = {
25
- clientId: "wallet",
26
- redirectUri: "http://localhost:3000/redirect"
27
- };
28
- }
29
- async resolveCredentialOffer(credentialOffer) {
30
- return await this.agent.openid4vc.holder.resolveCredentialOffer(credentialOffer);
31
- }
32
- async requestCredentials(resolvedCredentialOffer, credentialConfigurationIds, access) {
33
- const tokenResponse = "accessToken" in access
34
- ? {
35
- accessToken: access.accessToken,
36
- accessTokenResponse: {
37
- // eslint-disable-next-line @typescript-eslint/naming-convention
38
- access_token: access.accessToken,
39
- // eslint-disable-next-line @typescript-eslint/naming-convention
40
- token_type: "bearer"
41
- }
42
- }
43
- : await this.agent.openid4vc.holder.requestToken({ resolvedCredentialOffer, txCode: access.pinCode });
44
- const credentialResponse = await this.agent.openid4vc.holder.requestCredentials({
45
- resolvedCredentialOffer,
46
- credentialConfigurationIds: credentialConfigurationIds,
47
- credentialBindingResolver: async ({ supportedDidMethods, supportsAllDidMethods, proofTypes }) => {
48
- const key = await this.agent.kms.createKeyForSignatureAlgorithm({
49
- algorithm: proofTypes.jwt?.supportedSignatureAlgorithms[0] ?? "EdDSA"
50
- });
51
- const publicJwk = core_1.Kms.PublicJwk.fromPublicJwk(key.publicJwk);
52
- if (supportsAllDidMethods || supportedDidMethods?.includes("did:key")) {
53
- await this.agent.dids.create({
54
- method: "key",
55
- options: {
56
- keyId: key.keyId
57
- }
58
- });
59
- const didKey = new core_1.DidKey(publicJwk);
60
- return {
61
- method: "did",
62
- didUrls: [`${didKey.did}#${didKey.publicJwk.fingerprint}`]
63
- };
64
- }
65
- if (supportedDidMethods?.includes("did:jwk")) {
66
- const didJwk = core_1.DidJwk.fromPublicJwk(publicJwk);
67
- await this.agent.dids.create({
68
- method: "jwk",
69
- options: {
70
- keyId: key.keyId
71
- }
72
- });
73
- return {
74
- method: "did",
75
- didUrls: [`${didJwk.did}#0`]
76
- };
77
- }
78
- // We fall back on jwk binding
79
- return {
80
- method: "jwk",
81
- keys: [publicJwk]
82
- };
83
- },
84
- ...tokenResponse
85
- });
86
- this.agent.config.logger.info("Credential response:", credentialResponse);
87
- return credentialResponse.credentials;
88
- }
89
- async storeCredentials(credentialResponses) {
90
- const storedCredentials = await Promise.all(credentialResponses.map((credentialResponse) => {
91
- if (![core_1.ClaimFormat.SdJwtW3cVc, core_1.ClaimFormat.SdJwtDc, core_1.ClaimFormat.MsoMdoc].includes(credentialResponse.claimFormat)) {
92
- throw new Error("Unsupported credential format");
93
- }
94
- const enmeshedStorageService = this.agent.dependencyManager.resolve(core_1.InjectionSymbols.StorageService);
95
- return enmeshedStorageService.saveWithDisplay(this.agent.context, credentialResponse.encoded, credentialResponse.claimFormat, credentialResponse.displayInformation);
96
- }));
97
- this.agent.config.logger.info(`Stored credentials: ${JSON.stringify(storedCredentials)}`);
98
- return storedCredentials;
99
- }
100
- async resolveAuthorizationRequest(request) {
101
- const resolvedRequest = await this.agent.openid4vc.holder.resolveOpenId4VpAuthorizationRequest(request);
102
- return resolvedRequest;
103
- }
104
- async acceptAuthorizationRequest(resolvedAuthorizationRequest, credential) {
105
- if (!resolvedAuthorizationRequest.presentationExchange && !resolvedAuthorizationRequest.dcql) {
106
- throw new Error("Missing presentation exchange or dcql on resolved authorization request");
107
- }
108
- const credentialContent = credential.content.value;
109
- const credentialRecord = (0, EnmeshedStorageService_1.decodeRecord)(credentialContent.type, credentialContent.value);
110
- let credentialForPex;
111
- if (resolvedAuthorizationRequest.presentationExchange) {
112
- const inputDescriptor = resolvedAuthorizationRequest.presentationExchange.credentialsForRequest.requirements[0].submissionEntry[0].inputDescriptorId;
113
- credentialForPex = {
114
- [inputDescriptor]: [
115
- {
116
- credentialRecord,
117
- claimFormat: credentialContent.type,
118
- disclosedPayload: {} // TODO: implement SD properly
119
- }
120
- ]
121
- };
122
- }
123
- let credentialForDcql;
124
- if (resolvedAuthorizationRequest.dcql) {
125
- const queryId = resolvedAuthorizationRequest.dcql.queryResult.credentials[0].id;
126
- credentialForDcql = {
127
- [queryId]: [
128
- {
129
- credentialRecord,
130
- claimFormat: credentialContent.type,
131
- disclosedPayload: {} // TODO: implement SD properly
132
- }
133
- ]
134
- };
135
- }
136
- const submissionResult = await this.agent.openid4vc.holder.acceptOpenId4VpAuthorizationRequest({
137
- authorizationRequestPayload: resolvedAuthorizationRequest.authorizationRequestPayload,
138
- presentationExchange: credentialForPex ? { credentials: credentialForPex } : undefined,
139
- dcql: credentialForDcql ? { credentials: credentialForDcql } : undefined
140
- });
141
- return submissionResult.serverResponse;
142
- }
143
- // hacky solution because credo doesn't support credentials without key binding
144
- // TODO: use credentials without key binding once supported
145
- async createPresentationTokenContent(credential, nonce) {
146
- if (credential.type !== core_1.ClaimFormat.SdJwtDc)
147
- throw new Error("Only SD-JWT credentials are supported for token presentation");
148
- const sdJwtVcApi = this.agent.dependencyManager.resolve(core_1.SdJwtVcApi);
149
- const presentation = await sdJwtVcApi.present({
150
- sdJwtVc: sdJwtVcApi.fromCompact(credential.value),
151
- verifierMetadata: {
152
- audience: "defaultPresentationAudience",
153
- issuedAt: Date.now() / 1000,
154
- nonce
155
- }
156
- });
157
- return content_1.TokenContentVerifiablePresentation.from({
158
- value: presentation,
159
- type: credential.type,
160
- displayInformation: credential.displayInformation
161
- });
162
- }
163
- async verifyPresentationTokenContent(tokenContent, expectedNonce) {
164
- if (tokenContent.type !== core_1.ClaimFormat.SdJwtDc)
165
- throw new Error("Only SD-JWT credentials are supported for token presentation");
166
- const sdJwtVcApi = this.agent.dependencyManager.resolve(core_1.SdJwtVcApi);
167
- const verificationResult = await sdJwtVcApi.verify({
168
- compactSdJwtVc: tokenContent.value,
169
- keyBinding: {
170
- audience: "defaultPresentationAudience",
171
- nonce: expectedNonce
172
- }
173
- });
174
- return { isValid: verificationResult.isValid, error: "error" in verificationResult ? verificationResult.error : undefined };
175
- }
176
- async exit() {
177
- await this.shutdown();
178
- }
179
- async restart() {
180
- await this.shutdown();
181
- }
182
- }
183
- exports.Holder = Holder;
184
- //# sourceMappingURL=Holder.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Holder.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/Holder.ts"],"names":[],"mappings":"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"}
@@ -1,12 +0,0 @@
1
- import { ILogger } from "@js-soft/logging-abstractions";
2
- import { SynchronizedCollection } from "@nmshd/transport";
3
- export declare class KeyStorage {
4
- private readonly collection;
5
- private readonly logger;
6
- constructor(collection: SynchronizedCollection, logger: ILogger);
7
- hasKey(keyId: string): Promise<boolean>;
8
- storeKey(keyId: string, keyData: any): Promise<void>;
9
- getKey(keyId: string): Promise<any | undefined>;
10
- deleteKey(keyId: string): Promise<void>;
11
- }
12
- //# sourceMappingURL=KeyStorage.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeyStorage.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/KeyStorage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,+BAA+B,CAAC;AAGxD,OAAO,EAA2C,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAmBnG,qBAAa,UAAU;IAEf,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM;gBADN,UAAU,EAAE,sBAAsB,EAClC,MAAM,EAAE,OAAO;IAGvB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKvC,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAUpD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,GAAG,SAAS,CAAC;IAW/C,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CASvD"}
@@ -1,67 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.KeyStorage = void 0;
13
- const ts_serval_1 = require("@js-soft/ts-serval");
14
- const core_types_1 = require("@nmshd/core-types");
15
- const transport_1 = require("@nmshd/transport");
16
- const ts_simple_nameof_1 = require("ts-simple-nameof");
17
- class KeyStorageEntry extends transport_1.CoreSynchronizable {
18
- constructor() {
19
- super(...arguments);
20
- this.technicalProperties = [(0, ts_simple_nameof_1.nameof)((r) => r.key)];
21
- }
22
- static from(entry) {
23
- return this.fromAny(entry);
24
- }
25
- }
26
- __decorate([
27
- (0, ts_serval_1.serialize)({ any: true }),
28
- (0, ts_serval_1.validate)(),
29
- __metadata("design:type", Object)
30
- ], KeyStorageEntry.prototype, "key", void 0);
31
- class KeyStorage {
32
- constructor(collection, logger) {
33
- this.collection = collection;
34
- this.logger = logger;
35
- }
36
- async hasKey(keyId) {
37
- const entry = await this.collection.read(keyId);
38
- return !!entry;
39
- }
40
- async storeKey(keyId, keyData) {
41
- const entry = await this.collection.read(keyId);
42
- if (entry) {
43
- this.logger.info(`Key with id ${keyId} already exists`);
44
- return;
45
- }
46
- await this.collection.create(KeyStorageEntry.from({ id: core_types_1.CoreId.from(keyId), key: keyData }));
47
- }
48
- async getKey(keyId) {
49
- const entry = await this.collection.read(keyId);
50
- if (!entry) {
51
- this.logger.warn(`Key with id ${keyId} not found`);
52
- return undefined;
53
- }
54
- const parsed = KeyStorageEntry.from(entry);
55
- return parsed.key;
56
- }
57
- async deleteKey(keyId) {
58
- const entry = await this.collection.read(keyId);
59
- if (!entry) {
60
- this.logger.warn(`Key with id ${keyId} not found, cannot delete`);
61
- return;
62
- }
63
- await this.collection.delete(KeyStorageEntry.from(entry));
64
- }
65
- }
66
- exports.KeyStorage = KeyStorage;
67
- //# sourceMappingURL=KeyStorage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"KeyStorage.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/KeyStorage.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,kDAAyD;AACzD,kDAA2C;AAC3C,gDAAmG;AACnG,uDAA0C;AAM1C,MAAM,eAAgB,SAAQ,8BAAkB;IAAhD;;QACoB,wBAAmB,GAAa,CAAC,IAAA,yBAAM,EAAkB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAS5F,CAAC;IAHU,MAAM,CAAC,IAAI,CAAC,KAAuB;QACtC,OAAO,IAAI,CAAC,OAAO,CAAkB,KAAK,CAAC,CAAC;IAChD,CAAC;CACJ;AALU;IAFN,IAAA,qBAAS,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,oBAAQ,GAAE;;4CACK;AAOpB,MAAa,UAAU;IACnB,YACqB,UAAkC,EAClC,MAAe;QADf,eAAU,GAAV,UAAU,CAAwB;QAClC,WAAM,GAAN,MAAM,CAAS;IACjC,CAAC;IAEG,KAAK,CAAC,MAAM,CAAC,KAAa;QAC7B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,CAAC,CAAC,KAAK,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,QAAQ,CAAC,KAAa,EAAE,OAAY;QAC7C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,iBAAiB,CAAC,CAAC;YACxD,OAAO;QACX,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,mBAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;IACjG,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,KAAa;QAC7B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,YAAY,CAAC,CAAC;YACnD,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,OAAO,MAAM,CAAC,GAAG,CAAC;IACtB,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,KAAa;QAChC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChD,IAAI,CAAC,KAAK,EAAE,CAAC;YACT,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,KAAK,2BAA2B,CAAC,CAAC;YAClE,OAAO;QACX,CAAC;QAED,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC9D,CAAC;CACJ;AAzCD,gCAyCC"}
@@ -1,7 +0,0 @@
1
- import { ClaimFormat, W3cJsonCredential } from "@credo-ts/core";
2
- export interface OpenId4VciCredentialResponseJSON {
3
- claimFormat: ClaimFormat;
4
- encoded: string | W3cJsonCredential;
5
- displayInformation?: Record<string, any>[];
6
- }
7
- //# sourceMappingURL=OpenId4VciCredentialResponseJSON.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OpenId4VciCredentialResponseJSON.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/OpenId4VciCredentialResponseJSON.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,WAAW,gCAAgC;IAC7C,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAAC;IACpC,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;CAC9C"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=OpenId4VciCredentialResponseJSON.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"OpenId4VciCredentialResponseJSON.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/OpenId4VciCredentialResponseJSON.ts"],"names":[],"mappings":""}
@@ -1,9 +0,0 @@
1
- import { SynchronizedCollection } from "@nmshd/transport";
2
- import { OpenId4VciCredentialResponseJSON } from "./OpenId4VciCredentialResponseJSON";
3
- export declare class RequestedCredentialCache {
4
- private readonly collection;
5
- constructor(collection: SynchronizedCollection);
6
- get(credentialOfferUrl: string): Promise<OpenId4VciCredentialResponseJSON[] | undefined>;
7
- set(credentialOfferUrl: string, credentialResponses: OpenId4VciCredentialResponseJSON[]): Promise<void>;
8
- }
9
- //# sourceMappingURL=RequestedCredentialCache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RequestedCredentialCache.d.ts","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/RequestedCredentialCache.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAG9E,OAAO,EAAE,gCAAgC,EAAE,MAAM,oCAAoC,CAAC;AAyBtF,qBAAa,wBAAwB;IACd,OAAO,CAAC,QAAQ,CAAC,UAAU;gBAAV,UAAU,EAAE,sBAAsB;IAEzD,GAAG,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO,CAAC,gCAAgC,EAAE,GAAG,SAAS,CAAC;IAKxF,GAAG,CAAC,kBAAkB,EAAE,MAAM,EAAE,mBAAmB,EAAE,gCAAgC,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAIvH"}
@@ -1,57 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.RequestedCredentialCache = void 0;
13
- const ts_serval_1 = require("@js-soft/ts-serval");
14
- const transport_1 = require("@nmshd/transport");
15
- const ts_simple_nameof_1 = require("ts-simple-nameof");
16
- const ConsumptionIds_1 = require("../../../consumption/ConsumptionIds");
17
- class RequestedCredentialCacheEntry extends transport_1.CoreSynchronizable {
18
- constructor() {
19
- super(...arguments);
20
- this.technicalProperties = [
21
- (0, ts_simple_nameof_1.nameof)((r) => r.credentialOfferUrl),
22
- (0, ts_simple_nameof_1.nameof)((r) => r.credentialResponses)
23
- ];
24
- }
25
- static create(id, credentialOfferUrl, credentialResponses) {
26
- return this.fromAny({
27
- id: id,
28
- credentialOfferUrl: credentialOfferUrl,
29
- credentialResponses
30
- });
31
- }
32
- }
33
- __decorate([
34
- (0, ts_serval_1.serialize)(),
35
- (0, ts_serval_1.validate)(),
36
- __metadata("design:type", String)
37
- ], RequestedCredentialCacheEntry.prototype, "credentialOfferUrl", void 0);
38
- __decorate([
39
- (0, ts_serval_1.serialize)({ any: true }),
40
- (0, ts_serval_1.validate)(),
41
- __metadata("design:type", Array)
42
- ], RequestedCredentialCacheEntry.prototype, "credentialResponses", void 0);
43
- class RequestedCredentialCache {
44
- constructor(collection) {
45
- this.collection = collection;
46
- }
47
- async get(credentialOfferUrl) {
48
- const doc = await this.collection.findOne({ credentialOfferUrl: credentialOfferUrl });
49
- return doc ? RequestedCredentialCacheEntry.fromAny(doc).credentialResponses : undefined;
50
- }
51
- async set(credentialOfferUrl, credentialResponses) {
52
- const id = await ConsumptionIds_1.ConsumptionIds.requestedCredentialCacheEntry.generate();
53
- await this.collection.create(RequestedCredentialCacheEntry.create(id, credentialOfferUrl, credentialResponses));
54
- }
55
- }
56
- exports.RequestedCredentialCache = RequestedCredentialCache;
57
- //# sourceMappingURL=RequestedCredentialCache.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"RequestedCredentialCache.js","sourceRoot":"","sources":["../../../../src/modules/openid4vc/local/RequestedCredentialCache.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAAyD;AAEzD,gDAA8E;AAC9E,uDAA0C;AAC1C,wEAAqE;AAGrE,MAAM,6BAA8B,SAAQ,8BAAkB;IAA9D;;QACoB,wBAAmB,GAAa;YAC5C,IAAA,yBAAM,EAAgC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC;YAClE,IAAA,yBAAM,EAAgC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;SACtE,CAAC;IAiBN,CAAC;IAPU,MAAM,CAAC,MAAM,CAAC,EAAU,EAAE,kBAA0B,EAAE,mBAAuD;QAChH,OAAO,IAAI,CAAC,OAAO,CAAgC;YAC/C,EAAE,EAAE,EAAE;YACN,kBAAkB,EAAE,kBAAkB;YACtC,mBAAmB;SACtB,CAAC,CAAC;IACP,CAAC;CACJ;AAbU;IAFN,IAAA,qBAAS,GAAE;IACX,IAAA,oBAAQ,GAAE;;yEACuB;AAI3B;IAFN,IAAA,qBAAS,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;IACxB,IAAA,oBAAQ,GAAE;;0EACoD;AAWnE,MAAa,wBAAwB;IACjC,YAAoC,UAAkC;QAAlC,eAAU,GAAV,UAAU,CAAwB;IAAG,CAAC;IAEnE,KAAK,CAAC,GAAG,CAAC,kBAA0B;QACvC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAC,CAAC;QACtF,OAAO,GAAG,CAAC,CAAC,CAAC,6BAA6B,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5F,CAAC;IAEM,KAAK,CAAC,GAAG,CAAC,kBAA0B,EAAE,mBAAuD;QAChG,MAAM,EAAE,GAAG,MAAM,+BAAc,CAAC,6BAA6B,CAAC,QAAQ,EAAE,CAAC;QACzE,MAAM,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,6BAA6B,CAAC,MAAM,CAAC,EAAE,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,CAAC;IACpH,CAAC;CACJ;AAZD,4DAYC"}
@@ -1,12 +0,0 @@
1
- import { CoreAddress } from "@nmshd/core-types";
2
- import { TransportDataEvent } from "@nmshd/transport";
3
- export interface ShareCredentialOfferRequestItemProcessedByRecipientEventData {
4
- credentialOfferUrl: string;
5
- accepted: boolean;
6
- peer: CoreAddress;
7
- }
8
- export declare class ShareCredentialOfferRequestItemProcessedByRecipientEvent extends TransportDataEvent<ShareCredentialOfferRequestItemProcessedByRecipientEventData> {
9
- static readonly namespace = "consumption.shareCredentialOfferRequestItemProcessedByRecipient";
10
- constructor(eventTargetAddress: string, data: ShareCredentialOfferRequestItemProcessedByRecipientEventData);
11
- }
12
- //# sourceMappingURL=ShareCredentialOfferRequestItemProcessedByRecipientEvent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShareCredentialOfferRequestItemProcessedByRecipientEvent.d.ts","sourceRoot":"","sources":["../../../../src/modules/requests/events/ShareCredentialOfferRequestItemProcessedByRecipientEvent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAEtD,MAAM,WAAW,4DAA4D;IACzE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,WAAW,CAAC;CACrB;AAED,qBAAa,wDAAyD,SAAQ,kBAAkB,CAAC,4DAA4D,CAAC;IAC1J,gBAAuB,SAAS,qEAAqE;gBAElF,kBAAkB,EAAE,MAAM,EAAE,IAAI,EAAE,4DAA4D;CAGpH"}
@@ -1,12 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ShareCredentialOfferRequestItemProcessedByRecipientEvent = void 0;
4
- const transport_1 = require("@nmshd/transport");
5
- class ShareCredentialOfferRequestItemProcessedByRecipientEvent extends transport_1.TransportDataEvent {
6
- static { this.namespace = "consumption.shareCredentialOfferRequestItemProcessedByRecipient"; }
7
- constructor(eventTargetAddress, data) {
8
- super(ShareCredentialOfferRequestItemProcessedByRecipientEvent.namespace, eventTargetAddress, data);
9
- }
10
- }
11
- exports.ShareCredentialOfferRequestItemProcessedByRecipientEvent = ShareCredentialOfferRequestItemProcessedByRecipientEvent;
12
- //# sourceMappingURL=ShareCredentialOfferRequestItemProcessedByRecipientEvent.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ShareCredentialOfferRequestItemProcessedByRecipientEvent.js","sourceRoot":"","sources":["../../../../src/modules/requests/events/ShareCredentialOfferRequestItemProcessedByRecipientEvent.ts"],"names":[],"mappings":";;;AACA,gDAAsD;AAQtD,MAAa,wDAAyD,SAAQ,8BAAgF;aACnI,cAAS,GAAG,iEAAiE,CAAC;IAErG,YAAmB,kBAA0B,EAAE,IAAkE;QAC7G,KAAK,CAAC,wDAAwD,CAAC,SAAS,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACxG,CAAC;;AALL,4HAMC"}