UNPKG

@daevm/cheqd-sdk

Version:

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

144 lines 11.3 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.isEqualKeyValuePair = exports.validateSpecCompliantPayload = exports.createSignInputsFromImportableEd25519Key = exports.createDidPayload = exports.createDidVerificationMethod = exports.createVerificationKeys = exports.createKeyPairHex = exports.createKeyPairBase64 = exports.createKeyPairRaw = 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.ResourceModule = exports.DIDModule = exports.createCheqdSDK = exports.filterUnauthorizedMethods = exports.CheqdSDK = void 0; 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_1 = require("@cosmjs/stargate"); const querier_1 = require("./querier"); 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_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(); this.signer = await signer_1.CheqdSigningStargateClient.connectWithSigner(this.options.rpcUrl, this.options.wallet, { registry, gasPrice: this.options?.gasPrice, }); return await this.loadModules(this.options.modules); } } 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] }), {}); } exports.filterUnauthorizedMethods = filterUnauthorizedMethods; async function createCheqdSDK(options) { return await (new CheqdSDK(options)).build(); } exports.createCheqdSDK = createCheqdSDK; 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; } }); __exportStar(require("./signer"), exports); __exportStar(require("./querier"), exports); __exportStar(require("./registry"), exports); __exportStar(require("./types"), exports); var utils_1 = require("./utils"); 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; } }); //# sourceMappingURL=index.js.map