@ajna-inc/openbadges 0.1.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 (224) hide show
  1. package/LICENSE +202 -0
  2. package/build/OpenBadgesModule.d.ts +10 -0
  3. package/build/OpenBadgesModule.js +75 -0
  4. package/build/OpenBadgesModule.js.map +1 -0
  5. package/build/OpenBadgesModuleConfig.d.ts +96 -0
  6. package/build/OpenBadgesModuleConfig.js +50 -0
  7. package/build/OpenBadgesModuleConfig.js.map +1 -0
  8. package/build/api/OpenBadgesApi.d.ts +48 -0
  9. package/build/api/OpenBadgesApi.js +81 -0
  10. package/build/api/OpenBadgesApi.js.map +1 -0
  11. package/build/api/index.d.ts +1 -0
  12. package/build/api/index.js +18 -0
  13. package/build/api/index.js.map +1 -0
  14. package/build/constants.d.ts +12 -0
  15. package/build/constants.js +27 -0
  16. package/build/constants.js.map +1 -0
  17. package/build/cryptosuites/EcdsaSd2023.d.ts +143 -0
  18. package/build/cryptosuites/EcdsaSd2023.js +518 -0
  19. package/build/cryptosuites/EcdsaSd2023.js.map +1 -0
  20. package/build/cryptosuites/EddsaRdfc2022.d.ts +112 -0
  21. package/build/cryptosuites/EddsaRdfc2022.js +356 -0
  22. package/build/cryptosuites/EddsaRdfc2022.js.map +1 -0
  23. package/build/cryptosuites/constants.d.ts +14 -0
  24. package/build/cryptosuites/constants.js +22 -0
  25. package/build/cryptosuites/constants.js.map +1 -0
  26. package/build/cryptosuites/contextPreprocessor.d.ts +24 -0
  27. package/build/cryptosuites/contextPreprocessor.js +127 -0
  28. package/build/cryptosuites/contextPreprocessor.js.map +1 -0
  29. package/build/cryptosuites/dataIntegrityV2Context.d.ts +144 -0
  30. package/build/cryptosuites/dataIntegrityV2Context.js +86 -0
  31. package/build/cryptosuites/dataIntegrityV2Context.js.map +1 -0
  32. package/build/cryptosuites/index.d.ts +11 -0
  33. package/build/cryptosuites/index.js +33 -0
  34. package/build/cryptosuites/index.js.map +1 -0
  35. package/build/http/OpenBadgesHttpModule.d.ts +9 -0
  36. package/build/http/OpenBadgesHttpModule.js +120 -0
  37. package/build/http/OpenBadgesHttpModule.js.map +1 -0
  38. package/build/http/OpenBadgesHttpModuleConfig.d.ts +55 -0
  39. package/build/http/OpenBadgesHttpModuleConfig.js +78 -0
  40. package/build/http/OpenBadgesHttpModuleConfig.js.map +1 -0
  41. package/build/http/endpoints/authorize.d.ts +3 -0
  42. package/build/http/endpoints/authorize.js +79 -0
  43. package/build/http/endpoints/authorize.js.map +1 -0
  44. package/build/http/endpoints/consent.d.ts +3 -0
  45. package/build/http/endpoints/consent.js +25 -0
  46. package/build/http/endpoints/consent.js.map +1 -0
  47. package/build/http/endpoints/credentials.d.ts +4 -0
  48. package/build/http/endpoints/credentials.js +85 -0
  49. package/build/http/endpoints/credentials.js.map +1 -0
  50. package/build/http/endpoints/did.d.ts +3 -0
  51. package/build/http/endpoints/did.js +48 -0
  52. package/build/http/endpoints/did.js.map +1 -0
  53. package/build/http/endpoints/introspect.d.ts +3 -0
  54. package/build/http/endpoints/introspect.js +37 -0
  55. package/build/http/endpoints/introspect.js.map +1 -0
  56. package/build/http/endpoints/jwks.d.ts +3 -0
  57. package/build/http/endpoints/jwks.js +46 -0
  58. package/build/http/endpoints/jwks.js.map +1 -0
  59. package/build/http/endpoints/profile.d.ts +4 -0
  60. package/build/http/endpoints/profile.js +58 -0
  61. package/build/http/endpoints/profile.js.map +1 -0
  62. package/build/http/endpoints/refresh.d.ts +15 -0
  63. package/build/http/endpoints/refresh.js +134 -0
  64. package/build/http/endpoints/refresh.js.map +1 -0
  65. package/build/http/endpoints/registration.d.ts +3 -0
  66. package/build/http/endpoints/registration.js +42 -0
  67. package/build/http/endpoints/registration.js.map +1 -0
  68. package/build/http/endpoints/revoke.d.ts +3 -0
  69. package/build/http/endpoints/revoke.js +38 -0
  70. package/build/http/endpoints/revoke.js.map +1 -0
  71. package/build/http/endpoints/serviceDescription.d.ts +3 -0
  72. package/build/http/endpoints/serviceDescription.js +52 -0
  73. package/build/http/endpoints/serviceDescription.js.map +1 -0
  74. package/build/http/endpoints/statusList.d.ts +10 -0
  75. package/build/http/endpoints/statusList.js +95 -0
  76. package/build/http/endpoints/statusList.js.map +1 -0
  77. package/build/http/endpoints/token.d.ts +3 -0
  78. package/build/http/endpoints/token.js +147 -0
  79. package/build/http/endpoints/token.js.map +1 -0
  80. package/build/http/middleware/auth.d.ts +5 -0
  81. package/build/http/middleware/auth.js +48 -0
  82. package/build/http/middleware/auth.js.map +1 -0
  83. package/build/http/router.d.ts +13 -0
  84. package/build/http/router.js +36 -0
  85. package/build/http/router.js.map +1 -0
  86. package/build/http/tenants.d.ts +2 -0
  87. package/build/http/tenants.js +20 -0
  88. package/build/http/tenants.js.map +1 -0
  89. package/build/http/util/auth.d.ts +8 -0
  90. package/build/http/util/auth.js +43 -0
  91. package/build/http/util/auth.js.map +1 -0
  92. package/build/index.d.ts +46 -0
  93. package/build/index.js +71 -0
  94. package/build/index.js.map +1 -0
  95. package/build/models/ClrCredential.d.ts +112 -0
  96. package/build/models/ClrCredential.js +52 -0
  97. package/build/models/ClrCredential.js.map +1 -0
  98. package/build/models/EndorsementCredential.d.ts +89 -0
  99. package/build/models/EndorsementCredential.js +11 -0
  100. package/build/models/EndorsementCredential.js.map +1 -0
  101. package/build/models/StatusListCredential.d.ts +81 -0
  102. package/build/models/StatusListCredential.js +28 -0
  103. package/build/models/StatusListCredential.js.map +1 -0
  104. package/build/models/index.d.ts +8 -0
  105. package/build/models/index.js +25 -0
  106. package/build/models/index.js.map +1 -0
  107. package/build/repository/OpenBadgeCredentialRecord.d.ts +44 -0
  108. package/build/repository/OpenBadgeCredentialRecord.js +46 -0
  109. package/build/repository/OpenBadgeCredentialRecord.js.map +1 -0
  110. package/build/repository/OpenBadgeCredentialRepository.d.ts +8 -0
  111. package/build/repository/OpenBadgeCredentialRepository.js +38 -0
  112. package/build/repository/OpenBadgeCredentialRepository.js.map +1 -0
  113. package/build/repository/OpenBadgesAuthCodeRecord.d.ts +35 -0
  114. package/build/repository/OpenBadgesAuthCodeRecord.js +28 -0
  115. package/build/repository/OpenBadgesAuthCodeRecord.js.map +1 -0
  116. package/build/repository/OpenBadgesAuthCodeRepository.d.ts +6 -0
  117. package/build/repository/OpenBadgesAuthCodeRepository.js +32 -0
  118. package/build/repository/OpenBadgesAuthCodeRepository.js.map +1 -0
  119. package/build/repository/OpenBadgesConsentRecord.d.ts +24 -0
  120. package/build/repository/OpenBadgesConsentRecord.js +23 -0
  121. package/build/repository/OpenBadgesConsentRecord.js.map +1 -0
  122. package/build/repository/OpenBadgesConsentRepository.d.ts +6 -0
  123. package/build/repository/OpenBadgesConsentRepository.js +32 -0
  124. package/build/repository/OpenBadgesConsentRepository.js.map +1 -0
  125. package/build/repository/OpenBadgesKeyBindingRecord.d.ts +24 -0
  126. package/build/repository/OpenBadgesKeyBindingRecord.js +32 -0
  127. package/build/repository/OpenBadgesKeyBindingRecord.js.map +1 -0
  128. package/build/repository/OpenBadgesKeyBindingRepository.d.ts +7 -0
  129. package/build/repository/OpenBadgesKeyBindingRepository.js +35 -0
  130. package/build/repository/OpenBadgesKeyBindingRepository.js.map +1 -0
  131. package/build/repository/OpenBadgesOAuthRecord.d.ts +35 -0
  132. package/build/repository/OpenBadgesOAuthRecord.js +25 -0
  133. package/build/repository/OpenBadgesOAuthRecord.js.map +1 -0
  134. package/build/repository/OpenBadgesOAuthRepository.d.ts +8 -0
  135. package/build/repository/OpenBadgesOAuthRepository.js +38 -0
  136. package/build/repository/OpenBadgesOAuthRepository.js.map +1 -0
  137. package/build/repository/OpenBadgesProfileRecord.d.ts +21 -0
  138. package/build/repository/OpenBadgesProfileRecord.js +22 -0
  139. package/build/repository/OpenBadgesProfileRecord.js.map +1 -0
  140. package/build/repository/OpenBadgesProfileRepository.d.ts +6 -0
  141. package/build/repository/OpenBadgesProfileRepository.js +32 -0
  142. package/build/repository/OpenBadgesProfileRepository.js.map +1 -0
  143. package/build/repository/OpenBadgesRevocationCacheRecord.d.ts +23 -0
  144. package/build/repository/OpenBadgesRevocationCacheRecord.js +23 -0
  145. package/build/repository/OpenBadgesRevocationCacheRecord.js.map +1 -0
  146. package/build/repository/OpenBadgesRevocationCacheRepository.d.ts +6 -0
  147. package/build/repository/OpenBadgesRevocationCacheRepository.js +32 -0
  148. package/build/repository/OpenBadgesRevocationCacheRepository.js.map +1 -0
  149. package/build/repository/OpenBadgesServiceDescriptionRecord.d.ts +21 -0
  150. package/build/repository/OpenBadgesServiceDescriptionRecord.js +22 -0
  151. package/build/repository/OpenBadgesServiceDescriptionRecord.js.map +1 -0
  152. package/build/repository/OpenBadgesServiceDescriptionRepository.d.ts +6 -0
  153. package/build/repository/OpenBadgesServiceDescriptionRepository.js +32 -0
  154. package/build/repository/OpenBadgesServiceDescriptionRepository.js.map +1 -0
  155. package/build/repository/OpenBadgesTokenRecord.d.ts +39 -0
  156. package/build/repository/OpenBadgesTokenRecord.js +36 -0
  157. package/build/repository/OpenBadgesTokenRecord.js.map +1 -0
  158. package/build/repository/OpenBadgesTokenRepository.d.ts +9 -0
  159. package/build/repository/OpenBadgesTokenRepository.js +45 -0
  160. package/build/repository/OpenBadgesTokenRepository.js.map +1 -0
  161. package/build/repository/StatusListRecord.d.ts +49 -0
  162. package/build/repository/StatusListRecord.js +47 -0
  163. package/build/repository/StatusListRecord.js.map +1 -0
  164. package/build/repository/StatusListRepository.d.ts +24 -0
  165. package/build/repository/StatusListRepository.js +52 -0
  166. package/build/repository/StatusListRepository.js.map +1 -0
  167. package/build/repository/index.d.ts +18 -0
  168. package/build/repository/index.js +35 -0
  169. package/build/repository/index.js.map +1 -0
  170. package/build/services/AchievementValidator.d.ts +158 -0
  171. package/build/services/AchievementValidator.js +238 -0
  172. package/build/services/AchievementValidator.js.map +1 -0
  173. package/build/services/ConsumerService.d.ts +24 -0
  174. package/build/services/ConsumerService.js +143 -0
  175. package/build/services/ConsumerService.js.map +1 -0
  176. package/build/services/ContextService.d.ts +14 -0
  177. package/build/services/ContextService.js +54 -0
  178. package/build/services/ContextService.js.map +1 -0
  179. package/build/services/DataIntegrityService.d.ts +51 -0
  180. package/build/services/DataIntegrityService.js +134 -0
  181. package/build/services/DataIntegrityService.js.map +1 -0
  182. package/build/services/DidCommLinkService.d.ts +7 -0
  183. package/build/services/DidCommLinkService.js +20 -0
  184. package/build/services/DidCommLinkService.js.map +1 -0
  185. package/build/services/DisplayMapper.d.ts +9 -0
  186. package/build/services/DisplayMapper.js +26 -0
  187. package/build/services/DisplayMapper.js.map +1 -0
  188. package/build/services/IssuerService.d.ts +38 -0
  189. package/build/services/IssuerService.js +225 -0
  190. package/build/services/IssuerService.js.map +1 -0
  191. package/build/services/JwtService.d.ts +19 -0
  192. package/build/services/JwtService.js +229 -0
  193. package/build/services/JwtService.js.map +1 -0
  194. package/build/services/KeyService.d.ts +102 -0
  195. package/build/services/KeyService.js +439 -0
  196. package/build/services/KeyService.js.map +1 -0
  197. package/build/services/OAuthClient.d.ts +26 -0
  198. package/build/services/OAuthClient.js +127 -0
  199. package/build/services/OAuthClient.js.map +1 -0
  200. package/build/services/ProofService.d.ts +15 -0
  201. package/build/services/ProofService.js +43 -0
  202. package/build/services/ProofService.js.map +1 -0
  203. package/build/services/RevocationService.d.ts +59 -0
  204. package/build/services/RevocationService.js +319 -0
  205. package/build/services/RevocationService.js.map +1 -0
  206. package/build/services/VerifyService.d.ts +17 -0
  207. package/build/services/VerifyService.js +54 -0
  208. package/build/services/VerifyService.js.map +1 -0
  209. package/build/services/crypto/CryptoDriver.d.ts +9 -0
  210. package/build/services/crypto/CryptoDriver.js +7 -0
  211. package/build/services/crypto/CryptoDriver.js.map +1 -0
  212. package/build/services/crypto/JsonLdCryptoDriver.d.ts +17 -0
  213. package/build/services/crypto/JsonLdCryptoDriver.js +45 -0
  214. package/build/services/crypto/JsonLdCryptoDriver.js.map +1 -0
  215. package/build/services/crypto/JwtCryptoDriver.d.ts +13 -0
  216. package/build/services/crypto/JwtCryptoDriver.js +42 -0
  217. package/build/services/crypto/JwtCryptoDriver.js.map +1 -0
  218. package/build/services/index.d.ts +12 -0
  219. package/build/services/index.js +29 -0
  220. package/build/services/index.js.map +1 -0
  221. package/build/utils/validate.d.ts +17 -0
  222. package/build/utils/validate.js +107 -0
  223. package/build/utils/validate.js.map +1 -0
  224. package/package.json +57 -0
@@ -0,0 +1,81 @@
1
+ /**
2
+ * StatusList2021 Credential Types
3
+ *
4
+ * Types for managing credential status using StatusList2021 specification.
5
+ * Supports both revocation and suspension purposes.
6
+ *
7
+ * @see https://www.w3.org/TR/vc-status-list/
8
+ */
9
+ /**
10
+ * Status purposes supported by StatusList2021
11
+ */
12
+ export type StatusPurpose = 'revocation' | 'suspension';
13
+ /**
14
+ * StatusList2021 credential subject
15
+ */
16
+ export interface StatusListCredentialSubject {
17
+ /** URI identifying this status list */
18
+ id: string;
19
+ /** Must be 'StatusList2021' */
20
+ type: 'StatusList2021';
21
+ /** Purpose of the status list */
22
+ statusPurpose: StatusPurpose;
23
+ /** GZIP-compressed, base64url-encoded bitstring */
24
+ encodedList: string;
25
+ }
26
+ /**
27
+ * StatusList2021Entry - added to credentials to indicate their status
28
+ */
29
+ export interface StatusListEntry {
30
+ /** URI for this status entry */
31
+ id: string;
32
+ /** Must be 'StatusList2021Entry' */
33
+ type: 'StatusList2021Entry';
34
+ /** Purpose (revocation or suspension) */
35
+ statusPurpose: StatusPurpose;
36
+ /** Index in the status list bitstring */
37
+ statusListIndex: string;
38
+ /** URL to the status list credential */
39
+ statusListCredential: string;
40
+ }
41
+ /**
42
+ * Full StatusList2021Credential structure (unsigned)
43
+ */
44
+ export interface StatusListCredential {
45
+ '@context': string[];
46
+ type: ['VerifiableCredential', 'StatusList2021Credential'];
47
+ id: string;
48
+ issuer: string | {
49
+ id: string;
50
+ [key: string]: unknown;
51
+ };
52
+ validFrom: string;
53
+ credentialSubject: StatusListCredentialSubject;
54
+ }
55
+ /**
56
+ * Input for creating a new status list
57
+ */
58
+ export interface CreateStatusListInput {
59
+ /** Unique identifier for this status list */
60
+ listId: string;
61
+ /** Purpose of the status list */
62
+ purpose: StatusPurpose;
63
+ /** Capacity in bits (default: 131072 = 16KB bitstring) */
64
+ capacity?: number;
65
+ /** DID of the issuer */
66
+ issuerDid: string;
67
+ /** Base URL where the status list will be hosted */
68
+ baseUrl: string;
69
+ }
70
+ /**
71
+ * Default capacity for status lists (16KB = 131072 bits)
72
+ */
73
+ export declare const DEFAULT_STATUS_LIST_CAPACITY = 131072;
74
+ /**
75
+ * StatusList2021 context URL
76
+ */
77
+ export declare const STATUS_LIST_2021_CONTEXT = "https://w3id.org/vc/status-list/2021/v1";
78
+ /**
79
+ * Build the contexts array for a StatusList2021Credential
80
+ */
81
+ export declare function buildStatusListContexts(): string[];
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ /**
3
+ * StatusList2021 Credential Types
4
+ *
5
+ * Types for managing credential status using StatusList2021 specification.
6
+ * Supports both revocation and suspension purposes.
7
+ *
8
+ * @see https://www.w3.org/TR/vc-status-list/
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.STATUS_LIST_2021_CONTEXT = exports.DEFAULT_STATUS_LIST_CAPACITY = void 0;
12
+ exports.buildStatusListContexts = buildStatusListContexts;
13
+ const constants_1 = require("../constants");
14
+ /**
15
+ * Default capacity for status lists (16KB = 131072 bits)
16
+ */
17
+ exports.DEFAULT_STATUS_LIST_CAPACITY = 131072;
18
+ /**
19
+ * StatusList2021 context URL
20
+ */
21
+ exports.STATUS_LIST_2021_CONTEXT = 'https://w3id.org/vc/status-list/2021/v1';
22
+ /**
23
+ * Build the contexts array for a StatusList2021Credential
24
+ */
25
+ function buildStatusListContexts() {
26
+ return [constants_1.VC_V2_CONTEXT, exports.STATUS_LIST_2021_CONTEXT];
27
+ }
28
+ //# sourceMappingURL=StatusListCredential.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusListCredential.js","sourceRoot":"","sources":["../../src/models/StatusListCredential.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAgFH,0DAEC;AAhFD,4CAA4C;AAiE5C;;GAEG;AACU,QAAA,4BAA4B,GAAG,MAAM,CAAA;AAElD;;GAEG;AACU,QAAA,wBAAwB,GAAG,yCAAyC,CAAA;AAEjF;;GAEG;AACH,SAAgB,uBAAuB;IACrC,OAAO,CAAC,yBAAa,EAAE,gCAAwB,CAAC,CAAA;AAClD,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * OpenBadges 3.0 Models
3
+ *
4
+ * Type definitions for OpenBadges credential types.
5
+ */
6
+ export * from './EndorsementCredential';
7
+ export * from './StatusListCredential';
8
+ export * from './ClrCredential';
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ /**
3
+ * OpenBadges 3.0 Models
4
+ *
5
+ * Type definitions for OpenBadges credential types.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ __exportStar(require("./EndorsementCredential"), exports);
23
+ __exportStar(require("./StatusListCredential"), exports);
24
+ __exportStar(require("./ClrCredential"), exports);
25
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/models/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;AAEH,0DAAuC;AACvC,yDAAsC;AACtC,kDAA+B"}
@@ -0,0 +1,44 @@
1
+ import type { TagsBase } from '@credo-ts/core';
2
+ import { BaseRecord } from '@credo-ts/core';
3
+ export type DefaultOpenBadgeCredentialTags = {
4
+ credentialId?: string;
5
+ issuerId?: string;
6
+ subjectId?: string;
7
+ status?: 'valid' | 'revoked' | 'expired' | 'unknown';
8
+ sourceUrl?: string;
9
+ };
10
+ export type CustomOpenBadgeCredentialTags = TagsBase;
11
+ export type OpenBadgeCredentialRecordProps = {
12
+ id?: string;
13
+ createdAt?: Date;
14
+ updatedAt?: Date;
15
+ credential?: unknown;
16
+ jwt?: string;
17
+ derived?: {
18
+ title?: string;
19
+ description?: string;
20
+ issuerName?: string;
21
+ issuedOn?: string;
22
+ image?: string;
23
+ };
24
+ status?: 'valid' | 'revoked' | 'expired' | 'unknown';
25
+ sourceUrl?: string;
26
+ tags?: CustomOpenBadgeCredentialTags;
27
+ };
28
+ export declare class OpenBadgeCredentialRecord extends BaseRecord<DefaultOpenBadgeCredentialTags, CustomOpenBadgeCredentialTags> implements OpenBadgeCredentialRecordProps {
29
+ credential?: unknown;
30
+ jwt?: string;
31
+ derived?: {
32
+ title?: string;
33
+ description?: string;
34
+ issuerName?: string;
35
+ issuedOn?: string;
36
+ image?: string;
37
+ };
38
+ status?: 'valid' | 'revoked' | 'expired' | 'unknown';
39
+ sourceUrl?: string;
40
+ static readonly type = "OpenBadgeCredentialRecord";
41
+ readonly type = "OpenBadgeCredentialRecord";
42
+ constructor(props?: OpenBadgeCredentialRecordProps);
43
+ getTags(): DefaultOpenBadgeCredentialTags;
44
+ }
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenBadgeCredentialRecord = void 0;
4
+ const core_1 = require("@credo-ts/core");
5
+ class OpenBadgeCredentialRecord extends core_1.BaseRecord {
6
+ constructor(props) {
7
+ super();
8
+ this.type = OpenBadgeCredentialRecord.type;
9
+ if (props) {
10
+ this.id = props.id ?? core_1.utils.uuid();
11
+ this.createdAt = props.createdAt ?? new Date();
12
+ this.updatedAt = props.updatedAt ?? new Date();
13
+ this.credential = props.credential;
14
+ this.jwt = props.jwt;
15
+ this.derived = props.derived;
16
+ this.status = props.status;
17
+ this.sourceUrl = props.sourceUrl;
18
+ this._tags = props.tags ?? {};
19
+ }
20
+ else {
21
+ this.id = core_1.utils.uuid();
22
+ this.createdAt = new Date();
23
+ this.updatedAt = new Date();
24
+ this._tags = {};
25
+ }
26
+ }
27
+ getTags() {
28
+ // Extract minimal tags from credential if present
29
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
30
+ const cred = this.credential;
31
+ const credentialId = cred?.id;
32
+ const issuerId = cred?.issuer?.id ?? cred?.issuer;
33
+ const subjectId = cred?.credentialSubject?.id;
34
+ return {
35
+ ...this._tags,
36
+ credentialId,
37
+ issuerId,
38
+ subjectId,
39
+ status: this.status,
40
+ sourceUrl: this.sourceUrl,
41
+ };
42
+ }
43
+ }
44
+ exports.OpenBadgeCredentialRecord = OpenBadgeCredentialRecord;
45
+ OpenBadgeCredentialRecord.type = 'OpenBadgeCredentialRecord';
46
+ //# sourceMappingURL=OpenBadgeCredentialRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgeCredentialRecord.js","sourceRoot":"","sources":["../../src/repository/OpenBadgeCredentialRecord.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AA8BlD,MAAa,yBACX,SAAQ,iBAAyE;IAYjF,YAAmB,KAAsC;QACvD,KAAK,EAAE,CAAA;QAHO,SAAI,GAAG,yBAAyB,CAAC,IAAI,CAAA;QAInD,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,YAAK,CAAC,IAAI,EAAE,CAAA;YAClC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;YAC9C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;YAC9C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;YAClC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;YACpB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;YAC5B,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAA;YAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;YAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,EAAE,GAAG,YAAK,CAAC,IAAI,EAAE,CAAA;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YAC3B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QACjB,CAAC;IACH,CAAC;IAEM,OAAO;QACZ,kDAAkD;QAClD,8DAA8D;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,UAAiB,CAAA;QACnC,MAAM,YAAY,GAAuB,IAAI,EAAE,EAAE,CAAA;QACjD,MAAM,QAAQ,GAAuB,IAAI,EAAE,MAAM,EAAE,EAAE,IAAI,IAAI,EAAE,MAAM,CAAA;QACrE,MAAM,SAAS,GAAuB,IAAI,EAAE,iBAAiB,EAAE,EAAE,CAAA;QAEjE,OAAO;YACL,GAAG,IAAI,CAAC,KAAK;YACb,YAAY;YACZ,QAAQ;YACR,SAAS;YACT,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAA;IACH,CAAC;;AAjDH,8DAkDC;AAxCwB,8BAAI,GAAG,2BAA2B,AAA9B,CAA8B"}
@@ -0,0 +1,8 @@
1
+ import { StorageService, EventEmitter, Repository } from '@credo-ts/core';
2
+ import { OpenBadgeCredentialRecord } from './OpenBadgeCredentialRecord';
3
+ export declare class OpenBadgeCredentialRepository extends Repository<OpenBadgeCredentialRecord> {
4
+ constructor(storageService: StorageService<OpenBadgeCredentialRecord>, eventEmitter: EventEmitter);
5
+ findByCredentialId(agentContext: any, credentialId: string): Promise<OpenBadgeCredentialRecord | null>;
6
+ findByIssuer(agentContext: any, issuerId: string): Promise<OpenBadgeCredentialRecord[]>;
7
+ findBySource(agentContext: any, sourceUrl: string): Promise<OpenBadgeCredentialRecord[]>;
8
+ }
@@ -0,0 +1,38 @@
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
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.OpenBadgeCredentialRepository = void 0;
16
+ const core_1 = require("@credo-ts/core");
17
+ const OpenBadgeCredentialRecord_1 = require("./OpenBadgeCredentialRecord");
18
+ let OpenBadgeCredentialRepository = class OpenBadgeCredentialRepository extends core_1.Repository {
19
+ constructor(storageService, eventEmitter) {
20
+ super(OpenBadgeCredentialRecord_1.OpenBadgeCredentialRecord, storageService, eventEmitter);
21
+ }
22
+ async findByCredentialId(agentContext, credentialId) {
23
+ return this.findSingleByQuery(agentContext, { credentialId });
24
+ }
25
+ async findByIssuer(agentContext, issuerId) {
26
+ return this.findByQuery(agentContext, { issuerId });
27
+ }
28
+ async findBySource(agentContext, sourceUrl) {
29
+ return this.findByQuery(agentContext, { sourceUrl });
30
+ }
31
+ };
32
+ exports.OpenBadgeCredentialRepository = OpenBadgeCredentialRepository;
33
+ exports.OpenBadgeCredentialRepository = OpenBadgeCredentialRepository = __decorate([
34
+ (0, core_1.injectable)(),
35
+ __param(0, (0, core_1.inject)(core_1.InjectionSymbols.StorageService)),
36
+ __metadata("design:paramtypes", [Object, core_1.EventEmitter])
37
+ ], OpenBadgeCredentialRepository);
38
+ //# sourceMappingURL=OpenBadgeCredentialRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgeCredentialRepository.js","sourceRoot":"","sources":["../../src/repository/OpenBadgeCredentialRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA+G;AAC/G,2EAAuE;AAGhE,IAAM,6BAA6B,GAAnC,MAAM,6BAA8B,SAAQ,iBAAqC;IACtF,YAC2C,cAAyD,EAClG,YAA0B;QAE1B,KAAK,CAAC,qDAAyB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAA;IAChE,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,YAAiB,EAAE,YAAoB;QACrE,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;IAC/D,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,YAAiB,EAAE,QAAgB;QAC3D,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAA;IACrD,CAAC;IAEM,KAAK,CAAC,YAAY,CAAC,YAAiB,EAAE,SAAiB;QAC5D,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,CAAC,CAAA;IACtD,CAAC;CACF,CAAA;AAnBY,sEAA6B;wCAA7B,6BAA6B;IADzC,IAAA,iBAAU,GAAE;IAGR,WAAA,IAAA,aAAM,EAAC,uBAAgB,CAAC,cAAc,CAAC,CAAA;6CAC1B,mBAAY;GAHjB,6BAA6B,CAmBzC"}
@@ -0,0 +1,35 @@
1
+ import type { TagsBase } from '@credo-ts/core';
2
+ import { BaseRecord } from '@credo-ts/core';
3
+ export type DefaultOpenBadgesAuthCodeTags = {
4
+ code: string;
5
+ clientId?: string;
6
+ subject?: string;
7
+ };
8
+ export type OpenBadgesAuthCodeRecordProps = {
9
+ id?: string;
10
+ createdAt?: Date;
11
+ updatedAt?: Date;
12
+ code: string;
13
+ clientId: string;
14
+ redirectUri: string;
15
+ scope?: string;
16
+ subject: string;
17
+ expiresAt: Date;
18
+ codeChallenge?: string;
19
+ codeChallengeMethod?: string;
20
+ tags?: TagsBase;
21
+ };
22
+ export declare class OpenBadgesAuthCodeRecord extends BaseRecord<DefaultOpenBadgesAuthCodeTags, TagsBase> implements OpenBadgesAuthCodeRecordProps {
23
+ code: string;
24
+ clientId: string;
25
+ redirectUri: string;
26
+ scope?: string;
27
+ subject: string;
28
+ expiresAt: Date;
29
+ codeChallenge?: string;
30
+ codeChallengeMethod?: string;
31
+ static readonly type = "OpenBadgesAuthCodeRecord";
32
+ readonly type = "OpenBadgesAuthCodeRecord";
33
+ constructor(props: OpenBadgesAuthCodeRecordProps);
34
+ getTags(): DefaultOpenBadgesAuthCodeTags;
35
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenBadgesAuthCodeRecord = void 0;
4
+ const core_1 = require("@credo-ts/core");
5
+ class OpenBadgesAuthCodeRecord extends core_1.BaseRecord {
6
+ constructor(props) {
7
+ super();
8
+ this.type = OpenBadgesAuthCodeRecord.type;
9
+ this.id = props.id ?? core_1.utils.uuid();
10
+ this.createdAt = props.createdAt ?? new Date();
11
+ this.updatedAt = props.updatedAt ?? new Date();
12
+ this.code = props.code;
13
+ this.clientId = props.clientId;
14
+ this.redirectUri = props.redirectUri;
15
+ this.scope = props.scope;
16
+ this.subject = props.subject;
17
+ this.expiresAt = props.expiresAt;
18
+ this.codeChallenge = props.codeChallenge;
19
+ this.codeChallengeMethod = props.codeChallengeMethod;
20
+ this._tags = props.tags ?? {};
21
+ }
22
+ getTags() {
23
+ return { ...this._tags, code: this.code, clientId: this.clientId, subject: this.subject };
24
+ }
25
+ }
26
+ exports.OpenBadgesAuthCodeRecord = OpenBadgesAuthCodeRecord;
27
+ OpenBadgesAuthCodeRecord.type = 'OpenBadgesAuthCodeRecord';
28
+ //# sourceMappingURL=OpenBadgesAuthCodeRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgesAuthCodeRecord.js","sourceRoot":"","sources":["../../src/repository/OpenBadgesAuthCodeRecord.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAuBlD,MAAa,wBACX,SAAQ,iBAAmD;IAe3D,YAAmB,KAAoC;QACrD,KAAK,EAAE,CAAA;QAHO,SAAI,GAAG,wBAAwB,CAAC,IAAI,CAAA;QAIlD,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,YAAK,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;QAC9C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;QAC9C,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;QACtB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;QAC9B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;QACpC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;QACxB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QAChC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAA;QACxC,IAAI,CAAC,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAA;QACpD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAA;IAC/B,CAAC;IAEM,OAAO;QACZ,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;IAC3F,CAAC;;AAlCH,4DAmCC;AAtBwB,6BAAI,GAAG,0BAA0B,AAA7B,CAA6B"}
@@ -0,0 +1,6 @@
1
+ import { StorageService, EventEmitter, Repository } from '@credo-ts/core';
2
+ import { OpenBadgesAuthCodeRecord } from './OpenBadgesAuthCodeRecord';
3
+ export declare class OpenBadgesAuthCodeRepository extends Repository<OpenBadgesAuthCodeRecord> {
4
+ constructor(storageService: StorageService<OpenBadgesAuthCodeRecord>, eventEmitter: EventEmitter);
5
+ findByCode(agentContext: any, code: string): Promise<OpenBadgesAuthCodeRecord | null>;
6
+ }
@@ -0,0 +1,32 @@
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
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.OpenBadgesAuthCodeRepository = void 0;
16
+ const core_1 = require("@credo-ts/core");
17
+ const OpenBadgesAuthCodeRecord_1 = require("./OpenBadgesAuthCodeRecord");
18
+ let OpenBadgesAuthCodeRepository = class OpenBadgesAuthCodeRepository extends core_1.Repository {
19
+ constructor(storageService, eventEmitter) {
20
+ super(OpenBadgesAuthCodeRecord_1.OpenBadgesAuthCodeRecord, storageService, eventEmitter);
21
+ }
22
+ async findByCode(agentContext, code) {
23
+ return this.findSingleByQuery(agentContext, { code });
24
+ }
25
+ };
26
+ exports.OpenBadgesAuthCodeRepository = OpenBadgesAuthCodeRepository;
27
+ exports.OpenBadgesAuthCodeRepository = OpenBadgesAuthCodeRepository = __decorate([
28
+ (0, core_1.injectable)(),
29
+ __param(0, (0, core_1.inject)(core_1.InjectionSymbols.StorageService)),
30
+ __metadata("design:paramtypes", [Object, core_1.EventEmitter])
31
+ ], OpenBadgesAuthCodeRepository);
32
+ //# sourceMappingURL=OpenBadgesAuthCodeRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgesAuthCodeRepository.js","sourceRoot":"","sources":["../../src/repository/OpenBadgesAuthCodeRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA+G;AAC/G,yEAAqE;AAG9D,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,iBAAoC;IACpF,YAC2C,cAAwD,EACjG,YAA0B;QAE1B,KAAK,CAAC,mDAAwB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAA;IAC/D,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,YAAiB,EAAE,IAAY;QACrD,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACvD,CAAC;CACF,CAAA;AAXY,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,iBAAU,GAAE;IAGR,WAAA,IAAA,aAAM,EAAC,uBAAgB,CAAC,cAAc,CAAC,CAAA;6CAC1B,mBAAY;GAHjB,4BAA4B,CAWxC"}
@@ -0,0 +1,24 @@
1
+ import type { TagsBase } from '@credo-ts/core';
2
+ import { BaseRecord } from '@credo-ts/core';
3
+ export type DefaultOpenBadgesConsentTags = {
4
+ clientId: string;
5
+ subject: string;
6
+ };
7
+ export type OpenBadgesConsentRecordProps = {
8
+ id?: string;
9
+ createdAt?: Date;
10
+ updatedAt?: Date;
11
+ clientId: string;
12
+ subject: string;
13
+ grantedAt: Date;
14
+ tags?: TagsBase;
15
+ };
16
+ export declare class OpenBadgesConsentRecord extends BaseRecord<DefaultOpenBadgesConsentTags, TagsBase> implements OpenBadgesConsentRecordProps {
17
+ clientId: string;
18
+ subject: string;
19
+ grantedAt: Date;
20
+ static readonly type = "OpenBadgesConsentRecord";
21
+ readonly type = "OpenBadgesConsentRecord";
22
+ constructor(props: OpenBadgesConsentRecordProps);
23
+ getTags(): DefaultOpenBadgesConsentTags;
24
+ }
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenBadgesConsentRecord = void 0;
4
+ const core_1 = require("@credo-ts/core");
5
+ class OpenBadgesConsentRecord extends core_1.BaseRecord {
6
+ constructor(props) {
7
+ super();
8
+ this.type = OpenBadgesConsentRecord.type;
9
+ this.id = props.id ?? core_1.utils.uuid();
10
+ this.createdAt = props.createdAt ?? new Date();
11
+ this.updatedAt = props.updatedAt ?? new Date();
12
+ this.clientId = props.clientId;
13
+ this.subject = props.subject;
14
+ this.grantedAt = props.grantedAt;
15
+ this._tags = props.tags ?? {};
16
+ }
17
+ getTags() {
18
+ return { ...this._tags, clientId: this.clientId, subject: this.subject };
19
+ }
20
+ }
21
+ exports.OpenBadgesConsentRecord = OpenBadgesConsentRecord;
22
+ OpenBadgesConsentRecord.type = 'OpenBadgesConsentRecord';
23
+ //# sourceMappingURL=OpenBadgesConsentRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgesConsentRecord.js","sourceRoot":"","sources":["../../src/repository/OpenBadgesConsentRecord.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAiBlD,MAAa,uBACX,SAAQ,iBAAkD;IAU1D,YAAmB,KAAmC;QACpD,KAAK,EAAE,CAAA;QAHO,SAAI,GAAG,uBAAuB,CAAC,IAAI,CAAA;QAIjD,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,YAAK,CAAC,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;QAC9C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;QAC9C,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAA;QAC9B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAA;QAC5B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QAChC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAA;IAC/B,CAAC;IAEM,OAAO;QACZ,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAA;IAC1E,CAAC;;AAxBH,0DAyBC;AAjBwB,4BAAI,GAAG,yBAAyB,AAA5B,CAA4B"}
@@ -0,0 +1,6 @@
1
+ import { StorageService, EventEmitter, Repository } from '@credo-ts/core';
2
+ import { OpenBadgesConsentRecord } from './OpenBadgesConsentRecord';
3
+ export declare class OpenBadgesConsentRepository extends Repository<OpenBadgesConsentRecord> {
4
+ constructor(storageService: StorageService<OpenBadgesConsentRecord>, eventEmitter: EventEmitter);
5
+ findByClientAndSubject(agentContext: any, clientId: string, subject: string): Promise<OpenBadgesConsentRecord | null>;
6
+ }
@@ -0,0 +1,32 @@
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
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.OpenBadgesConsentRepository = void 0;
16
+ const core_1 = require("@credo-ts/core");
17
+ const OpenBadgesConsentRecord_1 = require("./OpenBadgesConsentRecord");
18
+ let OpenBadgesConsentRepository = class OpenBadgesConsentRepository extends core_1.Repository {
19
+ constructor(storageService, eventEmitter) {
20
+ super(OpenBadgesConsentRecord_1.OpenBadgesConsentRecord, storageService, eventEmitter);
21
+ }
22
+ async findByClientAndSubject(agentContext, clientId, subject) {
23
+ return this.findSingleByQuery(agentContext, { clientId, subject });
24
+ }
25
+ };
26
+ exports.OpenBadgesConsentRepository = OpenBadgesConsentRepository;
27
+ exports.OpenBadgesConsentRepository = OpenBadgesConsentRepository = __decorate([
28
+ (0, core_1.injectable)(),
29
+ __param(0, (0, core_1.inject)(core_1.InjectionSymbols.StorageService)),
30
+ __metadata("design:paramtypes", [Object, core_1.EventEmitter])
31
+ ], OpenBadgesConsentRepository);
32
+ //# sourceMappingURL=OpenBadgesConsentRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgesConsentRepository.js","sourceRoot":"","sources":["../../src/repository/OpenBadgesConsentRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA+G;AAC/G,uEAAmE;AAG5D,IAAM,2BAA2B,GAAjC,MAAM,2BAA4B,SAAQ,iBAAmC;IAClF,YAC2C,cAAuD,EAChG,YAA0B;QAE1B,KAAK,CAAC,iDAAuB,EAAE,cAAc,EAAE,YAAY,CAAC,CAAA;IAC9D,CAAC;IAEM,KAAK,CAAC,sBAAsB,CAAC,YAAiB,EAAE,QAAgB,EAAE,OAAe;QACtF,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAA;IACpE,CAAC;CACF,CAAA;AAXY,kEAA2B;sCAA3B,2BAA2B;IADvC,IAAA,iBAAU,GAAE;IAGR,WAAA,IAAA,aAAM,EAAC,uBAAgB,CAAC,cAAc,CAAC,CAAA;6CAC1B,mBAAY;GAHjB,2BAA2B,CAWvC"}
@@ -0,0 +1,24 @@
1
+ import type { TagsBase } from '@credo-ts/core';
2
+ import { BaseRecord } from '@credo-ts/core';
3
+ export type DefaultOpenBadgesKeyBindingTags = {
4
+ controller: string;
5
+ vmId: string;
6
+ };
7
+ export type OpenBadgesKeyBindingRecordProps = {
8
+ id?: string;
9
+ createdAt?: Date;
10
+ updatedAt?: Date;
11
+ controller: string;
12
+ vmId: string;
13
+ publicKeyMultibase: string;
14
+ tags?: TagsBase;
15
+ };
16
+ export declare class OpenBadgesKeyBindingRecord extends BaseRecord<DefaultOpenBadgesKeyBindingTags, TagsBase> implements OpenBadgesKeyBindingRecordProps {
17
+ controller: string;
18
+ vmId: string;
19
+ publicKeyMultibase: string;
20
+ static readonly type = "OpenBadgesKeyBindingRecord";
21
+ readonly type = "OpenBadgesKeyBindingRecord";
22
+ constructor(props?: OpenBadgesKeyBindingRecordProps);
23
+ getTags(): DefaultOpenBadgesKeyBindingTags;
24
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpenBadgesKeyBindingRecord = void 0;
4
+ const core_1 = require("@credo-ts/core");
5
+ class OpenBadgesKeyBindingRecord extends core_1.BaseRecord {
6
+ constructor(props) {
7
+ super();
8
+ this.type = OpenBadgesKeyBindingRecord.type;
9
+ if (props) {
10
+ // Use vmId as deterministic record id for simpler lookups and to avoid scans
11
+ this.id = props.id ?? props.vmId ?? core_1.utils.uuid();
12
+ this.createdAt = props.createdAt ?? new Date();
13
+ this.updatedAt = props.updatedAt ?? new Date();
14
+ this.controller = props.controller;
15
+ this.vmId = props.vmId;
16
+ this.publicKeyMultibase = props.publicKeyMultibase;
17
+ this._tags = props.tags ?? {};
18
+ }
19
+ else {
20
+ this.id = core_1.utils.uuid();
21
+ this.createdAt = new Date();
22
+ this.updatedAt = new Date();
23
+ this._tags = {};
24
+ }
25
+ }
26
+ getTags() {
27
+ return { ...this._tags, controller: this.controller, vmId: this.vmId };
28
+ }
29
+ }
30
+ exports.OpenBadgesKeyBindingRecord = OpenBadgesKeyBindingRecord;
31
+ OpenBadgesKeyBindingRecord.type = 'OpenBadgesKeyBindingRecord';
32
+ //# sourceMappingURL=OpenBadgesKeyBindingRecord.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgesKeyBindingRecord.js","sourceRoot":"","sources":["../../src/repository/OpenBadgesKeyBindingRecord.ts"],"names":[],"mappings":";;;AACA,yCAAkD;AAiBlD,MAAa,0BACX,SAAQ,iBAAqD;IAU7D,YAAmB,KAAuC;QACxD,KAAK,EAAE,CAAA;QAHO,SAAI,GAAG,0BAA0B,CAAC,IAAI,CAAA;QAIpD,IAAI,KAAK,EAAE,CAAC;YACV,6EAA6E;YAC7E,IAAI,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,KAAK,CAAC,IAAI,IAAI,YAAK,CAAC,IAAI,EAAE,CAAA;YAChD,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;YAC9C,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAA;YAC9C,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAA;YAClC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAA;YACtB,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC,kBAAkB,CAAA;YAClD,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,EAAE,GAAG,YAAK,CAAC,IAAI,EAAE,CAAA;YACtB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAA;YAC3B,IAAI,CAAC,KAAK,GAAG,EAAE,CAAA;QACjB,CAAC;IACH,CAAC;IAEM,OAAO;QACZ,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;IACxE,CAAC;;AAhCH,gEAiCC;AAzBwB,+BAAI,GAAG,4BAA4B,AAA/B,CAA+B"}
@@ -0,0 +1,7 @@
1
+ import { StorageService, EventEmitter, Repository } from '@credo-ts/core';
2
+ import { OpenBadgesKeyBindingRecord } from './OpenBadgesKeyBindingRecord';
3
+ export declare class OpenBadgesKeyBindingRepository extends Repository<OpenBadgesKeyBindingRecord> {
4
+ constructor(storageService: StorageService<OpenBadgesKeyBindingRecord>, eventEmitter: EventEmitter);
5
+ findByController(agentContext: any, controller: string): Promise<OpenBadgesKeyBindingRecord[]>;
6
+ findByVmId(agentContext: any, vmId: string): Promise<OpenBadgesKeyBindingRecord | null>;
7
+ }
@@ -0,0 +1,35 @@
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
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
12
+ return function (target, key) { decorator(target, key, paramIndex); }
13
+ };
14
+ Object.defineProperty(exports, "__esModule", { value: true });
15
+ exports.OpenBadgesKeyBindingRepository = void 0;
16
+ const core_1 = require("@credo-ts/core");
17
+ const OpenBadgesKeyBindingRecord_1 = require("./OpenBadgesKeyBindingRecord");
18
+ let OpenBadgesKeyBindingRepository = class OpenBadgesKeyBindingRepository extends core_1.Repository {
19
+ constructor(storageService, eventEmitter) {
20
+ super(OpenBadgesKeyBindingRecord_1.OpenBadgesKeyBindingRecord, storageService, eventEmitter);
21
+ }
22
+ async findByController(agentContext, controller) {
23
+ return this.findByQuery(agentContext, { controller });
24
+ }
25
+ async findByVmId(agentContext, vmId) {
26
+ return this.findSingleByQuery(agentContext, { vmId });
27
+ }
28
+ };
29
+ exports.OpenBadgesKeyBindingRepository = OpenBadgesKeyBindingRepository;
30
+ exports.OpenBadgesKeyBindingRepository = OpenBadgesKeyBindingRepository = __decorate([
31
+ (0, core_1.injectable)(),
32
+ __param(0, (0, core_1.inject)(core_1.InjectionSymbols.StorageService)),
33
+ __metadata("design:paramtypes", [Object, core_1.EventEmitter])
34
+ ], OpenBadgesKeyBindingRepository);
35
+ //# sourceMappingURL=OpenBadgesKeyBindingRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OpenBadgesKeyBindingRepository.js","sourceRoot":"","sources":["../../src/repository/OpenBadgesKeyBindingRepository.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,yCAA+G;AAC/G,6EAAyE;AAGlE,IAAM,8BAA8B,GAApC,MAAM,8BAA+B,SAAQ,iBAAsC;IACxF,YAC2C,cAA0D,EACnG,YAA0B;QAE1B,KAAK,CAAC,uDAA0B,EAAE,cAAc,EAAE,YAAY,CAAC,CAAA;IACjE,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,YAAiB,EAAE,UAAkB;QACjE,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;IACvD,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,YAAiB,EAAE,IAAY;QACrD,OAAO,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAA;IACvD,CAAC;CACF,CAAA;AAfY,wEAA8B;yCAA9B,8BAA8B;IAD1C,IAAA,iBAAU,GAAE;IAGR,WAAA,IAAA,aAAM,EAAC,uBAAgB,CAAC,cAAc,CAAC,CAAA;6CAC1B,mBAAY;GAHjB,8BAA8B,CAe1C"}