@credo-ts/cheqd 0.6.1-pr-2091-20241119140918 → 0.6.2-alpha-20251210145840

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 (88) hide show
  1. package/build/CheqdApi.d.mts +45 -0
  2. package/build/CheqdApi.d.mts.map +1 -0
  3. package/build/CheqdApi.mjs +26 -0
  4. package/build/CheqdApi.mjs.map +1 -0
  5. package/build/CheqdModule.d.mts +15 -0
  6. package/build/CheqdModule.d.mts.map +1 -0
  7. package/build/CheqdModule.mjs +25 -0
  8. package/build/CheqdModule.mjs.map +1 -0
  9. package/build/CheqdModuleConfig.d.mts +21 -0
  10. package/build/CheqdModuleConfig.d.mts.map +1 -0
  11. package/build/CheqdModuleConfig.mjs +14 -0
  12. package/build/CheqdModuleConfig.mjs.map +1 -0
  13. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs +10 -0
  14. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs +7 -0
  15. package/build/_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs +9 -0
  16. package/build/anoncreds/index.d.mts +1 -0
  17. package/build/anoncreds/index.mjs +1 -0
  18. package/build/anoncreds/services/CheqdAnonCredsRegistry.d.mts +32 -0
  19. package/build/anoncreds/services/CheqdAnonCredsRegistry.d.mts.map +1 -0
  20. package/build/anoncreds/services/CheqdAnonCredsRegistry.mjs +349 -0
  21. package/build/anoncreds/services/CheqdAnonCredsRegistry.mjs.map +1 -0
  22. package/build/anoncreds/utils/identifiers.mjs +56 -0
  23. package/build/anoncreds/utils/identifiers.mjs.map +1 -0
  24. package/build/anoncreds/utils/transform.mjs +104 -0
  25. package/build/anoncreds/utils/transform.mjs.map +1 -0
  26. package/build/dids/CheqdDidRegistrar.d.mts +102 -0
  27. package/build/dids/CheqdDidRegistrar.d.mts.map +1 -0
  28. package/build/dids/CheqdDidRegistrar.mjs +446 -0
  29. package/build/dids/CheqdDidRegistrar.mjs.map +1 -0
  30. package/build/dids/CheqdDidResolver.d.mts +30 -0
  31. package/build/dids/CheqdDidResolver.d.mts.map +1 -0
  32. package/build/dids/CheqdDidResolver.mjs +135 -0
  33. package/build/dids/CheqdDidResolver.mjs.map +1 -0
  34. package/build/dids/didCheqdUtil.mjs +113 -0
  35. package/build/dids/didCheqdUtil.mjs.map +1 -0
  36. package/build/dids/index.d.mts +2 -0
  37. package/build/dids/index.mjs +2 -0
  38. package/build/index.d.mts +10 -0
  39. package/build/index.mjs +11 -0
  40. package/build/ledger/CheqdLedgerService.d.mts +35 -0
  41. package/build/ledger/CheqdLedgerService.d.mts.map +1 -0
  42. package/build/ledger/CheqdLedgerService.mjs +114 -0
  43. package/build/ledger/CheqdLedgerService.mjs.map +1 -0
  44. package/build/ledger/index.d.mts +1 -0
  45. package/build/ledger/index.mjs +1 -0
  46. package/package.json +22 -22
  47. package/build/CheqdApi.d.ts +0 -38
  48. package/build/CheqdApi.js +0 -34
  49. package/build/CheqdApi.js.map +0 -1
  50. package/build/CheqdModule.d.ts +0 -11
  51. package/build/CheqdModule.js +0 -33
  52. package/build/CheqdModule.js.map +0 -1
  53. package/build/CheqdModuleConfig.d.ts +0 -17
  54. package/build/CheqdModuleConfig.js +0 -14
  55. package/build/CheqdModuleConfig.js.map +0 -1
  56. package/build/anoncreds/index.d.ts +0 -1
  57. package/build/anoncreds/index.js +0 -6
  58. package/build/anoncreds/index.js.map +0 -1
  59. package/build/anoncreds/services/CheqdAnonCredsRegistry.d.ts +0 -19
  60. package/build/anoncreds/services/CheqdAnonCredsRegistry.js +0 -368
  61. package/build/anoncreds/services/CheqdAnonCredsRegistry.js.map +0 -1
  62. package/build/anoncreds/utils/identifiers.d.ts +0 -13
  63. package/build/anoncreds/utils/identifiers.js +0 -53
  64. package/build/anoncreds/utils/identifiers.js.map +0 -1
  65. package/build/anoncreds/utils/transform.d.ts +0 -43
  66. package/build/anoncreds/utils/transform.js +0 -170
  67. package/build/anoncreds/utils/transform.js.map +0 -1
  68. package/build/dids/CheqdDidRegistrar.d.ts +0 -86
  69. package/build/dids/CheqdDidRegistrar.js +0 -334
  70. package/build/dids/CheqdDidRegistrar.js.map +0 -1
  71. package/build/dids/CheqdDidResolver.d.ts +0 -25
  72. package/build/dids/CheqdDidResolver.js +0 -171
  73. package/build/dids/CheqdDidResolver.js.map +0 -1
  74. package/build/dids/didCheqdUtil.d.ts +0 -28
  75. package/build/dids/didCheqdUtil.js +0 -129
  76. package/build/dids/didCheqdUtil.js.map +0 -1
  77. package/build/dids/index.d.ts +0 -2
  78. package/build/dids/index.js +0 -8
  79. package/build/dids/index.js.map +0 -1
  80. package/build/index.d.ts +0 -5
  81. package/build/index.js +0 -17
  82. package/build/index.js.map +0 -1
  83. package/build/ledger/CheqdLedgerService.d.ts +0 -37
  84. package/build/ledger/CheqdLedgerService.js +0 -135
  85. package/build/ledger/CheqdLedgerService.js.map +0 -1
  86. package/build/ledger/index.d.ts +0 -1
  87. package/build/ledger/index.js +0 -6
  88. package/build/ledger/index.js.map +0 -1
@@ -0,0 +1,135 @@
1
+ import { cheqdDidMetadataRegex, cheqdDidRegex, cheqdDidVersionRegex, cheqdDidVersionsRegex, cheqdResourceMetadataRegex, cheqdResourceRegex, parseCheqdDid } from "../anoncreds/utils/identifiers.mjs";
2
+ import { filterResourcesByNameAndType, getClosestResourceVersion, renderResourceData } from "./didCheqdUtil.mjs";
3
+ import { CheqdLedgerService } from "../ledger/CheqdLedgerService.mjs";
4
+ import "../ledger/index.mjs";
5
+ import { CredoError, DidDocument, JsonTransformer, utils } from "@credo-ts/core";
6
+
7
+ //#region src/dids/CheqdDidResolver.ts
8
+ var CheqdDidResolver = class {
9
+ constructor() {
10
+ this.supportedMethods = ["cheqd"];
11
+ this.allowsCaching = true;
12
+ this.allowsLocalDidRecord = true;
13
+ }
14
+ async resolve(agentContext, did, parsed) {
15
+ const didDocumentMetadata = {};
16
+ try {
17
+ const parsedDid = parseCheqdDid(parsed.didUrl);
18
+ if (!parsedDid) throw new Error("Invalid DID");
19
+ switch (did) {
20
+ case did.match(cheqdDidRegex)?.input: return await this.resolveDidDoc(agentContext, parsedDid.did);
21
+ case did.match(cheqdDidVersionRegex)?.input: {
22
+ const version = did.split("/")[2];
23
+ return await this.resolveDidDoc(agentContext, parsedDid.did, version);
24
+ }
25
+ case did.match(cheqdDidVersionsRegex)?.input: return await this.resolveAllDidDocVersions(agentContext, parsedDid);
26
+ case did.match(cheqdDidMetadataRegex)?.input: return await this.dereferenceCollectionResources(agentContext, parsedDid);
27
+ case did.match(cheqdResourceMetadataRegex)?.input: return await this.dereferenceResourceMetadata(agentContext, parsedDid);
28
+ default: return {
29
+ didDocument: null,
30
+ didDocumentMetadata,
31
+ didResolutionMetadata: {
32
+ error: "Invalid request",
33
+ message: `Unsupported did Url: '${did}'`
34
+ }
35
+ };
36
+ }
37
+ } catch (error) {
38
+ return {
39
+ didDocument: null,
40
+ didDocumentMetadata,
41
+ didResolutionMetadata: {
42
+ error: "notFound",
43
+ message: `resolver_error: Unable to resolve did '${did}': ${error}`
44
+ }
45
+ };
46
+ }
47
+ }
48
+ async resolveResource(agentContext, did) {
49
+ const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService);
50
+ try {
51
+ const parsedDid = parseCheqdDid(did);
52
+ if (!parsedDid) throw new Error("Invalid DID");
53
+ const { params, id } = parsedDid;
54
+ let resourceId;
55
+ if (did.match(cheqdResourceRegex)?.input) resourceId = did.split("/")[2];
56
+ else if (params?.resourceName && params.resourceType) {
57
+ let resources = (await cheqdLedgerService.resolveCollectionResources(parsedDid.did, id)).resources;
58
+ resources = filterResourcesByNameAndType(resources, params.resourceName, params.resourceType);
59
+ if (!resources.length) throw new Error("No resources found");
60
+ let resource$1;
61
+ if (params.version) resource$1 = resources.find((resource$2) => resource$2.version === params.version);
62
+ else {
63
+ const date = params.resourceVersionTime ? /* @__PURE__ */ new Date(Number(params.resourceVersionTime) * 1e3) : /* @__PURE__ */ new Date();
64
+ resource$1 = getClosestResourceVersion(resources, date);
65
+ }
66
+ if (!resource$1) throw new Error("No resources found");
67
+ resourceId = resource$1.id;
68
+ } else return {
69
+ error: "notFound",
70
+ message: `resolver_error: Invalid did url '${did}'`
71
+ };
72
+ if (!utils.isValidUuid(resourceId)) throw new Error("Invalid resource Id");
73
+ const { resource, metadata } = await cheqdLedgerService.resolveResource(parsedDid.did, id, resourceId);
74
+ if (!resource || !metadata) throw new Error("resolver_error: Unable to resolve resource, Please try again");
75
+ return {
76
+ resource: await renderResourceData(resource.data, metadata.mediaType),
77
+ resourceMetadata: metadata,
78
+ resourceResolutionMetadata: {}
79
+ };
80
+ } catch (error) {
81
+ return {
82
+ error: "notFound",
83
+ message: `resolver_error: Unable to resolve resource '${did}': ${error}`
84
+ };
85
+ }
86
+ }
87
+ async resolveAllDidDocVersions(agentContext, parsedDid) {
88
+ const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService);
89
+ const { did } = parsedDid;
90
+ const { didDocumentVersionsMetadata } = await cheqdLedgerService.resolveMetadata(did);
91
+ return {
92
+ didDocument: new DidDocument({ id: did }),
93
+ didDocumentMetadata: didDocumentVersionsMetadata,
94
+ didResolutionMetadata: {}
95
+ };
96
+ }
97
+ async dereferenceCollectionResources(agentContext, parsedDid) {
98
+ const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService);
99
+ const { did, id } = parsedDid;
100
+ const metadata = await cheqdLedgerService.resolveCollectionResources(did, id);
101
+ return {
102
+ didDocument: new DidDocument({ id: did }),
103
+ didDocumentMetadata: { linkedResourceMetadata: metadata },
104
+ didResolutionMetadata: {}
105
+ };
106
+ }
107
+ async dereferenceResourceMetadata(agentContext, parsedDid) {
108
+ const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService);
109
+ const { did, id } = parsedDid;
110
+ if (!parsedDid.path) throw new CredoError(`Missing path in did ${parsedDid.did}`);
111
+ const [, , resourceId] = parsedDid.path.split("/");
112
+ if (!resourceId) throw new CredoError(`Missing resource id in didUrl ${parsedDid.didUrl}`);
113
+ const metadata = await cheqdLedgerService.resolveResourceMetadata(did, id, resourceId);
114
+ return {
115
+ didDocument: new DidDocument({ id: did }),
116
+ didDocumentMetadata: { linkedResourceMetadata: metadata },
117
+ didResolutionMetadata: {}
118
+ };
119
+ }
120
+ async resolveDidDoc(agentContext, did, version) {
121
+ const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService);
122
+ const { didDocument, didDocumentMetadata } = await cheqdLedgerService.resolve(did, version);
123
+ const { resources } = await cheqdLedgerService.resolveCollectionResources(did, did.split(":")[3]);
124
+ didDocumentMetadata.linkedResourceMetadata = resources;
125
+ return {
126
+ didDocument: JsonTransformer.fromJSON(didDocument, DidDocument),
127
+ didDocumentMetadata,
128
+ didResolutionMetadata: {}
129
+ };
130
+ }
131
+ };
132
+
133
+ //#endregion
134
+ export { CheqdDidResolver };
135
+ //# sourceMappingURL=CheqdDidResolver.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheqdDidResolver.mjs","names":["resourceId: string","resource: Metadata | undefined","resource"],"sources":["../../src/dids/CheqdDidResolver.ts"],"sourcesContent":["import type { Metadata } from '@cheqd/ts-proto/cheqd/resource/v2'\nimport type { AgentContext, DidResolutionResult, DidResolver, ParsedDid } from '@credo-ts/core'\nimport { CredoError, DidDocument, JsonTransformer, utils } from '@credo-ts/core'\nimport type { ParsedCheqdDid } from '../anoncreds/utils/identifiers'\n\nimport {\n cheqdDidMetadataRegex,\n cheqdDidRegex,\n cheqdDidVersionRegex,\n cheqdDidVersionsRegex,\n cheqdResourceMetadataRegex,\n cheqdResourceRegex,\n parseCheqdDid,\n} from '../anoncreds/utils/identifiers'\nimport { CheqdLedgerService } from '../ledger'\n\nimport { filterResourcesByNameAndType, getClosestResourceVersion, renderResourceData } from './didCheqdUtil'\n\nexport class CheqdDidResolver implements DidResolver {\n public readonly supportedMethods = ['cheqd']\n public readonly allowsCaching = true\n public readonly allowsLocalDidRecord = true\n\n public async resolve(agentContext: AgentContext, did: string, parsed: ParsedDid): Promise<DidResolutionResult> {\n const didDocumentMetadata = {}\n\n try {\n const parsedDid = parseCheqdDid(parsed.didUrl)\n if (!parsedDid) {\n throw new Error('Invalid DID')\n }\n\n switch (did) {\n case did.match(cheqdDidRegex)?.input:\n return await this.resolveDidDoc(agentContext, parsedDid.did)\n case did.match(cheqdDidVersionRegex)?.input: {\n const version = did.split('/')[2]\n return await this.resolveDidDoc(agentContext, parsedDid.did, version)\n }\n case did.match(cheqdDidVersionsRegex)?.input:\n return await this.resolveAllDidDocVersions(agentContext, parsedDid)\n case did.match(cheqdDidMetadataRegex)?.input:\n return await this.dereferenceCollectionResources(agentContext, parsedDid)\n case did.match(cheqdResourceMetadataRegex)?.input:\n return await this.dereferenceResourceMetadata(agentContext, parsedDid)\n default:\n return {\n didDocument: null,\n didDocumentMetadata,\n didResolutionMetadata: {\n error: 'Invalid request',\n message: `Unsupported did Url: '${did}'`,\n },\n }\n }\n } catch (error) {\n return {\n didDocument: null,\n didDocumentMetadata,\n didResolutionMetadata: {\n error: 'notFound',\n message: `resolver_error: Unable to resolve did '${did}': ${error}`,\n },\n }\n }\n }\n\n public async resolveResource(agentContext: AgentContext, did: string) {\n const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService)\n try {\n const parsedDid = parseCheqdDid(did)\n if (!parsedDid) {\n throw new Error('Invalid DID')\n }\n\n const { params, id } = parsedDid\n let resourceId: string\n if (did.match(cheqdResourceRegex)?.input) {\n resourceId = did.split('/')[2]\n } else if (params?.resourceName && params.resourceType) {\n let resources = (await cheqdLedgerService.resolveCollectionResources(parsedDid.did, id)).resources\n resources = filterResourcesByNameAndType(resources, params.resourceName, params.resourceType)\n if (!resources.length) {\n throw new Error('No resources found')\n }\n\n let resource: Metadata | undefined\n if (params.version) {\n resource = resources.find((resource) => resource.version === params.version)\n } else {\n const date = params.resourceVersionTime ? new Date(Number(params.resourceVersionTime) * 1000) : new Date()\n // find the resourceId closest to the created time\n resource = getClosestResourceVersion(resources, date)\n }\n\n if (!resource) {\n throw new Error('No resources found')\n }\n\n resourceId = resource.id\n } else {\n return {\n error: 'notFound',\n message: `resolver_error: Invalid did url '${did}'`,\n }\n }\n if (!utils.isValidUuid(resourceId)) {\n throw new Error('Invalid resource Id')\n }\n\n const { resource, metadata } = await cheqdLedgerService.resolveResource(parsedDid.did, id, resourceId)\n if (!resource || !metadata) {\n throw new Error('resolver_error: Unable to resolve resource, Please try again')\n }\n\n const result = await renderResourceData(resource.data, metadata.mediaType)\n return {\n resource: result,\n resourceMetadata: metadata,\n resourceResolutionMetadata: {},\n }\n } catch (error) {\n return {\n error: 'notFound',\n message: `resolver_error: Unable to resolve resource '${did}': ${error}`,\n }\n }\n }\n\n private async resolveAllDidDocVersions(agentContext: AgentContext, parsedDid: ParsedCheqdDid) {\n const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService)\n const { did } = parsedDid\n\n const { didDocumentVersionsMetadata } = await cheqdLedgerService.resolveMetadata(did)\n return {\n didDocument: new DidDocument({ id: did }),\n didDocumentMetadata: didDocumentVersionsMetadata,\n didResolutionMetadata: {},\n }\n }\n\n private async dereferenceCollectionResources(agentContext: AgentContext, parsedDid: ParsedCheqdDid) {\n const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService)\n const { did, id } = parsedDid\n\n const metadata = await cheqdLedgerService.resolveCollectionResources(did, id)\n return {\n didDocument: new DidDocument({ id: did }),\n didDocumentMetadata: {\n linkedResourceMetadata: metadata,\n },\n didResolutionMetadata: {},\n }\n }\n\n private async dereferenceResourceMetadata(agentContext: AgentContext, parsedDid: ParsedCheqdDid) {\n const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService)\n const { did, id } = parsedDid\n\n if (!parsedDid.path) {\n throw new CredoError(`Missing path in did ${parsedDid.did}`)\n }\n\n const [, , resourceId] = parsedDid.path.split('/')\n\n if (!resourceId) {\n throw new CredoError(`Missing resource id in didUrl ${parsedDid.didUrl}`)\n }\n\n const metadata = await cheqdLedgerService.resolveResourceMetadata(did, id, resourceId)\n return {\n didDocument: new DidDocument({ id: did }),\n didDocumentMetadata: {\n linkedResourceMetadata: metadata,\n },\n didResolutionMetadata: {},\n }\n }\n\n private async resolveDidDoc(agentContext: AgentContext, did: string, version?: string): Promise<DidResolutionResult> {\n const cheqdLedgerService = agentContext.dependencyManager.resolve(CheqdLedgerService)\n\n const { didDocument, didDocumentMetadata } = await cheqdLedgerService.resolve(did, version)\n const { resources } = await cheqdLedgerService.resolveCollectionResources(did, did.split(':')[3])\n didDocumentMetadata.linkedResourceMetadata = resources\n\n return {\n didDocument: JsonTransformer.fromJSON(didDocument, DidDocument),\n didDocumentMetadata,\n didResolutionMetadata: {},\n }\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1,113 @@
1
+ import { CredoError, DidCommV1Service, DidDocument, JsonEncoder, JsonTransformer, TypedArrayEncoder } from "@credo-ts/core";
2
+ import { DIDModule, VerificationMethods, createDidPayload, createDidVerificationMethod, createVerificationKeys } from "@cheqd/sdk";
3
+ import { MsgCreateDidDocPayload, MsgDeactivateDidDocPayload } from "@cheqd/ts-proto/cheqd/did/v2/index.js";
4
+ import { EnglishMnemonic } from "@cosmjs/crypto";
5
+ import { DirectSecp256k1HdWallet, DirectSecp256k1Wallet } from "@cosmjs/proto-signing";
6
+
7
+ //#region src/dids/didCheqdUtil.ts
8
+ function validateSpecCompliantPayload(didDocument) {
9
+ if (!didDocument.id && !didDocument.id.startsWith("did:cheqd:")) return {
10
+ valid: false,
11
+ error: "id is required"
12
+ };
13
+ if (!didDocument.verificationMethod) return {
14
+ valid: false,
15
+ error: "verificationMethod is required"
16
+ };
17
+ if (!Array.isArray(didDocument.verificationMethod)) return {
18
+ valid: false,
19
+ error: "verificationMethod must be an array"
20
+ };
21
+ if (!didDocument.verificationMethod.length) return {
22
+ valid: false,
23
+ error: "verificationMethod must be not be empty"
24
+ };
25
+ if (!didDocument.verificationMethod.every((vm) => {
26
+ switch (vm.type) {
27
+ case VerificationMethods.Ed255192020: return vm.publicKeyMultibase != null;
28
+ case VerificationMethods.JWK: return vm.publicKeyJwk != null;
29
+ case VerificationMethods.Ed255192018: return vm.publicKeyBase58 != null;
30
+ default: return false;
31
+ }
32
+ })) return {
33
+ valid: false,
34
+ error: "verificationMethod publicKey is Invalid"
35
+ };
36
+ if (!(didDocument.service ? didDocument?.service?.every((s) => {
37
+ return s?.serviceEndpoint && s?.id && s?.type;
38
+ }) : true)) return {
39
+ valid: false,
40
+ error: "Service is Invalid"
41
+ };
42
+ return { valid: true };
43
+ }
44
+ async function createMsgCreateDidDocPayloadToSign(didPayload, versionId) {
45
+ didPayload.service = didPayload.service?.map((e) => {
46
+ return {
47
+ ...e,
48
+ serviceEndpoint: e.type === DidCommV1Service.type ? e.serviceEndpoint : Array.isArray(e.serviceEndpoint) ? e.serviceEndpoint : [e.serviceEndpoint]
49
+ };
50
+ });
51
+ const { protobufVerificationMethod, protobufService } = await DIDModule.validateSpecCompliantPayload(didPayload);
52
+ return MsgCreateDidDocPayload.encode(MsgCreateDidDocPayload.fromPartial({
53
+ context: didPayload?.["@context"],
54
+ id: didPayload.id,
55
+ controller: didPayload.controller,
56
+ verificationMethod: protobufVerificationMethod,
57
+ authentication: didPayload.authentication,
58
+ assertionMethod: didPayload.assertionMethod,
59
+ capabilityInvocation: didPayload.capabilityInvocation,
60
+ capabilityDelegation: didPayload.capabilityDelegation,
61
+ keyAgreement: didPayload.keyAgreement,
62
+ service: protobufService,
63
+ alsoKnownAs: didPayload.alsoKnownAs,
64
+ versionId
65
+ })).finish();
66
+ }
67
+ function createMsgDeactivateDidDocPayloadToSign(didPayload, versionId) {
68
+ return MsgDeactivateDidDocPayload.encode(MsgDeactivateDidDocPayload.fromPartial({
69
+ id: didPayload.id,
70
+ versionId
71
+ })).finish();
72
+ }
73
+ function generateDidDoc(options) {
74
+ const { verificationMethod, methodSpecificIdAlgo, verificationMethodId, network, publicKey } = options;
75
+ const verificationKeys = createVerificationKeys(publicKey, methodSpecificIdAlgo, verificationMethodId, network);
76
+ if (!verificationKeys) throw new Error("Invalid DID options");
77
+ const didPayload = createDidPayload(createDidVerificationMethod([verificationMethod], [verificationKeys]), [verificationKeys]);
78
+ return JsonTransformer.fromJSON(didPayload, DidDocument);
79
+ }
80
+ function getClosestResourceVersion(resources, date) {
81
+ let minDiff = Number.POSITIVE_INFINITY;
82
+ let closest;
83
+ for (const resource of resources) {
84
+ if (!resource.created) throw new CredoError("Missing required property 'created' on resource");
85
+ const resourceCreatedAt = /* @__PURE__ */ new Date(Math.floor(resource.created.getTime() / 1e3) * 1e3);
86
+ if (resourceCreatedAt.getTime() <= date.getTime()) {
87
+ const diff = date.getTime() - resourceCreatedAt.getTime();
88
+ if (diff < minDiff) {
89
+ closest = resource;
90
+ minDiff = diff;
91
+ }
92
+ }
93
+ }
94
+ return closest;
95
+ }
96
+ function filterResourcesByNameAndType(resources, name, type) {
97
+ return resources.filter((resource) => resource.name === name && resource.resourceType === type);
98
+ }
99
+ async function renderResourceData(data, mimeType) {
100
+ if (mimeType === "application/json") return await JsonEncoder.fromBuffer(data);
101
+ if (mimeType === "text/plain") return TypedArrayEncoder.toUtf8String(data);
102
+ return TypedArrayEncoder.toBase64URL(data);
103
+ }
104
+ var EnglishMnemonic$1 = class extends EnglishMnemonic {};
105
+ EnglishMnemonic$1._mnemonicMatcher = /^[a-z]+( [a-z]+)*$/;
106
+ function getCosmosPayerWallet(cosmosPayerSeed) {
107
+ if (!cosmosPayerSeed || cosmosPayerSeed === "") return DirectSecp256k1HdWallet.generate();
108
+ return EnglishMnemonic$1._mnemonicMatcher.test(cosmosPayerSeed) ? DirectSecp256k1HdWallet.fromMnemonic(cosmosPayerSeed, { prefix: "cheqd" }) : DirectSecp256k1Wallet.fromKey(TypedArrayEncoder.fromString(cosmosPayerSeed.replace(/^0x/, "")), "cheqd");
109
+ }
110
+
111
+ //#endregion
112
+ export { createMsgCreateDidDocPayloadToSign, createMsgDeactivateDidDocPayloadToSign, filterResourcesByNameAndType, generateDidDoc, getClosestResourceVersion, getCosmosPayerWallet, renderResourceData, validateSpecCompliantPayload };
113
+ //# sourceMappingURL=didCheqdUtil.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"didCheqdUtil.mjs","names":["closest: Metadata | undefined","EnglishMnemonic","_EnglishMnemonic"],"sources":["../../src/dids/didCheqdUtil.ts"],"sourcesContent":["import type { CheqdNetwork, DIDDocument, MethodSpecificIdAlgo, TVerificationKey } from '@cheqd/sdk'\nimport {\n createDidPayload,\n createDidVerificationMethod,\n createVerificationKeys,\n DIDModule,\n VerificationMethods,\n} from '@cheqd/sdk'\nimport { MsgCreateDidDocPayload, MsgDeactivateDidDocPayload } from '@cheqd/ts-proto/cheqd/did/v2/index.js'\nimport type { Metadata } from '@cheqd/ts-proto/cheqd/resource/v2'\nimport { EnglishMnemonic as _EnglishMnemonic } from '@cosmjs/crypto'\nimport { DirectSecp256k1HdWallet, DirectSecp256k1Wallet } from '@cosmjs/proto-signing'\nimport {\n type AnyUint8Array,\n CredoError,\n DidCommV1Service,\n DidDocument,\n JsonEncoder,\n JsonTransformer,\n TypedArrayEncoder,\n} from '@credo-ts/core'\n\nexport function validateSpecCompliantPayload(didDocument: DidDocument): SpecValidationResult {\n // id is required, validated on both compile and runtime\n if (!didDocument.id && !didDocument.id.startsWith('did:cheqd:')) return { valid: false, error: 'id is required' }\n\n // verificationMethod is required\n if (!didDocument.verificationMethod) return { valid: false, error: 'verificationMethod is required' }\n\n // verificationMethod must be an array\n if (!Array.isArray(didDocument.verificationMethod))\n return { valid: false, error: 'verificationMethod must be an array' }\n\n // verificationMethod must be not be empty\n if (!didDocument.verificationMethod.length) return { valid: false, error: 'verificationMethod must be not be empty' }\n\n // verificationMethod types must be supported\n const isValidVerificationMethod = didDocument.verificationMethod.every((vm) => {\n switch (vm.type) {\n case VerificationMethods.Ed255192020:\n return vm.publicKeyMultibase != null\n case VerificationMethods.JWK:\n return vm.publicKeyJwk != null\n case VerificationMethods.Ed255192018:\n return vm.publicKeyBase58 != null\n default:\n return false\n }\n })\n\n if (!isValidVerificationMethod) return { valid: false, error: 'verificationMethod publicKey is Invalid' }\n\n const isValidService = didDocument.service\n ? didDocument?.service?.every((s) => {\n return s?.serviceEndpoint && s?.id && s?.type\n })\n : true\n\n if (!isValidService) return { valid: false, error: 'Service is Invalid' }\n return { valid: true } as SpecValidationResult\n}\n\n// Create helpers in sdk like MsgCreateDidDocPayload.fromDIDDocument to replace the below\nexport async function createMsgCreateDidDocPayloadToSign(didPayload: DIDDocument, versionId: string) {\n didPayload.service = didPayload.service?.map((e) => {\n return {\n ...e,\n // For DIDComm V1 services (V2 already supports array), keep serviceEndpoint as string\n // For other services, convert to array if not already\n serviceEndpoint:\n e.type === DidCommV1Service.type\n ? e.serviceEndpoint\n : Array.isArray(e.serviceEndpoint)\n ? e.serviceEndpoint\n : [e.serviceEndpoint],\n }\n })\n const { protobufVerificationMethod, protobufService } = await DIDModule.validateSpecCompliantPayload(didPayload)\n return MsgCreateDidDocPayload.encode(\n MsgCreateDidDocPayload.fromPartial({\n context: <string[]>didPayload?.['@context'],\n id: didPayload.id,\n controller: <string[]>didPayload.controller,\n verificationMethod: protobufVerificationMethod,\n authentication: <string[]>didPayload.authentication,\n assertionMethod: <string[]>didPayload.assertionMethod,\n capabilityInvocation: <string[]>didPayload.capabilityInvocation,\n capabilityDelegation: <string[]>didPayload.capabilityDelegation,\n keyAgreement: <string[]>didPayload.keyAgreement,\n service: protobufService,\n alsoKnownAs: <string[]>didPayload.alsoKnownAs,\n versionId,\n })\n ).finish()\n}\n\nexport function createMsgDeactivateDidDocPayloadToSign(didPayload: DIDDocument, versionId?: string) {\n return MsgDeactivateDidDocPayload.encode(\n MsgDeactivateDidDocPayload.fromPartial({\n id: didPayload.id,\n versionId,\n })\n ).finish()\n}\n\nexport type SpecValidationResult = {\n valid: boolean\n error?: string\n}\n\nexport function generateDidDoc(options: IDidDocOptions) {\n const { verificationMethod, methodSpecificIdAlgo, verificationMethodId, network, publicKey } = options\n const verificationKeys = createVerificationKeys(publicKey, methodSpecificIdAlgo, verificationMethodId, network)\n if (!verificationKeys) {\n throw new Error('Invalid DID options')\n }\n const verificationMethods = createDidVerificationMethod([verificationMethod], [verificationKeys])\n const didPayload = createDidPayload(verificationMethods, [verificationKeys])\n return JsonTransformer.fromJSON(didPayload, DidDocument)\n}\n\nexport interface IDidDocOptions {\n verificationMethod: VerificationMethods\n verificationMethodId: TVerificationKey<string, number>\n methodSpecificIdAlgo: MethodSpecificIdAlgo\n network: CheqdNetwork\n publicKey: string\n}\n\nexport function getClosestResourceVersion(resources: Metadata[], date: Date) {\n let minDiff = Number.POSITIVE_INFINITY\n let closest: Metadata | undefined\n\n // TODO: if the cheqd/sdk returns sorted resources, change this to binary search\n for (const resource of resources) {\n if (!resource.created) throw new CredoError(\"Missing required property 'created' on resource\")\n\n // NOTE: The date passed in is based on seconds, while we compare with milliseconds\n // this results in invalid results due to the precision being lost. So we floor the result\n // allowing for some leeway in time differences\n const resourceCreatedAt = new Date(Math.floor(resource.created.getTime() / 1000) * 1000)\n\n if (resourceCreatedAt.getTime() <= date.getTime()) {\n const diff = date.getTime() - resourceCreatedAt.getTime()\n\n if (diff < minDiff) {\n closest = resource\n minDiff = diff\n }\n }\n }\n\n return closest\n}\n\nexport function filterResourcesByNameAndType(resources: Metadata[], name: string, type: string) {\n return resources.filter((resource) => resource.name === name && resource.resourceType === type)\n}\n\nexport async function renderResourceData(data: AnyUint8Array, mimeType: string) {\n if (mimeType === 'application/json') {\n return await JsonEncoder.fromBuffer(data)\n }\n if (mimeType === 'text/plain') {\n return TypedArrayEncoder.toUtf8String(data)\n }\n return TypedArrayEncoder.toBase64URL(data)\n}\n\nexport class EnglishMnemonic extends _EnglishMnemonic {\n public static readonly _mnemonicMatcher = /^[a-z]+( [a-z]+)*$/\n}\n\nexport function getCosmosPayerWallet(cosmosPayerSeed?: string) {\n if (!cosmosPayerSeed || cosmosPayerSeed === '') {\n return DirectSecp256k1HdWallet.generate()\n }\n return EnglishMnemonic._mnemonicMatcher.test(cosmosPayerSeed)\n ? DirectSecp256k1HdWallet.fromMnemonic(cosmosPayerSeed, { prefix: 'cheqd' })\n : DirectSecp256k1Wallet.fromKey(TypedArrayEncoder.fromString(cosmosPayerSeed.replace(/^0x/, '')), 'cheqd')\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { CheqdCreateResourceOptions, CheqdDidCreateOptions, CheqdDidDeactivateOptions, CheqdDidRegistrar, CheqdDidUpdateOptions } from "./CheqdDidRegistrar.mjs";
2
+ import { CheqdDidResolver } from "./CheqdDidResolver.mjs";
@@ -0,0 +1,2 @@
1
+ import { CheqdDidRegistrar } from "./CheqdDidRegistrar.mjs";
2
+ import { CheqdDidResolver } from "./CheqdDidResolver.mjs";
@@ -0,0 +1,10 @@
1
+ import { CheqdAnonCredsRegistry } from "./anoncreds/services/CheqdAnonCredsRegistry.mjs";
2
+ import "./anoncreds/index.mjs";
3
+ import { CheqdDidCreateOptions, CheqdDidDeactivateOptions, CheqdDidRegistrar, CheqdDidUpdateOptions } from "./dids/CheqdDidRegistrar.mjs";
4
+ import { CheqdDidResolver } from "./dids/CheqdDidResolver.mjs";
5
+ import "./dids/index.mjs";
6
+ import { CheqdModuleConfig, CheqdModuleConfigOptions } from "./CheqdModuleConfig.mjs";
7
+ import { CheqdModule } from "./CheqdModule.mjs";
8
+ import { CheqdLedgerService } from "./ledger/CheqdLedgerService.mjs";
9
+ import "./ledger/index.mjs";
10
+ export { CheqdAnonCredsRegistry, type CheqdDidCreateOptions, type CheqdDidDeactivateOptions, CheqdDidRegistrar, CheqdDidResolver, type CheqdDidUpdateOptions, CheqdLedgerService, CheqdModule, CheqdModuleConfig, type CheqdModuleConfigOptions };
@@ -0,0 +1,11 @@
1
+ import { CheqdModuleConfig } from "./CheqdModuleConfig.mjs";
2
+ import { CheqdLedgerService } from "./ledger/CheqdLedgerService.mjs";
3
+ import "./ledger/index.mjs";
4
+ import { CheqdDidRegistrar } from "./dids/CheqdDidRegistrar.mjs";
5
+ import { CheqdDidResolver } from "./dids/CheqdDidResolver.mjs";
6
+ import "./dids/index.mjs";
7
+ import { CheqdAnonCredsRegistry } from "./anoncreds/services/CheqdAnonCredsRegistry.mjs";
8
+ import "./anoncreds/index.mjs";
9
+ import { CheqdModule } from "./CheqdModule.mjs";
10
+
11
+ export { CheqdAnonCredsRegistry, CheqdDidRegistrar, CheqdDidResolver, CheqdLedgerService, CheqdModule, CheqdModuleConfig };
@@ -0,0 +1,35 @@
1
+ import { CheqdModuleConfig } from "../CheqdModuleConfig.mjs";
2
+ import { DidDocumentMetadata, Logger } from "@credo-ts/core";
3
+ import * as _cheqd_sdk0 from "@cheqd/sdk";
4
+ import { DIDDocument, DidStdFee } from "@cheqd/sdk";
5
+ import { DirectSecp256k1HdWallet, DirectSecp256k1Wallet } from "@cosmjs/proto-signing";
6
+ import { Metadata, MsgCreateResourcePayload, QueryCollectionResourcesResponse, ResourceWithMetadata } from "@cheqd/ts-proto/cheqd/resource/v2";
7
+ import { QueryAllDidDocVersionsMetadataResponse, SignInfo } from "@cheqd/ts-proto/cheqd/did/v2";
8
+ import { DeliverTxResponse } from "@cosmjs/stargate";
9
+
10
+ //#region src/ledger/CheqdLedgerService.d.ts
11
+
12
+ declare class CheqdLedgerService {
13
+ private networks;
14
+ private logger;
15
+ constructor(cheqdSdkModuleConfig: CheqdModuleConfig, logger: Logger);
16
+ connect(): Promise<void>;
17
+ disconnect(): Promise<void>;
18
+ private getSdk;
19
+ private initializeSdkForNetwork;
20
+ create(didPayload: DIDDocument, signInputs: SignInfo[], versionId?: string | undefined, fee?: DidStdFee): Promise<DeliverTxResponse>;
21
+ update(didPayload: DIDDocument, signInputs: SignInfo[], versionId?: string | undefined, fee?: DidStdFee): Promise<DeliverTxResponse>;
22
+ deactivate(didPayload: DIDDocument, signInputs: SignInfo[], versionId?: string | undefined, fee?: DidStdFee): Promise<DeliverTxResponse>;
23
+ resolve(did: string, version?: string): Promise<_cheqd_sdk0.DIDDocumentWithMetadata>;
24
+ resolveMetadata(did: string): Promise<{
25
+ didDocumentVersionsMetadata: DidDocumentMetadata[];
26
+ pagination: QueryAllDidDocVersionsMetadataResponse['pagination'];
27
+ }>;
28
+ createResource(did: string, resourcePayload: Partial<MsgCreateResourcePayload>, signInputs: SignInfo[], fee?: DidStdFee): Promise<DeliverTxResponse>;
29
+ resolveResource(did: string, collectionId: string, resourceId: string): Promise<ResourceWithMetadata>;
30
+ resolveCollectionResources(did: string, collectionId: string): Promise<QueryCollectionResourcesResponse>;
31
+ resolveResourceMetadata(did: string, collectionId: string, resourceId: string): Promise<Metadata>;
32
+ }
33
+ //#endregion
34
+ export { CheqdLedgerService };
35
+ //# sourceMappingURL=CheqdLedgerService.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheqdLedgerService.d.mts","names":[],"sources":["../../src/ledger/CheqdLedgerService.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;AA6Ha,cA/FA,kBAAA,CA+FA;EAAR,QAAA,QAAA;EAMW,QAAA,MAAA;EACA,WAAA,CAAA,oBAAA,EAlG2B,iBAkG3B,EAAA,MAAA,EAlGuF,MAkGvF;EAEN,OAAA,CAAA,CAAA,EAxFY,OAwFZ,CAAA,IAAA,CAAA;EACG,UAAA,CAAA,CAAA,EA/EY,OA+EZ,CAAA,IAAA,CAAA;EAAR,QAAA,MAAA;EAMW,QAAA,uBAAA;EACA,MAAA,CAAA,UAAA,EArBA,WAqBA,EAAA,UAAA,EApBA,QAoBA,EAAA,EAAA,SAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,GAAA,CAAA,EAlBN,SAkBM,CAAA,EAjBX,OAiBW,CAjBH,iBAiBG,CAAA;EAEN,MAAA,CAAA,UAAA,EAbM,WAaN,EAAA,UAAA,EAZM,QAYN,EAAA,EAAA,SAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,GAAA,CAAA,EAVA,SAUA,CAAA,EATL,OASK,CATG,iBASH,CAAA;EACG,UAAA,CAAA,UAAA,EAJG,WAIH,EAAA,UAAA,EAHG,QAGH,EAAA,EAAA,SAAA,CAAA,EAAA,MAAA,GAAA,SAAA,EAAA,GAAA,CAAA,EADH,SACG,CAAA,EAAR,OAAQ,CAAA,iBAAA,CAAA;EAAR,OAAA,CAAA,GAAA,EAAA,MAAA,EAAA,OAAA,CAAA,EAAA,MAAA,CAAA,EAK+C,OAL/C,CAAO,WAAA,CAKwC,uBAAA,CAL/C;EAAO,eAKwC,CAAA,GAAA,EAAA,MAAA,CAAA,EAKP,OALO,CAAA;IAAA,2BAAA,EAMnB,mBANmB,EAAA;IAMnB,UAAA,EACjB,sCADiB,CAAA,YAAA,CAAA;EACjB,CAAA,CAAA;EAF6B,cAAA,CAAA,GAAA,EAAA,MAAA,EAAA,eAAA,EAUxB,OAVwB,CAUhB,wBAVgB,CAAA,EAAA,UAAA,EAW7B,QAX6B,EAAA,EAAA,GAAA,CAAA,EAYnC,SAZmC,CAAA,EAaxC,OAbwC,CAahC,iBAbgC,CAAA;EAUhB,eAAA,CAAA,GAAA,EAAA,MAAA,EAAA,YAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAQ0D,OAR1D,CAQkE,oBARlE,CAAA;EAAR,0BAAA,CAAA,GAAA,EAAA,MAAA,EAAA,YAAA,EAAA,MAAA,CAAA,EAgBhB,OAhBgB,CAgBR,gCAhBQ,CAAA;EACL,uBAAA,CAAA,GAAA,EAAA,MAAA,EAAA,YAAA,EAAA,MAAA,EAAA,UAAA,EAAA,MAAA,CAAA,EAoB+E,OApB/E,CAoBuF,QApBvF,CAAA"}
@@ -0,0 +1,114 @@
1
+ import { parseCheqdDid } from "../anoncreds/utils/identifiers.mjs";
2
+ import { CheqdModuleConfig } from "../CheqdModuleConfig.mjs";
3
+ import { getCosmosPayerWallet } from "../dids/didCheqdUtil.mjs";
4
+ import { __decorateMetadata } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateMetadata.mjs";
5
+ import { __decorateParam } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorateParam.mjs";
6
+ import { __decorate } from "../_virtual/_@oxc-project_runtime@0.99.0/helpers/decorate.mjs";
7
+ import { CredoError, InjectionSymbols, inject, injectable } from "@credo-ts/core";
8
+ import { CheqdNetwork, DIDModule, FeemarketModule, ResourceModule, createCheqdSDK } from "@cheqd/sdk";
9
+
10
+ //#region src/ledger/CheqdLedgerService.ts
11
+ var _ref;
12
+ let DefaultRPCUrl = /* @__PURE__ */ function(DefaultRPCUrl$1) {
13
+ DefaultRPCUrl$1["Mainnet"] = "https://rpc.cheqd.net";
14
+ DefaultRPCUrl$1["Testnet"] = "https://rpc.cheqd.network";
15
+ return DefaultRPCUrl$1;
16
+ }({});
17
+ let CheqdLedgerService = class CheqdLedgerService$1 {
18
+ constructor(cheqdSdkModuleConfig, logger) {
19
+ this.logger = logger;
20
+ this.networks = cheqdSdkModuleConfig.networks.map((config) => {
21
+ const { network, rpcUrl, cosmosPayerSeed } = config;
22
+ return {
23
+ network,
24
+ rpcUrl: rpcUrl ? rpcUrl : network === CheqdNetwork.Mainnet ? DefaultRPCUrl.Mainnet : DefaultRPCUrl.Testnet,
25
+ cosmosPayerWallet: getCosmosPayerWallet(cosmosPayerSeed)
26
+ };
27
+ });
28
+ }
29
+ async connect() {
30
+ for (const network of this.networks) if (!network.sdk) await this.initializeSdkForNetwork(network);
31
+ else this.logger.debug(`Not connecting to network ${network} as SDK already initialized`);
32
+ }
33
+ async disconnect() {
34
+ for (const network of this.networks) {
35
+ await network.sdk;
36
+ if (!network.sdk) await this.initializeSdkForNetwork(network);
37
+ else this.logger.debug(`Not connecting to network ${network} as SDK already initialized`);
38
+ }
39
+ }
40
+ async getSdk(did) {
41
+ const parsedDid = parseCheqdDid(did);
42
+ if (!parsedDid) throw new Error("Invalid DID");
43
+ if (this.networks.length === 0) throw new Error("No cheqd networks configured");
44
+ const network = this.networks.find((network$1) => network$1.network === parsedDid.network);
45
+ if (!network) throw new Error(`Network ${network} not found in cheqd networks configuration`);
46
+ if (!network.sdk) {
47
+ const sdk = await this.initializeSdkForNetwork(network);
48
+ if (!sdk) throw new Error(`Cheqd SDK not initialized for network ${parsedDid.network}`);
49
+ return sdk;
50
+ }
51
+ try {
52
+ return await network.sdk;
53
+ } catch (error) {
54
+ throw new Error(`Error initializing cheqd sdk for network ${parsedDid.network}: ${error.message}`);
55
+ }
56
+ }
57
+ async initializeSdkForNetwork(network) {
58
+ try {
59
+ network.sdk = createCheqdSDK({
60
+ modules: [
61
+ FeemarketModule,
62
+ DIDModule,
63
+ ResourceModule
64
+ ],
65
+ rpcUrl: network.rpcUrl,
66
+ wallet: await network.cosmosPayerWallet.catch((error) => {
67
+ throw new CredoError(`Error initializing cosmos payer wallet: ${error.message}`, { cause: error });
68
+ })
69
+ });
70
+ return await network.sdk;
71
+ } catch (error) {
72
+ this.logger.error(`Skipping connection for network ${network.network} in cheqd sdk due to error in initialization: ${error.message}`);
73
+ network.sdk = void 0;
74
+ return;
75
+ }
76
+ }
77
+ async create(didPayload, signInputs, versionId, fee) {
78
+ return (await this.getSdk(didPayload.id)).createDidDocTx(signInputs, didPayload, "", fee, void 0, versionId);
79
+ }
80
+ async update(didPayload, signInputs, versionId, fee) {
81
+ return (await this.getSdk(didPayload.id)).updateDidDocTx(signInputs, didPayload, "", fee, void 0, versionId);
82
+ }
83
+ async deactivate(didPayload, signInputs, versionId, fee) {
84
+ return (await this.getSdk(didPayload.id)).deactivateDidDocTx(signInputs, didPayload, "", fee, void 0, versionId);
85
+ }
86
+ async resolve(did, version) {
87
+ const sdk = await this.getSdk(did);
88
+ return version ? sdk.queryDidDocVersion(did, version) : sdk.queryDidDoc(did);
89
+ }
90
+ async resolveMetadata(did) {
91
+ return (await this.getSdk(did)).queryAllDidDocVersionsMetadata(did);
92
+ }
93
+ async createResource(did, resourcePayload, signInputs, fee) {
94
+ return (await this.getSdk(did)).createLinkedResourceTx(signInputs, resourcePayload, "", fee, void 0);
95
+ }
96
+ async resolveResource(did, collectionId, resourceId) {
97
+ return (await this.getSdk(did)).queryLinkedResource(collectionId, resourceId);
98
+ }
99
+ async resolveCollectionResources(did, collectionId) {
100
+ return (await this.getSdk(did)).queryLinkedResources(collectionId);
101
+ }
102
+ async resolveResourceMetadata(did, collectionId, resourceId) {
103
+ return (await this.getSdk(did)).queryLinkedResourceMetadata(collectionId, resourceId);
104
+ }
105
+ };
106
+ CheqdLedgerService = __decorate([
107
+ injectable(),
108
+ __decorateParam(1, inject(InjectionSymbols.Logger)),
109
+ __decorateMetadata("design:paramtypes", [typeof (_ref = typeof CheqdModuleConfig !== "undefined" && CheqdModuleConfig) === "function" ? _ref : Object, Object])
110
+ ], CheqdLedgerService);
111
+
112
+ //#endregion
113
+ export { CheqdLedgerService };
114
+ //# sourceMappingURL=CheqdLedgerService.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheqdLedgerService.mjs","names":["CheqdLedgerService","logger: Logger","network"],"sources":["../../src/ledger/CheqdLedgerService.ts"],"sourcesContent":["import type { AbstractCheqdSDKModule, CheqdSDK, DIDDocument, DidStdFee } from '@cheqd/sdk'\nimport { CheqdNetwork, createCheqdSDK, DIDModule, FeemarketModule, ResourceModule } from '@cheqd/sdk'\nimport type { QueryAllDidDocVersionsMetadataResponse, SignInfo } from '@cheqd/ts-proto/cheqd/did/v2'\nimport type {\n Metadata,\n MsgCreateResourcePayload,\n QueryCollectionResourcesResponse,\n ResourceWithMetadata,\n} from '@cheqd/ts-proto/cheqd/resource/v2'\nimport type { DirectSecp256k1HdWallet, DirectSecp256k1Wallet } from '@cosmjs/proto-signing'\nimport type { DeliverTxResponse } from '@cosmjs/stargate'\nimport type { DidDocumentMetadata } from '@credo-ts/core'\nimport { CredoError, InjectionSymbols, inject, injectable, type Logger } from '@credo-ts/core'\nimport { parseCheqdDid } from '../anoncreds/utils/identifiers'\nimport { CheqdModuleConfig } from '../CheqdModuleConfig'\nimport { getCosmosPayerWallet } from '../dids/didCheqdUtil'\n\nexport interface ICheqdLedgerConfig {\n network: string\n rpcUrl: string\n readonly cosmosPayerWallet: Promise<DirectSecp256k1HdWallet | DirectSecp256k1Wallet>\n sdk?: Promise<CheqdSDK>\n}\n\nexport enum DefaultRPCUrl {\n Mainnet = 'https://rpc.cheqd.net',\n Testnet = 'https://rpc.cheqd.network',\n}\n\n@injectable()\nexport class CheqdLedgerService {\n private networks: ICheqdLedgerConfig[]\n private logger: Logger\n\n public constructor(cheqdSdkModuleConfig: CheqdModuleConfig, @inject(InjectionSymbols.Logger) logger: Logger) {\n this.logger = logger\n this.networks = cheqdSdkModuleConfig.networks.map((config) => {\n const { network, rpcUrl, cosmosPayerSeed } = config\n return {\n network,\n rpcUrl: rpcUrl ? rpcUrl : network === CheqdNetwork.Mainnet ? DefaultRPCUrl.Mainnet : DefaultRPCUrl.Testnet,\n cosmosPayerWallet: getCosmosPayerWallet(cosmosPayerSeed),\n }\n })\n }\n\n public async connect() {\n for (const network of this.networks) {\n if (!network.sdk) {\n await this.initializeSdkForNetwork(network)\n } else {\n this.logger.debug(`Not connecting to network ${network} as SDK already initialized`)\n }\n }\n }\n\n public async disconnect() {\n for (const network of this.networks) {\n const _a = await network.sdk\n if (!network.sdk) {\n await this.initializeSdkForNetwork(network)\n } else {\n this.logger.debug(`Not connecting to network ${network} as SDK already initialized`)\n }\n }\n }\n\n private async getSdk(did: string) {\n const parsedDid = parseCheqdDid(did)\n if (!parsedDid) {\n throw new Error('Invalid DID')\n }\n if (this.networks.length === 0) {\n throw new Error('No cheqd networks configured')\n }\n\n const network = this.networks.find((network) => network.network === parsedDid.network)\n if (!network) {\n throw new Error(`Network ${network} not found in cheqd networks configuration`)\n }\n\n if (!network.sdk) {\n const sdk = await this.initializeSdkForNetwork(network)\n if (!sdk) throw new Error(`Cheqd SDK not initialized for network ${parsedDid.network}`)\n return sdk\n }\n\n try {\n const sdk = await network.sdk\n return sdk\n } catch (error) {\n throw new Error(`Error initializing cheqd sdk for network ${parsedDid.network}: ${error.message}`)\n }\n }\n\n private async initializeSdkForNetwork(network: ICheqdLedgerConfig) {\n try {\n // Initialize cheqd sdk with promise\n network.sdk = createCheqdSDK({\n modules: [\n FeemarketModule as unknown as AbstractCheqdSDKModule,\n DIDModule as unknown as AbstractCheqdSDKModule,\n ResourceModule as unknown as AbstractCheqdSDKModule,\n ],\n rpcUrl: network.rpcUrl,\n wallet: await network.cosmosPayerWallet.catch((error) => {\n throw new CredoError(`Error initializing cosmos payer wallet: ${error.message}`, { cause: error })\n }),\n })\n\n return await network.sdk\n } catch (error) {\n this.logger.error(\n `Skipping connection for network ${network.network} in cheqd sdk due to error in initialization: ${error.message}`\n )\n network.sdk = undefined\n return undefined\n }\n }\n\n public async create(\n didPayload: DIDDocument,\n signInputs: SignInfo[],\n versionId?: string | undefined,\n fee?: DidStdFee\n ): Promise<DeliverTxResponse> {\n const sdk = await this.getSdk(didPayload.id)\n return sdk.createDidDocTx(signInputs, didPayload, '', fee, undefined, versionId)\n }\n\n public async update(\n didPayload: DIDDocument,\n signInputs: SignInfo[],\n versionId?: string | undefined,\n fee?: DidStdFee\n ): Promise<DeliverTxResponse> {\n const sdk = await this.getSdk(didPayload.id)\n return sdk.updateDidDocTx(signInputs, didPayload, '', fee, undefined, versionId)\n }\n\n public async deactivate(\n didPayload: DIDDocument,\n signInputs: SignInfo[],\n versionId?: string | undefined,\n fee?: DidStdFee\n ): Promise<DeliverTxResponse> {\n const sdk = await this.getSdk(didPayload.id)\n return sdk.deactivateDidDocTx(signInputs, didPayload, '', fee, undefined, versionId)\n }\n\n public async resolve(did: string, version?: string) {\n const sdk = await this.getSdk(did)\n return version ? sdk.queryDidDocVersion(did, version) : sdk.queryDidDoc(did)\n }\n\n public async resolveMetadata(did: string): Promise<{\n didDocumentVersionsMetadata: DidDocumentMetadata[]\n pagination: QueryAllDidDocVersionsMetadataResponse['pagination']\n }> {\n const sdk = await this.getSdk(did)\n return sdk.queryAllDidDocVersionsMetadata(did)\n }\n\n public async createResource(\n did: string,\n resourcePayload: Partial<MsgCreateResourcePayload>,\n signInputs: SignInfo[],\n fee?: DidStdFee\n ): Promise<DeliverTxResponse> {\n const sdk = await this.getSdk(did)\n return sdk.createLinkedResourceTx(signInputs, resourcePayload, '', fee, undefined)\n }\n\n public async resolveResource(did: string, collectionId: string, resourceId: string): Promise<ResourceWithMetadata> {\n const sdk = await this.getSdk(did)\n return sdk.queryLinkedResource(collectionId, resourceId)\n }\n\n public async resolveCollectionResources(\n did: string,\n collectionId: string\n ): Promise<QueryCollectionResourcesResponse> {\n const sdk = await this.getSdk(did)\n return sdk.queryLinkedResources(collectionId)\n }\n\n public async resolveResourceMetadata(did: string, collectionId: string, resourceId: string): Promise<Metadata> {\n const sdk = await this.getSdk(did)\n return sdk.queryLinkedResourceMetadata(collectionId, resourceId)\n }\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ import { CheqdLedgerService } from "./CheqdLedgerService.mjs";
@@ -0,0 +1 @@
1
+ import { CheqdLedgerService } from "./CheqdLedgerService.mjs";
package/package.json CHANGED
@@ -1,8 +1,10 @@
1
1
  {
2
2
  "name": "@credo-ts/cheqd",
3
- "main": "build/index",
4
- "types": "build/index",
5
- "version": "0.6.1-pr-2091-20241119140918",
3
+ "exports": {
4
+ ".": "./build/index.mjs",
5
+ "./package.json": "./package.json"
6
+ },
7
+ "version": "0.6.2-alpha-20251210145840",
6
8
  "files": [
7
9
  "build"
8
10
  ],
@@ -17,27 +19,25 @@
17
19
  "directory": "packages/cheqd"
18
20
  },
19
21
  "dependencies": {
20
- "@cheqd/sdk": "^2.5.1",
21
- "@cheqd/ts-proto": "~2.3.2",
22
- "@cosmjs/crypto": "~0.30.0",
23
- "@cosmjs/proto-signing": "~0.30.0",
24
- "@cosmjs/stargate": "~0.30.0",
25
- "@stablelib/ed25519": "^1.0.3",
26
- "class-transformer": "^0.5.1",
27
- "class-validator": "0.14.1",
28
- "rxjs": "^7.8.0",
29
- "tsyringe": "^4.8.0",
30
- "@credo-ts/anoncreds": "0.6.1-pr-2091-20241119140918",
31
- "@credo-ts/core": "0.6.1-pr-2091-20241119140918"
22
+ "@cheqd/sdk": "npm:@cheqd/sdk-esm@~5.3.7",
23
+ "@cheqd/ts-proto": "^4.2.0",
24
+ "@cosmjs/crypto": "^0.36.2",
25
+ "@cosmjs/proto-signing": "^0.36.2",
26
+ "@cosmjs/stargate": "^0.36.2",
27
+ "@stablelib/ed25519": "^2.0.2",
28
+ "class-transformer": "0.5.1",
29
+ "class-validator": "^0.14.1",
30
+ "rxjs": "^7.8.2",
31
+ "tsyringe": "^4.10.0",
32
+ "@credo-ts/anoncreds": "0.6.2-alpha-20251210145840",
33
+ "@credo-ts/core": "0.6.2-alpha-20251210145840"
32
34
  },
33
35
  "devDependencies": {
34
- "rimraf": "^4.0.7",
35
- "typescript": "~5.5.2"
36
+ "typescript": "~5.9.3"
36
37
  },
37
38
  "scripts": {
38
- "build": "pnpm run clean && pnpm run compile",
39
- "clean": "rimraf ./build",
40
- "compile": "tsc -p tsconfig.build.json",
41
- "test": "jest"
42
- }
39
+ "build": "tsdown --config-loader unconfig"
40
+ },
41
+ "types": "./build/index.d.mts",
42
+ "module": "./build/index.mjs"
43
43
  }
@@ -1,38 +0,0 @@
1
- import { AgentContext } from '@credo-ts/core';
2
- import { CheqdCreateResourceOptions } from './dids';
3
- export declare class CheqdApi {
4
- private agentContext;
5
- constructor(agentContext: AgentContext);
6
- createResource(did: string, options: CheqdCreateResourceOptions): Promise<{
7
- resourceMetadata: {};
8
- resourceRegistrationMetadata: {};
9
- resourceState: {
10
- state: string;
11
- reason: string;
12
- resourceId?: undefined;
13
- resource?: undefined;
14
- };
15
- } | {
16
- resourceMetadata: {};
17
- resourceRegistrationMetadata: {};
18
- resourceState: {
19
- state: string;
20
- resourceId: string;
21
- resource: import("@cheqd/ts-proto/cheqd/resource/v2").MsgCreateResourcePayload;
22
- reason?: undefined;
23
- };
24
- }>;
25
- resolveResource(resourceUrl: string): Promise<{
26
- error: string;
27
- message: string;
28
- resource?: undefined;
29
- resourceMetadata?: undefined;
30
- resourceResolutionMetadata?: undefined;
31
- } | {
32
- resource: any;
33
- resourceMetadata: import("@cheqd/ts-proto/cheqd/resource/v2").Metadata;
34
- resourceResolutionMetadata: {};
35
- error?: undefined;
36
- message?: undefined;
37
- }>;
38
- }