@swapkit/toolboxes 4.24.1 → 4.26.0
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.
- package/CHANGELOG.md +17 -0
- package/dist/src/aleo/index.cjs +1 -0
- package/dist/src/aleo/index.js +1 -0
- package/dist/src/cosmos/index.cjs +1 -1
- package/dist/src/cosmos/index.js +1 -1
- package/dist/src/index.cjs +1 -1
- package/dist/src/index.js +1 -1
- package/dist/src/near/index.cjs +1 -1
- package/dist/src/near/index.js +1 -1
- package/dist/src/ripple/index.cjs +1 -1
- package/dist/src/ripple/index.js +1 -1
- package/dist/src/stellar/index.cjs +1 -1
- package/dist/src/stellar/index.js +1 -1
- package/dist/types/aleo/helpers.d.ts +62 -0
- package/dist/types/aleo/index.d.ts +3 -0
- package/dist/types/aleo/toolbox.d.ts +40 -0
- package/dist/types/aleo/types.d.ts +32 -0
- package/dist/types/index.d.ts +4 -0
- package/dist/types/stellar/toolbox.d.ts +4 -0
- package/dist/types/types.d.ts +2 -0
- package/dist/types/utxo/hdWallet.d.ts +1 -1
- package/package.json +9 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,22 @@
|
|
|
1
1
|
# @swapkit/toolboxes
|
|
2
2
|
|
|
3
|
+
## 4.26.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- [#331](https://github.com/swapkit/sdk/pull/331) [`f740a74`](https://github.com/swapkit/sdk/commit/f740a742a0cf879b4e56bb73647d21642bc22e9d) Thanks [@towanTG](https://github.com/towanTG)! - Add client-side support for the Stellar trustline approval flow: swap response types model the `approvalTx` union (EVM | Stellar changeTrust XDR) and `nextActions`, `approveAssetValue`/`isAssetValueApproved` switch between EVM allowances and Stellar trustlines (checking via the new Stellar toolbox `hasTrustline({ address, assetValue })`, approving by signing the API-provided changeTrust XDR with the destination wallet). The swap method itself is unchanged — integrators approve first, re-fetch the route, then swap.
|
|
8
|
+
- Update generated token lists. (via @swapkit/helpers@4.19.0)
|
|
9
|
+
- [#329](https://github.com/swapkit/sdk/pull/329) [`55d9edc`](https://github.com/swapkit/sdk/commit/55d9edcc603e0139588c905e41a59eaaa3275cda) Thanks [@towanTG](https://github.com/towanTG)! - Update NEAR provider token list: add Stellar assets (XLM.XLM, XLM.USDC) and latest NEAR-intents listings (SWEAT, GMX, KAITO, AAVE, LINK, UNI, and more); remove BTC.BTC(OMNI) (via @swapkit/helpers@4.19.0)
|
|
10
|
+
|
|
11
|
+
## 4.25.0
|
|
12
|
+
|
|
13
|
+
### Minor Changes
|
|
14
|
+
|
|
15
|
+
- [#319](https://github.com/swapkit/sdk/pull/319) [`67445d1`](https://github.com/swapkit/sdk/commit/67445d13c963492bbe4283f098b959de010ed0a7) Thanks [@towanTG](https://github.com/towanTG)! - Add Aleo chain metadata, assets, public-balance support, HD derivation, public transfers, fee estimates, broadcasting, transaction status, and keystore/server registration.
|
|
16
|
+
- [#328](https://github.com/swapkit/sdk/pull/328) [`0794dd0`](https://github.com/swapkit/sdk/commit/0794dd0d92a4ab1808c42069d483b91e5ae35f4a) Thanks [@towanTG](https://github.com/towanTG)! - Aleo review follow-up: surface `splitTransactionId` in unshield failure errors so an interrupted unshield is resumable, treat a 404 on the serial-number lookup as the authoritative unspent answer across RPC failover, filter record extraction to `credits.aleo` in `getRecords`, reject toolbox params carrying both a phrase and an external signer (`toolbox_aleo_conflicting_signers`), validate `feeRecordCredits`, and throw a clear `toolbox_aleo_no_rpc_urls` error when no RPC URL is configured.
|
|
17
|
+
- [#325](https://github.com/swapkit/sdk/pull/325) [`88aa0cc`](https://github.com/swapkit/sdk/commit/88aa0cc308af1010e5632a7fd9136e43ddbed6a4) Thanks [@paz-ts](https://github.com/paz-ts)! - toSignificant no longer corrupts values with long decimal parts: leading zeros are stripped as a string instead of through Number.parseInt, whose float round-trip rendered full-precision balances on 24-decimal chains like NEAR with two decimal points ("0.0003.2238") and silently lost digits past 2^53 on 18-decimal chains. (via @swapkit/helpers@4.18.0)
|
|
18
|
+
- Update generated token lists. (via @swapkit/helpers@4.18.0)
|
|
19
|
+
|
|
3
20
|
## 4.24.1
|
|
4
21
|
|
|
5
22
|
### Patch Changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var CJ=Object.create;var{getPrototypeOf:vJ,defineProperty:F,getOwnPropertyNames:zJ,getOwnPropertyDescriptor:TJ}=Object,HJ=Object.prototype.hasOwnProperty;function WJ(J){return this[J]}var SJ,hJ,cJ=(J,Q,Z)=>{var H=J!=null&&typeof J==="object";if(H){var z=Q?SJ??=new WeakMap:hJ??=new WeakMap,L=z.get(J);if(L)return L}Z=J!=null?CJ(vJ(J)):{};let U=Q||!J||!J.__esModule?F(Z,"default",{value:J,enumerable:!0}):Z;for(let D of zJ(J))if(!HJ.call(U,D))F(U,D,{get:WJ.bind(J,D),enumerable:!0});if(H)z.set(J,U);return U},IJ=(J)=>{var Q=(YJ??=new WeakMap).get(J),Z;if(Q)return Q;if(Q=F({},"__esModule",{value:!0}),J&&typeof J==="object"||typeof J==="function"){for(var H of zJ(J))if(!HJ.call(Q,H))F(Q,H,{get:WJ.bind(J,H),enumerable:!(Z=TJ(J,H))||Z.enumerable})}return YJ.set(J,Q),Q},YJ;var mJ=(J)=>J;function RJ(J,Q){this[J]=mJ.bind(null,Q)}var AJ=(J,Q)=>{for(var Z in Q)F(J,Z,{get:Q[Z],enumerable:!0,configurable:!0,set:RJ.bind(Q,Z)})};var S=(J,Q)=>()=>(J&&(Q=J(J=0)),Q);function i(J,Q){if(!M(J))return[];let Z=M(J.transaction)?J.transaction:J,H=Z.execution,z=M(Z.fee)?Z.fee.transition:void 0;return[...M(H)&&Array.isArray(H.transitions)?H.transitions:[],...M(z)?[z]:[]].flatMap((U)=>{if(!M(U)||!Array.isArray(U.outputs))return[];if(Q&&U.program!==Q)return[];return U.outputs.flatMap((D)=>M(D)&&D.type==="record"&&typeof D.value==="string"?[D.value]:[])})}function n(J){return J.reduce((Q,Z)=>Z.spent?Q:Q+Z.microcredits,0n)}function b(J,Q){return Q instanceof j.SwapKitError&&Q.errorKey.startsWith("toolbox_aleo_")?Q:new j.SwapKitError(J,Q)}function EJ(...J){let Q=J.reduce((z,L)=>z+L.length,0),Z=new Uint8Array(Q),H=0;for(let z of J)Z.set(z,H),H+=z.length;return Z}function gJ(J){let Q=new Uint8Array(4);return new DataView(Q.buffer).setUint32(0,J,!1),Q}function GJ(J){let Q=p.hmac(l.sha512,jJ,J);return{chainCode:Q.slice(32),key:Q.slice(0,32)}}function LJ(J,Q){if(!Number.isSafeInteger(Q)||Q<0||Q>=u)throw new j.SwapKitError("toolbox_aleo_wasm_init_failed",{index:Q});let Z=Q+u,H=EJ(Uint8Array.of(0),J.key,gJ(Z)),z=p.hmac(l.sha512,J.chainCode,H);return{chainCode:z.slice(32),key:z.slice(0,32)}}function o(J,Q){let Z=J.split("/");if(Z.shift()!=="m"||Z.length===0)throw new j.SwapKitError("toolbox_aleo_wasm_init_failed",{path:J});return Z.reduce((H,z)=>{if(!/^\d+'$/.test(z))throw new j.SwapKitError("toolbox_aleo_wasm_init_failed",{path:J,segment:z});return LJ(H,Number.parseInt(z.slice(0,-1),10))},GJ(Q))}function _(J){return typeof J==="string"&&XJ.test(J)}async function s(J){if(!_(J))return!1;try{let{Account:Q}=await import("@provablehq/sdk/mainnet.js");return Q.isValidAddress(J)}catch{return!1}}function UJ(J){return qJ.test(J)}function t(J,Q){if(J===null)return 0n;if(typeof J!=="string")throw new j.SwapKitError("toolbox_aleo_balance_error",{integerType:Q,value:J});let Z=J.match(new RegExp(`^(\\d+)${Q}$`));if(!Z?.[1])throw new j.SwapKitError("toolbox_aleo_balance_error",{integerType:Q,value:J});return BigInt(Z[1])}function m(J){if(J.chain!==j.Chain.Aleo)throw new j.SwapKitError("toolbox_aleo_unsupported_token",{asset:J.toString()});let Q=J.getBaseValue("bigint");if(J.isGasAsset)return{amount:`${Q}u64`,functionName:h,isTokenTransfer:!1,programName:y};if(!J.address||!UJ(J.address))throw new j.SwapKitError("toolbox_aleo_unsupported_token",{asset:J.toString()});return{amount:`${Q}u128`,functionName:h,isTokenTransfer:!0,programName:J.address}}function P(){let J=[...new Set([...j.SKConfig.get("rpcUrls")[j.Chain.Aleo],...j.getChainConfig(j.Chain.Aleo).rpcUrls])].filter(Boolean);if(J.length===0)throw new j.SwapKitError("toolbox_aleo_no_rpc_urls");return J}function R(J){if(typeof J==="object"&&J!==null&&"status"in J&&J.status===404)return!0;return J instanceof Error&&J.message.includes("404")}function M(J){return typeof J==="object"&&J!==null}function BJ(J){if(!M(J))return!1;return[J.transaction,J.rejected].some((Q)=>{if(!M(Q)||!M(Q.execution))return!1;let{transitions:Z}=Q.execution;return Array.isArray(Z)&&Z.some((H)=>M(H)&&H.function===h&&typeof H.program==="string"&&H.program!==y)})}function DJ(J,Q){if(!M(J)||typeof J.status!=="string")throw new j.SwapKitError("toolbox_aleo_transaction_failed",{response:J,transactionId:Q});let Z=J.status.toLowerCase();if(Z==="rejected"){let H=BJ(J)?"toolbox_aleo_token_transfer_rejected":"toolbox_aleo_transaction_failed";throw new j.SwapKitError(H,{transactionId:Q})}return Z==="accepted"?"accepted":"pending"}async function xJ(J){if(!N.test(J))throw new j.SwapKitError("toolbox_aleo_transaction_failed",{transactionId:J});let Q,Z=!0;for(let H of P())try{let{AleoNetworkClient:z}=await import("@provablehq/sdk/mainnet.js"),L=await new z(H).getConfirmedTransaction(J);return DJ(L,J)}catch(z){if(z instanceof j.SwapKitError)throw z;Q=z,Z=Z&&R(z)}if(Z)return"pending";throw b("toolbox_aleo_transaction_failed",Q)}async function A(J,{intervalMs:Q=5000,timeoutMs:Z=60000}={}){let H=Date.now();while(Date.now()-H<Z){let z=await xJ(J);if(z==="accepted")return z;await new Promise((L)=>setTimeout(L,Q))}throw new j.SwapKitError("toolbox_aleo_transaction_failed",{reason:"confirmation_timeout",transactionId:J})}var p,l,j,XJ,qJ,N,jJ,u=2147483648,I=1e6,y="credits.aleo",h="transfer_public",c=1e6,d=2000000;var a=S(()=>{p=require("@noble/hashes/hmac.js"),l=require("@noble/hashes/sha2.js"),j=require("@swapkit/helpers"),XJ=/^aleo1[ac-hj-np-z02-9]{58}$/,qJ=/^[a-z0-9_]+\.aleo$/,N=/^at1[ac-hj-np-z02-9]+$/,jJ=new TextEncoder().encode("bls12_377 seed")});function nJ(){function J(){let Q=Date.now(),Z=e||Q;return e=Z,Q>e?Q:Z+1}return uJ+J().toString(36)}function MJ(J){return async function(Z,H=!0){let z=await kJ.SwapKitApi.getChainBalance({address:Z,chain:J,scamFilter:H}),{baseDecimal:L}=C.getChainConfig(J),U=z.map(({identifier:O,value:V,decimal:v})=>{return new C.AssetValue({decimal:v||L,identifier:O,value:V})});if(!U.some((O)=>O.isGasAsset))return[C.AssetValue.from({chain:J}),...U];return U}}var C,kJ,uJ,e=0;var fJ=S(()=>{C=require("@swapkit/helpers"),kJ=require("@swapkit/helpers/api"),uJ=typeof process<"u"&&process.pid?process.pid.toString(36):""});async function OJ(J,Q){try{let{Account:Z}=await import("@provablehq/sdk/mainnet.js"),{mnemonicToSeedSync:H}=await import("@scure/bip39"),z=W.derivationPathToString(Q||W.NetworkDerivationPath[W.Chain.Aleo],{allHardened:!0}),{key:L}=o(z,H(J));return new Z({seed:L})}catch(Z){throw b("toolbox_aleo_wasm_init_failed",Z)}}function bJ(J,Q){let Z,H=()=>{return Z??=OJ(J,Q),Z};return{getAddress:async()=>(await H()).address().to_string(),signTransaction:async(z)=>{let L=await H();if(z.sender!==L.address().to_string())throw new W.SwapKitError("toolbox_aleo_invalid_address",{address:z.sender});let U;for(let D of P())try{let{ProgramManager:O}=await import("@provablehq/sdk/mainnet.js"),V=new O(D);return V.setAccount(L),await V.buildExecutionTransaction({functionName:z.functionName,inputs:z.inputs,priorityFee:z.priorityFee/I,privateFee:!1,programName:z.programName})}catch(O){U=O}throw U}}}function yJ(J={}){if("phrase"in J&&J.phrase&&"signer"in J&&J.signer)throw new W.SwapKitError("toolbox_aleo_conflicting_signers");let Q;async function Z(){if(Q)return Q;let Y="phrase"in J?J.phrase:void 0;if(!Y)throw new W.SwapKitError("toolbox_aleo_no_signer");let $="derivationPath"in J?J.derivationPath:void 0;return Q=await OJ(Y,$),Q}let H;function z(){let Y="signer"in J?J.signer:void 0;if(Y)return Y;let $="phrase"in J?J.phrase:void 0;if(!$)throw new W.SwapKitError("toolbox_aleo_no_signer");return H??=bJ($,"derivationPath"in J?J.derivationPath:void 0),H}async function L(Y){let $;for(let X of P())try{let{AleoNetworkClient:q}=await import("@provablehq/sdk/mainnet.js");return await Y(new q(X))}catch(q){$=q}throw $}async function U(Y){let $;for(let X of P())try{let{AleoNetworkClient:q}=await import("@provablehq/sdk/mainnet.js");return await new q(X).getTransitionId(Y),!0}catch(q){if(R(q))return!1;$=q}throw $}async function D(){let Y=z();try{return await Y.getAddress()}catch($){throw b("toolbox_aleo_wasm_init_failed",$)}}async function O(Y){let $=await L((X)=>X.getProgramMappingValue(y,"account",Y));return t($,"u64")}async function V(Y){try{let $=await O(Y);return[W.AssetValue.from({chain:W.Chain.Aleo,fromBaseDecimal:6,value:$})]}catch($){throw b("toolbox_aleo_balance_error",$)}}let v=MJ(W.Chain.Aleo);async function r(Y,$=!0){try{return await v(Y,$)}catch{return V(Y)}}async function VJ(){return r(await D())}async function T({transactionIds:Y}){try{let $=await Z(),X=[];for(let q of Y){if(!N.test(q))throw new W.SwapKitError("toolbox_aleo_transaction_failed",{transactionId:q});let x=await L((G)=>G.getTransaction(q));for(let G of i(x,y)){if(!$.ownsRecordCiphertext(G))continue;let{RecordPlaintext:k}=await import("@provablehq/sdk/mainnet.js"),B=$.decryptRecord(G).toString(),f=k.fromString(B),w=f.microcredits();if(w===0n)continue;let K=$.generateRecordViewKey(G).toString(),g=f.serialNumberString($.privateKey(),y,"credits",K);X.push({microcredits:w,plaintext:B,spent:await U(g),transactionId:q})}}return X}catch($){throw b("toolbox_aleo_balance_error",$)}}async function KJ({transactionIds:Y}){let $=await T({transactionIds:Y});return W.AssetValue.from({chain:W.Chain.Aleo,fromBaseDecimal:6,value:n($)})}async function wJ(Y,$){if(!Number.isSafeInteger($)||$<=0)throw new W.SwapKitError("toolbox_aleo_insufficient_fee_balance",{feeRecordCredits:$});let X=await Z();if(!Y||Y.microcredits<=BigInt($)*BigInt(I))throw new W.SwapKitError("toolbox_aleo_insufficient_fee_balance",{available:Y?.microcredits.toString(),required:`${$} credits fee record`});let{ProgramManager:q,RecordPlaintext:x}=await import("@provablehq/sdk/mainnet.js"),G;for(let k of P())try{let B=new q(k);return B.setAccount(X),await B.split($,x.fromString(Y.plaintext))}catch(B){G=B}throw G}async function FJ(Y,$,X){let q=await Z(),{ProgramManager:x,RecordPlaintext:G}=await import("@provablehq/sdk/mainnet.js"),k;for(let B of P())try{let f=new x(B);return f.setAccount(q),await f.buildExecutionTransaction({feeRecord:G.fromString($.plaintext),functionName:"transfer_private_to_public",inputs:[Y.plaintext,X,`${Y.microcredits}u64`],priorityFee:0,privateFee:!0,programName:y})}catch(f){k=f}throw k}async function NJ({transactionId:Y,feeRecordCredits:$=4}){let X;try{let x=(await Z()).address().to_string(),G=(await T({transactionIds:[Y]})).filter((K)=>!K.spent);if(G.length===0)throw new W.SwapKitError("toolbox_aleo_no_unspent_records",{transactionId:Y});if(G.length===1){if(X=await wJ(G[0],$),await A(X),G=(await T({transactionIds:[X]})).filter((K)=>!K.spent),G.length<2)throw new W.SwapKitError("toolbox_aleo_transaction_failed",{transactionId:X})}let k=[...G].sort((K,g)=>K.microcredits<g.microcredits?-1:1),B=k[0],f=k[k.length-1];if(!B||!f||B===f)throw new W.SwapKitError("toolbox_aleo_no_unspent_records",{transactionId:Y});let w=await E(await FJ(f,B,x));return await A(w),{publicBalance:W.AssetValue.from({chain:W.Chain.Aleo,fromBaseDecimal:6,value:await O(x)}),splitTransactionId:X,unshieldTransactionId:w}}catch(q){if(X)throw new W.SwapKitError("toolbox_aleo_transaction_failed",{error:q,splitTransactionId:X});throw b("toolbox_aleo_transaction_failed",q)}}function JJ({assetValue:Y,priorityFee:$=0}){try{if(!Number.isSafeInteger($)||$<0)throw new W.SwapKitError("toolbox_aleo_fee_estimation_failed",{priorityFee:$});let q=m(Y).isTokenTransfer?d:c;return W.AssetValue.from({chain:W.Chain.Aleo,fromBaseDecimal:6,value:BigInt(q)+BigInt($)})}catch(X){throw b("toolbox_aleo_fee_estimation_failed",X)}}async function QJ({assetValue:Y,priorityFee:$=0,recipient:X,sender:q}){if(!await s(X))throw new W.SwapKitError("toolbox_aleo_invalid_address",{address:X});let x=q||await D();if(!_(x))throw new W.SwapKitError("toolbox_aleo_invalid_address",{address:x});let G=m(Y),k=await JJ({assetValue:Y,priorityFee:$,recipient:X});try{let B=await O(x);if(W.AssetValue.from({chain:W.Chain.Aleo,fromBaseDecimal:6,value:B}).lt(k))throw new W.SwapKitError("toolbox_aleo_insufficient_fee_balance",{available:B.toString(),required:k.getBaseValue("string")});return{functionName:G.functionName,inputs:[X,G.amount],priorityFee:$,programName:G.programName,sender:x}}catch(B){throw b("toolbox_aleo_transaction_failed",B)}}async function ZJ(Y){try{return await z().signTransaction(Y)}catch($){throw b("toolbox_aleo_transaction_failed",$)}}async function $J(Y){return E(await ZJ(Y))}async function E(Y){try{let $=typeof Y==="string"?Y:Y.toString(),X=await L((q)=>q.submitTransaction($));if(!N.test(X))throw new W.SwapKitError("toolbox_aleo_broadcast_error",{transactionId:X});return X}catch($){throw b("toolbox_aleo_broadcast_error",$)}}async function _J(Y){let $=await QJ({...Y,sender:await D()});return $J($)}return{broadcastTransaction:E,createSigner:bJ,createTransaction:QJ,estimateTransactionFee:JJ,getAddress:D,getBalance:v,getBalanceFromRpc:V,getBalances:VJ,getBalanceWithFallback:r,getRecords:T,getShieldedBalance:KJ,signAndBroadcastTransaction:$J,signTransaction:ZJ,transfer:_J,unshield:NJ,validateAddress:_}}var W;var PJ=S(()=>{fJ();a();W=require("@swapkit/helpers")});var pJ={};AJ(pJ,{waitForAleoTransaction:()=>A,validateAleoProgramId:()=>UJ,validateAleoAddressWithChecksum:()=>s,validateAleoAddress:()=>_,sumUnspentRecords:()=>n,parseAleoTransactionStatus:()=>DJ,parseAleoMappingValue:()=>t,isRecord:()=>M,isNotFoundError:()=>R,isAleoTokenTransferResponse:()=>BJ,getConfiguredAleoUrls:()=>P,getAleoTransferRoute:()=>m,getAleoTransactionStatus:()=>xJ,getAleoToolbox:()=>yJ,getAleoMasterSeed:()=>GJ,getAleoError:()=>b,extractAleoRecordCiphertexts:()=>i,deriveAleoPath:()=>o,deriveAleoChildKey:()=>LJ,TRANSFER_PUBLIC_FUNCTION:()=>h,NATIVE_PROGRAM_ID:()=>y,MICRO_CREDITS_PER_CREDIT:()=>I,HARDENED_OFFSET:()=>u,ALEO_TRANSFER_PUBLIC_FEE:()=>c,ALEO_TRANSACTION_ID_REGEX:()=>N,ALEO_TOKEN_TRANSFER_PUBLIC_FEE:()=>d,ALEO_PROGRAM_ID_REGEX:()=>qJ,ALEO_HD_KEY:()=>jJ,ALEO_ADDRESS_REGEX:()=>XJ});module.exports=IJ(pJ);var lJ=S(()=>{PJ();a()});lJ();
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{fa as YJ}from"../../chunk-nvfkjbyq.js";import{ga as b}from"../../chunk-xbdjxeqd.js";import{hmac as o}from"@noble/hashes/hmac.js";import{sha512 as s}from"@noble/hashes/sha2.js";import{Chain as I,getChainConfig as LJ,SKConfig as UJ,SwapKitError as U}from"@swapkit/helpers";var BJ=/^aleo1[ac-hj-np-z02-9]{58}$/,DJ=/^[a-z0-9_]+\.aleo$/,C=/^at1[ac-hj-np-z02-9]+$/,kJ=new TextEncoder().encode("bls12_377 seed"),n=2147483648,m=1e6,f="credits.aleo",R="transfer_public",t=1e6,a=2000000;function e(J,Z){if(!M(J))return[];let Y=M(J.transaction)?J.transaction:J,W=Y.execution,z=M(Y.fee)?Y.fee.transition:void 0;return[...M(W)&&Array.isArray(W.transitions)?W.transitions:[],...M(z)?[z]:[]].flatMap((P)=>{if(!M(P)||!Array.isArray(P.outputs))return[];if(Z&&P.program!==Z)return[];return P.outputs.flatMap((x)=>M(x)&&x.type==="record"&&typeof x.value==="string"?[x.value]:[])})}function r(J){return J.reduce((Z,Y)=>Y.spent?Z:Z+Y.microcredits,0n)}function O(J,Z){return Z instanceof U&&Z.errorKey.startsWith("toolbox_aleo_")?Z:new U(J,Z)}function MJ(...J){let Z=J.reduce((z,L)=>z+L.length,0),Y=new Uint8Array(Z),W=0;for(let z of J)Y.set(z,W),W+=z.length;return Y}function xJ(J){let Z=new Uint8Array(4);return new DataView(Z.buffer).setUint32(0,J,!1),Z}function OJ(J){let Z=o(s,kJ,J);return{chainCode:Z.slice(32),key:Z.slice(0,32)}}function bJ(J,Z){if(!Number.isSafeInteger(Z)||Z<0||Z>=n)throw new U("toolbox_aleo_wasm_init_failed",{index:Z});let Y=Z+n,W=MJ(Uint8Array.of(0),J.key,xJ(Y)),z=o(s,J.chainCode,W);return{chainCode:z.slice(32),key:z.slice(0,32)}}function JJ(J,Z){let Y=J.split("/");if(Y.shift()!=="m"||Y.length===0)throw new U("toolbox_aleo_wasm_init_failed",{path:J});return Y.reduce((W,z)=>{if(!/^\d+'$/.test(z))throw new U("toolbox_aleo_wasm_init_failed",{path:J,segment:z});return bJ(W,Number.parseInt(z.slice(0,-1),10))},OJ(Z))}function T(J){return typeof J==="string"&&BJ.test(J)}async function QJ(J){if(!T(J))return!1;try{let{Account:Z}=await import("@provablehq/sdk/mainnet.js");return Z.isValidAddress(J)}catch{return!1}}function PJ(J){return DJ.test(J)}function ZJ(J,Z){if(J===null)return 0n;if(typeof J!=="string")throw new U("toolbox_aleo_balance_error",{integerType:Z,value:J});let Y=J.match(new RegExp(`^(\\d+)${Z}$`));if(!Y?.[1])throw new U("toolbox_aleo_balance_error",{integerType:Z,value:J});return BigInt(Y[1])}function A(J){if(J.chain!==I.Aleo)throw new U("toolbox_aleo_unsupported_token",{asset:J.toString()});let Z=J.getBaseValue("bigint");if(J.isGasAsset)return{amount:`${Z}u64`,functionName:R,isTokenTransfer:!1,programName:f};if(!J.address||!PJ(J.address))throw new U("toolbox_aleo_unsupported_token",{asset:J.toString()});return{amount:`${Z}u128`,functionName:R,isTokenTransfer:!0,programName:J.address}}function K(){let J=[...new Set([...UJ.get("rpcUrls")[I.Aleo],...LJ(I.Aleo).rpcUrls])].filter(Boolean);if(J.length===0)throw new U("toolbox_aleo_no_rpc_urls");return J}function E(J){if(typeof J==="object"&&J!==null&&"status"in J&&J.status===404)return!0;return J instanceof Error&&J.message.includes("404")}function M(J){return typeof J==="object"&&J!==null}function yJ(J){if(!M(J))return!1;return[J.transaction,J.rejected].some((Z)=>{if(!M(Z)||!M(Z.execution))return!1;let{transitions:Y}=Z.execution;return Array.isArray(Y)&&Y.some((W)=>M(W)&&W.function===R&&typeof W.program==="string"&&W.program!==f)})}function VJ(J,Z){if(!M(J)||typeof J.status!=="string")throw new U("toolbox_aleo_transaction_failed",{response:J,transactionId:Z});let Y=J.status.toLowerCase();if(Y==="rejected"){let W=yJ(J)?"toolbox_aleo_token_transfer_rejected":"toolbox_aleo_transaction_failed";throw new U(W,{transactionId:Z})}return Y==="accepted"?"accepted":"pending"}async function fJ(J){if(!C.test(J))throw new U("toolbox_aleo_transaction_failed",{transactionId:J});let Z,Y=!0;for(let W of K())try{let{AleoNetworkClient:z}=await import("@provablehq/sdk/mainnet.js"),L=await new z(W).getConfirmedTransaction(J);return VJ(L,J)}catch(z){if(z instanceof U)throw z;Z=z,Y=Y&&E(z)}if(Y)return"pending";throw O("toolbox_aleo_transaction_failed",Z)}async function g(J,{intervalMs:Z=5000,timeoutMs:Y=60000}={}){let W=Date.now();while(Date.now()-W<Y){let z=await fJ(J);if(z==="accepted")return z;await new Promise((L)=>setTimeout(L,Z))}throw new U("toolbox_aleo_transaction_failed",{reason:"confirmation_timeout",transactionId:J})}import{AssetValue as _,Chain as F,derivationPathToString as KJ,NetworkDerivationPath as FJ,SwapKitError as G}from"@swapkit/helpers";async function zJ(J,Z){try{let{Account:Y}=await import("@provablehq/sdk/mainnet.js"),{mnemonicToSeedSync:W}=await import("@scure/bip39"),z=KJ(Z||FJ[F.Aleo],{allHardened:!0}),{key:L}=JJ(z,W(J));return new Y({seed:L})}catch(Y){throw O("toolbox_aleo_wasm_init_failed",Y)}}function $J(J,Z){let Y,W=()=>{return Y??=zJ(J,Z),Y};return{getAddress:async()=>(await W()).address().to_string(),signTransaction:async(z)=>{let L=await W();if(z.sender!==L.address().to_string())throw new G("toolbox_aleo_invalid_address",{address:z.sender});let P;for(let x of K())try{let{ProgramManager:y}=await import("@provablehq/sdk/mainnet.js"),w=new y(x);return w.setAccount(L),await w.buildExecutionTransaction({functionName:z.functionName,inputs:z.inputs,priorityFee:z.priorityFee/m,privateFee:!1,programName:z.programName})}catch(y){P=y}throw P}}}function wJ(J={}){if("phrase"in J&&J.phrase&&"signer"in J&&J.signer)throw new G("toolbox_aleo_conflicting_signers");let Z;async function Y(){if(Z)return Z;let $="phrase"in J?J.phrase:void 0;if(!$)throw new G("toolbox_aleo_no_signer");let Q="derivationPath"in J?J.derivationPath:void 0;return Z=await zJ($,Q),Z}let W;function z(){let $="signer"in J?J.signer:void 0;if($)return $;let Q="phrase"in J?J.phrase:void 0;if(!Q)throw new G("toolbox_aleo_no_signer");return W??=$J(Q,"derivationPath"in J?J.derivationPath:void 0),W}async function L($){let Q;for(let H of K())try{let{AleoNetworkClient:X}=await import("@provablehq/sdk/mainnet.js");return await $(new X(H))}catch(X){Q=X}throw Q}async function P($){let Q;for(let H of K())try{let{AleoNetworkClient:X}=await import("@provablehq/sdk/mainnet.js");return await new X(H).getTransitionId($),!0}catch(X){if(E(X))return!1;Q=X}throw Q}async function x(){let $=z();try{return await $.getAddress()}catch(Q){throw O("toolbox_aleo_wasm_init_failed",Q)}}async function y($){let Q=await L((H)=>H.getProgramMappingValue(f,"account",$));return ZJ(Q,"u64")}async function w($){try{let Q=await y($);return[_.from({chain:F.Aleo,fromBaseDecimal:6,value:Q})]}catch(Q){throw O("toolbox_aleo_balance_error",Q)}}let u=YJ(F.Aleo);async function p($,Q=!0){try{return await u($,Q)}catch{return w($)}}async function HJ(){return p(await x())}async function v({transactionIds:$}){try{let Q=await Y(),H=[];for(let X of $){if(!C.test(X))throw new G("toolbox_aleo_transaction_failed",{transactionId:X});let B=await L((q)=>q.getTransaction(X));for(let q of e(B,f)){if(!Q.ownsRecordCiphertext(q))continue;let{RecordPlaintext:D}=await import("@provablehq/sdk/mainnet.js"),j=Q.decryptRecord(q).toString(),k=D.fromString(j),N=k.microcredits();if(N===0n)continue;let V=Q.generateRecordViewKey(q).toString(),h=k.serialNumberString(Q.privateKey(),f,"credits",V);H.push({microcredits:N,plaintext:j,spent:await P(h),transactionId:X})}}return H}catch(Q){throw O("toolbox_aleo_balance_error",Q)}}async function WJ({transactionIds:$}){let Q=await v({transactionIds:$});return _.from({chain:F.Aleo,fromBaseDecimal:6,value:r(Q)})}async function XJ($,Q){if(!Number.isSafeInteger(Q)||Q<=0)throw new G("toolbox_aleo_insufficient_fee_balance",{feeRecordCredits:Q});let H=await Y();if(!$||$.microcredits<=BigInt(Q)*BigInt(m))throw new G("toolbox_aleo_insufficient_fee_balance",{available:$?.microcredits.toString(),required:`${Q} credits fee record`});let{ProgramManager:X,RecordPlaintext:B}=await import("@provablehq/sdk/mainnet.js"),q;for(let D of K())try{let j=new X(D);return j.setAccount(H),await j.split(Q,B.fromString($.plaintext))}catch(j){q=j}throw q}async function qJ($,Q,H){let X=await Y(),{ProgramManager:B,RecordPlaintext:q}=await import("@provablehq/sdk/mainnet.js"),D;for(let j of K())try{let k=new B(j);return k.setAccount(X),await k.buildExecutionTransaction({feeRecord:q.fromString(Q.plaintext),functionName:"transfer_private_to_public",inputs:[$.plaintext,H,`${$.microcredits}u64`],priorityFee:0,privateFee:!0,programName:f})}catch(k){D=k}throw D}async function jJ({transactionId:$,feeRecordCredits:Q=4}){let H;try{let B=(await Y()).address().to_string(),q=(await v({transactionIds:[$]})).filter((V)=>!V.spent);if(q.length===0)throw new G("toolbox_aleo_no_unspent_records",{transactionId:$});if(q.length===1){if(H=await XJ(q[0],Q),await g(H),q=(await v({transactionIds:[H]})).filter((V)=>!V.spent),q.length<2)throw new G("toolbox_aleo_transaction_failed",{transactionId:H})}let D=[...q].sort((V,h)=>V.microcredits<h.microcredits?-1:1),j=D[0],k=D[D.length-1];if(!j||!k||j===k)throw new G("toolbox_aleo_no_unspent_records",{transactionId:$});let N=await S(await qJ(k,j,B));return await g(N),{publicBalance:_.from({chain:F.Aleo,fromBaseDecimal:6,value:await y(B)}),splitTransactionId:H,unshieldTransactionId:N}}catch(X){if(H)throw new G("toolbox_aleo_transaction_failed",{error:X,splitTransactionId:H});throw O("toolbox_aleo_transaction_failed",X)}}function l({assetValue:$,priorityFee:Q=0}){try{if(!Number.isSafeInteger(Q)||Q<0)throw new G("toolbox_aleo_fee_estimation_failed",{priorityFee:Q});let X=A($).isTokenTransfer?a:t;return _.from({chain:F.Aleo,fromBaseDecimal:6,value:BigInt(X)+BigInt(Q)})}catch(H){throw O("toolbox_aleo_fee_estimation_failed",H)}}async function c({assetValue:$,priorityFee:Q=0,recipient:H,sender:X}){if(!await QJ(H))throw new G("toolbox_aleo_invalid_address",{address:H});let B=X||await x();if(!T(B))throw new G("toolbox_aleo_invalid_address",{address:B});let q=A($),D=await l({assetValue:$,priorityFee:Q,recipient:H});try{let j=await y(B);if(_.from({chain:F.Aleo,fromBaseDecimal:6,value:j}).lt(D))throw new G("toolbox_aleo_insufficient_fee_balance",{available:j.toString(),required:D.getBaseValue("string")});return{functionName:q.functionName,inputs:[H,q.amount],priorityFee:Q,programName:q.programName,sender:B}}catch(j){throw O("toolbox_aleo_transaction_failed",j)}}async function d($){try{return await z().signTransaction($)}catch(Q){throw O("toolbox_aleo_transaction_failed",Q)}}async function i($){return S(await d($))}async function S($){try{let Q=typeof $==="string"?$:$.toString(),H=await L((X)=>X.submitTransaction(Q));if(!C.test(H))throw new G("toolbox_aleo_broadcast_error",{transactionId:H});return H}catch(Q){throw O("toolbox_aleo_broadcast_error",Q)}}async function GJ($){let Q=await c({...$,sender:await x()});return i(Q)}return{broadcastTransaction:S,createSigner:$J,createTransaction:c,estimateTransactionFee:l,getAddress:x,getBalance:u,getBalanceFromRpc:w,getBalances:HJ,getBalanceWithFallback:p,getRecords:v,getShieldedBalance:WJ,signAndBroadcastTransaction:i,signTransaction:d,transfer:GJ,unshield:jJ,validateAddress:T}}export{g as waitForAleoTransaction,PJ as validateAleoProgramId,QJ as validateAleoAddressWithChecksum,T as validateAleoAddress,r as sumUnspentRecords,VJ as parseAleoTransactionStatus,ZJ as parseAleoMappingValue,M as isRecord,E as isNotFoundError,yJ as isAleoTokenTransferResponse,K as getConfiguredAleoUrls,A as getAleoTransferRoute,fJ as getAleoTransactionStatus,wJ as getAleoToolbox,OJ as getAleoMasterSeed,O as getAleoError,e as extractAleoRecordCiphertexts,JJ as deriveAleoPath,bJ as deriveAleoChildKey,R as TRANSFER_PUBLIC_FUNCTION,f as NATIVE_PROGRAM_ID,m as MICRO_CREDITS_PER_CREDIT,n as HARDENED_OFFSET,t as ALEO_TRANSFER_PUBLIC_FEE,C as ALEO_TRANSACTION_ID_REGEX,a as ALEO_TOKEN_TRANSFER_PUBLIC_FEE,DJ as ALEO_PROGRAM_ID_REGEX,kJ as ALEO_HD_KEY,BJ as ALEO_ADDRESS_REGEX};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var H0=Object.create;var{getPrototypeOf:B0,defineProperty:t,getOwnPropertyNames:Pf,getOwnPropertyDescriptor:_0}=Object,Mf=Object.prototype.hasOwnProperty;function Vf(v){return this[v]}var v0,L0,y0=(v,H,_)=>{var f=v!=null&&typeof v==="object";if(f){var x=H?v0??=new WeakMap:L0??=new WeakMap,T=x.get(v);if(T)return T}_=v!=null?H0(B0(v)):{};let B=H||!v||!v.__esModule?t(_,"default",{value:v,enumerable:!0}):_;for(let L of Pf(v))if(!Mf.call(B,L))t(B,L,{get:Vf.bind(v,L),enumerable:!0});if(f)x.set(v,B);return B},W0=(v)=>{var H=(Df??=new WeakMap).get(v),_;if(H)return H;if(H=t({},"__esModule",{value:!0}),v&&typeof v==="object"||typeof v==="function"){for(var f of Pf(v))if(!Mf.call(H,f))t(H,f,{get:Vf.bind(v,f),enumerable:!(_=_0(v,f))||_.enumerable})}return Df.set(v,H),H},Df;var z0=(v)=>v;function G0(v,H){this[v]=z0.bind(null,H)}var uf=(v,H)=>{for(var _ in H)t(v,_,{get:H[_],enumerable:!0,configurable:!0,set:G0.bind(H,_)})};var A=(v,H)=>()=>(v&&(H=v(v=0)),H);function g(v){return P.base64.encode(Uint8Array.from(P.bech32.fromWords(P.bech32.decode(v).words)))}function r(v,H="thor"){return P.bech32.encode(H,P.bech32.toWords(P.base64.decode(v)))}function Z0(v){return P.base64.encode(v)}function I0(v){if(!v.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new wf.SwapKitError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return P.base64.decode(v)}var P,wf;var Zf=A(()=>{P=require("@scure/base"),wf=require("@swapkit/helpers")});function D(v){switch(v){case W.Chain.Maya:return{amount:[],gas:"10000000000"};case W.Chain.THORChain:return{amount:[],gas:"500000000"};case W.Chain.Kujira:return $f;case W.Chain.Noble:return nf;default:return lf}}async function a(v){let{isStagenet:H}=W.SKConfig.get("envs"),_=W.SKConfig.get("thornodeUrls"),f=v===W.Chain.Maya,T=`${f?H?_.MAYA_STAGENET:_.MAYA:H?_.THOR_STAGENET:_.THOR}/${f?"mayachain":"thorchain"}/constants`,B=W.getChainConfig(v).baseDecimal;try{let{int_64_values:{NativeTransactionFee:L}}=await W.RequestClient.get(T);if(!Number.isInteger(L)||L<=0)throw new W.SwapKitError("toolbox_cosmos_invalid_fee",{nativeFee:L.toString()});return W.SwapKitNumber.fromBigInt(BigInt(L),B)}catch{let L=f?10000000000n:2000000n;return W.SwapKitNumber.fromBigInt(L,B)}}async function M(v){let H=await import("@cosmjs/stargate"),_=H.StargateClient??H.default?.StargateClient,f=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return _.connect({headers:f,url:v})}async function j(v,H,_={}){let f=await import("@cosmjs/stargate"),x=f.SigningStargateClient??f.default?.SigningStargateClient,T=f.GasPrice??f.default?.GasPrice,B=typeof _==="string"?_:"0.0003uatom",L=typeof _==="string"?{}:_;return x.connectWithSigner(v,H,{gasPrice:T.fromString(B),...L})}async function Qf(v,H){let _=await import("@cosmjs/stargate");return(_.SigningStargateClient??_.default?.SigningStargateClient).offline(v,H)}async function Xf({sender:v,recipient:H,assetValue:_,memo:f="",feeRate:x,sequence:T,accountNumber:B,sweep:L}){let{chain:I,chainId:q}=_,E=await W.getRPCUrl(I),K=await M(E),U=await K.getAccount(v);if(!U)throw new W.SwapKitError("toolbox_cosmos_account_not_found",{sender:v});let X=W.AssetValue.from({chain:I}),Y=w(X.symbol),Q=D(I),J=Y&&x?{amount:[{amount:x.toString(),denom:Y}],gas:Q.gas}:Q,O=w(_.symbol),C={amount:[{amount:(L?i({assetValue:_,balances:await K.getAllBalances(v),denom:O,feeAmount:_f(J.amount,O)}):_).getBaseValue("string"),denom:O}],fromAddress:v,toAddress:H};return{accountNumber:B??Number(U.accountNumber),chainId:q,fee:J,memo:f,msgs:[{typeUrl:Q0(I),value:C}],sequence:T??U.sequence}}function _f(v,H){let _=H.toLowerCase();return v.reduce((f,x)=>x.denom.toLowerCase()===_?f+BigInt(x.amount):f,0n)}function i({assetValue:v,balances:H,denom:_,feeAmount:f=0n}){let x=_.toLowerCase(),T=H.find(({denom:I})=>I.toLowerCase()===x),B=BigInt(T?.amount??"0"),L=B-f;if(L<=0n)throw new W.SwapKitError("toolbox_sweep_amount_too_low",{asset:v.toString(),balance:B.toString(),fee:f.toString()});return v.set(W.SwapKitNumber.fromBigInt(L,v.decimal))}var W,If="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",hf="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",lf,$f,nf,w=(v,H=!1)=>{if(H)return v.toLowerCase();switch(v){case"uUSK":case"USK":return If;case"uYUM":case"YUM":return hf;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":case"NOBLE":return"uusdc";default:return v}},s=({symbol:v,chain:H})=>{if(H===W.Chain.Maya)return(v.toUpperCase()!=="CACAO"?v:`${W.Chain.Maya}.${v}`).toUpperCase();if(H===W.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(v.toUpperCase())?`${W.Chain.THORChain}.${v}`:v).toUpperCase();return w(v,!1)},Q0=(v)=>{switch(v){case W.Chain.Maya:case W.Chain.THORChain:return"/types.MsgSend";case W.Chain.Cosmos:case W.Chain.Kujira:case W.Chain.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new W.SwapKitError("toolbox_cosmos_not_supported",{chain:v})}},X0,Yf=(v,H)=>{let _=X0[v.toLowerCase()];if(!_)return W.AssetValue.from({asset:v,fromBaseDecimal:8,value:H});let{chain:f,asset:x,decimals:T}=_,B=f?{chain:f}:{asset:x};return W.AssetValue.from({...B,fromBaseDecimal:T,value:H})};var e=A(()=>{W=require("@swapkit/helpers"),lf={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},$f={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},nf={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};X0={atom:{chain:W.Chain.Cosmos,decimals:W.getChainConfig(W.Chain.Cosmos).baseDecimal},cacao:{chain:W.Chain.Maya,decimals:10},kuji:{chain:W.Chain.Kujira,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal},maya:{asset:`${W.Chain.Maya}.${W.Chain.Maya}`,decimals:4},rune:{chain:W.Chain.THORChain,decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},uatom:{chain:W.Chain.Cosmos,decimals:W.getChainConfig(W.Chain.Cosmos).baseDecimal},ukuji:{chain:W.Chain.Kujira,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal},usdc:{chain:W.Chain.Noble,decimals:W.getChainConfig(W.Chain.Noble).baseDecimal},uusdc:{chain:W.Chain.Noble,decimals:W.getChainConfig(W.Chain.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},[If.toLowerCase()]:{asset:`${W.Chain.Kujira}.USK`,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal}}});var pf={};uf(pf,{$root:()=>y});var k,Z,R,G,y;var cf=A(()=>{k=y0(require("protobufjs/minimal.js")),Z=k.default.Reader,R=k.default.Writer,G=k.default.util,y=k.default.roots.default||(k.default.roots.default={});y.common=(()=>{let v={};return v.Asset=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.chain="",H.prototype.symbol="",H.prototype.ticker="",H.prototype.synth=!1,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(10).string(f.chain);if(f.symbol!=null&&Object.hasOwnProperty.call(f,"symbol"))x.uint32(18).string(f.symbol);if(f.ticker!=null&&Object.hasOwnProperty.call(f,"ticker"))x.uint32(26).string(f.ticker);if(f.synth!=null&&Object.hasOwnProperty.call(f,"synth"))x.uint32(32).bool(f.synth);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Asset;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.chain=f.string();break;case 2:B.symbol=f.string();break;case 3:B.ticker=f.string();break;case 4:B.synth=f.bool();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.chain!=null&&f.hasOwnProperty("chain")){if(!G.isString(f.chain))return"chain: string expected"}if(f.symbol!=null&&f.hasOwnProperty("symbol")){if(!G.isString(f.symbol))return"symbol: string expected"}if(f.ticker!=null&&f.hasOwnProperty("ticker")){if(!G.isString(f.ticker))return"ticker: string expected"}if(f.synth!=null&&f.hasOwnProperty("synth")){if(typeof f.synth!=="boolean")return"synth: boolean expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Asset)return f;let x=new y.common.Asset;if(f.chain!=null)x.chain=String(f.chain);if(f.symbol!=null)x.symbol=String(f.symbol);if(f.ticker!=null)x.ticker=String(f.ticker);if(f.synth!=null)x.synth=Boolean(f.synth);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.chain="",T.symbol="",T.ticker="",T.synth=!1;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.symbol!=null&&f.hasOwnProperty("symbol"))T.symbol=f.symbol;if(f.ticker!=null&&f.hasOwnProperty("ticker"))T.ticker=f.ticker;if(f.synth!=null&&f.hasOwnProperty("synth"))T.synth=f.synth;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.Coin=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.asset=null,H.prototype.amount="",H.prototype.decimals=G.Long?G.Long.fromBits(0,0,!1):0,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.asset!=null&&Object.hasOwnProperty.call(f,"asset"))y.common.Asset.encode(f.asset,x.uint32(10).fork()).ldelim();if(f.amount!=null&&Object.hasOwnProperty.call(f,"amount"))x.uint32(18).string(f.amount);if(f.decimals!=null&&Object.hasOwnProperty.call(f,"decimals"))x.uint32(24).int64(f.decimals);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Coin;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.asset=y.common.Asset.decode(f,f.uint32());break;case 2:B.amount=f.string();break;case 3:B.decimals=f.int64();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.asset!=null&&f.hasOwnProperty("asset")){let x=y.common.Asset.verify(f.asset);if(x)return"asset."+x}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!G.isString(f.amount))return"amount: string expected"}if(f.decimals!=null&&f.hasOwnProperty("decimals")){if(!G.isInteger(f.decimals)&&!(f.decimals&&G.isInteger(f.decimals.low)&&G.isInteger(f.decimals.high)))return"decimals: integer|Long expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Coin)return f;let x=new y.common.Coin;if(f.asset!=null){if(typeof f.asset!=="object")throw TypeError(".common.Coin.asset: object expected");x.asset=y.common.Asset.fromObject(f.asset)}if(f.amount!=null)x.amount=String(f.amount);if(f.decimals!=null){if(G.Long)(x.decimals=G.Long.fromValue(f.decimals)).unsigned=!1;else if(typeof f.decimals==="string")x.decimals=Number.parseInt(f.decimals,10);else if(typeof f.decimals==="number")x.decimals=f.decimals;else if(typeof f.decimals==="object")x.decimals=new G.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber()}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)if(T.asset=null,T.amount="",G.Long){let B=new G.Long(0,0,!1);T.decimals=x.longs===String?B.toString():x.longs===Number?B.toNumber():B}else T.decimals=x.longs===String?"0":0;if(f.asset!=null&&f.hasOwnProperty("asset"))T.asset=y.common.Asset.toObject(f.asset,x);if(f.amount!=null&&f.hasOwnProperty("amount"))T.amount=f.amount;if(f.decimals!=null&&f.hasOwnProperty("decimals"))if(typeof f.decimals==="number")T.decimals=x.longs===String?String(f.decimals):f.decimals;else T.decimals=x.longs===String?G.Long.prototype.toString.call(f.decimals):x.longs===Number?new G.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber():f.decimals;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.PubKeySet=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.secp256k1="",H.prototype.ed25519="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.secp256k1!=null&&Object.hasOwnProperty.call(f,"secp256k1"))x.uint32(10).string(f.secp256k1);if(f.ed25519!=null&&Object.hasOwnProperty.call(f,"ed25519"))x.uint32(18).string(f.ed25519);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.PubKeySet;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.secp256k1=f.string();break;case 2:B.ed25519=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1")){if(!G.isString(f.secp256k1))return"secp256k1: string expected"}if(f.ed25519!=null&&f.hasOwnProperty("ed25519")){if(!G.isString(f.ed25519))return"ed25519: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.PubKeySet)return f;let x=new y.common.PubKeySet;if(f.secp256k1!=null)x.secp256k1=String(f.secp256k1);if(f.ed25519!=null)x.ed25519=String(f.ed25519);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.secp256k1="",T.ed25519="";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1"))T.secp256k1=f.secp256k1;if(f.ed25519!=null&&f.hasOwnProperty("ed25519"))T.ed25519=f.ed25519;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.Tx=(()=>{function H(_){if(this.coins=[],this.gas=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.id="",H.prototype.chain="",H.prototype.fromAddress="",H.prototype.toAddress="",H.prototype.coins=G.emptyArray,H.prototype.gas=G.emptyArray,H.prototype.memo="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.id!=null&&Object.hasOwnProperty.call(f,"id"))x.uint32(10).string(f.id);if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(18).string(f.chain);if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(26).string(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(34).string(f.toAddress);if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(42).fork()).ldelim();if(f.gas?.length)for(let T=0;T<f.gas.length;++T)y.common.Coin.encode(f.gas[T],x.uint32(50).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(58).string(f.memo);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Tx;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.id=f.string();break;case 2:B.chain=f.string();break;case 3:B.fromAddress=f.string();break;case 4:B.toAddress=f.string();break;case 5:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 6:if(!B.gas?.length)B.gas=[];B.gas.push(y.common.Coin.decode(f,f.uint32()));break;case 7:B.memo=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.id!=null&&f.hasOwnProperty("id")){if(!G.isString(f.id))return"id: string expected"}if(f.chain!=null&&f.hasOwnProperty("chain")){if(!G.isString(f.chain))return"chain: string expected"}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!G.isString(f.fromAddress))return"fromAddress: string expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!G.isString(f.toAddress))return"toAddress: string expected"}if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.gas!=null&&f.hasOwnProperty("gas")){if(!Array.isArray(f.gas))return"gas: array expected";for(let x=0;x<f.gas.length;++x){let T=y.common.Coin.verify(f.gas[x]);if(T)return"gas."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!G.isString(f.memo))return"memo: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Tx)return f;let x=new y.common.Tx;if(f.id!=null)x.id=String(f.id);if(f.chain!=null)x.chain=String(f.chain);if(f.fromAddress!=null)x.fromAddress=String(f.fromAddress);if(f.toAddress!=null)x.toAddress=String(f.toAddress);if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Tx.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Tx.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.gas){if(!Array.isArray(f.gas))throw TypeError(".common.Tx.gas: array expected");x.gas=[];for(let T=0;T<f.gas.length;++T){if(typeof f.gas[T]!=="object")throw TypeError(".common.Tx.gas: object expected");x.gas[T]=y.common.Coin.fromObject(f.gas[T])}}if(f.memo!=null)x.memo=String(f.memo);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[],T.gas=[];if(x.defaults)T.id="",T.chain="",T.fromAddress="",T.toAddress="",T.memo="";if(f.id!=null&&f.hasOwnProperty("id"))T.id=f.id;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=f.toAddress;if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.gas?.length){T.gas=[];for(let B=0;B<f.gas.length;++B)T.gas[B]=y.common.Coin.toObject(f.gas[B],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.Fee=(()=>{function H(_){if(this.coins=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.coins=G.emptyArray,H.prototype.poolDeduct="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.poolDeduct!=null&&Object.hasOwnProperty.call(f,"poolDeduct"))x.uint32(18).string(f.poolDeduct);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Fee;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 2:B.poolDeduct=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct")){if(!G.isString(f.poolDeduct))return"poolDeduct: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Fee)return f;let x=new y.common.Fee;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Fee.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Fee.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.poolDeduct!=null)x.poolDeduct=String(f.poolDeduct);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults)T.poolDeduct="";if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct"))T.poolDeduct=f.poolDeduct;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.ProtoUint=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.value="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.value!=null&&Object.hasOwnProperty.call(f,"value"))x.uint32(10).string(f.value);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.ProtoUint;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.value=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.value!=null&&f.hasOwnProperty("value")){if(!G.isString(f.value))return"value: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.ProtoUint)return f;let x=new y.common.ProtoUint;if(f.value!=null)x.value=String(f.value);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.value="";if(f.value!=null&&f.hasOwnProperty("value"))T.value=f.value;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v})();y.types=(()=>{let v={};return v.MsgDeposit=(()=>{function H(_){if(this.coins=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.coins=G.emptyArray,H.prototype.memo="",H.prototype.signer=G.newBuffer([]),H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(18).string(f.memo);if(f.signer!=null&&Object.hasOwnProperty.call(f,"signer"))x.uint32(26).bytes(f.signer);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.types.MsgDeposit;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 2:B.memo=f.string();break;case 3:B.signer=f.bytes();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!G.isString(f.memo))return"memo: string expected"}if(f.signer!=null&&f.hasOwnProperty("signer")){if(!(f.signer&&typeof f.signer.length==="number"||G.isString(f.signer)))return"signer: buffer expected"}return null},H.fromObject=function(f){if(f instanceof y.types.MsgDeposit)return f;let x=new y.types.MsgDeposit;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".types.MsgDeposit.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.memo!=null)x.memo=String(f.memo);if(f.signer!=null){if(typeof f.signer==="string")G.base64.decode(f.signer,x.signer=G.newBuffer(G.base64.length(f.signer)),0);else if(f.signer.length)x.signer=f.signer}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults){if(T.memo="",x.bytes===String)T.signer="";else if(T.signer=[],x.bytes!==Array)T.signer=G.newBuffer(T.signer)}if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;if(f.signer!=null&&f.hasOwnProperty("signer"))T.signer=x.bytes===String?G.base64.encode(f.signer,0,f.signer.length):x.bytes===Array?Array.prototype.slice.call(f.signer):f.signer;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v.MsgSend=(()=>{function H(_){if(this.amount=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.fromAddress=G.newBuffer([]),H.prototype.toAddress=G.newBuffer([]),H.prototype.amount=G.emptyArray,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(10).bytes(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(18).bytes(f.toAddress);if(f.amount?.length)for(let T=0;T<f.amount.length;++T)y.cosmos.base.v1beta1.Coin.encode(f.amount[T],x.uint32(26).fork()).ldelim();return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.types.MsgSend;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.fromAddress=f.bytes();break;case 2:B.toAddress=f.bytes();break;case 3:if(!B.amount?.length)B.amount=[];B.amount.push(y.cosmos.base.v1beta1.Coin.decode(f,f.uint32()));break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!(f.fromAddress&&typeof f.fromAddress.length==="number"||G.isString(f.fromAddress)))return"fromAddress: buffer expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!(f.toAddress&&typeof f.toAddress.length==="number"||G.isString(f.toAddress)))return"toAddress: buffer expected"}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!Array.isArray(f.amount))return"amount: array expected";for(let x=0;x<f.amount.length;++x){let T=y.cosmos.base.v1beta1.Coin.verify(f.amount[x]);if(T)return"amount."+T}}return null},H.fromObject=function(f){if(f instanceof y.types.MsgSend)return f;let x=new y.types.MsgSend;if(f.fromAddress!=null){if(typeof f.fromAddress==="string")G.base64.decode(f.fromAddress,x.fromAddress=G.newBuffer(G.base64.length(f.fromAddress)),0);else if(f.fromAddress.length)x.fromAddress=f.fromAddress}if(f.toAddress!=null){if(typeof f.toAddress==="string")G.base64.decode(f.toAddress,x.toAddress=G.newBuffer(G.base64.length(f.toAddress)),0);else if(f.toAddress.length)x.toAddress=f.toAddress}if(f.amount){if(!Array.isArray(f.amount))throw TypeError(".types.MsgSend.amount: array expected");x.amount=[];for(let T=0;T<f.amount.length;++T){if(typeof f.amount[T]!=="object")throw TypeError(".types.MsgSend.amount: object expected");x.amount[T]=y.cosmos.base.v1beta1.Coin.fromObject(f.amount[T])}}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.amount=[];if(x.defaults){if(x.bytes===String)T.fromAddress="";else if(T.fromAddress=[],x.bytes!==Array)T.fromAddress=G.newBuffer(T.fromAddress);if(x.bytes===String)T.toAddress="";else if(T.toAddress=[],x.bytes!==Array)T.toAddress=G.newBuffer(T.toAddress)}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=x.bytes===String?G.base64.encode(f.fromAddress,0,f.fromAddress.length):x.bytes===Array?Array.prototype.slice.call(f.fromAddress):f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=x.bytes===String?G.base64.encode(f.toAddress,0,f.toAddress.length):x.bytes===Array?Array.prototype.slice.call(f.toAddress):f.toAddress;if(f.amount?.length){T.amount=[];for(let B=0;B<f.amount.length;++B)T.amount[B]=y.cosmos.base.v1beta1.Coin.toObject(f.amount[B],x)}return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},H})(),v})();y.cosmos=(()=>{let v={};return v.base=(()=>{let H={};return H.v1beta1=(()=>{let _={};return _.Coin=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))B.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))B.uint32(18).string(T.amount);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.Coin;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.denom=T.string();break;case 2:I.amount=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!G.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!G.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.Coin)return T;let B=new y.cosmos.base.v1beta1.Coin;if(T.denom!=null)B.denom=String(T.denom);if(T.amount!=null)B.amount=String(T.amount);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_.DecCoin=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))B.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))B.uint32(18).string(T.amount);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.DecCoin;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.denom=T.string();break;case 2:I.amount=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!G.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!G.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.DecCoin)return T;let B=new y.cosmos.base.v1beta1.DecCoin;if(T.denom!=null)B.denom=String(T.denom);if(T.amount!=null)B.amount=String(T.amount);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_.IntProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.int="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.int!=null&&Object.hasOwnProperty.call(T,"int"))B.uint32(10).string(T.int);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.IntProto;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.int=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.int!=null&&T.hasOwnProperty("int")){if(!G.isString(T.int))return"int: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.IntProto)return T;let B=new y.cosmos.base.v1beta1.IntProto;if(T.int!=null)B.int=String(T.int);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.int="";if(T.int!=null&&T.hasOwnProperty("int"))L.int=T.int;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_.DecProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.dec="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.dec!=null&&Object.hasOwnProperty.call(T,"dec"))B.uint32(10).string(T.dec);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.DecProto;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.dec=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.dec!=null&&T.hasOwnProperty("dec")){if(!G.isString(T.dec))return"dec: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.DecProto)return T;let B=new y.cosmos.base.v1beta1.DecProto;if(T.dec!=null)B.dec=String(T.dec);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.dec="";if(T.dec!=null&&T.hasOwnProperty("dec"))L.dec=T.dec;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,k.default.util.toJSONOptions)},f})(),_})(),H})(),v})()});async function b(){let{$root:v}=await Promise.resolve().then(() => (cf(),pf)),H=await import("@cosmjs/proto-signing"),_=await import("@cosmjs/stargate"),f=H.Registry??H.default?.Registry,x=_.defaultRegistryTypes??_.default?.defaultRegistryTypes;return new f([...x,["/types.MsgSend",v.types.MsgSend],["/types.MsgDeposit",v.types.MsgDeposit]])}async function h(v,H=v===qf.Chain.THORChain?"thor":"maya"){let _=await import("@cosmjs/stargate"),f=_.AminoTypes??_.default?.AminoTypes,x=v===qf.Chain.THORChain?"thorchain":"mayachain";return new f({"/types.MsgDeposit":{aminoType:`${x}/MsgDeposit`,fromAmino:({signer:T,...B})=>({...B,signer:g(T)}),toAmino:({signer:T,...B})=>({...B,signer:r(T,H)})},"/types.MsgSend":{aminoType:`${x}/MsgSend`,fromAmino:({from_address:T,to_address:B,...L})=>({...L,fromAddress:g(T),toAddress:g(B)}),toAmino:({fromAddress:T,toAddress:B,...L})=>({...L,from_address:r(T,H),to_address:r(B,H)})}})}var qf;var Jf=A(()=>{Zf();qf=require("@swapkit/helpers")});async function Ff(v){let{assetValue:H,recipient:_,memo:f,sender:x,asSignable:T,asAminoMessage:B}=v,L=v.sweep?await Lf({assetValue:H,sender:x}):H;if(_)return bf({asAminoMessage:B,asSignable:T,assetValue:L,memo:f,recipient:_,sender:x});return df({asAminoMessage:B,asSignable:T,assetValue:L,memo:f,sender:x})}async function Lf({assetValue:v,sender:H}){let _=v.chain,f=await S.getRPCUrl(_),T=await(await M(f)).getAllBalances(H),B=v.isGasAsset?(await a(_)).getBaseValue("bigint"):0n;return i({assetValue:v,balances:T,denom:w(v.symbol,!0),feeAmount:B})}async function bf({sender:v,recipient:H,assetValue:_,memo:f="",asSignable:x=!0,asAminoMessage:T=!1,sequence:B,accountNumber:L}){let I=_.chain,q=await S.getRPCUrl(I),E=await jf({rpcUrl:q,sender:v}),{chainId:K}=S.getChainConfig(I),U=Of({assetValue:_,recipient:H,sender:v}),X=x?await l(T?U:$(U),I):U;return{accountNumber:L||Number(E.accountNumber),chainId:K,fee:D(I),memo:f,msgs:[X],sequence:B||E.sequence}}async function df({sender:v,assetValue:H,memo:_="",asSignable:f=!0,asAminoMessage:x=!1,sequence:T,accountNumber:B}){let L=H.chain,I=await S.getRPCUrl(L),q=await jf({rpcUrl:I,sender:v}),{chainId:E}=S.getChainConfig(L),K=Nf({assetValue:H,memo:_,sender:v}),U=f?await l(x?K:$(K),L):K;return{accountNumber:B||Number(q.accountNumber),chainId:E,fee:D(L),memo:_,msgs:[U],sequence:T||q.sequence}}function $(v){if(v.type==="thorchain/MsgSend"||v.type==="mayachain/MsgSend")return v;return{...v,value:{...v.value,coins:v.value.coins.map((H)=>{let _=S.AssetValue.from({asset:H.asset}),f=(_.isSynthetic?_.symbol.split("/")?.[1]:_.symbol)?.toUpperCase(),x=(_.isSynthetic?_.symbol.split("/")?.[0]:_.chain)?.toUpperCase();return{...H,asset:{chain:x,symbol:f,synth:_.isSynthetic,ticker:_.ticker}}})}}}async function ff({chain:v,memo:H,msgs:_}){let f=await b(),x=await h(v),T={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:H,messages:_.map((B)=>x.fromAmino(B))}};return f.encode(T)}var S,Y0,q0,Of=({sender:v,recipient:H,assetValue:_})=>{return{type:`${_.chain===S.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:_.getBaseValue("string"),denom:w(_.symbol,!0)}],from_address:v,to_address:H}}},Nf=({sender:v,assetValue:H,memo:_=""})=>{return{type:`${H.chain===S.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:H.getBaseValue("string"),asset:s(H)}],memo:_,signer:v}}},vf=({sender:v,recipient:H,assetValue:_,memo:f})=>{return!H?Nf({assetValue:_,memo:f,sender:v}):Of({assetValue:_,recipient:H,sender:v})},l=async(v,H)=>{return(await h(H)).fromAmino(v)},jf=async({rpcUrl:v,sender:H})=>{let f=await(await M(v)).getAccount(H);if(!f)throw new S.SwapKitError("toolbox_cosmos_account_not_found",{sender:H});return f};var of=A(()=>{e();Jf();S=require("@swapkit/helpers"),Y0=D(S.Chain.THORChain).gas,q0=D(S.Chain.Maya).gas});var mf=()=>{};var tf=A(()=>{mf()});var Ef=A(()=>{Zf();of();Jf();tf()});async function Sf(v,H){try{let f=(await Uf.SwapKitApi.getGasRate()).find((x)=>x.chainId===v)?.value;return f?Number.parseFloat(f):H}catch{return H}}async function kf({phrase:v,prefix:H,..._}){let f=await import("@cosmjs/proto-signing"),x=await import("@cosmjs/crypto"),T=f.DirectSecp256k1HdWallet??f.default?.DirectSecp256k1HdWallet,B=x.stringToPath??x.default?.stringToPath,L="derivationPath"in _?_.derivationPath:`${z.DerivationPath[_.chain]}/${_.index}`;return await T.fromMnemonic(v,{hdPaths:[B(L)],prefix:H})}async function J0({privateKey:v,prefix:H}){let _=await import("@cosmjs/proto-signing");return(_.DirectSecp256k1Wallet??_.default?.DirectSecp256k1Wallet).fromKey(v,H)}function af(v){return async function({signature:_,message:f,address:x}){let T=await v(x);if(!T?.pubkey)throw new z.SwapKitError("toolbox_cosmos_verify_signature_no_pubkey");let B=await import("@cosmjs/crypto"),L=B.Secp256k1Signature??B.default?.Secp256k1Signature,I=B.Secp256k1??B.default?.Secp256k1,q=L.fromFixedLength(n.base64.decode(_));return I.verifySignature(q,n.base64.decode(f),T.pubkey.value)}}function xf({chain:v,...H}){let _=z.CosmosChainPrefixes[v],f="index"in H?H.index||0:0,x=z.derivationPathToString("derivationPath"in H&&H.derivationPath?H.derivationPath:z.updateDerivationPath(z.NetworkDerivationPath[v],{index:f})),T;async function B(){if(T)return T;return T=await Tf.match(H).with({phrase:Tf.P.string},({phrase:X})=>kf({derivationPath:x,phrase:X,prefix:_})).with({signer:Tf.P.any},({signer:X})=>X).otherwise(()=>{return}),T}async function L(X){let Y=await z.getRPCUrl(v);return(await M(Y)).getAccount(X)}async function I(){let X=await B(),[Y]=await X?.getAccounts()||[];return Y?.address}async function q(){let X=await B(),[Y]=await X?.getAccounts()||[];if(!Y?.pubkey)throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");return n.base64.encode(Y?.pubkey)}async function E(X){let Y=await B(),Q=await I(),J=await z.getRPCUrl(v);if(!(Y&&Q))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");return await(await j(J,Y)).sign(Q,X.msgs,X.fee,X.memo,{accountNumber:BigInt(X.accountNumber),chainId:X.chainId,sequence:X.sequence})}async function K(X){let Y=await B(),Q=await I(),J=await z.getRPCUrl(v);if(!(Y&&Q))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");let N=await(await j(J,Y)).signAndBroadcast(Q,X.msgs,X.fee,X.memo);if(N.code!==0)throw new z.SwapKitError("core_swap_transaction_error",{code:N.code,message:N.rawLog});return N.transactionHash}async function U({recipient:X,assetValue:Y,memo:Q="",feeRate:J,feeOptionKey:O=z.FeeOption.Fast,sweep:N}){let C=await B(),V=await I();if(!(C&&V))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");let u=await z.getRPCUrl(v),d=z.AssetValue.from({chain:v}),Wf=s(d),Bf=F0(J||(await rf(v,gf[v]))[O],Wf,v),o=await j(u,C),m=w(Y.symbol),zf=[{amount:(N?i({assetValue:Y,balances:await Kf(v)(V),denom:m,feeAmount:_f(Bf.amount,m)}):Y).getBaseValue("string"),denom:m}],{transactionHash:Gf}=await o.sendTokens(V,X,zf,Bf,Q);return Gf}return{createPrivateKeyFromPhrase:K0(x),createTransaction:Xf,fetchFeeRateFromSwapKit:Sf,getAccount:L,getAddress:I,getBalance:async(X,Y)=>{let Q=await Kf(v)(X),J=await Promise.all(Q.filter(({denom:O})=>O&&!O.includes("IBC/")&&!([z.Chain.THORChain,z.Chain.Maya].includes(v)&&O.split("-").length>2)).map(({denom:O,amount:N})=>{let C=[z.Chain.THORChain,z.Chain.Maya].includes(v)&&(O.includes("/")||O.includes("˜"))?`${v}.${O}`:O;return Yf(C,N)}));if(J.length===0)return[z.AssetValue.from({chain:v})];return J},getBalanceAsDenoms:Kf(v),getFees:()=>rf(v,gf[v]),getPubKey:q,getSignerFromPhrase:({phrase:X,derivationPath:Y})=>kf({derivationPath:z.derivationPathToString(Y),index:f,phrase:X,prefix:_}),getSignerFromPrivateKey:async(X)=>{let Y=await import("@cosmjs/proto-signing");return(Y.DirectSecp256k1Wallet??Y.default?.DirectSecp256k1Wallet).fromKey(X,_)},signAndBroadcastTransaction:K,signTransaction:E,transfer:U,validateAddress:sf(v),verifySignature:af(L)}}async function O0(v,H){try{let f=(await Uf.SwapKitApi.getGasRate()).find((x)=>x.chainId===v)?.value;return f?Number.parseFloat(f):H}catch{return H}}function N0({assetValue:{chain:v}}){return z.AssetValue.from({chain:v,value:E0(v)})}async function rf(v,H){let{chainId:_,baseDecimal:f}=z.getChainConfig(v),x=await Sf(_,H);return{average:z.SwapKitNumber.fromBigInt(BigInt(x),f),fast:z.SwapKitNumber.fromBigInt(BigInt(z.applyFeeMultiplier(x,z.FeeOption.Fast,!0)),f),fastest:z.SwapKitNumber.fromBigInt(BigInt(z.applyFeeMultiplier(x,z.FeeOption.Fastest,!0)),f)}}function F0(v,H,_){return{amount:[{amount:typeof v==="number"?v.toString():v.getBaseValue("string"),denom:H}],gas:D(_).gas}}function E0(v){return{[z.Chain.Cosmos]:0.007,[z.Chain.Kujira]:0.02,[z.Chain.Noble]:0.01,[z.Chain.THORChain]:0.02,[z.Chain.Maya]:0.02,[z.Chain.Harbor]:0.02}[v]||0}function sf(v){let H=z.CosmosChainPrefixes[v];return function(f){if(!f.startsWith(H))return!1;try{let{prefix:x,words:T}=n.bech32.decode(f);return n.bech32.encode(x,T)===f.toLocaleLowerCase()}catch{return!1}}}function Kf(v){return async function(_){let f=await z.getRPCUrl(v);return(await(await M(f)).getAllBalances(_)).map((L)=>({...L,denom:L.denom.includes("/")?L.denom.toUpperCase():L.denom}))}}function K0(v){return async function(_){let f=await import("@cosmjs/crypto"),x=f.stringToPath??f.default?.stringToPath,T=f.Slip10Curve??f.default?.Slip10Curve,B=f.Slip10??f.default?.Slip10,L=f.EnglishMnemonic??f.default?.EnglishMnemonic,I=f.Bip39??f.default?.Bip39,q=new L(_),E=await I.mnemonicToSeed(q),{privkey:K}=B.derivePath(T.Secp256k1,E,x(v));return K}}var n,z,Uf,Tf,gf;var yf=A(()=>{e();n=require("@scure/base"),z=require("@swapkit/helpers"),Uf=require("@swapkit/helpers/api"),Tf=require("ts-pattern");gf={[z.Chain.Cosmos]:1000,[z.Chain.Kujira]:1000,[z.Chain.Noble]:1000,[z.Chain.THORChain]:5000000,[z.Chain.Maya]:5000000,[z.Chain.Harbor]:5000000}});function k0({prefix:v,derivationPath:H}){return async function(f,x=0){let T=await import("@cosmjs/amino"),B=T.Secp256k1HdWallet??T.default?.Secp256k1HdWallet,L=await import("@cosmjs/crypto"),I=L.stringToPath??L.default?.stringToPath;return B.fromMnemonic(f,{hdPaths:[I(`${H}/${x}`)],prefix:v})}}function U0(v){return p.base64.encode(v)}function S0(v,H){return async function({wallet:f,tx:x}){let{msgs:T,accountNumber:B,sequence:L,chainId:I,fee:q,memo:E}=typeof x==="string"?JSON.parse(x):x,K=(await f.getAccounts())?.[0]?.address||"",U=await h(v,H),X=await b(),Y=await Qf(f,{aminoTypes:U,registry:X}),Q=[];for(let N of T){let C=await l(N,v);Q.push(C)}let{signatures:[J]}=await Y.sign(K,Q,q,E,{accountNumber:BigInt(B),chainId:I,sequence:L});return{bodyBytes:await ff({chain:v,memo:E,msgs:T.map($)}),signature:U0(J)}}}function C0({prefix:v,chain:H}){return async function(f,x,T,B,L){let I=await F.getRPCUrl(H),{encodeSecp256k1Pubkey:q,pubkeyToAddress:E}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:K}=(await import("@cosmjs/stargate")).default,{sequence:U,fee:X}=JSON.parse(f),Y=await ef(T,B),Q=x.map((N)=>[E(q(p.base64.decode(N.pubKey)),v),p.base64.decode(N.signature)]),J=await M(I),{transactionHash:O}=await J.broadcastTx(K(Y,U,X,L,new Map(Q)));return O}}async function ef(v,H,_=!0){let{createMultisigThresholdPubkey:f,encodeSecp256k1Pubkey:x}=(await import("@cosmjs/amino")).default;return f(v.map((T)=>x(p.base64.decode(T))),H,_)}function A0(v){return p.base64.decode(v)}async function R0({privateKey:v,message:H}){let{Secp256k1:_}=(await import("@cosmjs/crypto")).default,f=await _.createSignature(p.base64.decode(H),v);return p.base64.encode(Buffer.concat([f.r(32),f.s(32)]))}function Cf({chain:v,...H}){let{isStagenet:_}=F.SKConfig.get("envs"),f=`${_?"s":""}${F.CosmosChainPrefixes[v]}`,x="index"in H?H.index||0:0,T="derivationPath"in H&&H.derivationPath?H.derivationPath:F.updateDerivationPath(F.NetworkDerivationPath[v],{index:x}),B=xf({chain:v,...H}),L=D(v),I;function q(){return I??=Hf.match(H).with({phrase:Hf.P.string},({phrase:Q})=>B.getSignerFromPhrase({derivationPath:T,phrase:Q})).with({signer:Hf.P.any},({signer:Q})=>Promise.resolve(Q)).otherwise(()=>Promise.resolve(void 0)),I}async function E(){let Q=await F.getRPCUrl(v),J=await q();if(!J)throw new F.SwapKitError("toolbox_cosmos_no_signer");let O=await b(),N=await h(v,f),C=await j(Q,J,{aminoTypes:N,registry:O});return{signer:J,signingClient:C}}async function K({fee:Q,memo:J,msgs:O}){let{signer:N,signingClient:C}=await E(),V=(await N.getAccounts())?.[0]?.address;if(!V)throw new F.SwapKitError("toolbox_cosmos_signer_not_defined");let u=await C.signAndBroadcast(V,O,Q,J);if(u.code!==0)throw new F.SwapKitError("core_swap_transaction_error",{code:u.code,message:u.rawLog});return u.transactionHash}async function U(){let Q=await a(v);return{[F.FeeOption.Average]:Q,[F.FeeOption.Fast]:Q,[F.FeeOption.Fastest]:Q}}async function X({assetValue:Q,memo:J="",recipient:O,sweep:N}){let{TxRaw:C}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:V,signingClient:u}=await E(),d=(await V.getAccounts())?.[0]?.address;if(!d)throw new F.SwapKitError("toolbox_cosmos_no_signer");let Wf="signAmino"in V,Bf=N?await Lf({assetValue:Q,sender:d}):Q,o=vf({assetValue:Bf,memo:J,recipient:O,sender:d});if(Wf){let zf=await l(o,v),{signatures:Gf,authInfoBytes:T0}=await u.sign(d,[zf],L,J),x0=C.encode({authInfoBytes:T0,bodyBytes:await ff({chain:v,memo:J,msgs:[o].map($)}),signatures:Gf}).finish();return(await u.broadcastTx(x0)).transactionHash}let m=$(o),Rf=await l(m,v);return K({fee:L,memo:J,msgs:[Rf]})}async function Y(Q){let{signer:J,signingClient:O}=await E(),N=(await J.getAccounts())?.[0]?.address;if(!N)throw new F.SwapKitError("toolbox_cosmos_signer_not_defined");return O.sign(N,Q.msgs,Q.fee,Q.memo,{accountNumber:BigInt(Q.accountNumber),chainId:Q.chainId,sequence:Q.sequence})}return{...B,broadcastMultisigTx:C0({chain:v,prefix:f}),buildAminoMsg:vf,buildEncodedTxBody:ff,convertToSignable:l,createDefaultAminoTypes:()=>h(v,f),createDefaultRegistry:b,createMultisig:ef,createTransaction:Ff,deposit:X,getFees:U,importSignature:A0,parseAminoMessageForDirectSigning:$,pubkeyToAddress:async(Q)=>{let{pubkeyToAddress:J}=(await import("@cosmjs/amino")).default;return J(Q,f)},secp256k1HdWalletFromMnemonic:k0({derivationPath:F.derivationPathToString(T),prefix:f}),signAndBroadcastTransaction:K,signMultisigTx:S0(v,f),signTransaction:Y,signWithPrivateKey:R0,transfer:X}}var p,F,Hf;var Af=A(()=>{Ef();e();yf();p=require("@scure/base"),F=require("@swapkit/helpers"),Hf=require("ts-pattern")});var c,D0=(v,H)=>{switch(v){case c.Chain.Cosmos:case c.Chain.Kujira:case c.Chain.Noble:return xf({chain:v,...H});case c.Chain.Maya:case c.Chain.THORChain:return Cf({chain:v,...H});default:throw new c.SwapKitError("toolbox_cosmos_not_supported",{chain:v})}};var f0=A(()=>{yf();Af();c=require("@swapkit/helpers");yf();Af()});var M0={};uf(M0,{verifySignature:()=>af,transferMsgAmino:()=>Of,toBase64:()=>Z0,resolveThorchainSweepAssetValue:()=>Lf,parseAminoMessageForDirectSigning:()=>$,getThorchainNativeFee:()=>a,getSweepAssetValue:()=>i,getSignerFromPrivateKey:()=>J0,getSignerFromPhrase:()=>kf,getMsgSendDenom:()=>w,getFeeRateFromSwapKit:()=>O0,getFeeAmountForDenom:()=>_f,getDenomWithChain:()=>s,getDefaultChainFee:()=>D,getCosmosToolbox:()=>D0,getCosmosAddressValidator:()=>sf,getAssetFromDenom:()=>Yf,fromBase64:()=>I0,fetchFeeRateFromSwapKit:()=>Sf,estimateTransactionFee:()=>N0,depositMsgAmino:()=>Nf,createTransaction:()=>Ff,createThorchainToolbox:()=>Cf,createStargateClient:()=>M,createSigningStargateClient:()=>j,createOfflineStargateClient:()=>Qf,createDefaultRegistry:()=>b,createDefaultAminoTypes:()=>h,createCosmosToolbox:()=>xf,cosmosCreateTransaction:()=>Xf,convertToSignable:()=>l,buildTransferTx:()=>bf,buildEncodedTxBody:()=>ff,buildDepositTx:()=>df,buildAminoMsg:()=>vf,bech32ToBase64:()=>g,base64ToBech32:()=>r,YUM_KUJIRA_FACTORY_DENOM:()=>hf,USK_KUJIRA_FACTORY_DENOM:()=>If,THORCHAIN_GAS_VALUE:()=>Y0,MAYA_GAS_VALUE:()=>q0,DEFAULT_NOBLE_FEE_MAINNET:()=>nf,DEFAULT_KUJI_FEE_MAINNET:()=>$f,DEFAULT_COSMOS_FEE_MAINNET:()=>lf});module.exports=W0(M0);var V0=A(()=>{Ef();f0();e()});V0();
|
|
1
|
+
var H0=Object.create;var{getPrototypeOf:B0,defineProperty:t,getOwnPropertyNames:Pf,getOwnPropertyDescriptor:_0}=Object,Mf=Object.prototype.hasOwnProperty;function Vf(v){return this[v]}var v0,L0,y0=(v,H,_)=>{var f=v!=null&&typeof v==="object";if(f){var x=H?v0??=new WeakMap:L0??=new WeakMap,T=x.get(v);if(T)return T}_=v!=null?H0(B0(v)):{};let B=H||!v||!v.__esModule?t(_,"default",{value:v,enumerable:!0}):_;for(let L of Pf(v))if(!Mf.call(B,L))t(B,L,{get:Vf.bind(v,L),enumerable:!0});if(f)x.set(v,B);return B},W0=(v)=>{var H=(Df??=new WeakMap).get(v),_;if(H)return H;if(H=t({},"__esModule",{value:!0}),v&&typeof v==="object"||typeof v==="function"){for(var f of Pf(v))if(!Mf.call(H,f))t(H,f,{get:Vf.bind(v,f),enumerable:!(_=_0(v,f))||_.enumerable})}return Df.set(v,H),H},Df;var z0=(v)=>v;function G0(v,H){this[v]=z0.bind(null,H)}var uf=(v,H)=>{for(var _ in H)t(v,_,{get:H[_],enumerable:!0,configurable:!0,set:G0.bind(H,_)})};var A=(v,H)=>()=>(v&&(H=v(v=0)),H);function g(v){return P.base64.encode(Uint8Array.from(P.bech32.fromWords(P.bech32.decode(v).words)))}function r(v,H="thor"){return P.bech32.encode(H,P.bech32.toWords(P.base64.decode(v)))}function Z0(v){return P.base64.encode(v)}function I0(v){if(!v.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new wf.SwapKitError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return P.base64.decode(v)}var P,wf;var Zf=A(()=>{P=require("@scure/base"),wf=require("@swapkit/helpers")});function D(v){switch(v){case W.Chain.Maya:return{amount:[],gas:"10000000000"};case W.Chain.THORChain:return{amount:[],gas:"500000000"};case W.Chain.Kujira:return $f;case W.Chain.Noble:return nf;default:return lf}}async function a(v){let{isStagenet:H}=W.SKConfig.get("envs"),_=W.SKConfig.get("thornodeUrls"),f=v===W.Chain.Maya,T=`${f?H?_.MAYA_STAGENET:_.MAYA:H?_.THOR_STAGENET:_.THOR}/${f?"mayachain":"thorchain"}/constants`,B=W.getChainConfig(v).baseDecimal;try{let{int_64_values:{NativeTransactionFee:L}}=await W.RequestClient.get(T);if(!Number.isInteger(L)||L<=0)throw new W.SwapKitError("toolbox_cosmos_invalid_fee",{nativeFee:L.toString()});return W.SwapKitNumber.fromBigInt(BigInt(L),B)}catch{let L=f?10000000000n:2000000n;return W.SwapKitNumber.fromBigInt(L,B)}}async function M(v){let H=await import("@cosmjs/stargate"),_=H.StargateClient??H.default?.StargateClient,f=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return _.connect({headers:f,url:v})}async function j(v,H,_={}){let f=await import("@cosmjs/stargate"),x=f.SigningStargateClient??f.default?.SigningStargateClient,T=f.GasPrice??f.default?.GasPrice,B=typeof _==="string"?_:"0.0003uatom",L=typeof _==="string"?{}:_;return x.connectWithSigner(v,H,{gasPrice:T.fromString(B),...L})}async function Qf(v,H){let _=await import("@cosmjs/stargate");return(_.SigningStargateClient??_.default?.SigningStargateClient).offline(v,H)}async function Xf({sender:v,recipient:H,assetValue:_,memo:f="",feeRate:x,sequence:T,accountNumber:B,sweep:L}){let{chain:I,chainId:q}=_,E=await W.getRPCUrl(I),K=await M(E),k=await K.getAccount(v);if(!k)throw new W.SwapKitError("toolbox_cosmos_account_not_found",{sender:v});let X=W.AssetValue.from({chain:I}),Y=w(X.symbol),Q=D(I),J=Y&&x?{amount:[{amount:x.toString(),denom:Y}],gas:Q.gas}:Q,O=w(_.symbol),C={amount:[{amount:(L?i({assetValue:_,balances:await K.getAllBalances(v),denom:O,feeAmount:_f(J.amount,O)}):_).getBaseValue("string"),denom:O}],fromAddress:v,toAddress:H};return{accountNumber:B??Number(k.accountNumber),chainId:q,fee:J,memo:f,msgs:[{typeUrl:Q0(I),value:C}],sequence:T??k.sequence}}function _f(v,H){let _=H.toLowerCase();return v.reduce((f,x)=>x.denom.toLowerCase()===_?f+BigInt(x.amount):f,0n)}function i({assetValue:v,balances:H,denom:_,feeAmount:f=0n}){let x=_.toLowerCase(),T=H.find(({denom:I})=>I.toLowerCase()===x),B=BigInt(T?.amount??"0"),L=B-f;if(L<=0n)throw new W.SwapKitError("toolbox_sweep_amount_too_low",{asset:v.toString(),balance:B.toString(),fee:f.toString()});return v.set(W.SwapKitNumber.fromBigInt(L,v.decimal))}var W,If="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",hf="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",lf,$f,nf,w=(v,H=!1)=>{if(H)return v.toLowerCase();switch(v){case"uUSK":case"USK":return If;case"uYUM":case"YUM":return hf;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":case"NOBLE":return"uusdc";default:return v}},s=({symbol:v,chain:H})=>{if(H===W.Chain.Maya)return(v.toUpperCase()!=="CACAO"?v:`${W.Chain.Maya}.${v}`).toUpperCase();if(H===W.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(v.toUpperCase())?`${W.Chain.THORChain}.${v}`:v).toUpperCase();return w(v,!1)},Q0=(v)=>{switch(v){case W.Chain.Maya:case W.Chain.THORChain:return"/types.MsgSend";case W.Chain.Cosmos:case W.Chain.Kujira:case W.Chain.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new W.SwapKitError("toolbox_cosmos_not_supported",{chain:v})}},X0,Yf=(v,H)=>{let _=X0[v.toLowerCase()];if(!_)return W.AssetValue.from({asset:v,fromBaseDecimal:8,value:H});let{chain:f,asset:x,decimals:T}=_,B=f?{chain:f}:{asset:x};return W.AssetValue.from({...B,fromBaseDecimal:T,value:H})};var e=A(()=>{W=require("@swapkit/helpers"),lf={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},$f={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},nf={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};X0={atom:{chain:W.Chain.Cosmos,decimals:W.getChainConfig(W.Chain.Cosmos).baseDecimal},cacao:{chain:W.Chain.Maya,decimals:10},kuji:{chain:W.Chain.Kujira,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal},maya:{asset:`${W.Chain.Maya}.${W.Chain.Maya}`,decimals:4},rune:{chain:W.Chain.THORChain,decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},uatom:{chain:W.Chain.Cosmos,decimals:W.getChainConfig(W.Chain.Cosmos).baseDecimal},ukuji:{chain:W.Chain.Kujira,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal},usdc:{chain:W.Chain.Noble,decimals:W.getChainConfig(W.Chain.Noble).baseDecimal},uusdc:{chain:W.Chain.Noble,decimals:W.getChainConfig(W.Chain.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:W.getChainConfig(W.Chain.THORChain).baseDecimal},[If.toLowerCase()]:{asset:`${W.Chain.Kujira}.USK`,decimals:W.getChainConfig(W.Chain.Kujira).baseDecimal}}});var pf={};uf(pf,{$root:()=>y});var U,Z,R,G,y;var cf=A(()=>{U=y0(require("protobufjs/minimal.js")),Z=U.default.Reader,R=U.default.Writer,G=U.default.util,y=U.default.roots.default||(U.default.roots.default={});y.common=(()=>{let v={};return v.Asset=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.chain="",H.prototype.symbol="",H.prototype.ticker="",H.prototype.synth=!1,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(10).string(f.chain);if(f.symbol!=null&&Object.hasOwnProperty.call(f,"symbol"))x.uint32(18).string(f.symbol);if(f.ticker!=null&&Object.hasOwnProperty.call(f,"ticker"))x.uint32(26).string(f.ticker);if(f.synth!=null&&Object.hasOwnProperty.call(f,"synth"))x.uint32(32).bool(f.synth);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Asset;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.chain=f.string();break;case 2:B.symbol=f.string();break;case 3:B.ticker=f.string();break;case 4:B.synth=f.bool();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.chain!=null&&f.hasOwnProperty("chain")){if(!G.isString(f.chain))return"chain: string expected"}if(f.symbol!=null&&f.hasOwnProperty("symbol")){if(!G.isString(f.symbol))return"symbol: string expected"}if(f.ticker!=null&&f.hasOwnProperty("ticker")){if(!G.isString(f.ticker))return"ticker: string expected"}if(f.synth!=null&&f.hasOwnProperty("synth")){if(typeof f.synth!=="boolean")return"synth: boolean expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Asset)return f;let x=new y.common.Asset;if(f.chain!=null)x.chain=String(f.chain);if(f.symbol!=null)x.symbol=String(f.symbol);if(f.ticker!=null)x.ticker=String(f.ticker);if(f.synth!=null)x.synth=Boolean(f.synth);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.chain="",T.symbol="",T.ticker="",T.synth=!1;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.symbol!=null&&f.hasOwnProperty("symbol"))T.symbol=f.symbol;if(f.ticker!=null&&f.hasOwnProperty("ticker"))T.ticker=f.ticker;if(f.synth!=null&&f.hasOwnProperty("synth"))T.synth=f.synth;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v.Coin=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.asset=null,H.prototype.amount="",H.prototype.decimals=G.Long?G.Long.fromBits(0,0,!1):0,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.asset!=null&&Object.hasOwnProperty.call(f,"asset"))y.common.Asset.encode(f.asset,x.uint32(10).fork()).ldelim();if(f.amount!=null&&Object.hasOwnProperty.call(f,"amount"))x.uint32(18).string(f.amount);if(f.decimals!=null&&Object.hasOwnProperty.call(f,"decimals"))x.uint32(24).int64(f.decimals);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Coin;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.asset=y.common.Asset.decode(f,f.uint32());break;case 2:B.amount=f.string();break;case 3:B.decimals=f.int64();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.asset!=null&&f.hasOwnProperty("asset")){let x=y.common.Asset.verify(f.asset);if(x)return"asset."+x}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!G.isString(f.amount))return"amount: string expected"}if(f.decimals!=null&&f.hasOwnProperty("decimals")){if(!G.isInteger(f.decimals)&&!(f.decimals&&G.isInteger(f.decimals.low)&&G.isInteger(f.decimals.high)))return"decimals: integer|Long expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Coin)return f;let x=new y.common.Coin;if(f.asset!=null){if(typeof f.asset!=="object")throw TypeError(".common.Coin.asset: object expected");x.asset=y.common.Asset.fromObject(f.asset)}if(f.amount!=null)x.amount=String(f.amount);if(f.decimals!=null){if(G.Long)(x.decimals=G.Long.fromValue(f.decimals)).unsigned=!1;else if(typeof f.decimals==="string")x.decimals=Number.parseInt(f.decimals,10);else if(typeof f.decimals==="number")x.decimals=f.decimals;else if(typeof f.decimals==="object")x.decimals=new G.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber()}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)if(T.asset=null,T.amount="",G.Long){let B=new G.Long(0,0,!1);T.decimals=x.longs===String?B.toString():x.longs===Number?B.toNumber():B}else T.decimals=x.longs===String?"0":0;if(f.asset!=null&&f.hasOwnProperty("asset"))T.asset=y.common.Asset.toObject(f.asset,x);if(f.amount!=null&&f.hasOwnProperty("amount"))T.amount=f.amount;if(f.decimals!=null&&f.hasOwnProperty("decimals"))if(typeof f.decimals==="number")T.decimals=x.longs===String?String(f.decimals):f.decimals;else T.decimals=x.longs===String?G.Long.prototype.toString.call(f.decimals):x.longs===Number?new G.LongBits(f.decimals.low>>>0,f.decimals.high>>>0).toNumber():f.decimals;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v.PubKeySet=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.secp256k1="",H.prototype.ed25519="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.secp256k1!=null&&Object.hasOwnProperty.call(f,"secp256k1"))x.uint32(10).string(f.secp256k1);if(f.ed25519!=null&&Object.hasOwnProperty.call(f,"ed25519"))x.uint32(18).string(f.ed25519);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.PubKeySet;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.secp256k1=f.string();break;case 2:B.ed25519=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1")){if(!G.isString(f.secp256k1))return"secp256k1: string expected"}if(f.ed25519!=null&&f.hasOwnProperty("ed25519")){if(!G.isString(f.ed25519))return"ed25519: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.PubKeySet)return f;let x=new y.common.PubKeySet;if(f.secp256k1!=null)x.secp256k1=String(f.secp256k1);if(f.ed25519!=null)x.ed25519=String(f.ed25519);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.secp256k1="",T.ed25519="";if(f.secp256k1!=null&&f.hasOwnProperty("secp256k1"))T.secp256k1=f.secp256k1;if(f.ed25519!=null&&f.hasOwnProperty("ed25519"))T.ed25519=f.ed25519;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v.Tx=(()=>{function H(_){if(this.coins=[],this.gas=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.id="",H.prototype.chain="",H.prototype.fromAddress="",H.prototype.toAddress="",H.prototype.coins=G.emptyArray,H.prototype.gas=G.emptyArray,H.prototype.memo="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.id!=null&&Object.hasOwnProperty.call(f,"id"))x.uint32(10).string(f.id);if(f.chain!=null&&Object.hasOwnProperty.call(f,"chain"))x.uint32(18).string(f.chain);if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(26).string(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(34).string(f.toAddress);if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(42).fork()).ldelim();if(f.gas?.length)for(let T=0;T<f.gas.length;++T)y.common.Coin.encode(f.gas[T],x.uint32(50).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(58).string(f.memo);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Tx;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.id=f.string();break;case 2:B.chain=f.string();break;case 3:B.fromAddress=f.string();break;case 4:B.toAddress=f.string();break;case 5:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 6:if(!B.gas?.length)B.gas=[];B.gas.push(y.common.Coin.decode(f,f.uint32()));break;case 7:B.memo=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.id!=null&&f.hasOwnProperty("id")){if(!G.isString(f.id))return"id: string expected"}if(f.chain!=null&&f.hasOwnProperty("chain")){if(!G.isString(f.chain))return"chain: string expected"}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!G.isString(f.fromAddress))return"fromAddress: string expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!G.isString(f.toAddress))return"toAddress: string expected"}if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.gas!=null&&f.hasOwnProperty("gas")){if(!Array.isArray(f.gas))return"gas: array expected";for(let x=0;x<f.gas.length;++x){let T=y.common.Coin.verify(f.gas[x]);if(T)return"gas."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!G.isString(f.memo))return"memo: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Tx)return f;let x=new y.common.Tx;if(f.id!=null)x.id=String(f.id);if(f.chain!=null)x.chain=String(f.chain);if(f.fromAddress!=null)x.fromAddress=String(f.fromAddress);if(f.toAddress!=null)x.toAddress=String(f.toAddress);if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Tx.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Tx.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.gas){if(!Array.isArray(f.gas))throw TypeError(".common.Tx.gas: array expected");x.gas=[];for(let T=0;T<f.gas.length;++T){if(typeof f.gas[T]!=="object")throw TypeError(".common.Tx.gas: object expected");x.gas[T]=y.common.Coin.fromObject(f.gas[T])}}if(f.memo!=null)x.memo=String(f.memo);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[],T.gas=[];if(x.defaults)T.id="",T.chain="",T.fromAddress="",T.toAddress="",T.memo="";if(f.id!=null&&f.hasOwnProperty("id"))T.id=f.id;if(f.chain!=null&&f.hasOwnProperty("chain"))T.chain=f.chain;if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=f.toAddress;if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.gas?.length){T.gas=[];for(let B=0;B<f.gas.length;++B)T.gas[B]=y.common.Coin.toObject(f.gas[B],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v.Fee=(()=>{function H(_){if(this.coins=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.coins=G.emptyArray,H.prototype.poolDeduct="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.poolDeduct!=null&&Object.hasOwnProperty.call(f,"poolDeduct"))x.uint32(18).string(f.poolDeduct);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.Fee;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 2:B.poolDeduct=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct")){if(!G.isString(f.poolDeduct))return"poolDeduct: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.Fee)return f;let x=new y.common.Fee;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".common.Fee.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".common.Fee.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.poolDeduct!=null)x.poolDeduct=String(f.poolDeduct);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults)T.poolDeduct="";if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.poolDeduct!=null&&f.hasOwnProperty("poolDeduct"))T.poolDeduct=f.poolDeduct;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v.ProtoUint=(()=>{function H(_){if(_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.value="",H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.value!=null&&Object.hasOwnProperty.call(f,"value"))x.uint32(10).string(f.value);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.common.ProtoUint;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.value=f.string();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.value!=null&&f.hasOwnProperty("value")){if(!G.isString(f.value))return"value: string expected"}return null},H.fromObject=function(f){if(f instanceof y.common.ProtoUint)return f;let x=new y.common.ProtoUint;if(f.value!=null)x.value=String(f.value);return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.defaults)T.value="";if(f.value!=null&&f.hasOwnProperty("value"))T.value=f.value;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v})();y.types=(()=>{let v={};return v.MsgDeposit=(()=>{function H(_){if(this.coins=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.coins=G.emptyArray,H.prototype.memo="",H.prototype.signer=G.newBuffer([]),H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.coins?.length)for(let T=0;T<f.coins.length;++T)y.common.Coin.encode(f.coins[T],x.uint32(10).fork()).ldelim();if(f.memo!=null&&Object.hasOwnProperty.call(f,"memo"))x.uint32(18).string(f.memo);if(f.signer!=null&&Object.hasOwnProperty.call(f,"signer"))x.uint32(26).bytes(f.signer);return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.types.MsgDeposit;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:if(!B.coins?.length)B.coins=[];B.coins.push(y.common.Coin.decode(f,f.uint32()));break;case 2:B.memo=f.string();break;case 3:B.signer=f.bytes();break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.coins!=null&&f.hasOwnProperty("coins")){if(!Array.isArray(f.coins))return"coins: array expected";for(let x=0;x<f.coins.length;++x){let T=y.common.Coin.verify(f.coins[x]);if(T)return"coins."+T}}if(f.memo!=null&&f.hasOwnProperty("memo")){if(!G.isString(f.memo))return"memo: string expected"}if(f.signer!=null&&f.hasOwnProperty("signer")){if(!(f.signer&&typeof f.signer.length==="number"||G.isString(f.signer)))return"signer: buffer expected"}return null},H.fromObject=function(f){if(f instanceof y.types.MsgDeposit)return f;let x=new y.types.MsgDeposit;if(f.coins){if(!Array.isArray(f.coins))throw TypeError(".types.MsgDeposit.coins: array expected");x.coins=[];for(let T=0;T<f.coins.length;++T){if(typeof f.coins[T]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");x.coins[T]=y.common.Coin.fromObject(f.coins[T])}}if(f.memo!=null)x.memo=String(f.memo);if(f.signer!=null){if(typeof f.signer==="string")G.base64.decode(f.signer,x.signer=G.newBuffer(G.base64.length(f.signer)),0);else if(f.signer.length)x.signer=f.signer}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.coins=[];if(x.defaults){if(T.memo="",x.bytes===String)T.signer="";else if(T.signer=[],x.bytes!==Array)T.signer=G.newBuffer(T.signer)}if(f.coins?.length){T.coins=[];for(let B=0;B<f.coins.length;++B)T.coins[B]=y.common.Coin.toObject(f.coins[B],x)}if(f.memo!=null&&f.hasOwnProperty("memo"))T.memo=f.memo;if(f.signer!=null&&f.hasOwnProperty("signer"))T.signer=x.bytes===String?G.base64.encode(f.signer,0,f.signer.length):x.bytes===Array?Array.prototype.slice.call(f.signer):f.signer;return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v.MsgSend=(()=>{function H(_){if(this.amount=[],_){for(let f=Object.keys(_),x=0;x<f.length;++x)if(_[f[x]]!=null)this[f[x]]=_[f[x]]}}return H.prototype.fromAddress=G.newBuffer([]),H.prototype.toAddress=G.newBuffer([]),H.prototype.amount=G.emptyArray,H.create=function(f){return new H(f)},H.encode=function(f,x){if(!x)x=R.create();if(f.fromAddress!=null&&Object.hasOwnProperty.call(f,"fromAddress"))x.uint32(10).bytes(f.fromAddress);if(f.toAddress!=null&&Object.hasOwnProperty.call(f,"toAddress"))x.uint32(18).bytes(f.toAddress);if(f.amount?.length)for(let T=0;T<f.amount.length;++T)y.cosmos.base.v1beta1.Coin.encode(f.amount[T],x.uint32(26).fork()).ldelim();return x},H.encodeDelimited=function(f,x){return this.encode(f,x).ldelim()},H.decode=function(f,x){if(!(f instanceof Z))f=Z.create(f);let T=x===void 0?f.len:f.pos+x,B=new y.types.MsgSend;while(f.pos<T){let L=f.uint32();switch(L>>>3){case 1:B.fromAddress=f.bytes();break;case 2:B.toAddress=f.bytes();break;case 3:if(!B.amount?.length)B.amount=[];B.amount.push(y.cosmos.base.v1beta1.Coin.decode(f,f.uint32()));break;default:f.skipType(L&7);break}}return B},H.decodeDelimited=function(f){if(!(f instanceof Z))f=new Z(f);return this.decode(f,f.uint32())},H.verify=function(f){if(typeof f!=="object"||f===null)return"object expected";if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress")){if(!(f.fromAddress&&typeof f.fromAddress.length==="number"||G.isString(f.fromAddress)))return"fromAddress: buffer expected"}if(f.toAddress!=null&&f.hasOwnProperty("toAddress")){if(!(f.toAddress&&typeof f.toAddress.length==="number"||G.isString(f.toAddress)))return"toAddress: buffer expected"}if(f.amount!=null&&f.hasOwnProperty("amount")){if(!Array.isArray(f.amount))return"amount: array expected";for(let x=0;x<f.amount.length;++x){let T=y.cosmos.base.v1beta1.Coin.verify(f.amount[x]);if(T)return"amount."+T}}return null},H.fromObject=function(f){if(f instanceof y.types.MsgSend)return f;let x=new y.types.MsgSend;if(f.fromAddress!=null){if(typeof f.fromAddress==="string")G.base64.decode(f.fromAddress,x.fromAddress=G.newBuffer(G.base64.length(f.fromAddress)),0);else if(f.fromAddress.length)x.fromAddress=f.fromAddress}if(f.toAddress!=null){if(typeof f.toAddress==="string")G.base64.decode(f.toAddress,x.toAddress=G.newBuffer(G.base64.length(f.toAddress)),0);else if(f.toAddress.length)x.toAddress=f.toAddress}if(f.amount){if(!Array.isArray(f.amount))throw TypeError(".types.MsgSend.amount: array expected");x.amount=[];for(let T=0;T<f.amount.length;++T){if(typeof f.amount[T]!=="object")throw TypeError(".types.MsgSend.amount: object expected");x.amount[T]=y.cosmos.base.v1beta1.Coin.fromObject(f.amount[T])}}return x},H.toObject=function(f,x){if(!x)x={};let T={};if(x.arrays||x.defaults)T.amount=[];if(x.defaults){if(x.bytes===String)T.fromAddress="";else if(T.fromAddress=[],x.bytes!==Array)T.fromAddress=G.newBuffer(T.fromAddress);if(x.bytes===String)T.toAddress="";else if(T.toAddress=[],x.bytes!==Array)T.toAddress=G.newBuffer(T.toAddress)}if(f.fromAddress!=null&&f.hasOwnProperty("fromAddress"))T.fromAddress=x.bytes===String?G.base64.encode(f.fromAddress,0,f.fromAddress.length):x.bytes===Array?Array.prototype.slice.call(f.fromAddress):f.fromAddress;if(f.toAddress!=null&&f.hasOwnProperty("toAddress"))T.toAddress=x.bytes===String?G.base64.encode(f.toAddress,0,f.toAddress.length):x.bytes===Array?Array.prototype.slice.call(f.toAddress):f.toAddress;if(f.amount?.length){T.amount=[];for(let B=0;B<f.amount.length;++B)T.amount[B]=y.cosmos.base.v1beta1.Coin.toObject(f.amount[B],x)}return T},H.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},H})(),v})();y.cosmos=(()=>{let v={};return v.base=(()=>{let H={};return H.v1beta1=(()=>{let _={};return _.Coin=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))B.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))B.uint32(18).string(T.amount);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.Coin;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.denom=T.string();break;case 2:I.amount=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!G.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!G.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.Coin)return T;let B=new y.cosmos.base.v1beta1.Coin;if(T.denom!=null)B.denom=String(T.denom);if(T.amount!=null)B.amount=String(T.amount);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},f})(),_.DecCoin=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.denom="",f.prototype.amount="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.denom!=null&&Object.hasOwnProperty.call(T,"denom"))B.uint32(10).string(T.denom);if(T.amount!=null&&Object.hasOwnProperty.call(T,"amount"))B.uint32(18).string(T.amount);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.DecCoin;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.denom=T.string();break;case 2:I.amount=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.denom!=null&&T.hasOwnProperty("denom")){if(!G.isString(T.denom))return"denom: string expected"}if(T.amount!=null&&T.hasOwnProperty("amount")){if(!G.isString(T.amount))return"amount: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.DecCoin)return T;let B=new y.cosmos.base.v1beta1.DecCoin;if(T.denom!=null)B.denom=String(T.denom);if(T.amount!=null)B.amount=String(T.amount);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.denom="",L.amount="";if(T.denom!=null&&T.hasOwnProperty("denom"))L.denom=T.denom;if(T.amount!=null&&T.hasOwnProperty("amount"))L.amount=T.amount;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},f})(),_.IntProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.int="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.int!=null&&Object.hasOwnProperty.call(T,"int"))B.uint32(10).string(T.int);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.IntProto;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.int=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.int!=null&&T.hasOwnProperty("int")){if(!G.isString(T.int))return"int: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.IntProto)return T;let B=new y.cosmos.base.v1beta1.IntProto;if(T.int!=null)B.int=String(T.int);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.int="";if(T.int!=null&&T.hasOwnProperty("int"))L.int=T.int;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},f})(),_.DecProto=(()=>{function f(x){if(x){for(let T=Object.keys(x),B=0;B<T.length;++B)if(x[T[B]]!=null)this[T[B]]=x[T[B]]}}return f.prototype.dec="",f.create=function(T){return new f(T)},f.encode=function(T,B){if(!B)B=R.create();if(T.dec!=null&&Object.hasOwnProperty.call(T,"dec"))B.uint32(10).string(T.dec);return B},f.encodeDelimited=function(T,B){return this.encode(T,B).ldelim()},f.decode=function(T,B){if(!(T instanceof Z))T=Z.create(T);let L=B===void 0?T.len:T.pos+B,I=new y.cosmos.base.v1beta1.DecProto;while(T.pos<L){let q=T.uint32();switch(q>>>3){case 1:I.dec=T.string();break;default:T.skipType(q&7);break}}return I},f.decodeDelimited=function(T){if(!(T instanceof Z))T=new Z(T);return this.decode(T,T.uint32())},f.verify=function(T){if(typeof T!=="object"||T===null)return"object expected";if(T.dec!=null&&T.hasOwnProperty("dec")){if(!G.isString(T.dec))return"dec: string expected"}return null},f.fromObject=function(T){if(T instanceof y.cosmos.base.v1beta1.DecProto)return T;let B=new y.cosmos.base.v1beta1.DecProto;if(T.dec!=null)B.dec=String(T.dec);return B},f.toObject=function(T,B){if(!B)B={};let L={};if(B.defaults)L.dec="";if(T.dec!=null&&T.hasOwnProperty("dec"))L.dec=T.dec;return L},f.prototype.toJSON=function(){return this.constructor.toObject(this,U.default.util.toJSONOptions)},f})(),_})(),H})(),v})()});async function b(){let{$root:v}=await Promise.resolve().then(() => (cf(),pf)),H=await import("@cosmjs/proto-signing"),_=await import("@cosmjs/stargate"),f=H.Registry??H.default?.Registry,x=_.defaultRegistryTypes??_.default?.defaultRegistryTypes;return new f([...x,["/types.MsgSend",v.types.MsgSend],["/types.MsgDeposit",v.types.MsgDeposit]])}async function h(v,H=v===qf.Chain.THORChain?"thor":"maya"){let _=await import("@cosmjs/stargate"),f=_.AminoTypes??_.default?.AminoTypes,x=v===qf.Chain.THORChain?"thorchain":"mayachain";return new f({"/types.MsgDeposit":{aminoType:`${x}/MsgDeposit`,fromAmino:({signer:T,...B})=>({...B,signer:g(T)}),toAmino:({signer:T,...B})=>({...B,signer:r(T,H)})},"/types.MsgSend":{aminoType:`${x}/MsgSend`,fromAmino:({from_address:T,to_address:B,...L})=>({...L,fromAddress:g(T),toAddress:g(B)}),toAmino:({fromAddress:T,toAddress:B,...L})=>({...L,from_address:r(T,H),to_address:r(B,H)})}})}var qf;var Jf=A(()=>{Zf();qf=require("@swapkit/helpers")});async function Ff(v){let{assetValue:H,recipient:_,memo:f,sender:x,asSignable:T,asAminoMessage:B}=v,L=v.sweep?await Lf({assetValue:H,sender:x}):H;if(_)return bf({asAminoMessage:B,asSignable:T,assetValue:L,memo:f,recipient:_,sender:x});return df({asAminoMessage:B,asSignable:T,assetValue:L,memo:f,sender:x})}async function Lf({assetValue:v,sender:H}){let _=v.chain,f=await S.getRPCUrl(_),T=await(await M(f)).getAllBalances(H),B=v.isGasAsset?(await a(_)).getBaseValue("bigint"):0n;return i({assetValue:v,balances:T,denom:w(v.symbol,!0),feeAmount:B})}async function bf({sender:v,recipient:H,assetValue:_,memo:f="",asSignable:x=!0,asAminoMessage:T=!1,sequence:B,accountNumber:L}){let I=_.chain,q=await S.getRPCUrl(I),E=await jf({rpcUrl:q,sender:v}),{chainId:K}=S.getChainConfig(I),k=Of({assetValue:_,recipient:H,sender:v}),X=x?await l(T?k:$(k),I):k;return{accountNumber:L||Number(E.accountNumber),chainId:K,fee:D(I),memo:f,msgs:[X],sequence:B||E.sequence}}async function df({sender:v,assetValue:H,memo:_="",asSignable:f=!0,asAminoMessage:x=!1,sequence:T,accountNumber:B}){let L=H.chain,I=await S.getRPCUrl(L),q=await jf({rpcUrl:I,sender:v}),{chainId:E}=S.getChainConfig(L),K=Nf({assetValue:H,memo:_,sender:v}),k=f?await l(x?K:$(K),L):K;return{accountNumber:B||Number(q.accountNumber),chainId:E,fee:D(L),memo:_,msgs:[k],sequence:T||q.sequence}}function $(v){if(v.type==="thorchain/MsgSend"||v.type==="mayachain/MsgSend")return v;return{...v,value:{...v.value,coins:v.value.coins.map((H)=>{let _=S.AssetValue.from({asset:H.asset}),f=(_.isSynthetic?_.symbol.split("/")?.[1]:_.symbol)?.toUpperCase(),x=(_.isSynthetic?_.symbol.split("/")?.[0]:_.chain)?.toUpperCase();return{...H,asset:{chain:x,symbol:f,synth:_.isSynthetic,ticker:_.ticker}}})}}}async function ff({chain:v,memo:H,msgs:_}){let f=await b(),x=await h(v),T={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:H,messages:_.map((B)=>x.fromAmino(B))}};return f.encode(T)}var S,Y0,q0,Of=({sender:v,recipient:H,assetValue:_})=>{return{type:`${_.chain===S.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:_.getBaseValue("string"),denom:w(_.symbol,!0)}],from_address:v,to_address:H}}},Nf=({sender:v,assetValue:H,memo:_=""})=>{return{type:`${H.chain===S.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:H.getBaseValue("string"),asset:s(H)}],memo:_,signer:v}}},vf=({sender:v,recipient:H,assetValue:_,memo:f})=>{return!H?Nf({assetValue:_,memo:f,sender:v}):Of({assetValue:_,recipient:H,sender:v})},l=async(v,H)=>{return(await h(H)).fromAmino(v)},jf=async({rpcUrl:v,sender:H})=>{let f=await(await M(v)).getAccount(H);if(!f)throw new S.SwapKitError("toolbox_cosmos_account_not_found",{sender:H});return f};var of=A(()=>{e();Jf();S=require("@swapkit/helpers"),Y0=D(S.Chain.THORChain).gas,q0=D(S.Chain.Maya).gas});var mf=()=>{};var tf=A(()=>{mf()});var Ef=A(()=>{Zf();of();Jf();tf()});async function Sf(v,H){try{let f=(await kf.SwapKitApi.getGasRate()).find((x)=>x.chainId===v)?.value;return f?Number.parseFloat(f):H}catch{return H}}async function Uf({phrase:v,prefix:H,..._}){let f=await import("@cosmjs/proto-signing"),x=await import("@cosmjs/crypto"),T=f.DirectSecp256k1HdWallet??f.default?.DirectSecp256k1HdWallet,B=x.stringToPath??x.default?.stringToPath,L="derivationPath"in _?_.derivationPath:`${z.DerivationPath[_.chain]}/${_.index}`;return await T.fromMnemonic(v,{hdPaths:[B(L)],prefix:H})}async function J0({privateKey:v,prefix:H}){let _=await import("@cosmjs/proto-signing");return(_.DirectSecp256k1Wallet??_.default?.DirectSecp256k1Wallet).fromKey(v,H)}function af(v){return async function({signature:_,message:f,address:x}){let T=await v(x);if(!T?.pubkey)throw new z.SwapKitError("toolbox_cosmos_verify_signature_no_pubkey");let B=await import("@cosmjs/crypto"),L=B.Secp256k1Signature??B.default?.Secp256k1Signature,I=B.Secp256k1??B.default?.Secp256k1,q=L.fromFixedLength(n.base64.decode(_));return I.verifySignature(q,n.base64.decode(f),T.pubkey.value)}}function xf({chain:v,...H}){let _=z.CosmosChainPrefixes[v],f="index"in H?H.index||0:0,x=z.derivationPathToString("derivationPath"in H&&H.derivationPath?H.derivationPath:z.updateDerivationPath(z.NetworkDerivationPath[v],{index:f})),T;async function B(){if(T)return T;return T=await Tf.match(H).with({phrase:Tf.P.string},({phrase:X})=>Uf({derivationPath:x,phrase:X,prefix:_})).with({signer:Tf.P.any},({signer:X})=>X).otherwise(()=>{return}),T}async function L(X){let Y=await z.getRPCUrl(v);return(await M(Y)).getAccount(X)}async function I(){let X=await B(),[Y]=await X?.getAccounts()||[];return Y?.address}async function q(){let X=await B(),[Y]=await X?.getAccounts()||[];if(!Y?.pubkey)throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");return n.base64.encode(Y?.pubkey)}async function E(X){let Y=await B(),Q=await I(),J=await z.getRPCUrl(v);if(!(Y&&Q))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");return await(await j(J,Y)).sign(Q,X.msgs,X.fee,X.memo,{accountNumber:BigInt(X.accountNumber),chainId:X.chainId,sequence:X.sequence})}async function K(X){let Y=await B(),Q=await I(),J=await z.getRPCUrl(v);if(!(Y&&Q))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");let N=await(await j(J,Y)).signAndBroadcast(Q,X.msgs,X.fee,X.memo);if(N.code!==0)throw new z.SwapKitError("core_swap_transaction_error",{code:N.code,message:N.rawLog});return N.transactionHash}async function k({recipient:X,assetValue:Y,memo:Q="",feeRate:J,feeOptionKey:O=z.FeeOption.Fast,sweep:N}){let C=await B(),V=await I();if(!(C&&V))throw new z.SwapKitError("toolbox_cosmos_signer_not_defined");let u=await z.getRPCUrl(v),d=z.AssetValue.from({chain:v}),Wf=s(d),Bf=F0(J||(await rf(v,gf[v]))[O],Wf,v),o=await j(u,C),m=w(Y.symbol),zf=[{amount:(N?i({assetValue:Y,balances:await Kf(v)(V),denom:m,feeAmount:_f(Bf.amount,m)}):Y).getBaseValue("string"),denom:m}],{transactionHash:Gf}=await o.sendTokens(V,X,zf,Bf,Q);return Gf}return{createPrivateKeyFromPhrase:K0(x),createTransaction:Xf,fetchFeeRateFromSwapKit:Sf,getAccount:L,getAddress:I,getBalance:async(X,Y)=>{let Q=await Kf(v)(X),J=await Promise.all(Q.filter(({denom:O})=>O&&!O.includes("IBC/")&&!([z.Chain.THORChain,z.Chain.Maya].includes(v)&&O.split("-").length>2)).map(({denom:O,amount:N})=>{let C=[z.Chain.THORChain,z.Chain.Maya].includes(v)&&(O.includes("/")||O.includes("˜"))?`${v}.${O}`:O;return Yf(C,N)}));if(J.length===0)return[z.AssetValue.from({chain:v})];return J},getBalanceAsDenoms:Kf(v),getFees:()=>rf(v,gf[v]),getPubKey:q,getSignerFromPhrase:({phrase:X,derivationPath:Y})=>Uf({derivationPath:z.derivationPathToString(Y),index:f,phrase:X,prefix:_}),getSignerFromPrivateKey:async(X)=>{let Y=await import("@cosmjs/proto-signing");return(Y.DirectSecp256k1Wallet??Y.default?.DirectSecp256k1Wallet).fromKey(X,_)},signAndBroadcastTransaction:K,signTransaction:E,transfer:k,validateAddress:sf(v),verifySignature:af(L)}}async function O0(v,H){try{let f=(await kf.SwapKitApi.getGasRate()).find((x)=>x.chainId===v)?.value;return f?Number.parseFloat(f):H}catch{return H}}function N0({assetValue:{chain:v}}){return z.AssetValue.from({chain:v,value:E0(v)})}async function rf(v,H){let{chainId:_,baseDecimal:f}=z.getChainConfig(v),x=await Sf(_,H);return{average:z.SwapKitNumber.fromBigInt(BigInt(x),f),fast:z.SwapKitNumber.fromBigInt(BigInt(z.applyFeeMultiplier(x,z.FeeOption.Fast,!0)),f),fastest:z.SwapKitNumber.fromBigInt(BigInt(z.applyFeeMultiplier(x,z.FeeOption.Fastest,!0)),f)}}function F0(v,H,_){return{amount:[{amount:typeof v==="number"?v.toString():v.getBaseValue("string"),denom:H}],gas:D(_).gas}}function E0(v){return{[z.Chain.Cosmos]:0.007,[z.Chain.Kujira]:0.02,[z.Chain.Noble]:0.01,[z.Chain.THORChain]:0.02,[z.Chain.Maya]:0.02,[z.Chain.Harbor]:0.02}[v]||0}function sf(v){let H=z.CosmosChainPrefixes[v];return function(f){if(!f.startsWith(H))return!1;try{let{prefix:x,words:T}=n.bech32.decode(f);return n.bech32.encode(x,T)===f.toLocaleLowerCase()}catch{return!1}}}function Kf(v){return async function(_){let f=await z.getRPCUrl(v);return(await(await M(f)).getAllBalances(_)).map((L)=>({...L,denom:L.denom.includes("/")?L.denom.toUpperCase():L.denom}))}}function K0(v){return async function(_){let f=await import("@cosmjs/crypto"),x=f.stringToPath??f.default?.stringToPath,T=f.Slip10Curve??f.default?.Slip10Curve,B=f.Slip10??f.default?.Slip10,L=f.EnglishMnemonic??f.default?.EnglishMnemonic,I=f.Bip39??f.default?.Bip39,q=new L(_),E=await I.mnemonicToSeed(q),{privkey:K}=B.derivePath(T.Secp256k1,E,x(v));return K}}var n,z,kf,Tf,gf;var yf=A(()=>{e();n=require("@scure/base"),z=require("@swapkit/helpers"),kf=require("@swapkit/helpers/api"),Tf=require("ts-pattern");gf={[z.Chain.Cosmos]:1000,[z.Chain.Kujira]:1000,[z.Chain.Noble]:1000,[z.Chain.THORChain]:5000000,[z.Chain.Maya]:5000000,[z.Chain.Harbor]:5000000}});function U0({prefix:v,derivationPath:H}){return async function(f,x=0){let T=await import("@cosmjs/amino"),B=T.Secp256k1HdWallet??T.default?.Secp256k1HdWallet,L=await import("@cosmjs/crypto"),I=L.stringToPath??L.default?.stringToPath;return B.fromMnemonic(f,{hdPaths:[I(`${H}/${x}`)],prefix:v})}}function k0(v){return p.base64.encode(v)}function S0(v,H){return async function({wallet:f,tx:x}){let{msgs:T,accountNumber:B,sequence:L,chainId:I,fee:q,memo:E}=typeof x==="string"?JSON.parse(x):x,K=(await f.getAccounts())?.[0]?.address||"",k=await h(v,H),X=await b(),Y=await Qf(f,{aminoTypes:k,registry:X}),Q=[];for(let N of T){let C=await l(N,v);Q.push(C)}let{signatures:[J]}=await Y.sign(K,Q,q,E,{accountNumber:BigInt(B),chainId:I,sequence:L});return{bodyBytes:await ff({chain:v,memo:E,msgs:T.map($)}),signature:k0(J)}}}function C0({prefix:v,chain:H}){return async function(f,x,T,B,L){let I=await F.getRPCUrl(H),{encodeSecp256k1Pubkey:q,pubkeyToAddress:E}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:K}=(await import("@cosmjs/stargate")).default,{sequence:k,fee:X}=JSON.parse(f),Y=await ef(T,B),Q=x.map((N)=>[E(q(p.base64.decode(N.pubKey)),v),p.base64.decode(N.signature)]),J=await M(I),{transactionHash:O}=await J.broadcastTx(K(Y,k,X,L,new Map(Q)));return O}}async function ef(v,H,_=!0){let{createMultisigThresholdPubkey:f,encodeSecp256k1Pubkey:x}=(await import("@cosmjs/amino")).default;return f(v.map((T)=>x(p.base64.decode(T))),H,_)}function A0(v){return p.base64.decode(v)}async function R0({privateKey:v,message:H}){let{Secp256k1:_}=(await import("@cosmjs/crypto")).default,f=await _.createSignature(p.base64.decode(H),v);return p.base64.encode(Buffer.concat([f.r(32),f.s(32)]))}function Cf({chain:v,...H}){let{isStagenet:_}=F.SKConfig.get("envs"),f=`${_?"s":""}${F.CosmosChainPrefixes[v]}`,x="index"in H?H.index||0:0,T="derivationPath"in H&&H.derivationPath?H.derivationPath:F.updateDerivationPath(F.NetworkDerivationPath[v],{index:x}),B=xf({chain:v,...H}),L=D(v),I;function q(){return I??=Hf.match(H).with({phrase:Hf.P.string},({phrase:Q})=>B.getSignerFromPhrase({derivationPath:T,phrase:Q})).with({signer:Hf.P.any},({signer:Q})=>Promise.resolve(Q)).otherwise(()=>Promise.resolve(void 0)),I}async function E(){let Q=await F.getRPCUrl(v),J=await q();if(!J)throw new F.SwapKitError("toolbox_cosmos_no_signer");let O=await b(),N=await h(v,f),C=await j(Q,J,{aminoTypes:N,registry:O});return{signer:J,signingClient:C}}async function K({fee:Q,memo:J,msgs:O}){let{signer:N,signingClient:C}=await E(),V=(await N.getAccounts())?.[0]?.address;if(!V)throw new F.SwapKitError("toolbox_cosmos_signer_not_defined");let u=await C.signAndBroadcast(V,O,Q,J);if(u.code!==0)throw new F.SwapKitError("core_swap_transaction_error",{code:u.code,message:u.rawLog});return u.transactionHash}async function k(){let Q=await a(v);return{[F.FeeOption.Average]:Q,[F.FeeOption.Fast]:Q,[F.FeeOption.Fastest]:Q}}async function X({assetValue:Q,memo:J="",recipient:O,sweep:N}){let{TxRaw:C}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:V,signingClient:u}=await E(),d=(await V.getAccounts())?.[0]?.address;if(!d)throw new F.SwapKitError("toolbox_cosmos_no_signer");let Wf="signAmino"in V,Bf=N?await Lf({assetValue:Q,sender:d}):Q,o=vf({assetValue:Bf,memo:J,recipient:O,sender:d});if(Wf){let zf=await l(o,v),{signatures:Gf,authInfoBytes:T0}=await u.sign(d,[zf],L,J),x0=C.encode({authInfoBytes:T0,bodyBytes:await ff({chain:v,memo:J,msgs:[o].map($)}),signatures:Gf}).finish();return(await u.broadcastTx(x0)).transactionHash}let m=$(o),Rf=await l(m,v);return K({fee:L,memo:J,msgs:[Rf]})}async function Y(Q){let{signer:J,signingClient:O}=await E(),N=(await J.getAccounts())?.[0]?.address;if(!N)throw new F.SwapKitError("toolbox_cosmos_signer_not_defined");return O.sign(N,Q.msgs,Q.fee,Q.memo,{accountNumber:BigInt(Q.accountNumber),chainId:Q.chainId,sequence:Q.sequence})}return{...B,broadcastMultisigTx:C0({chain:v,prefix:f}),buildAminoMsg:vf,buildEncodedTxBody:ff,convertToSignable:l,createDefaultAminoTypes:()=>h(v,f),createDefaultRegistry:b,createMultisig:ef,createTransaction:Ff,deposit:X,getFees:k,importSignature:A0,parseAminoMessageForDirectSigning:$,pubkeyToAddress:async(Q)=>{let{pubkeyToAddress:J}=(await import("@cosmjs/amino")).default;return J(Q,f)},secp256k1HdWalletFromMnemonic:U0({derivationPath:F.derivationPathToString(T),prefix:f}),signAndBroadcastTransaction:K,signMultisigTx:S0(v,f),signTransaction:Y,signWithPrivateKey:R0,transfer:X}}var p,F,Hf;var Af=A(()=>{Ef();e();yf();p=require("@scure/base"),F=require("@swapkit/helpers"),Hf=require("ts-pattern")});var c,D0=(v,H)=>{switch(v){case c.Chain.Cosmos:case c.Chain.Kujira:case c.Chain.Noble:return xf({chain:v,...H});case c.Chain.Maya:case c.Chain.THORChain:return Cf({chain:v,...H});default:throw new c.SwapKitError("toolbox_cosmos_not_supported",{chain:v})}};var f0=A(()=>{yf();Af();c=require("@swapkit/helpers");yf();Af()});var M0={};uf(M0,{verifySignature:()=>af,transferMsgAmino:()=>Of,toBase64:()=>Z0,resolveThorchainSweepAssetValue:()=>Lf,parseAminoMessageForDirectSigning:()=>$,getThorchainNativeFee:()=>a,getSweepAssetValue:()=>i,getSignerFromPrivateKey:()=>J0,getSignerFromPhrase:()=>Uf,getMsgSendDenom:()=>w,getFeeRateFromSwapKit:()=>O0,getFeeAmountForDenom:()=>_f,getDenomWithChain:()=>s,getDefaultChainFee:()=>D,getCosmosToolbox:()=>D0,getCosmosAddressValidator:()=>sf,getAssetFromDenom:()=>Yf,fromBase64:()=>I0,fetchFeeRateFromSwapKit:()=>Sf,estimateTransactionFee:()=>N0,depositMsgAmino:()=>Nf,createTransaction:()=>Ff,createThorchainToolbox:()=>Cf,createStargateClient:()=>M,createSigningStargateClient:()=>j,createOfflineStargateClient:()=>Qf,createDefaultRegistry:()=>b,createDefaultAminoTypes:()=>h,createCosmosToolbox:()=>xf,cosmosCreateTransaction:()=>Xf,convertToSignable:()=>l,buildTransferTx:()=>bf,buildEncodedTxBody:()=>ff,buildDepositTx:()=>df,buildAminoMsg:()=>vf,bech32ToBase64:()=>g,base64ToBech32:()=>r,YUM_KUJIRA_FACTORY_DENOM:()=>hf,USK_KUJIRA_FACTORY_DENOM:()=>If,THORCHAIN_GAS_VALUE:()=>Y0,MAYA_GAS_VALUE:()=>q0,DEFAULT_NOBLE_FEE_MAINNET:()=>nf,DEFAULT_KUJI_FEE_MAINNET:()=>$f,DEFAULT_COSMOS_FEE_MAINNET:()=>lf});module.exports=W0(M0);var V0=A(()=>{Ef();f0();e()});V0();
|
package/dist/src/cosmos/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{ga as u}from"../../chunk-xbdjxeqd.js";import{base64 as M,bech32 as E}from"@scure/base";import{SwapKitError as Eo}from"@swapkit/helpers";function b(o){return M.encode(Uint8Array.from(E.fromWords(E.decode(o).words)))}function l(o,t="thor"){return E.encode(t,E.toWords(M.decode(o)))}function Qt(o){return M.encode(o)}function St(o){if(!o.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new Eo("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return M.decode(o)}import{AssetValue as ao,Chain as h,getChainConfig as Lo,getRPCUrl as co,SwapKitError as ot}from"@swapkit/helpers";import{AssetValue as po,Chain as x,getChainConfig as L,getRPCUrl as Mo,RequestClient as bo,SKConfig as Bo,SwapKitError as V,SwapKitNumber as fo}from"@swapkit/helpers";var Io="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",lo="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",Vo={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},go={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},so={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};function j(o){switch(o){case x.Maya:return{amount:[],gas:"10000000000"};case x.THORChain:return{amount:[],gas:"500000000"};case x.Kujira:return go;case x.Noble:return so;default:return Vo}}async function g(o){let{isStagenet:t}=Bo.get("envs"),p=Bo.get("thornodeUrls"),r=o===x.Maya,y=`${r?t?p.MAYA_STAGENET:p.MAYA:t?p.THOR_STAGENET:p.THOR}/${r?"mayachain":"thorchain"}/constants`,c=L(o).baseDecimal;try{let{int_64_values:{NativeTransactionFee:w}}=await bo.get(y);if(!Number.isInteger(w)||w<=0)throw new V("toolbox_cosmos_invalid_fee",{nativeFee:w.toString()});return fo.fromBigInt(BigInt(w),c)}catch{let w=r?10000000000n:2000000n;return fo.fromBigInt(w,c)}}var Z=(o,t=!1)=>{if(t)return o.toLowerCase();switch(o){case"uUSK":case"USK":return Io;case"uYUM":case"YUM":return lo;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":case"NOBLE":return"uusdc";default:return o}},s=({symbol:o,chain:t})=>{if(t===x.Maya)return(o.toUpperCase()!=="CACAO"?o:`${x.Maya}.${o}`).toUpperCase();if(t===x.THORChain)return(["RUNE","TCY","RUJI"].includes(o.toUpperCase())?`${x.THORChain}.${o}`:o).toUpperCase();return Z(o,!1)};async function G(o){let t=await import("@cosmjs/stargate"),p=t.StargateClient??t.default?.StargateClient,r=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return p.connect({headers:r,url:o})}async function J(o,t,p={}){let r=await import("@cosmjs/stargate"),f=r.SigningStargateClient??r.default?.SigningStargateClient,y=r.GasPrice??r.default?.GasPrice,c=typeof p==="string"?p:"0.0003uatom",w=typeof p==="string"?{}:p;return f.connectWithSigner(o,t,{gasPrice:y.fromString(c),...w})}async function Ro(o,t){let p=await import("@cosmjs/stargate");return(p.SigningStargateClient??p.default?.SigningStargateClient).offline(o,t)}var ho=(o)=>{switch(o){case x.Maya:case x.THORChain:return"/types.MsgSend";case x.Cosmos:case x.Kujira:case x.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new V("toolbox_cosmos_not_supported",{chain:o})}};async function _o({sender:o,recipient:t,assetValue:p,memo:r="",feeRate:f,sequence:y,accountNumber:c,sweep:w}){let{chain:k,chainId:R}=p,B=await Mo(k),I=await G(B),_=await I.getAccount(o);if(!_)throw new V("toolbox_cosmos_account_not_found",{sender:o});let n=po.from({chain:k}),W=Z(n.symbol),T=j(k),v=W&&f?{amount:[{amount:f.toString(),denom:W}],gas:T.gas}:T,H=Z(p.symbol),C={amount:[{amount:(w?K({assetValue:p,balances:await I.getAllBalances(o),denom:H,feeAmount:yo(v.amount,H)}):p).getBaseValue("string"),denom:H}],fromAddress:o,toAddress:t};return{accountNumber:c??Number(_.accountNumber),chainId:R,fee:v,memo:r,msgs:[{typeUrl:ho(k),value:C}],sequence:y??_.sequence}}function yo(o,t){let p=t.toLowerCase();return o.reduce((r,f)=>f.denom.toLowerCase()===p?r+BigInt(f.amount):r,0n)}function K({assetValue:o,balances:t,denom:p,feeAmount:r=0n}){let f=p.toLowerCase(),y=t.find(({denom:k})=>k.toLowerCase()===f),c=BigInt(y?.amount??"0"),w=c-r;if(w<=0n)throw new V("toolbox_sweep_amount_too_low",{asset:o.toString(),balance:c.toString(),fee:r.toString()});return o.set(fo.fromBigInt(w,o.decimal))}var eo={atom:{chain:x.Cosmos,decimals:L(x.Cosmos).baseDecimal},cacao:{chain:x.Maya,decimals:10},kuji:{chain:x.Kujira,decimals:L(x.Kujira).baseDecimal},maya:{asset:`${x.Maya}.${x.Maya}`,decimals:4},rune:{chain:x.THORChain,decimals:L(x.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:L(x.THORChain).baseDecimal},uatom:{chain:x.Cosmos,decimals:L(x.Cosmos).baseDecimal},ukuji:{chain:x.Kujira,decimals:L(x.Kujira).baseDecimal},usdc:{chain:x.Noble,decimals:L(x.Noble).baseDecimal},uusdc:{chain:x.Noble,decimals:L(x.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:L(x.THORChain).baseDecimal},[Io.toLowerCase()]:{asset:`${x.Kujira}.USK`,decimals:L(x.Kujira).baseDecimal}},$o=(o,t)=>{let p=eo[o.toLowerCase()];if(!p)return po.from({asset:o,fromBaseDecimal:8,value:t});let{chain:r,asset:f,decimals:y}=p,c=r?{chain:r}:{asset:f};return po.from({...c,fromBaseDecimal:y,value:t})};import{Chain as Co}from"@swapkit/helpers";async function Y(){let{$root:o}=await import("../../chunk-btth5bse.js"),t=await import("@cosmjs/proto-signing"),p=await import("@cosmjs/stargate"),r=t.Registry??t.default?.Registry,f=p.defaultRegistryTypes??p.default?.defaultRegistryTypes;return new r([...f,["/types.MsgSend",o.types.MsgSend],["/types.MsgDeposit",o.types.MsgDeposit]])}async function Q(o,t=o===Co.THORChain?"thor":"maya"){let p=await import("@cosmjs/stargate"),r=p.AminoTypes??p.default?.AminoTypes,f=o===Co.THORChain?"thorchain":"mayachain";return new r({"/types.MsgDeposit":{aminoType:`${f}/MsgDeposit`,fromAmino:({signer:y,...c})=>({...c,signer:b(y)}),toAmino:({signer:y,...c})=>({...c,signer:l(y,t)})},"/types.MsgSend":{aminoType:`${f}/MsgSend`,fromAmino:({from_address:y,to_address:c,...w})=>({...w,fromAddress:b(y),toAddress:b(c)}),toAmino:({fromAddress:y,toAddress:c,...w})=>({...w,from_address:l(y,t),to_address:l(c,t)})}})}var Ot=j(h.THORChain).gas,Nt=j(h.Maya).gas,jo=({sender:o,recipient:t,assetValue:p})=>{return{type:`${p.chain===h.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:p.getBaseValue("string"),denom:Z(p.symbol,!0)}],from_address:o,to_address:t}}},io=({sender:o,assetValue:t,memo:p=""})=>{return{type:`${t.chain===h.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:t.getBaseValue("string"),asset:s(t)}],memo:p,signer:o}}},wo=({sender:o,recipient:t,assetValue:p,memo:r})=>{return!t?io({assetValue:p,memo:r,sender:o}):jo({assetValue:p,recipient:t,sender:o})},S=async(o,t)=>{return(await Q(t)).fromAmino(o)},zo=async({rpcUrl:o,sender:t})=>{let r=await(await G(o)).getAccount(t);if(!r)throw new ot("toolbox_cosmos_account_not_found",{sender:t});return r};async function Go(o){let{assetValue:t,recipient:p,memo:r,sender:f,asSignable:y,asAminoMessage:c}=o,w=o.sweep?await To({assetValue:t,sender:f}):t;if(p)return tt({asAminoMessage:c,asSignable:y,assetValue:w,memo:r,recipient:p,sender:f});return rt({asAminoMessage:c,asSignable:y,assetValue:w,memo:r,sender:f})}async function To({assetValue:o,sender:t}){let p=o.chain,r=await co(p),y=await(await G(r)).getAllBalances(t),c=o.isGasAsset?(await g(p)).getBaseValue("bigint"):0n;return K({assetValue:o,balances:y,denom:Z(o.symbol,!0),feeAmount:c})}async function tt({sender:o,recipient:t,assetValue:p,memo:r="",asSignable:f=!0,asAminoMessage:y=!1,sequence:c,accountNumber:w}){let k=p.chain,R=await co(k),B=await zo({rpcUrl:R,sender:o}),{chainId:I}=Lo(k),_=jo({assetValue:p,recipient:t,sender:o}),n=f?await S(y?_:X(_),k):_;return{accountNumber:w||Number(B.accountNumber),chainId:I,fee:j(k),memo:r,msgs:[n],sequence:c||B.sequence}}async function rt({sender:o,assetValue:t,memo:p="",asSignable:r=!0,asAminoMessage:f=!1,sequence:y,accountNumber:c}){let w=t.chain,k=await co(w),R=await zo({rpcUrl:k,sender:o}),{chainId:B}=Lo(w),I=io({assetValue:t,memo:p,sender:o}),_=r?await S(f?I:X(I),w):I;return{accountNumber:c||Number(R.accountNumber),chainId:B,fee:j(w),memo:p,msgs:[_],sequence:y||R.sequence}}function X(o){if(o.type==="thorchain/MsgSend"||o.type==="mayachain/MsgSend")return o;return{...o,value:{...o.value,coins:o.value.coins.map((t)=>{let p=ao.from({asset:t.asset}),r=(p.isSynthetic?p.symbol.split("/")?.[1]:p.symbol)?.toUpperCase(),f=(p.isSynthetic?p.symbol.split("/")?.[0]:p.chain)?.toUpperCase();return{...t,asset:{chain:f,symbol:r,synth:p.isSynthetic,ticker:p.ticker}}})}}}async function e({chain:o,memo:t,msgs:p}){let r=await Y(),f=await Q(o),y={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:t,messages:p.map((c)=>f.fromAmino(c))}};return r.encode(y)}import{Chain as U,SwapKitError as it}from"@swapkit/helpers";import{base64 as Wo,bech32 as no}from"@scure/base";import{AssetValue as vo,applyFeeMultiplier as Zo,Chain as $,CosmosChainPrefixes as Yo,DerivationPath as pt,derivationPathToString as Qo,FeeOption as Ho,getChainConfig as ft,getRPCUrl as O,NetworkDerivationPath as yt,SwapKitError as D,SwapKitNumber as xo,updateDerivationPath as ct}from"@swapkit/helpers";import{SwapKitApi as Do}from"@swapkit/helpers/api";import{match as wt,P as So}from"ts-pattern";async function qo(o,t){try{let r=(await Do.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}async function Xo({phrase:o,prefix:t,...p}){let r=await import("@cosmjs/proto-signing"),f=await import("@cosmjs/crypto"),y=r.DirectSecp256k1HdWallet??r.default?.DirectSecp256k1HdWallet,c=f.stringToPath??f.default?.stringToPath,w="derivationPath"in p?p.derivationPath:`${pt[p.chain]}/${p.index}`;return await y.fromMnemonic(o,{hdPaths:[c(w)],prefix:t})}async function or({privateKey:o,prefix:t}){let p=await import("@cosmjs/proto-signing");return(p.DirectSecp256k1Wallet??p.default?.DirectSecp256k1Wallet).fromKey(o,t)}var Po={[$.Cosmos]:1000,[$.Kujira]:1000,[$.Noble]:1000,[$.THORChain]:5000000,[$.Maya]:5000000,[$.Harbor]:5000000};function Tt(o){return async function({signature:p,message:r,address:f}){let y=await o(f);if(!y?.pubkey)throw new D("toolbox_cosmos_verify_signature_no_pubkey");let c=await import("@cosmjs/crypto"),w=c.Secp256k1Signature??c.default?.Secp256k1Signature,k=c.Secp256k1??c.default?.Secp256k1,R=w.fromFixedLength(Wo.decode(p));return k.verifySignature(R,Wo.decode(r),y.pubkey.value)}}function a({chain:o,...t}){let p=Yo[o],r="index"in t?t.index||0:0,f=Qo("derivationPath"in t&&t.derivationPath?t.derivationPath:ct(yt[o],{index:r})),y;async function c(){if(y)return y;return y=await wt(t).with({phrase:So.string},({phrase:n})=>Xo({derivationPath:f,phrase:n,prefix:p})).with({signer:So.any},({signer:n})=>n).otherwise(()=>{return}),y}async function w(n){let W=await O(o);return(await G(W)).getAccount(n)}async function k(){let n=await c(),[W]=await n?.getAccounts()||[];return W?.address}async function R(){let n=await c(),[W]=await n?.getAccounts()||[];if(!W?.pubkey)throw new D("toolbox_cosmos_signer_not_defined");return Wo.encode(W?.pubkey)}async function B(n){let W=await c(),T=await k(),v=await O(o);if(!(W&&T))throw new D("toolbox_cosmos_signer_not_defined");return await(await J(v,W)).sign(T,n.msgs,n.fee,n.memo,{accountNumber:BigInt(n.accountNumber),chainId:n.chainId,sequence:n.sequence})}async function I(n){let W=await c(),T=await k(),v=await O(o);if(!(W&&T))throw new D("toolbox_cosmos_signer_not_defined");let m=await(await J(v,W)).signAndBroadcast(T,n.msgs,n.fee,n.memo);if(m.code!==0)throw new D("core_swap_transaction_error",{code:m.code,message:m.rawLog});return m.transactionHash}async function _({recipient:n,assetValue:W,memo:T="",feeRate:v,feeOptionKey:H=Ho.Fast,sweep:m}){let C=await c(),i=await k();if(!(C&&i))throw new D("toolbox_cosmos_signer_not_defined");let z=await O(o),P=vo.from({chain:o}),oo=s(P),A=nt(v||(await Jo(o,Po[o]))[H],oo,o),q=await J(z,C),F=Z(W.symbol),to=[{amount:(m?K({assetValue:W,balances:await ko(o)(i),denom:F,feeAmount:yo(A.amount,F)}):W).getBaseValue("string"),denom:F}],{transactionHash:ro}=await q.sendTokens(i,n,to,A,T);return ro}return{createPrivateKeyFromPhrase:Wt(f),createTransaction:_o,fetchFeeRateFromSwapKit:qo,getAccount:w,getAddress:k,getBalance:async(n,W)=>{let T=await ko(o)(n),v=await Promise.all(T.filter(({denom:H})=>H&&!H.includes("IBC/")&&!([$.THORChain,$.Maya].includes(o)&&H.split("-").length>2)).map(({denom:H,amount:m})=>{let C=[$.THORChain,$.Maya].includes(o)&&(H.includes("/")||H.includes("˜"))?`${o}.${H}`:H;return $o(C,m)}));if(v.length===0)return[vo.from({chain:o})];return v},getBalanceAsDenoms:ko(o),getFees:()=>Jo(o,Po[o]),getPubKey:R,getSignerFromPhrase:({phrase:n,derivationPath:W})=>Xo({derivationPath:Qo(W),index:r,phrase:n,prefix:p}),getSignerFromPrivateKey:async(n)=>{let W=await import("@cosmjs/proto-signing");return(W.DirectSecp256k1Wallet??W.default?.DirectSecp256k1Wallet).fromKey(n,p)},signAndBroadcastTransaction:I,signTransaction:B,transfer:_,validateAddress:kt(o),verifySignature:Tt(w)}}async function tr(o,t){try{let r=(await Do.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}function rr({assetValue:{chain:o}}){return vo.from({chain:o,value:xt(o)})}async function Jo(o,t){let{chainId:p,baseDecimal:r}=ft(o),f=await qo(p,t);return{average:xo.fromBigInt(BigInt(f),r),fast:xo.fromBigInt(BigInt(Zo(f,Ho.Fast,!0)),r),fastest:xo.fromBigInt(BigInt(Zo(f,Ho.Fastest,!0)),r)}}function nt(o,t,p){return{amount:[{amount:typeof o==="number"?o.toString():o.getBaseValue("string"),denom:t}],gas:j(p).gas}}function xt(o){return{[$.Cosmos]:0.007,[$.Kujira]:0.02,[$.Noble]:0.01,[$.THORChain]:0.02,[$.Maya]:0.02,[$.Harbor]:0.02}[o]||0}function kt(o){let t=Yo[o];return function(r){if(!r.startsWith(t))return!1;try{let{prefix:f,words:y}=no.decode(r);return no.encode(f,y)===r.toLocaleLowerCase()}catch{return!1}}}function ko(o){return async function(p){let r=await O(o);return(await(await G(r)).getAllBalances(p)).map((w)=>({...w,denom:w.denom.includes("/")?w.denom.toUpperCase():w.denom}))}}function Wt(o){return async function(p){let r=await import("@cosmjs/crypto"),f=r.stringToPath??r.default?.stringToPath,y=r.Slip10Curve??r.default?.Slip10Curve,c=r.Slip10??r.default?.Slip10,w=r.EnglishMnemonic??r.default?.EnglishMnemonic,k=r.Bip39??r.default?.Bip39,R=new w(p),B=await k.mnemonicToSeed(R),{privkey:I}=c.derivePath(y.Secp256k1,B,f(o));return I}}import{base64 as d}from"@scure/base";import{CosmosChainPrefixes as vt,derivationPathToString as Ht,FeeOption as mo,getRPCUrl as Ko,NetworkDerivationPath as mt,SKConfig as ut,SwapKitError as N,updateDerivationPath as Bt}from"@swapkit/helpers";import{match as It,P as Fo}from"ts-pattern";function Rt({prefix:o,derivationPath:t}){return async function(r,f=0){let y=await import("@cosmjs/amino"),c=y.Secp256k1HdWallet??y.default?.Secp256k1HdWallet,w=await import("@cosmjs/crypto"),k=w.stringToPath??w.default?.stringToPath;return c.fromMnemonic(r,{hdPaths:[k(`${t}/${f}`)],prefix:o})}}function _t(o){return d.encode(o)}function $t(o,t){return async function({wallet:r,tx:f}){let{msgs:y,accountNumber:c,sequence:w,chainId:k,fee:R,memo:B}=typeof f==="string"?JSON.parse(f):f,I=(await r.getAccounts())?.[0]?.address||"",_=await Q(o,t),n=await Y(),W=await Ro(r,{aminoTypes:_,registry:n}),T=[];for(let m of y){let C=await S(m,o);T.push(C)}let{signatures:[v]}=await W.sign(I,T,R,B,{accountNumber:BigInt(c),chainId:k,sequence:w});return{bodyBytes:await e({chain:o,memo:B,msgs:y.map(X)}),signature:_t(v)}}}function Ct({prefix:o,chain:t}){return async function(r,f,y,c,w){let k=await Ko(t),{encodeSecp256k1Pubkey:R,pubkeyToAddress:B}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:I}=(await import("@cosmjs/stargate")).default,{sequence:_,fee:n}=JSON.parse(r),W=await Oo(y,c),T=f.map((m)=>[B(R(d.decode(m.pubKey)),o),d.decode(m.signature)]),v=await G(k),{transactionHash:H}=await v.broadcastTx(I(W,_,n,w,new Map(T)));return H}}async function Oo(o,t,p=!0){let{createMultisigThresholdPubkey:r,encodeSecp256k1Pubkey:f}=(await import("@cosmjs/amino")).default;return r(o.map((y)=>f(d.decode(y))),t,p)}function Lt(o){return d.decode(o)}async function jt({privateKey:o,message:t}){let{Secp256k1:p}=(await import("@cosmjs/crypto")).default,r=await p.createSignature(d.decode(t),o);return d.encode(Buffer.concat([r.r(32),r.s(32)]))}function No({chain:o,...t}){let{isStagenet:p}=ut.get("envs"),r=`${p?"s":""}${vt[o]}`,f="index"in t?t.index||0:0,y="derivationPath"in t&&t.derivationPath?t.derivationPath:Bt(mt[o],{index:f}),c=a({chain:o,...t}),w=j(o),k;function R(){return k??=It(t).with({phrase:Fo.string},({phrase:T})=>c.getSignerFromPhrase({derivationPath:y,phrase:T})).with({signer:Fo.any},({signer:T})=>Promise.resolve(T)).otherwise(()=>Promise.resolve(void 0)),k}async function B(){let T=await Ko(o),v=await R();if(!v)throw new N("toolbox_cosmos_no_signer");let H=await Y(),m=await Q(o,r),C=await J(T,v,{aminoTypes:m,registry:H});return{signer:v,signingClient:C}}async function I({fee:T,memo:v,msgs:H}){let{signer:m,signingClient:C}=await B(),i=(await m.getAccounts())?.[0]?.address;if(!i)throw new N("toolbox_cosmos_signer_not_defined");let z=await C.signAndBroadcast(i,H,T,v);if(z.code!==0)throw new N("core_swap_transaction_error",{code:z.code,message:z.rawLog});return z.transactionHash}async function _(){let T=await g(o);return{[mo.Average]:T,[mo.Fast]:T,[mo.Fastest]:T}}async function n({assetValue:T,memo:v="",recipient:H,sweep:m}){let{TxRaw:C}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:i,signingClient:z}=await B(),P=(await i.getAccounts())?.[0]?.address;if(!P)throw new N("toolbox_cosmos_no_signer");let oo="signAmino"in i,A=m?await To({assetValue:T,sender:P}):T,q=wo({assetValue:A,memo:v,recipient:H,sender:P});if(oo){let to=await S(q,o),{signatures:ro,authInfoBytes:Uo}=await z.sign(P,[to],w,v),Ao=C.encode({authInfoBytes:Uo,bodyBytes:await e({chain:o,memo:v,msgs:[q].map(X)}),signatures:ro}).finish();return(await z.broadcastTx(Ao)).transactionHash}let F=X(q),uo=await S(F,o);return I({fee:w,memo:v,msgs:[uo]})}async function W(T){let{signer:v,signingClient:H}=await B(),m=(await v.getAccounts())?.[0]?.address;if(!m)throw new N("toolbox_cosmos_signer_not_defined");return H.sign(m,T.msgs,T.fee,T.memo,{accountNumber:BigInt(T.accountNumber),chainId:T.chainId,sequence:T.sequence})}return{...c,broadcastMultisigTx:Ct({chain:o,prefix:r}),buildAminoMsg:wo,buildEncodedTxBody:e,convertToSignable:S,createDefaultAminoTypes:()=>Q(o,r),createDefaultRegistry:Y,createMultisig:Oo,createTransaction:Go,deposit:n,getFees:_,importSignature:Lt,parseAminoMessageForDirectSigning:X,pubkeyToAddress:async(T)=>{let{pubkeyToAddress:v}=(await import("@cosmjs/amino")).default;return v(T,r)},secp256k1HdWalletFromMnemonic:Rt({derivationPath:Ht(y),prefix:r}),signAndBroadcastTransaction:I,signMultisigTx:$t(o,r),signTransaction:W,signWithPrivateKey:jt,transfer:n}}var Hr=(o,t)=>{switch(o){case U.Cosmos:case U.Kujira:case U.Noble:return a({chain:o,...t});case U.Maya:case U.THORChain:return No({chain:o,...t});default:throw new it("toolbox_cosmos_not_supported",{chain:o})}};export{Tt as verifySignature,jo as transferMsgAmino,Qt as toBase64,To as resolveThorchainSweepAssetValue,X as parseAminoMessageForDirectSigning,g as getThorchainNativeFee,K as getSweepAssetValue,or as getSignerFromPrivateKey,Xo as getSignerFromPhrase,Z as getMsgSendDenom,tr as getFeeRateFromSwapKit,yo as getFeeAmountForDenom,s as getDenomWithChain,j as getDefaultChainFee,Hr as getCosmosToolbox,kt as getCosmosAddressValidator,$o as getAssetFromDenom,St as fromBase64,qo as fetchFeeRateFromSwapKit,rr as estimateTransactionFee,io as depositMsgAmino,Go as createTransaction,No as createThorchainToolbox,G as createStargateClient,J as createSigningStargateClient,Ro as createOfflineStargateClient,Y as createDefaultRegistry,Q as createDefaultAminoTypes,a as createCosmosToolbox,_o as cosmosCreateTransaction,S as convertToSignable,tt as buildTransferTx,e as buildEncodedTxBody,rt as buildDepositTx,wo as buildAminoMsg,b as bech32ToBase64,l as base64ToBech32,lo as YUM_KUJIRA_FACTORY_DENOM,Io as USK_KUJIRA_FACTORY_DENOM,Ot as THORCHAIN_GAS_VALUE,Nt as MAYA_GAS_VALUE,so as DEFAULT_NOBLE_FEE_MAINNET,go as DEFAULT_KUJI_FEE_MAINNET,Vo as DEFAULT_COSMOS_FEE_MAINNET};
|
|
1
|
+
import{ga as u}from"../../chunk-xbdjxeqd.js";import{base64 as b,bech32 as E}from"@scure/base";import{SwapKitError as Eo}from"@swapkit/helpers";function M(o){return b.encode(Uint8Array.from(E.fromWords(E.decode(o).words)))}function l(o,t="thor"){return E.encode(t,E.toWords(b.decode(o)))}function Qt(o){return b.encode(o)}function St(o){if(!o.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new Eo("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return b.decode(o)}import{AssetValue as ao,Chain as h,getChainConfig as Lo,getRPCUrl as co,SwapKitError as ot}from"@swapkit/helpers";import{AssetValue as po,Chain as n,getChainConfig as L,getRPCUrl as bo,RequestClient as Mo,SKConfig as Io,SwapKitError as g,SwapKitNumber as fo}from"@swapkit/helpers";var Ro="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",lo="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",go={amount:[{amount:"500",denom:"uatom"}],gas:"200000"},Vo={amount:[{amount:"1000",denom:"ukuji"}],gas:"200000"},so={amount:[{amount:"1000",denom:"uusdc"}],gas:"200000"};function i(o){switch(o){case n.Maya:return{amount:[],gas:"10000000000"};case n.THORChain:return{amount:[],gas:"500000000"};case n.Kujira:return Vo;case n.Noble:return so;default:return go}}async function V(o){let{isStagenet:t}=Io.get("envs"),p=Io.get("thornodeUrls"),r=o===n.Maya,y=`${r?t?p.MAYA_STAGENET:p.MAYA:t?p.THOR_STAGENET:p.THOR}/${r?"mayachain":"thorchain"}/constants`,c=L(o).baseDecimal;try{let{int_64_values:{NativeTransactionFee:w}}=await Mo.get(y);if(!Number.isInteger(w)||w<=0)throw new g("toolbox_cosmos_invalid_fee",{nativeFee:w.toString()});return fo.fromBigInt(BigInt(w),c)}catch{let w=r?10000000000n:2000000n;return fo.fromBigInt(w,c)}}var Z=(o,t=!1)=>{if(t)return o.toLowerCase();switch(o){case"uUSK":case"USK":return Ro;case"uYUM":case"YUM":return lo;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";case"uUSDC":case"USDC":case"NOBLE":return"uusdc";default:return o}},s=({symbol:o,chain:t})=>{if(t===n.Maya)return(o.toUpperCase()!=="CACAO"?o:`${n.Maya}.${o}`).toUpperCase();if(t===n.THORChain)return(["RUNE","TCY","RUJI"].includes(o.toUpperCase())?`${n.THORChain}.${o}`:o).toUpperCase();return Z(o,!1)};async function G(o){let t=await import("@cosmjs/stargate"),p=t.StargateClient??t.default?.StargateClient,r=typeof window<"u"?{}:{referer:"https://sdk.swapkit.dev",referrer:"https://sdk.swapkit.dev"};return p.connect({headers:r,url:o})}async function Y(o,t,p={}){let r=await import("@cosmjs/stargate"),f=r.SigningStargateClient??r.default?.SigningStargateClient,y=r.GasPrice??r.default?.GasPrice,c=typeof p==="string"?p:"0.0003uatom",w=typeof p==="string"?{}:p;return f.connectWithSigner(o,t,{gasPrice:y.fromString(c),...w})}async function _o(o,t){let p=await import("@cosmjs/stargate");return(p.SigningStargateClient??p.default?.SigningStargateClient).offline(o,t)}var ho=(o)=>{switch(o){case n.Maya:case n.THORChain:return"/types.MsgSend";case n.Cosmos:case n.Kujira:case n.Noble:return"/cosmos.bank.v1beta1.MsgSend";default:throw new g("toolbox_cosmos_not_supported",{chain:o})}};async function $o({sender:o,recipient:t,assetValue:p,memo:r="",feeRate:f,sequence:y,accountNumber:c,sweep:w}){let{chain:k,chainId:_}=p,I=await bo(k),R=await G(I),$=await R.getAccount(o);if(!$)throw new g("toolbox_cosmos_account_not_found",{sender:o});let x=po.from({chain:k}),v=Z(x.symbol),T=i(k),W=v&&f?{amount:[{amount:f.toString(),denom:v}],gas:T.gas}:T,H=Z(p.symbol),C={amount:[{amount:(w?K({assetValue:p,balances:await R.getAllBalances(o),denom:H,feeAmount:yo(W.amount,H)}):p).getBaseValue("string"),denom:H}],fromAddress:o,toAddress:t};return{accountNumber:c??Number($.accountNumber),chainId:_,fee:W,memo:r,msgs:[{typeUrl:ho(k),value:C}],sequence:y??$.sequence}}function yo(o,t){let p=t.toLowerCase();return o.reduce((r,f)=>f.denom.toLowerCase()===p?r+BigInt(f.amount):r,0n)}function K({assetValue:o,balances:t,denom:p,feeAmount:r=0n}){let f=p.toLowerCase(),y=t.find(({denom:k})=>k.toLowerCase()===f),c=BigInt(y?.amount??"0"),w=c-r;if(w<=0n)throw new g("toolbox_sweep_amount_too_low",{asset:o.toString(),balance:c.toString(),fee:r.toString()});return o.set(fo.fromBigInt(w,o.decimal))}var eo={atom:{chain:n.Cosmos,decimals:L(n.Cosmos).baseDecimal},cacao:{chain:n.Maya,decimals:10},kuji:{chain:n.Kujira,decimals:L(n.Kujira).baseDecimal},maya:{asset:`${n.Maya}.${n.Maya}`,decimals:4},rune:{chain:n.THORChain,decimals:L(n.THORChain).baseDecimal},tcy:{asset:"THOR.TCY",decimals:L(n.THORChain).baseDecimal},uatom:{chain:n.Cosmos,decimals:L(n.Cosmos).baseDecimal},ukuji:{chain:n.Kujira,decimals:L(n.Kujira).baseDecimal},usdc:{chain:n.Noble,decimals:L(n.Noble).baseDecimal},uusdc:{chain:n.Noble,decimals:L(n.Noble).baseDecimal},"x/kuji":{asset:"THOR.KUJI",decimals:L(n.THORChain).baseDecimal},[Ro.toLowerCase()]:{asset:`${n.Kujira}.USK`,decimals:L(n.Kujira).baseDecimal}},mo=(o,t)=>{let p=eo[o.toLowerCase()];if(!p)return po.from({asset:o,fromBaseDecimal:8,value:t});let{chain:r,asset:f,decimals:y}=p,c=r?{chain:r}:{asset:f};return po.from({...c,fromBaseDecimal:y,value:t})};import{Chain as Co}from"@swapkit/helpers";async function D(){let{$root:o}=await import("../../chunk-btth5bse.js"),t=await import("@cosmjs/proto-signing"),p=await import("@cosmjs/stargate"),r=t.Registry??t.default?.Registry,f=p.defaultRegistryTypes??p.default?.defaultRegistryTypes;return new r([...f,["/types.MsgSend",o.types.MsgSend],["/types.MsgDeposit",o.types.MsgDeposit]])}async function Q(o,t=o===Co.THORChain?"thor":"maya"){let p=await import("@cosmjs/stargate"),r=p.AminoTypes??p.default?.AminoTypes,f=o===Co.THORChain?"thorchain":"mayachain";return new r({"/types.MsgDeposit":{aminoType:`${f}/MsgDeposit`,fromAmino:({signer:y,...c})=>({...c,signer:M(y)}),toAmino:({signer:y,...c})=>({...c,signer:l(y,t)})},"/types.MsgSend":{aminoType:`${f}/MsgSend`,fromAmino:({from_address:y,to_address:c,...w})=>({...w,fromAddress:M(y),toAddress:M(c)}),toAmino:({fromAddress:y,toAddress:c,...w})=>({...w,from_address:l(y,t),to_address:l(c,t)})}})}var Ot=i(h.THORChain).gas,Nt=i(h.Maya).gas,io=({sender:o,recipient:t,assetValue:p})=>{return{type:`${p.chain===h.Maya?"mayachain":"thorchain"}/MsgSend`,value:{amount:[{amount:p.getBaseValue("string"),denom:Z(p.symbol,!0)}],from_address:o,to_address:t}}},jo=({sender:o,assetValue:t,memo:p=""})=>{return{type:`${t.chain===h.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:t.getBaseValue("string"),asset:s(t)}],memo:p,signer:o}}},wo=({sender:o,recipient:t,assetValue:p,memo:r})=>{return!t?jo({assetValue:p,memo:r,sender:o}):io({assetValue:p,recipient:t,sender:o})},S=async(o,t)=>{return(await Q(t)).fromAmino(o)},zo=async({rpcUrl:o,sender:t})=>{let r=await(await G(o)).getAccount(t);if(!r)throw new ot("toolbox_cosmos_account_not_found",{sender:t});return r};async function Go(o){let{assetValue:t,recipient:p,memo:r,sender:f,asSignable:y,asAminoMessage:c}=o,w=o.sweep?await To({assetValue:t,sender:f}):t;if(p)return tt({asAminoMessage:c,asSignable:y,assetValue:w,memo:r,recipient:p,sender:f});return rt({asAminoMessage:c,asSignable:y,assetValue:w,memo:r,sender:f})}async function To({assetValue:o,sender:t}){let p=o.chain,r=await co(p),y=await(await G(r)).getAllBalances(t),c=o.isGasAsset?(await V(p)).getBaseValue("bigint"):0n;return K({assetValue:o,balances:y,denom:Z(o.symbol,!0),feeAmount:c})}async function tt({sender:o,recipient:t,assetValue:p,memo:r="",asSignable:f=!0,asAminoMessage:y=!1,sequence:c,accountNumber:w}){let k=p.chain,_=await co(k),I=await zo({rpcUrl:_,sender:o}),{chainId:R}=Lo(k),$=io({assetValue:p,recipient:t,sender:o}),x=f?await S(y?$:X($),k):$;return{accountNumber:w||Number(I.accountNumber),chainId:R,fee:i(k),memo:r,msgs:[x],sequence:c||I.sequence}}async function rt({sender:o,assetValue:t,memo:p="",asSignable:r=!0,asAminoMessage:f=!1,sequence:y,accountNumber:c}){let w=t.chain,k=await co(w),_=await zo({rpcUrl:k,sender:o}),{chainId:I}=Lo(w),R=jo({assetValue:t,memo:p,sender:o}),$=r?await S(f?R:X(R),w):R;return{accountNumber:c||Number(_.accountNumber),chainId:I,fee:i(w),memo:p,msgs:[$],sequence:y||_.sequence}}function X(o){if(o.type==="thorchain/MsgSend"||o.type==="mayachain/MsgSend")return o;return{...o,value:{...o.value,coins:o.value.coins.map((t)=>{let p=ao.from({asset:t.asset}),r=(p.isSynthetic?p.symbol.split("/")?.[1]:p.symbol)?.toUpperCase(),f=(p.isSynthetic?p.symbol.split("/")?.[0]:p.chain)?.toUpperCase();return{...t,asset:{chain:f,symbol:r,synth:p.isSynthetic,ticker:p.ticker}}})}}}async function e({chain:o,memo:t,msgs:p}){let r=await D(),f=await Q(o),y={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:t,messages:p.map((c)=>f.fromAmino(c))}};return r.encode(y)}import{Chain as U,SwapKitError as jt}from"@swapkit/helpers";import{base64 as vo,bech32 as xo}from"@scure/base";import{AssetValue as Wo,applyFeeMultiplier as Zo,Chain as m,CosmosChainPrefixes as Yo,DerivationPath as pt,derivationPathToString as Qo,FeeOption as Ho,getChainConfig as ft,getRPCUrl as O,NetworkDerivationPath as yt,SwapKitError as d,SwapKitNumber as no,updateDerivationPath as ct}from"@swapkit/helpers";import{SwapKitApi as Do}from"@swapkit/helpers/api";import{match as wt,P as So}from"ts-pattern";async function qo(o,t){try{let r=(await Do.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}async function Xo({phrase:o,prefix:t,...p}){let r=await import("@cosmjs/proto-signing"),f=await import("@cosmjs/crypto"),y=r.DirectSecp256k1HdWallet??r.default?.DirectSecp256k1HdWallet,c=f.stringToPath??f.default?.stringToPath,w="derivationPath"in p?p.derivationPath:`${pt[p.chain]}/${p.index}`;return await y.fromMnemonic(o,{hdPaths:[c(w)],prefix:t})}async function or({privateKey:o,prefix:t}){let p=await import("@cosmjs/proto-signing");return(p.DirectSecp256k1Wallet??p.default?.DirectSecp256k1Wallet).fromKey(o,t)}var Po={[m.Cosmos]:1000,[m.Kujira]:1000,[m.Noble]:1000,[m.THORChain]:5000000,[m.Maya]:5000000,[m.Harbor]:5000000};function Tt(o){return async function({signature:p,message:r,address:f}){let y=await o(f);if(!y?.pubkey)throw new d("toolbox_cosmos_verify_signature_no_pubkey");let c=await import("@cosmjs/crypto"),w=c.Secp256k1Signature??c.default?.Secp256k1Signature,k=c.Secp256k1??c.default?.Secp256k1,_=w.fromFixedLength(vo.decode(p));return k.verifySignature(_,vo.decode(r),y.pubkey.value)}}function a({chain:o,...t}){let p=Yo[o],r="index"in t?t.index||0:0,f=Qo("derivationPath"in t&&t.derivationPath?t.derivationPath:ct(yt[o],{index:r})),y;async function c(){if(y)return y;return y=await wt(t).with({phrase:So.string},({phrase:x})=>Xo({derivationPath:f,phrase:x,prefix:p})).with({signer:So.any},({signer:x})=>x).otherwise(()=>{return}),y}async function w(x){let v=await O(o);return(await G(v)).getAccount(x)}async function k(){let x=await c(),[v]=await x?.getAccounts()||[];return v?.address}async function _(){let x=await c(),[v]=await x?.getAccounts()||[];if(!v?.pubkey)throw new d("toolbox_cosmos_signer_not_defined");return vo.encode(v?.pubkey)}async function I(x){let v=await c(),T=await k(),W=await O(o);if(!(v&&T))throw new d("toolbox_cosmos_signer_not_defined");return await(await Y(W,v)).sign(T,x.msgs,x.fee,x.memo,{accountNumber:BigInt(x.accountNumber),chainId:x.chainId,sequence:x.sequence})}async function R(x){let v=await c(),T=await k(),W=await O(o);if(!(v&&T))throw new d("toolbox_cosmos_signer_not_defined");let B=await(await Y(W,v)).signAndBroadcast(T,x.msgs,x.fee,x.memo);if(B.code!==0)throw new d("core_swap_transaction_error",{code:B.code,message:B.rawLog});return B.transactionHash}async function $({recipient:x,assetValue:v,memo:T="",feeRate:W,feeOptionKey:H=Ho.Fast,sweep:B}){let C=await c(),j=await k();if(!(C&&j))throw new d("toolbox_cosmos_signer_not_defined");let z=await O(o),J=Wo.from({chain:o}),oo=s(J),A=xt(W||(await Jo(o,Po[o]))[H],oo,o),q=await Y(z,C),F=Z(v.symbol),to=[{amount:(B?K({assetValue:v,balances:await ko(o)(j),denom:F,feeAmount:yo(A.amount,F)}):v).getBaseValue("string"),denom:F}],{transactionHash:ro}=await q.sendTokens(j,x,to,A,T);return ro}return{createPrivateKeyFromPhrase:vt(f),createTransaction:$o,fetchFeeRateFromSwapKit:qo,getAccount:w,getAddress:k,getBalance:async(x,v)=>{let T=await ko(o)(x),W=await Promise.all(T.filter(({denom:H})=>H&&!H.includes("IBC/")&&!([m.THORChain,m.Maya].includes(o)&&H.split("-").length>2)).map(({denom:H,amount:B})=>{let C=[m.THORChain,m.Maya].includes(o)&&(H.includes("/")||H.includes("˜"))?`${o}.${H}`:H;return mo(C,B)}));if(W.length===0)return[Wo.from({chain:o})];return W},getBalanceAsDenoms:ko(o),getFees:()=>Jo(o,Po[o]),getPubKey:_,getSignerFromPhrase:({phrase:x,derivationPath:v})=>Xo({derivationPath:Qo(v),index:r,phrase:x,prefix:p}),getSignerFromPrivateKey:async(x)=>{let v=await import("@cosmjs/proto-signing");return(v.DirectSecp256k1Wallet??v.default?.DirectSecp256k1Wallet).fromKey(x,p)},signAndBroadcastTransaction:R,signTransaction:I,transfer:$,validateAddress:kt(o),verifySignature:Tt(w)}}async function tr(o,t){try{let r=(await Do.getGasRate()).find((f)=>f.chainId===o)?.value;return r?Number.parseFloat(r):t}catch{return t}}function rr({assetValue:{chain:o}}){return Wo.from({chain:o,value:nt(o)})}async function Jo(o,t){let{chainId:p,baseDecimal:r}=ft(o),f=await qo(p,t);return{average:no.fromBigInt(BigInt(f),r),fast:no.fromBigInt(BigInt(Zo(f,Ho.Fast,!0)),r),fastest:no.fromBigInt(BigInt(Zo(f,Ho.Fastest,!0)),r)}}function xt(o,t,p){return{amount:[{amount:typeof o==="number"?o.toString():o.getBaseValue("string"),denom:t}],gas:i(p).gas}}function nt(o){return{[m.Cosmos]:0.007,[m.Kujira]:0.02,[m.Noble]:0.01,[m.THORChain]:0.02,[m.Maya]:0.02,[m.Harbor]:0.02}[o]||0}function kt(o){let t=Yo[o];return function(r){if(!r.startsWith(t))return!1;try{let{prefix:f,words:y}=xo.decode(r);return xo.encode(f,y)===r.toLocaleLowerCase()}catch{return!1}}}function ko(o){return async function(p){let r=await O(o);return(await(await G(r)).getAllBalances(p)).map((w)=>({...w,denom:w.denom.includes("/")?w.denom.toUpperCase():w.denom}))}}function vt(o){return async function(p){let r=await import("@cosmjs/crypto"),f=r.stringToPath??r.default?.stringToPath,y=r.Slip10Curve??r.default?.Slip10Curve,c=r.Slip10??r.default?.Slip10,w=r.EnglishMnemonic??r.default?.EnglishMnemonic,k=r.Bip39??r.default?.Bip39,_=new w(p),I=await k.mnemonicToSeed(_),{privkey:R}=c.derivePath(y.Secp256k1,I,f(o));return R}}import{base64 as P}from"@scure/base";import{CosmosChainPrefixes as Wt,derivationPathToString as Ht,FeeOption as Bo,getRPCUrl as Ko,NetworkDerivationPath as Bt,SKConfig as ut,SwapKitError as N,updateDerivationPath as It}from"@swapkit/helpers";import{match as Rt,P as Fo}from"ts-pattern";function _t({prefix:o,derivationPath:t}){return async function(r,f=0){let y=await import("@cosmjs/amino"),c=y.Secp256k1HdWallet??y.default?.Secp256k1HdWallet,w=await import("@cosmjs/crypto"),k=w.stringToPath??w.default?.stringToPath;return c.fromMnemonic(r,{hdPaths:[k(`${t}/${f}`)],prefix:o})}}function $t(o){return P.encode(o)}function mt(o,t){return async function({wallet:r,tx:f}){let{msgs:y,accountNumber:c,sequence:w,chainId:k,fee:_,memo:I}=typeof f==="string"?JSON.parse(f):f,R=(await r.getAccounts())?.[0]?.address||"",$=await Q(o,t),x=await D(),v=await _o(r,{aminoTypes:$,registry:x}),T=[];for(let B of y){let C=await S(B,o);T.push(C)}let{signatures:[W]}=await v.sign(R,T,_,I,{accountNumber:BigInt(c),chainId:k,sequence:w});return{bodyBytes:await e({chain:o,memo:I,msgs:y.map(X)}),signature:$t(W)}}}function Ct({prefix:o,chain:t}){return async function(r,f,y,c,w){let k=await Ko(t),{encodeSecp256k1Pubkey:_,pubkeyToAddress:I}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:R}=(await import("@cosmjs/stargate")).default,{sequence:$,fee:x}=JSON.parse(r),v=await Oo(y,c),T=f.map((B)=>[I(_(P.decode(B.pubKey)),o),P.decode(B.signature)]),W=await G(k),{transactionHash:H}=await W.broadcastTx(R(v,$,x,w,new Map(T)));return H}}async function Oo(o,t,p=!0){let{createMultisigThresholdPubkey:r,encodeSecp256k1Pubkey:f}=(await import("@cosmjs/amino")).default;return r(o.map((y)=>f(P.decode(y))),t,p)}function Lt(o){return P.decode(o)}async function it({privateKey:o,message:t}){let{Secp256k1:p}=(await import("@cosmjs/crypto")).default,r=await p.createSignature(P.decode(t),o);return P.encode(Buffer.concat([r.r(32),r.s(32)]))}function No({chain:o,...t}){let{isStagenet:p}=ut.get("envs"),r=`${p?"s":""}${Wt[o]}`,f="index"in t?t.index||0:0,y="derivationPath"in t&&t.derivationPath?t.derivationPath:It(Bt[o],{index:f}),c=a({chain:o,...t}),w=i(o),k;function _(){return k??=Rt(t).with({phrase:Fo.string},({phrase:T})=>c.getSignerFromPhrase({derivationPath:y,phrase:T})).with({signer:Fo.any},({signer:T})=>Promise.resolve(T)).otherwise(()=>Promise.resolve(void 0)),k}async function I(){let T=await Ko(o),W=await _();if(!W)throw new N("toolbox_cosmos_no_signer");let H=await D(),B=await Q(o,r),C=await Y(T,W,{aminoTypes:B,registry:H});return{signer:W,signingClient:C}}async function R({fee:T,memo:W,msgs:H}){let{signer:B,signingClient:C}=await I(),j=(await B.getAccounts())?.[0]?.address;if(!j)throw new N("toolbox_cosmos_signer_not_defined");let z=await C.signAndBroadcast(j,H,T,W);if(z.code!==0)throw new N("core_swap_transaction_error",{code:z.code,message:z.rawLog});return z.transactionHash}async function $(){let T=await V(o);return{[Bo.Average]:T,[Bo.Fast]:T,[Bo.Fastest]:T}}async function x({assetValue:T,memo:W="",recipient:H,sweep:B}){let{TxRaw:C}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),{signer:j,signingClient:z}=await I(),J=(await j.getAccounts())?.[0]?.address;if(!J)throw new N("toolbox_cosmos_no_signer");let oo="signAmino"in j,A=B?await To({assetValue:T,sender:J}):T,q=wo({assetValue:A,memo:W,recipient:H,sender:J});if(oo){let to=await S(q,o),{signatures:ro,authInfoBytes:Uo}=await z.sign(J,[to],w,W),Ao=C.encode({authInfoBytes:Uo,bodyBytes:await e({chain:o,memo:W,msgs:[q].map(X)}),signatures:ro}).finish();return(await z.broadcastTx(Ao)).transactionHash}let F=X(q),uo=await S(F,o);return R({fee:w,memo:W,msgs:[uo]})}async function v(T){let{signer:W,signingClient:H}=await I(),B=(await W.getAccounts())?.[0]?.address;if(!B)throw new N("toolbox_cosmos_signer_not_defined");return H.sign(B,T.msgs,T.fee,T.memo,{accountNumber:BigInt(T.accountNumber),chainId:T.chainId,sequence:T.sequence})}return{...c,broadcastMultisigTx:Ct({chain:o,prefix:r}),buildAminoMsg:wo,buildEncodedTxBody:e,convertToSignable:S,createDefaultAminoTypes:()=>Q(o,r),createDefaultRegistry:D,createMultisig:Oo,createTransaction:Go,deposit:x,getFees:$,importSignature:Lt,parseAminoMessageForDirectSigning:X,pubkeyToAddress:async(T)=>{let{pubkeyToAddress:W}=(await import("@cosmjs/amino")).default;return W(T,r)},secp256k1HdWalletFromMnemonic:_t({derivationPath:Ht(y),prefix:r}),signAndBroadcastTransaction:R,signMultisigTx:mt(o,r),signTransaction:v,signWithPrivateKey:it,transfer:x}}var Hr=(o,t)=>{switch(o){case U.Cosmos:case U.Kujira:case U.Noble:return a({chain:o,...t});case U.Maya:case U.THORChain:return No({chain:o,...t});default:throw new jt("toolbox_cosmos_not_supported",{chain:o})}};export{Tt as verifySignature,io as transferMsgAmino,Qt as toBase64,To as resolveThorchainSweepAssetValue,X as parseAminoMessageForDirectSigning,V as getThorchainNativeFee,K as getSweepAssetValue,or as getSignerFromPrivateKey,Xo as getSignerFromPhrase,Z as getMsgSendDenom,tr as getFeeRateFromSwapKit,yo as getFeeAmountForDenom,s as getDenomWithChain,i as getDefaultChainFee,Hr as getCosmosToolbox,kt as getCosmosAddressValidator,mo as getAssetFromDenom,St as fromBase64,qo as fetchFeeRateFromSwapKit,rr as estimateTransactionFee,jo as depositMsgAmino,Go as createTransaction,No as createThorchainToolbox,G as createStargateClient,Y as createSigningStargateClient,_o as createOfflineStargateClient,D as createDefaultRegistry,Q as createDefaultAminoTypes,a as createCosmosToolbox,$o as cosmosCreateTransaction,S as convertToSignable,tt as buildTransferTx,e as buildEncodedTxBody,rt as buildDepositTx,wo as buildAminoMsg,M as bech32ToBase64,l as base64ToBech32,lo as YUM_KUJIRA_FACTORY_DENOM,Ro as USK_KUJIRA_FACTORY_DENOM,Ot as THORCHAIN_GAS_VALUE,Nt as MAYA_GAS_VALUE,so as DEFAULT_NOBLE_FEE_MAINNET,Vo as DEFAULT_KUJI_FEE_MAINNET,go as DEFAULT_COSMOS_FEE_MAINNET};
|