@swapkit/toolboxes 4.0.0-beta.35 → 4.0.0-beta.36

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.
@@ -1,3 +1,4 @@
1
1
  var Y=O(require("protobufjs/minimal.js")),X=Y.default.Reader,J=Y.default.Writer,Q=Y.default.util,L=Y.default.roots.default||(Y.default.roots.default={});L.common=(()=>{let Z={};return Z.Asset=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.chain="",G.prototype.symbol="",G.prototype.ticker="",G.prototype.synth=!1,G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.chain!=null&&Object.hasOwnProperty.call(q,"chain"))B.uint32(10).string(q.chain);if(q.symbol!=null&&Object.hasOwnProperty.call(q,"symbol"))B.uint32(18).string(q.symbol);if(q.ticker!=null&&Object.hasOwnProperty.call(q,"ticker"))B.uint32(26).string(q.ticker);if(q.synth!=null&&Object.hasOwnProperty.call(q,"synth"))B.uint32(32).bool(q.synth);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Asset;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.chain=q.string();break;case 2:E.symbol=q.string();break;case 3:E.ticker=q.string();break;case 4:E.synth=q.bool();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.chain!=null&&q.hasOwnProperty("chain")){if(!Q.isString(q.chain))return"chain: string expected"}if(q.symbol!=null&&q.hasOwnProperty("symbol")){if(!Q.isString(q.symbol))return"symbol: string expected"}if(q.ticker!=null&&q.hasOwnProperty("ticker")){if(!Q.isString(q.ticker))return"ticker: string expected"}if(q.synth!=null&&q.hasOwnProperty("synth")){if(typeof q.synth!=="boolean")return"synth: boolean expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Asset)return q;let B=new L.common.Asset;if(q.chain!=null)B.chain=String(q.chain);if(q.symbol!=null)B.symbol=String(q.symbol);if(q.ticker!=null)B.ticker=String(q.ticker);if(q.synth!=null)B.synth=Boolean(q.synth);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)z.chain="",z.symbol="",z.ticker="",z.synth=!1;if(q.chain!=null&&q.hasOwnProperty("chain"))z.chain=q.chain;if(q.symbol!=null&&q.hasOwnProperty("symbol"))z.symbol=q.symbol;if(q.ticker!=null&&q.hasOwnProperty("ticker"))z.ticker=q.ticker;if(q.synth!=null&&q.hasOwnProperty("synth"))z.synth=q.synth;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z.Coin=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.asset=null,G.prototype.amount="",G.prototype.decimals=Q.Long?Q.Long.fromBits(0,0,!1):0,G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.asset!=null&&Object.hasOwnProperty.call(q,"asset"))L.common.Asset.encode(q.asset,B.uint32(10).fork()).ldelim();if(q.amount!=null&&Object.hasOwnProperty.call(q,"amount"))B.uint32(18).string(q.amount);if(q.decimals!=null&&Object.hasOwnProperty.call(q,"decimals"))B.uint32(24).int64(q.decimals);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Coin;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.asset=L.common.Asset.decode(q,q.uint32());break;case 2:E.amount=q.string();break;case 3:E.decimals=q.int64();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.asset!=null&&q.hasOwnProperty("asset")){let B=L.common.Asset.verify(q.asset);if(B)return"asset."+B}if(q.amount!=null&&q.hasOwnProperty("amount")){if(!Q.isString(q.amount))return"amount: string expected"}if(q.decimals!=null&&q.hasOwnProperty("decimals")){if(!Q.isInteger(q.decimals)&&!(q.decimals&&Q.isInteger(q.decimals.low)&&Q.isInteger(q.decimals.high)))return"decimals: integer|Long expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Coin)return q;let B=new L.common.Coin;if(q.asset!=null){if(typeof q.asset!=="object")throw TypeError(".common.Coin.asset: object expected");B.asset=L.common.Asset.fromObject(q.asset)}if(q.amount!=null)B.amount=String(q.amount);if(q.decimals!=null){if(Q.Long)(B.decimals=Q.Long.fromValue(q.decimals)).unsigned=!1;else if(typeof q.decimals==="string")B.decimals=Number.parseInt(q.decimals,10);else if(typeof q.decimals==="number")B.decimals=q.decimals;else if(typeof q.decimals==="object")B.decimals=new Q.LongBits(q.decimals.low>>>0,q.decimals.high>>>0).toNumber()}return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)if(z.asset=null,z.amount="",Q.Long){let E=new Q.Long(0,0,!1);z.decimals=B.longs===String?E.toString():B.longs===Number?E.toNumber():E}else z.decimals=B.longs===String?"0":0;if(q.asset!=null&&q.hasOwnProperty("asset"))z.asset=L.common.Asset.toObject(q.asset,B);if(q.amount!=null&&q.hasOwnProperty("amount"))z.amount=q.amount;if(q.decimals!=null&&q.hasOwnProperty("decimals"))if(typeof q.decimals==="number")z.decimals=B.longs===String?String(q.decimals):q.decimals;else z.decimals=B.longs===String?Q.Long.prototype.toString.call(q.decimals):B.longs===Number?new Q.LongBits(q.decimals.low>>>0,q.decimals.high>>>0).toNumber():q.decimals;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z.PubKeySet=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.secp256k1="",G.prototype.ed25519="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.secp256k1!=null&&Object.hasOwnProperty.call(q,"secp256k1"))B.uint32(10).string(q.secp256k1);if(q.ed25519!=null&&Object.hasOwnProperty.call(q,"ed25519"))B.uint32(18).string(q.ed25519);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.PubKeySet;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.secp256k1=q.string();break;case 2:E.ed25519=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.secp256k1!=null&&q.hasOwnProperty("secp256k1")){if(!Q.isString(q.secp256k1))return"secp256k1: string expected"}if(q.ed25519!=null&&q.hasOwnProperty("ed25519")){if(!Q.isString(q.ed25519))return"ed25519: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.PubKeySet)return q;let B=new L.common.PubKeySet;if(q.secp256k1!=null)B.secp256k1=String(q.secp256k1);if(q.ed25519!=null)B.ed25519=String(q.ed25519);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)z.secp256k1="",z.ed25519="";if(q.secp256k1!=null&&q.hasOwnProperty("secp256k1"))z.secp256k1=q.secp256k1;if(q.ed25519!=null&&q.hasOwnProperty("ed25519"))z.ed25519=q.ed25519;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z.Tx=(()=>{function G(H){if(this.coins=[],this.gas=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.id="",G.prototype.chain="",G.prototype.fromAddress="",G.prototype.toAddress="",G.prototype.coins=Q.emptyArray,G.prototype.gas=Q.emptyArray,G.prototype.memo="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.id!=null&&Object.hasOwnProperty.call(q,"id"))B.uint32(10).string(q.id);if(q.chain!=null&&Object.hasOwnProperty.call(q,"chain"))B.uint32(18).string(q.chain);if(q.fromAddress!=null&&Object.hasOwnProperty.call(q,"fromAddress"))B.uint32(26).string(q.fromAddress);if(q.toAddress!=null&&Object.hasOwnProperty.call(q,"toAddress"))B.uint32(34).string(q.toAddress);if(q.coins?.length)for(let z=0;z<q.coins.length;++z)L.common.Coin.encode(q.coins[z],B.uint32(42).fork()).ldelim();if(q.gas?.length)for(let z=0;z<q.gas.length;++z)L.common.Coin.encode(q.gas[z],B.uint32(50).fork()).ldelim();if(q.memo!=null&&Object.hasOwnProperty.call(q,"memo"))B.uint32(58).string(q.memo);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Tx;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.id=q.string();break;case 2:E.chain=q.string();break;case 3:E.fromAddress=q.string();break;case 4:E.toAddress=q.string();break;case 5:if(!E.coins?.length)E.coins=[];E.coins.push(L.common.Coin.decode(q,q.uint32()));break;case 6:if(!E.gas?.length)E.gas=[];E.gas.push(L.common.Coin.decode(q,q.uint32()));break;case 7:E.memo=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.id!=null&&q.hasOwnProperty("id")){if(!Q.isString(q.id))return"id: string expected"}if(q.chain!=null&&q.hasOwnProperty("chain")){if(!Q.isString(q.chain))return"chain: string expected"}if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress")){if(!Q.isString(q.fromAddress))return"fromAddress: string expected"}if(q.toAddress!=null&&q.hasOwnProperty("toAddress")){if(!Q.isString(q.toAddress))return"toAddress: string expected"}if(q.coins!=null&&q.hasOwnProperty("coins")){if(!Array.isArray(q.coins))return"coins: array expected";for(let B=0;B<q.coins.length;++B){let z=L.common.Coin.verify(q.coins[B]);if(z)return"coins."+z}}if(q.gas!=null&&q.hasOwnProperty("gas")){if(!Array.isArray(q.gas))return"gas: array expected";for(let B=0;B<q.gas.length;++B){let z=L.common.Coin.verify(q.gas[B]);if(z)return"gas."+z}}if(q.memo!=null&&q.hasOwnProperty("memo")){if(!Q.isString(q.memo))return"memo: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Tx)return q;let B=new L.common.Tx;if(q.id!=null)B.id=String(q.id);if(q.chain!=null)B.chain=String(q.chain);if(q.fromAddress!=null)B.fromAddress=String(q.fromAddress);if(q.toAddress!=null)B.toAddress=String(q.toAddress);if(q.coins){if(!Array.isArray(q.coins))throw TypeError(".common.Tx.coins: array expected");B.coins=[];for(let z=0;z<q.coins.length;++z){if(typeof q.coins[z]!=="object")throw TypeError(".common.Tx.coins: object expected");B.coins[z]=L.common.Coin.fromObject(q.coins[z])}}if(q.gas){if(!Array.isArray(q.gas))throw TypeError(".common.Tx.gas: array expected");B.gas=[];for(let z=0;z<q.gas.length;++z){if(typeof q.gas[z]!=="object")throw TypeError(".common.Tx.gas: object expected");B.gas[z]=L.common.Coin.fromObject(q.gas[z])}}if(q.memo!=null)B.memo=String(q.memo);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.coins=[],z.gas=[];if(B.defaults)z.id="",z.chain="",z.fromAddress="",z.toAddress="",z.memo="";if(q.id!=null&&q.hasOwnProperty("id"))z.id=q.id;if(q.chain!=null&&q.hasOwnProperty("chain"))z.chain=q.chain;if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress"))z.fromAddress=q.fromAddress;if(q.toAddress!=null&&q.hasOwnProperty("toAddress"))z.toAddress=q.toAddress;if(q.coins?.length){z.coins=[];for(let E=0;E<q.coins.length;++E)z.coins[E]=L.common.Coin.toObject(q.coins[E],B)}if(q.gas?.length){z.gas=[];for(let E=0;E<q.gas.length;++E)z.gas[E]=L.common.Coin.toObject(q.gas[E],B)}if(q.memo!=null&&q.hasOwnProperty("memo"))z.memo=q.memo;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z.Fee=(()=>{function G(H){if(this.coins=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.coins=Q.emptyArray,G.prototype.poolDeduct="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.coins?.length)for(let z=0;z<q.coins.length;++z)L.common.Coin.encode(q.coins[z],B.uint32(10).fork()).ldelim();if(q.poolDeduct!=null&&Object.hasOwnProperty.call(q,"poolDeduct"))B.uint32(18).string(q.poolDeduct);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Fee;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:if(!E.coins?.length)E.coins=[];E.coins.push(L.common.Coin.decode(q,q.uint32()));break;case 2:E.poolDeduct=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.coins!=null&&q.hasOwnProperty("coins")){if(!Array.isArray(q.coins))return"coins: array expected";for(let B=0;B<q.coins.length;++B){let z=L.common.Coin.verify(q.coins[B]);if(z)return"coins."+z}}if(q.poolDeduct!=null&&q.hasOwnProperty("poolDeduct")){if(!Q.isString(q.poolDeduct))return"poolDeduct: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Fee)return q;let B=new L.common.Fee;if(q.coins){if(!Array.isArray(q.coins))throw TypeError(".common.Fee.coins: array expected");B.coins=[];for(let z=0;z<q.coins.length;++z){if(typeof q.coins[z]!=="object")throw TypeError(".common.Fee.coins: object expected");B.coins[z]=L.common.Coin.fromObject(q.coins[z])}}if(q.poolDeduct!=null)B.poolDeduct=String(q.poolDeduct);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.coins=[];if(B.defaults)z.poolDeduct="";if(q.coins?.length){z.coins=[];for(let E=0;E<q.coins.length;++E)z.coins[E]=L.common.Coin.toObject(q.coins[E],B)}if(q.poolDeduct!=null&&q.hasOwnProperty("poolDeduct"))z.poolDeduct=q.poolDeduct;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z.ProtoUint=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.value="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.value!=null&&Object.hasOwnProperty.call(q,"value"))B.uint32(10).string(q.value);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.ProtoUint;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.value=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.value!=null&&q.hasOwnProperty("value")){if(!Q.isString(q.value))return"value: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.ProtoUint)return q;let B=new L.common.ProtoUint;if(q.value!=null)B.value=String(q.value);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)z.value="";if(q.value!=null&&q.hasOwnProperty("value"))z.value=q.value;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z})();L.types=(()=>{let Z={};return Z.MsgDeposit=(()=>{function G(H){if(this.coins=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.coins=Q.emptyArray,G.prototype.memo="",G.prototype.signer=Q.newBuffer([]),G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.coins?.length)for(let z=0;z<q.coins.length;++z)L.common.Coin.encode(q.coins[z],B.uint32(10).fork()).ldelim();if(q.memo!=null&&Object.hasOwnProperty.call(q,"memo"))B.uint32(18).string(q.memo);if(q.signer!=null&&Object.hasOwnProperty.call(q,"signer"))B.uint32(26).bytes(q.signer);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.types.MsgDeposit;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:if(!E.coins?.length)E.coins=[];E.coins.push(L.common.Coin.decode(q,q.uint32()));break;case 2:E.memo=q.string();break;case 3:E.signer=q.bytes();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.coins!=null&&q.hasOwnProperty("coins")){if(!Array.isArray(q.coins))return"coins: array expected";for(let B=0;B<q.coins.length;++B){let z=L.common.Coin.verify(q.coins[B]);if(z)return"coins."+z}}if(q.memo!=null&&q.hasOwnProperty("memo")){if(!Q.isString(q.memo))return"memo: string expected"}if(q.signer!=null&&q.hasOwnProperty("signer")){if(!(q.signer&&typeof q.signer.length==="number"||Q.isString(q.signer)))return"signer: buffer expected"}return null},G.fromObject=function H(q){if(q instanceof L.types.MsgDeposit)return q;let B=new L.types.MsgDeposit;if(q.coins){if(!Array.isArray(q.coins))throw TypeError(".types.MsgDeposit.coins: array expected");B.coins=[];for(let z=0;z<q.coins.length;++z){if(typeof q.coins[z]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");B.coins[z]=L.common.Coin.fromObject(q.coins[z])}}if(q.memo!=null)B.memo=String(q.memo);if(q.signer!=null){if(typeof q.signer==="string")Q.base64.decode(q.signer,B.signer=Q.newBuffer(Q.base64.length(q.signer)),0);else if(q.signer.length)B.signer=q.signer}return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.coins=[];if(B.defaults){if(z.memo="",B.bytes===String)z.signer="";else if(z.signer=[],B.bytes!==Array)z.signer=Q.newBuffer(z.signer)}if(q.coins?.length){z.coins=[];for(let E=0;E<q.coins.length;++E)z.coins[E]=L.common.Coin.toObject(q.coins[E],B)}if(q.memo!=null&&q.hasOwnProperty("memo"))z.memo=q.memo;if(q.signer!=null&&q.hasOwnProperty("signer"))z.signer=B.bytes===String?Q.base64.encode(q.signer,0,q.signer.length):B.bytes===Array?Array.prototype.slice.call(q.signer):q.signer;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z.MsgSend=(()=>{function G(H){if(this.amount=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.fromAddress=Q.newBuffer([]),G.prototype.toAddress=Q.newBuffer([]),G.prototype.amount=Q.emptyArray,G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.fromAddress!=null&&Object.hasOwnProperty.call(q,"fromAddress"))B.uint32(10).bytes(q.fromAddress);if(q.toAddress!=null&&Object.hasOwnProperty.call(q,"toAddress"))B.uint32(18).bytes(q.toAddress);if(q.amount?.length)for(let z=0;z<q.amount.length;++z)L.cosmos.base.v1beta1.Coin.encode(q.amount[z],B.uint32(26).fork()).ldelim();return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.types.MsgSend;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.fromAddress=q.bytes();break;case 2:E.toAddress=q.bytes();break;case 3:if(!E.amount?.length)E.amount=[];E.amount.push(L.cosmos.base.v1beta1.Coin.decode(q,q.uint32()));break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress")){if(!(q.fromAddress&&typeof q.fromAddress.length==="number"||Q.isString(q.fromAddress)))return"fromAddress: buffer expected"}if(q.toAddress!=null&&q.hasOwnProperty("toAddress")){if(!(q.toAddress&&typeof q.toAddress.length==="number"||Q.isString(q.toAddress)))return"toAddress: buffer expected"}if(q.amount!=null&&q.hasOwnProperty("amount")){if(!Array.isArray(q.amount))return"amount: array expected";for(let B=0;B<q.amount.length;++B){let z=L.cosmos.base.v1beta1.Coin.verify(q.amount[B]);if(z)return"amount."+z}}return null},G.fromObject=function H(q){if(q instanceof L.types.MsgSend)return q;let B=new L.types.MsgSend;if(q.fromAddress!=null){if(typeof q.fromAddress==="string")Q.base64.decode(q.fromAddress,B.fromAddress=Q.newBuffer(Q.base64.length(q.fromAddress)),0);else if(q.fromAddress.length)B.fromAddress=q.fromAddress}if(q.toAddress!=null){if(typeof q.toAddress==="string")Q.base64.decode(q.toAddress,B.toAddress=Q.newBuffer(Q.base64.length(q.toAddress)),0);else if(q.toAddress.length)B.toAddress=q.toAddress}if(q.amount){if(!Array.isArray(q.amount))throw TypeError(".types.MsgSend.amount: array expected");B.amount=[];for(let z=0;z<q.amount.length;++z){if(typeof q.amount[z]!=="object")throw TypeError(".types.MsgSend.amount: object expected");B.amount[z]=L.cosmos.base.v1beta1.Coin.fromObject(q.amount[z])}}return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.amount=[];if(B.defaults){if(B.bytes===String)z.fromAddress="";else if(z.fromAddress=[],B.bytes!==Array)z.fromAddress=Q.newBuffer(z.fromAddress);if(B.bytes===String)z.toAddress="";else if(z.toAddress=[],B.bytes!==Array)z.toAddress=Q.newBuffer(z.toAddress)}if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress"))z.fromAddress=B.bytes===String?Q.base64.encode(q.fromAddress,0,q.fromAddress.length):B.bytes===Array?Array.prototype.slice.call(q.fromAddress):q.fromAddress;if(q.toAddress!=null&&q.hasOwnProperty("toAddress"))z.toAddress=B.bytes===String?Q.base64.encode(q.toAddress,0,q.toAddress.length):B.bytes===Array?Array.prototype.slice.call(q.toAddress):q.toAddress;if(q.amount?.length){z.amount=[];for(let E=0;E<q.amount.length;++E)z.amount[E]=L.cosmos.base.v1beta1.Coin.toObject(q.amount[E],B)}return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},G})(),Z})();L.cosmos=(()=>{let Z={};return Z.base=(()=>{let G={};return G.v1beta1=(()=>{let H={};return H.Coin=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.denom="",q.prototype.amount="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.denom!=null&&Object.hasOwnProperty.call(z,"denom"))E.uint32(10).string(z.denom);if(z.amount!=null&&Object.hasOwnProperty.call(z,"amount"))E.uint32(18).string(z.amount);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.Coin;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.denom=z.string();break;case 2:_.amount=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.denom!=null&&z.hasOwnProperty("denom")){if(!Q.isString(z.denom))return"denom: string expected"}if(z.amount!=null&&z.hasOwnProperty("amount")){if(!Q.isString(z.amount))return"amount: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.Coin)return z;let E=new L.cosmos.base.v1beta1.Coin;if(z.denom!=null)E.denom=String(z.denom);if(z.amount!=null)E.amount=String(z.amount);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.denom="",V.amount="";if(z.denom!=null&&z.hasOwnProperty("denom"))V.denom=z.denom;if(z.amount!=null&&z.hasOwnProperty("amount"))V.amount=z.amount;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},q})(),H.DecCoin=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.denom="",q.prototype.amount="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.denom!=null&&Object.hasOwnProperty.call(z,"denom"))E.uint32(10).string(z.denom);if(z.amount!=null&&Object.hasOwnProperty.call(z,"amount"))E.uint32(18).string(z.amount);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.DecCoin;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.denom=z.string();break;case 2:_.amount=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.denom!=null&&z.hasOwnProperty("denom")){if(!Q.isString(z.denom))return"denom: string expected"}if(z.amount!=null&&z.hasOwnProperty("amount")){if(!Q.isString(z.amount))return"amount: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.DecCoin)return z;let E=new L.cosmos.base.v1beta1.DecCoin;if(z.denom!=null)E.denom=String(z.denom);if(z.amount!=null)E.amount=String(z.amount);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.denom="",V.amount="";if(z.denom!=null&&z.hasOwnProperty("denom"))V.denom=z.denom;if(z.amount!=null&&z.hasOwnProperty("amount"))V.amount=z.amount;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},q})(),H.IntProto=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.int="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.int!=null&&Object.hasOwnProperty.call(z,"int"))E.uint32(10).string(z.int);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.IntProto;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.int=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.int!=null&&z.hasOwnProperty("int")){if(!Q.isString(z.int))return"int: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.IntProto)return z;let E=new L.cosmos.base.v1beta1.IntProto;if(z.int!=null)E.int=String(z.int);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.int="";if(z.int!=null&&z.hasOwnProperty("int"))V.int=z.int;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},q})(),H.DecProto=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.dec="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.dec!=null&&Object.hasOwnProperty.call(z,"dec"))E.uint32(10).string(z.dec);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.DecProto;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.dec=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.dec!=null&&z.hasOwnProperty("dec")){if(!Q.isString(z.dec))return"dec: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.DecProto)return z;let E=new L.cosmos.base.v1beta1.DecProto;if(z.dec!=null)E.dec=String(z.dec);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.dec="";if(z.dec!=null&&z.hasOwnProperty("dec"))V.dec=z.dec;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.default.util.toJSONOptions)},q})(),H})(),G})(),Z})();
2
2
 
3
3
  //# debugId=F50163E6D500BE1D64756E2164756E21
4
+ //# sourceMappingURL=chunk-4yap1fvd.js.map
@@ -1,3 +1,4 @@
1
1
  var a=require("@swapkit/helpers"),r=require("@swapkit/helpers/api"),u=typeof process!=="undefined"&&process.pid?process.pid.toString(36):"",i=0;function m(){function t(){let e=Date.now(),n=i||e;return i=n,e>i?e:n+1}return u+t().toString(36)}function d(t){return async function e(n,o=!0){return(await r.SwapKitApi.getChainBalance({chain:t,address:n,scamFilter:o})).map(({identifier:s,value:c,decimal:p})=>{return new a.AssetValue({decimal:p||a.BaseDecimal[t],value:c,identifier:s})})}}
2
2
 
3
3
  //# debugId=0B59BAD8AA34A5A264756E2164756E21
4
+ //# sourceMappingURL=chunk-5yxc1e69.js.map
@@ -2,3 +2,4 @@ import"./chunk-s47y8512.js";import{AssetValue as c,BaseDecimal as p}from"@swapki
2
2
  export{g as a,w as b};
3
3
 
4
4
  //# debugId=8C6F04B3BE4067A464756E2164756E21
5
+ //# sourceMappingURL=chunk-6f98phv2.js.map
@@ -1,3 +1,4 @@
1
1
  import"./chunk-s47y8512.js";import Y from"protobufjs/minimal.js";var X=Y.Reader,J=Y.Writer,Q=Y.util,L=Y.roots.default||(Y.roots.default={});L.common=(()=>{let Z={};return Z.Asset=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.chain="",G.prototype.symbol="",G.prototype.ticker="",G.prototype.synth=!1,G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.chain!=null&&Object.hasOwnProperty.call(q,"chain"))B.uint32(10).string(q.chain);if(q.symbol!=null&&Object.hasOwnProperty.call(q,"symbol"))B.uint32(18).string(q.symbol);if(q.ticker!=null&&Object.hasOwnProperty.call(q,"ticker"))B.uint32(26).string(q.ticker);if(q.synth!=null&&Object.hasOwnProperty.call(q,"synth"))B.uint32(32).bool(q.synth);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Asset;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.chain=q.string();break;case 2:E.symbol=q.string();break;case 3:E.ticker=q.string();break;case 4:E.synth=q.bool();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.chain!=null&&q.hasOwnProperty("chain")){if(!Q.isString(q.chain))return"chain: string expected"}if(q.symbol!=null&&q.hasOwnProperty("symbol")){if(!Q.isString(q.symbol))return"symbol: string expected"}if(q.ticker!=null&&q.hasOwnProperty("ticker")){if(!Q.isString(q.ticker))return"ticker: string expected"}if(q.synth!=null&&q.hasOwnProperty("synth")){if(typeof q.synth!=="boolean")return"synth: boolean expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Asset)return q;let B=new L.common.Asset;if(q.chain!=null)B.chain=String(q.chain);if(q.symbol!=null)B.symbol=String(q.symbol);if(q.ticker!=null)B.ticker=String(q.ticker);if(q.synth!=null)B.synth=Boolean(q.synth);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)z.chain="",z.symbol="",z.ticker="",z.synth=!1;if(q.chain!=null&&q.hasOwnProperty("chain"))z.chain=q.chain;if(q.symbol!=null&&q.hasOwnProperty("symbol"))z.symbol=q.symbol;if(q.ticker!=null&&q.hasOwnProperty("ticker"))z.ticker=q.ticker;if(q.synth!=null&&q.hasOwnProperty("synth"))z.synth=q.synth;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z.Coin=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.asset=null,G.prototype.amount="",G.prototype.decimals=Q.Long?Q.Long.fromBits(0,0,!1):0,G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.asset!=null&&Object.hasOwnProperty.call(q,"asset"))L.common.Asset.encode(q.asset,B.uint32(10).fork()).ldelim();if(q.amount!=null&&Object.hasOwnProperty.call(q,"amount"))B.uint32(18).string(q.amount);if(q.decimals!=null&&Object.hasOwnProperty.call(q,"decimals"))B.uint32(24).int64(q.decimals);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Coin;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.asset=L.common.Asset.decode(q,q.uint32());break;case 2:E.amount=q.string();break;case 3:E.decimals=q.int64();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.asset!=null&&q.hasOwnProperty("asset")){let B=L.common.Asset.verify(q.asset);if(B)return"asset."+B}if(q.amount!=null&&q.hasOwnProperty("amount")){if(!Q.isString(q.amount))return"amount: string expected"}if(q.decimals!=null&&q.hasOwnProperty("decimals")){if(!Q.isInteger(q.decimals)&&!(q.decimals&&Q.isInteger(q.decimals.low)&&Q.isInteger(q.decimals.high)))return"decimals: integer|Long expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Coin)return q;let B=new L.common.Coin;if(q.asset!=null){if(typeof q.asset!=="object")throw TypeError(".common.Coin.asset: object expected");B.asset=L.common.Asset.fromObject(q.asset)}if(q.amount!=null)B.amount=String(q.amount);if(q.decimals!=null){if(Q.Long)(B.decimals=Q.Long.fromValue(q.decimals)).unsigned=!1;else if(typeof q.decimals==="string")B.decimals=Number.parseInt(q.decimals,10);else if(typeof q.decimals==="number")B.decimals=q.decimals;else if(typeof q.decimals==="object")B.decimals=new Q.LongBits(q.decimals.low>>>0,q.decimals.high>>>0).toNumber()}return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)if(z.asset=null,z.amount="",Q.Long){let E=new Q.Long(0,0,!1);z.decimals=B.longs===String?E.toString():B.longs===Number?E.toNumber():E}else z.decimals=B.longs===String?"0":0;if(q.asset!=null&&q.hasOwnProperty("asset"))z.asset=L.common.Asset.toObject(q.asset,B);if(q.amount!=null&&q.hasOwnProperty("amount"))z.amount=q.amount;if(q.decimals!=null&&q.hasOwnProperty("decimals"))if(typeof q.decimals==="number")z.decimals=B.longs===String?String(q.decimals):q.decimals;else z.decimals=B.longs===String?Q.Long.prototype.toString.call(q.decimals):B.longs===Number?new Q.LongBits(q.decimals.low>>>0,q.decimals.high>>>0).toNumber():q.decimals;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z.PubKeySet=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.secp256k1="",G.prototype.ed25519="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.secp256k1!=null&&Object.hasOwnProperty.call(q,"secp256k1"))B.uint32(10).string(q.secp256k1);if(q.ed25519!=null&&Object.hasOwnProperty.call(q,"ed25519"))B.uint32(18).string(q.ed25519);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.PubKeySet;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.secp256k1=q.string();break;case 2:E.ed25519=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.secp256k1!=null&&q.hasOwnProperty("secp256k1")){if(!Q.isString(q.secp256k1))return"secp256k1: string expected"}if(q.ed25519!=null&&q.hasOwnProperty("ed25519")){if(!Q.isString(q.ed25519))return"ed25519: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.PubKeySet)return q;let B=new L.common.PubKeySet;if(q.secp256k1!=null)B.secp256k1=String(q.secp256k1);if(q.ed25519!=null)B.ed25519=String(q.ed25519);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)z.secp256k1="",z.ed25519="";if(q.secp256k1!=null&&q.hasOwnProperty("secp256k1"))z.secp256k1=q.secp256k1;if(q.ed25519!=null&&q.hasOwnProperty("ed25519"))z.ed25519=q.ed25519;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z.Tx=(()=>{function G(H){if(this.coins=[],this.gas=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.id="",G.prototype.chain="",G.prototype.fromAddress="",G.prototype.toAddress="",G.prototype.coins=Q.emptyArray,G.prototype.gas=Q.emptyArray,G.prototype.memo="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.id!=null&&Object.hasOwnProperty.call(q,"id"))B.uint32(10).string(q.id);if(q.chain!=null&&Object.hasOwnProperty.call(q,"chain"))B.uint32(18).string(q.chain);if(q.fromAddress!=null&&Object.hasOwnProperty.call(q,"fromAddress"))B.uint32(26).string(q.fromAddress);if(q.toAddress!=null&&Object.hasOwnProperty.call(q,"toAddress"))B.uint32(34).string(q.toAddress);if(q.coins?.length)for(let z=0;z<q.coins.length;++z)L.common.Coin.encode(q.coins[z],B.uint32(42).fork()).ldelim();if(q.gas?.length)for(let z=0;z<q.gas.length;++z)L.common.Coin.encode(q.gas[z],B.uint32(50).fork()).ldelim();if(q.memo!=null&&Object.hasOwnProperty.call(q,"memo"))B.uint32(58).string(q.memo);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Tx;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.id=q.string();break;case 2:E.chain=q.string();break;case 3:E.fromAddress=q.string();break;case 4:E.toAddress=q.string();break;case 5:if(!E.coins?.length)E.coins=[];E.coins.push(L.common.Coin.decode(q,q.uint32()));break;case 6:if(!E.gas?.length)E.gas=[];E.gas.push(L.common.Coin.decode(q,q.uint32()));break;case 7:E.memo=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.id!=null&&q.hasOwnProperty("id")){if(!Q.isString(q.id))return"id: string expected"}if(q.chain!=null&&q.hasOwnProperty("chain")){if(!Q.isString(q.chain))return"chain: string expected"}if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress")){if(!Q.isString(q.fromAddress))return"fromAddress: string expected"}if(q.toAddress!=null&&q.hasOwnProperty("toAddress")){if(!Q.isString(q.toAddress))return"toAddress: string expected"}if(q.coins!=null&&q.hasOwnProperty("coins")){if(!Array.isArray(q.coins))return"coins: array expected";for(let B=0;B<q.coins.length;++B){let z=L.common.Coin.verify(q.coins[B]);if(z)return"coins."+z}}if(q.gas!=null&&q.hasOwnProperty("gas")){if(!Array.isArray(q.gas))return"gas: array expected";for(let B=0;B<q.gas.length;++B){let z=L.common.Coin.verify(q.gas[B]);if(z)return"gas."+z}}if(q.memo!=null&&q.hasOwnProperty("memo")){if(!Q.isString(q.memo))return"memo: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Tx)return q;let B=new L.common.Tx;if(q.id!=null)B.id=String(q.id);if(q.chain!=null)B.chain=String(q.chain);if(q.fromAddress!=null)B.fromAddress=String(q.fromAddress);if(q.toAddress!=null)B.toAddress=String(q.toAddress);if(q.coins){if(!Array.isArray(q.coins))throw TypeError(".common.Tx.coins: array expected");B.coins=[];for(let z=0;z<q.coins.length;++z){if(typeof q.coins[z]!=="object")throw TypeError(".common.Tx.coins: object expected");B.coins[z]=L.common.Coin.fromObject(q.coins[z])}}if(q.gas){if(!Array.isArray(q.gas))throw TypeError(".common.Tx.gas: array expected");B.gas=[];for(let z=0;z<q.gas.length;++z){if(typeof q.gas[z]!=="object")throw TypeError(".common.Tx.gas: object expected");B.gas[z]=L.common.Coin.fromObject(q.gas[z])}}if(q.memo!=null)B.memo=String(q.memo);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.coins=[],z.gas=[];if(B.defaults)z.id="",z.chain="",z.fromAddress="",z.toAddress="",z.memo="";if(q.id!=null&&q.hasOwnProperty("id"))z.id=q.id;if(q.chain!=null&&q.hasOwnProperty("chain"))z.chain=q.chain;if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress"))z.fromAddress=q.fromAddress;if(q.toAddress!=null&&q.hasOwnProperty("toAddress"))z.toAddress=q.toAddress;if(q.coins?.length){z.coins=[];for(let E=0;E<q.coins.length;++E)z.coins[E]=L.common.Coin.toObject(q.coins[E],B)}if(q.gas?.length){z.gas=[];for(let E=0;E<q.gas.length;++E)z.gas[E]=L.common.Coin.toObject(q.gas[E],B)}if(q.memo!=null&&q.hasOwnProperty("memo"))z.memo=q.memo;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z.Fee=(()=>{function G(H){if(this.coins=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.coins=Q.emptyArray,G.prototype.poolDeduct="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.coins?.length)for(let z=0;z<q.coins.length;++z)L.common.Coin.encode(q.coins[z],B.uint32(10).fork()).ldelim();if(q.poolDeduct!=null&&Object.hasOwnProperty.call(q,"poolDeduct"))B.uint32(18).string(q.poolDeduct);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.Fee;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:if(!E.coins?.length)E.coins=[];E.coins.push(L.common.Coin.decode(q,q.uint32()));break;case 2:E.poolDeduct=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.coins!=null&&q.hasOwnProperty("coins")){if(!Array.isArray(q.coins))return"coins: array expected";for(let B=0;B<q.coins.length;++B){let z=L.common.Coin.verify(q.coins[B]);if(z)return"coins."+z}}if(q.poolDeduct!=null&&q.hasOwnProperty("poolDeduct")){if(!Q.isString(q.poolDeduct))return"poolDeduct: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.Fee)return q;let B=new L.common.Fee;if(q.coins){if(!Array.isArray(q.coins))throw TypeError(".common.Fee.coins: array expected");B.coins=[];for(let z=0;z<q.coins.length;++z){if(typeof q.coins[z]!=="object")throw TypeError(".common.Fee.coins: object expected");B.coins[z]=L.common.Coin.fromObject(q.coins[z])}}if(q.poolDeduct!=null)B.poolDeduct=String(q.poolDeduct);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.coins=[];if(B.defaults)z.poolDeduct="";if(q.coins?.length){z.coins=[];for(let E=0;E<q.coins.length;++E)z.coins[E]=L.common.Coin.toObject(q.coins[E],B)}if(q.poolDeduct!=null&&q.hasOwnProperty("poolDeduct"))z.poolDeduct=q.poolDeduct;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z.ProtoUint=(()=>{function G(H){if(H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.value="",G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.value!=null&&Object.hasOwnProperty.call(q,"value"))B.uint32(10).string(q.value);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.common.ProtoUint;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.value=q.string();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.value!=null&&q.hasOwnProperty("value")){if(!Q.isString(q.value))return"value: string expected"}return null},G.fromObject=function H(q){if(q instanceof L.common.ProtoUint)return q;let B=new L.common.ProtoUint;if(q.value!=null)B.value=String(q.value);return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.defaults)z.value="";if(q.value!=null&&q.hasOwnProperty("value"))z.value=q.value;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z})();L.types=(()=>{let Z={};return Z.MsgDeposit=(()=>{function G(H){if(this.coins=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.coins=Q.emptyArray,G.prototype.memo="",G.prototype.signer=Q.newBuffer([]),G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.coins?.length)for(let z=0;z<q.coins.length;++z)L.common.Coin.encode(q.coins[z],B.uint32(10).fork()).ldelim();if(q.memo!=null&&Object.hasOwnProperty.call(q,"memo"))B.uint32(18).string(q.memo);if(q.signer!=null&&Object.hasOwnProperty.call(q,"signer"))B.uint32(26).bytes(q.signer);return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.types.MsgDeposit;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:if(!E.coins?.length)E.coins=[];E.coins.push(L.common.Coin.decode(q,q.uint32()));break;case 2:E.memo=q.string();break;case 3:E.signer=q.bytes();break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.coins!=null&&q.hasOwnProperty("coins")){if(!Array.isArray(q.coins))return"coins: array expected";for(let B=0;B<q.coins.length;++B){let z=L.common.Coin.verify(q.coins[B]);if(z)return"coins."+z}}if(q.memo!=null&&q.hasOwnProperty("memo")){if(!Q.isString(q.memo))return"memo: string expected"}if(q.signer!=null&&q.hasOwnProperty("signer")){if(!(q.signer&&typeof q.signer.length==="number"||Q.isString(q.signer)))return"signer: buffer expected"}return null},G.fromObject=function H(q){if(q instanceof L.types.MsgDeposit)return q;let B=new L.types.MsgDeposit;if(q.coins){if(!Array.isArray(q.coins))throw TypeError(".types.MsgDeposit.coins: array expected");B.coins=[];for(let z=0;z<q.coins.length;++z){if(typeof q.coins[z]!=="object")throw TypeError(".types.MsgDeposit.coins: object expected");B.coins[z]=L.common.Coin.fromObject(q.coins[z])}}if(q.memo!=null)B.memo=String(q.memo);if(q.signer!=null){if(typeof q.signer==="string")Q.base64.decode(q.signer,B.signer=Q.newBuffer(Q.base64.length(q.signer)),0);else if(q.signer.length)B.signer=q.signer}return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.coins=[];if(B.defaults){if(z.memo="",B.bytes===String)z.signer="";else if(z.signer=[],B.bytes!==Array)z.signer=Q.newBuffer(z.signer)}if(q.coins?.length){z.coins=[];for(let E=0;E<q.coins.length;++E)z.coins[E]=L.common.Coin.toObject(q.coins[E],B)}if(q.memo!=null&&q.hasOwnProperty("memo"))z.memo=q.memo;if(q.signer!=null&&q.hasOwnProperty("signer"))z.signer=B.bytes===String?Q.base64.encode(q.signer,0,q.signer.length):B.bytes===Array?Array.prototype.slice.call(q.signer):q.signer;return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z.MsgSend=(()=>{function G(H){if(this.amount=[],H){for(let q=Object.keys(H),B=0;B<q.length;++B)if(H[q[B]]!=null)this[q[B]]=H[q[B]]}}return G.prototype.fromAddress=Q.newBuffer([]),G.prototype.toAddress=Q.newBuffer([]),G.prototype.amount=Q.emptyArray,G.create=function H(q){return new G(q)},G.encode=function H(q,B){if(!B)B=J.create();if(q.fromAddress!=null&&Object.hasOwnProperty.call(q,"fromAddress"))B.uint32(10).bytes(q.fromAddress);if(q.toAddress!=null&&Object.hasOwnProperty.call(q,"toAddress"))B.uint32(18).bytes(q.toAddress);if(q.amount?.length)for(let z=0;z<q.amount.length;++z)L.cosmos.base.v1beta1.Coin.encode(q.amount[z],B.uint32(26).fork()).ldelim();return B},G.encodeDelimited=function H(q,B){return this.encode(q,B).ldelim()},G.decode=function H(q,B){if(!(q instanceof X))q=X.create(q);let z=B===void 0?q.len:q.pos+B,E=new L.types.MsgSend;while(q.pos<z){let V=q.uint32();switch(V>>>3){case 1:E.fromAddress=q.bytes();break;case 2:E.toAddress=q.bytes();break;case 3:if(!E.amount?.length)E.amount=[];E.amount.push(L.cosmos.base.v1beta1.Coin.decode(q,q.uint32()));break;default:q.skipType(V&7);break}}return E},G.decodeDelimited=function H(q){if(!(q instanceof X))q=new X(q);return this.decode(q,q.uint32())},G.verify=function H(q){if(typeof q!=="object"||q===null)return"object expected";if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress")){if(!(q.fromAddress&&typeof q.fromAddress.length==="number"||Q.isString(q.fromAddress)))return"fromAddress: buffer expected"}if(q.toAddress!=null&&q.hasOwnProperty("toAddress")){if(!(q.toAddress&&typeof q.toAddress.length==="number"||Q.isString(q.toAddress)))return"toAddress: buffer expected"}if(q.amount!=null&&q.hasOwnProperty("amount")){if(!Array.isArray(q.amount))return"amount: array expected";for(let B=0;B<q.amount.length;++B){let z=L.cosmos.base.v1beta1.Coin.verify(q.amount[B]);if(z)return"amount."+z}}return null},G.fromObject=function H(q){if(q instanceof L.types.MsgSend)return q;let B=new L.types.MsgSend;if(q.fromAddress!=null){if(typeof q.fromAddress==="string")Q.base64.decode(q.fromAddress,B.fromAddress=Q.newBuffer(Q.base64.length(q.fromAddress)),0);else if(q.fromAddress.length)B.fromAddress=q.fromAddress}if(q.toAddress!=null){if(typeof q.toAddress==="string")Q.base64.decode(q.toAddress,B.toAddress=Q.newBuffer(Q.base64.length(q.toAddress)),0);else if(q.toAddress.length)B.toAddress=q.toAddress}if(q.amount){if(!Array.isArray(q.amount))throw TypeError(".types.MsgSend.amount: array expected");B.amount=[];for(let z=0;z<q.amount.length;++z){if(typeof q.amount[z]!=="object")throw TypeError(".types.MsgSend.amount: object expected");B.amount[z]=L.cosmos.base.v1beta1.Coin.fromObject(q.amount[z])}}return B},G.toObject=function H(q,B){if(!B)B={};let z={};if(B.arrays||B.defaults)z.amount=[];if(B.defaults){if(B.bytes===String)z.fromAddress="";else if(z.fromAddress=[],B.bytes!==Array)z.fromAddress=Q.newBuffer(z.fromAddress);if(B.bytes===String)z.toAddress="";else if(z.toAddress=[],B.bytes!==Array)z.toAddress=Q.newBuffer(z.toAddress)}if(q.fromAddress!=null&&q.hasOwnProperty("fromAddress"))z.fromAddress=B.bytes===String?Q.base64.encode(q.fromAddress,0,q.fromAddress.length):B.bytes===Array?Array.prototype.slice.call(q.fromAddress):q.fromAddress;if(q.toAddress!=null&&q.hasOwnProperty("toAddress"))z.toAddress=B.bytes===String?Q.base64.encode(q.toAddress,0,q.toAddress.length):B.bytes===Array?Array.prototype.slice.call(q.toAddress):q.toAddress;if(q.amount?.length){z.amount=[];for(let E=0;E<q.amount.length;++E)z.amount[E]=L.cosmos.base.v1beta1.Coin.toObject(q.amount[E],B)}return z},G.prototype.toJSON=function H(){return this.constructor.toObject(this,Y.util.toJSONOptions)},G})(),Z})();L.cosmos=(()=>{let Z={};return Z.base=(()=>{let G={};return G.v1beta1=(()=>{let H={};return H.Coin=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.denom="",q.prototype.amount="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.denom!=null&&Object.hasOwnProperty.call(z,"denom"))E.uint32(10).string(z.denom);if(z.amount!=null&&Object.hasOwnProperty.call(z,"amount"))E.uint32(18).string(z.amount);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.Coin;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.denom=z.string();break;case 2:_.amount=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.denom!=null&&z.hasOwnProperty("denom")){if(!Q.isString(z.denom))return"denom: string expected"}if(z.amount!=null&&z.hasOwnProperty("amount")){if(!Q.isString(z.amount))return"amount: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.Coin)return z;let E=new L.cosmos.base.v1beta1.Coin;if(z.denom!=null)E.denom=String(z.denom);if(z.amount!=null)E.amount=String(z.amount);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.denom="",V.amount="";if(z.denom!=null&&z.hasOwnProperty("denom"))V.denom=z.denom;if(z.amount!=null&&z.hasOwnProperty("amount"))V.amount=z.amount;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.util.toJSONOptions)},q})(),H.DecCoin=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.denom="",q.prototype.amount="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.denom!=null&&Object.hasOwnProperty.call(z,"denom"))E.uint32(10).string(z.denom);if(z.amount!=null&&Object.hasOwnProperty.call(z,"amount"))E.uint32(18).string(z.amount);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.DecCoin;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.denom=z.string();break;case 2:_.amount=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.denom!=null&&z.hasOwnProperty("denom")){if(!Q.isString(z.denom))return"denom: string expected"}if(z.amount!=null&&z.hasOwnProperty("amount")){if(!Q.isString(z.amount))return"amount: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.DecCoin)return z;let E=new L.cosmos.base.v1beta1.DecCoin;if(z.denom!=null)E.denom=String(z.denom);if(z.amount!=null)E.amount=String(z.amount);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.denom="",V.amount="";if(z.denom!=null&&z.hasOwnProperty("denom"))V.denom=z.denom;if(z.amount!=null&&z.hasOwnProperty("amount"))V.amount=z.amount;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.util.toJSONOptions)},q})(),H.IntProto=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.int="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.int!=null&&Object.hasOwnProperty.call(z,"int"))E.uint32(10).string(z.int);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.IntProto;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.int=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.int!=null&&z.hasOwnProperty("int")){if(!Q.isString(z.int))return"int: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.IntProto)return z;let E=new L.cosmos.base.v1beta1.IntProto;if(z.int!=null)E.int=String(z.int);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.int="";if(z.int!=null&&z.hasOwnProperty("int"))V.int=z.int;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.util.toJSONOptions)},q})(),H.DecProto=(()=>{function q(B){if(B){for(let z=Object.keys(B),E=0;E<z.length;++E)if(B[z[E]]!=null)this[z[E]]=B[z[E]]}}return q.prototype.dec="",q.create=function B(z){return new q(z)},q.encode=function B(z,E){if(!E)E=J.create();if(z.dec!=null&&Object.hasOwnProperty.call(z,"dec"))E.uint32(10).string(z.dec);return E},q.encodeDelimited=function B(z,E){return this.encode(z,E).ldelim()},q.decode=function B(z,E){if(!(z instanceof X))z=X.create(z);let V=E===void 0?z.len:z.pos+E,_=new L.cosmos.base.v1beta1.DecProto;while(z.pos<V){let N=z.uint32();switch(N>>>3){case 1:_.dec=z.string();break;default:z.skipType(N&7);break}}return _},q.decodeDelimited=function B(z){if(!(z instanceof X))z=new X(z);return this.decode(z,z.uint32())},q.verify=function B(z){if(typeof z!=="object"||z===null)return"object expected";if(z.dec!=null&&z.hasOwnProperty("dec")){if(!Q.isString(z.dec))return"dec: string expected"}return null},q.fromObject=function B(z){if(z instanceof L.cosmos.base.v1beta1.DecProto)return z;let E=new L.cosmos.base.v1beta1.DecProto;if(z.dec!=null)E.dec=String(z.dec);return E},q.toObject=function B(z,E){if(!E)E={};let V={};if(E.defaults)V.dec="";if(z.dec!=null&&z.hasOwnProperty("dec"))V.dec=z.dec;return V},q.prototype.toJSON=function B(){return this.constructor.toObject(this,Y.util.toJSONOptions)},q})(),H})(),G})(),Z})();export{L as $root};
2
2
 
3
3
  //# debugId=D6F609310F846DE064756E2164756E21
4
+ //# sourceMappingURL=chunk-9bqegm61.js.map
@@ -1,3 +1,4 @@
1
1
  var j=Object.create;var{getPrototypeOf:k,defineProperty:e,getOwnPropertyNames:h,getOwnPropertyDescriptor:l}=Object,i=Object.prototype.hasOwnProperty;var m=(a,b,c)=>{c=a!=null?j(k(a)):{};let d=b||!a||!a.__esModule?e(c,"default",{value:a,enumerable:!0}):c;for(let f of h(a))if(!i.call(d,f))e(d,f,{get:()=>a[f],enumerable:!0});return d},g=new WeakMap,n=(a)=>{var b=g.get(a),c;if(b)return b;if(b=e({},"__esModule",{value:!0}),a&&typeof a==="object"||typeof a==="function")h(a).map((d)=>!i.call(b,d)&&e(b,d,{get:()=>a[d],enumerable:!(c=l(a,d))||c.enumerable}));return g.set(a,b),b};var o=(a,b)=>{for(var c in b)e(a,c,{get:b[c],enumerable:!0,configurable:!0,set:(d)=>b[c]=()=>d})};
2
2
 
3
3
  //# debugId=9E860276D712218864756E2164756E21
4
+ //# sourceMappingURL=chunk-fazw0jvt.js.map
@@ -2,3 +2,4 @@ var g=Object.create;var{getPrototypeOf:h,defineProperty:f,getOwnPropertyNames:i}
2
2
  export{k as d,l as e};
3
3
 
4
4
  //# debugId=26FE4B3D54C6EECA64756E2164756E21
5
+ //# sourceMappingURL=chunk-s47y8512.js.map
@@ -1,3 +1,4 @@
1
1
  async function D({account:k,contractId:m,viewMethods:q,changeMethods:z}){let{Contract:A}=await import("near-api-js");return new A(k,m,{viewMethods:q,changeMethods:z,useLocalViewExecution:!0})}
2
2
 
3
3
  //# debugId=700DBB27BEE3D39864756E2164756E21
4
+ //# sourceMappingURL=chunk-vtd17cje.js.map
@@ -2,3 +2,4 @@ import{d as B,e as D}from"./chunk-s47y8512.js";async function F({account:k,contr
2
2
  export{F as c};
3
3
 
4
4
  //# debugId=93CDBCD5CBFD729264756E2164756E21
5
+ //# sourceMappingURL=chunk-zcdeg6h9.js.map
@@ -1,3 +1,4 @@
1
1
  var lo={};so(lo,{verifySignature:()=>Ho,transferMsgAmino:()=>oo,toBase64:()=>Zo,parseAminoMessageForDirectSigning:()=>A,getSignerFromPrivateKey:()=>Jo,getSignerFromPhrase:()=>fo,getRPC:()=>uo,getMsgSendDenom:()=>P,getFeeRateFromThorswap:()=>Yo,getDenomWithChain:()=>O,getDefaultChainFee:()=>j,getCreateTransaction:()=>ro,getCosmosToolbox:()=>go,getAssetFromDenom:()=>a,fromBase64:()=>Ao,fetchFeeRateFromSwapKit:()=>no,estimateTransactionFee:()=>Oo,depositMsgAmino:()=>to,createThorchainToolbox:()=>yo,createStargateClient:()=>I,createSigningStargateClient:()=>q,createOfflineStargateClient:()=>s,createDefaultRegistry:()=>G,createDefaultAminoTypes:()=>k,createCosmosToolbox:()=>D,cosmosValidateAddress:()=>Ko,cosmosCreateTransaction:()=>l,convertToSignable:()=>Z,buildTransferTx:()=>co,buildEncodedTxBody:()=>N,buildDepositTx:()=>mo,buildAminoMsg:()=>M,bech32ToBase64:()=>Y,base64ToBech32:()=>K,YUM_KUJIRA_FACTORY_DENOM:()=>xo,USK_KUJIRA_FACTORY_DENOM:()=>e,THORCHAIN_GAS_VALUE:()=>Go,MAYA_GAS_VALUE:()=>Fo,DEFAULT_KUJI_FEE_MAINNET:()=>vo,DEFAULT_COSMOS_FEE_MAINNET:()=>To});module.exports=eo(lo);var L=require("@scure/base"),wo=require("@swapkit/helpers"),U=require("base64-js");function Y(o){return L.base64.encode(Uint8Array.from(L.bech32.fromWords(L.bech32.decode(o).words)))}function K(o,r="thor"){return L.bech32.encode(r,L.bech32.toWords(L.base64.decode(o)))}function Zo(o){return U.fromByteArray(o)}function Ao(o){if(!o.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new wo.SwapKitError("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return U.toByteArray(o)}var R=require("@swapkit/helpers");var y=require("@swapkit/helpers"),e="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",xo="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",To={amount:[{denom:"uatom",amount:"500"}],gas:"200000"},vo={amount:[{denom:"ukuji",amount:"1000"}],gas:"200000"};function j(o){switch(o){case y.Chain.Maya:return{amount:[],gas:"10000000000"};case y.Chain.THORChain:return{amount:[],gas:"500000000"};case y.Chain.Kujira:return vo;default:return To}}var P=(o,r=!1)=>{if(r)return o.toLowerCase();switch(o){case"uUSK":case"USK":return e;case"uYUM":case"YUM":return xo;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";default:return o}},O=({symbol:o,chain:r})=>{if(r===y.Chain.Maya)return(o.toUpperCase()!=="CACAO"?o:`${y.Chain.Maya}.${o}`).toUpperCase();if(r===y.Chain.THORChain)return(["RUNE","TCY","RUJI"].includes(o.toUpperCase())?`${y.Chain.THORChain}.${o}`:o).toUpperCase();return P(o,!1)};async function I(o){let{StargateClient:r}=await import("@cosmjs/stargate"),t=typeof window!=="undefined"?{}:{referrer:"https://sk.thorswap.net",referer:"https://sk.thorswap.net"};return r.connect({url:o,headers:t})}async function q(o,r,t={}){let{SigningStargateClient:f,GasPrice:p}=(await import("@cosmjs/stargate")).default,w=typeof t==="string"?t:"0.0003uatom",x=typeof t==="string"?{}:t;return f.connectWithSigner(o,r,{gasPrice:p.fromString(w),...x})}async function s(o,r){let{SigningStargateClient:t}=(await import("@cosmjs/stargate")).default;return t.offline(o,r)}var uo=(o)=>{let{isStagenet:r}=y.SKConfig.get("envs"),t=y.SKConfig.get("rpcUrls");switch(o){case y.ChainId.Kujira:return t.KUJI;case y.ChainId.THORChain:case"thorchain-mainnet-v1":return r?t.THOR_STAGENET:t.THOR;case y.ChainId.Maya:return r?t.MAYA_STAGENET:t.MAYA;default:return t.GAIA}},Qo=(o)=>{switch(o){case y.Chain.Maya:case y.Chain.THORChain:return"/types.MsgSend";case y.Chain.Cosmos:case y.Chain.Kujira:return"/cosmos.bank.v1beta1.MsgSend";default:throw new y.SwapKitError("toolbox_cosmos_not_supported",{chain:o})}},l=async({sender:o,recipient:r,assetValue:t,memo:f="",feeRate:p,sequence:w,accountNumber:x})=>{let{chain:C,chainId:u}=t,m=uo(u),T=await(await I(m)).getAccount(o);if(!T)throw new y.SwapKitError("toolbox_cosmos_account_not_found",{sender:o});let _=y.AssetValue.from({chain:C}),H=P(_.symbol),v=j(C),i=H&&p?{amount:[{denom:H,amount:p.toString()}],gas:v.gas}:v,W={fromAddress:o,toAddress:r,amount:[{amount:t.getBaseValue("string"),denom:P(t.symbol)}]};return{accountNumber:x??T.accountNumber,chainId:u,fee:i,memo:f,sequence:w??T.sequence,msgs:[{typeUrl:Qo(C),value:W}]}},Xo={rune:{chain:y.Chain.THORChain,decimals:y.BaseDecimal[y.Chain.THORChain]},tcy:{asset:"THOR.TCY",decimals:y.BaseDecimal[y.Chain.THORChain]},"x/kuji":{asset:"THOR.KUJI",decimals:y.BaseDecimal[y.Chain.THORChain]},uatom:{chain:y.Chain.Cosmos,decimals:y.BaseDecimal[y.Chain.Cosmos]},atom:{chain:y.Chain.Cosmos,decimals:y.BaseDecimal[y.Chain.Cosmos]},cacao:{chain:y.Chain.Maya,decimals:10},maya:{asset:`${y.Chain.Maya}.${y.Chain.Maya}`,decimals:4},ukuji:{chain:y.Chain.Kujira,decimals:y.BaseDecimal[y.Chain.Kujira]},kuji:{chain:y.Chain.Kujira,decimals:y.BaseDecimal[y.Chain.Kujira]},[e.toLowerCase()]:{asset:`${y.Chain.Kujira}.USK`,decimals:y.BaseDecimal[y.Chain.Kujira]}},a=(o,r)=>{let t=Xo[o.toLowerCase()];if(!t)return y.AssetValue.from({asset:o,value:r,fromBaseDecimal:8});let{chain:f,asset:p,decimals:w}=t,x=f?{chain:f}:{asset:p};return y.AssetValue.from({...x,value:r,fromBaseDecimal:w})};var Co=require("@swapkit/helpers");async function G(){let{$root:o}=await import("../../chunk-4yap1fvd.js"),{Registry:r}=(await import("@cosmjs/proto-signing")).default,{defaultRegistryTypes:t}=(await import("@cosmjs/stargate")).default;return new r([...t,["/types.MsgSend",o.types.MsgSend],["/types.MsgDeposit",o.types.MsgDeposit]])}async function k(o){let{AminoTypes:r}=(await import("@cosmjs/stargate")).default,t=o===Co.Chain.THORChain?"thorchain":"mayachain";return new r({"/types.MsgSend":{aminoType:`${t}/MsgSend`,toAmino:({fromAddress:f,toAddress:p,...w})=>({...w,from_address:K(f),to_address:K(p)}),fromAmino:({from_address:f,to_address:p,...w})=>({...w,fromAddress:Y(f),toAddress:Y(p)})},"/types.MsgDeposit":{aminoType:`${t}/MsgDeposit`,toAmino:({signer:f,...p})=>({...p,signer:K(f)}),fromAmino:({signer:f,...p})=>({...p,signer:Y(f)})}})}var Go=j(R.Chain.THORChain).gas,Fo=j(R.Chain.Maya).gas,oo=({sender:o,recipient:r,assetValue:t})=>{return{type:`${t.chain===R.Chain.Maya?"mayachain":"thorchain"}/MsgSend`,value:{from_address:o,to_address:r,amount:[{amount:t.getBaseValue("string"),denom:P(t.symbol,!0)}]}}},to=({sender:o,assetValue:r,memo:t=""})=>{return{type:`${r.chain===R.Chain.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:r.getBaseValue("string"),asset:O(r)}],signer:o,memo:t}}},M=({sender:o,recipient:r,assetValue:t,memo:f})=>{return!r?to({sender:o,assetValue:t,memo:f}):oo({sender:o,recipient:r,assetValue:t})},Z=async(o,r)=>{return(await k(r)).fromAmino(o)},$o=async({rpcUrl:o,sender:r})=>{let f=await(await I(o)).getAccount(r);if(!f)throw new R.SwapKitError("toolbox_cosmos_account_not_found",{sender:r});return f};function ro(o){return function r(t){let{assetValue:f,recipient:p,memo:w,sender:x,asSignable:C,asAminoMessage:u}=t;if(p)return co(o)({sender:x,recipient:p,assetValue:f,memo:w,asSignable:C,asAminoMessage:u});return mo(o)({sender:x,assetValue:f,memo:w,asSignable:C,asAminoMessage:u})}}var co=(o)=>async({sender:r,recipient:t,assetValue:f,memo:p="",asSignable:w=!0,asAminoMessage:x=!1,sequence:C,accountNumber:u})=>{let m=await $o({rpcUrl:o,sender:r}),c=f.chain,T=oo({sender:r,recipient:t,assetValue:f}),_=w?await Z(x?T:A(T),c):T;return{chainId:R.ChainToChainId[c],accountNumber:u||m.accountNumber,sequence:C||m.sequence,msgs:[_],fee:j(f.chain),memo:p}},mo=(o)=>async({sender:r,assetValue:t,memo:f="",asSignable:p=!0,asAminoMessage:w=!1,sequence:x,accountNumber:C})=>{let u=await $o({rpcUrl:o,sender:r}),m=t.chain,c=to({sender:r,assetValue:t,memo:f}),T=p?await Z(w?c:A(c),m):c;return{chainId:R.ChainToChainId[m],accountNumber:C||u.accountNumber,sequence:x||u.sequence,msgs:[T],fee:j(t.chain),memo:f}};function A(o){if(o.type==="thorchain/MsgSend"||o.type==="mayachain/MsgSend")return o;return{...o,value:{...o.value,coins:o.value.coins.map((r)=>{let t=R.AssetValue.from({asset:r.asset}),f=(t.isSynthetic?t.symbol.split("/")?.[1]:t.symbol)?.toUpperCase(),p=(t.isSynthetic?t.symbol.split("/")?.[0]:t.chain)?.toUpperCase();return{...r,asset:{chain:p,symbol:f,ticker:t.ticker,synth:t.isSynthetic}}})}}}async function N({chain:o,memo:r,msgs:t}){let f=await G(),p=await k(o),w={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:r,messages:t.map((x)=>p.fromAmino(x))}};return f.encode(w)}var F=require("@swapkit/helpers");var Q=require("@scure/base"),n=require("@swapkit/helpers"),po=require("@swapkit/helpers/api"),S=require("ts-pattern");async function no(o,r){try{let f=(await po.SwapKitApi.getGasRate()).find((p)=>p.chainId===o)?.value;return f?Number.parseFloat(f):r}catch(t){return r}}async function fo({phrase:o,prefix:r,...t}){let{DirectSecp256k1HdWallet:f}=(await import("@cosmjs/proto-signing")).default,{stringToPath:p}=(await import("@cosmjs/crypto")).default,w="derivationPath"in t?t.derivationPath:`${n.DerivationPath[t.chain]}/${t.index}`;return f.fromMnemonic(o,{prefix:r,hdPaths:[p(w)]})}async function Jo({privateKey:o,prefix:r}){let{DirectSecp256k1Wallet:t}=(await import("@cosmjs/proto-signing")).default;return t.fromKey(o,r)}var _o={[n.Chain.Cosmos]:500,[n.Chain.Kujira]:1000,[n.Chain.THORChain]:5000000,[n.Chain.Maya]:5000000};function Ho(o){return async function r({signature:t,message:f,address:p}){let w=await o(p);if(!w?.pubkey)throw new n.SwapKitError("toolbox_cosmos_verify_signature_no_pubkey");let{Secp256k1Signature:x,Secp256k1:C}=(await import("@cosmjs/crypto")).default,u=x.fromFixedLength(Q.base64.decode(t));return C.verifySignature(u,Q.base64.decode(f),w.pubkey.value)}}async function D({chain:o,...r}){let t=n.SKConfig.get("rpcUrls")[o],f=n.CosmosChainPrefixes[o],p="index"in r?r.index||0:0,w=n.derivationPathToString("derivationPath"in r&&r.derivationPath?r.derivationPath:n.updateDerivationPath(n.NetworkDerivationPath[o],{index:p})),x=await S.match(r).with({phrase:S.P.string},({phrase:T})=>fo({phrase:T,prefix:f,derivationPath:w})).with({signer:S.P.any},({signer:T})=>T).otherwise(()=>{return});async function C(T){return(await I(t)).getAccount(T)}async function u(){let[T]=await x?.getAccounts()||[];return T?.address}async function m(){let[T]=await x?.getAccounts()||[];if(!T?.pubkey)throw new n.SwapKitError("toolbox_cosmos_signer_not_defined");return Q.base64.encode(T?.pubkey)}async function c({recipient:T,assetValue:_,memo:H="",feeRate:v,feeOptionKey:i=n.FeeOption.Fast}){let W=await u();if(!(x&&W))throw new n.SwapKitError("toolbox_cosmos_signer_not_defined");let z=n.AssetValue.from({chain:o}),B=O(z),h=v||No((await io(o,_o[o]))[i],B),b=await q(t,x),V=[{denom:P(`u${_.symbol}`).toLowerCase(),amount:_.getBaseValue("string")}],{transactionHash:J}=await b.sendTokens(W,T,V,h,H);return J}return{transfer:c,getAddress:u,getAccount:C,getBalance:async(T,_)=>{let H=await Wo(t)(T);return await Promise.all(H.filter(({denom:v})=>v&&!v.includes("IBC/")).map(({denom:v,amount:i})=>{let W=[n.Chain.THORChain,n.Chain.Maya].includes(o)&&(v.includes("/")||v.includes("˜"))?`${o}.${v}`:v;return a(W,i)}))},getSignerFromPhrase:async({phrase:T,derivationPath:_})=>fo({phrase:T,prefix:f,derivationPath:n.derivationPathToString(_),index:p}),getSignerFromPrivateKey:async(T)=>{let{DirectSecp256k1Wallet:_}=(await import("@cosmjs/proto-signing")).default;return _.fromKey(T,f)},createPrivateKeyFromPhrase:Do(w),validateAddress:Ro(f),getPubKey:m,getFees:()=>io(o,_o[o]),fetchFeeRateFromSwapKit:no,getBalanceAsDenoms:Wo(t),createTransaction:l,verifySignature:Ho(C)}}async function Yo(o,r){try{let f=(await po.SwapKitApi.getGasRate()).find((p)=>p.chainId===o)?.value;return f?Number.parseFloat(f):r}catch(t){return r}}function Ko({address:o,chain:r,prefix:t}){let f=t||qo(r);if(!(f&&o))throw new n.SwapKitError("toolbox_cosmos_validate_address_prefix_not_found");return Ro(f)(o)}function Oo({assetValue:{chain:o}}){return n.AssetValue.from({chain:o,value:So(o)})}function qo(o){let{isStagenet:r}=n.SKConfig.get("envs"),t=o?[n.Chain.THORChain,n.Chain.Maya].includes(o)&&r:!1,f=o?n.CosmosChainPrefixes[o]:void 0;return t?`s${f}`:f}async function io(o,r){let t=await no(n.ChainToChainId[o],r);return{average:n.SwapKitNumber.fromBigInt(BigInt(t),n.BaseDecimal[o]),fast:n.SwapKitNumber.fromBigInt(BigInt(n.applyFeeMultiplier(t,n.FeeOption.Fast,!0)),n.BaseDecimal[o]),fastest:n.SwapKitNumber.fromBigInt(BigInt(n.applyFeeMultiplier(t,n.FeeOption.Fastest,!0)),n.BaseDecimal[o])}}function No(o,r){return{amount:[{denom:r,amount:o.getBaseValue("string")}],gas:"200000"}}function So(o){return{[n.Chain.Cosmos]:0.007,[n.Chain.Kujira]:0.02,[n.Chain.THORChain]:0.02,[n.Chain.Maya]:0.02}[o]||0}function Ro(o){return function r(t){if(!t.startsWith(o))return!1;try{let{prefix:f,words:p}=Q.bech32.decode(t);return Q.bech32.encode(f,p)===t.toLocaleLowerCase()}catch(f){return!1}}}function Wo(o){return async function r(t){return(await(await I(o)).getAllBalances(t)).map((x)=>({...x,denom:x.denom.includes("/")?x.denom.toUpperCase():x.denom}))}}function Do(o){return async function r(t){let{Bip39:f,EnglishMnemonic:p,Slip10:w,Slip10Curve:x,stringToPath:C}=(await import("@cosmjs/crypto")).default,u=new p(t),m=await f.mnemonicToSeed(u),{privkey:c}=w.derivePath(x.Secp256k1,m,C(o));return c}}var X=require("@scure/base"),d=require("@swapkit/helpers"),E=require("ts-pattern");function Eo({prefix:o,derivationPath:r}){return async function t(f,p=0){let{Secp256k1HdWallet:w}=(await import("@cosmjs/amino")).default,{stringToPath:x}=(await import("@cosmjs/crypto")).default;return w.fromMnemonic(f,{hdPaths:[x(`${r}/${p}`)],prefix:o})}}function Uo(o){return X.base64.encode(o)}function Mo(o){return async function r({wallet:t,tx:f}){let{msgs:p,accountNumber:w,sequence:x,chainId:C,fee:u,memo:m}=typeof f==="string"?JSON.parse(f):f,c=(await t.getAccounts())?.[0]?.address||"",T=await k(o),_=await G(),H=await s(t,{registry:_,aminoTypes:T}),v=[];for(let z of p){let B=await Z(z,o);v.push(B)}let{signatures:[i]}=await H.sign(c,v,u,m,{accountNumber:w,sequence:x,chainId:C}),W=await N({chain:o,memo:m,msgs:p.map(A)});return{signature:Uo(i),bodyBytes:W}}}function ho({prefix:o,rpcUrl:r}){return async function t(f,p,w,x,C){let{encodeSecp256k1Pubkey:u,pubkeyToAddress:m}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:c}=(await import("@cosmjs/stargate")).default,{sequence:T,fee:_}=JSON.parse(f),H=await jo(w,x),v=p.map((z)=>[m(u(X.base64.decode(z.pubKey)),o),X.base64.decode(z.signature)]),i=await I(r),{transactionHash:W}=await i.broadcastTx(c(H,T,_,C,new Map(v)));return W}}async function jo(o,r,t=!0){let{createMultisigThresholdPubkey:f,encodeSecp256k1Pubkey:p}=(await import("@cosmjs/amino")).default;return f(o.map((w)=>p(X.base64.decode(w))),r,t)}function bo(o){return X.base64.decode(o)}async function Vo({privateKey:o,message:r}){let{Secp256k1:t}=(await import("@cosmjs/crypto")).default,f=await t.createSignature(X.base64.decode(r),o);return X.base64.encode(Buffer.concat([f.r(32),f.s(32)]))}async function yo({chain:o,...r}){let t=d.SKConfig.get("nodeUrls")[o],f=d.SKConfig.get("rpcUrls")[o],{isStagenet:p}=d.SKConfig.get("envs"),w=o===d.Chain.THORChain,x=`${p?"s":""}${d.CosmosChainPrefixes[o]}`,C="index"in r?r.index||0:0,u="derivationPath"in r&&r.derivationPath?r.derivationPath:d.updateDerivationPath(d.NetworkDerivationPath[o],{index:C}),m=await D({chain:o,...r}),c=await E.match(r).with({phrase:E.P.string},({phrase:v})=>m.getSignerFromPhrase({phrase:v,derivationPath:u})).with({signer:E.P.any},({signer:v})=>v).otherwise(()=>{return}),T=j(o);async function _(){let v,i=`${t}/${w?"thorchain":"mayachain"}/constants`;try{let{int_64_values:{NativeTransactionFee:W}}=await d.RequestClient.get(i);if(!W||Number.isNaN(W)||W<0)throw new d.SwapKitError("toolbox_cosmos_invalid_fee",{nativeFee:W.toString()});v=new d.SwapKitNumber(W)}catch{v=new d.SwapKitNumber({value:w?0.02:1,decimal:d.BaseDecimal[o]})}return{[d.FeeOption.Average]:v,[d.FeeOption.Fast]:v,[d.FeeOption.Fastest]:v}}async function H({assetValue:v,memo:i="",recipient:W}){let{TxRaw:z}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),B=(await c?.getAccounts())?.[0]?.address;if(!(B&&c))throw new d.SwapKitError("toolbox_cosmos_no_signer");let h="signAmino"in c,b=await G(),V=await k(o),J=await q(f,c,{registry:b,aminoTypes:V}),g=M({assetValue:v,sender:B,recipient:W,memo:i});if(h){let Bo=await Z(g,o),{signatures:Lo,authInfoBytes:Po}=await J.sign(B,[Bo],T,i),ko=z.encode({signatures:Lo,authInfoBytes:Po,bodyBytes:await N({chain:o,msgs:[g].map(A),memo:i})}).finish();return(await J.broadcastTx(ko)).transactionHash}let Io=A(g),zo=await Z(Io,o);return(await J.signAndBroadcast(B,[zo],T,i)).transactionHash}return{...m,broadcastMultisigTx:ho({prefix:x,rpcUrl:f}),buildAminoMsg:M,buildEncodedTxBody:N,convertToSignable:Z,createDefaultAminoTypes:()=>k(o),createDefaultRegistry:G,createMultisig:jo,createTransaction:ro(f),deposit:H,getFees:_,importSignature:bo,parseAminoMessageForDirectSigning:A,secp256k1HdWalletFromMnemonic:Eo({derivationPath:d.derivationPathToString(u),prefix:x}),signMultisigTx:Mo(o),signWithPrivateKey:Vo,transfer:H,pubkeyToAddress:async(v)=>{let{pubkeyToAddress:i}=(await import("@cosmjs/amino")).default;return i(v,x)}}}var go=(o,r)=>{switch(o){case F.Chain.Cosmos:case F.Chain.Kujira:return D({chain:o,...r});case F.Chain.Maya:case F.Chain.THORChain:return yo({chain:o,...r});default:throw new F.SwapKitError("toolbox_cosmos_not_supported",{chain:o})}};
2
2
 
3
3
  //# debugId=EDFA2188BA149E9E64756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{d as u,e as C}from"../../chunk-s47y8512.js";import{base64 as fo,bech32 as G}from"@scure/base";import{SwapKitError as No}from"@swapkit/helpers";import{fromByteArray as So,toByteArray as Do}from"base64-js";function F(o){return fo.encode(Uint8Array.from(G.fromWords(G.decode(o).words)))}function J(o,r="thor"){return G.encode(r,G.toWords(fo.decode(o)))}function At(o){return So(o)}function Qt(o){if(!o.match(/^[a-zA-Z0-9+/]*={0,2}$/))throw new No("toolbox_cosmos_invalid_params",{error:"Invalid base64 string format"});return Do(o)}import{AssetValue as eo,Chain as O,ChainToChainId as vo,SwapKitError as so}from"@swapkit/helpers";import{AssetValue as V,BaseDecimal as I,Chain as T,ChainId as b,SKConfig as po,SwapKitError as no}from"@swapkit/helpers";var yo="FACTORY/KUJIRA1QK00H5ATUTPSV900X202PXX42NPJR9THG58DNQPA72F2P7M2LUASE444A7/UUSK",Eo="FACTORY/KUJIRA1YGFXN0ER40KLCNCK8THLTUPRDXLCK6WVNPKF2K/UYUM",Uo={amount:[{denom:"uatom",amount:"500"}],gas:"200000"},Mo={amount:[{denom:"ukuji",amount:"1000"}],gas:"200000"};function z(o){switch(o){case T.Maya:return{amount:[],gas:"10000000000"};case T.THORChain:return{amount:[],gas:"500000000"};case T.Kujira:return Mo;default:return Uo}}var L=(o,r=!1)=>{if(r)return o.toLowerCase();switch(o){case"uUSK":case"USK":return yo;case"uYUM":case"YUM":return Eo;case"uKUJI":case"KUJI":return"ukuji";case"ATOM":case"uATOM":return"uatom";default:return o}},Y=({symbol:o,chain:r})=>{if(r===T.Maya)return(o.toUpperCase()!=="CACAO"?o:`${T.Maya}.${o}`).toUpperCase();if(r===T.THORChain)return(["RUNE","TCY","RUJI"].includes(o.toUpperCase())?`${T.THORChain}.${o}`:o).toUpperCase();return L(o,!1)};async function B(o){let{StargateClient:r}=await import("@cosmjs/stargate"),t=typeof window!=="undefined"?{}:{referrer:"https://sk.thorswap.net",referer:"https://sk.thorswap.net"};return r.connect({url:o,headers:t})}async function K(o,r,t={}){let{SigningStargateClient:f,GasPrice:p}=(await import("@cosmjs/stargate")).default,n=typeof t==="string"?t:"0.0003uatom",y=typeof t==="string"?{}:t;return f.connectWithSigner(o,r,{gasPrice:p.fromString(n),...y})}async function wo(o,r){let{SigningStargateClient:t}=(await import("@cosmjs/stargate")).default;return t.offline(o,r)}var ho=(o)=>{let{isStagenet:r}=po.get("envs"),t=po.get("rpcUrls");switch(o){case b.Kujira:return t.KUJI;case b.THORChain:case"thorchain-mainnet-v1":return r?t.THOR_STAGENET:t.THOR;case b.Maya:return r?t.MAYA_STAGENET:t.MAYA;default:return t.GAIA}},bo=(o)=>{switch(o){case T.Maya:case T.THORChain:return"/types.MsgSend";case T.Cosmos:case T.Kujira:return"/cosmos.bank.v1beta1.MsgSend";default:throw new no("toolbox_cosmos_not_supported",{chain:o})}},xo=async({sender:o,recipient:r,assetValue:t,memo:f="",feeRate:p,sequence:n,accountNumber:y})=>{let{chain:d,chainId:v}=t,c=ho(v),w=await(await B(c)).getAccount(o);if(!w)throw new no("toolbox_cosmos_account_not_found",{sender:o});let m=V.from({chain:d}),W=L(m.symbol),x=z(d),_=W&&p?{amount:[{denom:W,amount:p.toString()}],gas:x.gas}:x,i={fromAddress:o,toAddress:r,amount:[{amount:t.getBaseValue("string"),denom:L(t.symbol)}]};return{accountNumber:y??w.accountNumber,chainId:v,fee:_,memo:f,sequence:n??w.sequence,msgs:[{typeUrl:bo(d),value:i}]}},Vo={rune:{chain:T.THORChain,decimals:I[T.THORChain]},tcy:{asset:"THOR.TCY",decimals:I[T.THORChain]},"x/kuji":{asset:"THOR.KUJI",decimals:I[T.THORChain]},uatom:{chain:T.Cosmos,decimals:I[T.Cosmos]},atom:{chain:T.Cosmos,decimals:I[T.Cosmos]},cacao:{chain:T.Maya,decimals:10},maya:{asset:`${T.Maya}.${T.Maya}`,decimals:4},ukuji:{chain:T.Kujira,decimals:I[T.Kujira]},kuji:{chain:T.Kujira,decimals:I[T.Kujira]},[yo.toLowerCase()]:{asset:`${T.Kujira}.USK`,decimals:I[T.Kujira]}},To=(o,r)=>{let t=Vo[o.toLowerCase()];if(!t)return V.from({asset:o,value:r,fromBaseDecimal:8});let{chain:f,asset:p,decimals:n}=t,y=f?{chain:f}:{asset:p};return V.from({...y,value:r,fromBaseDecimal:n})};import{Chain as go}from"@swapkit/helpers";async function Q(){let{$root:o}=await import("../../chunk-9bqegm61.js"),{Registry:r}=(await import("@cosmjs/proto-signing")).default,{defaultRegistryTypes:t}=(await import("@cosmjs/stargate")).default;return new r([...t,["/types.MsgSend",o.types.MsgSend],["/types.MsgDeposit",o.types.MsgDeposit]])}async function P(o){let{AminoTypes:r}=(await import("@cosmjs/stargate")).default,t=o===go.THORChain?"thorchain":"mayachain";return new r({"/types.MsgSend":{aminoType:`${t}/MsgSend`,toAmino:({fromAddress:f,toAddress:p,...n})=>({...n,from_address:J(f),to_address:J(p)}),fromAmino:({from_address:f,to_address:p,...n})=>({...n,fromAddress:F(f),toAddress:F(p)})},"/types.MsgDeposit":{aminoType:`${t}/MsgDeposit`,toAmino:({signer:f,...p})=>({...p,signer:J(f)}),fromAmino:({signer:f,...p})=>({...p,signer:F(f)})}})}var St=z(O.THORChain).gas,Dt=z(O.Maya).gas,uo=({sender:o,recipient:r,assetValue:t})=>{return{type:`${t.chain===O.Maya?"mayachain":"thorchain"}/MsgSend`,value:{from_address:o,to_address:r,amount:[{amount:t.getBaseValue("string"),denom:L(t.symbol,!0)}]}}},Co=({sender:o,assetValue:r,memo:t=""})=>{return{type:`${r.chain===O.Maya?"mayachain":"thorchain"}/MsgDeposit`,value:{coins:[{amount:r.getBaseValue("string"),asset:Y(r)}],signer:o,memo:t}}},g=({sender:o,recipient:r,assetValue:t,memo:f})=>{return!r?Co({sender:o,assetValue:t,memo:f}):uo({sender:o,recipient:r,assetValue:t})},k=async(o,r)=>{return(await P(r)).fromAmino(o)},$o=async({rpcUrl:o,sender:r})=>{let f=await(await B(o)).getAccount(r);if(!f)throw new so("toolbox_cosmos_account_not_found",{sender:r});return f};function co(o){return function r(t){let{assetValue:f,recipient:p,memo:n,sender:y,asSignable:d,asAminoMessage:v}=t;if(p)return lo(o)({sender:y,recipient:p,assetValue:f,memo:n,asSignable:d,asAminoMessage:v});return ao(o)({sender:y,assetValue:f,memo:n,asSignable:d,asAminoMessage:v})}}var lo=(o)=>async({sender:r,recipient:t,assetValue:f,memo:p="",asSignable:n=!0,asAminoMessage:y=!1,sequence:d,accountNumber:v})=>{let c=await $o({rpcUrl:o,sender:r}),$=f.chain,w=uo({sender:r,recipient:t,assetValue:f}),m=n?await k(y?w:Z(w),$):w;return{chainId:vo[$],accountNumber:v||c.accountNumber,sequence:d||c.sequence,msgs:[m],fee:z(f.chain),memo:p}},ao=(o)=>async({sender:r,assetValue:t,memo:f="",asSignable:p=!0,asAminoMessage:n=!1,sequence:y,accountNumber:d})=>{let v=await $o({rpcUrl:o,sender:r}),c=t.chain,$=Co({sender:r,assetValue:t,memo:f}),w=p?await k(n?$:Z($),c):$;return{chainId:vo[c],accountNumber:d||v.accountNumber,sequence:y||v.sequence,msgs:[w],fee:z(t.chain),memo:f}};function Z(o){if(o.type==="thorchain/MsgSend"||o.type==="mayachain/MsgSend")return o;return{...o,value:{...o.value,coins:o.value.coins.map((r)=>{let t=eo.from({asset:r.asset}),f=(t.isSynthetic?t.symbol.split("/")?.[1]:t.symbol)?.toUpperCase(),p=(t.isSynthetic?t.symbol.split("/")?.[0]:t.chain)?.toUpperCase();return{...r,asset:{chain:p,symbol:f,ticker:t.ticker,synth:t.isSynthetic}}})}}}async function q({chain:o,memo:r,msgs:t}){let f=await Q(),p=await P(o),n={typeUrl:"/cosmos.tx.v1beta1.TxBody",value:{memo:r,messages:t.map((y)=>p.fromAmino(y))}};return f.encode(n)}import{Chain as D,SwapKitError as zt}from"@swapkit/helpers";import{base64 as a,bech32 as e}from"@scure/base";import{AssetValue as Io,BaseDecimal as s,Chain as H,ChainToChainId as ot,CosmosChainPrefixes as zo,DerivationPath as tt,FeeOption as oo,NetworkDerivationPath as rt,SKConfig as Bo,SwapKitError as N,SwapKitNumber as l,applyFeeMultiplier as mo,derivationPathToString as _o,updateDerivationPath as ft}from"@swapkit/helpers";import{SwapKitApi as Lo}from"@swapkit/helpers/api";import{P as io,match as pt}from"ts-pattern";async function Po(o,r){try{let f=(await Lo.getGasRate()).find((p)=>p.chainId===o)?.value;return f?Number.parseFloat(f):r}catch(t){return r}}async function Wo({phrase:o,prefix:r,...t}){let{DirectSecp256k1HdWallet:f}=(await import("@cosmjs/proto-signing")).default,{stringToPath:p}=(await import("@cosmjs/crypto")).default,n="derivationPath"in t?t.derivationPath:`${tt[t.chain]}/${t.index}`;return f.fromMnemonic(o,{prefix:r,hdPaths:[p(n)]})}async function tr({privateKey:o,prefix:r}){let{DirectSecp256k1Wallet:t}=(await import("@cosmjs/proto-signing")).default;return t.fromKey(o,r)}var Ho={[H.Cosmos]:500,[H.Kujira]:1000,[H.THORChain]:5000000,[H.Maya]:5000000};function nt(o){return async function r({signature:t,message:f,address:p}){let n=await o(p);if(!n?.pubkey)throw new N("toolbox_cosmos_verify_signature_no_pubkey");let{Secp256k1Signature:y,Secp256k1:d}=(await import("@cosmjs/crypto")).default,v=y.fromFixedLength(a.decode(t));return d.verifySignature(v,a.decode(f),n.pubkey.value)}}async function S({chain:o,...r}){let t=Bo.get("rpcUrls")[o],f=zo[o],p="index"in r?r.index||0:0,n=_o("derivationPath"in r&&r.derivationPath?r.derivationPath:ft(rt[o],{index:p})),y=await pt(r).with({phrase:io.string},({phrase:w})=>Wo({phrase:w,prefix:f,derivationPath:n})).with({signer:io.any},({signer:w})=>w).otherwise(()=>{return});async function d(w){return(await B(t)).getAccount(w)}async function v(){let[w]=await y?.getAccounts()||[];return w?.address}async function c(){let[w]=await y?.getAccounts()||[];if(!w?.pubkey)throw new N("toolbox_cosmos_signer_not_defined");return a.encode(w?.pubkey)}async function $({recipient:w,assetValue:m,memo:W="",feeRate:x,feeOptionKey:_=oo.Fast}){let i=await v();if(!(y&&i))throw new N("toolbox_cosmos_signer_not_defined");let R=Io.from({chain:o}),j=Y(R),E=x||wt((await Ro(o,Ho[o]))[_],j),U=await K(t,y),M=[{denom:L(`u${m.symbol}`).toLowerCase(),amount:m.getBaseValue("string")}],{transactionHash:X}=await U.sendTokens(i,w,M,E,W);return X}return{transfer:$,getAddress:v,getAccount:d,getBalance:async(w,m)=>{let W=await jo(t)(w);return await Promise.all(W.filter(({denom:x})=>x&&!x.includes("IBC/")).map(({denom:x,amount:_})=>{let i=[H.THORChain,H.Maya].includes(o)&&(x.includes("/")||x.includes("˜"))?`${o}.${x}`:x;return To(i,_)}))},getSignerFromPhrase:async({phrase:w,derivationPath:m})=>Wo({phrase:w,prefix:f,derivationPath:_o(m),index:p}),getSignerFromPrivateKey:async(w)=>{let{DirectSecp256k1Wallet:m}=(await import("@cosmjs/proto-signing")).default;return m.fromKey(w,f)},createPrivateKeyFromPhrase:Tt(n),validateAddress:ko(f),getPubKey:c,getFees:()=>Ro(o,Ho[o]),fetchFeeRateFromSwapKit:Po,getBalanceAsDenoms:jo(t),createTransaction:xo,verifySignature:nt(d)}}async function rr(o,r){try{let f=(await Lo.getGasRate()).find((p)=>p.chainId===o)?.value;return f?Number.parseFloat(f):r}catch(t){return r}}function fr({address:o,chain:r,prefix:t}){let f=t||yt(r);if(!(f&&o))throw new N("toolbox_cosmos_validate_address_prefix_not_found");return ko(f)(o)}function pr({assetValue:{chain:o}}){return Io.from({chain:o,value:xt(o)})}function yt(o){let{isStagenet:r}=Bo.get("envs"),t=o?[H.THORChain,H.Maya].includes(o)&&r:!1,f=o?zo[o]:void 0;return t?`s${f}`:f}async function Ro(o,r){let t=await Po(ot[o],r);return{average:l.fromBigInt(BigInt(t),s[o]),fast:l.fromBigInt(BigInt(mo(t,oo.Fast,!0)),s[o]),fastest:l.fromBigInt(BigInt(mo(t,oo.Fastest,!0)),s[o])}}function wt(o,r){return{amount:[{denom:r,amount:o.getBaseValue("string")}],gas:"200000"}}function xt(o){return{[H.Cosmos]:0.007,[H.Kujira]:0.02,[H.THORChain]:0.02,[H.Maya]:0.02}[o]||0}function ko(o){return function r(t){if(!t.startsWith(o))return!1;try{let{prefix:f,words:p}=e.decode(t);return e.encode(f,p)===t.toLocaleLowerCase()}catch(f){return!1}}}function jo(o){return async function r(t){return(await(await B(o)).getAllBalances(t)).map((y)=>({...y,denom:y.denom.includes("/")?y.denom.toUpperCase():y.denom}))}}function Tt(o){return async function r(t){let{Bip39:f,EnglishMnemonic:p,Slip10:n,Slip10Curve:y,stringToPath:d}=(await import("@cosmjs/crypto")).default,v=new p(t),c=await f.mnemonicToSeed(v),{privkey:$}=n.derivePath(y.Secp256k1,c,d(o));return $}}import{base64 as A}from"@scure/base";import{BaseDecimal as vt,Chain as dt,CosmosChainPrefixes as ut,FeeOption as to,NetworkDerivationPath as Ct,RequestClient as $t,SKConfig as ro,SwapKitError as Zo,SwapKitNumber as Ao,derivationPathToString as ct,updateDerivationPath as mt}from"@swapkit/helpers";import{P as Qo,match as _t}from"ts-pattern";function it({prefix:o,derivationPath:r}){return async function t(f,p=0){let{Secp256k1HdWallet:n}=(await import("@cosmjs/amino")).default,{stringToPath:y}=(await import("@cosmjs/crypto")).default;return n.fromMnemonic(f,{hdPaths:[y(`${r}/${p}`)],prefix:o})}}function Wt(o){return A.encode(o)}function Ht(o){return async function r({wallet:t,tx:f}){let{msgs:p,accountNumber:n,sequence:y,chainId:d,fee:v,memo:c}=typeof f==="string"?JSON.parse(f):f,$=(await t.getAccounts())?.[0]?.address||"",w=await P(o),m=await Q(),W=await wo(t,{registry:m,aminoTypes:w}),x=[];for(let R of p){let j=await k(R,o);x.push(j)}let{signatures:[_]}=await W.sign($,x,v,c,{accountNumber:n,sequence:y,chainId:d}),i=await q({chain:o,memo:c,msgs:p.map(Z)});return{signature:Wt(_),bodyBytes:i}}}function Rt({prefix:o,rpcUrl:r}){return async function t(f,p,n,y,d){let{encodeSecp256k1Pubkey:v,pubkeyToAddress:c}=(await import("@cosmjs/amino")).default,{makeMultisignedTxBytes:$}=(await import("@cosmjs/stargate")).default,{sequence:w,fee:m}=JSON.parse(f),W=await Xo(n,y),x=p.map((R)=>[c(v(A.decode(R.pubKey)),o),A.decode(R.signature)]),_=await B(r),{transactionHash:i}=await _.broadcastTx($(W,w,m,d,new Map(x)));return i}}async function Xo(o,r,t=!0){let{createMultisigThresholdPubkey:f,encodeSecp256k1Pubkey:p}=(await import("@cosmjs/amino")).default;return f(o.map((n)=>p(A.decode(n))),r,t)}function jt(o){return A.decode(o)}async function It({privateKey:o,message:r}){let{Secp256k1:t}=(await import("@cosmjs/crypto")).default,f=await t.createSignature(A.decode(r),o);return A.encode(Buffer.concat([f.r(32),f.s(32)]))}async function Go({chain:o,...r}){let t=ro.get("nodeUrls")[o],f=ro.get("rpcUrls")[o],{isStagenet:p}=ro.get("envs"),n=o===dt.THORChain,y=`${p?"s":""}${ut[o]}`,d="index"in r?r.index||0:0,v="derivationPath"in r&&r.derivationPath?r.derivationPath:mt(Ct[o],{index:d}),c=await S({chain:o,...r}),$=await _t(r).with({phrase:Qo.string},({phrase:x})=>c.getSignerFromPhrase({phrase:x,derivationPath:v})).with({signer:Qo.any},({signer:x})=>x).otherwise(()=>{return}),w=z(o);async function m(){let x,_=`${t}/${n?"thorchain":"mayachain"}/constants`;try{let{int_64_values:{NativeTransactionFee:i}}=await $t.get(_);if(!i||Number.isNaN(i)||i<0)throw new Zo("toolbox_cosmos_invalid_fee",{nativeFee:i.toString()});x=new Ao(i)}catch{x=new Ao({value:n?0.02:1,decimal:vt[o]})}return{[to.Average]:x,[to.Fast]:x,[to.Fastest]:x}}async function W({assetValue:x,memo:_="",recipient:i}){let{TxRaw:R}=await import("cosmjs-types/cosmos/tx/v1beta1/tx"),j=(await $?.getAccounts())?.[0]?.address;if(!(j&&$))throw new Zo("toolbox_cosmos_no_signer");let E="signAmino"in $,U=await Q(),M=await P(o),X=await K(f,$,{registry:U,aminoTypes:M}),h=g({assetValue:x,sender:j,recipient:i,memo:_});if(E){let Yo=await k(h,o),{signatures:Ko,authInfoBytes:Oo}=await X.sign(j,[Yo],w,_),qo=R.encode({signatures:Ko,authInfoBytes:Oo,bodyBytes:await q({chain:o,msgs:[h].map(Z),memo:_})}).finish();return(await X.broadcastTx(qo)).transactionHash}let Fo=Z(h),Jo=await k(Fo,o);return(await X.signAndBroadcast(j,[Jo],w,_)).transactionHash}return{...c,broadcastMultisigTx:Rt({prefix:y,rpcUrl:f}),buildAminoMsg:g,buildEncodedTxBody:q,convertToSignable:k,createDefaultAminoTypes:()=>P(o),createDefaultRegistry:Q,createMultisig:Xo,createTransaction:co(f),deposit:W,getFees:m,importSignature:jt,parseAminoMessageForDirectSigning:Z,secp256k1HdWalletFromMnemonic:it({derivationPath:ct(v),prefix:y}),signMultisigTx:Ht(o),signWithPrivateKey:It,transfer:W,pubkeyToAddress:async(x)=>{let{pubkeyToAddress:_}=(await import("@cosmjs/amino")).default;return _(x,y)}}}var mr=(o,r)=>{switch(o){case D.Cosmos:case D.Kujira:return S({chain:o,...r});case D.Maya:case D.THORChain:return Go({chain:o,...r});default:throw new zt("toolbox_cosmos_not_supported",{chain:o})}};export{nt as verifySignature,uo as transferMsgAmino,At as toBase64,Z as parseAminoMessageForDirectSigning,tr as getSignerFromPrivateKey,Wo as getSignerFromPhrase,ho as getRPC,L as getMsgSendDenom,rr as getFeeRateFromThorswap,Y as getDenomWithChain,z as getDefaultChainFee,co as getCreateTransaction,mr as getCosmosToolbox,To as getAssetFromDenom,Qt as fromBase64,Po as fetchFeeRateFromSwapKit,pr as estimateTransactionFee,Co as depositMsgAmino,Go as createThorchainToolbox,B as createStargateClient,K as createSigningStargateClient,wo as createOfflineStargateClient,Q as createDefaultRegistry,P as createDefaultAminoTypes,S as createCosmosToolbox,fr as cosmosValidateAddress,xo as cosmosCreateTransaction,k as convertToSignable,lo as buildTransferTx,q as buildEncodedTxBody,ao as buildDepositTx,g as buildAminoMsg,F as bech32ToBase64,J as base64ToBech32,Eo as YUM_KUJIRA_FACTORY_DENOM,yo as USK_KUJIRA_FACTORY_DENOM,St as THORCHAIN_GAS_VALUE,Dt as MAYA_GAS_VALUE,Mo as DEFAULT_KUJI_FEE_MAINNET,Uo as DEFAULT_COSMOS_FEE_MAINNET};
2
2
 
3
3
  //# debugId=C9EEC80BED57C4E864756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var Kt={};jt(Kt,{toHexString:()=>Z,toChecksumAddress:()=>qt,isStateChangingCall:()=>Tt,isBrowserProvider:()=>V,getTokenAddress:()=>S,getProvider:()=>k,getNetworkParams:()=>v,getL1GasPriceFetcher:()=>g,getIsEIP1559Compatible:()=>d,getEvmToolbox:()=>ht,getEvmApi:()=>Y,getEstimateTransactionFee:()=>O,getEstimateGasPrices:()=>J,getEIP1193SendTransaction:()=>N,getCreateContractTxObject:()=>W,getCreateContract:()=>bt,getChecksumAddressFromAsset:()=>Jt,evmValidateAddress:()=>pt,estimateMaxSendableAmount:()=>Zt,estimateL1Gas:()=>xt,createCustomEvmApi:()=>Ht,createContract:()=>P,OPToolbox:()=>at,MAX_APPROVAL:()=>K,MATICToolbox:()=>ot,EthNetwork:()=>ct,ETHToolbox:()=>r,BaseEVMToolbox:()=>X,BSCToolbox:()=>yt,BASEToolbox:()=>ut,AVAXToolbox:()=>nt,ARBToolbox:()=>tt});module.exports=_t(Kt);var j=require("@swapkit/helpers");function Y(t){let u=j.SKConfig.get("apis")[t];if(u)return j.warnOnce(!0,"Using custom EVM API. Be sure to implement all methods to avoid issues."),u;return zt(t)}function Ht(t){return t}function zt(t){return{getBalance:mt(t)}}var m=require("@swapkit/helpers");var y=require("@swapkit/helpers"),G=require("@swapkit/helpers/contracts"),x=require("ethers");var K=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function X({chain:t=y.Chain.Ethereum,provider:u,signer:n,isEIP1559Compatible:o=!0}){return{getAddress:()=>{return n?n.getAddress():void 0},call:F({provider:u,signer:n,isEIP1559Compatible:o,chain:t}),estimateCall:st({provider:u,signer:n}),EIP1193SendTransaction:N(u),approve:Gt({provider:u,signer:n,isEIP1559Compatible:o,chain:t}),approvedAmount:it({provider:u,chain:t}),broadcastTransaction:u.broadcastTransaction,createApprovalTx:Yt({provider:u,signer:n,chain:t}),createContract:bt({provider:u,chain:t}),createContractTxObject:W({provider:u,chain:t}),createTransferTx:A({provider:u,signer:n,chain:t}),createTransaction:A({provider:u,signer:n,chain:t}),estimateGasLimit:$t({provider:u,signer:n,chain:t}),estimateGasPrices:J({chain:t,provider:u,isEIP1559Compatible:o}),isApproved:Ct({provider:u,chain:t}),sendTransaction:wt({provider:u,signer:n,isEIP1559Compatible:o,chain:t}),signMessage:n?.signMessage,transfer:Wt({provider:u,signer:n,isEIP1559Compatible:o,chain:t}),validateAddress:(e)=>pt({address:e})}}function pt({address:t}){try{return x.getAddress(t),!0}catch(u){return!1}}function V(t){return t instanceof x.BrowserProvider}function P(t,u,n){return new x.Contract(t,x.Interface.from(u),n)}function bt({provider:t}){return function u(n,o){return new x.Contract(n,x.Interface.from(o),t)}}var Et=["payable","nonpayable"];function Tt({abi:t,funcName:u}){let n=t.find((o)=>o.name===u);if(!n)throw new y.SwapKitError("toolbox_evm_no_abi_fragment",{funcName:u});return n.stateMutability&&Et.includes(n.stateMutability)}function qt(t){return x.getAddress(t)}function N(t){return function u({value:n,...o}){if(!V(t))throw new y.SwapKitError("toolbox_evm_provider_not_eip1193_compatible");return t.send("eth_sendTransaction",[{value:Z(BigInt(n||0)),...o}])}}function Jt(t,u){let n=S(t,u);if(n)return x.getAddress(n.toLowerCase());throw new y.SwapKitError("toolbox_evm_invalid_gas_asset_address")}var kt={[y.Chain.Arbitrum]:y.ContractAddress.ARB,[y.Chain.Avalanche]:y.ContractAddress.AVAX,[y.Chain.Base]:y.ContractAddress.BASE,[y.Chain.BinanceSmartChain]:y.ContractAddress.BSC,[y.Chain.Ethereum]:y.ContractAddress.ETH,[y.Chain.Optimism]:y.ContractAddress.OP,[y.Chain.Polygon]:y.ContractAddress.MATIC};function S({chain:t,symbol:u,ticker:n},o){try{let e=t===y.Chain.BinanceSmartChain&&u==="BNB"&&n==="BNB",l=t===o&&u===o&&n===o,a=[y.Chain.Arbitrum,y.Chain.Base].includes(t)&&u==="ETH"&&n==="ETH";if(l||e||a)return kt[o];return x.getAddress(u.slice(n.length+1).replace(/^0X/,""))}catch(e){return null}}function W({provider:t}){return async({contractAddress:u,abi:n,funcName:o,funcParams:e=[],txOverrides:l})=>P(u,n,t).getFunction(o).populateTransaction(...e.concat(l).filter((a)=>typeof a!=="undefined"))}function J({chain:t,provider:u,isEIP1559Compatible:n=!0}){if(t===y.Chain.Arbitrum)return async function o(){try{let{gasPrice:e}=await u.getFeeData();if(!e)throw new y.SwapKitError("toolbox_evm_no_fee_data");return{[y.FeeOption.Average]:{gasPrice:e},[y.FeeOption.Fast]:{gasPrice:e},[y.FeeOption.Fastest]:{gasPrice:e}}}catch(e){throw new y.SwapKitError("toolbox_evm_gas_estimation_error",{error:e.msg??e.toString()})}};if(t===y.Chain.Optimism)return async function o(){try{let{maxFeePerGas:e,maxPriorityFeePerGas:l,gasPrice:a}=await u.getFeeData(),b=g(u)(),p=a;if(!(e&&l))throw new y.SwapKitError("toolbox_evm_no_fee_data");return{[y.FeeOption.Average]:{l1GasPrice:b,gasPrice:p,maxFeePerGas:e,maxPriorityFeePerGas:l},[y.FeeOption.Fast]:{l1GasPrice:y.applyFeeMultiplierToBigInt(b||0n,y.FeeOption.Fast),gasPrice:y.applyFeeMultiplierToBigInt(p,y.FeeOption.Fast),maxFeePerGas:e,maxPriorityFeePerGas:y.applyFeeMultiplierToBigInt(l,y.FeeOption.Fast)},[y.FeeOption.Fastest]:{l1GasPrice:y.applyFeeMultiplierToBigInt(b||0n,y.FeeOption.Fastest),gasPrice:y.applyFeeMultiplierToBigInt(p,y.FeeOption.Fastest),maxFeePerGas:e,maxPriorityFeePerGas:y.applyFeeMultiplierToBigInt(l,y.FeeOption.Fastest)}}}catch(e){throw new y.SwapKitError("toolbox_evm_gas_estimation_error",{error:e.msg??e.toString()})}};return async function o(){try{let{maxFeePerGas:e,maxPriorityFeePerGas:l,gasPrice:a}=await u.getFeeData();if(n){if(e===null||l===null)throw new y.SwapKitError("toolbox_evm_no_fee_data");return{[y.FeeOption.Average]:{maxFeePerGas:e,maxPriorityFeePerGas:l},[y.FeeOption.Fast]:{maxFeePerGas:y.applyFeeMultiplierToBigInt(e,y.FeeOption.Fast),maxPriorityFeePerGas:y.applyFeeMultiplierToBigInt(l,y.FeeOption.Fast)},[y.FeeOption.Fastest]:{maxFeePerGas:y.applyFeeMultiplierToBigInt(e,y.FeeOption.Fastest),maxPriorityFeePerGas:y.applyFeeMultiplierToBigInt(l,y.FeeOption.Fastest)}}}if(!a)throw new y.SwapKitError("toolbox_evm_no_gas_price");return{[y.FeeOption.Average]:{gasPrice:a},[y.FeeOption.Fast]:{gasPrice:y.applyFeeMultiplierToBigInt(a,y.FeeOption.Fast)},[y.FeeOption.Fastest]:{gasPrice:y.applyFeeMultiplierToBigInt(a,y.FeeOption.Fastest)}}}catch(e){throw new y.SwapKitError("toolbox_evm_gas_estimation_error",{error:e.msg??e.toString()})}}}function F({provider:t,isEIP1559Compatible:u,signer:n,chain:o}){return async function e({callProvider:l,contractAddress:a,abi:b,funcName:p,funcParams:i=[],txOverrides:s={},feeOption:M=y.FeeOption.Fast}){let T=l||t;if(!a)throw new y.SwapKitError("toolbox_evm_invalid_params",{error:"contractAddress must be provided"});let w=Tt({abi:b,funcName:p});if(w&&V(T)&&n){let D=W({provider:T,chain:o}),U=s?.from||await n?.getAddress(),L=await D({contractAddress:a,abi:b,funcName:p,funcParams:i,txOverrides:{...s,from:U}});return N(T)(L)}let c=P(a,b,T);if(w){if(!n)throw new y.SwapKitError("toolbox_evm_no_signer");let D=s?.from||await n.getAddress();if(!D)throw new y.SwapKitError("toolbox_evm_no_signer_address");let U=c.connect(n),L=J({provider:t,isEIP1559Compatible:u,chain:o}),{maxFeePerGas:E,maxPriorityFeePerGas:R,gasPrice:q}=(await L())[M],Q=await c.getFunction(p).estimateGas(...i,s),_=await U[p](...i,{...s,gasLimit:Q,maxFeePerGas:E,maxPriorityFeePerGas:R,gasPrice:q,nonce:s?.nonce||await T.getTransactionCount(D)});return typeof _?.hash==="string"?_?.hash:_}let B=await c[p]?.(...i);return typeof B?.hash==="string"?B?.hash:B}}function it({provider:t,chain:u}){return function n({assetAddress:o,spenderAddress:e,from:l}){return F({provider:t,isEIP1559Compatible:!0,chain:u})({contractAddress:o,abi:G.erc20ABI,funcName:"allowance",funcParams:[l,e]})}}function Ct({provider:t,chain:u}){return async function n({assetAddress:o,spenderAddress:e,from:l,amount:a=K}){let b=await it({provider:t,chain:u})({assetAddress:o,spenderAddress:e,from:l});return y.SwapKitNumber.fromBigInt(b).gte(y.SwapKitNumber.fromBigInt(BigInt(a)))}}function Gt({signer:t,isEIP1559Compatible:u=!0,provider:n,chain:o}){return async function e({assetAddress:l,spenderAddress:a,feeOptionKey:b=y.FeeOption.Fast,amount:p,gasLimitFallback:i,from:s,nonce:M}){let T=[a,BigInt(p||K)],w=await t?.getAddress()||s,c={contractAddress:l,abi:G.erc20ABI,funcName:"approve",funcParams:T,signer:t,txOverrides:{from:w}};if(V(n)){let D=W({provider:n,chain:o}),U=N(n),L=await D(c);return U(L)}return F({provider:n,isEIP1559Compatible:u,signer:t,chain:o})({...c,funcParams:T,txOverrides:{from:w,nonce:M,gasLimit:i?BigInt(i.toString()):void 0},feeOption:b})}}function Wt({signer:t,isEIP1559Compatible:u=!0,provider:n}){return async function o({assetValue:e,memo:l,recipient:a,feeOptionKey:b=y.FeeOption.Fast,sender:p,...i}){let{hexlify:s,toUtf8Bytes:M}=await import("ethers"),T=e.getBaseValue("bigint"),w=e.chain,c=p||await t?.getAddress(),B=wt({provider:n,signer:t,isEIP1559Compatible:u,chain:w});if(!c)throw new y.SwapKitError("toolbox_evm_no_from_address");if(e.isGasAsset){let q={...i,from:c,to:a,value:T,data:s(M(l||"")),feeOptionKey:b};return B(q)}if(!S(e,w))throw new y.SwapKitError("toolbox_evm_no_contract_address");let{maxFeePerGas:U,maxPriorityFeePerGas:L,gasPrice:E}=(await J({provider:n,isEIP1559Compatible:u,chain:w})())[b],R=await A({provider:n,signer:t,chain:w})({assetValue:e,memo:l,recipient:a,data:s(M(l||"")),sender:c,maxFeePerGas:U,maxPriorityFeePerGas:L,gasPrice:E});return B(R)}}function st({provider:t,signer:u}){return function n({contractAddress:o,abi:e,funcName:l,funcParams:a=[],txOverrides:b}){if(!o)throw new y.SwapKitError("toolbox_evm_no_contract_address");let p=P(o,e,t);return u?p.connect(u).getFunction(l).estimateGas(...a,b):p.getFunction(l).estimateGas(...a,b)}}function $t({provider:t,signer:u}){return async function n({assetValue:o,recipient:e,memo:l,data:a,sender:b,funcName:p,funcParams:i,txOverrides:s}){let M=o.bigIntValue,T=o.isGasAsset?null:S(o,o.chain);if(T&&p)return st({provider:t,signer:u})({contractAddress:T,abi:G.erc20ABI,funcName:p,funcParams:i,txOverrides:s});let{hexlify:w,toUtf8Bytes:c}=await import("ethers");return t.estimateGas({from:b,to:e,value:M,data:a?a:l?w(c(l)):void 0})}}var Qt=(t)=>t.type===2||!!t.maxFeePerGas||!!t.maxPriorityFeePerGas;function wt({provider:t,signer:u,isEIP1559Compatible:n=!0,chain:o}){return async function e({feeOptionKey:l=y.FeeOption.Fast,...a}){let{from:b,to:p,data:i,value:s,...M}=a;if(!u)throw new y.SwapKitError("toolbox_evm_no_signer");if(!p)throw new y.SwapKitError("toolbox_evm_no_to_address");let T={...M,data:i||"0x",to:p,from:b,value:BigInt(s||0)};if(V(t))return N(t)(T);let w=b||await u.getAddress(),c=a.nonce||await t.getTransactionCount(w),B=(await t.getNetwork()).chainId,D=Qt(T)||n,U=J({provider:t,isEIP1559Compatible:n,chain:o}),L=D&&!(T.maxFeePerGas&&T.maxPriorityFeePerGas)||!T.gasPrice?Object.entries((await U())[l]).reduce((R,[q,Q])=>({...R,[q]:Z(BigInt(Q))}),{}):{},E;try{E=Z(T.gasLimit||await t.estimateGas(T)*11n/10n)}catch(R){throw new y.SwapKitError("toolbox_evm_error_estimating_gas_limit",{error:R})}try{let R={...T,chainId:B,type:D?2:0,gasLimit:E,nonce:c,...L};try{return(await u.sendTransaction(R)).hash}catch(q){let Q=await u.signTransaction({...R,from:w});return(await t.broadcastTransaction(Q)).hash}}catch(R){throw new y.SwapKitError("toolbox_evm_error_sending_transaction",{error:R})}}}function A({provider:t,signer:u}){return async function n({assetValue:o,memo:e,recipient:l,data:a,sender:b,maxFeePerGas:p,maxPriorityFeePerGas:i,gasPrice:s,...M}){let T=o.getBaseValue("bigint"),w=o.chain,c=b||await u?.getAddress();if(!c)throw new y.SwapKitError("toolbox_evm_no_from_address");if(y.isGasAsset(o)){let{hexlify:U,toUtf8Bytes:L}=await import("ethers");return{...M,from:c,to:l,value:T,data:a||U(L(e||""))}}let B=S(o,w);if(!B)throw new y.SwapKitError("toolbox_evm_no_contract_address");return W({provider:t,chain:o.chain})({contractAddress:B,abi:G.erc20ABI,funcName:"transfer",funcParams:[l,T],txOverrides:{from:c,maxFeePerGas:p,maxPriorityFeePerGas:i,gasPrice:s}})}}function Yt({provider:t,signer:u,chain:n}){return async function o({assetAddress:e,spenderAddress:l,amount:a,from:b}){let p=await u?.getAddress()||b,i=W({provider:t,chain:n}),s=[l,BigInt(a||K)];return await i({contractAddress:e,abi:G.erc20ABI,funcName:"approve",funcParams:s,txOverrides:{from:p}})}}async function k(t,u){let{JsonRpcProvider:n}=await import("ethers");return new n(u||m.SKConfig.get("rpcUrls")[t])}var Zt=async({from:t,memo:u="",feeOptionKey:n=m.FeeOption.Fastest,assetValue:o,abi:e,funcName:l,funcParams:a,contractAddress:b,txOverrides:p})=>{let{getEvmToolbox:i}=await import("@swapkit/toolboxes/evm"),s=await i(o.chain),T=(await s.getBalance(t)).find(({symbol:R,chain:q})=>o?R===o.symbol:R===m.AssetValue.from({chain:q})?.symbol),w=(await s.estimateGasPrices())[n];if(!T)return m.AssetValue.from({chain:o.chain});if(o&&(T.chain!==o.chain||T.symbol!==o?.symbol))return T;let c=e&&l&&a&&b?await s.estimateCall({contractAddress:b,abi:e,funcName:l,funcParams:a,txOverrides:p}):await s.estimateGasLimit({sender:t,recipient:t,memo:u,assetValue:o}),B="maxFeePerGas"in w,D="gasPrice"in w&&w.gasPrice!==void 0;if(!(w&&(D||B)))throw new m.SwapKitError("toolbox_evm_no_fee_data");let U=B?(w.maxFeePerGas||1n)+(w.maxPriorityFeePerGas||1n):w.gasPrice||1n,L=c*U,E=m.SwapKitNumber.fromBigInt(T.getBaseValue("bigint")).sub(L.toString());return m.AssetValue.from({chain:T.chain,value:E.getValue("string")})};function Z(t){return t>0n?`0x${t.toString(16)}`:"0x0"}function O({provider:t,isEIP1559Compatible:u=!0}){return async function n({feeOption:o=m.FeeOption.Fast,chain:e,...l}){let b=await J({provider:t,isEIP1559Compatible:u,chain:e})(),p=await t.estimateGas(l),i=m.AssetValue.from({chain:e}),{gasPrice:s,maxFeePerGas:M,maxPriorityFeePerGas:T}=b[o];if(!u&&s)return i.set(m.SwapKitNumber.fromBigInt(s*p,i.decimal));if(M&&T){let w=(M+T)*p;return i.set(m.SwapKitNumber.fromBigInt(w,i.decimal))}throw new m.SwapKitError("toolbox_evm_no_gas_price")}}function v(t){return()=>m.Chain.Ethereum===t?void 0:{...Xt({chain:t}),chainId:m.ChainToHexChainId[t],rpcUrls:[m.SKConfig.get("rpcUrls")[t]],blockExplorerUrls:[m.ChainToExplorerUrl[t]]}}function d(t){return![m.Chain.Arbitrum,m.Chain.BinanceSmartChain].includes(t)}function Xt({chain:t}){let u=m.BaseDecimal[t];switch(t){case m.Chain.Arbitrum:return{chainName:"Arbitrum One",nativeCurrency:{name:"Ethereum",symbol:m.Chain.Ethereum,decimals:u}};case m.Chain.Avalanche:return{chainName:"Avalanche Network",nativeCurrency:{name:"Avalanche",symbol:t,decimals:u}};case m.Chain.Base:return{chainName:"Base Mainnet",nativeCurrency:{name:"Ethereum",symbol:m.Chain.Ethereum,decimals:u}};case m.Chain.BinanceSmartChain:return{chainName:"BNB Chain",nativeCurrency:{name:"Binance Coin",symbol:"BNB",decimals:u}};case m.Chain.Polygon:return{chainName:"Polygon Mainnet",nativeCurrency:{name:"Polygon",symbol:m.Chain.Polygon,decimals:u}};default:throw new m.SwapKitError("toolbox_evm_not_supported",{chain:t})}}var ct;((n)=>{n.Test="goerli";n.Main="homestead"})(ct||={});var z=require("@swapkit/helpers");var H=require("@swapkit/helpers"),ft=require("ethers"),h=require("ts-pattern");var Mt=[{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"aggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes[]",name:"returnData",type:"bytes[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"blockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],name:"getBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBlockNumber",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockCoinbase",outputs:[{internalType:"address",name:"coinbase",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockDifficulty",outputs:[{internalType:"uint256",name:"difficulty",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockGasLimit",outputs:[{internalType:"uint256",name:"gaslimit",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"addr",type:"address"}],name:"getEthBalance",outputs:[{internalType:"uint256",name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLastBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryAggregate",outputs:[{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryBlockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"}];async function r({provider:t,...u}){let n=await $(H.Chain.Ethereum)({provider:t,...u});async function o(e,l="0x5ba1e12693dc8f9c48aad8770482f4739beed696",a="aggregate",b=H.FeeOption.Fast){let p=await n.createContractTxObject({contractAddress:l,abi:Mt,funcName:a,funcParams:[e]});return n.sendTransaction({...p,feeOptionKey:b})}return{...n,multicall:o}}var tt=$(H.Chain.Arbitrum),nt=$(H.Chain.Avalanche),ut=$(H.Chain.Base),yt=$(H.Chain.BinanceSmartChain),ot=$(H.Chain.Polygon);function $(t){return async function u({provider:n,...o}){let e=H.SKConfig.get("rpcUrls")[t],l=n||await k(t,e),a=d(t),b=h.match(o).with({phrase:h.P.string},({phrase:i})=>ft.HDNodeWallet.fromPhrase(i).connect(l)).with({signer:h.P.any},({signer:i})=>i).otherwise(()=>{return});return{...X({provider:l,signer:b,isEIP1559Compatible:a,chain:t}),estimateTransactionFee:O({provider:l,isEIP1559Compatible:a,chain:t}),getNetworkParams:v(t),getBalance:Y(t).getBalance}}}var f=require("@swapkit/helpers"),I=require("ethers"),et=require("ts-pattern"),Rt=require("ts-pattern");var Bt=[{inputs:[{internalType:"address",name:"_owner",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"DecimalsUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"GasPriceUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"L1BaseFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"OverheadUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"ScalarUpdated",type:"event"},{inputs:[],name:"decimals",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"gasPrice",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1Fee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1GasUsed",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"l1BaseFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"overhead",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"scalar",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_decimals",type:"uint256"}],name:"setDecimals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_gasPrice",type:"uint256"}],name:"setGasPrice",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_baseFee",type:"uint256"}],name:"setL1BaseFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_overhead",type:"uint256"}],name:"setOverhead",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_scalar",type:"uint256"}],name:"setScalar",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}];var Vt="0x420000000000000000000000000000000000000f";function lt(t){return new I.Contract(Vt,Bt,t)}function g(t){return function u(){let n=lt(t);if(n&&"l1BaseFee"in n)return n?.l1BaseFee();return}}function Dt(t){return async function u({from:n,to:o,nonce:e,...l}){let{Transaction:a}=await import("ethers");if(!o)throw new f.SwapKitError("toolbox_evm_invalid_transaction",{error:"Missing to address"});return a.from({...l,authorizationList:l.authorizationList,to:o,nonce:e?e:n?await t.getTransactionCount(n):0}).serialized}}function Ut(t){return async function u(n){let o=lt(t),e=await Dt(t)(n);if(o&&"getL1Fee"in o)return o.getL1Fee(e)}}function Lt(t){return async function u(n){let o=await t.send("eth_gasPrice",[]),e=await t.estimateGas(n);return o.mul(e)}}function Nt(t){return async function u(n){let o=await Ut(t)(n),e=await Lt(t)(n);return o.add(e)}}function xt(t){return async function u(n){let o=lt(t),e=await Dt(t)(n);if(o&&"getL1GasUsed"in o)return o.getL1GasUsed(e)}}var St=()=>({chainId:f.ChainId.OptimismHex,chainName:"Optimism",nativeCurrency:{name:"Ethereum",symbol:f.Chain.Ethereum,decimals:f.BaseDecimal.ETH},rpcUrls:[f.SKConfig.get("rpcUrls")[f.Chain.Optimism]],blockExplorerUrls:[f.ChainToExplorerUrl[f.Chain.Optimism]]});async function at({provider:t,...u}){let n=f.Chain.Optimism,o=f.SKConfig.get("rpcUrls")[n],e=t||await k(n,o),l=Rt.match(u).with({phrase:et.P.string},({phrase:p})=>I.HDNodeWallet.fromPhrase(p).connect(e)).with({signer:et.P.any},({signer:p})=>p).otherwise(()=>{return}),a=X({provider:e,signer:l}),b=g(e);return{...a,estimateL1Gas:xt(e),estimateL1GasCost:Ut(e),estimateL2GasCost:Lt(e),estimateTotalGasCost:Nt(e),getBalance:Y(f.Chain.Optimism).getBalance,getL1GasPrice:b,getNetworkParams:St}}async function ht(t,u){let n={...u,provider:u?.provider||await k(t)};switch(t){case z.Chain.Avalanche:return nt(n);case z.Chain.Arbitrum:return tt(n);case z.Chain.Base:return ut(n);case z.Chain.Optimism:return at(n);case z.Chain.Polygon:return ot(n);case z.Chain.BinanceSmartChain:return yt(n);case z.Chain.Ethereum:return r(n);default:throw new z.SwapKitError("toolbox_evm_not_supported",{chain:t})}}
2
2
 
3
3
  //# debugId=2FAA048700C229CE64756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{b as ut}from"../../chunk-6f98phv2.js";import{d as k,e as C}from"../../chunk-s47y8512.js";import{SKConfig as kt,warnOnce as Ct}from"@swapkit/helpers";function S(t){let u=kt.get("apis")[t];if(u)return Ct(!0,"Using custom EVM API. Be sure to implement all methods to avoid issues."),u;return Gt(t)}function cn(t){return t}function Gt(t){return{getBalance:ut(t)}}import{AssetValue as I,BaseDecimal as Pt,Chain as x,ChainToExplorerUrl as gt,ChainToHexChainId as It,FeeOption as pt,SKConfig as bt,SwapKitError as tt,SwapKitNumber as r}from"@swapkit/helpers";import{Chain as L,ContractAddress as q,FeeOption as T,SwapKitError as w,SwapKitNumber as yt,applyFeeMultiplierToBigInt as H,isGasAsset as Wt}from"@swapkit/helpers";import{erc20ABI as Z}from"@swapkit/helpers/contracts";import{BrowserProvider as $t,Contract as ot,Interface as et,getAddress as _}from"ethers";var F=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff");function j({chain:t=L.Ethereum,provider:u,signer:n,isEIP1559Compatible:y=!0}){return{getAddress:()=>{return n?n.getAddress():void 0},call:v({provider:u,signer:n,isEIP1559Compatible:y,chain:t}),estimateCall:at({provider:u,signer:n}),EIP1193SendTransaction:P(u),approve:St({provider:u,signer:n,isEIP1559Compatible:y,chain:t}),approvedAmount:lt({provider:u,chain:t}),broadcastTransaction:u.broadcastTransaction,createApprovalTx:Kt({provider:u,signer:n,chain:t}),createContract:Yt({provider:u,chain:t}),createContractTxObject:X({provider:u,chain:t}),createTransferTx:A({provider:u,signer:n,chain:t}),createTransaction:A({provider:u,signer:n,chain:t}),estimateGasLimit:_t({provider:u,signer:n,chain:t}),estimateGasPrices:G({chain:t,provider:u,isEIP1559Compatible:y}),isApproved:Nt({provider:u,chain:t}),sendTransaction:mt({provider:u,signer:n,isEIP1559Compatible:y,chain:t}),signMessage:n?.signMessage,transfer:ht({provider:u,signer:n,isEIP1559Compatible:y,chain:t}),validateAddress:(o)=>Qt({address:o})}}function Qt({address:t}){try{return _(t),!0}catch(u){return!1}}function K(t){return t instanceof $t}function O(t,u,n){return new ot(t,et.from(u),n)}function Yt({provider:t}){return function u(n,y){return new ot(n,et.from(y),t)}}var Zt=["payable","nonpayable"];function Xt({abi:t,funcName:u}){let n=t.find((y)=>y.name===u);if(!n)throw new w("toolbox_evm_no_abi_fragment",{funcName:u});return n.stateMutability&&Zt.includes(n.stateMutability)}function Un(t){return _(t)}function P(t){return function u({value:n,...y}){if(!K(t))throw new w("toolbox_evm_provider_not_eip1193_compatible");return t.send("eth_sendTransaction",[{value:h(BigInt(n||0)),...y}])}}function Ln(t,u){let n=g(t,u);if(n)return _(n.toLowerCase());throw new w("toolbox_evm_invalid_gas_asset_address")}var Vt={[L.Arbitrum]:q.ARB,[L.Avalanche]:q.AVAX,[L.Base]:q.BASE,[L.BinanceSmartChain]:q.BSC,[L.Ethereum]:q.ETH,[L.Optimism]:q.OP,[L.Polygon]:q.MATIC};function g({chain:t,symbol:u,ticker:n},y){try{let o=t===L.BinanceSmartChain&&u==="BNB"&&n==="BNB",e=t===y&&u===y&&n===y,l=[L.Arbitrum,L.Base].includes(t)&&u==="ETH"&&n==="ETH";if(e||o||l)return Vt[y];return _(u.slice(n.length+1).replace(/^0X/,""))}catch(o){return null}}function X({provider:t}){return async({contractAddress:u,abi:n,funcName:y,funcParams:o=[],txOverrides:e})=>O(u,n,t).getFunction(y).populateTransaction(...o.concat(e).filter((l)=>typeof l!=="undefined"))}function G({chain:t,provider:u,isEIP1559Compatible:n=!0}){if(t===L.Arbitrum)return async function y(){try{let{gasPrice:o}=await u.getFeeData();if(!o)throw new w("toolbox_evm_no_fee_data");return{[T.Average]:{gasPrice:o},[T.Fast]:{gasPrice:o},[T.Fastest]:{gasPrice:o}}}catch(o){throw new w("toolbox_evm_gas_estimation_error",{error:o.msg??o.toString()})}};if(t===L.Optimism)return async function y(){try{let{maxFeePerGas:o,maxPriorityFeePerGas:e,gasPrice:l}=await u.getFeeData(),m=d(u)(),a=l;if(!(o&&e))throw new w("toolbox_evm_no_fee_data");return{[T.Average]:{l1GasPrice:m,gasPrice:a,maxFeePerGas:o,maxPriorityFeePerGas:e},[T.Fast]:{l1GasPrice:H(m||0n,T.Fast),gasPrice:H(a,T.Fast),maxFeePerGas:o,maxPriorityFeePerGas:H(e,T.Fast)},[T.Fastest]:{l1GasPrice:H(m||0n,T.Fastest),gasPrice:H(a,T.Fastest),maxFeePerGas:o,maxPriorityFeePerGas:H(e,T.Fastest)}}}catch(o){throw new w("toolbox_evm_gas_estimation_error",{error:o.msg??o.toString()})}};return async function y(){try{let{maxFeePerGas:o,maxPriorityFeePerGas:e,gasPrice:l}=await u.getFeeData();if(n){if(o===null||e===null)throw new w("toolbox_evm_no_fee_data");return{[T.Average]:{maxFeePerGas:o,maxPriorityFeePerGas:e},[T.Fast]:{maxFeePerGas:H(o,T.Fast),maxPriorityFeePerGas:H(e,T.Fast)},[T.Fastest]:{maxFeePerGas:H(o,T.Fastest),maxPriorityFeePerGas:H(e,T.Fastest)}}}if(!l)throw new w("toolbox_evm_no_gas_price");return{[T.Average]:{gasPrice:l},[T.Fast]:{gasPrice:H(l,T.Fast)},[T.Fastest]:{gasPrice:H(l,T.Fastest)}}}catch(o){throw new w("toolbox_evm_gas_estimation_error",{error:o.msg??o.toString()})}}}function v({provider:t,isEIP1559Compatible:u,signer:n,chain:y}){return async function o({callProvider:e,contractAddress:l,abi:m,funcName:a,funcParams:b=[],txOverrides:i={},feeOption:M=T.Fast}){let p=e||t;if(!l)throw new w("toolbox_evm_invalid_params",{error:"contractAddress must be provided"});let s=Xt({abi:m,funcName:a});if(s&&K(p)&&n){let R=X({provider:p,chain:y}),D=i?.from||await n?.getAddress(),U=await R({contractAddress:l,abi:m,funcName:a,funcParams:b,txOverrides:{...i,from:D}});return P(p)(U)}let c=O(l,m,p);if(s){if(!n)throw new w("toolbox_evm_no_signer");let R=i?.from||await n.getAddress();if(!R)throw new w("toolbox_evm_no_signer_address");let D=c.connect(n),U=G({provider:t,isEIP1559Compatible:u,chain:y}),{maxFeePerGas:z,maxPriorityFeePerGas:B,gasPrice:E}=(await U())[M],Y=await c.getFunction(a).estimateGas(...b,i),N=await D[a](...b,{...i,gasLimit:Y,maxFeePerGas:z,maxPriorityFeePerGas:B,gasPrice:E,nonce:i?.nonce||await p.getTransactionCount(R)});return typeof N?.hash==="string"?N?.hash:N}let f=await c[a]?.(...b);return typeof f?.hash==="string"?f?.hash:f}}function lt({provider:t,chain:u}){return function n({assetAddress:y,spenderAddress:o,from:e}){return v({provider:t,isEIP1559Compatible:!0,chain:u})({contractAddress:y,abi:Z,funcName:"allowance",funcParams:[e,o]})}}function Nt({provider:t,chain:u}){return async function n({assetAddress:y,spenderAddress:o,from:e,amount:l=F}){let m=await lt({provider:t,chain:u})({assetAddress:y,spenderAddress:o,from:e});return yt.fromBigInt(m).gte(yt.fromBigInt(BigInt(l)))}}function St({signer:t,isEIP1559Compatible:u=!0,provider:n,chain:y}){return async function o({assetAddress:e,spenderAddress:l,feeOptionKey:m=T.Fast,amount:a,gasLimitFallback:b,from:i,nonce:M}){let p=[l,BigInt(a||F)],s=await t?.getAddress()||i,c={contractAddress:e,abi:Z,funcName:"approve",funcParams:p,signer:t,txOverrides:{from:s}};if(K(n)){let R=X({provider:n,chain:y}),D=P(n),U=await R(c);return D(U)}return v({provider:n,isEIP1559Compatible:u,signer:t,chain:y})({...c,funcParams:p,txOverrides:{from:s,nonce:M,gasLimit:b?BigInt(b.toString()):void 0},feeOption:m})}}function ht({signer:t,isEIP1559Compatible:u=!0,provider:n}){return async function y({assetValue:o,memo:e,recipient:l,feeOptionKey:m=T.Fast,sender:a,...b}){let{hexlify:i,toUtf8Bytes:M}=await import("ethers"),p=o.getBaseValue("bigint"),s=o.chain,c=a||await t?.getAddress(),f=mt({provider:n,signer:t,isEIP1559Compatible:u,chain:s});if(!c)throw new w("toolbox_evm_no_from_address");if(o.isGasAsset){let E={...b,from:c,to:l,value:p,data:i(M(e||"")),feeOptionKey:m};return f(E)}if(!g(o,s))throw new w("toolbox_evm_no_contract_address");let{maxFeePerGas:D,maxPriorityFeePerGas:U,gasPrice:z}=(await G({provider:n,isEIP1559Compatible:u,chain:s})())[m],B=await A({provider:n,signer:t,chain:s})({assetValue:o,memo:e,recipient:l,data:i(M(e||"")),sender:c,maxFeePerGas:D,maxPriorityFeePerGas:U,gasPrice:z});return f(B)}}function at({provider:t,signer:u}){return function n({contractAddress:y,abi:o,funcName:e,funcParams:l=[],txOverrides:m}){if(!y)throw new w("toolbox_evm_no_contract_address");let a=O(y,o,t);return u?a.connect(u).getFunction(e).estimateGas(...l,m):a.getFunction(e).estimateGas(...l,m)}}function _t({provider:t,signer:u}){return async function n({assetValue:y,recipient:o,memo:e,data:l,sender:m,funcName:a,funcParams:b,txOverrides:i}){let M=y.bigIntValue,p=y.isGasAsset?null:g(y,y.chain);if(p&&a)return at({provider:t,signer:u})({contractAddress:p,abi:Z,funcName:a,funcParams:b,txOverrides:i});let{hexlify:s,toUtf8Bytes:c}=await import("ethers");return t.estimateGas({from:m,to:o,value:M,data:l?l:e?s(c(e)):void 0})}}var jt=(t)=>t.type===2||!!t.maxFeePerGas||!!t.maxPriorityFeePerGas;function mt({provider:t,signer:u,isEIP1559Compatible:n=!0,chain:y}){return async function o({feeOptionKey:e=T.Fast,...l}){let{from:m,to:a,data:b,value:i,...M}=l;if(!u)throw new w("toolbox_evm_no_signer");if(!a)throw new w("toolbox_evm_no_to_address");let p={...M,data:b||"0x",to:a,from:m,value:BigInt(i||0)};if(K(t))return P(t)(p);let s=m||await u.getAddress(),c=l.nonce||await t.getTransactionCount(s),f=(await t.getNetwork()).chainId,R=jt(p)||n,D=G({provider:t,isEIP1559Compatible:n,chain:y}),U=R&&!(p.maxFeePerGas&&p.maxPriorityFeePerGas)||!p.gasPrice?Object.entries((await D())[e]).reduce((B,[E,Y])=>({...B,[E]:h(BigInt(Y))}),{}):{},z;try{z=h(p.gasLimit||await t.estimateGas(p)*11n/10n)}catch(B){throw new w("toolbox_evm_error_estimating_gas_limit",{error:B})}try{let B={...p,chainId:f,type:R?2:0,gasLimit:z,nonce:c,...U};try{return(await u.sendTransaction(B)).hash}catch(E){let Y=await u.signTransaction({...B,from:s});return(await t.broadcastTransaction(Y)).hash}}catch(B){throw new w("toolbox_evm_error_sending_transaction",{error:B})}}}function A({provider:t,signer:u}){return async function n({assetValue:y,memo:o,recipient:e,data:l,sender:m,maxFeePerGas:a,maxPriorityFeePerGas:b,gasPrice:i,...M}){let p=y.getBaseValue("bigint"),s=y.chain,c=m||await u?.getAddress();if(!c)throw new w("toolbox_evm_no_from_address");if(Wt(y)){let{hexlify:D,toUtf8Bytes:U}=await import("ethers");return{...M,from:c,to:e,value:p,data:l||D(U(o||""))}}let f=g(y,s);if(!f)throw new w("toolbox_evm_no_contract_address");return X({provider:t,chain:y.chain})({contractAddress:f,abi:Z,funcName:"transfer",funcParams:[e,p],txOverrides:{from:c,maxFeePerGas:a,maxPriorityFeePerGas:b,gasPrice:i}})}}function Kt({provider:t,signer:u,chain:n}){return async function y({assetAddress:o,spenderAddress:e,amount:l,from:m}){let a=await u?.getAddress()||m,b=X({provider:t,chain:n}),i=[e,BigInt(l||F)];return await b({contractAddress:o,abi:Z,funcName:"approve",funcParams:i,txOverrides:{from:a}})}}async function W(t,u){let{JsonRpcProvider:n}=await import("ethers");return new n(u||bt.get("rpcUrls")[t])}var En=async({from:t,memo:u="",feeOptionKey:n=pt.Fastest,assetValue:y,abi:o,funcName:e,funcParams:l,contractAddress:m,txOverrides:a})=>{let{getEvmToolbox:b}=await import("@swapkit/toolboxes/evm"),i=await b(y.chain),p=(await i.getBalance(t)).find(({symbol:B,chain:E})=>y?B===y.symbol:B===I.from({chain:E})?.symbol),s=(await i.estimateGasPrices())[n];if(!p)return I.from({chain:y.chain});if(y&&(p.chain!==y.chain||p.symbol!==y?.symbol))return p;let c=o&&e&&l&&m?await i.estimateCall({contractAddress:m,abi:o,funcName:e,funcParams:l,txOverrides:a}):await i.estimateGasLimit({sender:t,recipient:t,memo:u,assetValue:y}),f="maxFeePerGas"in s,R="gasPrice"in s&&s.gasPrice!==void 0;if(!(s&&(R||f)))throw new tt("toolbox_evm_no_fee_data");let D=f?(s.maxFeePerGas||1n)+(s.maxPriorityFeePerGas||1n):s.gasPrice||1n,U=c*D,z=r.fromBigInt(p.getBaseValue("bigint")).sub(U.toString());return I.from({chain:p.chain,value:z.getValue("string")})};function h(t){return t>0n?`0x${t.toString(16)}`:"0x0"}function Tt({provider:t,isEIP1559Compatible:u=!0}){return async function n({feeOption:y=pt.Fast,chain:o,...e}){let m=await G({provider:t,isEIP1559Compatible:u,chain:o})(),a=await t.estimateGas(e),b=I.from({chain:o}),{gasPrice:i,maxFeePerGas:M,maxPriorityFeePerGas:p}=m[y];if(!u&&i)return b.set(r.fromBigInt(i*a,b.decimal));if(M&&p){let s=(M+p)*a;return b.set(r.fromBigInt(s,b.decimal))}throw new tt("toolbox_evm_no_gas_price")}}function it(t){return()=>x.Ethereum===t?void 0:{...At({chain:t}),chainId:It[t],rpcUrls:[bt.get("rpcUrls")[t]],blockExplorerUrls:[gt[t]]}}function st(t){return![x.Arbitrum,x.BinanceSmartChain].includes(t)}function At({chain:t}){let u=Pt[t];switch(t){case x.Arbitrum:return{chainName:"Arbitrum One",nativeCurrency:{name:"Ethereum",symbol:x.Ethereum,decimals:u}};case x.Avalanche:return{chainName:"Avalanche Network",nativeCurrency:{name:"Avalanche",symbol:t,decimals:u}};case x.Base:return{chainName:"Base Mainnet",nativeCurrency:{name:"Ethereum",symbol:x.Ethereum,decimals:u}};case x.BinanceSmartChain:return{chainName:"BNB Chain",nativeCurrency:{name:"Binance Coin",symbol:"BNB",decimals:u}};case x.Polygon:return{chainName:"Polygon Mainnet",nativeCurrency:{name:"Polygon",symbol:x.Polygon,decimals:u}};default:throw new tt("toolbox_evm_not_supported",{chain:t})}}var Ft;((n)=>{n.Test="goerli";n.Main="homestead"})(Ft||={});import{Chain as J,SwapKitError as Tn}from"@swapkit/helpers";import{Chain as $,FeeOption as Ot,SKConfig as vt}from"@swapkit/helpers";import{HDNodeWallet as dt}from"ethers";import{P as ct,match as rt}from"ts-pattern";var wt=[{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"aggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes[]",name:"returnData",type:"bytes[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"blockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],name:"getBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[],name:"getBlockNumber",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockCoinbase",outputs:[{internalType:"address",name:"coinbase",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockDifficulty",outputs:[{internalType:"uint256",name:"difficulty",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockGasLimit",outputs:[{internalType:"uint256",name:"gaslimit",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getCurrentBlockTimestamp",outputs:[{internalType:"uint256",name:"timestamp",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"address",name:"addr",type:"address"}],name:"getEthBalance",outputs:[{internalType:"uint256",name:"balance",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"getLastBlockHash",outputs:[{internalType:"bytes32",name:"blockHash",type:"bytes32"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryAggregate",outputs:[{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"bool",name:"requireSuccess",type:"bool"},{components:[{internalType:"address",name:"target",type:"address"},{internalType:"bytes",name:"callData",type:"bytes"}],internalType:"struct Multicall2.Call[]",name:"calls",type:"tuple[]"}],name:"tryBlockAndAggregate",outputs:[{internalType:"uint256",name:"blockNumber",type:"uint256"},{internalType:"bytes32",name:"blockHash",type:"bytes32"},{components:[{internalType:"bool",name:"success",type:"bool"},{internalType:"bytes",name:"returnData",type:"bytes"}],internalType:"struct Multicall2.Result[]",name:"returnData",type:"tuple[]"}],stateMutability:"nonpayable",type:"function"}];async function Mt({provider:t,...u}){let n=await Q($.Ethereum)({provider:t,...u});async function y(o,e="0x5ba1e12693dc8f9c48aad8770482f4739beed696",l="aggregate",m=Ot.Fast){let a=await n.createContractTxObject({contractAddress:e,abi:wt,funcName:l,funcParams:[o]});return n.sendTransaction({...a,feeOptionKey:m})}return{...n,multicall:y}}var ft=Q($.Arbitrum),Bt=Q($.Avalanche),Rt=Q($.Base),Dt=Q($.BinanceSmartChain),Ut=Q($.Polygon);function Q(t){return async function u({provider:n,...y}){let o=vt.get("rpcUrls")[t],e=n||await W(t,o),l=st(t),m=rt(y).with({phrase:ct.string},({phrase:b})=>dt.fromPhrase(b).connect(e)).with({signer:ct.any},({signer:b})=>b).otherwise(()=>{return});return{...j({provider:e,signer:m,isEIP1559Compatible:l,chain:t}),estimateTransactionFee:Tt({provider:e,isEIP1559Compatible:l,chain:t}),getNetworkParams:it(t),getBalance:S(t).getBalance}}}import{BaseDecimal as tn,Chain as V,ChainId as nn,ChainToExplorerUrl as un,SKConfig as Ht,SwapKitError as yn}from"@swapkit/helpers";import{Contract as on,HDNodeWallet as en}from"ethers";import{P as xt}from"ts-pattern";import{match as ln}from"ts-pattern";var Lt=[{inputs:[{internalType:"address",name:"_owner",type:"address"}],stateMutability:"nonpayable",type:"constructor"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"DecimalsUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"GasPriceUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"L1BaseFeeUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"OverheadUpdated",type:"event"},{anonymous:!1,inputs:[{indexed:!0,internalType:"address",name:"previousOwner",type:"address"},{indexed:!0,internalType:"address",name:"newOwner",type:"address"}],name:"OwnershipTransferred",type:"event"},{anonymous:!1,inputs:[{indexed:!1,internalType:"uint256",name:"",type:"uint256"}],name:"ScalarUpdated",type:"event"},{inputs:[],name:"decimals",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"gasPrice",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1Fee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"bytes",name:"_data",type:"bytes"}],name:"getL1GasUsed",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"l1BaseFee",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"overhead",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[],name:"owner",outputs:[{internalType:"address",name:"",type:"address"}],stateMutability:"view",type:"function"},{inputs:[],name:"renounceOwnership",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[],name:"scalar",outputs:[{internalType:"uint256",name:"",type:"uint256"}],stateMutability:"view",type:"function"},{inputs:[{internalType:"uint256",name:"_decimals",type:"uint256"}],name:"setDecimals",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_gasPrice",type:"uint256"}],name:"setGasPrice",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_baseFee",type:"uint256"}],name:"setL1BaseFee",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_overhead",type:"uint256"}],name:"setOverhead",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"uint256",name:"_scalar",type:"uint256"}],name:"setScalar",outputs:[],stateMutability:"nonpayable",type:"function"},{inputs:[{internalType:"address",name:"newOwner",type:"address"}],name:"transferOwnership",outputs:[],stateMutability:"nonpayable",type:"function"}];var an="0x420000000000000000000000000000000000000f";function nt(t){return new on(an,Lt,t)}function d(t){return function u(){let n=nt(t);if(n&&"l1BaseFee"in n)return n?.l1BaseFee();return}}function zt(t){return async function u({from:n,to:y,nonce:o,...e}){let{Transaction:l}=await import("ethers");if(!y)throw new yn("toolbox_evm_invalid_transaction",{error:"Missing to address"});return l.from({...e,authorizationList:e.authorizationList,to:y,nonce:o?o:n?await t.getTransactionCount(n):0}).serialized}}function Et(t){return async function u(n){let y=nt(t),o=await zt(t)(n);if(y&&"getL1Fee"in y)return y.getL1Fee(o)}}function qt(t){return async function u(n){let y=await t.send("eth_gasPrice",[]),o=await t.estimateGas(n);return y.mul(o)}}function mn(t){return async function u(n){let y=await Et(t)(n),o=await qt(t)(n);return y.add(o)}}function pn(t){return async function u(n){let y=nt(t),o=await zt(t)(n);if(y&&"getL1GasUsed"in y)return y.getL1GasUsed(o)}}var bn=()=>({chainId:nn.OptimismHex,chainName:"Optimism",nativeCurrency:{name:"Ethereum",symbol:V.Ethereum,decimals:tn.ETH},rpcUrls:[Ht.get("rpcUrls")[V.Optimism]],blockExplorerUrls:[un[V.Optimism]]});async function Jt({provider:t,...u}){let n=V.Optimism,y=Ht.get("rpcUrls")[n],o=t||await W(n,y),e=ln(u).with({phrase:xt.string},({phrase:a})=>en.fromPhrase(a).connect(o)).with({signer:xt.any},({signer:a})=>a).otherwise(()=>{return}),l=j({provider:o,signer:e}),m=d(o);return{...l,estimateL1Gas:pn(o),estimateL1GasCost:Et(o),estimateL2GasCost:qt(o),estimateTotalGasCost:mn(o),getBalance:S(V.Optimism).getBalance,getL1GasPrice:m,getNetworkParams:bn}}async function dn(t,u){let n={...u,provider:u?.provider||await W(t)};switch(t){case J.Avalanche:return Bt(n);case J.Arbitrum:return ft(n);case J.Base:return Rt(n);case J.Optimism:return Jt(n);case J.Polygon:return Ut(n);case J.BinanceSmartChain:return Dt(n);case J.Ethereum:return Mt(n);default:throw new Tn("toolbox_evm_not_supported",{chain:t})}}export{h as toHexString,Un as toChecksumAddress,Xt as isStateChangingCall,K as isBrowserProvider,g as getTokenAddress,W as getProvider,it as getNetworkParams,d as getL1GasPriceFetcher,st as getIsEIP1559Compatible,dn as getEvmToolbox,S as getEvmApi,Tt as getEstimateTransactionFee,G as getEstimateGasPrices,P as getEIP1193SendTransaction,X as getCreateContractTxObject,Yt as getCreateContract,Ln as getChecksumAddressFromAsset,Qt as evmValidateAddress,En as estimateMaxSendableAmount,pn as estimateL1Gas,cn as createCustomEvmApi,O as createContract,Jt as OPToolbox,F as MAX_APPROVAL,Ut as MATICToolbox,Ft as EthNetwork,Mt as ETHToolbox,j as BaseEVMToolbox,Dt as BSCToolbox,Rt as BASEToolbox,Bt as AVAXToolbox,ft as ARBToolbox};
2
2
 
3
3
  //# debugId=4FF5D94E59789B6C64756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var g={};u(g,{getToolbox:()=>x,getFeeEstimator:()=>f,getAddressValidator:()=>d});module.exports=C(g);var o=require("@swapkit/helpers");async function d(){let{match:r}=await import("ts-pattern"),{cosmosValidateAddress:i}=await import("@swapkit/toolboxes/cosmos"),{evmValidateAddress:n}=await import("@swapkit/toolboxes/evm"),{substrateValidateAddress:a}=await import("@swapkit/toolboxes/substrate"),{getUTXOAddressValidator:e}=await import("@swapkit/toolboxes/utxo"),{getSolanaAddressValidator:l}=await import("@swapkit/toolboxes/solana"),{validateNearAddress:p}=await import("@swapkit/toolboxes/near"),{rippleValidateAddress:m}=await import("@swapkit/toolboxes/ripple"),{radixValidateAddress:c}=await import("@swapkit/toolboxes/radix"),{getTronAddressValidator:b}=await import("@swapkit/toolboxes/tron"),y=await l(),h=await e(),w=await b();return function P({address:s,chain:T}){return r(T).with(o.Chain.Arbitrum,o.Chain.Avalanche,o.Chain.Optimism,o.Chain.BinanceSmartChain,o.Chain.Base,o.Chain.Polygon,o.Chain.Ethereum,()=>n({address:s})).with(o.Chain.Litecoin,o.Chain.Dash,o.Chain.Dogecoin,o.Chain.BitcoinCash,o.Chain.Bitcoin,()=>h({address:s,chain:T})).with(o.Chain.Cosmos,o.Chain.Kujira,o.Chain.Maya,o.Chain.THORChain,()=>i({address:s,chain:T})).with(o.Chain.Chainflip,o.Chain.Polkadot,()=>a({address:s,chain:T})).with(o.Chain.Radix,()=>c(s)).with(o.Chain.Near,()=>p(s)).with(o.Chain.Ripple,()=>m(s)).with(o.Chain.Solana,()=>y(s)).with(o.Chain.Tron,()=>w(s)).otherwise(()=>!1)}}function f(r){return async function i(n){let{match:a}=await import("ts-pattern");return a(r).returnType().with(o.Chain.Arbitrum,o.Chain.Avalanche,o.Chain.Optimism,o.Chain.BinanceSmartChain,o.Chain.Base,o.Chain.Polygon,o.Chain.Ethereum,async(e)=>{let l=await x(e),p=await l.createTransaction(n);return l.estimateTransactionFee({...p,feeOption:n.feeOptionKey||o.FeeOption.Fast,chain:e})}).with(o.Chain.Bitcoin,o.Chain.BitcoinCash,o.Chain.Dogecoin,o.Chain.Dash,o.Chain.Litecoin,o.Chain.Polkadot,o.Chain.Solana,o.Chain.Ripple,o.Chain.Tron,o.Chain.Near,async(e)=>{return(await x(e)).estimateTransactionFee(n)}).with(o.Chain.THORChain,o.Chain.Maya,o.Chain.Kujira,o.Chain.Cosmos,async()=>{let{estimateTransactionFee:e}=await import("@swapkit/toolboxes/cosmos");return e(n)}).otherwise(async()=>o.AssetValue.from({chain:r}))}}async function x(r,i){let{match:n}=await import("ts-pattern");return n(r).returnType().with(o.Chain.Arbitrum,o.Chain.Avalanche,o.Chain.Optimism,o.Chain.BinanceSmartChain,o.Chain.Base,o.Chain.Polygon,o.Chain.Ethereum,async()=>{let{getEvmToolbox:a}=await import("@swapkit/toolboxes/evm");return await a(r,i)}).with(o.Chain.Litecoin,o.Chain.Dash,o.Chain.Dogecoin,o.Chain.BitcoinCash,o.Chain.Bitcoin,o.Chain.Zcash,async()=>{let{getUtxoToolbox:a}=await import("@swapkit/toolboxes/utxo");return await a(r,i)}).with(o.Chain.Cosmos,o.Chain.Kujira,o.Chain.Maya,o.Chain.THORChain,async()=>{let{getCosmosToolbox:a}=await import("@swapkit/toolboxes/cosmos");return await a(r,i)}).with(o.Chain.Chainflip,o.Chain.Polkadot,async()=>{let{getSubstrateToolbox:a}=await import("@swapkit/toolboxes/substrate");return await a(r,i)}).with(o.Chain.Radix,async()=>{let{RadixToolbox:a}=await import("@swapkit/toolboxes/radix");return await a(i)}).with(o.Chain.Ripple,async()=>{let{getRippleToolbox:a}=await import("@swapkit/toolboxes/ripple");return await a(i)}).with(o.Chain.Solana,async()=>{let{getSolanaToolbox:a}=await import("@swapkit/toolboxes/solana");return await a(i)}).with(o.Chain.Tron,async()=>{let{createTronToolbox:a}=await import("@swapkit/toolboxes/tron");return await a(i)}).with(o.Chain.Near,async()=>{let{getNearToolbox:a}=await import("@swapkit/toolboxes/near");return await a(i)}).otherwise(()=>{throw new o.SwapKitError("toolbox_not_supported",{chain:r})})}
2
2
 
3
3
  //# debugId=E213B61B029A580264756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
package/dist/src/index.js CHANGED
@@ -1,3 +1,4 @@
1
1
  import{d as t,e as a}from"../chunk-s47y8512.js";import{AssetValue as u,Chain as o,FeeOption as d,SwapKitError as f}from"@swapkit/helpers";async function A(){let{match:s}=await import("ts-pattern"),{cosmosValidateAddress:r}=await import("@swapkit/toolboxes/cosmos"),{evmValidateAddress:l}=await import("@swapkit/toolboxes/evm"),{substrateValidateAddress:e}=await import("@swapkit/toolboxes/substrate"),{getUTXOAddressValidator:i}=await import("@swapkit/toolboxes/utxo"),{getSolanaAddressValidator:T}=await import("@swapkit/toolboxes/solana"),{validateNearAddress:x}=await import("@swapkit/toolboxes/near"),{rippleValidateAddress:c}=await import("@swapkit/toolboxes/ripple"),{radixValidateAddress:b}=await import("@swapkit/toolboxes/radix"),{getTronAddressValidator:y}=await import("@swapkit/toolboxes/tron"),h=await T(),w=await i(),C=await y();return function g({address:n,chain:p}){return s(p).with(o.Arbitrum,o.Avalanche,o.Optimism,o.BinanceSmartChain,o.Base,o.Polygon,o.Ethereum,()=>l({address:n})).with(o.Litecoin,o.Dash,o.Dogecoin,o.BitcoinCash,o.Bitcoin,()=>w({address:n,chain:p})).with(o.Cosmos,o.Kujira,o.Maya,o.THORChain,()=>r({address:n,chain:p})).with(o.Chainflip,o.Polkadot,()=>e({address:n,chain:p})).with(o.Radix,()=>b(n)).with(o.Near,()=>x(n)).with(o.Ripple,()=>c(n)).with(o.Solana,()=>h(n)).with(o.Tron,()=>C(n)).otherwise(()=>!1)}}function S(s){return async function r(l){let{match:e}=await import("ts-pattern");return e(s).returnType().with(o.Arbitrum,o.Avalanche,o.Optimism,o.BinanceSmartChain,o.Base,o.Polygon,o.Ethereum,async(i)=>{let T=await m(i),x=await T.createTransaction(l);return T.estimateTransactionFee({...x,feeOption:l.feeOptionKey||d.Fast,chain:i})}).with(o.Bitcoin,o.BitcoinCash,o.Dogecoin,o.Dash,o.Litecoin,o.Polkadot,o.Solana,o.Ripple,o.Tron,o.Near,async(i)=>{return(await m(i)).estimateTransactionFee(l)}).with(o.THORChain,o.Maya,o.Kujira,o.Cosmos,async()=>{let{estimateTransactionFee:i}=await import("@swapkit/toolboxes/cosmos");return i(l)}).otherwise(async()=>u.from({chain:s}))}}async function m(s,r){let{match:l}=await import("ts-pattern");return l(s).returnType().with(o.Arbitrum,o.Avalanche,o.Optimism,o.BinanceSmartChain,o.Base,o.Polygon,o.Ethereum,async()=>{let{getEvmToolbox:e}=await import("@swapkit/toolboxes/evm");return await e(s,r)}).with(o.Litecoin,o.Dash,o.Dogecoin,o.BitcoinCash,o.Bitcoin,o.Zcash,async()=>{let{getUtxoToolbox:e}=await import("@swapkit/toolboxes/utxo");return await e(s,r)}).with(o.Cosmos,o.Kujira,o.Maya,o.THORChain,async()=>{let{getCosmosToolbox:e}=await import("@swapkit/toolboxes/cosmos");return await e(s,r)}).with(o.Chainflip,o.Polkadot,async()=>{let{getSubstrateToolbox:e}=await import("@swapkit/toolboxes/substrate");return await e(s,r)}).with(o.Radix,async()=>{let{RadixToolbox:e}=await import("@swapkit/toolboxes/radix");return await e(r)}).with(o.Ripple,async()=>{let{getRippleToolbox:e}=await import("@swapkit/toolboxes/ripple");return await e(r)}).with(o.Solana,async()=>{let{getSolanaToolbox:e}=await import("@swapkit/toolboxes/solana");return await e(r)}).with(o.Tron,async()=>{let{createTronToolbox:e}=await import("@swapkit/toolboxes/tron");return await e(r)}).with(o.Near,async()=>{let{getNearToolbox:e}=await import("@swapkit/toolboxes/near");return await e(r)}).otherwise(()=>{throw new f("toolbox_not_supported",{chain:s})})}export{m as getToolbox,S as getFeeEstimator,A as getAddressValidator};
2
2
 
3
3
  //# debugId=2C52B980D6A8E65164756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var D1={};H1(D1,{validateNearAddress:()=>T,tgasToGas:()=>e,isSimpleTransfer:()=>C,isCustomEstimator:()=>g,isContractDeployment:()=>A,isContractCall:()=>K,isBatchTransaction:()=>I,isAccountCreation:()=>h,getNearToolbox:()=>f1,getNearSignerFromPrivateKey:()=>G,getNearSignerFromPhrase:()=>P,getFullAccessPublicKey:()=>b,getContractMethodGas:()=>l,gasToTGas:()=>t,estimateBatchGas:()=>S,createNearContract:()=>O,createNEP141Token:()=>F,GAS_COSTS:()=>D});module.exports=R1(D1);var q=require("@swapkit/helpers");var E=require("@swapkit/helpers"),n=require("near-api-js");async function T(W){try{let{validateAccountId:Z}=await import("near-sdk-js");return Z(W)}catch{let Z=/^(([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+$/;return W.length>=2&&W.length<=64&&Z.test(W)}}async function P(W){let{parseSeedPhrase:Z}=await import("near-seed-phrase"),{KeyPair:f}=await import("near-api-js"),M=W.index||0,$=W.derivationPath?E.derivationPathToString(W.derivationPath.slice(0,3)):`m/44'/397'/${M}'`,{secretKey:X}=Z(W.phrase,$),z=f.fromString(X);return s(z)}async function G(W){let{KeyPair:Z}=await import("near-api-js/lib/utils"),f=Z.fromString(W);return s(f)}class c extends n.KeyPairSigner{#x;constructor(W){super(W);this.#x=W}getAddress(){let W=this.#x.getPublicKey(),Z=Buffer.from(W.data).toString("hex");return Promise.resolve(Z)}}function s(W){return new c(W)}async function b(W,Z){let M=(await W.query({request_type:"view_access_key_list",finality:"final",account_id:Z})).keys.find((V)=>V.access_key.permission==="FullAccess");if(!M)throw new E.SwapKitError("toolbox_near_invalid_address");let{utils:$}=await import("near-api-js"),X=$.PublicKey.fromString(M.public_key),z=M.access_key.nonce||0;return{publicKey:X,nonce:z}}var D={SIMPLE_TRANSFER:"1",TOKEN_TRANSFER:"100",CONTRACT_CALL:"100",ACCOUNT_CREATION:"30",CONTRACT_DEPLOYMENT:"200",ACCESS_KEY_ADDITION:"5",ACCESS_KEY_DELETION:"5",STAKE:"10",STORAGE_DEPOSIT:"100"};function C(W){return"recipient"in W&&"amount"in W&&!("contractId"in W)}function K(W){return"contractId"in W&&"methodName"in W}function I(W){return"actions"in W}function h(W){return"newAccountId"in W}function A(W){return"contractCode"in W}function g(W){return"customEstimator"in W}function S(W){let Z=0;for(let f of W)switch(f.enum){case"transfer":Z+=Number(D.SIMPLE_TRANSFER);break;case"functionCall":Z+=Number(D.CONTRACT_CALL);break;case"createAccount":Z+=Number(D.ACCOUNT_CREATION);break;case"deployContract":Z+=Number(D.CONTRACT_DEPLOYMENT);break;case"addKey":Z+=Number(D.ACCESS_KEY_ADDITION);break;case"deleteKey":Z+=Number(D.ACCESS_KEY_DELETION);break;case"stake":Z+=Number(D.STAKE);break;default:Z+=Number(D.CONTRACT_CALL)}return Z.toString()}function l(W){if(W==="ft_transfer"||W==="ft_transfer_call")return D.TOKEN_TRANSFER;if(W==="storage_deposit")return D.STORAGE_DEPOSIT;return D.CONTRACT_CALL}function e(W){return(BigInt(W)*BigInt(1000000000000)).toString()}function t(W){return(BigInt(W)/BigInt(1000000000000)).toString()}var r="1250000000000000000000";async function F({contractId:W,account:Z}){let f=(await import("bn.js")).default,M=await O({account:Z,contractId:W,viewMethods:["ft_balance_of","ft_total_supply","ft_metadata","storage_balance_of","storage_balance_bounds"],changeMethods:["ft_transfer","ft_transfer_call","storage_deposit","storage_withdraw","storage_unregister"]}),$=async(X)=>{if(!await M.storage_balance_of({account_id:X})){let B=(await M.storage_balance_bounds())?.min||r;await M.storage_deposit({account_id:X},new f("100000000000000"),new f(B))}};return{transfer:async(X,z,V)=>{return await $(X),M.ft_transfer({receiver_id:X,amount:z,memo:V},new f("100000000000000"),new f("1"))},transferCall:async(X,z,V,B)=>{return await $(X),M.ft_transfer_call({receiver_id:X,amount:z,memo:B,msg:V},new f("100000000000000"),new f("1"))},balanceOf:(X)=>M.ft_balance_of({account_id:X}),totalSupply:()=>M.ft_total_supply(),metadata:()=>M.ft_metadata(),storageBalanceOf:(X)=>M.storage_balance_of({account_id:X}),storageDeposit:(X,z)=>M.storage_deposit({account_id:X},new f("100000000000000"),new f(z||r)),ensureStorage:$,contract:M}}async function f1(W){let{P:Z,match:f}=await import("ts-pattern"),{providers:M}=await import("near-api-js"),$=await f(W).with({phrase:Z.string},async(x)=>{return await P(x)}).with({signer:Z.any},({signer:x})=>x).otherwise(()=>{return}),X=q.SKConfig.get("rpcUrls")[q.Chain.Near],z=new M.JsonRpcProvider({url:X});async function V(x){let{Account:J}=await import("near-api-js"),Q=x||await B();return new J(Q,z,$)}async function B(){if(!$)throw new q.SwapKitError("toolbox_near_no_signer");return await $.getAddress()}async function a(x){if(!$)throw new q.SwapKitError("toolbox_near_no_signer");let{recipient:J,assetValue:Q}=x;if(!T(J))throw new q.SwapKitError("toolbox_near_invalid_address");let Y=await V();if(Q.isGasAsset===!1){let L=Q.address;if(!L)throw new q.SwapKitError("toolbox_near_missing_contract_address");let R=Q.getBaseValue("string");return m({contractId:L,methodName:"ft_transfer",args:{receiver_id:J,amount:R,memo:x.memo}})}try{let L=Q.getBaseValue("string");return(await Y.transfer({receiverId:J,amount:L})).transaction.hash}catch(L){throw new q.SwapKitError("toolbox_near_transfer_failed",{error:L})}}async function x1(x){let{recipient:J,assetValue:Q,memo:Y,feeRate:L,attachedDeposit:R,sender:U}=x;if(!Q.isGasAsset){let i=Q.address;if(!i)throw new q.SwapKitError("toolbox_near_missing_contract_address");return u({sender:U,contractId:i,methodName:"ft_transfer",args:{receiver_id:J,amount:Q.getBaseValue("string"),memo:Y||null},gas:L.toString()||"100000000000000",attachedDeposit:"1"})}let{publicKey:w,nonce:j}=await b(z,U),k=Q.getBaseValue("bigint"),{SCHEMA:v}=await import("near-api-js/lib/transaction"),{transactions:N,utils:_}=await import("near-api-js"),p=[N.transfer(k)];if(Y&&R)p.push(N.functionCall("memo",{memo:Y},BigInt(L),BigInt(R)));let M1=await z.block({finality:"final"}),o=_.serialize.base_decode(M1.header.hash),Y1=N.createTransaction(U,w,J,j,p,o),U1=_.serialize.serialize(v.Transaction,Y1);return{serialized:Buffer.from(U1).toString("base64"),publicKey:w.toString(),details:{signerId:U,nonce:j,blockHash:_.serialize.base_encode(o)}}}async function u(x){let{sender:J}=x,{publicKey:Q,nonce:Y}=await b(z,J),{SCHEMA:L}=await import("near-api-js/lib/transaction"),{transactions:R,utils:U}=await import("near-api-js"),w=await z.block({finality:"final"}),j=U.serialize.base_decode(w.header.hash),k=[R.functionCall(x.methodName,Buffer.from(JSON.stringify(x.args)),BigInt(x.gas),BigInt(x.attachedDeposit))],v=R.createTransaction(J,Q,x.contractId,Y,k,j),N=U.serialize.serialize(L.Transaction,v);return{serialized:Buffer.from(N).toString("base64"),publicKey:Q.toString(),details:{signerId:J,receiverId:x.contractId,methodName:x.methodName,nonce:Y,blockHash:U.serialize.base_encode(j)}}}async function W1(x){if(!$)throw new q.SwapKitError("toolbox_near_no_signer");let[J,Q]=await $.signTransaction(x);return Q}async function q1(x){return(await z.sendTransaction(x)).transaction.hash}async function J1(x){if("assetValue"in x){let L=BigInt("115123062500")+BigInt("108059500000"),R=await Q1(),U=L*BigInt(R.toString());return q.AssetValue.from({chain:q.Chain.Near,value:U.toString(),fromBaseDecimal:q.BaseDecimal[q.Chain.Near]})}let J=$?await V():void 0;return y(x,J)}async function Q1(){try{return await z.query({request_type:"call_function",finality:"final",account_id:"system",method_name:"gas_price",args_base64:""})}catch{return"100000000"}}async function Z1(x,J,Q){if(!$)throw new q.SwapKitError("toolbox_near_no_signer");let Y=await V(),{utils:L}=await import("near-api-js"),R=L.format.parseNearAmount(Q)||"0";return(await Y.createAccount(x,L.PublicKey.fromString(J),BigInt(R))).transaction.hash}async function m(x){try{if(!$)throw new q.SwapKitError("toolbox_near_no_signer");let{transactions:J}=await import("near-api-js"),{contractId:Q,methodName:Y,args:L,deposit:R}=x,U=await V(),w=await y({methodName:Y,args:L||{},contractId:Q}),j=J.functionCall(Y,L||{},w.getBaseValue("bigint"),BigInt(R||"0"));return(await U.signAndSendTransaction({receiverId:Q,actions:[j]})).transaction.hash}catch(J){throw new q.SwapKitError("toolbox_near_transfer_failed",{error:J})}}async function $1(x){let{createNearContract:J}=await import("../../chunk-vtd17cje.js"),Q=await V();return J({account:Q,contractId:x.contractId,viewMethods:x.viewMethods,changeMethods:x.changeMethods})}async function X1(x){if(!$)throw new q.SwapKitError("toolbox_near_no_signer");if(x.actions.length===0)throw new q.SwapKitError("toolbox_near_empty_batch");return(await(await V()).signAndSendTransaction({receiverId:x.receiverId,actions:x.actions})).transaction.hash}async function z1(x){let J=await V();return F({contractId:x,account:J})}async function L1(x){try{let J=await V(x),Q;try{let Y=await J.getBalance();Q=q.AssetValue.from({chain:q.Chain.Near,value:Y,fromBaseDecimal:q.BaseDecimal[q.Chain.Near]})}catch{Q=q.AssetValue.from({chain:q.Chain.Near,value:"0",fromBaseDecimal:q.BaseDecimal[q.Chain.Near]})}return[Q]}catch(J){throw new q.SwapKitError("toolbox_near_balance_failed",{error:J})}}async function y(x,J){let Q=await f(x).when(C,()=>D.SIMPLE_TRANSFER).when(K,(U)=>l(U.methodName)).when(I,(U)=>S(U.actions)).when(h,()=>D.ACCOUNT_CREATION).when(A,()=>D.CONTRACT_DEPLOYMENT).when(g,(U)=>{if(!J)throw new q.SwapKitError("toolbox_near_no_account");return U.customEstimator(J)}).otherwise(()=>{throw new q.SwapKitError("toolbox_near_invalid_gas_params")}),Y=await d(),R=BigInt(Q)*BigInt(1000000000000)*BigInt(Y);return q.AssetValue.from({chain:q.Chain.Near,value:R,fromBaseDecimal:q.BaseDecimal[q.Chain.Near]})}async function d(){try{return(await z.gasPrice(null)).gas_price||"100000000"}catch(x){return"100000000"}}return{getAddress:B,getPublicKey:async()=>$?(await $.getPublicKey()).toString():"",provider:z,transfer:a,createTransaction:x1,createContractFunctionCall:u,estimateTransactionFee:J1,broadcastTransaction:q1,signTransaction:W1,getBalance:L1,validateAddress:T,getSignerFromPhrase:(x)=>P(x),getSignerFromPrivateKey:G,callFunction:m,createSubAccount:Z1,createContract:$1,executeBatchTransaction:X1,nep141:z1,getGasPrice:d,estimateGas:y}}
2
2
 
3
3
  //# debugId=68F35FE5C1C424C564756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{c as E}from"../../chunk-zcdeg6h9.js";import{d as R,e as H}from"../../chunk-s47y8512.js";import{AssetValue as P,BaseDecimal as b,Chain as B,SKConfig as j1,SwapKitError as j}from"@swapkit/helpers";import{SwapKitError as f1,derivationPathToString as R1}from"@swapkit/helpers";import{KeyPairSigner as H1}from"near-api-js";async function G(W){try{let{validateAccountId:Q}=await import("near-sdk-js");return Q(W)}catch{let Q=/^(([a-z\d]+[-_])*[a-z\d]+\.)*([a-z\d]+[-_])*[a-z\d]+$/;return W.length>=2&&W.length<=64&&Q.test(W)}}async function C(W){let{parseSeedPhrase:Q}=await import("near-seed-phrase"),{KeyPair:U}=await import("near-api-js"),L=W.index||0,Z=W.derivationPath?R1(W.derivationPath.slice(0,3)):`m/44'/397'/${L}'`,{secretKey:$}=Q(W.phrase,Z),X=U.fromString($);return d(X)}async function u(W){let{KeyPair:Q}=await import("near-api-js/lib/utils"),U=Q.fromString(W);return d(U)}class m extends H1{#x;constructor(W){super(W);this.#x=W}getAddress(){let W=this.#x.getPublicKey(),Q=Buffer.from(W.data).toString("hex");return Promise.resolve(Q)}}function d(W){return new m(W)}async function K(W,Q){let L=(await W.query({request_type:"view_access_key_list",finality:"final",account_id:Q})).keys.find((D)=>D.access_key.permission==="FullAccess");if(!L)throw new f1("toolbox_near_invalid_address");let{utils:Z}=await import("near-api-js"),$=Z.PublicKey.fromString(L.public_key),X=L.access_key.nonce||0;return{publicKey:$,nonce:X}}var V={SIMPLE_TRANSFER:"1",TOKEN_TRANSFER:"100",CONTRACT_CALL:"100",ACCOUNT_CREATION:"30",CONTRACT_DEPLOYMENT:"200",ACCESS_KEY_ADDITION:"5",ACCESS_KEY_DELETION:"5",STAKE:"10",STORAGE_DEPOSIT:"100"};function p(W){return"recipient"in W&&"amount"in W&&!("contractId"in W)}function o(W){return"contractId"in W&&"methodName"in W}function i(W){return"actions"in W}function n(W){return"newAccountId"in W}function c(W){return"contractCode"in W}function s(W){return"customEstimator"in W}function e(W){let Q=0;for(let U of W)switch(U.enum){case"transfer":Q+=Number(V.SIMPLE_TRANSFER);break;case"functionCall":Q+=Number(V.CONTRACT_CALL);break;case"createAccount":Q+=Number(V.ACCOUNT_CREATION);break;case"deployContract":Q+=Number(V.CONTRACT_DEPLOYMENT);break;case"addKey":Q+=Number(V.ACCESS_KEY_ADDITION);break;case"deleteKey":Q+=Number(V.ACCESS_KEY_DELETION);break;case"stake":Q+=Number(V.STAKE);break;default:Q+=Number(V.CONTRACT_CALL)}return Q.toString()}function t(W){if(W==="ft_transfer"||W==="ft_transfer_call")return V.TOKEN_TRANSFER;if(W==="storage_deposit")return V.STORAGE_DEPOSIT;return V.CONTRACT_CALL}function D1(W){return(BigInt(W)*BigInt(1000000000000)).toString()}function V1(W){return(BigInt(W)/BigInt(1000000000000)).toString()}var r="1250000000000000000000";async function T({contractId:W,account:Q}){let U=(await import("bn.js")).default,L=await E({account:Q,contractId:W,viewMethods:["ft_balance_of","ft_total_supply","ft_metadata","storage_balance_of","storage_balance_bounds"],changeMethods:["ft_transfer","ft_transfer_call","storage_deposit","storage_withdraw","storage_unregister"]}),Z=async($)=>{if(!await L.storage_balance_of({account_id:$})){let N=(await L.storage_balance_bounds())?.min||r;await L.storage_deposit({account_id:$},new U("100000000000000"),new U(N))}};return{transfer:async($,X,D)=>{return await Z($),L.ft_transfer({receiver_id:$,amount:X,memo:D},new U("100000000000000"),new U("1"))},transferCall:async($,X,D,N)=>{return await Z($),L.ft_transfer_call({receiver_id:$,amount:X,memo:N,msg:D},new U("100000000000000"),new U("1"))},balanceOf:($)=>L.ft_balance_of({account_id:$}),totalSupply:()=>L.ft_total_supply(),metadata:()=>L.ft_metadata(),storageBalanceOf:($)=>L.storage_balance_of({account_id:$}),storageDeposit:($,X)=>L.storage_deposit({account_id:$},new U("100000000000000"),new U(X||r)),ensureStorage:Z,contract:L}}async function I1(W){let{P:Q,match:U}=await import("ts-pattern"),{providers:L}=await import("near-api-js"),Z=await U(W).with({phrase:Q.string},async(x)=>{return await C(x)}).with({signer:Q.any},({signer:x})=>x).otherwise(()=>{return}),$=j1.get("rpcUrls")[B.Near],X=new L.JsonRpcProvider({url:$});async function D(x){let{Account:q}=await import("near-api-js"),J=x||await N();return new q(J,X,Z)}async function N(){if(!Z)throw new j("toolbox_near_no_signer");return await Z.getAddress()}async function a(x){if(!Z)throw new j("toolbox_near_no_signer");let{recipient:q,assetValue:J}=x;if(!G(q))throw new j("toolbox_near_invalid_address");let M=await D();if(J.isGasAsset===!1){let z=J.address;if(!z)throw new j("toolbox_near_missing_contract_address");let f=J.getBaseValue("string");return h({contractId:z,methodName:"ft_transfer",args:{receiver_id:q,amount:f,memo:x.memo}})}try{let z=J.getBaseValue("string");return(await M.transfer({receiverId:q,amount:z})).transaction.hash}catch(z){throw new j("toolbox_near_transfer_failed",{error:z})}}async function x1(x){let{recipient:q,assetValue:J,memo:M,feeRate:z,attachedDeposit:f,sender:Y}=x;if(!J.isGasAsset){let l=J.address;if(!l)throw new j("toolbox_near_missing_contract_address");return I({sender:Y,contractId:l,methodName:"ft_transfer",args:{receiver_id:q,amount:J.getBaseValue("string"),memo:M||null},gas:z.toString()||"100000000000000",attachedDeposit:"1"})}let{publicKey:O,nonce:w}=await K(X,Y),k=J.getBaseValue("bigint"),{SCHEMA:v}=await import("near-api-js/lib/transaction"),{transactions:F,utils:_}=await import("near-api-js"),g=[F.transfer(k)];if(M&&f)g.push(F.functionCall("memo",{memo:M},BigInt(z),BigInt(f)));let M1=await X.block({finality:"final"}),S=_.serialize.base_decode(M1.header.hash),Y1=F.createTransaction(Y,O,q,w,g,S),U1=_.serialize.serialize(v.Transaction,Y1);return{serialized:Buffer.from(U1).toString("base64"),publicKey:O.toString(),details:{signerId:Y,nonce:w,blockHash:_.serialize.base_encode(S)}}}async function I(x){let{sender:q}=x,{publicKey:J,nonce:M}=await K(X,q),{SCHEMA:z}=await import("near-api-js/lib/transaction"),{transactions:f,utils:Y}=await import("near-api-js"),O=await X.block({finality:"final"}),w=Y.serialize.base_decode(O.header.hash),k=[f.functionCall(x.methodName,Buffer.from(JSON.stringify(x.args)),BigInt(x.gas),BigInt(x.attachedDeposit))],v=f.createTransaction(q,J,x.contractId,M,k,w),F=Y.serialize.serialize(z.Transaction,v);return{serialized:Buffer.from(F).toString("base64"),publicKey:J.toString(),details:{signerId:q,receiverId:x.contractId,methodName:x.methodName,nonce:M,blockHash:Y.serialize.base_encode(w)}}}async function W1(x){if(!Z)throw new j("toolbox_near_no_signer");let[q,J]=await Z.signTransaction(x);return J}async function q1(x){return(await X.sendTransaction(x)).transaction.hash}async function J1(x){if("assetValue"in x){let z=BigInt("115123062500")+BigInt("108059500000"),f=await Q1(),Y=z*BigInt(f.toString());return P.from({chain:B.Near,value:Y.toString(),fromBaseDecimal:b[B.Near]})}let q=Z?await D():void 0;return y(x,q)}async function Q1(){try{return await X.query({request_type:"call_function",finality:"final",account_id:"system",method_name:"gas_price",args_base64:""})}catch{return"100000000"}}async function Z1(x,q,J){if(!Z)throw new j("toolbox_near_no_signer");let M=await D(),{utils:z}=await import("near-api-js"),f=z.format.parseNearAmount(J)||"0";return(await M.createAccount(x,z.PublicKey.fromString(q),BigInt(f))).transaction.hash}async function h(x){try{if(!Z)throw new j("toolbox_near_no_signer");let{transactions:q}=await import("near-api-js"),{contractId:J,methodName:M,args:z,deposit:f}=x,Y=await D(),O=await y({methodName:M,args:z||{},contractId:J}),w=q.functionCall(M,z||{},O.getBaseValue("bigint"),BigInt(f||"0"));return(await Y.signAndSendTransaction({receiverId:J,actions:[w]})).transaction.hash}catch(q){throw new j("toolbox_near_transfer_failed",{error:q})}}async function $1(x){let{createNearContract:q}=await import("../../chunk-zcdeg6h9.js"),J=await D();return q({account:J,contractId:x.contractId,viewMethods:x.viewMethods,changeMethods:x.changeMethods})}async function X1(x){if(!Z)throw new j("toolbox_near_no_signer");if(x.actions.length===0)throw new j("toolbox_near_empty_batch");return(await(await D()).signAndSendTransaction({receiverId:x.receiverId,actions:x.actions})).transaction.hash}async function z1(x){let q=await D();return T({contractId:x,account:q})}async function L1(x){try{let q=await D(x),J;try{let M=await q.getBalance();J=P.from({chain:B.Near,value:M,fromBaseDecimal:b[B.Near]})}catch{J=P.from({chain:B.Near,value:"0",fromBaseDecimal:b[B.Near]})}return[J]}catch(q){throw new j("toolbox_near_balance_failed",{error:q})}}async function y(x,q){let J=await U(x).when(p,()=>V.SIMPLE_TRANSFER).when(o,(Y)=>t(Y.methodName)).when(i,(Y)=>e(Y.actions)).when(n,()=>V.ACCOUNT_CREATION).when(c,()=>V.CONTRACT_DEPLOYMENT).when(s,(Y)=>{if(!q)throw new j("toolbox_near_no_account");return Y.customEstimator(q)}).otherwise(()=>{throw new j("toolbox_near_invalid_gas_params")}),M=await A(),f=BigInt(J)*BigInt(1000000000000)*BigInt(M);return P.from({chain:B.Near,value:f,fromBaseDecimal:b[B.Near]})}async function A(){try{return(await X.gasPrice(null)).gas_price||"100000000"}catch(x){return"100000000"}}return{getAddress:N,getPublicKey:async()=>Z?(await Z.getPublicKey()).toString():"",provider:X,transfer:a,createTransaction:x1,createContractFunctionCall:I,estimateTransactionFee:J1,broadcastTransaction:q1,signTransaction:W1,getBalance:L1,validateAddress:G,getSignerFromPhrase:(x)=>C(x),getSignerFromPrivateKey:u,callFunction:h,createSubAccount:Z1,createContract:$1,executeBatchTransaction:X1,nep141:z1,getGasPrice:A,estimateGas:y}}export{G as validateNearAddress,D1 as tgasToGas,p as isSimpleTransfer,s as isCustomEstimator,c as isContractDeployment,o as isContractCall,i as isBatchTransaction,n as isAccountCreation,I1 as getNearToolbox,u as getNearSignerFromPrivateKey,C as getNearSignerFromPhrase,K as getFullAccessPublicKey,t as getContractMethodGas,V1 as gasToTGas,e as estimateBatchGas,E as createNearContract,T as createNEP141Token,V as GAS_COSTS};
2
2
 
3
3
  //# debugId=38921569B1E998F064756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var I={};$(I,{radixValidateAddress:()=>Y,RadixToolbox:()=>B});module.exports=_(I);var M=require("@swapkit/helpers");function Y(j){return j.startsWith("account_rdx1")&&j.length===66}function q({networkApi:j}){return async function J(K){let N=await G({address:K,networkApi:j});return v({resources:N,networkApi:j})}}async function G({address:j,networkApi:J}){let K=!0,N,L=[],z=await x(J);while(K){let U={address:j,limit_per_page:100,cursor:N,at_ledger_state:{state_version:z}},O=await J.state.innerClient.entityFungiblesPage({stateEntityFungiblesPageRequest:U});if(L=L.concat(O.items),O.next_cursor)N=O.next_cursor;else K=!1}return L}async function v({resources:j,networkApi:J}){let K=[],N=50,L=[];for(let z=0;z<j.length;z+=50)L.push(j.slice(z,z+50));for(let z of L){let U=z.map((H)=>H.resource_address),O=await J.state.getEntityDetailsVaultAggregated(U),W=new Map;for(let H of O)if(H.details!==void 0){let Q=H.metadata?.items.find((Z)=>Z.key==="symbol"),V=Q?.value.typed.type==="String"?Q.value.typed.value:"?";if(H.details.type==="FungibleResource")W.set(H.address,{decimals:H.details.divisibility,symbol:V})}for(let H of z)if(H.aggregation_level==="Global"){let Q=W.get(H.resource_address)||{decimals:0,symbol:"?"},V=M.AssetValue.from({asset:Q.symbol!==M.Chain.Radix?`${M.Chain.Radix}.${Q.symbol}-${H.resource_address}`:"XRD.XRD",value:H.amount});K.push(V)}}return K}async function x(j){return j.status.getCurrent().then((J)=>J.ledger_state.state_version)}var B=async({dappConfig:j}={})=>{let{RadixDappToolkit:J}=await import("@radixdlt/radix-dapp-toolkit"),{GatewayApiClient:K}=await import("@radixdlt/babylon-gateway-api-sdk"),N=j||M.SKConfig.get("integrations").radix,L=J({...N,networkId:N.network?.networkId||1}),z=K.initialize(L.gatewayApi.clientConfig);return{getAddress:()=>"",getBalance:q({networkApi:z}),networkApi:z,validateAddress:Y,signAndBroadcast:()=>{throw new M.SwapKitError("toolbox_radix_method_not_supported",{method:"signAndBroadcast"})}}};
2
2
 
3
3
  //# debugId=F56FF472911CDA3064756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{d as W,e as X}from"../../chunk-s47y8512.js";import{AssetValue as _,Chain as Y,SKConfig as $,SwapKitError as q}from"@swapkit/helpers";function G(j){return j.startsWith("account_rdx1")&&j.length===66}function v({networkApi:j}){return async function J(K){let M=await x({address:K,networkApi:j});return B({resources:M,networkApi:j})}}async function x({address:j,networkApi:J}){let K=!0,M,L=[],z=await I(J);while(K){let Q={address:j,limit_per_page:100,cursor:M,at_ledger_state:{state_version:z}},N=await J.state.innerClient.entityFungiblesPage({stateEntityFungiblesPageRequest:Q});if(L=L.concat(N.items),N.next_cursor)M=N.next_cursor;else K=!1}return L}async function B({resources:j,networkApi:J}){let K=[],M=50,L=[];for(let z=0;z<j.length;z+=50)L.push(j.slice(z,z+50));for(let z of L){let Q=z.map((H)=>H.resource_address),N=await J.state.getEntityDetailsVaultAggregated(Q),V=new Map;for(let H of N)if(H.details!==void 0){let O=H.metadata?.items.find((Z)=>Z.key==="symbol"),U=O?.value.typed.type==="String"?O.value.typed.value:"?";if(H.details.type==="FungibleResource")V.set(H.address,{decimals:H.details.divisibility,symbol:U})}for(let H of z)if(H.aggregation_level==="Global"){let O=V.get(H.resource_address)||{decimals:0,symbol:"?"},U=_.from({asset:O.symbol!==Y.Radix?`${Y.Radix}.${O.symbol}-${H.resource_address}`:"XRD.XRD",value:H.amount});K.push(U)}}return K}async function I(j){return j.status.getCurrent().then((J)=>J.ledger_state.state_version)}var T=async({dappConfig:j}={})=>{let{RadixDappToolkit:J}=await import("@radixdlt/radix-dapp-toolkit"),{GatewayApiClient:K}=await import("@radixdlt/babylon-gateway-api-sdk"),M=j||$.get("integrations").radix,L=J({...M,networkId:M.network?.networkId||1}),z=K.initialize(L.gatewayApi.clientConfig);return{getAddress:()=>"",getBalance:v({networkApi:z}),networkApi:z,validateAddress:G,signAndBroadcast:()=>{throw new q("toolbox_radix_method_not_supported",{method:"signAndBroadcast"})}}};export{G as radixValidateAddress,T as RadixToolbox};
2
2
 
3
3
  //# debugId=327A752010E93B5364756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var B={};U(B,{rippleValidateAddress:()=>$,hashes:()=>N.hashes,getRippleToolbox:()=>f});module.exports=P(B);var j=require("@swapkit/helpers"),M=require("xrpl"),N=require("xrpl"),_={ACCOUNT_NOT_FOUND:19};function L(z){let G=M.Wallet.fromMnemonic(z);return{getAddress:()=>Promise.resolve(G.address),signTransaction:(Y)=>Promise.resolve(G.sign(Y))}}function $(z){return M.isValidAddress(z)}var f=async(z={})=>{let G="signer"in z&&z.signer?z.signer:("phrase"in z)&&z.phrase?L(z.phrase):void 0,Y=j.SKConfig.get("rpcUrls")[j.Chain.Ripple];if(!Y)throw new j.SwapKitError({errorKey:"toolbox_ripple_rpc_not_configured",info:{chain:j.Chain.Ripple}});let Q=new M.Client(Y);await Q.connect();let Z=()=>{if(!G)throw new j.SwapKitError({errorKey:"toolbox_ripple_signer_not_found"});return G.getAddress()},W=async(q)=>{let J=q||await Z();try{let X=(await Q.request({command:"account_info",account:J})).result.account_data.Balance;return[j.AssetValue.from({chain:j.Chain.Ripple,value:X,fromBaseDecimal:j.BaseDecimal[j.Chain.Ripple]})]}catch(y){if(y.data.error_code===_.ACCOUNT_NOT_FOUND)return[j.AssetValue.from({chain:j.Chain.Ripple,value:0})];throw new j.SwapKitError("toolbox_ripple_get_balance_error",{info:{address:J,error:y}})}},H=async()=>{let J=(await Q.request({command:"fee"})).result.drops.open_ledger_fee;return j.AssetValue.from({chain:j.Chain.Ripple,value:j.SwapKitNumber.fromBigInt(BigInt(J),j.BaseDecimal[j.Chain.Ripple])})},k=async({assetValue:q,recipient:J,memo:y,sender:X})=>{if(!$(J))throw new j.SwapKitError({errorKey:"core_transaction_invalid_recipient_address"});let O=X||await Z();if(!q.isGasAsset||q.chain!==j.Chain.Ripple)throw new j.SwapKitError({errorKey:"toolbox_ripple_asset_not_supported",info:{asset:q.toString()}});let I={TransactionType:"Payment",Account:O,Amount:M.xrpToDrops(q.getValue("string")),Destination:J};if(y)I.Memos=[{Memo:{MemoData:Buffer.from(y).toString("hex")}}];return await Q.autofill(I)},v=(q)=>{if(!G)throw new j.SwapKitError({errorKey:"toolbox_ripple_signer_not_found"});return G.signTransaction(q)},F=async(q)=>{let y=(await Q.submitAndWait(q)).result;if(y.validated)return y.hash;throw new j.SwapKitError({errorKey:"toolbox_ripple_broadcast_error",info:{chain:j.Chain.Ripple}})};return{signer:G,createSigner:L,getAddress:Z,validateAddress:$,getBalance:W,createTransaction:k,signTransaction:v,broadcastTransaction:F,transfer:async(q)=>{if(!G)throw new j.SwapKitError({errorKey:"toolbox_ripple_signer_not_found"});let J=await G.getAddress(),y=await k({...q,sender:J}),X=await v(y);return F(X.tx_blob)},estimateTransactionFee:H,disconnect:()=>Q.disconnect()}};
2
2
 
3
3
  //# debugId=505386E4B21E68DE64756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import"../../chunk-s47y8512.js";import{AssetValue as $,BaseDecimal as L,Chain as J,SKConfig as U,SwapKitError as M,SwapKitNumber as _}from"@swapkit/helpers";import{Client as f,Wallet as B,isValidAddress as b,xrpToDrops as R}from"xrpl";import{hashes as V}from"xrpl";var D={ACCOUNT_NOT_FOUND:19};function N(y){let z=B.fromMnemonic(y);return{getAddress:()=>Promise.resolve(z.address),signTransaction:(Y)=>Promise.resolve(z.sign(Y))}}function W(y){return b(y)}var E=async(y={})=>{let z="signer"in y&&y.signer?y.signer:("phrase"in y)&&y.phrase?N(y.phrase):void 0,Y=U.get("rpcUrls")[J.Ripple];if(!Y)throw new M({errorKey:"toolbox_ripple_rpc_not_configured",info:{chain:J.Ripple}});let Q=new f(Y);await Q.connect();let Z=()=>{if(!z)throw new M({errorKey:"toolbox_ripple_signer_not_found"});return z.getAddress()},H=async(j)=>{let G=j||await Z();try{let X=(await Q.request({command:"account_info",account:G})).result.account_data.Balance;return[$.from({chain:J.Ripple,value:X,fromBaseDecimal:L[J.Ripple]})]}catch(q){if(q.data.error_code===D.ACCOUNT_NOT_FOUND)return[$.from({chain:J.Ripple,value:0})];throw new M("toolbox_ripple_get_balance_error",{info:{address:G,error:q}})}},O=async()=>{let G=(await Q.request({command:"fee"})).result.drops.open_ledger_fee;return $.from({chain:J.Ripple,value:_.fromBigInt(BigInt(G),L[J.Ripple])})},k=async({assetValue:j,recipient:G,memo:q,sender:X})=>{if(!W(G))throw new M({errorKey:"core_transaction_invalid_recipient_address"});let P=X||await Z();if(!j.isGasAsset||j.chain!==J.Ripple)throw new M({errorKey:"toolbox_ripple_asset_not_supported",info:{asset:j.toString()}});let I={TransactionType:"Payment",Account:P,Amount:R(j.getValue("string")),Destination:G};if(q)I.Memos=[{Memo:{MemoData:Buffer.from(q).toString("hex")}}];return await Q.autofill(I)},v=(j)=>{if(!z)throw new M({errorKey:"toolbox_ripple_signer_not_found"});return z.signTransaction(j)},F=async(j)=>{let q=(await Q.submitAndWait(j)).result;if(q.validated)return q.hash;throw new M({errorKey:"toolbox_ripple_broadcast_error",info:{chain:J.Ripple}})};return{signer:z,createSigner:N,getAddress:Z,validateAddress:W,getBalance:H,createTransaction:k,signTransaction:v,broadcastTransaction:F,transfer:async(j)=>{if(!z)throw new M({errorKey:"toolbox_ripple_signer_not_found"});let G=await z.getAddress(),q=await k({...j,sender:G}),X=await v(q);return F(X.tx_blob)},estimateTransactionFee:O,disconnect:()=>Q.disconnect()}};export{W as rippleValidateAddress,V as hashes,E as getRippleToolbox};
2
2
 
3
3
  //# debugId=AD02AAC0A5102C8964756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var H={};I(H,{getSolanaToolbox:()=>N,getSolanaAddressValidator:()=>u,createKeysForPath:()=>j});module.exports=v(H);var p=require("@swapkit/helpers"),E=require("ts-pattern"),z=require("ts-pattern");async function F(T){try{let a=await fetch(`https://lite-api.jup.ag/tokens/v1/token/${T}`);if(!a.ok)return null;return await a.json()}catch{return null}}async function J(T){let a=await h(),{PublicKey:l}=await import("@solana/web3.js"),{TOKEN_PROGRAM_ID:y}=await import("@solana/spl-token"),P=new l(T),o=[],S=await a.getBalance(P);if(S>0)o.push(p.AssetValue.from({chain:p.Chain.Solana,value:S,fromBaseDecimal:p.BaseDecimal[p.Chain.Solana]}));let x=await a.getParsedTokenAccountsByOwner(P,{programId:y});for(let{account:m}of x.value){let b=m.data.parsed.info,O=b.mint,R=b.tokenAmount.amount;if(Number(R)===0)continue;let G=await F(O),q=G?.symbol||"UNKNOWN",w=G?.decimals||b.tokenAmount.decimals;o.push(p.AssetValue.from({asset:`${p.Chain.Solana}.${q}-${O}`,value:R,fromBaseDecimal:w}))}return o}async function u(){let{PublicKey:T}=await import("@solana/web3.js");return(a)=>{try{let l=new T(a);return T.isOnCurve(l.toBytes())}catch(l){return!1}}}async function N(T){let a=T&&"index"in T?T.index||0:0,l=p.derivationPathToString(T&&"derivationPath"in T&&T.derivationPath?T.derivationPath:p.updateDerivationPath(p.NetworkDerivationPath[p.Chain.Solana],{index:a})),y=await z.match(T).with({phrase:E.P.string},({phrase:o})=>j({phrase:o,derivationPath:l})).with({signer:E.P.any},({signer:o})=>o).otherwise(()=>{return});function P(){return y?.publicKey?d(y.publicKey):""}return{getConnection:h,getAddress:P,createKeysForPath:j,getAddressFromPubKey:d,getPubkeyFromAddress:L,createTransaction:A(h),createTransactionFromInstructions:Z,getBalance:(o)=>{let S=o||P();if(!S)throw new p.SwapKitError("core_wallet_connection_not_found");return J(S)},transfer:_(h,y),broadcastTransaction:W(h),getAddressValidator:u,signTransaction:$(h,y),estimateTransactionFee:Q(h)}}function Q(T){return async({recipient:a,assetValue:l,memo:y,isProgramDerivedAddress:P,sender:o})=>{let S=await T(),m=(await A(T)({recipient:a,assetValue:l,memo:y,isProgramDerivedAddress:P,sender:o})).compileMessage(),b=await S.getFeeForMessage(m);if(b.value===null)throw new p.SwapKitError("toolbox_solana_fee_estimation_failed","Could not estimate Solana fee.");return p.AssetValue.from({chain:p.Chain.Solana,value:b.value,fromBaseDecimal:p.BaseDecimal[p.Chain.Solana]})}}async function h(){let{Connection:T}=await import("@solana/web3.js");return new T(p.SKConfig.get("rpcUrls").SOL,"confirmed")}function X(T){return async({assetValue:a,recipient:l,sender:y,isProgramDerivedAddress:P})=>{let o=await T(),S=await L(y);if(a.isGasAsset){let{Transaction:x,SystemProgram:m,PublicKey:b}=await import("@solana/web3.js");return new x().add(m.transfer({fromPubkey:S,lamports:a.getBaseValue("number"),toPubkey:new b(l)}))}if(a.address)return Y({amount:a.getBaseValue("number"),connection:o,decimals:a.decimal,from:S,recipient:l,tokenAddress:a.address,isProgramDerivedAddress:P});return}}async function Y({tokenAddress:T,recipient:a,from:l,connection:y,amount:P,decimals:o,isProgramDerivedAddress:S}){let{getAssociatedTokenAddress:x,getAccount:m,createAssociatedTokenAccountInstruction:b,createTransferCheckedInstruction:O}=await import("@solana/spl-token"),{Transaction:R,PublicKey:G}=await import("@solana/web3.js"),q=new R,w=new G(T),B=await x(w,l),U=new G(a),M=await x(w,U,S),V=!1;try{await m(y,M),V=!0}catch(K){}if(!V)q.add(b(l,M,U,w));return q.add(O(B,w,M,l,P,o)),q}function A(T){return async({recipient:a,assetValue:l,memo:y,isProgramDerivedAddress:P,sender:o})=>{let{createMemoInstruction:S}=await import("@solana/spl-memo"),x=await L(o),m=await u();if(!(P||m(a)))throw new p.SwapKitError("core_transaction_invalid_recipient_address");let b=await T(),O=await X(T)({assetValue:l,recipient:a,sender:o,isProgramDerivedAddress:P});if(!O)throw new p.SwapKitError("core_transaction_invalid_sender_address");if(y)O.add(S(y));let R=await b.getLatestBlockhash();return O.recentBlockhash=R.blockhash,O.feePayer=x,O}}async function Z({instructions:T}){let{Transaction:a}=await import("@solana/web3.js"),l=new a().add(...T);if(!l)throw new p.SwapKitError("core_transaction_invalid_sender_address");return l}function _(T,a){return async({recipient:l,assetValue:y,memo:P,isProgramDerivedAddress:o})=>{if(!a)throw new p.SwapKitError("core_transaction_invalid_sender_address");let S=a.publicKey?.toString()??(await a.connect()).publicKey.toString(),x=await A(T)({recipient:l,assetValue:y,memo:P,isProgramDerivedAddress:o,sender:S});if("connect"in a){let m=await a.signTransaction(x);return W(T)(m)}return x.sign(a),W(T)(x)}}function W(T){return async(a)=>{return(await T()).sendRawTransaction(a.serialize())}}function $(T,a){return async(l)=>{let{VersionedTransaction:y}=await import("@solana/web3.js");if(!a)throw new p.SwapKitError("toolbox_solana_no_signer");if(!(l instanceof y)){let o=await(await T()).getLatestBlockhash();l.recentBlockhash=o.blockhash,l.feePayer=a.publicKey||void 0}if("connect"in a)return await a.signTransaction(l);return await l.sign([a]),l}}async function j({phrase:T,derivationPath:a=p.DerivationPath.SOL}){let{HDKey:l}=await import("micro-key-producer/slip10.js"),{mnemonicToSeedSync:y}=await import("@scure/bip39"),{Keypair:P}=await import("@solana/web3.js"),o=y(T),S=l.fromMasterSeed(o);return P.fromSeed(S.derive(a,!0).privateKey)}function d(T){return T.toString()}async function L(T){let{PublicKey:a}=await import("@solana/web3.js");return new a(T)}
2
2
 
3
3
  //# debugId=B225E47B580B7BAF64756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{d as S,e as f}from"../../chunk-s47y8512.js";import{AssetValue as j,BaseDecimal as F,Chain as q,DerivationPath as Q,NetworkDerivationPath as X,SKConfig as Y,SwapKitError as R,derivationPathToString as Z,updateDerivationPath as _}from"@swapkit/helpers";import{P as d}from"ts-pattern";import{match as $}from"ts-pattern";async function v(T){try{let a=await fetch(`https://lite-api.jup.ag/tokens/v1/token/${T}`);if(!a.ok)return null;return await a.json()}catch{return null}}async function I(T){let a=await h(),{PublicKey:l}=await import("@solana/web3.js"),{TOKEN_PROGRAM_ID:o}=await import("@solana/spl-token"),y=new l(T),p=[],P=await a.getBalance(y);if(P>0)p.push(j.from({chain:q.Solana,value:P,fromBaseDecimal:F[q.Solana]}));let x=await a.getParsedTokenAccountsByOwner(y,{programId:o});for(let{account:m}of x.value){let b=m.data.parsed.info,O=b.mint,w=b.tokenAmount.amount;if(Number(w)===0)continue;let M=await v(O),E=M?.symbol||"UNKNOWN",G=M?.decimals||b.tokenAmount.decimals;p.push(j.from({asset:`${q.Solana}.${E}-${O}`,value:w,fromBaseDecimal:G}))}return p}async function J(){let{PublicKey:T}=await import("@solana/web3.js");return(a)=>{try{let l=new T(a);return T.isOnCurve(l.toBytes())}catch(l){return!1}}}async function g(T){let a=T&&"index"in T?T.index||0:0,l=Z(T&&"derivationPath"in T&&T.derivationPath?T.derivationPath:_(X[q.Solana],{index:a})),o=await $(T).with({phrase:d.string},({phrase:p})=>z({phrase:p,derivationPath:l})).with({signer:d.any},({signer:p})=>p).otherwise(()=>{return});function y(){return o?.publicKey?B(o.publicKey):""}return{getConnection:h,getAddress:y,createKeysForPath:z,getAddressFromPubKey:B,getPubkeyFromAddress:L,createTransaction:A(h),createTransactionFromInstructions:k,getBalance:(p)=>{let P=p||y();if(!P)throw new R("core_wallet_connection_not_found");return I(P)},transfer:s(h,o),broadcastTransaction:u(h),getAddressValidator:J,signTransaction:C(h,o),estimateTransactionFee:H(h)}}function H(T){return async({recipient:a,assetValue:l,memo:o,isProgramDerivedAddress:y,sender:p})=>{let P=await T(),m=(await A(T)({recipient:a,assetValue:l,memo:o,isProgramDerivedAddress:y,sender:p})).compileMessage(),b=await P.getFeeForMessage(m);if(b.value===null)throw new R("toolbox_solana_fee_estimation_failed","Could not estimate Solana fee.");return j.from({chain:q.Solana,value:b.value,fromBaseDecimal:F[q.Solana]})}}async function h(){let{Connection:T}=await import("@solana/web3.js");return new T(Y.get("rpcUrls").SOL,"confirmed")}function K(T){return async({assetValue:a,recipient:l,sender:o,isProgramDerivedAddress:y})=>{let p=await T(),P=await L(o);if(a.isGasAsset){let{Transaction:x,SystemProgram:m,PublicKey:b}=await import("@solana/web3.js");return new x().add(m.transfer({fromPubkey:P,lamports:a.getBaseValue("number"),toPubkey:new b(l)}))}if(a.address)return D({amount:a.getBaseValue("number"),connection:p,decimals:a.decimal,from:P,recipient:l,tokenAddress:a.address,isProgramDerivedAddress:y});return}}async function D({tokenAddress:T,recipient:a,from:l,connection:o,amount:y,decimals:p,isProgramDerivedAddress:P}){let{getAssociatedTokenAddress:x,getAccount:m,createAssociatedTokenAccountInstruction:b,createTransferCheckedInstruction:O}=await import("@solana/spl-token"),{Transaction:w,PublicKey:M}=await import("@solana/web3.js"),E=new w,G=new M(T),N=await x(G,l),U=new M(a),W=await x(G,U,P),V=!1;try{await m(o,W),V=!0}catch(n){}if(!V)E.add(b(l,W,U,G));return E.add(O(N,G,W,l,y,p)),E}function A(T){return async({recipient:a,assetValue:l,memo:o,isProgramDerivedAddress:y,sender:p})=>{let{createMemoInstruction:P}=await import("@solana/spl-memo"),x=await L(p),m=await J();if(!(y||m(a)))throw new R("core_transaction_invalid_recipient_address");let b=await T(),O=await K(T)({assetValue:l,recipient:a,sender:p,isProgramDerivedAddress:y});if(!O)throw new R("core_transaction_invalid_sender_address");if(o)O.add(P(o));let w=await b.getLatestBlockhash();return O.recentBlockhash=w.blockhash,O.feePayer=x,O}}async function k({instructions:T}){let{Transaction:a}=await import("@solana/web3.js"),l=new a().add(...T);if(!l)throw new R("core_transaction_invalid_sender_address");return l}function s(T,a){return async({recipient:l,assetValue:o,memo:y,isProgramDerivedAddress:p})=>{if(!a)throw new R("core_transaction_invalid_sender_address");let P=a.publicKey?.toString()??(await a.connect()).publicKey.toString(),x=await A(T)({recipient:l,assetValue:o,memo:y,isProgramDerivedAddress:p,sender:P});if("connect"in a){let m=await a.signTransaction(x);return u(T)(m)}return x.sign(a),u(T)(x)}}function u(T){return async(a)=>{return(await T()).sendRawTransaction(a.serialize())}}function C(T,a){return async(l)=>{let{VersionedTransaction:o}=await import("@solana/web3.js");if(!a)throw new R("toolbox_solana_no_signer");if(!(l instanceof o)){let p=await(await T()).getLatestBlockhash();l.recentBlockhash=p.blockhash,l.feePayer=a.publicKey||void 0}if("connect"in a)return await a.signTransaction(l);return await l.sign([a]),l}}async function z({phrase:T,derivationPath:a=Q.SOL}){let{HDKey:l}=await import("micro-key-producer/slip10.js"),{mnemonicToSeedSync:o}=await import("@scure/bip39"),{Keypair:y}=await import("@solana/web3.js"),p=o(T),P=l.fromMasterSeed(p);return y.fromSeed(P.derive(a,!0).privateKey)}function B(T){return T.toString()}async function L(T){let{PublicKey:a}=await import("@solana/web3.js");return new a(T)}export{g as getSolanaToolbox,J as getSolanaAddressValidator,z as createKeysForPath};
2
2
 
3
3
  //# debugId=C8EF78FCFAC60D3764756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var q={};O(q,{substrateValidateAddress:()=>H,isKeyringPair:()=>p,getSubstrateToolbox:()=>D,createSubstrateToolbox:()=>S,createKeyring:()=>P,SubstrateNetwork:()=>d,PolkadotToolbox:()=>T,ChainflipToolbox:()=>_,BaseSubstrateToolbox:()=>A});module.exports=W(q);var u=require("@polkadot/util"),m=require("@polkadot/util-crypto"),i=require("@swapkit/helpers"),f=require("ts-pattern");var l=require("@swapkit/helpers");async function E(t,e,n){try{let r=await t.query.system?.account?.(n);if(!r)return[e.set(0)];let{data:{free:a}}=r,o=l.SwapKitNumber.fromBigInt(BigInt(a.toString()),e.decimal).getValue("string");return[e.set(o)]}catch(r){return console.error("Error fetching substrate balance:",r),[e.set(0)]}}async function K(t,e,n){try{let r=await t.query.flip?.account?.(n);if(!r)return[e.set(0)];let a=r.balance||r.data?.balance;if(!a||a.isEmpty)return[e.set(0)];let o=l.SwapKitNumber.fromBigInt(BigInt(a.toString()),e.decimal).getValue("string");return[e.set(o)]}catch(r){return console.error("Error fetching chainflip balance:",r),[e.set(0)]}}function I(t,e){return function n(r){let a=l.AssetValue.from({chain:t});switch(t){case l.Chain.Chainflip:return K(e,a,r);default:return E(e,a,r)}}}var j={prefix:0,network:"polkadot",displayName:"Polkadot Relay Chain",symbols:["DOT"],decimals:[10],standardAccount:"*25519",website:"https://polkadot.network"},N={prefix:2112,network:"chainflip",displayName:"Chainflip",symbols:["FLIP"],decimals:[18],standardAccount:"*25519",website:"https://chainflip.io/"},R={prefix:42,network:"substrate",displayName:"Substrate",symbols:[],decimals:[],standardAccount:"*25519",website:"https://substrate.io/"},d={DOT:j,FLIP:N,GENERIC:R};var T=({generic:t=!1,...e}={})=>{return S({chain:i.Chain.Polkadot,generic:t,...e})},_=async({generic:t=!1,...e}={})=>{return{...await S({chain:i.Chain.Chainflip,generic:t,...e})}};function D(t,e){switch(t){case i.Chain.Chainflip:return _(e);case i.Chain.Polkadot:return T(e);default:throw new i.SwapKitError("toolbox_substrate_not_supported",{chain:t})}}function p(t){return"address"in t}async function P(t,e){let{Keyring:n}=await import("@polkadot/api"),{cryptoWaitReady:r}=await import("@polkadot/util-crypto");return await r(),new n({type:"sr25519",ss58Format:e}).addFromUri(t)}var x=(t,e)=>t.rpc.system.accountNextIndex(e),w=(t,e)=>{try{let n=v(t,e);return C(n,"ss58",e),!0}catch(n){return!1}},h=(t,{recipient:e,assetValue:n})=>t.tx.balances?.transferAllowDeath?.(e,n.getBaseValue("number")),M=async(t,e,{recipient:n,assetValue:r,sender:a})=>{let o=h(t,{recipient:n,assetValue:r}),s=p(e);if(!o)return;let c=s?e.address:a;if(!c)throw new i.SwapKitError("core_transaction_invalid_sender_address");let y=await x(t,c);return(await o.signAndSend(s?e:c,{signer:s?void 0:e,nonce:y}))?.toString()},F=async(t,e,n,{recipient:r,assetValue:a,sender:o})=>{let s=h(t,{recipient:r,assetValue:a}),c=p(e)?e.address:o;if(!c)return;let y=await s?.paymentInfo(c,{nonce:await x(t,c)})||{partialFee:0};return n.set(i.SwapKitNumber.fromBigInt(BigInt(y.partialFee.toString()),n.decimal).getValue("string"))},G=async(t,e)=>{if(e)return t.send(e);return(await t.send()).toString()},B=async(t,e)=>{return await e.signAsync(t)},V=(t,e,n)=>{if(n)return e.signAndSend(t,n);return e.signAndSend(t).toString()},L=async({signer:t,address:e,tx:n,callback:r,api:a})=>{let o=await x(a,e);if(r)n.signAndSend(e,{nonce:o,signer:t},r);return n.signAndSend(e,{nonce:o,signer:t}).toString()};function U(t,e){let n=m.decodeAddress(t);return m.encodeAddress(n,e)}function v(t,e){return u.isHex(t)?u.hexToU8a(t):m.decodeAddress(t,void 0,e)}function C(t,e="ss58",n){if(e==="hex")return u.u8aToHex(t);return m.encodeAddress(t,n)}var A=({api:t,network:e,gasAsset:n,signer:r,chain:a})=>({api:t,network:e,gasAsset:n,decodeAddress:v,encodeAddress:C,convertAddress:U,getBalance:I(a||i.Chain.Polkadot,t),createKeyring:(o)=>P(o,e.prefix),getAddress:(o)=>{let s=o||r;if(!s)throw new i.SwapKitError("core_wallet_not_keypair_wallet");return p(s)?s.address:void 0},createTransaction:(o)=>h(t,o),validateAddress:(o)=>w(o,e.prefix),transfer:(o)=>{if(!r)throw new i.SwapKitError("core_wallet_not_keypair_wallet");return M(t,r,o)},estimateTransactionFee:(o)=>{if(!r)throw new i.SwapKitError("core_wallet_not_keypair_wallet");return F(t,r,n,o)},sign:(o)=>{if(!r)throw new i.SwapKitError("core_wallet_not_keypair_wallet");if(p(r))return B(r,o);throw new i.SwapKitError("core_wallet_not_keypair_wallet","Signer does not have keyring pair capabilities required for signing.")},broadcast:G,signAndBroadcast:({tx:o,callback:s,address:c})=>{if(!r)throw new i.SwapKitError("core_wallet_not_keypair_wallet");if(p(r))return V(r,o,s);if(c)return L({signer:r,address:c,tx:o,callback:s,api:t});throw new i.SwapKitError("core_wallet_not_keypair_wallet","Signer does not have keyring pair capabilities required for signing.")}}),H=({address:t,chain:e})=>{let{prefix:n}=e===i.Chain.Polkadot?d.DOT:d.FLIP;return w(t,n)||w(t,d.GENERIC.prefix)};async function S({generic:t,chain:e,...n}){let{ApiPromise:r,WsProvider:a}=await import("@polkadot/api"),o=new a(i.SKConfig.get("rpcUrls")[e]),s=await r.create({provider:o}),c=i.AssetValue.from({chain:e}),y=t?d.GENERIC:d[e],k=await f.match(n).with({phrase:f.P.string},({phrase:b})=>P(b,d[e].prefix)).with({signer:f.P.any},({signer:b})=>b).otherwise(()=>{return});return A({api:s,signer:k,gasAsset:c,network:y,chain:e})}
2
2
 
3
3
  //# debugId=352CF3811C22866964756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{d as y,e as f}from"../../chunk-s47y8512.js";import{hexToU8a as M,isHex as F,u8aToHex as G}from"@polkadot/util";import{decodeAddress as k,encodeAddress as I}from"@polkadot/util-crypto";import{AssetValue as B,Chain as l,SKConfig as V,SwapKitError as c,SwapKitNumber as L}from"@swapkit/helpers";import{P as S,match as U}from"ts-pattern";import{AssetValue as A,Chain as E,SwapKitNumber as x}from"@swapkit/helpers";async function K(t,e,n){try{let r=await t.query.system?.account?.(n);if(!r)return[e.set(0)];let{data:{free:i}}=r,o=x.fromBigInt(BigInt(i.toString()),e.decimal).getValue("string");return[e.set(o)]}catch(r){return console.error("Error fetching substrate balance:",r),[e.set(0)]}}async function j(t,e,n){try{let r=await t.query.flip?.account?.(n);if(!r)return[e.set(0)];let i=r.balance||r.data?.balance;if(!i||i.isEmpty)return[e.set(0)];let o=x.fromBigInt(BigInt(i.toString()),e.decimal).getValue("string");return[e.set(o)]}catch(r){return console.error("Error fetching chainflip balance:",r),[e.set(0)]}}function h(t,e){return function n(r){let i=A.from({chain:t});switch(t){case E.Chainflip:return j(e,i,r);default:return K(e,i,r)}}}var N={prefix:0,network:"polkadot",displayName:"Polkadot Relay Chain",symbols:["DOT"],decimals:[10],standardAccount:"*25519",website:"https://polkadot.network"},R={prefix:2112,network:"chainflip",displayName:"Chainflip",symbols:["FLIP"],decimals:[18],standardAccount:"*25519",website:"https://chainflip.io/"},D={prefix:42,network:"substrate",displayName:"Substrate",symbols:[],decimals:[],standardAccount:"*25519",website:"https://substrate.io/"},d={DOT:N,FLIP:R,GENERIC:D};var H=({generic:t=!1,...e}={})=>{return C({chain:l.Polkadot,generic:t,...e})},W=async({generic:t=!1,...e}={})=>{return{...await C({chain:l.Chainflip,generic:t,...e})}};function ce(t,e){switch(t){case l.Chainflip:return W(e);case l.Polkadot:return H(e);default:throw new c("toolbox_substrate_not_supported",{chain:t})}}function u(t){return"address"in t}async function T(t,e){let{Keyring:n}=await import("@polkadot/api"),{cryptoWaitReady:r}=await import("@polkadot/util-crypto");return await r(),new n({type:"sr25519",ss58Format:e}).addFromUri(t)}var g=(t,e)=>t.rpc.system.accountNextIndex(e),b=(t,e)=>{try{let n=_(t,e);return v(n,"ss58",e),!0}catch(n){return!1}},w=(t,{recipient:e,assetValue:n})=>t.tx.balances?.transferAllowDeath?.(e,n.getBaseValue("number")),O=async(t,e,{recipient:n,assetValue:r,sender:i})=>{let o=w(t,{recipient:n,assetValue:r}),a=u(e);if(!o)return;let s=a?e.address:i;if(!s)throw new c("core_transaction_invalid_sender_address");let p=await g(t,s);return(await o.signAndSend(a?e:s,{signer:a?void 0:e,nonce:p}))?.toString()},q=async(t,e,n,{recipient:r,assetValue:i,sender:o})=>{let a=w(t,{recipient:r,assetValue:i}),s=u(e)?e.address:o;if(!s)return;let p=await a?.paymentInfo(s,{nonce:await g(t,s)})||{partialFee:0};return n.set(L.fromBigInt(BigInt(p.partialFee.toString()),n.decimal).getValue("string"))},z=async(t,e)=>{if(e)return t.send(e);return(await t.send()).toString()},J=async(t,e)=>{return await e.signAsync(t)},Q=(t,e,n)=>{if(n)return e.signAndSend(t,n);return e.signAndSend(t).toString()},X=async({signer:t,address:e,tx:n,callback:r,api:i})=>{let o=await g(i,e);if(r)n.signAndSend(e,{nonce:o,signer:t},r);return n.signAndSend(e,{nonce:o,signer:t}).toString()};function Y(t,e){let n=k(t);return I(n,e)}function _(t,e){return F(t)?M(t):k(t,void 0,e)}function v(t,e="ss58",n){if(e==="hex")return G(t);return I(t,n)}var Z=({api:t,network:e,gasAsset:n,signer:r,chain:i})=>({api:t,network:e,gasAsset:n,decodeAddress:_,encodeAddress:v,convertAddress:Y,getBalance:h(i||l.Polkadot,t),createKeyring:(o)=>T(o,e.prefix),getAddress:(o)=>{let a=o||r;if(!a)throw new c("core_wallet_not_keypair_wallet");return u(a)?a.address:void 0},createTransaction:(o)=>w(t,o),validateAddress:(o)=>b(o,e.prefix),transfer:(o)=>{if(!r)throw new c("core_wallet_not_keypair_wallet");return O(t,r,o)},estimateTransactionFee:(o)=>{if(!r)throw new c("core_wallet_not_keypair_wallet");return q(t,r,n,o)},sign:(o)=>{if(!r)throw new c("core_wallet_not_keypair_wallet");if(u(r))return J(r,o);throw new c("core_wallet_not_keypair_wallet","Signer does not have keyring pair capabilities required for signing.")},broadcast:z,signAndBroadcast:({tx:o,callback:a,address:s})=>{if(!r)throw new c("core_wallet_not_keypair_wallet");if(u(r))return Q(r,o,a);if(s)return X({signer:r,address:s,tx:o,callback:a,api:t});throw new c("core_wallet_not_keypair_wallet","Signer does not have keyring pair capabilities required for signing.")}}),de=({address:t,chain:e})=>{let{prefix:n}=e===l.Polkadot?d.DOT:d.FLIP;return b(t,n)||b(t,d.GENERIC.prefix)};async function C({generic:t,chain:e,...n}){let{ApiPromise:r,WsProvider:i}=await import("@polkadot/api"),o=new i(V.get("rpcUrls")[e]),a=await r.create({provider:o}),s=B.from({chain:e}),p=t?d.GENERIC:d[e],P=await U(n).with({phrase:S.string},({phrase:m})=>T(m,d[e].prefix)).with({signer:S.any},({signer:m})=>m).otherwise(()=>{return});return Z({api:a,signer:P,gasAsset:s,network:p,chain:e})}export{de as substrateValidateAddress,u as isKeyringPair,ce as getSubstrateToolbox,C as createSubstrateToolbox,T as createKeyring,d as SubstrateNetwork,H as PolkadotToolbox,W as ChainflipToolbox,Z as BaseSubstrateToolbox};
2
2
 
3
3
  //# debugId=D388955C3698ABE764756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -1,3 +1,4 @@
1
1
  var V={};p(V,{trc20ABI:()=>B,getTronPrivateKeyFromMnemonic:()=>A,getTronAddressValidator:()=>F,createTronToolbox:()=>C});module.exports=W(V);var y=require("@swapkit/helpers"),$=require("ts-pattern");var B=[{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"success",type:"bool"}],type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],type:"function"},{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],type:"function"}];var H=require("tronweb");async function F(){return(_)=>{return H.TronWeb.isAddress(_)}}async function A({phrase:_,derivationPath:X,index:j}){let R=X||y.derivationPathToString(y.updateDerivationPath(y.NetworkDerivationPath[y.Chain.Tron],{index:j||0})),{HDKey:Y}=await import("@scure/bip32"),{mnemonicToSeedSync:I}=await import("@scure/bip39"),q=I(_),O=Y.fromMasterSeed(q).derive(R);if(!O.privateKey)throw new y.SwapKitError("toolbox_tron_no_signer");return Buffer.from(O.privateKey).toString("hex")}async function S({phrase:_,derivationPath:X}){let{HDKey:j}=await import("@scure/bip32"),{mnemonicToSeedSync:R}=await import("@scure/bip39"),Y=R(_),q=j.fromMasterSeed(Y).derive(X);if(!q.privateKey)throw new y.SwapKitError("toolbox_tron_no_signer");let Q=Buffer.from(q.privateKey).toString("hex"),O=new H.TronWeb({fullHost:y.SKConfig.get("rpcUrls")[y.Chain.Tron],privateKey:Q}),N=O.address.fromPrivateKey(Q);return{getAddress:()=>Promise.resolve(typeof N==="string"?N:""),signTransaction:async(k)=>{return await O.trx.sign(k,Q)}}}var C=async(_={})=>{let X=y.SKConfig.get("rpcUrls")[y.Chain.Tron],j=void 0,R=new H.TronWeb({fullHost:X,headers:void 0}),Y="index"in _?_.index||0:0,I=y.derivationPathToString("derivationPath"in _&&_.derivationPath?_.derivationPath:y.updateDerivationPath(y.NetworkDerivationPath[y.Chain.Tron],{index:Y})),q=await $.match(_).with({phrase:$.P.string},async({phrase:f})=>S({phrase:f,derivationPath:I})).with({signer:$.P.any},({signer:f})=>Promise.resolve(f)).otherwise(()=>Promise.resolve(void 0)),Q=async()=>{if(!q)throw new y.SwapKitError("toolbox_tron_no_signer");return await q.getAddress()},O=()=>{return 1e8},N=async(f,T=!0)=>{let{getBalance:J}=await import("../../chunk-5yxc1e69.js");try{let z=await J(y.Chain.Tron)(f,T);if(z.length>0)return z;let G=await R.trx.getBalance(f);return[y.AssetValue.from({chain:y.Chain.Tron,value:G,fromBaseDecimal:6})]}catch(z){y.warnOnce(!0,`Failed to get Tron balance for ${f}: ${z instanceof Error?z.message:z}`);try{let G=await R.trx.getBalance(f);return[y.AssetValue.from({chain:y.Chain.Tron,value:G,fromBaseDecimal:6})]}catch(G){return y.warnOnce(!0,`Failed to get native TRX balance for ${f}: ${G instanceof Error?G.message:G}`),[]}}},k=async({recipient:f,assetValue:T,memo:J})=>{if(!q)throw new y.SwapKitError("toolbox_tron_no_signer");let z=await Q();if(T.isGasAsset){let u=await R.transactionBuilder.sendTrx(f,T.getBaseValue("number"),z);if(J){let g=await R.transactionBuilder.addUpdateData(u,J,"utf8"),b=await q.signTransaction(g),{txid:K}=await R.trx.sendRawTransaction(b);return K}let m=await q.signTransaction(u),{txid:v}=await R.trx.sendRawTransaction(m);return v}let D=T.address;if(!D)throw new y.SwapKitError("toolbox_tron_invalid_token_identifier",{identifier:T.toString()});let U=O(),M=await R.contract(B,D);if(!M.methods?.transfer)throw new y.SwapKitError("toolbox_tron_token_transfer_failed");let L=await M.methods.transfer(f,T.getBaseValue("string")).send({from:z,feeLimit:U,callValue:0});if(!L)throw new y.SwapKitError("toolbox_tron_token_transfer_failed");return L},x=({assetValue:f})=>{if(f.isGasAsset)return y.AssetValue.from({chain:y.Chain.Tron,value:1});return y.AssetValue.from({chain:y.Chain.Tron,value:10})},E=async(f)=>{let{recipient:T,assetValue:J,memo:z,sender:G}=f;if(J.isGasAsset){let M=await R.transactionBuilder.sendTrx(T,J.getBaseValue("number"),G);if(z)return R.transactionBuilder.addUpdateData(M,z,"utf8");return M}let U=J.address;if(!U)throw new y.SwapKitError("toolbox_tron_invalid_token_identifier",{identifier:J.toString()});try{let L=[{type:"address",value:T},{type:"uint256",value:J.getBaseValue("string")}],u={feeLimit:O(),callValue:0};return(await R.transactionBuilder.triggerSmartContract(U,"transfer(address,uint256)",u,L,G)).transaction}catch(M){throw new y.SwapKitError("toolbox_tron_transaction_creation_failed",{message:"Failed to create TRC20 transaction. This might be due to TronWeb 6.0.3 bug. Use the transfer method directly instead.",originalError:M instanceof Error?M.message:String(M)})}},P=async(f)=>{if(!q)throw new y.SwapKitError("toolbox_tron_no_signer");return await q.signTransaction(f)},w=async(f)=>{let{txid:T}=await R.trx.sendRawTransaction(f);return T};return{tronWeb:R,getAddress:Q,validateAddress:await F(),getBalance:N,transfer:k,estimateTransactionFee:x,createTransaction:E,signTransaction:P,broadcastTransaction:w}};
2
2
 
3
3
  //# debugId=11FFA5A10A35970F64756E2164756E21
4
+ //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
1
  import{d as $,e as j}from"../../chunk-s47y8512.js";import{AssetValue as H,Chain as O,NetworkDerivationPath as P,SKConfig as w,SwapKitError as M,derivationPathToString as v,updateDerivationPath as g,warnOnce as C}from"@swapkit/helpers";import{P as E,match as c}from"ts-pattern";var F=[{constant:!0,inputs:[{name:"_owner",type:"address"}],name:"balanceOf",outputs:[{name:"balance",type:"uint256"}],type:"function"},{constant:!1,inputs:[{name:"_to",type:"address"},{name:"_value",type:"uint256"}],name:"transfer",outputs:[{name:"success",type:"bool"}],type:"function"},{constant:!0,inputs:[],name:"decimals",outputs:[{name:"",type:"uint8"}],type:"function"},{constant:!0,inputs:[],name:"symbol",outputs:[{name:"",type:"string"}],type:"function"},{constant:!0,inputs:[],name:"name",outputs:[{name:"",type:"string"}],type:"function"}];import{TronWeb as x}from"tronweb";async function b(){return(T)=>{return x.isAddress(T)}}async function o({phrase:T,derivationPath:Y,index:I}){let f=Y||v(g(P[O.Tron],{index:I||0})),{HDKey:Z}=await import("@scure/bip32"),{mnemonicToSeedSync:N}=await import("@scure/bip39"),_=N(T),Q=Z.fromMasterSeed(_).derive(f);if(!Q.privateKey)throw new M("toolbox_tron_no_signer");return Buffer.from(Q.privateKey).toString("hex")}async function n({phrase:T,derivationPath:Y}){let{HDKey:I}=await import("@scure/bip32"),{mnemonicToSeedSync:f}=await import("@scure/bip39"),Z=f(T),_=I.fromMasterSeed(Z).derive(Y);if(!_.privateKey)throw new M("toolbox_tron_no_signer");let X=Buffer.from(_.privateKey).toString("hex"),Q=new x({fullHost:w.get("rpcUrls")[O.Tron],privateKey:X}),U=Q.address.fromPrivateKey(X);return{getAddress:()=>Promise.resolve(typeof U==="string"?U:""),signTransaction:async(k)=>{return await Q.trx.sign(k,X)}}}var d=async(T={})=>{let Y=w.get("rpcUrls")[O.Tron],I=void 0,f=new x({fullHost:Y,headers:void 0}),Z="index"in T?T.index||0:0,N=v("derivationPath"in T&&T.derivationPath?T.derivationPath:g(P[O.Tron],{index:Z})),_=await c(T).with({phrase:E.string},async({phrase:y})=>n({phrase:y,derivationPath:N})).with({signer:E.any},({signer:y})=>Promise.resolve(y)).otherwise(()=>Promise.resolve(void 0)),X=async()=>{if(!_)throw new M("toolbox_tron_no_signer");return await _.getAddress()},Q=()=>{return 1e8},U=async(y,R=!0)=>{let{getBalance:G}=await import("../../chunk-6f98phv2.js");try{let q=await G(O.Tron)(y,R);if(q.length>0)return q;let z=await f.trx.getBalance(y);return[H.from({chain:O.Tron,value:z,fromBaseDecimal:6})]}catch(q){C(!0,`Failed to get Tron balance for ${y}: ${q instanceof Error?q.message:q}`);try{let z=await f.trx.getBalance(y);return[H.from({chain:O.Tron,value:z,fromBaseDecimal:6})]}catch(z){return C(!0,`Failed to get native TRX balance for ${y}: ${z instanceof Error?z.message:z}`),[]}}},k=async({recipient:y,assetValue:R,memo:G})=>{if(!_)throw new M("toolbox_tron_no_signer");let q=await X();if(R.isGasAsset){let B=await f.transactionBuilder.sendTrx(y,R.getBaseValue("number"),q);if(G){let V=await f.transactionBuilder.addUpdateData(B,G,"utf8"),l=await _.signTransaction(V),{txid:h}=await f.trx.sendRawTransaction(l);return h}let A=await _.signTransaction(B),{txid:p}=await f.trx.sendRawTransaction(A);return p}let D=R.address;if(!D)throw new M("toolbox_tron_invalid_token_identifier",{identifier:R.toString()});let L=Q(),J=await f.contract(F,D);if(!J.methods?.transfer)throw new M("toolbox_tron_token_transfer_failed");let u=await J.methods.transfer(y,R.getBaseValue("string")).send({from:q,feeLimit:L,callValue:0});if(!u)throw new M("toolbox_tron_token_transfer_failed");return u},m=({assetValue:y})=>{if(y.isGasAsset)return H.from({chain:O.Tron,value:1});return H.from({chain:O.Tron,value:10})},K=async(y)=>{let{recipient:R,assetValue:G,memo:q,sender:z}=y;if(G.isGasAsset){let J=await f.transactionBuilder.sendTrx(R,G.getBaseValue("number"),z);if(q)return f.transactionBuilder.addUpdateData(J,q,"utf8");return J}let L=G.address;if(!L)throw new M("toolbox_tron_invalid_token_identifier",{identifier:G.toString()});try{let u=[{type:"address",value:R},{type:"uint256",value:G.getBaseValue("string")}],B={feeLimit:Q(),callValue:0};return(await f.transactionBuilder.triggerSmartContract(L,"transfer(address,uint256)",B,u,z)).transaction}catch(J){throw new M("toolbox_tron_transaction_creation_failed",{message:"Failed to create TRC20 transaction. This might be due to TronWeb 6.0.3 bug. Use the transfer method directly instead.",originalError:J instanceof Error?J.message:String(J)})}},S=async(y)=>{if(!_)throw new M("toolbox_tron_no_signer");return await _.signTransaction(y)},W=async(y)=>{let{txid:R}=await f.trx.sendRawTransaction(y);return R};return{tronWeb:f,getAddress:X,validateAddress:await b(),getBalance:U,transfer:k,estimateTransactionFee:m,createTransaction:K,signTransaction:S,broadcastTransaction:W}};export{F as trc20ABI,o as getTronPrivateKeyFromMnemonic,b as getTronAddressValidator,d as createTronToolbox};
2
2
 
3
3
  //# debugId=8289008D961D587464756E2164756E21
4
+ //# sourceMappingURL=index.js.map
@@ -3,3 +3,4 @@ var OZ={};FZ(OZ,{validateZcashAddress:()=>XX,toLegacyAddress:()=>x,toCashAddress
3
3
  `,bech32:"ztestsapling",bip32:{public:70617039,private:70615956},pubKeyHash:29,scriptHash:28,wif:239};function _(){return function X(Z){switch(Z){case D.Chain.Bitcoin:return _X.networks.bitcoin;case D.Chain.BitcoinCash:return E.default.bitcoincash.main.toBitcoinJS();case D.Chain.Dash:return E.default.dash.main.toBitcoinJS();case D.Chain.Litecoin:return E.default.litecoin.main.toBitcoinJS();case D.Chain.Dogecoin:{let G={private:70615956,public:70617039},J=E.default.dogecoin.test;return J.versions.bip32=G,E.default.dogecoin.main.toBitcoinJS()}case D.Chain.Zcash:{let{isStagenet:G}=D.SKConfig.get("envs");return G?tX:sX}default:throw new D.SwapKitError("toolbox_utxo_not_supported",{chain:Z})}}}var b=require("@swapkit/helpers"),LX=S(require("bs58check")),WX=S(require("cashaddrjs"));var qX;((G)=>{G.Mainnet="mainnet";G.Testnet="testnet"})(qX||={});var T={["legacy"]:{["mainnet"]:{["p2pkh"]:0,["p2sh"]:5},["testnet"]:{["p2pkh"]:111,["p2sh"]:196}},["bitpay"]:{["mainnet"]:{["p2pkh"]:28,["p2sh"]:40},["testnet"]:{["p2pkh"]:111,["p2sh"]:196}}};function jX(X){try{return r(X),!0}catch(Z){return!1}}function BX(X){return r(X)?.network}function x(X){let Z=r(X);if(Z?.format==="legacy")return X;return ZZ(Z)}function c(X){let Z=r(X);return GZ(Z)}function r(X){try{return eX(X)}catch(Z){}try{return XZ(X)}catch(Z){}throw new b.SwapKitError("toolbox_utxo_invalid_address",{address:X})}function eX(X){try{let Z=LX.default.decode(X);if(Z.length!==21)throw new b.SwapKitError("toolbox_utxo_invalid_address",{address:X});let G=Z[0],J=Array.prototype.slice.call(Z,1);switch(G){case T.legacy.mainnet.p2pkh:return{hash:J,format:"legacy",network:"mainnet",type:"p2pkh"};case T.legacy.mainnet.p2sh:return{hash:J,format:"legacy",network:"mainnet",type:"p2sh"};case T.legacy.testnet.p2pkh:return{hash:J,format:"legacy",network:"testnet",type:"p2pkh"};case T.legacy.testnet.p2sh:return{hash:J,format:"legacy",network:"testnet",type:"p2sh"};case T.bitpay.mainnet.p2pkh:return{hash:J,format:"bitpay",network:"mainnet",type:"p2pkh"};case T.bitpay.mainnet.p2sh:return{hash:J,format:"bitpay",network:"mainnet",type:"p2sh"};default:throw new b.SwapKitError("toolbox_utxo_invalid_address",{address:X})}}catch(Z){throw new b.SwapKitError("toolbox_utxo_invalid_address",{address:X})}}function XZ(X){if(X.indexOf(":")!==-1)try{return yX(X)}catch(Z){}else{let Z=["bitcoincash","bchtest","bchreg"];for(let G of Z)try{return yX(`${G}:${X}`)}catch(J){}}throw new b.SwapKitError("toolbox_utxo_invalid_address",{address:X})}function yX(X){try{let{hash:Z,prefix:G,type:J}=WX.default.decode(X);return{format:"cashaddr",hash:Array.prototype.slice.call(Z,0),network:G==="bitcoincash"?"mainnet":"testnet",type:J==="P2PKH"?"p2pkh":"p2sh"}}catch(Z){throw new b.SwapKitError("toolbox_utxo_invalid_address",{address:X})}}function ZZ(X){let Z=T.legacy[X.network][X.type],G=Buffer.alloc(1+X.hash.length);return G[0]=Z,G.set(X.hash,1),LX.default.encode(G)}function GZ(X){let Z=X.network==="mainnet"?"bitcoincash":"bchtest",G=X.type==="p2pkh"?"P2PKH":"P2SH",J=new Uint8Array(X.hash);return WX.default.encode(Z,G,J)}var N=require("@swapkit/helpers");var i=(X)=>{switch(X){case N.Chain.Bitcoin:case N.Chain.BitcoinCash:return 550;case N.Chain.Dash:case N.Chain.Litecoin:return 5500;case N.Chain.Dogecoin:return 1e5;case N.Chain.Zcash:return 546;default:throw new N.SwapKitError("toolbox_utxo_not_supported",{chain:X})}},A=({inputs:X,outputs:Z,feeRate:G=1,chain:J=N.Chain.Bitcoin})=>{let Q=Math.ceil(G),L=X[0]&&"address"in X[0]&&X[0].address?p(X[0].address):"P2PKH",$=X.filter((z)=>k(z)*Q<=z.value),W=a+Z.reduce((z,H)=>z+u(H,L),0),q=Z.reduce((z,H)=>z+H.value,0),B=W*Q,U=0,M=[];for(let z of $){let H=k(z),Y=Q*H;B+=Y,U+=z.value,M.push(z);let I=B+q;if(U<I)continue;let V=U-I,YX=Q*u({address:"",value:0},L);if(V>YX){let HX=YX+B,CX=U-(q+HX);if(CX>Math.max(k({})*Q,i(J)))return{inputs:M,outputs:Z.concat({value:CX,address:""}),fee:HX}}return{inputs:M,outputs:Z,fee:B}}return{fee:Q*g({inputs:X,outputs:Z,feeRate:Q})}};var PX=require("@swapkit/helpers"),e=require("bitcoinjs-lib"),JZ=1000,a=10,VX=10,QZ=41,$Z=107;function R(X){let Z=Buffer.from(X,"utf8");return e.script.compile([e.opcodes.OP_RETURN,Z])}var s;((G)=>{G.P2PKH="P2PKH";G.P2WPKH="P2WPKH"})(s||={});var t={["P2PKH"]:148,["P2WPKH"]:68},o={["P2PKH"]:34,["P2WPKH"]:31},p=(X)=>{if(X.startsWith("bc1")||X.startsWith("ltc1"))return"P2WPKH";if(X.startsWith("1")||X.startsWith("3")||X.startsWith("L")||X.startsWith("M")||X.startsWith("X")||X.startsWith("D")||X.startsWith("bitcoincash:q")||X.startsWith("q"))return"P2PKH";throw new PX.SwapKitError("toolbox_utxo_invalid_address",{address:X})},g=({inputs:X,outputs:Z,feeRate:G})=>{let J=X[0]&&"address"in X[0]&&X[0].address?p(X[0].address):"P2PKH",Q=X.filter(($)=>$.value>=t["type"in $?$.type:"P2PKH"]*Math.ceil(G)).reduce(($,W)=>$+k(W),0),L=Z?.reduce(($,W)=>$+u(W),0)||o[J];return a+Q+L},k=(X)=>{if("type"in X)return t[X.type];if("address"in X&&X.address)return t[p(X.address)];return QZ+$Z},u=(X,Z)=>{if(X?.script)return VX+X.script.length+(X.script.length>=74?2:1);if(Z)return o[Z];return o.P2PKH};var j=require("@swapkit/helpers"),y=require("bitcoinjs-lib"),EX=require("ecpair");var ZX=S(require("@bitcoinerlab/secp256k1")),GX=require("@psf/bitcoincashjs-lib"),SX=require("@scure/bip32"),zX=require("@scure/bip39");var kX=S(require("@bitcoinerlab/secp256k1")),AX=require("@scure/bip32"),RX=require("@scure/bip39"),C=require("@swapkit/helpers"),bX=require("bitcoinjs-lib/src/crypto"),DX=S(require("bs58check")),wX=require("ecpair"),m=require("ts-pattern");var LZ=C.Chain.Zcash,KX=_()(LZ);function WZ(X,Z=!1){let G=bX.hash160(X),J=Z?Buffer.from([28,186]):Buffer.from([28,184]),Q=Buffer.concat([J,G]);return DX.default.encode(Q)}function XX(X){try{if(X.startsWith("z"))return console.warn("Shielded Zcash addresses (z-addresses) are not supported. Use transparent addresses (t1/t3) only."),!1;let Z=X.startsWith("t1"),G=X.startsWith("t3");if(!(Z||G))return!1;let{isStagenet:J}=C.SKConfig.get("envs");if(Z&&J||G&&!J)return!1;return qZ(X,KX)}catch{return!1}}function qZ(X,Z){try{let G=DX.default.decode(X);if(G.length<21)return!1;let J=G[0];return J===Z.pubKeyHash||J===Z.scriptHash}catch{return!1}}var jZ=wX.ECPairFactory(kX.default);async function BZ({phrase:X,derivationPathString:Z}){let G=RX.mnemonicToSeedSync(X),Q=AX.HDKey.fromMasterSeed(G).derive(Z);if(!Q.privateKey)throw new Error("Unable to derive private key");let L=jZ.fromPrivateKey(Buffer.from(Q.privateKey),{network:KX}),{isStagenet:$}=C.SKConfig.get("envs"),W=WZ(L.publicKey,$);return{getAddress(){return Promise.resolve(W)},signTransaction(q){for(let B=0;B<q.inputCount;B++)q.signInput(B,L);return Promise.resolve(q)}}}async function UX(X){let Z=await m.match(X).with({signer:m.P.not(m.P.nullish)},({signer:W})=>Promise.resolve(W)).with({phrase:m.P.string},({phrase:W,derivationPath:q,index:B=0})=>{let U=q||C.NetworkDerivationPath[C.Chain.Zcash]||[44,133,0,0,0],M=C.updateDerivationPath(U,{index:B}),z=C.derivationPathToString(M);return BZ({phrase:W,derivationPathString:z})}).otherwise(()=>Promise.resolve(void 0)),{getFeeRates:G,broadcastTx:J,...Q}=await w({chain:C.Chain.Zcash,signer:Z});function L(W){return W.getAddress()}async function $({recipient:W,assetValue:q,feeOptionKey:B=C.FeeOption.Fast,...U}){let M=await Z?.getAddress();if(!(Z&&M))throw new C.SwapKitError("toolbox_utxo_no_signer");let z=U.feeRate||(await G())[B],H={...U,assetValue:q,feeRate:z,recipient:W,sender:M},{psbt:Y}=await Q.createTransaction(H),I=await Z.signTransaction(Y);I.finalizeAllInputs();let V=I.extractTransaction().toHex();return J(V)}return{...Q,broadcastTx:J,getFeeRates:G,transfer:$,getAddressFromKeys:L,validateAddress:XX}}var n=[j.Chain.Dash,j.Chain.Dogecoin];function DZ({inputs:X,outputs:Z,chain:G,psbt:J,sender:Q,compiledMemo:L}){for(let $ of X){let W=!!$.witnessUtxo&&!n.includes(G)&&{witnessUtxo:$.witnessUtxo},q=n.includes(G)&&{nonWitnessUtxo:$.txHex?Buffer.from($.txHex,"hex"):void 0};J.addInput({hash:$.hash,index:$.index,...W,...q})}for(let $ of Z){let W="address"in $&&$.address?$.address:Q,q=$.script;if(q&&!L)continue;let B=q?{script:L,value:0}:{address:W,value:$.value};y.initEccLib(ZX.default),J.addOutput(B)}return{psbt:J,inputs:X}}async function xX({assetValue:X,recipient:Z,memo:G,feeRate:J,sender:Q,fetchTxHex:L=!1}){let $=X.chain,W=G?await R(G):null,q=await lX({assetValue:X,recipient:Z,memo:G,sender:Q,fetchTxHex:L}),{inputs:B,outputs:U}=A({...q,feeRate:J,chain:$});if(!(B&&U))throw new j.SwapKitError("toolbox_utxo_insufficient_balance",{sender:Q,assetValue:X});let M=await _(),z=new y.Psbt({network:M($)});if($===j.Chain.Dogecoin)z.setMaximumFeeRate(650000000);let{psbt:H,inputs:Y}=await DZ({inputs:B,outputs:U,chain:$,psbt:z,sender:Q,compiledMemo:W});return{psbt:H,utxos:q.inputs,inputs:Y}}async function gX(){let X=await _();return function Z({address:G,chain:J}){if(J===j.Chain.BitcoinCash)return K(G);if(J===j.Chain.Zcash)return XX(G);try{return y.initEccLib(ZX.default),y.address.toOutputScript(G,X(J)),!0}catch(Q){return!1}}}async function UZ({chain:X,phrase:Z,derivationPath:G}){let J=(await d(X))({phrase:Z,derivationPath:G});async function Q($){return await $.signAllInputs(J),$}async function L(){return(await MX(X))(J)}return{getAddress:L,signTransaction:Q}}async function w({chain:X,...Z}){let G="phrase"in Z?Z.phrase:void 0,J="index"in Z?Z.index||0:0,Q=j.derivationPathToString("derivationPath"in Z&&Z.derivationPath?Z.derivationPath:j.updateDerivationPath(j.NetworkDerivationPath[X],{index:J})),L=G?await UZ({chain:X,phrase:G,derivationPath:Q}):("signer"in Z)?Z.signer:void 0;function $(){return Promise.resolve(L?.getAddress())}let W=await MX(X),q=await gX(),B=await d(X);return{accumulative:A,calculateTxSize:g,getAddressFromKeys:W,getAddress:$,validateAddress:(U)=>q({address:U,chain:X}),broadcastTx:(U)=>F(X).broadcastTx(U),createTransaction:xX,createKeysForPath:B,getFeeRates:()=>JX(X),getInputsOutputsFee:mX,transfer:TZ(L),getPrivateKeyFromMnemonic:(U)=>{return B(U).toWIF()},getBalance:fX(X),estimateTransactionFee:MZ(X),estimateMaxSendableAmount:zZ(X)}}async function mX({assetValue:X,feeOptionKey:Z=j.FeeOption.Fast,feeRate:G,memo:J,sender:Q,recipient:L}){let $=X.chain,W=await lX({assetValue:X,sender:Q,memo:J,recipient:L}),q=G?Math.floor(G):(await JX($))[Z];return A({...W,feeRate:q,chain:$})}function zZ(X){return async function Z({from:G,memo:J,feeRate:Q,feeOptionKey:L=j.FeeOption.Fast,recipients:$=1}){let W=await F(X).getAddressData(G),q=Q?Math.ceil(Q):(await JX(X))[L],B=W?.utxo.map((Y)=>({...Y,type:"P2PKH",hash:""})).filter((Y)=>Y.value>Math.max(i(X),k(Y)*q));if(!B?.length)return j.AssetValue.from({chain:X});let U=j.AssetValue.from({chain:X,value:B.reduce((Y,I)=>Y+I.value,0)}),M=typeof $==="number"?Array.from({length:$},()=>({address:G,value:0})):$;if(J){let Y=await R(J);M.push({address:G,script:Y,value:0})}let H=g({inputs:B,outputs:M,feeRate:q})*q;return U.sub(H)}}function MZ(X){return async(Z)=>{let G=await mX(Z);return j.AssetValue.from({chain:X,value:j.SwapKitNumber.fromBigInt(BigInt(G.fee),8).getValue("string")})}}async function d(X){let Z=await _();switch(X){case j.Chain.BitcoinCash:return function G({phrase:J,derivationPath:Q=`${j.DerivationPath.BCH}/0`,wif:L}){let $=Z(X);if(L)return GX.ECPair.fromWIF(L,$);if(!J)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"No phrase provided"});return GX.HDNode.fromSeedBuffer(Buffer.from(zX.mnemonicToSeedSync(J)),$).derivePath(Q).keyPair};case j.Chain.Bitcoin:case j.Chain.Dogecoin:case j.Chain.Litecoin:case j.Chain.Zcash:case j.Chain.Dash:return function G({phrase:J,wif:Q,derivationPath:L}){if(!(Q||J))throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"Either phrase or wif must be provided"});let $=EX.ECPairFactory(ZX.default),W=Z(X);if(Q)return $.fromWIF(Q,W);let q=zX.mnemonicToSeedSync(J),B=SX.HDKey.fromMasterSeed(q,W).derive(L);if(!B.privateKey)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"Could not get private key from phrase"});return $.fromPrivateKey(Buffer.from(B.privateKey),{network:W})};default:throw new j.SwapKitError("toolbox_utxo_not_supported",{chain:X})}}async function MX(X){let Z=await _();return function G(J){if(!J)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"Keys must be provided"});let Q=n.includes(X)?y.payments.p2pkh:y.payments.p2wpkh,{address:L}=Q({pubkey:J.publicKey,network:Z(X)});if(!L)throw new j.SwapKitError("toolbox_utxo_invalid_address",{error:"Address not defined"});return L}}function TZ(X){return async function Z({memo:G,recipient:J,feeOptionKey:Q,feeRate:L,assetValue:$}){let W=await X?.getAddress(),q=$.chain;if(!(X&&W))throw new j.SwapKitError("toolbox_utxo_no_signer");if(!J)throw new j.SwapKitError("toolbox_utxo_invalid_params",{error:"Recipient address must be provided"});let B=L||(await JX(q))[Q||j.FeeOption.Fast],{psbt:U}=await xX({recipient:J,feeRate:B,sender:W,assetValue:$,memo:G}),M=await X.signTransaction(U);return M.finalizeAllInputs(),F(q).broadcastTx(M.extractTransaction().toHex())}}async function JX(X){let Z=await F(X).getSuggestedTxFee();return{[j.FeeOption.Average]:Z,[j.FeeOption.Fast]:j.applyFeeMultiplier(Z,j.FeeOption.Fast),[j.FeeOption.Fastest]:j.applyFeeMultiplier(Z,j.FeeOption.Fastest)}}async function lX({assetValue:X,recipient:Z,memo:G,sender:J,fetchTxHex:Q=!1}){let L=X.chain,$=Q||n.includes(L);return{inputs:await F(L).scanUTXOs({address:J,fetchTxHex:$}),outputs:[{address:Z,value:Number(X.bigIntValue)},...G?[{address:"",script:await R(G),value:0}]:[]]}}var O=v.Chain.BitcoinCash;function l(X){return X.replace(/(bchtest:|bitcoincash:)/,"")}function K(X){let Z=l(X);return jX(Z)&&BX(Z)==="mainnet"}function f(X){return l(c(X))}async function YZ(X){async function Z({builder:J,utxos:Q}){return Q.forEach((L,$)=>{J.sign($,X,void 0,65,L.witnessUtxo?.value)}),J.build()}return{getAddress:()=>{let J=X.getAddress(0);return Promise.resolve(f(J))},signTransaction:Z}}async function TX(X){let Z="phrase"in X?X.phrase:void 0,G="index"in X?X.index||0:0,J=v.derivationPathToString("derivationPath"in X&&X.derivationPath?X.derivationPath:v.updateDerivationPath(v.NetworkDerivationPath[O],{index:G})),Q=(await d(O))({phrase:Z,derivationPath:J}),L=Q?await YZ(Q):("signer"in X)?X.signer:void 0;function $(){return Promise.resolve(L?.getAddress())}let{getBalance:W,getFeeRates:q,broadcastTx:B,...U}=await w({chain:O});function M(z,H=!0){return W(l(c(z)))}return{...U,getAddress:$,broadcastTx:B,createTransaction:cX,buildTx:CZ,getAddressFromKeys:vZ,getBalance:M,getFeeRates:q,stripPrefix:l,stripToCashAddress:f,validateAddress:K,transfer:HZ({getFeeRates:q,broadcastTx:B,signer:L})}}async function cX({assetValue:X,recipient:Z,memo:G,feeRate:J,sender:Q}){if(!K(Z))throw new v.SwapKitError("toolbox_utxo_invalid_address",{address:Z});let L=await F(O).scanUTXOs({address:f(Q),fetchTxHex:!0}),$=G?await R(G):null,W=[];W.push({address:Z,value:X.getBaseValue("number")});let{inputs:q,outputs:B}=A({inputs:L,outputs:W,feeRate:J,chain:O});if(!(q&&B))throw new v.SwapKitError("toolbox_utxo_insufficient_balance",{sender:Q,assetValue:X});let U=await _(),M=new h.TransactionBuilder(U(O));await Promise.all(q.map(async(z)=>{let H=await F(O).getRawTx(z.hash);M.addInput(h.Transaction.fromBuffer(Buffer.from(H,"hex")),z.index)}));for(let z of B){let H="address"in z&&z.address?z.address:x(Q),Y=await _(),I=h.address.toOutputScript(x(H),Y(O));M.addOutput(I,z.value)}if($)M.addOutput($,0);return{builder:M,utxos:q}}function HZ({broadcastTx:X,getFeeRates:Z,signer:G}){return async function J({recipient:Q,assetValue:L,feeOptionKey:$=v.FeeOption.Fast,...W}){let q=await G?.getAddress();if(!(G&&q))throw new v.SwapKitError("toolbox_utxo_no_signer");if(!Q)throw new v.SwapKitError("toolbox_utxo_invalid_params",{error:"Recipient address must be provided"});let B=W.feeRate||(await Z())[$],{builder:U,utxos:M}=await cX({...W,assetValue:L,feeRate:B,recipient:Q,sender:q}),H=(await G.signTransaction({builder:U,utxos:M})).toHex();return X(H)}}async function CZ({assetValue:X,recipient:Z,memo:G,feeRate:J,sender:Q}){let L=c(Z);if(!K(L))throw new v.SwapKitError("toolbox_utxo_invalid_address",{address:L});let $=await F(O).scanUTXOs({address:f(Q),fetchTxHex:!0}),W=Number(J.toFixed(0)),q=G?await R(G):null,B=[];if(B.push({address:x(Z),value:X.getBaseValue("number")}),q)B.push({script:q,value:0});let{inputs:U,outputs:M}=A({inputs:$,outputs:B,feeRate:W,chain:O});if(!(U&&M))throw new v.SwapKitError("toolbox_utxo_insufficient_balance",{sender:Q,assetValue:X});let z=await _(),H=new hX.Psbt({network:z(O)});for(let{hash:Y,index:I,witnessUtxo:V}of U)H.addInput({hash:Y,index:I,witnessUtxo:V});for(let Y of M){let I="address"in Y&&Y.address?Y.address:x(Q),V=Y.script?q?{script:q,value:0}:void 0:{address:I,value:Y.value};if(V)H.addOutput(V)}return{psbt:H,utxos:$,inputs:U}}function vZ(X){let Z=X.getAddress(0);return f(Z)}async function IZ(X,Z){switch(X){case P.Chain.BitcoinCash:return await TX(Z);case P.Chain.Zcash:return await UX(Z);case P.Chain.Bitcoin:case P.Chain.Dogecoin:case P.Chain.Litecoin:case P.Chain.Dash:return await w({chain:X,...Z});default:throw new P.SwapKitError("toolbox_utxo_not_supported",{chain:X})}}
4
4
 
5
5
  //# debugId=988C4CBF716921D464756E2164756E21
6
+ //# sourceMappingURL=index.cjs.map
@@ -3,3 +3,4 @@ import{a as DX,b as AX}from"../../chunk-6f98phv2.js";import"../../chunk-s47y8512
3
3
  `,bech32:"ztestsapling",bip32:{public:70617039,private:70615956},pubKeyHash:29,scriptHash:28,wif:239};function C(){return function X(Z){switch(Z){case Y.Bitcoin:return xX.bitcoin;case Y.BitcoinCash:return S.bitcoincash.main.toBitcoinJS();case Y.Dash:return S.dash.main.toBitcoinJS();case Y.Litecoin:return S.litecoin.main.toBitcoinJS();case Y.Dogecoin:{let G={private:70615956,public:70617039},J=S.dogecoin.test;return J.versions.bip32=G,S.dogecoin.main.toBitcoinJS()}case Y.Zcash:{let{isStagenet:G}=h.get("envs");return G?nX:oX}default:throw new N("toolbox_utxo_not_supported",{chain:Z})}}}import{SwapKitError as R}from"@swapkit/helpers";import HX from"bs58check";import CX from"cashaddrjs";var vX;((G)=>{G.Mainnet="mainnet";G.Testnet="testnet"})(vX||={});var z={["legacy"]:{["mainnet"]:{["p2pkh"]:0,["p2sh"]:5},["testnet"]:{["p2pkh"]:111,["p2sh"]:196}},["bitpay"]:{["mainnet"]:{["p2pkh"]:28,["p2sh"]:40},["testnet"]:{["p2pkh"]:111,["p2sh"]:196}}};function IX(X){try{return u(X),!0}catch(Z){return!1}}function _X(X){return u(X)?.network}function x(X){let Z=u(X);if(Z?.format==="legacy")return X;return iX(Z)}function c(X){let Z=u(X);return aX(Z)}function u(X){try{return dX(X)}catch(Z){}try{return rX(X)}catch(Z){}throw new R("toolbox_utxo_invalid_address",{address:X})}function dX(X){try{let Z=HX.decode(X);if(Z.length!==21)throw new R("toolbox_utxo_invalid_address",{address:X});let G=Z[0],J=Array.prototype.slice.call(Z,1);switch(G){case z.legacy.mainnet.p2pkh:return{hash:J,format:"legacy",network:"mainnet",type:"p2pkh"};case z.legacy.mainnet.p2sh:return{hash:J,format:"legacy",network:"mainnet",type:"p2sh"};case z.legacy.testnet.p2pkh:return{hash:J,format:"legacy",network:"testnet",type:"p2pkh"};case z.legacy.testnet.p2sh:return{hash:J,format:"legacy",network:"testnet",type:"p2sh"};case z.bitpay.mainnet.p2pkh:return{hash:J,format:"bitpay",network:"mainnet",type:"p2pkh"};case z.bitpay.mainnet.p2sh:return{hash:J,format:"bitpay",network:"mainnet",type:"p2sh"};default:throw new R("toolbox_utxo_invalid_address",{address:X})}}catch(Z){throw new R("toolbox_utxo_invalid_address",{address:X})}}function rX(X){if(X.indexOf(":")!==-1)try{return YX(X)}catch(Z){}else{let Z=["bitcoincash","bchtest","bchreg"];for(let G of Z)try{return YX(`${G}:${X}`)}catch(J){}}throw new R("toolbox_utxo_invalid_address",{address:X})}function YX(X){try{let{hash:Z,prefix:G,type:J}=CX.decode(X);return{format:"cashaddr",hash:Array.prototype.slice.call(Z,0),network:G==="bitcoincash"?"mainnet":"testnet",type:J==="P2PKH"?"p2pkh":"p2sh"}}catch(Z){throw new R("toolbox_utxo_invalid_address",{address:X})}}function iX(X){let Z=z.legacy[X.network][X.type],G=Buffer.alloc(1+X.hash.length);return G[0]=Z,G.set(X.hash,1),HX.encode(G)}function aX(X){let Z=X.network==="mainnet"?"bitcoincash":"bchtest",G=X.type==="p2pkh"?"P2PKH":"P2SH",J=new Uint8Array(X.hash);return CX.encode(Z,G,J)}import{Chain as P,SwapKitError as sX}from"@swapkit/helpers";var t=(X)=>{switch(X){case P.Bitcoin:case P.BitcoinCash:return 550;case P.Dash:case P.Litecoin:return 5500;case P.Dogecoin:return 1e5;case P.Zcash:return 546;default:throw new sX("toolbox_utxo_not_supported",{chain:X})}},k=({inputs:X,outputs:Z,feeRate:G=1,chain:J=P.Bitcoin})=>{let Q=Math.ceil(G),L=X[0]&&"address"in X[0]&&X[0].address?o(X[0].address):"P2PKH",$=X.filter((D)=>V(D)*Q<=D.value),W=e+Z.reduce((D,T)=>D+p(T,L),0),q=Z.reduce((D,T)=>D+T.value,0),j=W*Q,B=0,U=[];for(let D of $){let T=V(D),M=Q*T;j+=M,B+=D.value,U.push(D);let H=j+q;if(B<H)continue;let O=B-H,WX=Q*p({address:"",value:0},L);if(O>WX){let qX=WX+j,jX=B-(q+qX);if(jX>Math.max(V({})*Q,t(J)))return{inputs:U,outputs:Z.concat({value:jX,address:""}),fee:qX}}return{inputs:U,outputs:Z,fee:j}}return{fee:Q*g({inputs:X,outputs:Z,feeRate:Q})}};import{SwapKitError as tX}from"@swapkit/helpers";import{opcodes as eX,script as XZ}from"bitcoinjs-lib";var UG=1000,e=10,ZZ=10,GZ=41,JZ=107;function A(X){let Z=Buffer.from(X,"utf8");return XZ.compile([eX.OP_RETURN,Z])}var XX;((G)=>{G.P2PKH="P2PKH";G.P2WPKH="P2WPKH"})(XX||={});var ZX={["P2PKH"]:148,["P2WPKH"]:68},n={["P2PKH"]:34,["P2WPKH"]:31},o=(X)=>{if(X.startsWith("bc1")||X.startsWith("ltc1"))return"P2WPKH";if(X.startsWith("1")||X.startsWith("3")||X.startsWith("L")||X.startsWith("M")||X.startsWith("X")||X.startsWith("D")||X.startsWith("bitcoincash:q")||X.startsWith("q"))return"P2PKH";throw new tX("toolbox_utxo_invalid_address",{address:X})},g=({inputs:X,outputs:Z,feeRate:G})=>{let J=X[0]&&"address"in X[0]&&X[0].address?o(X[0].address):"P2PKH",Q=X.filter(($)=>$.value>=ZX["type"in $?$.type:"P2PKH"]*Math.ceil(G)).reduce(($,W)=>$+V(W),0),L=Z?.reduce(($,W)=>$+p(W),0)||n[J];return e+Q+L},V=(X)=>{if("type"in X)return ZX[X.type];if("address"in X&&X.address)return ZX[o(X.address)];return GZ+JZ},p=(X,Z)=>{if(X?.script)return ZZ+X.script.length+(X.script.length>=74?2:1);if(Z)return n[Z];return n.P2PKH};import{AssetValue as $X,Chain as v,DerivationPath as IZ,FeeOption as y,NetworkDerivationPath as _Z,SwapKitError as F,SwapKitNumber as FZ,applyFeeMultiplier as PX,derivationPathToString as OZ,updateDerivationPath as NZ}from"@swapkit/helpers";import{Psbt as yZ,address as PZ,initEccLib as RX,payments as VX}from"bitcoinjs-lib";import{ECPairFactory as VZ}from"ecpair";import LX from"@bitcoinerlab/secp256k1";import{ECPair as kZ,HDNode as AZ}from"@psf/bitcoincashjs-lib";import{HDKey as RZ}from"@scure/bip32";import{mnemonicToSeedSync as kX}from"@scure/bip39";import QZ from"@bitcoinerlab/secp256k1";import{HDKey as $Z}from"@scure/bip32";import{mnemonicToSeedSync as LZ}from"@scure/bip39";import{Chain as JX,FeeOption as WZ,NetworkDerivationPath as qZ,SKConfig as FX,SwapKitError as jZ,derivationPathToString as BZ,updateDerivationPath as DZ}from"@swapkit/helpers";import{hash160 as UZ}from"bitcoinjs-lib/src/crypto";import OX from"bs58check";import{ECPairFactory as zZ}from"ecpair";import{P as GX,match as MZ}from"ts-pattern";var TZ=JX.Zcash,NX=C()(TZ);function YZ(X,Z=!1){let G=UZ(X),J=Z?Buffer.from([28,186]):Buffer.from([28,184]),Q=Buffer.concat([J,G]);return OX.encode(Q)}function QX(X){try{if(X.startsWith("z"))return console.warn("Shielded Zcash addresses (z-addresses) are not supported. Use transparent addresses (t1/t3) only."),!1;let Z=X.startsWith("t1"),G=X.startsWith("t3");if(!(Z||G))return!1;let{isStagenet:J}=FX.get("envs");if(Z&&J||G&&!J)return!1;return HZ(X,NX)}catch{return!1}}function HZ(X,Z){try{let G=OX.decode(X);if(G.length<21)return!1;let J=G[0];return J===Z.pubKeyHash||J===Z.scriptHash}catch{return!1}}var CZ=zZ(QZ);async function vZ({phrase:X,derivationPathString:Z}){let G=LZ(X),Q=$Z.fromMasterSeed(G).derive(Z);if(!Q.privateKey)throw new Error("Unable to derive private key");let L=CZ.fromPrivateKey(Buffer.from(Q.privateKey),{network:NX}),{isStagenet:$}=FX.get("envs"),W=YZ(L.publicKey,$);return{getAddress(){return Promise.resolve(W)},signTransaction(q){for(let j=0;j<q.inputCount;j++)q.signInput(j,L);return Promise.resolve(q)}}}async function yX(X){let Z=await MZ(X).with({signer:GX.not(GX.nullish)},({signer:W})=>Promise.resolve(W)).with({phrase:GX.string},({phrase:W,derivationPath:q,index:j=0})=>{let B=q||qZ[JX.Zcash]||[44,133,0,0,0],U=DZ(B,{index:j}),D=BZ(U);return vZ({phrase:W,derivationPathString:D})}).otherwise(()=>Promise.resolve(void 0)),{getFeeRates:G,broadcastTx:J,...Q}=await b({chain:JX.Zcash,signer:Z});function L(W){return W.getAddress()}async function $({recipient:W,assetValue:q,feeOptionKey:j=WZ.Fast,...B}){let U=await Z?.getAddress();if(!(Z&&U))throw new jZ("toolbox_utxo_no_signer");let D=B.feeRate||(await G())[j],T={...B,assetValue:q,feeRate:D,recipient:W,sender:U},{psbt:M}=await Q.createTransaction(T),H=await Z.signTransaction(M);H.finalizeAllInputs();let O=H.extractTransaction().toHex();return J(O)}return{...Q,broadcastTx:J,getFeeRates:G,transfer:$,getAddressFromKeys:L,validateAddress:QX}}var d=[v.Dash,v.Dogecoin];function bZ({inputs:X,outputs:Z,chain:G,psbt:J,sender:Q,compiledMemo:L}){for(let $ of X){let W=!!$.witnessUtxo&&!d.includes(G)&&{witnessUtxo:$.witnessUtxo},q=d.includes(G)&&{nonWitnessUtxo:$.txHex?Buffer.from($.txHex,"hex"):void 0};J.addInput({hash:$.hash,index:$.index,...W,...q})}for(let $ of Z){let W="address"in $&&$.address?$.address:Q,q=$.script;if(q&&!L)continue;let j=q?{script:L,value:0}:{address:W,value:$.value};RX(LX),J.addOutput(j)}return{psbt:J,inputs:X}}async function bX({assetValue:X,recipient:Z,memo:G,feeRate:J,sender:Q,fetchTxHex:L=!1}){let $=X.chain,W=G?await A(G):null,q=await fX({assetValue:X,recipient:Z,memo:G,sender:Q,fetchTxHex:L}),{inputs:j,outputs:B}=k({...q,feeRate:J,chain:$});if(!(j&&B))throw new F("toolbox_utxo_insufficient_balance",{sender:Q,assetValue:X});let U=await C(),D=new yZ({network:U($)});if($===v.Dogecoin)D.setMaximumFeeRate(650000000);let{psbt:T,inputs:M}=await bZ({inputs:j,outputs:B,chain:$,psbt:D,sender:Q,compiledMemo:W});return{psbt:T,utxos:q.inputs,inputs:M}}async function wZ(){let X=await C();return function Z({address:G,chain:J}){if(J===v.BitcoinCash)return w(G);if(J===v.Zcash)return QX(G);try{return RX(LX),PZ.toOutputScript(G,X(J)),!0}catch(Q){return!1}}}async function KZ({chain:X,phrase:Z,derivationPath:G}){let J=(await r(X))({phrase:Z,derivationPath:G});async function Q($){return await $.signAllInputs(J),$}async function L(){return(await KX(X))(J)}return{getAddress:L,signTransaction:Q}}async function b({chain:X,...Z}){let G="phrase"in Z?Z.phrase:void 0,J="index"in Z?Z.index||0:0,Q=OZ("derivationPath"in Z&&Z.derivationPath?Z.derivationPath:NZ(_Z[X],{index:J})),L=G?await KZ({chain:X,phrase:G,derivationPath:Q}):("signer"in Z)?Z.signer:void 0;function $(){return Promise.resolve(L?.getAddress())}let W=await KX(X),q=await wZ(),j=await r(X);return{accumulative:k,calculateTxSize:g,getAddressFromKeys:W,getAddress:$,validateAddress:(B)=>q({address:B,chain:X}),broadcastTx:(B)=>_(X).broadcastTx(B),createTransaction:bX,createKeysForPath:j,getFeeRates:()=>i(X),getInputsOutputsFee:wX,transfer:SZ(L),getPrivateKeyFromMnemonic:(B)=>{return j(B).toWIF()},getBalance:AX(X),estimateTransactionFee:EZ(X),estimateMaxSendableAmount:fZ(X)}}async function wX({assetValue:X,feeOptionKey:Z=y.Fast,feeRate:G,memo:J,sender:Q,recipient:L}){let $=X.chain,W=await fX({assetValue:X,sender:Q,memo:J,recipient:L}),q=G?Math.floor(G):(await i($))[Z];return k({...W,feeRate:q,chain:$})}function fZ(X){return async function Z({from:G,memo:J,feeRate:Q,feeOptionKey:L=y.Fast,recipients:$=1}){let W=await _(X).getAddressData(G),q=Q?Math.ceil(Q):(await i(X))[L],j=W?.utxo.map((M)=>({...M,type:"P2PKH",hash:""})).filter((M)=>M.value>Math.max(t(X),V(M)*q));if(!j?.length)return $X.from({chain:X});let B=$X.from({chain:X,value:j.reduce((M,H)=>M+H.value,0)}),U=typeof $==="number"?Array.from({length:$},()=>({address:G,value:0})):$;if(J){let M=await A(J);U.push({address:G,script:M,value:0})}let T=g({inputs:j,outputs:U,feeRate:q})*q;return B.sub(T)}}function EZ(X){return async(Z)=>{let G=await wX(Z);return $X.from({chain:X,value:FZ.fromBigInt(BigInt(G.fee),8).getValue("string")})}}async function r(X){let Z=await C();switch(X){case v.BitcoinCash:return function G({phrase:J,derivationPath:Q=`${IZ.BCH}/0`,wif:L}){let $=Z(X);if(L)return kZ.fromWIF(L,$);if(!J)throw new F("toolbox_utxo_invalid_params",{error:"No phrase provided"});return AZ.fromSeedBuffer(Buffer.from(kX(J)),$).derivePath(Q).keyPair};case v.Bitcoin:case v.Dogecoin:case v.Litecoin:case v.Zcash:case v.Dash:return function G({phrase:J,wif:Q,derivationPath:L}){if(!(Q||J))throw new F("toolbox_utxo_invalid_params",{error:"Either phrase or wif must be provided"});let $=VZ(LX),W=Z(X);if(Q)return $.fromWIF(Q,W);let q=kX(J),j=RZ.fromMasterSeed(q,W).derive(L);if(!j.privateKey)throw new F("toolbox_utxo_invalid_params",{error:"Could not get private key from phrase"});return $.fromPrivateKey(Buffer.from(j.privateKey),{network:W})};default:throw new F("toolbox_utxo_not_supported",{chain:X})}}async function KX(X){let Z=await C();return function G(J){if(!J)throw new F("toolbox_utxo_invalid_params",{error:"Keys must be provided"});let Q=d.includes(X)?VX.p2pkh:VX.p2wpkh,{address:L}=Q({pubkey:J.publicKey,network:Z(X)});if(!L)throw new F("toolbox_utxo_invalid_address",{error:"Address not defined"});return L}}function SZ(X){return async function Z({memo:G,recipient:J,feeOptionKey:Q,feeRate:L,assetValue:$}){let W=await X?.getAddress(),q=$.chain;if(!(X&&W))throw new F("toolbox_utxo_no_signer");if(!J)throw new F("toolbox_utxo_invalid_params",{error:"Recipient address must be provided"});let j=L||(await i(q))[Q||y.Fast],{psbt:B}=await bX({recipient:J,feeRate:j,sender:W,assetValue:$,memo:G}),U=await X.signTransaction(B);return U.finalizeAllInputs(),_(q).broadcastTx(U.extractTransaction().toHex())}}async function i(X){let Z=await _(X).getSuggestedTxFee();return{[y.Average]:Z,[y.Fast]:PX(Z,y.Fast),[y.Fastest]:PX(Z,y.Fastest)}}async function fX({assetValue:X,recipient:Z,memo:G,sender:J,fetchTxHex:Q=!1}){let L=X.chain,$=Q||d.includes(L);return{inputs:await _(L).scanUTXOs({address:J,fetchTxHex:$}),outputs:[{address:Z,value:Number(X.bigIntValue)},...G?[{address:"",script:await A(G),value:0}]:[]]}}var I=lZ.BitcoinCash;function m(X){return X.replace(/(bchtest:|bitcoincash:)/,"")}function w(X){let Z=m(X);return IX(Z)&&_X(Z)==="mainnet"}function f(X){return m(c(X))}async function nZ(X){async function Z({builder:J,utxos:Q}){return Q.forEach((L,$)=>{J.sign($,X,void 0,65,L.witnessUtxo?.value)}),J.build()}return{getAddress:()=>{let J=X.getAddress(0);return Promise.resolve(f(J))},signTransaction:Z}}async function EX(X){let Z="phrase"in X?X.phrase:void 0,G="index"in X?X.index||0:0,J=uZ("derivationPath"in X&&X.derivationPath?X.derivationPath:pZ(cZ[I],{index:G})),Q=(await r(I))({phrase:Z,derivationPath:J}),L=Q?await nZ(Q):("signer"in X)?X.signer:void 0;function $(){return Promise.resolve(L?.getAddress())}let{getBalance:W,getFeeRates:q,broadcastTx:j,...B}=await b({chain:I});function U(D,T=!0){return W(m(c(D)))}return{...B,getAddress:$,broadcastTx:j,createTransaction:SX,buildTx:rZ,getAddressFromKeys:iZ,getBalance:U,getFeeRates:q,stripPrefix:m,stripToCashAddress:f,validateAddress:w,transfer:dZ({getFeeRates:q,broadcastTx:j,signer:L})}}async function SX({assetValue:X,recipient:Z,memo:G,feeRate:J,sender:Q}){if(!w(Z))throw new K("toolbox_utxo_invalid_address",{address:Z});let L=await _(I).scanUTXOs({address:f(Q),fetchTxHex:!0}),$=G?await A(G):null,W=[];W.push({address:Z,value:X.getBaseValue("number")});let{inputs:q,outputs:j}=k({inputs:L,outputs:W,feeRate:J,chain:I});if(!(q&&j))throw new K("toolbox_utxo_insufficient_balance",{sender:Q,assetValue:X});let B=await C(),U=new gZ(B(I));await Promise.all(q.map(async(D)=>{let T=await _(I).getRawTx(D.hash);U.addInput(xZ.fromBuffer(Buffer.from(T,"hex")),D.index)}));for(let D of j){let T="address"in D&&D.address?D.address:x(Q),M=await C(),H=mZ.toOutputScript(x(T),M(I));U.addOutput(H,D.value)}if($)U.addOutput($,0);return{builder:U,utxos:q}}function dZ({broadcastTx:X,getFeeRates:Z,signer:G}){return async function J({recipient:Q,assetValue:L,feeOptionKey:$=hZ.Fast,...W}){let q=await G?.getAddress();if(!(G&&q))throw new K("toolbox_utxo_no_signer");if(!Q)throw new K("toolbox_utxo_invalid_params",{error:"Recipient address must be provided"});let j=W.feeRate||(await Z())[$],{builder:B,utxos:U}=await SX({...W,assetValue:L,feeRate:j,recipient:Q,sender:q}),T=(await G.signTransaction({builder:B,utxos:U})).toHex();return X(T)}}async function rZ({assetValue:X,recipient:Z,memo:G,feeRate:J,sender:Q}){let L=c(Z);if(!w(L))throw new K("toolbox_utxo_invalid_address",{address:L});let $=await _(I).scanUTXOs({address:f(Q),fetchTxHex:!0}),W=Number(J.toFixed(0)),q=G?await A(G):null,j=[];if(j.push({address:x(Z),value:X.getBaseValue("number")}),q)j.push({script:q,value:0});let{inputs:B,outputs:U}=k({inputs:$,outputs:j,feeRate:W,chain:I});if(!(B&&U))throw new K("toolbox_utxo_insufficient_balance",{sender:Q,assetValue:X});let D=await C(),T=new oZ({network:D(I)});for(let{hash:M,index:H,witnessUtxo:O}of B)T.addInput({hash:M,index:H,witnessUtxo:O});for(let M of U){let H="address"in M&&M.address?M.address:x(Q),O=M.script?q?{script:q,value:0}:void 0:{address:H,value:M.value};if(O)T.addOutput(O)}return{psbt:T,utxos:$,inputs:B}}function iZ(X){let Z=X.getAddress(0);return f(Z)}async function tG(X,Z){switch(X){case E.BitcoinCash:return await EX(Z);case E.Zcash:return await yX(Z);case E.Bitcoin:case E.Dogecoin:case E.Litecoin:case E.Dash:return await b({chain:X,...Z});default:throw new aZ("toolbox_utxo_not_supported",{chain:X})}}export{QX as validateZcashAddress,x as toLegacyAddress,c as toCashAddress,f as stripToCashAddress,m as stripPrefix,d as nonSegwitChains,IX as isValidAddress,tG as getUtxoToolbox,C as getUtxoNetwork,_ as getUtxoApi,wZ as getUTXOAddressValidator,o as getScriptTypeForAddress,p as getOutputSize,V as getInputSize,t as getDustThreshold,r as getCreateKeysForPath,_X as detectAddressNetwork,yX as createZcashToolbox,b as createUTXOToolbox,ZG as createCustomUtxoApi,EX as createBCHToolbox,A as compileMemo,g as calculateTxSize,w as bchValidateAddress,KX as addressFromKeysGetter,k as accumulative,vX as UtxoNetwork,XX as UTXOScriptType,e as TX_OVERHEAD,n as OutputSizes,ZZ as OP_RETURN_OVERHEAD,UG as MIN_TX_FEE,ZX as InputSizes};
4
4
 
5
5
  //# debugId=57E42E1F305AB10A64756E2164756E21
6
+ //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -154,5 +154,5 @@
154
154
  "type-check:go": "tsgo"
155
155
  },
156
156
  "type": "module",
157
- "version": "4.0.0-beta.35"
157
+ "version": "4.0.0-beta.36"
158
158
  }
package/src/near/types.ts CHANGED
@@ -9,14 +9,14 @@ import type { KeyPairSigner, Signer, transactions } from "near-api-js";
9
9
  interface NearKeyPairSigner
10
10
  extends KeyPairSigner,
11
11
  Omit<
12
- ChainSigner<transactions.Transaction, transactions.SignedTransaction>,
12
+ ChainSigner<typeof transactions.Transaction, typeof transactions.SignedTransaction>,
13
13
  "signTransaction"
14
14
  > {}
15
15
 
16
16
  interface NearGeneralSigner
17
17
  extends Signer,
18
18
  Omit<
19
- ChainSigner<transactions.Transaction, transactions.SignedTransaction>,
19
+ ChainSigner<typeof transactions.Transaction, typeof transactions.SignedTransaction>,
20
20
  "signTransaction"
21
21
  > {}
22
22