@cheqd/sdk 5.3.7 → 5.4.0-develop.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.
Files changed (200) hide show
  1. package/build/cjs/index.d.ts +4 -2
  2. package/build/cjs/index.d.ts.map +1 -1
  3. package/build/cjs/index.js +36 -2
  4. package/build/cjs/index.js.map +1 -1
  5. package/build/cjs/modules/did.d.ts +109 -7
  6. package/build/cjs/modules/did.d.ts.map +1 -1
  7. package/build/cjs/modules/did.js +217 -26
  8. package/build/cjs/modules/did.js.map +1 -1
  9. package/build/cjs/modules/oracle.d.ts +563 -0
  10. package/build/cjs/modules/oracle.d.ts.map +1 -0
  11. package/build/cjs/modules/oracle.js +798 -0
  12. package/build/cjs/modules/oracle.js.map +1 -0
  13. package/build/cjs/modules/resource.d.ts +132 -7
  14. package/build/cjs/modules/resource.d.ts.map +1 -1
  15. package/build/cjs/modules/resource.js +283 -40
  16. package/build/cjs/modules/resource.js.map +1 -1
  17. package/build/cjs/package.json +1 -1
  18. package/build/cjs/types.d.ts +27 -1
  19. package/build/cjs/types.d.ts.map +1 -1
  20. package/build/cjs/types.js.map +1 -1
  21. package/build/esm/cjs/src/index.d.ts +142 -0
  22. package/build/esm/cjs/src/index.d.ts.map +1 -0
  23. package/build/esm/cjs/src/index.js +184 -0
  24. package/build/esm/cjs/src/index.js.map +1 -0
  25. package/build/esm/cjs/src/modules/_.d.ts +81 -0
  26. package/build/esm/cjs/src/modules/_.d.ts.map +1 -0
  27. package/build/esm/cjs/src/modules/_.js +93 -0
  28. package/build/esm/cjs/src/modules/_.js.map +1 -0
  29. package/build/esm/cjs/src/modules/did.d.ts +488 -0
  30. package/build/esm/cjs/src/modules/did.d.ts.map +1 -0
  31. package/build/esm/cjs/src/modules/did.js +1249 -0
  32. package/build/esm/cjs/src/modules/did.js.map +1 -0
  33. package/build/esm/cjs/src/modules/feeabstraction.d.ts +429 -0
  34. package/build/esm/cjs/src/modules/feeabstraction.d.ts.map +1 -0
  35. package/build/esm/cjs/src/modules/feeabstraction.js +474 -0
  36. package/build/esm/cjs/src/modules/feeabstraction.js.map +1 -0
  37. package/build/esm/cjs/src/modules/feemarket.d.ts +244 -0
  38. package/build/esm/cjs/src/modules/feemarket.d.ts.map +1 -0
  39. package/build/esm/cjs/src/modules/feemarket.js +297 -0
  40. package/build/esm/cjs/src/modules/feemarket.js.map +1 -0
  41. package/build/esm/cjs/src/modules/oracle.d.ts +563 -0
  42. package/build/esm/cjs/src/modules/oracle.d.ts.map +1 -0
  43. package/build/esm/cjs/src/modules/oracle.js +784 -0
  44. package/build/esm/cjs/src/modules/oracle.js.map +1 -0
  45. package/build/esm/cjs/src/modules/resource.d.ts +330 -0
  46. package/build/esm/cjs/src/modules/resource.d.ts.map +1 -0
  47. package/build/esm/cjs/src/modules/resource.js +556 -0
  48. package/build/esm/cjs/src/modules/resource.js.map +1 -0
  49. package/build/esm/cjs/src/querier.d.ts +62 -0
  50. package/build/esm/cjs/src/querier.d.ts.map +1 -0
  51. package/build/esm/cjs/src/querier.js +87 -0
  52. package/build/esm/cjs/src/querier.js.map +1 -0
  53. package/build/esm/cjs/src/registry.d.ts +18 -0
  54. package/build/esm/cjs/src/registry.d.ts.map +1 -0
  55. package/build/esm/cjs/src/registry.js +23 -0
  56. package/build/esm/cjs/src/registry.js.map +1 -0
  57. package/build/esm/cjs/src/signer.d.ts +250 -0
  58. package/build/esm/cjs/src/signer.d.ts.map +1 -0
  59. package/build/esm/cjs/src/signer.js +617 -0
  60. package/build/esm/cjs/src/signer.js.map +1 -0
  61. package/build/esm/cjs/src/types.d.ts +221 -0
  62. package/build/esm/cjs/src/types.d.ts.map +1 -0
  63. package/build/esm/cjs/src/types.js.map +1 -0
  64. package/build/esm/cjs/src/utils.d.ts +233 -0
  65. package/build/esm/cjs/src/utils.d.ts.map +1 -0
  66. package/build/esm/cjs/src/utils.js +571 -0
  67. package/build/esm/cjs/src/utils.js.map +1 -0
  68. package/build/esm/{index.d.ts → esm/src/index.d.ts} +7 -3
  69. package/build/esm/esm/src/index.d.ts.map +1 -0
  70. package/build/esm/{index.js → esm/src/index.js} +3 -1
  71. package/build/esm/esm/src/index.js.map +1 -0
  72. package/build/esm/esm/src/modules/_.d.ts.map +1 -0
  73. package/build/esm/esm/src/modules/_.js.map +1 -0
  74. package/build/esm/{modules → esm/src/modules}/did.d.ts +109 -7
  75. package/build/esm/esm/src/modules/did.d.ts.map +1 -0
  76. package/build/esm/{modules → esm/src/modules}/did.js +212 -6
  77. package/build/esm/esm/src/modules/did.js.map +1 -0
  78. package/build/esm/esm/src/modules/feeabstraction.d.ts.map +1 -0
  79. package/build/esm/esm/src/modules/feeabstraction.js.map +1 -0
  80. package/build/esm/esm/src/modules/feemarket.d.ts.map +1 -0
  81. package/build/esm/esm/src/modules/feemarket.js.map +1 -0
  82. package/build/esm/esm/src/modules/oracle.d.ts +563 -0
  83. package/build/esm/esm/src/modules/oracle.d.ts.map +1 -0
  84. package/build/esm/esm/src/modules/oracle.js +784 -0
  85. package/build/esm/esm/src/modules/oracle.js.map +1 -0
  86. package/build/esm/{modules → esm/src/modules}/resource.d.ts +132 -6
  87. package/build/esm/esm/src/modules/resource.d.ts.map +1 -0
  88. package/build/esm/esm/src/modules/resource.js +556 -0
  89. package/build/esm/esm/src/modules/resource.js.map +1 -0
  90. package/build/esm/esm/src/querier.d.ts.map +1 -0
  91. package/build/esm/esm/src/querier.js.map +1 -0
  92. package/build/esm/esm/src/registry.d.ts.map +1 -0
  93. package/build/esm/esm/src/registry.js.map +1 -0
  94. package/build/esm/esm/src/signer.d.ts.map +1 -0
  95. package/build/esm/esm/src/signer.js.map +1 -0
  96. package/build/{types → esm/esm/src}/types.d.ts +27 -1
  97. package/build/esm/esm/src/types.d.ts.map +1 -0
  98. package/build/esm/esm/src/types.js +43 -0
  99. package/build/esm/esm/src/types.js.map +1 -0
  100. package/build/esm/esm/src/utils.d.ts.map +1 -0
  101. package/build/esm/esm/src/utils.js.map +1 -0
  102. package/build/esm/package.json +2 -2
  103. package/build/types/cjs/src/index.d.ts +142 -0
  104. package/build/types/cjs/src/index.d.ts.map +1 -0
  105. package/build/types/cjs/src/modules/_.d.ts +81 -0
  106. package/build/types/cjs/src/modules/_.d.ts.map +1 -0
  107. package/build/types/cjs/src/modules/did.d.ts +488 -0
  108. package/build/types/cjs/src/modules/did.d.ts.map +1 -0
  109. package/build/types/cjs/src/modules/feeabstraction.d.ts +429 -0
  110. package/build/types/cjs/src/modules/feeabstraction.d.ts.map +1 -0
  111. package/build/types/cjs/src/modules/feemarket.d.ts +244 -0
  112. package/build/types/cjs/src/modules/feemarket.d.ts.map +1 -0
  113. package/build/types/cjs/src/modules/oracle.d.ts +563 -0
  114. package/build/types/cjs/src/modules/oracle.d.ts.map +1 -0
  115. package/build/types/cjs/src/modules/resource.d.ts +330 -0
  116. package/build/types/cjs/src/modules/resource.d.ts.map +1 -0
  117. package/build/types/cjs/src/querier.d.ts +62 -0
  118. package/build/types/cjs/src/querier.d.ts.map +1 -0
  119. package/build/types/cjs/src/registry.d.ts +18 -0
  120. package/build/types/cjs/src/registry.d.ts.map +1 -0
  121. package/build/types/cjs/src/signer.d.ts +250 -0
  122. package/build/types/cjs/src/signer.d.ts.map +1 -0
  123. package/build/types/cjs/src/types.d.ts +221 -0
  124. package/build/types/cjs/src/types.d.ts.map +1 -0
  125. package/build/types/cjs/src/utils.d.ts +233 -0
  126. package/build/types/cjs/src/utils.d.ts.map +1 -0
  127. package/build/types/{index.d.ts → esm/src/index.d.ts} +7 -3
  128. package/build/types/esm/src/index.d.ts.map +1 -0
  129. package/build/types/esm/src/modules/_.d.ts.map +1 -0
  130. package/build/types/{modules → esm/src/modules}/did.d.ts +109 -7
  131. package/build/types/esm/src/modules/did.d.ts.map +1 -0
  132. package/build/types/esm/src/modules/feeabstraction.d.ts.map +1 -0
  133. package/build/types/esm/src/modules/feemarket.d.ts.map +1 -0
  134. package/build/types/esm/src/modules/oracle.d.ts +563 -0
  135. package/build/types/esm/src/modules/oracle.d.ts.map +1 -0
  136. package/build/types/{modules → esm/src/modules}/resource.d.ts +132 -6
  137. package/build/types/esm/src/modules/resource.d.ts.map +1 -0
  138. package/build/types/esm/src/querier.d.ts.map +1 -0
  139. package/build/types/esm/src/registry.d.ts.map +1 -0
  140. package/build/types/esm/src/signer.d.ts.map +1 -0
  141. package/build/{esm → types/esm/src}/types.d.ts +27 -1
  142. package/build/types/esm/src/types.d.ts.map +1 -0
  143. package/build/types/esm/src/utils.d.ts.map +1 -0
  144. package/package.json +3 -3
  145. package/build/esm/index.d.ts.map +0 -1
  146. package/build/esm/index.js.map +0 -1
  147. package/build/esm/modules/_.d.ts.map +0 -1
  148. package/build/esm/modules/_.js.map +0 -1
  149. package/build/esm/modules/did.d.ts.map +0 -1
  150. package/build/esm/modules/did.js.map +0 -1
  151. package/build/esm/modules/feeabstraction.d.ts.map +0 -1
  152. package/build/esm/modules/feeabstraction.js.map +0 -1
  153. package/build/esm/modules/feemarket.d.ts.map +0 -1
  154. package/build/esm/modules/feemarket.js.map +0 -1
  155. package/build/esm/modules/resource.d.ts.map +0 -1
  156. package/build/esm/modules/resource.js +0 -297
  157. package/build/esm/modules/resource.js.map +0 -1
  158. package/build/esm/querier.d.ts.map +0 -1
  159. package/build/esm/querier.js.map +0 -1
  160. package/build/esm/registry.d.ts.map +0 -1
  161. package/build/esm/registry.js.map +0 -1
  162. package/build/esm/signer.d.ts.map +0 -1
  163. package/build/esm/signer.js.map +0 -1
  164. package/build/esm/types.d.ts.map +0 -1
  165. package/build/esm/types.js.map +0 -1
  166. package/build/esm/utils.d.ts.map +0 -1
  167. package/build/esm/utils.js.map +0 -1
  168. package/build/types/index.d.ts.map +0 -1
  169. package/build/types/modules/_.d.ts.map +0 -1
  170. package/build/types/modules/did.d.ts.map +0 -1
  171. package/build/types/modules/feeabstraction.d.ts.map +0 -1
  172. package/build/types/modules/feemarket.d.ts.map +0 -1
  173. package/build/types/modules/resource.d.ts.map +0 -1
  174. package/build/types/querier.d.ts.map +0 -1
  175. package/build/types/registry.d.ts.map +0 -1
  176. package/build/types/signer.d.ts.map +0 -1
  177. package/build/types/types.d.ts.map +0 -1
  178. package/build/types/utils.d.ts.map +0 -1
  179. /package/build/esm/{types.js → cjs/src/types.js} +0 -0
  180. /package/build/esm/{modules → esm/src/modules}/_.d.ts +0 -0
  181. /package/build/esm/{modules → esm/src/modules}/_.js +0 -0
  182. /package/build/esm/{modules → esm/src/modules}/feeabstraction.d.ts +0 -0
  183. /package/build/esm/{modules → esm/src/modules}/feeabstraction.js +0 -0
  184. /package/build/esm/{modules → esm/src/modules}/feemarket.d.ts +0 -0
  185. /package/build/esm/{modules → esm/src/modules}/feemarket.js +0 -0
  186. /package/build/esm/{querier.d.ts → esm/src/querier.d.ts} +0 -0
  187. /package/build/esm/{querier.js → esm/src/querier.js} +0 -0
  188. /package/build/esm/{registry.d.ts → esm/src/registry.d.ts} +0 -0
  189. /package/build/esm/{registry.js → esm/src/registry.js} +0 -0
  190. /package/build/esm/{signer.d.ts → esm/src/signer.d.ts} +0 -0
  191. /package/build/esm/{signer.js → esm/src/signer.js} +0 -0
  192. /package/build/esm/{utils.d.ts → esm/src/utils.d.ts} +0 -0
  193. /package/build/esm/{utils.js → esm/src/utils.js} +0 -0
  194. /package/build/types/{modules → esm/src/modules}/_.d.ts +0 -0
  195. /package/build/types/{modules → esm/src/modules}/feeabstraction.d.ts +0 -0
  196. /package/build/types/{modules → esm/src/modules}/feemarket.d.ts +0 -0
  197. /package/build/types/{querier.d.ts → esm/src/querier.d.ts} +0 -0
  198. /package/build/types/{registry.d.ts → esm/src/registry.d.ts} +0 -0
  199. /package/build/types/{signer.d.ts → esm/src/signer.d.ts} +0 -0
  200. /package/build/types/{utils.d.ts → esm/src/utils.d.ts} +0 -0
@@ -13,9 +13,12 @@ const stargate_cjs_1 = require("@cosmjs/stargate-cjs");
13
13
  const _1 = require("./_");
14
14
  const types_1 = require("../types");
15
15
  const index_1 = require("@cheqd/ts-proto-cjs/cheqd/did/v2/index");
16
+ const proto_signing_cjs_1 = require("@cosmjs/proto-signing-cjs");
16
17
  const uuid_cjs_1 = require("uuid-cjs");
17
18
  const utils_cjs_1 = require("@cosmjs/utils-cjs");
18
19
  const utils_1 = require("../utils");
20
+ const oracle_1 = require("./oracle");
21
+ const coin_1 = require("cosmjs-types/cosmos/base/v1beta1/coin");
19
22
  /** Default extension key for DID-related query operations */
20
23
  exports.defaultDidExtensionKey = 'did';
21
24
  /**
@@ -154,10 +157,7 @@ const setupDidExtension = (base) => {
154
157
  return value;
155
158
  },
156
159
  didDocVersion: async (id, versionId) => {
157
- const { value } = await queryService.DidDocVersion({
158
- id,
159
- version: versionId,
160
- });
160
+ const { value } = await queryService.DidDocVersion({ id, version: versionId });
161
161
  (0, utils_cjs_1.assert)(value);
162
162
  return value;
163
163
  },
@@ -168,6 +168,11 @@ const setupDidExtension = (base) => {
168
168
  });
169
169
  return response;
170
170
  },
171
+ params: async () => {
172
+ const response = await queryService.Params({});
173
+ (0, utils_cjs_1.assert)(response.params);
174
+ return response;
175
+ },
171
176
  },
172
177
  };
173
178
  };
@@ -177,7 +182,7 @@ exports.setupDidExtension = setupDidExtension;
177
182
  * Handles creation, updates, deactivation, and querying of DID documents on the Cheqd blockchain.
178
183
  */
179
184
  class DIDModule extends _1.AbstractCheqdSDKModule {
180
- //@ts-expect-error the underlying type is intentionally wider
185
+ // @ts-expect-error underlying type `GeneratedType` is intentionally wider
181
186
  static registryTypes = [
182
187
  [exports.typeUrlMsgCreateDidDoc, index_1.MsgCreateDidDoc],
183
188
  [exports.typeUrlMsgCreateDidDocResponse, index_1.MsgCreateDidDocResponse],
@@ -188,26 +193,39 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
188
193
  ];
189
194
  /** Base denomination for Cheqd network transactions */
190
195
  static baseMinimalDenom = 'ncheq';
196
+ /** Base denomination in USD for Cheqd network transactions */
197
+ static baseUsdDenom = 'usd';
198
+ /** Default slippage tolerance in base points (BPS) */
199
+ static defaultSlippageBps = 500n;
191
200
  /**
192
201
  * Standard fee amounts for DID operations.
193
202
  * These represent the default costs for different DID document operations.
194
203
  */
195
204
  static fees = {
196
205
  /** Default fee for creating a new DID document */
197
- DefaultCreateDidDocFee: {
198
- amount: '50000000000',
199
- denom: DIDModule.baseMinimalDenom,
200
- },
206
+ DefaultCreateDidDocFee: { amount: '50000000000', denom: DIDModule.baseMinimalDenom },
201
207
  /** Default fee for updating an existing DID document */
202
- DefaultUpdateDidDocFee: {
203
- amount: '25000000000',
204
- denom: DIDModule.baseMinimalDenom,
205
- },
208
+ DefaultUpdateDidDocFee: { amount: '25000000000', denom: DIDModule.baseMinimalDenom },
206
209
  /** Default fee for deactivating a DID document */
207
- DefaultDeactivateDidDocFee: {
208
- amount: '10000000000',
209
- denom: DIDModule.baseMinimalDenom,
210
- },
210
+ DefaultDeactivateDidDocFee: { amount: '10000000000', denom: DIDModule.baseMinimalDenom },
211
+ /** Default fee for creating a new DID document in USD */
212
+ DefaultCreateDidDocFeeUSD: { amount: '2000000000000000000', denom: DIDModule.baseUsdDenom },
213
+ /** Default fee for updating an existing DID document in USD */
214
+ DefaultUpdateDidDocFeeUSD: { amount: '1000000000000000000', denom: DIDModule.baseUsdDenom },
215
+ /** Default fee for deactivating a DID document in USD */
216
+ DefaultDeactivateDidDocFeeUSD: { amount: '400000000000000000', denom: DIDModule.baseUsdDenom },
217
+ };
218
+ /**
219
+ * Standard gas limits for DID operations.
220
+ * These represent the default gas limits for different DID document operations.
221
+ */
222
+ static gasLimits = {
223
+ /** Gas limit for creating a new DID document */
224
+ CreateDidDocGasLimit: '360000',
225
+ /** Gas limit for updating an existing DID document */
226
+ UpdateDidDocGasLimit: '360000',
227
+ /** Gas limit for deactivating a DID document */
228
+ DeactivateDidDocGasLimit: '360000',
211
229
  };
212
230
  /** Querier extension setup function for DID operations */
213
231
  static querierExtensionSetup = exports.setupDidExtension;
@@ -229,6 +247,8 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
229
247
  queryDidDoc: this.queryDidDoc.bind(this),
230
248
  queryDidDocVersion: this.queryDidDocVersion.bind(this),
231
249
  queryAllDidDocVersionsMetadata: this.queryAllDidDocVersionsMetadata.bind(this),
250
+ queryParams: this.queryParams.bind(this),
251
+ generateCreateDidDocFees: this.generateCreateDidDocFees.bind(this),
232
252
  };
233
253
  }
234
254
  /**
@@ -257,11 +277,12 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
257
277
  * @param fee - Transaction fee configuration or 'auto' for automatic calculation
258
278
  * @param memo - Optional transaction memo
259
279
  * @param versionId - Optional version identifier for the DID document
280
+ * @param feeOptions - Optional fee options for the transaction
260
281
  * @param context - Optional SDK context for accessing clients
261
282
  * @returns Promise resolving to the transaction response
262
283
  * @throws Error if DID payload is not spec compliant or authentication is invalid
263
284
  */
264
- async createDidDocTx(signInputs, didPayload, address, fee, memo, versionId, context) {
285
+ async createDidDocTx(signInputs, didPayload, address, fee, memo, versionId, feeOptions, context) {
265
286
  if (!this._signer) {
266
287
  this._signer = context.sdk.signer;
267
288
  }
@@ -312,7 +333,7 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
312
333
  address = (await context.sdk.options.wallet.getAccounts())[0].address;
313
334
  }
314
335
  if (!fee) {
315
- fee = await DIDModule.generateCreateDidDocFees(address);
336
+ fee = await this.generateCreateDidDocFees(address, undefined, feeOptions, context);
316
337
  }
317
338
  return this._signer.signAndBroadcast(address, [createDidMsg], fee, memo);
318
339
  }
@@ -326,11 +347,12 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
326
347
  * @param fee - Transaction fee configuration or 'auto' for automatic calculation
327
348
  * @param memo - Optional transaction memo
328
349
  * @param versionId - Optional version identifier for the updated DID document
350
+ * @param feeOptions - Optional fee options for the transaction
329
351
  * @param context - Optional SDK context for accessing clients
330
352
  * @returns Promise resolving to the transaction response
331
353
  * @throws Error if DID payload is not spec compliant or authentication is invalid
332
354
  */
333
- async updateDidDocTx(signInputs, didPayload, address, fee, memo, versionId, context) {
355
+ async updateDidDocTx(signInputs, didPayload, address, fee, memo, versionId, feeOptions, context) {
334
356
  if (!this._signer) {
335
357
  this._signer = context.sdk.signer;
336
358
  }
@@ -381,7 +403,7 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
381
403
  address = (await context.sdk.options.wallet.getAccounts())[0].address;
382
404
  }
383
405
  if (!fee) {
384
- fee = await DIDModule.generateUpdateDidDocFees(address);
406
+ fee = await this.generateUpdateDidDocFees(address, undefined, feeOptions, context);
385
407
  }
386
408
  return this._signer.signAndBroadcast(address, [updateDidMsg], fee, memo);
387
409
  }
@@ -395,11 +417,12 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
395
417
  * @param fee - Transaction fee configuration or 'auto' for automatic calculation
396
418
  * @param memo - Optional transaction memo
397
419
  * @param versionId - Optional version identifier for the deactivation
420
+ * @param feeOptions - Optional fee options for the transaction
398
421
  * @param context - Optional SDK context for accessing clients
399
422
  * @returns Promise resolving to the transaction response
400
423
  * @throws Error if DID payload is not spec compliant or authentication is invalid
401
424
  */
402
- async deactivateDidDocTx(signInputs, didPayload, address, fee, memo, versionId, context) {
425
+ async deactivateDidDocTx(signInputs, didPayload, address, fee, memo, versionId, feeOptions, context) {
403
426
  if (!this._signer) {
404
427
  this._signer = context.sdk.signer;
405
428
  }
@@ -437,7 +460,7 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
437
460
  address = (await context.sdk.options.wallet.getAccounts())[0].address;
438
461
  }
439
462
  if (!fee) {
440
- fee = await DIDModule.generateDeactivateDidDocFees(address);
463
+ fee = await this.generateDeactivateDidDocFees(address, undefined, feeOptions, context);
441
464
  }
442
465
  return this._signer.signAndBroadcast(address, [deactivateDidMsg], fee, memo);
443
466
  }
@@ -495,6 +518,174 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
495
518
  pagination,
496
519
  };
497
520
  }
521
+ /**
522
+ * Queries the DID module parameters from the blockchain.
523
+ * @param context - Optional SDK context for accessing clients
524
+ * @returns Promise resolving to the DID module parameters
525
+ */
526
+ async queryParams(context) {
527
+ if (!this.querier) {
528
+ this.querier = context.sdk.querier;
529
+ }
530
+ return this.querier[exports.defaultDidExtensionKey].params();
531
+ }
532
+ /**
533
+ * Generates oracle-powered fees for creating a DID document.
534
+ *
535
+ * @param feePayer - Address of the account that will pay the transaction fees
536
+ * @param granter - Optional address of the account granting fee payment permissions
537
+ * @param feeOptions - Options for fetching oracle fees
538
+ * @param context - Optional SDK context for accessing clients
539
+ * @returns Promise resolving to the fee configuration for DID document creation with oracle fees
540
+ */
541
+ async generateCreateDidDocFees(feePayer, granter, feeOptions, context) {
542
+ if (!this.querier) {
543
+ this.querier = context.sdk.querier;
544
+ }
545
+ // fetch fee parameters from the DID module
546
+ const feeParams = await this.queryParams(context);
547
+ // get the price range for the create operation
548
+ const priceRange = await this.getPriceRangeFromParams(feeParams, 'create', feeOptions);
549
+ // calculate the oracle fee amount based on the price range and options
550
+ return {
551
+ amount: [await this.calculateOracleFeeAmount(priceRange, feeOptions, context)],
552
+ gas: feeOptions?.gasLimit || DIDModule.gasLimits.CreateDidDocGasLimit,
553
+ payer: feePayer,
554
+ granter,
555
+ };
556
+ }
557
+ /**
558
+ * Generates oracle-powered fees for updating a DID document.
559
+ *
560
+ * @param feePayer - Address of the account that will pay the transaction fees
561
+ * @param granter - Optional address of the account granting fee payment permissions
562
+ * @param feeOptions - Options for fetching oracle fees
563
+ * @param context - Optional SDK context for accessing clients
564
+ * @returns Promise resolving to the fee configuration for DID document update with oracle fees
565
+ */
566
+ async generateUpdateDidDocFees(feePayer, granter, fetchOptions, context) {
567
+ if (!this.querier) {
568
+ this.querier = context.sdk.querier;
569
+ }
570
+ // fetch fee parameters from the DID module
571
+ const feeParams = await this.queryParams(context);
572
+ // get the price range for the update operation
573
+ const priceRange = await this.getPriceRangeFromParams(feeParams, 'update', fetchOptions);
574
+ // calculate the oracle fee amount based on the price range and options
575
+ return {
576
+ amount: [await this.calculateOracleFeeAmount(priceRange, fetchOptions, context)],
577
+ gas: fetchOptions?.gasLimit || DIDModule.gasLimits.UpdateDidDocGasLimit,
578
+ payer: feePayer,
579
+ granter,
580
+ };
581
+ }
582
+ /** Generates oracle-powered fees for deactivating a DID document.
583
+ *
584
+ * @param feePayer - Address of the account that will pay the transaction fees
585
+ * @param granter - Optional address of the account granting fee payment permissions
586
+ * @param feeOptions - Options for fetching oracle fees
587
+ * @param context - Optional SDK context for accessing clients
588
+ * @returns Promise resolving to the fee configuration for DID document deactivation with oracle fees
589
+ */
590
+ async generateDeactivateDidDocFees(feePayer, granter, feeOptions, context) {
591
+ if (!this.querier) {
592
+ this.querier = context.sdk.querier;
593
+ }
594
+ // fetch fee parameters from the DID module
595
+ const feeParams = await this.queryParams(context);
596
+ // get the price range for the deactivate operation
597
+ const priceRange = await this.getPriceRangeFromParams(feeParams, 'deactivate', feeOptions);
598
+ // calculate the oracle fee amount based on the price range and options
599
+ return {
600
+ amount: [await this.calculateOracleFeeAmount(priceRange, feeOptions, context)],
601
+ gas: feeOptions?.gasLimit || DIDModule.gasLimits.DeactivateDidDocGasLimit,
602
+ payer: feePayer,
603
+ granter,
604
+ };
605
+ }
606
+ /**
607
+ * Gets the fee range for a specific DID operation from the module parameters.
608
+ * @param feeParams - DID module fee parameters
609
+ * @param operation - DID operation type ('create', 'update', 'deactivate')
610
+ * @param feeOptions - Options for fee retrieval
611
+ * @returns Promise resolving to the fee range for the specified operation
612
+ */
613
+ async getPriceRangeFromParams(feeParams, operation, feeOptions) {
614
+ const operationFees = (() => {
615
+ switch (operation) {
616
+ case 'create':
617
+ return feeParams.params?.createDid.find((fee) => fee.denom === (feeOptions?.feeDenom ?? DIDModule.baseUsdDenom));
618
+ case 'update':
619
+ return feeParams.params?.updateDid.find((fee) => fee.denom === (feeOptions?.feeDenom ?? DIDModule.baseUsdDenom));
620
+ case 'deactivate':
621
+ return feeParams.params?.deactivateDid.find((fee) => fee.denom === (feeOptions?.feeDenom ?? DIDModule.baseUsdDenom));
622
+ default:
623
+ throw new Error('Unsupported operation for fee retrieval');
624
+ }
625
+ })();
626
+ if (!operationFees) {
627
+ throw new Error(`Fee parameters not found for operation: ${operation}`);
628
+ }
629
+ return operationFees;
630
+ }
631
+ /**
632
+ * Calculates the oracle fee amount based on the provided fee range and options.
633
+ * @param feeRange - Fee range for the DID operation
634
+ * @param feeOptions - Options for fee calculation
635
+ * @param context - Optional SDK context for accessing clients
636
+ * @returns Promise resolving to the calculated fee amount as a Coin
637
+ */
638
+ async calculateOracleFeeAmount(feeRange, feeOptions, context) {
639
+ if (!this.querier) {
640
+ this.querier = context.sdk.querier;
641
+ }
642
+ if (feeRange.denom !== feeOptions?.feeDenom && feeOptions?.feeDenom !== undefined) {
643
+ throw new Error(`Fee denomination mismatch: expected ${feeRange.denom}, got ${feeOptions.feeDenom}`);
644
+ }
645
+ const wantedFeeAmount = feeRange.denom === DIDModule.baseUsdDenom
646
+ ? (feeOptions?.wantedAmountUsd ?? DIDModule.isFixedRange(feeRange))
647
+ ? feeRange.minAmount
648
+ : feeRange.minAmount
649
+ : feeRange.minAmount;
650
+ // override fee options, if unassigned - case: moving average type
651
+ feeOptions = {
652
+ ...feeOptions,
653
+ movingAverageType: feeOptions?.movingAverageType || oracle_1.MovingAverages.WMA,
654
+ };
655
+ // override fee options, if unassigned - case: WMA strategy
656
+ feeOptions = {
657
+ ...feeOptions,
658
+ wmaStrategy: feeOptions?.wmaStrategy || feeOptions?.movingAverageType === oracle_1.MovingAverages.WMA
659
+ ? oracle_1.WMAStrategies.BALANCED
660
+ : undefined,
661
+ };
662
+ const convertedFeeAmount = feeRange.denom === DIDModule.baseUsdDenom
663
+ ? (0, proto_signing_cjs_1.parseCoins)((await this.querier[oracle_1.defaultOracleExtensionKey].convertUSDtoCHEQ(wantedFeeAmount, feeOptions?.movingAverageType, feeOptions?.wmaStrategy, feeOptions?.wmaWeights?.map((w) => BigInt(w)))).amount)[0]
664
+ : coin_1.Coin.fromPartial({ amount: wantedFeeAmount, denom: feeRange.denom });
665
+ return feeOptions?.slippageBps
666
+ ? DIDModule.applySlippageToCoin(convertedFeeAmount, feeOptions.slippageBps)
667
+ : convertedFeeAmount;
668
+ }
669
+ /**
670
+ * Applies slippage to a given coin amount based on the specified basis points.
671
+ * @param coin - Coin amount to apply slippage to
672
+ * @param slippageBps - Slippage in basis points (bps)
673
+ * @returns Coin with adjusted amount after applying slippage
674
+ */
675
+ static applySlippageToCoin(coin, slippageBps) {
676
+ const base = BigInt(coin.amount);
677
+ const delta = (base * BigInt(slippageBps)) / BigInt(10_000);
678
+ const adjustedAmount = base + delta;
679
+ return coin_1.Coin.fromPartial({ amount: adjustedAmount.toString(), denom: coin.denom });
680
+ }
681
+ /**
682
+ * Checks if a fee range represents a fixed fee (minAmount equals maxAmount).
683
+ * @param feeRange - Fee range to check
684
+ * @returns True if the fee range is fixed, false otherwise
685
+ */
686
+ static isFixedRange(feeRange) {
687
+ return feeRange.minAmount === feeRange.maxAmount;
688
+ }
498
689
  /**
499
690
  * Validates a DID document against the Cheqd specification requirements.
500
691
  * Ensures all required fields are present and verification methods are supported.
@@ -706,7 +897,7 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
706
897
  error: `authentication contains invalid key references: invalid key reference ${Array.from(uniqueAuthentication).find((a) => !didDocument.verificationMethod?.some((vm) => vm.id === a))}`,
707
898
  };
708
899
  // define whether external controller or not
709
- const externalController = (0, utils_1.normalizeController)(didDocument);
900
+ const externalController = (0, utils_1.normalizeController)(didDocument).some((c) => c !== didDocument.id);
710
901
  // validate authentication - case: authentication matches signatures, unique, if no external controller
711
902
  if (!Array.from(uniqueAuthentication).every((a) => uniqueSignatures.has(a)) && !externalController)
712
903
  return {
@@ -726,7 +917,7 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
726
917
  if (!querier)
727
918
  throw new Error('querier is required for external controller validation');
728
919
  // get external controllers
729
- const externalControllers = externalController.filter((c) => c !== didDocument.id);
920
+ const externalControllers = (0, utils_1.normalizeController)(didDocument).filter((c) => c !== didDocument.id);
730
921
  // get external controllers' documents
731
922
  const externalControllersDocuments = await Promise.all(externalControllers?.map(async (c) => {
732
923
  // compute index of external controller's document, if provided
@@ -843,7 +1034,7 @@ class DIDModule extends _1.AbstractCheqdSDKModule {
843
1034
  ? didDocument.verificationMethod?.filter((vm) => previousDidDocument?.verificationMethod?.some((pvm) => pvm.id === vm.id &&
844
1035
  (pvm.publicKeyBase58 !== vm.publicKeyBase58 ||
845
1036
  pvm.publicKeyMultibase !== vm.publicKeyMultibase ||
846
- pvm.publicKeyJwk !== vm.publicKeyJwk)))
1037
+ pvm.publicKeyJwk?.x !== vm.publicKeyJwk?.x)))
847
1038
  : [];
848
1039
  // define unique union of signatures required, including key replacement logic
849
1040
  let uniqueUnionSignaturesRequired = new Set();
@@ -1 +1 @@
1
- {"version":3,"file":"did.js","sourceRoot":"","sources":["../../../cjs/src/modules/did.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"did.js","sourceRoot":"","sources":["../../../cjs/src/modules/did.ts"],"names":[],"mappings":"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"}