UNPKG

@cheqd/sdk

Version:

A TypeScript SDK built with CosmJS to interact with the cheqd network ledger

213 lines 21.6 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __exportStar = (this && this.__exportStar) || function(m, exports) { for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); }; Object.defineProperty(exports, "__esModule", { value: true }); exports.typeUrlMsgUpdateHostZoneResponse = exports.typeUrlMsgUpdateHostZone = exports.typeUrlMsgRemoveHostZoneResponse = exports.typeUrlMsgRemoveHostZone = exports.typeUrlMsgFundFeeAbsModuleAccountResponse = exports.typeUrlMsgFundFeeAbsModuleAccount = exports.typeUrlMsgAddHostZoneResponse = exports.typeUrlMsgAddHostZone = exports.protobufLiteralsFeeabstraction = exports.defaultExtensionKey = exports.isParamsEncodeObject = exports.isGasPricesEncodeObject = exports.isGasPriceEncodeObject = exports.setupFeemarketExtension = exports.typeUrlParamsResponse = exports.typeUrlGasPricesResponse = exports.typeUrlGasPriceResponse = exports.protobufLiteralsFeemarket = exports.defaultGasPriceTiers = exports.defaultFeemarketExtensionKey = exports.isMsgCreateResourceEncodeObject = exports.setupResourceExtension = exports.typeUrlMsgCreateResourceResponse = exports.typeUrlMsgCreateResource = exports.protobufLiteralsResource = exports.defaultResourceExtensionKey = exports.isMsgDeactivateDidDocEncodeObject = exports.isMsgUpdateDidDocEncodeObject = exports.isMsgCreateDidDocEncodeObject = exports.setupDidExtension = exports.typeUrlMsgDeactivateDidDocResponse = exports.typeUrlMsgDeactivateDidDoc = exports.typeUrlMsgUpdateDidDocResponse = exports.typeUrlMsgUpdateDidDoc = exports.typeUrlMsgCreateDidDocResponse = exports.typeUrlMsgCreateDidDoc = exports.protobufLiteralsDid = exports.defaultDidExtensionKey = exports.contexts = exports.MsgDeactivateDidDocEncodeObject = exports.MsgUpdateDidDocResponseEncodeObject = exports.MsgUpdateDidDocEncodeObject = exports.MsgCreateDidDocResponseEncodeObject = exports.applyMixins = exports.AbstractCheqdSDKModule = exports.FeeabstractionModule = exports.FeemarketModule = exports.ResourceModule = exports.DIDModule = exports.CheqdSDK = void 0; exports.toMultibaseRaw = exports.checkBalance = exports.getCosmosAccount = exports.createCosmosPayerWallet = exports.isEqualKeyValuePair = exports.validateSpecCompliantPayload = exports.createSignInputsFromImportableEd25519Key = exports.createDidPayload = exports.createDidVerificationMethod = exports.createVerificationKeys = exports.createKeyPairHex = exports.createKeyPairBase64 = exports.createKeyPairRaw = exports.TImportableEd25519Key = exports.isMsgUpdateParamsResponseEncodeObject = exports.isMsgUpdateParamsEncodeObject = exports.isMsgSwapCrossChainResponseEncodeObject = exports.isMsgSwapCrossChainEncodeObject = exports.isMsgSendQueryIbcDenomTWAPResponseEncodeObject = exports.isMsgSendQueryIbcDenomTWAPEncodeObject = exports.isMsgUpdateHostZoneResponseEncodeObject = exports.isMsgUpdateHostZoneEncodeObject = exports.isMsgRemoveHostZoneResponseEncodeObject = exports.isMsgRemoveHostZoneEncodeObject = exports.isMsgFundFeeAbsModuleAccountResponseEncodeObject = exports.isMsgFundFeeAbsModuleAccountEncodeObject = exports.isMsgAddHostZoneResponseEncodeObject = exports.isMsgAddHostZoneEncodeObject = exports.setupFeeabstractionExtension = exports.typeUrlMsgUpdateParamsResponse = exports.typeUrlMsgUpdateParams = exports.typeUrlMsgSwapCrossChainResponse = exports.typeUrlMsgSwapCrossChain = exports.typeUrlMsgSendQueryIbcDenomTWAPResponse = exports.typeUrlMsgSendQueryIbcDenomTWAP = void 0; exports.filterUnauthorizedMethods = filterUnauthorizedMethods; exports.createCheqdSDK = createCheqdSDK; const did_1 = require("./modules/did"); Object.defineProperty(exports, "DIDModule", { enumerable: true, get: function () { return did_1.DIDModule; } }); const resource_1 = require("./modules/resource"); Object.defineProperty(exports, "ResourceModule", { enumerable: true, get: function () { return resource_1.ResourceModule; } }); const _1 = require("./modules/_"); const registry_1 = require("./registry"); const signer_1 = require("./signer"); const types_1 = require("./types"); const stargate_cjs_1 = require("@cosmjs/stargate-cjs"); const querier_1 = require("./querier"); const feemarket_1 = require("./modules/feemarket"); Object.defineProperty(exports, "FeemarketModule", { enumerable: true, get: function () { return feemarket_1.FeemarketModule; } }); const feeabstraction_1 = require("./modules/feeabstraction"); Object.defineProperty(exports, "FeeabstractionModule", { enumerable: true, get: function () { return feeabstraction_1.FeeabstractionModule; } }); class CheqdSDK { methods; signer; querier; options; protectedMethods = ['constructor', 'build', 'loadModules', 'loadRegistry']; constructor(options) { if (!options?.wallet) { throw new Error('No wallet provided'); } this.options = { authorizedMethods: [], network: types_1.CheqdNetwork.Testnet, ...options, }; this.methods = {}; this.signer = new signer_1.CheqdSigningStargateClient(undefined, this.options.wallet, {}); this.querier = new stargate_cjs_1.QueryClient({}); } async execute(method, ...params) { if (!Object.keys(this.methods).includes(method)) { throw new Error(`Method ${method} is not authorized`); } return await this.methods[method](...params, { sdk: this }); } async loadModules(modules) { this.options.modules = this.options.modules.map((module) => (0, _1.instantiateCheqdSDKModule)(module, this.signer, this.querier, { sdk: this, })); const methods = (0, _1.applyMixins)(this, modules); this.methods = { ...this.methods, ...filterUnauthorizedMethods(methods, this.options.authorizedMethods || [], this.protectedMethods), }; for (const method of Object.keys(this.methods)) { // @ts-ignore this[method] = async (...params) => { return await this.execute(method, ...params); }; } return this; } loadRegistry() { const registryTypes = this.options.modules .map((module) => (0, _1.instantiateCheqdSDKModuleRegistryTypes)(module)) .reduce((acc, types) => { return [...acc, ...types]; }); return (0, registry_1.createDefaultCheqdRegistry)(registryTypes); } async loadQuerierExtensions() { const querierExtensions = this.options.modules.map((module) => (0, _1.instantiateCheqdSDKModuleQuerierExtensionSetup)(module)); const querier = await querier_1.CheqdQuerier.connectWithExtensions(this.options.rpcUrl, ...querierExtensions); return querier; } async build() { const registry = this.loadRegistry(); this.querier = await this.loadQuerierExtensions(); // ensure feemarket module is loaded, if not already if (!this.options.modules.find((module) => module instanceof feemarket_1.FeemarketModule)) { this.options.modules.push(feemarket_1.FeemarketModule); } const sdk = await this.loadModules(this.options.modules); // define gas price this.options.gasPrice = this.options.gasPrice || (await this.generateSafeGasPriceWithExponentialBackoff(did_1.DIDModule.baseMinimalDenom, feemarket_1.defaultGasPriceTiers.Low, undefined, { sdk })); this.signer = await signer_1.CheqdSigningStargateClient.connectWithSigner(this.options.rpcUrl, this.options.wallet, { registry, gasPrice: this.options.gasPrice, }); return sdk; } } exports.CheqdSDK = CheqdSDK; function filterUnauthorizedMethods(methods, authorizedMethods, protectedMethods) { let _methods = Object.keys(methods); if (authorizedMethods.length === 0) return _methods .filter((method) => !protectedMethods.includes(method)) .reduce((acc, method) => ({ ...acc, [method]: methods[method] }), {}); return _methods .filter((method) => authorizedMethods.includes(method) && !protectedMethods.includes(method)) .reduce((acc, method) => ({ ...acc, [method]: methods[method] }), {}); } async function createCheqdSDK(options) { return await new CheqdSDK(options).build(); } var _2 = require("./modules/_"); Object.defineProperty(exports, "AbstractCheqdSDKModule", { enumerable: true, get: function () { return _2.AbstractCheqdSDKModule; } }); Object.defineProperty(exports, "applyMixins", { enumerable: true, get: function () { return _2.applyMixins; } }); var did_2 = require("./modules/did"); Object.defineProperty(exports, "MsgCreateDidDocResponseEncodeObject", { enumerable: true, get: function () { return did_2.MsgCreateDidDocResponseEncodeObject; } }); Object.defineProperty(exports, "MsgUpdateDidDocEncodeObject", { enumerable: true, get: function () { return did_2.MsgUpdateDidDocEncodeObject; } }); Object.defineProperty(exports, "MsgUpdateDidDocResponseEncodeObject", { enumerable: true, get: function () { return did_2.MsgUpdateDidDocResponseEncodeObject; } }); Object.defineProperty(exports, "MsgDeactivateDidDocEncodeObject", { enumerable: true, get: function () { return did_2.MsgDeactivateDidDocEncodeObject; } }); Object.defineProperty(exports, "contexts", { enumerable: true, get: function () { return did_2.contexts; } }); Object.defineProperty(exports, "defaultDidExtensionKey", { enumerable: true, get: function () { return did_2.defaultDidExtensionKey; } }); Object.defineProperty(exports, "protobufLiteralsDid", { enumerable: true, get: function () { return did_2.protobufLiterals; } }); Object.defineProperty(exports, "typeUrlMsgCreateDidDoc", { enumerable: true, get: function () { return did_2.typeUrlMsgCreateDidDoc; } }); Object.defineProperty(exports, "typeUrlMsgCreateDidDocResponse", { enumerable: true, get: function () { return did_2.typeUrlMsgCreateDidDocResponse; } }); Object.defineProperty(exports, "typeUrlMsgUpdateDidDoc", { enumerable: true, get: function () { return did_2.typeUrlMsgUpdateDidDoc; } }); Object.defineProperty(exports, "typeUrlMsgUpdateDidDocResponse", { enumerable: true, get: function () { return did_2.typeUrlMsgUpdateDidDocResponse; } }); Object.defineProperty(exports, "typeUrlMsgDeactivateDidDoc", { enumerable: true, get: function () { return did_2.typeUrlMsgDeactivateDidDoc; } }); Object.defineProperty(exports, "typeUrlMsgDeactivateDidDocResponse", { enumerable: true, get: function () { return did_2.typeUrlMsgDeactivateDidDocResponse; } }); Object.defineProperty(exports, "setupDidExtension", { enumerable: true, get: function () { return did_2.setupDidExtension; } }); Object.defineProperty(exports, "isMsgCreateDidDocEncodeObject", { enumerable: true, get: function () { return did_2.isMsgCreateDidDocEncodeObject; } }); Object.defineProperty(exports, "isMsgUpdateDidDocEncodeObject", { enumerable: true, get: function () { return did_2.isMsgUpdateDidDocEncodeObject; } }); Object.defineProperty(exports, "isMsgDeactivateDidDocEncodeObject", { enumerable: true, get: function () { return did_2.isMsgDeactivateDidDocEncodeObject; } }); var resource_2 = require("./modules/resource"); Object.defineProperty(exports, "defaultResourceExtensionKey", { enumerable: true, get: function () { return resource_2.defaultResourceExtensionKey; } }); Object.defineProperty(exports, "protobufLiteralsResource", { enumerable: true, get: function () { return resource_2.protobufLiterals; } }); Object.defineProperty(exports, "typeUrlMsgCreateResource", { enumerable: true, get: function () { return resource_2.typeUrlMsgCreateResource; } }); Object.defineProperty(exports, "typeUrlMsgCreateResourceResponse", { enumerable: true, get: function () { return resource_2.typeUrlMsgCreateResourceResponse; } }); Object.defineProperty(exports, "setupResourceExtension", { enumerable: true, get: function () { return resource_2.setupResourceExtension; } }); Object.defineProperty(exports, "isMsgCreateResourceEncodeObject", { enumerable: true, get: function () { return resource_2.isMsgCreateResourceEncodeObject; } }); var feemarket_2 = require("./modules/feemarket"); Object.defineProperty(exports, "defaultFeemarketExtensionKey", { enumerable: true, get: function () { return feemarket_2.defaultFeemarketExtensionKey; } }); Object.defineProperty(exports, "defaultGasPriceTiers", { enumerable: true, get: function () { return feemarket_2.defaultGasPriceTiers; } }); Object.defineProperty(exports, "protobufLiteralsFeemarket", { enumerable: true, get: function () { return feemarket_2.protobufLiterals; } }); Object.defineProperty(exports, "typeUrlGasPriceResponse", { enumerable: true, get: function () { return feemarket_2.typeUrlGasPriceResponse; } }); Object.defineProperty(exports, "typeUrlGasPricesResponse", { enumerable: true, get: function () { return feemarket_2.typeUrlGasPricesResponse; } }); Object.defineProperty(exports, "typeUrlParamsResponse", { enumerable: true, get: function () { return feemarket_2.typeUrlParamsResponse; } }); Object.defineProperty(exports, "setupFeemarketExtension", { enumerable: true, get: function () { return feemarket_2.setupFeemarketExtension; } }); Object.defineProperty(exports, "isGasPriceEncodeObject", { enumerable: true, get: function () { return feemarket_2.isGasPriceEncodeObject; } }); Object.defineProperty(exports, "isGasPricesEncodeObject", { enumerable: true, get: function () { return feemarket_2.isGasPricesEncodeObject; } }); Object.defineProperty(exports, "isParamsEncodeObject", { enumerable: true, get: function () { return feemarket_2.isParamsEncodeObject; } }); var feeabstraction_2 = require("./modules/feeabstraction"); Object.defineProperty(exports, "defaultExtensionKey", { enumerable: true, get: function () { return feeabstraction_2.defaultExtensionKey; } }); Object.defineProperty(exports, "protobufLiteralsFeeabstraction", { enumerable: true, get: function () { return feeabstraction_2.protobufLiterals; } }); Object.defineProperty(exports, "typeUrlMsgAddHostZone", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgAddHostZone; } }); Object.defineProperty(exports, "typeUrlMsgAddHostZoneResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgAddHostZoneResponse; } }); Object.defineProperty(exports, "typeUrlMsgFundFeeAbsModuleAccount", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgFundFeeAbsModuleAccount; } }); Object.defineProperty(exports, "typeUrlMsgFundFeeAbsModuleAccountResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgFundFeeAbsModuleAccountResponse; } }); Object.defineProperty(exports, "typeUrlMsgRemoveHostZone", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgRemoveHostZone; } }); Object.defineProperty(exports, "typeUrlMsgRemoveHostZoneResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgRemoveHostZoneResponse; } }); Object.defineProperty(exports, "typeUrlMsgUpdateHostZone", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgUpdateHostZone; } }); Object.defineProperty(exports, "typeUrlMsgUpdateHostZoneResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgUpdateHostZoneResponse; } }); Object.defineProperty(exports, "typeUrlMsgSendQueryIbcDenomTWAP", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgSendQueryIbcDenomTWAP; } }); Object.defineProperty(exports, "typeUrlMsgSendQueryIbcDenomTWAPResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgSendQueryIbcDenomTWAPResponse; } }); Object.defineProperty(exports, "typeUrlMsgSwapCrossChain", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgSwapCrossChain; } }); Object.defineProperty(exports, "typeUrlMsgSwapCrossChainResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgSwapCrossChainResponse; } }); Object.defineProperty(exports, "typeUrlMsgUpdateParams", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgUpdateParams; } }); Object.defineProperty(exports, "typeUrlMsgUpdateParamsResponse", { enumerable: true, get: function () { return feeabstraction_2.typeUrlMsgUpdateParamsResponse; } }); Object.defineProperty(exports, "setupFeeabstractionExtension", { enumerable: true, get: function () { return feeabstraction_2.setupFeeabstractionExtension; } }); Object.defineProperty(exports, "isMsgAddHostZoneEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgAddHostZoneEncodeObject; } }); Object.defineProperty(exports, "isMsgAddHostZoneResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgAddHostZoneResponseEncodeObject; } }); Object.defineProperty(exports, "isMsgFundFeeAbsModuleAccountEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgFundFeeAbsModuleAccountEncodeObject; } }); Object.defineProperty(exports, "isMsgFundFeeAbsModuleAccountResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgFundFeeAbsModuleAccountResponseEncodeObject; } }); Object.defineProperty(exports, "isMsgRemoveHostZoneEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgRemoveHostZoneEncodeObject; } }); Object.defineProperty(exports, "isMsgRemoveHostZoneResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgRemoveHostZoneResponseEncodeObject; } }); Object.defineProperty(exports, "isMsgUpdateHostZoneEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgUpdateHostZoneEncodeObject; } }); Object.defineProperty(exports, "isMsgUpdateHostZoneResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgUpdateHostZoneResponseEncodeObject; } }); Object.defineProperty(exports, "isMsgSendQueryIbcDenomTWAPEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgSendQueryIbcDenomTWAPEncodeObject; } }); Object.defineProperty(exports, "isMsgSendQueryIbcDenomTWAPResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgSendQueryIbcDenomTWAPResponseEncodeObject; } }); Object.defineProperty(exports, "isMsgSwapCrossChainEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgSwapCrossChainEncodeObject; } }); Object.defineProperty(exports, "isMsgSwapCrossChainResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgSwapCrossChainResponseEncodeObject; } }); Object.defineProperty(exports, "isMsgUpdateParamsEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgUpdateParamsEncodeObject; } }); Object.defineProperty(exports, "isMsgUpdateParamsResponseEncodeObject", { enumerable: true, get: function () { return feeabstraction_2.isMsgUpdateParamsResponseEncodeObject; } }); __exportStar(require("./signer"), exports); __exportStar(require("./querier"), exports); __exportStar(require("./registry"), exports); __exportStar(require("./types"), exports); var utils_1 = require("./utils"); Object.defineProperty(exports, "TImportableEd25519Key", { enumerable: true, get: function () { return utils_1.TImportableEd25519Key; } }); Object.defineProperty(exports, "createKeyPairRaw", { enumerable: true, get: function () { return utils_1.createKeyPairRaw; } }); Object.defineProperty(exports, "createKeyPairBase64", { enumerable: true, get: function () { return utils_1.createKeyPairBase64; } }); Object.defineProperty(exports, "createKeyPairHex", { enumerable: true, get: function () { return utils_1.createKeyPairHex; } }); Object.defineProperty(exports, "createVerificationKeys", { enumerable: true, get: function () { return utils_1.createVerificationKeys; } }); Object.defineProperty(exports, "createDidVerificationMethod", { enumerable: true, get: function () { return utils_1.createDidVerificationMethod; } }); Object.defineProperty(exports, "createDidPayload", { enumerable: true, get: function () { return utils_1.createDidPayload; } }); Object.defineProperty(exports, "createSignInputsFromImportableEd25519Key", { enumerable: true, get: function () { return utils_1.createSignInputsFromImportableEd25519Key; } }); Object.defineProperty(exports, "validateSpecCompliantPayload", { enumerable: true, get: function () { return utils_1.validateSpecCompliantPayload; } }); Object.defineProperty(exports, "isEqualKeyValuePair", { enumerable: true, get: function () { return utils_1.isEqualKeyValuePair; } }); Object.defineProperty(exports, "createCosmosPayerWallet", { enumerable: true, get: function () { return utils_1.createCosmosPayerWallet; } }); Object.defineProperty(exports, "getCosmosAccount", { enumerable: true, get: function () { return utils_1.getCosmosAccount; } }); Object.defineProperty(exports, "checkBalance", { enumerable: true, get: function () { return utils_1.checkBalance; } }); Object.defineProperty(exports, "toMultibaseRaw", { enumerable: true, get: function () { return utils_1.toMultibaseRaw; } }); //# sourceMappingURL=index.js.map