@credo-ts/cheqd 0.6.1-pr-2091-20241119140918 → 0.6.1
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.
- package/build/CheqdApi.d.mts +45 -0
- package/build/CheqdApi.d.mts.map +1 -0
- package/build/CheqdApi.mjs +26 -0
- package/build/CheqdApi.mjs.map +1 -0
- package/build/CheqdModule.d.mts +15 -0
- package/build/CheqdModule.d.mts.map +1 -0
- package/build/CheqdModule.mjs +25 -0
- package/build/CheqdModule.mjs.map +1 -0
- package/build/CheqdModuleConfig.d.mts +21 -0
- package/build/CheqdModuleConfig.d.mts.map +1 -0
- package/build/CheqdModuleConfig.mjs +14 -0
- package/build/CheqdModuleConfig.mjs.map +1 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +7 -0
- package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
- package/build/anoncreds/index.d.mts +1 -0
- package/build/anoncreds/index.mjs +1 -0
- package/build/anoncreds/services/CheqdAnonCredsRegistry.d.mts +32 -0
- package/build/anoncreds/services/CheqdAnonCredsRegistry.d.mts.map +1 -0
- package/build/anoncreds/services/CheqdAnonCredsRegistry.mjs +349 -0
- package/build/anoncreds/services/CheqdAnonCredsRegistry.mjs.map +1 -0
- package/build/anoncreds/utils/identifiers.mjs +56 -0
- package/build/anoncreds/utils/identifiers.mjs.map +1 -0
- package/build/anoncreds/utils/transform.mjs +104 -0
- package/build/anoncreds/utils/transform.mjs.map +1 -0
- package/build/dids/CheqdDidRegistrar.d.mts +102 -0
- package/build/dids/CheqdDidRegistrar.d.mts.map +1 -0
- package/build/dids/CheqdDidRegistrar.mjs +446 -0
- package/build/dids/CheqdDidRegistrar.mjs.map +1 -0
- package/build/dids/CheqdDidResolver.d.mts +30 -0
- package/build/dids/CheqdDidResolver.d.mts.map +1 -0
- package/build/dids/CheqdDidResolver.mjs +135 -0
- package/build/dids/CheqdDidResolver.mjs.map +1 -0
- package/build/dids/didCheqdUtil.mjs +113 -0
- package/build/dids/didCheqdUtil.mjs.map +1 -0
- package/build/dids/index.d.mts +2 -0
- package/build/dids/index.mjs +2 -0
- package/build/index.d.mts +10 -0
- package/build/index.mjs +11 -0
- package/build/ledger/CheqdLedgerService.d.mts +35 -0
- package/build/ledger/CheqdLedgerService.d.mts.map +1 -0
- package/build/ledger/CheqdLedgerService.mjs +114 -0
- package/build/ledger/CheqdLedgerService.mjs.map +1 -0
- package/build/ledger/index.d.mts +1 -0
- package/build/ledger/index.mjs +1 -0
- package/package.json +22 -22
- package/build/CheqdApi.d.ts +0 -38
- package/build/CheqdApi.js +0 -34
- package/build/CheqdApi.js.map +0 -1
- package/build/CheqdModule.d.ts +0 -11
- package/build/CheqdModule.js +0 -33
- package/build/CheqdModule.js.map +0 -1
- package/build/CheqdModuleConfig.d.ts +0 -17
- package/build/CheqdModuleConfig.js +0 -14
- package/build/CheqdModuleConfig.js.map +0 -1
- package/build/anoncreds/index.d.ts +0 -1
- package/build/anoncreds/index.js +0 -6
- package/build/anoncreds/index.js.map +0 -1
- package/build/anoncreds/services/CheqdAnonCredsRegistry.d.ts +0 -19
- package/build/anoncreds/services/CheqdAnonCredsRegistry.js +0 -368
- package/build/anoncreds/services/CheqdAnonCredsRegistry.js.map +0 -1
- package/build/anoncreds/utils/identifiers.d.ts +0 -13
- package/build/anoncreds/utils/identifiers.js +0 -53
- package/build/anoncreds/utils/identifiers.js.map +0 -1
- package/build/anoncreds/utils/transform.d.ts +0 -43
- package/build/anoncreds/utils/transform.js +0 -170
- package/build/anoncreds/utils/transform.js.map +0 -1
- package/build/dids/CheqdDidRegistrar.d.ts +0 -86
- package/build/dids/CheqdDidRegistrar.js +0 -334
- package/build/dids/CheqdDidRegistrar.js.map +0 -1
- package/build/dids/CheqdDidResolver.d.ts +0 -25
- package/build/dids/CheqdDidResolver.js +0 -171
- package/build/dids/CheqdDidResolver.js.map +0 -1
- package/build/dids/didCheqdUtil.d.ts +0 -28
- package/build/dids/didCheqdUtil.js +0 -129
- package/build/dids/didCheqdUtil.js.map +0 -1
- package/build/dids/index.d.ts +0 -2
- package/build/dids/index.js +0 -8
- package/build/dids/index.js.map +0 -1
- package/build/index.d.ts +0 -5
- package/build/index.js +0 -17
- package/build/index.js.map +0 -1
- package/build/ledger/CheqdLedgerService.d.ts +0 -37
- package/build/ledger/CheqdLedgerService.js +0 -135
- package/build/ledger/CheqdLedgerService.js.map +0 -1
- package/build/ledger/index.d.ts +0 -1
- package/build/ledger/index.js +0 -6
- package/build/ledger/index.js.map +0 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { CheqdCreateResourceOptions } from "./dids/CheqdDidRegistrar.mjs";
|
|
2
|
+
import "./dids/index.mjs";
|
|
3
|
+
import { AgentContext } from "@credo-ts/core";
|
|
4
|
+
import * as _cheqd_ts_proto_cheqd_resource_v20 from "@cheqd/ts-proto/cheqd/resource/v2";
|
|
5
|
+
|
|
6
|
+
//#region src/CheqdApi.d.ts
|
|
7
|
+
declare class CheqdApi {
|
|
8
|
+
private agentContext;
|
|
9
|
+
constructor(agentContext: AgentContext);
|
|
10
|
+
createResource(did: string, options: CheqdCreateResourceOptions): Promise<{
|
|
11
|
+
resourceMetadata: {};
|
|
12
|
+
resourceRegistrationMetadata: {};
|
|
13
|
+
resourceState: {
|
|
14
|
+
state: string;
|
|
15
|
+
reason: string;
|
|
16
|
+
resourceId?: undefined;
|
|
17
|
+
resource?: undefined;
|
|
18
|
+
};
|
|
19
|
+
} | {
|
|
20
|
+
resourceMetadata: {};
|
|
21
|
+
resourceRegistrationMetadata: {};
|
|
22
|
+
resourceState: {
|
|
23
|
+
state: string;
|
|
24
|
+
resourceId: string;
|
|
25
|
+
resource: _cheqd_ts_proto_cheqd_resource_v20.MsgCreateResourcePayload;
|
|
26
|
+
reason?: undefined;
|
|
27
|
+
};
|
|
28
|
+
}>;
|
|
29
|
+
resolveResource(resourceUrl: string): Promise<{
|
|
30
|
+
error: string;
|
|
31
|
+
message: string;
|
|
32
|
+
resource?: undefined;
|
|
33
|
+
resourceMetadata?: undefined;
|
|
34
|
+
resourceResolutionMetadata?: undefined;
|
|
35
|
+
} | {
|
|
36
|
+
resource: any;
|
|
37
|
+
resourceMetadata: _cheqd_ts_proto_cheqd_resource_v20.Metadata;
|
|
38
|
+
resourceResolutionMetadata: {};
|
|
39
|
+
error?: undefined;
|
|
40
|
+
message?: undefined;
|
|
41
|
+
}>;
|
|
42
|
+
}
|
|
43
|
+
//#endregion
|
|
44
|
+
export { CheqdApi };
|
|
45
|
+
//# sourceMappingURL=CheqdApi.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdApi.d.mts","names":[],"sources":["../src/CheqdApi.ts"],"sourcesContent":[],"mappings":";;;;;;cAMa,QAAA;;4BAGsB;uCAIiB,6BAA0B;IAPjE,gBAAQ,EAAA,CAAA,CAAA;IAGc,4BAAA,EAAA,CAAA,CAAA;IAIiB,aAAA,EAAA;MAA0B,KAAA,EAAA,MAAA;MAAA,MAAA,EAAA,MAAA;MAAA,UAAA,CAAA,EAAA,SAAA;MAK5B,QAAA,CAAA,EAAA,SAAA;IAAA,CAAA;;;;;;;gBAL4B,kCAAA,CAAA;;;;wCAK5B;;;;;;;;sBAL4B,kCAAA,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { __decorateMetadata } from "./_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
|
|
2
|
+
import { __decorate } from "./_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
|
|
3
|
+
import { CheqdDidRegistrar } from "./dids/CheqdDidRegistrar.mjs";
|
|
4
|
+
import { CheqdDidResolver } from "./dids/CheqdDidResolver.mjs";
|
|
5
|
+
import "./dids/index.mjs";
|
|
6
|
+
import { AgentContext } from "@credo-ts/core";
|
|
7
|
+
import { injectable as injectable$1 } from "tsyringe";
|
|
8
|
+
|
|
9
|
+
//#region src/CheqdApi.ts
|
|
10
|
+
var _ref;
|
|
11
|
+
let CheqdApi = class CheqdApi$1 {
|
|
12
|
+
constructor(agentContext) {
|
|
13
|
+
this.agentContext = agentContext;
|
|
14
|
+
}
|
|
15
|
+
async createResource(did, options) {
|
|
16
|
+
return await this.agentContext.dependencyManager.resolve(CheqdDidRegistrar).createResource(this.agentContext, did, options);
|
|
17
|
+
}
|
|
18
|
+
async resolveResource(resourceUrl) {
|
|
19
|
+
return await this.agentContext.dependencyManager.resolve(CheqdDidResolver).resolveResource(this.agentContext, resourceUrl);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
CheqdApi = __decorate([injectable$1(), __decorateMetadata("design:paramtypes", [typeof (_ref = typeof AgentContext !== "undefined" && AgentContext) === "function" ? _ref : Object])], CheqdApi);
|
|
23
|
+
|
|
24
|
+
//#endregion
|
|
25
|
+
export { CheqdApi };
|
|
26
|
+
//# sourceMappingURL=CheqdApi.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdApi.mjs","names":["CheqdApi","injectable"],"sources":["../src/CheqdApi.ts"],"sourcesContent":["import { AgentContext } from '@credo-ts/core'\nimport { injectable } from 'tsyringe'\n\nimport { type CheqdCreateResourceOptions, CheqdDidRegistrar, CheqdDidResolver } from './dids'\n\n@injectable()\nexport class CheqdApi {\n private agentContext: AgentContext\n\n public constructor(agentContext: AgentContext) {\n this.agentContext = agentContext\n }\n\n public async createResource(did: string, options: CheqdCreateResourceOptions) {\n const cheqdDidRegistrar = this.agentContext.dependencyManager.resolve(CheqdDidRegistrar)\n return await cheqdDidRegistrar.createResource(this.agentContext, did, options)\n }\n\n public async resolveResource(resourceUrl: string) {\n const cheqdDidResolver = this.agentContext.dependencyManager.resolve(CheqdDidResolver)\n return await cheqdDidResolver.resolveResource(this.agentContext, resourceUrl)\n }\n}\n"],"mappings":";;;;;;;;;;AAMO,qBAAMA,WAAS;CAGpB,AAAO,YAAY,cAA4B;AAC7C,OAAK,eAAe;;CAGtB,MAAa,eAAe,KAAa,SAAqC;AAE5E,SAAO,MADmB,KAAK,aAAa,kBAAkB,QAAQ,kBAAkB,CACzD,eAAe,KAAK,cAAc,KAAK,QAAQ;;CAGhF,MAAa,gBAAgB,aAAqB;AAEhD,SAAO,MADkB,KAAK,aAAa,kBAAkB,QAAQ,iBAAiB,CACxD,gBAAgB,KAAK,cAAc,YAAY;;;uBAfhFC,cAAY"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { CheqdApi } from "./CheqdApi.mjs";
|
|
2
|
+
import { CheqdModuleConfig, CheqdModuleConfigOptions } from "./CheqdModuleConfig.mjs";
|
|
3
|
+
import { AgentContext, DependencyManager, Module } from "@credo-ts/core";
|
|
4
|
+
|
|
5
|
+
//#region src/CheqdModule.d.ts
|
|
6
|
+
declare class CheqdModule implements Module {
|
|
7
|
+
readonly config: CheqdModuleConfig;
|
|
8
|
+
readonly api: typeof CheqdApi;
|
|
9
|
+
constructor(config: CheqdModuleConfigOptions);
|
|
10
|
+
register(dependencyManager: DependencyManager): void;
|
|
11
|
+
initialize(agentContext: AgentContext): Promise<void>;
|
|
12
|
+
}
|
|
13
|
+
//#endregion
|
|
14
|
+
export { CheqdModule };
|
|
15
|
+
//# sourceMappingURL=CheqdModule.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdModule.d.mts","names":[],"sources":["../src/CheqdModule.ts"],"sourcesContent":[],"mappings":";;;;;cAOa,WAAA,YAAuB;EAAvB,SAAA,MAAY,EACC,iBADD;EACC,SAAA,GAAA,EAAA,OACL,QADK;EACL,WAAA,CAAA,MAAA,EAEQ,wBAFR;EAEQ,QAAA,CAAA,iBAAA,EAIQ,iBAJR,CAAA,EAAA,IAAA;EAIQ,UAAA,CAAA,YAAA,EAYG,YAZH,CAAA,EAYkB,OAZlB,CAAA,IAAA,CAAA"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { CheqdModuleConfig } from "./CheqdModuleConfig.mjs";
|
|
2
|
+
import { CheqdLedgerService } from "./ledger/CheqdLedgerService.mjs";
|
|
3
|
+
import "./ledger/index.mjs";
|
|
4
|
+
import { CheqdApi } from "./CheqdApi.mjs";
|
|
5
|
+
import { Buffer } from "@credo-ts/core";
|
|
6
|
+
|
|
7
|
+
//#region src/CheqdModule.ts
|
|
8
|
+
var CheqdModule = class {
|
|
9
|
+
constructor(config) {
|
|
10
|
+
this.api = CheqdApi;
|
|
11
|
+
this.config = new CheqdModuleConfig(config);
|
|
12
|
+
}
|
|
13
|
+
register(dependencyManager) {
|
|
14
|
+
dependencyManager.registerInstance(CheqdModuleConfig, this.config);
|
|
15
|
+
dependencyManager.registerSingleton(CheqdLedgerService);
|
|
16
|
+
global.Buffer = global.Buffer || Buffer;
|
|
17
|
+
}
|
|
18
|
+
async initialize(agentContext) {
|
|
19
|
+
agentContext.dependencyManager.resolve(CheqdLedgerService).connect();
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
//#endregion
|
|
24
|
+
export { CheqdModule };
|
|
25
|
+
//# sourceMappingURL=CheqdModule.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdModule.mjs","names":[],"sources":["../src/CheqdModule.ts"],"sourcesContent":["import type { AgentContext, DependencyManager, Module } from '@credo-ts/core'\nimport { Buffer } from '@credo-ts/core'\nimport { CheqdApi } from './CheqdApi'\nimport type { CheqdModuleConfigOptions } from './CheqdModuleConfig'\nimport { CheqdModuleConfig } from './CheqdModuleConfig'\nimport { CheqdLedgerService } from './ledger'\n\nexport class CheqdModule implements Module {\n public readonly config: CheqdModuleConfig\n public readonly api = CheqdApi\n\n public constructor(config: CheqdModuleConfigOptions) {\n this.config = new CheqdModuleConfig(config)\n }\n\n public register(dependencyManager: DependencyManager) {\n // Register config\n dependencyManager.registerInstance(CheqdModuleConfig, this.config)\n\n dependencyManager.registerSingleton(CheqdLedgerService)\n\n // Cheqd module needs Buffer to be available globally\n // If it is not available yet, we overwrite it with the\n // Buffer implementation from Credo\n global.Buffer = global.Buffer || Buffer\n }\n\n public async initialize(agentContext: AgentContext): Promise<void> {\n // not required\n const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService)\n // We don't await it, as it impact startup time\n void cheqdLedgerService.connect()\n }\n}\n"],"mappings":";;;;;;;AAOA,IAAa,cAAb,MAA2C;CAIzC,AAAO,YAAY,QAAkC;OAFrC,MAAM;AAGpB,OAAK,SAAS,IAAI,kBAAkB,OAAO;;CAG7C,AAAO,SAAS,mBAAsC;AAEpD,oBAAkB,iBAAiB,mBAAmB,KAAK,OAAO;AAElE,oBAAkB,kBAAkB,mBAAmB;AAKvD,SAAO,SAAS,OAAO,UAAU;;CAGnC,MAAa,WAAW,cAA2C;AAIjE,EAF2B,aAAa,kBAAkB,QAAQ,mBAAmB,CAE7D,SAAS"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
//#region src/CheqdModuleConfig.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* CheqdModuleConfigOptions defines the interface for the options of the CheqdModuleConfig class.
|
|
4
|
+
*/
|
|
5
|
+
interface CheqdModuleConfigOptions {
|
|
6
|
+
networks: NetworkConfig[];
|
|
7
|
+
}
|
|
8
|
+
interface NetworkConfig {
|
|
9
|
+
rpcUrl?: string;
|
|
10
|
+
cosmosPayerSeed?: string;
|
|
11
|
+
network: string;
|
|
12
|
+
}
|
|
13
|
+
declare class CheqdModuleConfig {
|
|
14
|
+
private options;
|
|
15
|
+
constructor(options: CheqdModuleConfigOptions);
|
|
16
|
+
/** See {@link CheqdModuleConfigOptions.networks} */
|
|
17
|
+
get networks(): NetworkConfig[];
|
|
18
|
+
}
|
|
19
|
+
//#endregion
|
|
20
|
+
export { CheqdModuleConfig, CheqdModuleConfigOptions };
|
|
21
|
+
//# sourceMappingURL=CheqdModuleConfig.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdModuleConfig.d.mts","names":[],"sources":["../src/CheqdModuleConfig.ts"],"sourcesContent":[],"mappings":";;AAGA;AAIA;AAMa,UAVI,wBAAA,CAaa;YAZlB;;UAGK,aAAA;;;;;cAMJ,iBAAA;;uBAGiB;;kBAKT"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
//#region src/CheqdModuleConfig.ts
|
|
2
|
+
var CheqdModuleConfig = class {
|
|
3
|
+
constructor(options) {
|
|
4
|
+
this.options = options;
|
|
5
|
+
}
|
|
6
|
+
/** See {@link CheqdModuleConfigOptions.networks} */
|
|
7
|
+
get networks() {
|
|
8
|
+
return this.options.networks;
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
//#endregion
|
|
13
|
+
export { CheqdModuleConfig };
|
|
14
|
+
//# sourceMappingURL=CheqdModuleConfig.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdModuleConfig.mjs","names":[],"sources":["../src/CheqdModuleConfig.ts"],"sourcesContent":["/**\n * CheqdModuleConfigOptions defines the interface for the options of the CheqdModuleConfig class.\n */\nexport interface CheqdModuleConfigOptions {\n networks: NetworkConfig[]\n}\n\nexport interface NetworkConfig {\n rpcUrl?: string\n cosmosPayerSeed?: string\n network: string\n}\n\nexport class CheqdModuleConfig {\n private options: CheqdModuleConfigOptions\n\n public constructor(options: CheqdModuleConfigOptions) {\n this.options = options\n }\n\n /** See {@link CheqdModuleConfigOptions.networks} */\n public get networks() {\n return this.options.networks\n }\n}\n"],"mappings":";AAaA,IAAa,oBAAb,MAA+B;CAG7B,AAAO,YAAY,SAAmC;AACpD,OAAK,UAAU;;;CAIjB,IAAW,WAAW;AACpB,SAAO,KAAK,QAAQ"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
//#region \0@oxc-project+runtime@0.99.0/helpers/decorate.js
|
|
2
|
+
function __decorate(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
|
+
|
|
9
|
+
//#endregion
|
|
10
|
+
export { __decorate };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { CheqdAnonCredsRegistry } from "./services/CheqdAnonCredsRegistry.mjs";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { CheqdAnonCredsRegistry } from "./services/CheqdAnonCredsRegistry.mjs";
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { AnonCredsRegistry, GetCredentialDefinitionReturn, GetRevocationRegistryDefinitionReturn, GetRevocationStatusListReturn, GetSchemaReturn, RegisterCredentialDefinitionOptions, RegisterCredentialDefinitionReturn, RegisterRevocationRegistryDefinitionOptions, RegisterRevocationRegistryDefinitionReturn, RegisterRevocationStatusListOptions, RegisterRevocationStatusListReturn, RegisterSchemaOptions, RegisterSchemaReturn } from "@credo-ts/anoncreds";
|
|
2
|
+
import { AgentContext } from "@credo-ts/core";
|
|
3
|
+
|
|
4
|
+
//#region src/anoncreds/services/CheqdAnonCredsRegistry.d.ts
|
|
5
|
+
declare class CheqdAnonCredsRegistry implements AnonCredsRegistry {
|
|
6
|
+
methodName: string;
|
|
7
|
+
allowsCaching: boolean;
|
|
8
|
+
allowsLocalRecord: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* This class supports resolving and registering objects with cheqd identifiers.
|
|
11
|
+
* It needs to include support for the schema, credential definition, revocation registry as well
|
|
12
|
+
* as the issuer id (which is needed when registering objects).
|
|
13
|
+
*/
|
|
14
|
+
readonly supportedIdentifier: RegExp;
|
|
15
|
+
getSchema(agentContext: AgentContext, schemaId: string): Promise<GetSchemaReturn>;
|
|
16
|
+
registerSchema(agentContext: AgentContext, options: RegisterSchemaOptions): Promise<RegisterSchemaReturn>;
|
|
17
|
+
registerCredentialDefinition(agentContext: AgentContext, options: RegisterCredentialDefinitionOptions): Promise<RegisterCredentialDefinitionReturn>;
|
|
18
|
+
getCredentialDefinition(agentContext: AgentContext, credentialDefinitionId: string): Promise<GetCredentialDefinitionReturn>;
|
|
19
|
+
getRevocationRegistryDefinition(agentContext: AgentContext, revocationRegistryDefinitionId: string): Promise<GetRevocationRegistryDefinitionReturn>;
|
|
20
|
+
registerRevocationRegistryDefinition(agentContext: AgentContext, {
|
|
21
|
+
revocationRegistryDefinition,
|
|
22
|
+
options
|
|
23
|
+
}: RegisterRevocationRegistryDefinitionOptions): Promise<RegisterRevocationRegistryDefinitionReturn>;
|
|
24
|
+
getRevocationStatusList(agentContext: AgentContext, revocationRegistryId: string, timestamp: number): Promise<GetRevocationStatusListReturn>;
|
|
25
|
+
registerRevocationStatusList(agentContext: AgentContext, {
|
|
26
|
+
revocationStatusList,
|
|
27
|
+
options
|
|
28
|
+
}: RegisterRevocationStatusListOptions): Promise<RegisterRevocationStatusListReturn>;
|
|
29
|
+
}
|
|
30
|
+
//#endregion
|
|
31
|
+
export { CheqdAnonCredsRegistry };
|
|
32
|
+
//# sourceMappingURL=CheqdAnonCredsRegistry.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CheqdAnonCredsRegistry.d.mts","names":[],"sources":["../../../src/anoncreds/services/CheqdAnonCredsRegistry.ts"],"sourcesContent":[],"mappings":";;;;cAkCa,sBAAA,YAAkC;;EAAlC,aAAA,EAAA,OAAA;EAWwB,iBAAA,EAAA,OAAA;EAEE;;;;;EA4C1B,SAAA,mBAAA,EA9CwB,MA8CxB;EAAR,SAAA,CAAA,YAAA,EA5CkC,YA4ClC,EAAA,QAAA,EAAA,MAAA,CAAA,EA5CmE,OA4CnE,CA5C2E,eA4C3E,CAAA;EAmDa,cAAA,CAAA,YAAA,EArDA,YAqDA,EAAA,OAAA,EApDL,qBAoDK,CAAA,EAnDb,OAmDa,CAnDL,oBAmDK,CAAA;EACL,4BAAA,CAAA,YAAA,EADK,YACL,EAAA,OAAA,EAAA,mCAAA,CAAA,EACR,OADQ,CACA,kCADA,CAAA;EACA,uBAAA,CAAA,YAAA,EAgEK,YAhEL,EAAA,sBAAA,EAAA,MAAA,CAAA,EAkER,OAlEQ,CAkEA,6BAlEA,CAAA;EAAR,+BAAA,CAAA,YAAA,EA0Ga,YA1Gb,EAAA,8BAAA,EAAA,MAAA,CAAA,EA4GA,OA5GA,CA4GQ,qCA5GR,CAAA;EAgEa,oCAAA,CAAA,YAAA,EAiGA,YAjGA,EAAA;IAAA,4BAAA;IAAA;EAAA,CAAA,EAkG6B,2CAlG7B,CAAA,EAmGb,OAnGa,CAmGL,0CAnGK,CAAA;EAEL,uBAAA,CAAA,YAAA,EAyKK,YAzKL,EAAA,oBAAA,EAAA,MAAA,EAAA,SAAA,EAAA,MAAA,CAAA,EA4KR,OA5KQ,CA4KA,6BA5KA,CAAA;EAAR,4BAAA,CAAA,YAAA,EAyOa,YAzOb,EAAA;IAAA,oBAAA;IAAA;EAAA,CAAA,EA0OkC,mCA1OlC,CAAA,EA2OA,OA3OA,CA2OQ,kCA3OR,CAAA"}
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
import { cheqdAnonCredsResourceTypes, cheqdSdkAnonCredsRegistryIdentifierRegex, parseCheqdDid } from "../utils/identifiers.mjs";
|
|
2
|
+
import { CheqdDidRegistrar } from "../../dids/CheqdDidRegistrar.mjs";
|
|
3
|
+
import { CheqdDidResolver } from "../../dids/CheqdDidResolver.mjs";
|
|
4
|
+
import "../../dids/index.mjs";
|
|
5
|
+
import { CheqdCredentialDefinition, CheqdRevocationRegistryDefinition, CheqdRevocationStatusList, CheqdSchema } from "../utils/transform.mjs";
|
|
6
|
+
import { AnonCredsApi, AnonCredsRegistryService } from "@credo-ts/anoncreds";
|
|
7
|
+
import { CredoError, Hasher, JsonTransformer, TypedArrayEncoder, utils } from "@credo-ts/core";
|
|
8
|
+
|
|
9
|
+
//#region src/anoncreds/services/CheqdAnonCredsRegistry.ts
|
|
10
|
+
var CheqdAnonCredsRegistry = class {
|
|
11
|
+
constructor() {
|
|
12
|
+
this.methodName = "cheqd";
|
|
13
|
+
this.allowsCaching = true;
|
|
14
|
+
this.allowsLocalRecord = true;
|
|
15
|
+
this.supportedIdentifier = cheqdSdkAnonCredsRegistryIdentifierRegex;
|
|
16
|
+
}
|
|
17
|
+
async getSchema(agentContext, schemaId) {
|
|
18
|
+
try {
|
|
19
|
+
agentContext.dependencyManager.resolve(AnonCredsApi);
|
|
20
|
+
const cheqdDidResolver = agentContext.dependencyManager.resolve(CheqdDidResolver);
|
|
21
|
+
const parsedDid = parseCheqdDid(schemaId);
|
|
22
|
+
if (!parsedDid) throw new CredoError(`Invalid schemaId: ${schemaId}`);
|
|
23
|
+
agentContext.config.logger.trace(`Submitting get schema request for schema '${schemaId}' to ledger`);
|
|
24
|
+
const response = await cheqdDidResolver.resolveResource(agentContext, schemaId);
|
|
25
|
+
if (response.error) throw new Error(`${response.error}: ${response.message}`);
|
|
26
|
+
const schema = JsonTransformer.fromJSON(response.resource, CheqdSchema);
|
|
27
|
+
return {
|
|
28
|
+
schema: {
|
|
29
|
+
attrNames: schema.attrNames,
|
|
30
|
+
name: schema.name,
|
|
31
|
+
version: schema.version,
|
|
32
|
+
issuerId: parsedDid.did
|
|
33
|
+
},
|
|
34
|
+
schemaId,
|
|
35
|
+
resolutionMetadata: {},
|
|
36
|
+
schemaMetadata: {}
|
|
37
|
+
};
|
|
38
|
+
} catch (error) {
|
|
39
|
+
agentContext.config.logger.error(`Error retrieving schema '${schemaId}'`, {
|
|
40
|
+
error,
|
|
41
|
+
schemaId
|
|
42
|
+
});
|
|
43
|
+
return {
|
|
44
|
+
schemaId,
|
|
45
|
+
resolutionMetadata: {
|
|
46
|
+
error: "notFound",
|
|
47
|
+
message: `unable to resolve schema: ${error.message}`
|
|
48
|
+
},
|
|
49
|
+
schemaMetadata: {}
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
async registerSchema(agentContext, options) {
|
|
54
|
+
try {
|
|
55
|
+
const cheqdDidRegistrar = agentContext.dependencyManager.resolve(CheqdDidRegistrar);
|
|
56
|
+
const schema = options.schema;
|
|
57
|
+
const schemaResource = {
|
|
58
|
+
id: utils.uuid(),
|
|
59
|
+
name: `${schema.name}-Schema`,
|
|
60
|
+
resourceType: cheqdAnonCredsResourceTypes.schema,
|
|
61
|
+
data: {
|
|
62
|
+
name: schema.name,
|
|
63
|
+
version: schema.version,
|
|
64
|
+
attrNames: schema.attrNames
|
|
65
|
+
},
|
|
66
|
+
version: schema.version
|
|
67
|
+
};
|
|
68
|
+
const response = await cheqdDidRegistrar.createResource(agentContext, schema.issuerId, schemaResource);
|
|
69
|
+
if (response.resourceState.state !== "finished") throw new CredoError(response.resourceState.reason ?? "Unknown error");
|
|
70
|
+
return {
|
|
71
|
+
schemaState: {
|
|
72
|
+
state: "finished",
|
|
73
|
+
schema,
|
|
74
|
+
schemaId: `${schema.issuerId}/resources/${schemaResource.id}`
|
|
75
|
+
},
|
|
76
|
+
registrationMetadata: {},
|
|
77
|
+
schemaMetadata: {}
|
|
78
|
+
};
|
|
79
|
+
} catch (error) {
|
|
80
|
+
agentContext.config.logger.debug(`Error registering schema for did '${options.schema.issuerId}'`, {
|
|
81
|
+
error,
|
|
82
|
+
did: options.schema.issuerId,
|
|
83
|
+
schema: options
|
|
84
|
+
});
|
|
85
|
+
return {
|
|
86
|
+
schemaMetadata: {},
|
|
87
|
+
registrationMetadata: {},
|
|
88
|
+
schemaState: {
|
|
89
|
+
state: "failed",
|
|
90
|
+
schema: options.schema,
|
|
91
|
+
reason: `unknownError: ${error.message}`
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
async registerCredentialDefinition(agentContext, options) {
|
|
97
|
+
try {
|
|
98
|
+
const cheqdDidRegistrar = agentContext.dependencyManager.resolve(CheqdDidRegistrar);
|
|
99
|
+
const { credentialDefinition } = options;
|
|
100
|
+
const schema = await agentContext.resolve(AnonCredsRegistryService).getSchema(agentContext, credentialDefinition.schemaId);
|
|
101
|
+
if (!schema.schema) throw new CredoError(`Schema not found for schemaId: ${credentialDefinition.schemaId}`);
|
|
102
|
+
const credDefName = `${schema.schema.name}-${credentialDefinition.tag}`;
|
|
103
|
+
const credDefNameHashBuffer = Hasher.hash(credDefName, "sha-256");
|
|
104
|
+
const credDefResource = {
|
|
105
|
+
id: utils.uuid(),
|
|
106
|
+
name: TypedArrayEncoder.toHex(credDefNameHashBuffer),
|
|
107
|
+
resourceType: cheqdAnonCredsResourceTypes.credentialDefinition,
|
|
108
|
+
data: {
|
|
109
|
+
type: credentialDefinition.type,
|
|
110
|
+
tag: credentialDefinition.tag,
|
|
111
|
+
value: credentialDefinition.value,
|
|
112
|
+
schemaId: credentialDefinition.schemaId
|
|
113
|
+
},
|
|
114
|
+
version: utils.uuid()
|
|
115
|
+
};
|
|
116
|
+
const response = await cheqdDidRegistrar.createResource(agentContext, credentialDefinition.issuerId, credDefResource);
|
|
117
|
+
if (response.resourceState.state !== "finished") throw new CredoError(response.resourceState.reason ?? "Unknown error");
|
|
118
|
+
return {
|
|
119
|
+
credentialDefinitionState: {
|
|
120
|
+
state: "finished",
|
|
121
|
+
credentialDefinition,
|
|
122
|
+
credentialDefinitionId: `${credentialDefinition.issuerId}/resources/${credDefResource.id}`
|
|
123
|
+
},
|
|
124
|
+
registrationMetadata: {},
|
|
125
|
+
credentialDefinitionMetadata: {}
|
|
126
|
+
};
|
|
127
|
+
} catch (error) {
|
|
128
|
+
agentContext.config.logger.error(`Error registering credential definition for did '${options.credentialDefinition.issuerId}'`, {
|
|
129
|
+
error,
|
|
130
|
+
did: options.credentialDefinition.issuerId,
|
|
131
|
+
schema: options
|
|
132
|
+
});
|
|
133
|
+
return {
|
|
134
|
+
credentialDefinitionMetadata: {},
|
|
135
|
+
registrationMetadata: {},
|
|
136
|
+
credentialDefinitionState: {
|
|
137
|
+
state: "failed",
|
|
138
|
+
credentialDefinition: options.credentialDefinition,
|
|
139
|
+
reason: `unknownError: ${error.message}`
|
|
140
|
+
}
|
|
141
|
+
};
|
|
142
|
+
}
|
|
143
|
+
}
|
|
144
|
+
async getCredentialDefinition(agentContext, credentialDefinitionId) {
|
|
145
|
+
try {
|
|
146
|
+
const cheqdDidResolver = agentContext.dependencyManager.resolve(CheqdDidResolver);
|
|
147
|
+
const parsedDid = parseCheqdDid(credentialDefinitionId);
|
|
148
|
+
if (!parsedDid) throw new CredoError(`Invalid credentialDefinitionId: ${credentialDefinitionId}`);
|
|
149
|
+
agentContext.config.logger.trace(`Submitting get credential definition request for '${credentialDefinitionId}' to ledger`);
|
|
150
|
+
const response = await cheqdDidResolver.resolveResource(agentContext, credentialDefinitionId);
|
|
151
|
+
if (response.error) throw new Error(`${response.error}: ${response.message}`);
|
|
152
|
+
return {
|
|
153
|
+
credentialDefinition: {
|
|
154
|
+
...JsonTransformer.fromJSON(response.resource, CheqdCredentialDefinition),
|
|
155
|
+
issuerId: parsedDid.did
|
|
156
|
+
},
|
|
157
|
+
credentialDefinitionId,
|
|
158
|
+
resolutionMetadata: {},
|
|
159
|
+
credentialDefinitionMetadata: response.resourceMetadata ?? {}
|
|
160
|
+
};
|
|
161
|
+
} catch (error) {
|
|
162
|
+
agentContext.config.logger.error(`Error retrieving credential definition '${credentialDefinitionId}'`, {
|
|
163
|
+
error,
|
|
164
|
+
credentialDefinitionId
|
|
165
|
+
});
|
|
166
|
+
return {
|
|
167
|
+
credentialDefinitionId,
|
|
168
|
+
resolutionMetadata: {
|
|
169
|
+
error: "notFound",
|
|
170
|
+
message: `unable to resolve credential definition: ${error.message}`
|
|
171
|
+
},
|
|
172
|
+
credentialDefinitionMetadata: {}
|
|
173
|
+
};
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
async getRevocationRegistryDefinition(agentContext, revocationRegistryDefinitionId) {
|
|
177
|
+
try {
|
|
178
|
+
const cheqdDidResolver = agentContext.dependencyManager.resolve(CheqdDidResolver);
|
|
179
|
+
const parsedDid = parseCheqdDid(revocationRegistryDefinitionId);
|
|
180
|
+
if (!parsedDid) throw new CredoError(`Invalid revocationRegistryDefinitionId: ${revocationRegistryDefinitionId}`);
|
|
181
|
+
agentContext.config.logger.trace(`Submitting get revocation registry definition request for '${revocationRegistryDefinitionId}' to ledger`);
|
|
182
|
+
const searchDid = parsedDid.path ? revocationRegistryDefinitionId : `${revocationRegistryDefinitionId}${revocationRegistryDefinitionId.includes("?") ? "&" : "?"}resourceType=${cheqdAnonCredsResourceTypes.revocationRegistryDefinition}`;
|
|
183
|
+
const response = await cheqdDidResolver.resolveResource(agentContext, searchDid);
|
|
184
|
+
if (response.error) throw new Error(`${response.error}: ${response.message}`);
|
|
185
|
+
return {
|
|
186
|
+
revocationRegistryDefinition: {
|
|
187
|
+
...JsonTransformer.fromJSON(response.resource, CheqdRevocationRegistryDefinition),
|
|
188
|
+
issuerId: parsedDid.did
|
|
189
|
+
},
|
|
190
|
+
revocationRegistryDefinitionId,
|
|
191
|
+
resolutionMetadata: {},
|
|
192
|
+
revocationRegistryDefinitionMetadata: response.resourceMetadata ?? {}
|
|
193
|
+
};
|
|
194
|
+
} catch (error) {
|
|
195
|
+
agentContext.config.logger.error(`Error retrieving revocation registry definition '${revocationRegistryDefinitionId}'`, {
|
|
196
|
+
error,
|
|
197
|
+
revocationRegistryDefinitionId
|
|
198
|
+
});
|
|
199
|
+
return {
|
|
200
|
+
revocationRegistryDefinitionId,
|
|
201
|
+
resolutionMetadata: {
|
|
202
|
+
error: "notFound",
|
|
203
|
+
message: `unable to resolve revocation registry definition: ${error.message}`
|
|
204
|
+
},
|
|
205
|
+
revocationRegistryDefinitionMetadata: {}
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
async registerRevocationRegistryDefinition(agentContext, { revocationRegistryDefinition, options }) {
|
|
210
|
+
try {
|
|
211
|
+
const credentialDefinition = await agentContext.resolve(AnonCredsRegistryService).getCredentialDefinition(agentContext, revocationRegistryDefinition.credDefId);
|
|
212
|
+
if (!credentialDefinition.credentialDefinition) throw new CredoError(`Credential definition not found for id: ${revocationRegistryDefinition.credDefId}`);
|
|
213
|
+
const credentialDefinitionName = credentialDefinition.credentialDefinitionMetadata.name;
|
|
214
|
+
if (!credentialDefinitionName) throw new CredoError(`Credential definition name not found for id: ${revocationRegistryDefinition.credDefId}`);
|
|
215
|
+
const cheqdDidRegistrar = agentContext.dependencyManager.resolve(CheqdDidRegistrar);
|
|
216
|
+
const revocDefName = `${credentialDefinitionName}-${revocationRegistryDefinition.tag}`;
|
|
217
|
+
const revocDefNameHashedBuffer = Hasher.hash(revocDefName, "sha-256");
|
|
218
|
+
const revocationRegistryDefinitionResource = {
|
|
219
|
+
id: utils.uuid(),
|
|
220
|
+
name: TypedArrayEncoder.toHex(revocDefNameHashedBuffer),
|
|
221
|
+
resourceType: cheqdAnonCredsResourceTypes.revocationRegistryDefinition,
|
|
222
|
+
data: {
|
|
223
|
+
credDefId: revocationRegistryDefinition.credDefId,
|
|
224
|
+
revocDefType: revocationRegistryDefinition.revocDefType,
|
|
225
|
+
tag: revocationRegistryDefinition.tag,
|
|
226
|
+
value: revocationRegistryDefinition.value
|
|
227
|
+
},
|
|
228
|
+
version: utils.uuid()
|
|
229
|
+
};
|
|
230
|
+
const response = await cheqdDidRegistrar.createResource(agentContext, revocationRegistryDefinition.issuerId, revocationRegistryDefinitionResource);
|
|
231
|
+
if (response.resourceState.state !== "finished") throw new CredoError(response.resourceState.reason ?? "Unknown error");
|
|
232
|
+
return {
|
|
233
|
+
revocationRegistryDefinitionState: {
|
|
234
|
+
state: "finished",
|
|
235
|
+
revocationRegistryDefinition,
|
|
236
|
+
revocationRegistryDefinitionId: `${revocationRegistryDefinition.issuerId}/resources/${revocationRegistryDefinitionResource.id}`
|
|
237
|
+
},
|
|
238
|
+
registrationMetadata: {},
|
|
239
|
+
revocationRegistryDefinitionMetadata: response.resourceMetadata ?? {}
|
|
240
|
+
};
|
|
241
|
+
} catch (error) {
|
|
242
|
+
agentContext.config.logger.error(`Error registering revocation registry definition for did '${revocationRegistryDefinition.issuerId}'`, {
|
|
243
|
+
error,
|
|
244
|
+
did: revocationRegistryDefinition.issuerId,
|
|
245
|
+
options
|
|
246
|
+
});
|
|
247
|
+
return {
|
|
248
|
+
revocationRegistryDefinitionMetadata: {},
|
|
249
|
+
registrationMetadata: {},
|
|
250
|
+
revocationRegistryDefinitionState: {
|
|
251
|
+
state: "failed",
|
|
252
|
+
revocationRegistryDefinition,
|
|
253
|
+
reason: `unknownError: ${error.message}`
|
|
254
|
+
}
|
|
255
|
+
};
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
async getRevocationStatusList(agentContext, revocationRegistryId, timestamp) {
|
|
259
|
+
try {
|
|
260
|
+
const cheqdDidResolver = agentContext.dependencyManager.resolve(CheqdDidResolver);
|
|
261
|
+
const parsedDid = parseCheqdDid(revocationRegistryId);
|
|
262
|
+
if (!parsedDid) throw new CredoError(`Invalid revocationRegistryId: ${revocationRegistryId}`);
|
|
263
|
+
agentContext.config.logger.trace(`Submitting get revocation status request for '${revocationRegistryId}' to ledger`);
|
|
264
|
+
const revocationRegistryDefinition = await agentContext.resolve(AnonCredsRegistryService).getRevocationRegistryDefinition(agentContext, revocationRegistryId);
|
|
265
|
+
if (!revocationRegistryDefinition.revocationRegistryDefinition) throw new CredoError(`Revocation registry definition not found for id: ${revocationRegistryId}`);
|
|
266
|
+
const revocationRegistryDefinitionName = revocationRegistryDefinition.revocationRegistryDefinitionMetadata.name;
|
|
267
|
+
if (!revocationRegistryDefinitionName) throw new CredoError(`Revocation registry definition name not found for id: ${revocationRegistryId}`);
|
|
268
|
+
const response = await cheqdDidResolver.resolveResource(agentContext, `${parsedDid.did}?resourceType=${cheqdAnonCredsResourceTypes.revocationStatusList}&resourceVersionTime=${timestamp}&resourceName=${revocationRegistryDefinitionName}`);
|
|
269
|
+
if (response.error) throw new Error(`${response.error}: ${response.message}`);
|
|
270
|
+
const revocationStatusList = JsonTransformer.fromJSON(response.resource, CheqdRevocationStatusList);
|
|
271
|
+
const statusListTimestamp = response.resourceMetadata?.created ? Math.floor(response.resourceMetadata.created.getTime() / 1e3) : void 0;
|
|
272
|
+
if (statusListTimestamp === void 0) throw new CredoError(`Unable to extract revocation status list timestamp from resource ${revocationRegistryId}`);
|
|
273
|
+
return {
|
|
274
|
+
revocationStatusList: {
|
|
275
|
+
...revocationStatusList,
|
|
276
|
+
issuerId: parsedDid.did,
|
|
277
|
+
timestamp: statusListTimestamp
|
|
278
|
+
},
|
|
279
|
+
resolutionMetadata: {},
|
|
280
|
+
revocationStatusListMetadata: response.resourceMetadata ?? {}
|
|
281
|
+
};
|
|
282
|
+
} catch (error) {
|
|
283
|
+
agentContext.config.logger.error(`Error retrieving revocation registry status list '${revocationRegistryId}'`, {
|
|
284
|
+
error,
|
|
285
|
+
revocationRegistryId
|
|
286
|
+
});
|
|
287
|
+
return {
|
|
288
|
+
resolutionMetadata: {
|
|
289
|
+
error: "notFound",
|
|
290
|
+
message: `unable to resolve revocation registry status list: ${error.message}`
|
|
291
|
+
},
|
|
292
|
+
revocationStatusListMetadata: {}
|
|
293
|
+
};
|
|
294
|
+
}
|
|
295
|
+
}
|
|
296
|
+
async registerRevocationStatusList(agentContext, { revocationStatusList, options }) {
|
|
297
|
+
try {
|
|
298
|
+
const revocationRegistryDefinition = await agentContext.resolve(AnonCredsRegistryService).getRevocationRegistryDefinition(agentContext, revocationStatusList.revRegDefId);
|
|
299
|
+
if (!revocationRegistryDefinition.revocationRegistryDefinition) throw new CredoError(`Revocation registry definition not found for id: ${revocationStatusList.revRegDefId}`);
|
|
300
|
+
const revocationRegistryDefinitionName = revocationRegistryDefinition.revocationRegistryDefinitionMetadata.name;
|
|
301
|
+
if (!revocationRegistryDefinitionName) throw new CredoError(`Revocation registry definition name not found for id: ${revocationStatusList.revRegDefId}`);
|
|
302
|
+
const cheqdDidRegistrar = agentContext.dependencyManager.resolve(CheqdDidRegistrar);
|
|
303
|
+
const revocationStatusListResource = {
|
|
304
|
+
id: utils.uuid(),
|
|
305
|
+
name: revocationRegistryDefinitionName,
|
|
306
|
+
resourceType: cheqdAnonCredsResourceTypes.revocationStatusList,
|
|
307
|
+
data: {
|
|
308
|
+
currentAccumulator: revocationStatusList.currentAccumulator,
|
|
309
|
+
revRegDefId: revocationStatusList.revRegDefId,
|
|
310
|
+
revocationList: revocationStatusList.revocationList
|
|
311
|
+
},
|
|
312
|
+
version: utils.uuid()
|
|
313
|
+
};
|
|
314
|
+
const response = await cheqdDidRegistrar.createResource(agentContext, revocationStatusList.issuerId, revocationStatusListResource);
|
|
315
|
+
if (response.resourceState.state !== "finished") throw new CredoError(response.resourceState.reason ?? "Unknown error");
|
|
316
|
+
const nowTimestamp = Math.floor(Date.now() / 1e3);
|
|
317
|
+
return {
|
|
318
|
+
revocationStatusListState: {
|
|
319
|
+
state: "finished",
|
|
320
|
+
revocationStatusList: {
|
|
321
|
+
...revocationStatusList,
|
|
322
|
+
timestamp: nowTimestamp
|
|
323
|
+
}
|
|
324
|
+
},
|
|
325
|
+
registrationMetadata: {},
|
|
326
|
+
revocationStatusListMetadata: response.resourceMetadata ?? {}
|
|
327
|
+
};
|
|
328
|
+
} catch (error) {
|
|
329
|
+
agentContext.config.logger.error(`Error registering revocation status list for did '${revocationStatusList.issuerId}'`, {
|
|
330
|
+
error,
|
|
331
|
+
did: revocationStatusList.issuerId,
|
|
332
|
+
options
|
|
333
|
+
});
|
|
334
|
+
return {
|
|
335
|
+
revocationStatusListMetadata: {},
|
|
336
|
+
registrationMetadata: {},
|
|
337
|
+
revocationStatusListState: {
|
|
338
|
+
state: "failed",
|
|
339
|
+
revocationStatusList,
|
|
340
|
+
reason: `unknownError: ${error.message}`
|
|
341
|
+
}
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
};
|
|
346
|
+
|
|
347
|
+
//#endregion
|
|
348
|
+
export { CheqdAnonCredsRegistry };
|
|
349
|
+
//# sourceMappingURL=CheqdAnonCredsRegistry.mjs.map
|