{"version":3,"sources":["jsdelivr-header.js","/npm/@blitchain/blitjs@2.0.1/dist/index.js"],"names":[],"mappings":"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","file":"/npm/@blitchain/blitjs@2.0.1/dist/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@blitchain/blitjs@2.0.1/dist/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","\"use strict\";\nvar __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {\n    if (k2 === undefined) k2 = k;\n    var desc = Object.getOwnPropertyDescriptor(m, k);\n    if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n      desc = { enumerable: true, get: function() { return m[k]; } };\n    }\n    Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n    if (k2 === undefined) k2 = k;\n    o[k2] = m[k];\n}));\nvar __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {\n    Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n    o[\"default\"] = v;\n});\nvar __importStar = (this && this.__importStar) || function (mod) {\n    if (mod && mod.__esModule) return mod;\n    var result = {};\n    if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n    __setModuleDefault(result, mod);\n    return result;\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.helpers = exports.blitjs = exports.experimentalHelpers = void 0;\nconst blitjs = __importStar(require(\"./codegen\"));\nexports.blitjs = blitjs;\nconst helpers = __importStar(require(\"./codegen/helpers\"));\nexports.helpers = helpers;\nconst proto_signing_1 = require(\"@cosmjs/proto-signing\");\nBigInt.prototype.toJSON = function () {\n    return this.toString();\n};\nconst fetchPublicEndpoints = async (restEndpoint = '') => {\n    try {\n        const response = await fetch(restEndpoint + '/blit/services/endpoints');\n        const endpoints = await response.json();\n        return { rpcEndpoint: endpoints.rpc_url, restEndpoint: endpoints.api_url };\n    }\n    catch (e) {\n        if (e instanceof TypeError) {\n            throw new Error('Please provide a valid restEndpoint');\n        }\n        else {\n            throw e;\n        }\n    }\n};\nconst makeChainInfo = async ({ rpcEndpoint, restEndpoint }) => {\n    const queryClient = await blitjs.blit.ClientFactory.createLCDClient({\n        restEndpoint\n    });\n    const nodeInfo = await queryClient.cosmos.base.tendermint.v1beta1.getNodeInfo();\n    const chainId = nodeInfo.default_node_info.network;\n    let chainName = 'Blitchain';\n    if (chainId.includes('test')) {\n        chainName = `${chainName} Testnet (${chainId})`;\n    }\n    if (chainId.includes('dev')) {\n        chainName = `${chainName} Devnet (${chainId})`;\n    }\n    return {\n        features: [],\n        chainId: chainId,\n        chainName: chainName,\n        rpc: rpcEndpoint,\n        rest: restEndpoint,\n        stakeCurrency: {\n            coinDenom: 'blit',\n            coinMinimalDenom: 'ublit',\n            coinDecimals: 6\n        },\n        bip44: {\n            coinType: 118\n        },\n        bech32Config: {\n            bech32PrefixAccAddr: 'blit',\n            bech32PrefixAccPub: 'blitpub',\n            bech32PrefixValAddr: 'blitvaloper',\n            bech32PrefixValPub: 'blitvaloperpub',\n            bech32PrefixConsAddr: 'blitvalcons',\n            bech32PrefixConsPub: 'blitvalconspub'\n        },\n        currencies: [\n            {\n                coinDenom: 'blit',\n                coinMinimalDenom: 'ublit',\n                coinDecimals: 6\n            }\n        ],\n        feeCurrencies: [\n            {\n                coinDenom: 'blit',\n                coinMinimalDenom: 'ublit',\n                coinDecimals: 0,\n                gasPriceStep: { low: 0.0, average: 0.000001, high: 1 }\n            }\n        ]\n    };\n};\nconst makeKeplrClient = async ({ rpcEndpoint, restEndpoint }) => {\n    if (!window.keplr) {\n        throw new Error('Please install keplr extension');\n    }\n    const chainInfo = await makeChainInfo({ rpcEndpoint, restEndpoint });\n    await window.keplr.experimentalSuggestChain(chainInfo);\n    await window.keplr.enable(chainInfo.chainId);\n    const offlineSigner = window.getOfflineSigner(chainInfo.chainId);\n    const client = await blitjs.getSigningBlitClient({\n        rpcEndpoint,\n        signer: offlineSigner\n    });\n    const ibcClient = await blitjs.getSigningIbcClient({\n        rpcEndpoint,\n        signer: offlineSigner\n    });\n    //@ts-ignore\n    ibcClient.registry.types.forEach((value, key) => {\n        // add the ibc types to the blit client if they don't exist\n        //@ts-ignore\n        if (!client.registry.types.has(key)) {\n            //@ts-ignore\n            client.registry.types.set(key, value);\n        }\n    });\n    //@ts-ignore\n    client.gasPrice = '0ublit';\n    return client;\n};\nconst runFunction = async ({ msgClient, attachedMessages = [], callerAddress, scriptAddress, functionName, kwargs, extraCode, grantee, gasMultiple = 1.5 }) => {\n    const message = blitjs.blit.script.MessageComposer.withTypeUrl.run({\n        attachedMessages: attachedMessages,\n        callerAddress,\n        scriptAddress,\n        functionName,\n        kwargs: JSON.stringify(kwargs),\n        extraCode,\n        grantee\n    });\n    try {\n        var resp = await msgClient.signAndBroadcast(grantee, [message], gasMultiple);\n        if (resp.code === 0) {\n            const msgResponse = resp.msgResponses[0];\n            try {\n                // Parse the response\n                return {\n                    tx: resp,\n                    result: JSON.parse(blitjs.blit.script.MsgRunResponse.fromProtoMsg(msgResponse).response)\n                };\n            }\n            catch (e) {\n                if (e instanceof SyntaxError) {\n                    throw new Error(resp.rawLog);\n                }\n                throw e; // re-throw the error if it's not a SyntaxError\n            }\n        }\n        else {\n            // So we split into lines and get the last line which is the error\n            const lastLine = resp.rawLog.split('\\n').slice(-1)[0];\n            // strip \": Exception in Script\" only from lastLine (technically this will remove it anywhere in the result, but that's fine)\n            const result = lastLine.replace(': Exception in Script', '');\n            try {\n                return { tx: resp, result: JSON.parse(result) };\n            }\n            catch (e) {\n                if (e instanceof SyntaxError) {\n                    throw new Error(resp.rawLog);\n                }\n                throw e; // re-throw the error if it's not a SyntaxError\n            }\n        }\n    }\n    catch (e) {\n        try {\n            let result = e.message.split('\\n').slice(-1)[0];\n            //find last }\n            const lastBracket = result.lastIndexOf('}');\n            //remove everything after last }\n            result = result.substring(0, lastBracket + 1);\n            return { tx: null, result: JSON.parse(result) };\n        }\n        catch (e2) {\n            throw e; // re-throw the error if it's not a SyntaxError\n        }\n    }\n};\nconst makeJsClient = async ({ mnemonic, rpcEndpoint, restEndpoint }) => {\n    if (!mnemonic) {\n        mnemonic = (await proto_signing_1.DirectSecp256k1HdWallet.generate(24)).mnemonic;\n    }\n    const signer = await proto_signing_1.DirectSecp256k1HdWallet.fromMnemonic(mnemonic, {\n        prefix: 'blit'\n    });\n    const client = await blitjs.getSigningBlitClient({\n        rpcEndpoint,\n        signer\n    });\n    const ibcClient = await blitjs.getSigningIbcClient({\n        rpcEndpoint,\n        signer\n    });\n    //@ts-ignore\n    ibcClient.registry.types.forEach((value, key) => {\n        // add the ibc types to the blit client if they don't exist\n        if (!client.registry.lookupType(key)) {\n            client.registry.register(key, value);\n        }\n    });\n    //@ts-ignore\n    client.gasPrice = '0ublit';\n    return client;\n};\nconst queryFunction = async ({ attachedMessages = [], queryClient, scriptAddress, callerAddress, functionName, kwargs, extraCode, grantee }) => {\n    const response = await queryClient.blit.script.eval({\n        attachedMessages: JSON.stringify(attachedMessages),\n        scriptAddress,\n        callerAddress,\n        functionName,\n        kwargs: JSON.stringify(kwargs),\n        extraCode,\n        grantee\n    });\n    try {\n        return JSON.parse(response.response);\n    }\n    catch (SyntaxError) {\n        return response;\n    }\n};\nexports.experimentalHelpers = {\n    makeKeplrClient,\n    makeJsClient,\n    runFunction,\n    queryFunction,\n    makeChainInfo,\n    fetchPublicEndpoints,\n};\nexports.default = blitjs;\n"]}